Forgot your password?

typodupeerror
Displays X Linux

Multiple-Display Power Tools For Linux? 410

Posted by timothy
from the it's-a-hard-knock-life dept.
shift writes "I've used multiple monitors for years (currently 3) and find that Linux is lacking in power tools for such setups. Even Windows 7 has added the feature to move a window from screen to screen with keyboard shortcuts. Are any of the major desktop environments adding such features? I'm still stuck on FVWM and have defined functions to swap the contents of screens as well as move windows from screen to screen and so on. But this just seems like such basic functionality people would want in multi-screen setups that I'm surprised I don't find any of these features in our latest desktop environments."
This discussion has been archived. No new comments can be posted.

Multiple-Display Power Tools For Linux?

Comments Filter:
  • Compiz can do it. (Score:5, Informative)

    by rqg (1413223) on Saturday December 05 2009, @10:05PM (#30340388)
    Use compiz and set your shortcuts in Window Management / Put. Just checked moving windows to different outputs (I use 2 displays) and it works.
  • by datajack (17285) on Saturday December 05 2009, @10:08PM (#30340412)
    I've been using multiple screens for years, though mostly under Ubuntu on nVidia cards. I can simply drag windows from one screen to another - not exactly difficult. Maximised windows will even resize themselves as my tow monitors do not have the same resolution.

    Given that, if you really waanted keyboard control...

    alt-space, down arrow, down arrow (to un-maximise), return
    then

    alt-space, down arrow, down arrow, down arrow (move)

    use arrow keys to move window to wherever on your desktop you want it.
  • by selven (1556643) on Saturday December 05 2009, @10:11PM (#30340434)

    Mod me up (I prefer "informative") but you know it's true

  • Multiple desktops (Score:5, Informative)

    by sexybomber (740588) <.none. .at. .ofyourbusiness.com.> on Saturday December 05 2009, @10:13PM (#30340444)
    This might be overly simplifying the matter, but Ubuntu (GNOME environment) has got multiple workspaces built in, and CTRL-ALT-SHIFT-right_arrow will throw the current window to the next workspace. Couldn't you just assign each workspace to a different monitor and be done with it?
  • by InfiniteLoopCounter (1355173) on Saturday December 05 2009, @10:16PM (#30340470)

    To move a window to another monitor (not workspace) in GNOME, press alt+F7, hold shift and the direction you want to move.

  • Tiling (Score:5, Informative)

    by Anonymous Coward on Saturday December 05 2009, @10:22PM (#30340504)

    Linux has many fine tiling window managers available, such as Xmonad, AwesomeWM, and StumpWM. These pieces of software deal very well with multi-monitor setups. They have support and expressive keybindings built in. They also automatically manage window size and placement, which is a great boon, especially if you have a lot of screen real estate: no more dragging windows around to see everything!

    Truly, tiling window managers are screen-management power tools. I personally use Xmonad on four screens with named dynamic workspaces, which allows me to nicely label each set of windows and layout according to the content of the windows involved.

  • dwm (Score:5, Informative)

    by zero-point-infinity (918349) on Saturday December 05 2009, @10:27PM (#30340532)
    dwm [suckless.org] had its multihead support improved back in July. Since pretty much all of dwm's window management is by keyboard, of course it has keyboard shortcuts for moving windows between monitors. So yeah, this feature exists in even one of the most minimalist window managers out there.
  • Re:dwm (Score:2, Informative)

    by Minishark (1320075) on Saturday December 05 2009, @10:33PM (#30340552)
    +1 for DWM. I always use dual monitors and it works like a charm for me.
  • by similar_name (1164087) on Saturday December 05 2009, @10:37PM (#30340568)

    alt-space,x(to un-maximise), return then

    alt-space,m(move)

    use arrow keys to move window to wherever on your desktop you want it.

    FTFY

  • Re:Another Question (Score:4, Informative)

    by FooAtWFU (699187) on Saturday December 05 2009, @10:42PM (#30340610) Homepage
    At my office, most of the developers have at least two monitors (1600x1200 Dell 2007FP or something like that). They're rotated 90 degrees (more vertical space for coding) and configured as a dual-monitor setup. A few developers have expanded things to 3 or 4 monitors. The machines in question sometimes have trouble booting up with two video cards (they're somewhat cheap old motherboards), but the drivers and desktop setup (Nvidia binary blobs under Ubuntu) were always pretty easy to get running and Just Worked with the nvidia config tool.
  • Re:Another Question (Score:4, Informative)

    by Anonymous Coward on Saturday December 05 2009, @10:52PM (#30340660)

    I've heard anecdotal stories that Compiz can't cross video cards.

    Compiz doesn't really have the problem here. It's the driver's problem. Specifically, on certain Intel video chips, there's a limit to the size of the framebuffer you can have with DRI, which Compiz requires. 2048x2048 was the limit, which is pretty hard to fit two-three monitors into with reasonable resolution, especially with the Widescreen Monitor Proliferation we've seen in the past decade. IIRC, this has been fixed with later drivers ("shatter" fb, which does exactly what it sounds like it does, was the solution I remember hearing about), but it plagued many for a very long time.

  • by bigogre (315585) on Saturday December 05 2009, @11:32PM (#30340838)

    I've been using FVWM with multiple monitors for years. xrandr has simplified things considerably. I can drag from one monitor to another with no problem. Below is my current xorg.conf (note that I am running on Fedora 10). You can use a Radeon card by changing the driver to 'radeon'. Use 'lspci' to get the appropriate BusID for your card(s). There may be simpler solutions but this has worked well for me.

    And for those saying to use a different window manager please note that FVWM has not stood still but is still true to the name it had when I began using it 15 years ago: the Frugal Virtual Window manager. It is frugal with regards to RAM and CPU use. I also like it because I can edit a file (gasp) to modify the configuration. For old farts like me that's a plus. YMMV.

    Section "InputDevice"
    # keyboard added by rhpxl
                    Identifier "Generic Keyboard"
                    Driver "kbd"
                    Option "XkbModel" "pc105"
                    Option "XkbLayout" "us"
    EndSection

    Section "Monitor"
                    Identifier "DVI0"
                    Option "Enable" "true"
                    Option "DPMS"
    EndSection

    Section "Monitor"
                    Identifier "DVI1"
                    Option "LeftOf" "DVI0"
                    Option "Enable" "true"
                    Option "DPMS"
    EndSection

    Section "Device"
                    Identifier "nVidia Corporation GeForce 8600 GT"
                    Driver "nv"
                    BusID "PCI:1:00:0"
                    #Option "Monitor-DVI0" "DVI1"
    EndSection

    Section "Screen"
                    Identifier "Default Screen"
                    Device "nVidia Corporation GeForce 8600 GT"
                    DefaultDepth 24
                    SubSection "Display"
                                    Depth 24
                                    Virtual 3840 1200
                    EndSubSection
    EndSection

    Section "ServerLayout"
                    Identifier "Default Layout"
                    Screen "Default Screen"
                    InputDevice "Generic Keyboard"
    EndSection

  • here's my toolchain (Score:3, Informative)

    by siddesu (698447) on Saturday December 05 2009, @11:36PM (#30340852)
    xfce, xev, devilspie, xbindkeys, xmodmap, xrandr, vim, man. you can do every crazy thing that comes to mind with this, except window wobbling. i haven't had the need for that, hence no tool for it. reading the man pages won't take more than two hours. you can even use emacs or nano instead of vim with the same great result.
  • Re:Multiple desktops (Score:1, Informative)

    by Anonymous Coward on Saturday December 05 2009, @11:55PM (#30340942)

    I usually make the window "sticky" or "always on visible workspace" in that scenario, then you can leave it playing fullscreen on the tv and it will follow you to all your workspaces

  • Is this a joke? (Score:2, Informative)

    by Johnny Loves Linux (1147635) on Sunday December 06 2009, @12:33AM (#30341090)

    I must not be understanding the problem correctly. So help me out please. Is your set up a) 1 desktop stretched over 3 monitors? Yes? b) You want to move be able to movie, say Firefox, or a xterm, etc. from say monitor 1 to monitor 3 using keyboard shortcuts? c) You think a Linux desktop environment can't handle this currently?

    If this is the correct setup you have, then you must not be a KDE user. This is trivial with KDE.

    1. alt-tab until the app you want to move has focused.
    2. Hit the Alt+Fkey to maximize the app you want to move until it's no longer fullsize in monitor 1. In my case, I've set up Alt-F6 to maximize/unmaximize a window.
    3. Hit the Alt-Fkey to move the window to the right until it's in monitor 3. In my case, it's alt-f4 to move to the right, alt-f3 to move to the left.
    4. Hit the Alt-Fkey to maximize the app until it's full screen on monitor 3.

    Setting the keybindings is trivial in KDE: KDE menu -> Computer -> System Settings -> Keyboard & Mouse -> Global Keyboard Settings -> Select Kwin application -> Select Pack windows to the right -> custom -> Click on wrench -> type shortcut. Ditto on Select Pack windows to the left.

    I can't tell if you're trying to troll or you're like one of the "Great Old Ones" from H.P. Lovecraft's mythos who's just awakened from your deep slumber in some forgotten forbidding city up in the mountains. FVWM?!?!?! That's like 1994?!?! Not even FVWM95?!?! I had to double check my debian box to see if you could still get fvwm installed on a system.

    I mean no disrespect if you're not trolling. I'm just shocked that someone would still be using *and* preferring fvwm in 2009 when I thought the last fvwm user went extinct in 1999 with the arrival of KDE and Gnome on the scene in 1998.

  • by clang_jangle (975789) on Sunday December 06 2009, @12:39AM (#30341116) Journal
    I second xmonad. Don't know about running it within gnome as the parent says though, for me that would defeat the whole point. :)
    Xmonad has a small learning curve if you're used to doing everything with the mouse but you can set any keybindings you like, it takes nearly no system resources to run, and handles multiple monitors extremely well.
  • Re:Issues I've had. (Score:4, Informative)

    by ircmaxell (1117387) on Sunday December 06 2009, @01:44AM (#30341356) Homepage
    You most definitely haven't tried to setup a multiple display environment in any modern Linux...

    I've been using linux for the last 10 years at home, finally ditching Windows entirely about 4 years ago (So I'm pretty decent at setting up/working with Linux)... Just 2 days ago, I tried to setup a 3 monitor desktop at work (2 Nvidia cards and 1 Intel card), and gave up after 10 hours of trying to get it work. I got X using them as different sessions (One instance of Gnome per monitor), but couldn't get a unified window manager between them... And I tried 2 different distributions (Ubuntu and Fedora)

    One thing Windows does REALLY well right now, is multiple monitors. What you said, is pure anti-MS hatred. There's a lot that I don't think Windows does well, and a lot that I think Linux does REALLY well, but multiple monitors clearly isn't one...
  • Re:Issues I've had. (Score:3, Informative)

    by ozmanjusri (601766) <aussie_bob@@@hotmail...com> on Sunday December 06 2009, @02:08AM (#30341456) Journal
    You most definitely haven't tried to setup a multiple display environment in any modern Linux.

    Did you seriously not expect to get called out on that?

    http://imgur.com/RSTFx [imgur.com]

    How the hell does this sort of crap keep getting modded informative?

  • Re:Issues I've had. (Score:2, Informative)

    by phantomcircuit (938963) on Sunday December 06 2009, @02:11AM (#30341468) Homepage

    You're problem was entirely because you used two graphics cards. The same setup is unlikely to work under windows either unless you cards from the same manufacturer.

  • Re:Issues I've had. (Score:2, Informative)

    by Foldarn (1152051) on Sunday December 06 2009, @02:44AM (#30341582)
    That's incorrect. I'm a huge Linux fan, but Windows has the multi-monitor down pat. Even when cards are from different MFGRs. Intel on-board + an NVidia card will display just fine. Windows will see all of them and display all of them. In Linux, on my laptop, gnome displays them just fine, but they're the same card of course.
  • Re:Issues I've had. (Score:4, Informative)

    by CecilPL (1258010) on Sunday December 06 2009, @03:25AM (#30341694)

    I'm running three monitors on Windows XP, with a Radeon x1650 driving two and a Geforce 7600 running the other one. It was literally a matter of installing the ATI drivers, then the nVidia drivers, then checking a couple checkboxes. Both Catalyst and Nvidia control panel work fine.

    Maybe I happened to pick a couple cards that don't interfere with each other?

  • Re:Issues I've had. (Score:5, Informative)

    by icebike (68054) on Sunday December 06 2009, @04:02AM (#30341800)

    Did everybody miss the line in TFA where he said:

        Still stuck on FVWM?

    Windows 3.1 had pretty miserable multi screen support too. That's why everyone dumped it like a leaking baby diaper.

    Ubuntu, and KDE both handle multiple monitors very well.

    Why would the OP mention Windows 7 in the same post where he whines about FVWM?

    Level playing field much?

  • Re:Tiling (Score:5, Informative)

    by plasticsquirrel (637166) on Sunday December 06 2009, @04:23AM (#30341868)
    There are a few good tiling window managers that make this a breeze. To some degree it depends on which language you prefer. The following screen shots are from stumpwm [wikipedia.org], a window manager written entirely in Common Lisp. It has the added benefit of being programmable while it is running, so you can interact with, and test, any new additions or modifications in real time. Anything you want to do like sending windows one place or another, or binding different features to different keys, can be done very easily in a window manager like this. It's very capable out of the box, and it is meant to be extendible arbitrarily due to the powerful programming language it uses.

    stumpwm tiling across five monitors at different resolutions [nongnu.org]

    There is also a window manager that has some similar features called xmonad [wikipedia.org], but it is written in Haskell, so it has a bit of a syntactic learning curve if that matters to you.

    xmonad tiling across three monitors [wikipedia.org]

    On a side note, it's interesting that the proliferation of Lisp, Haskell, and other powerful functional programming languages has created a demand for a different kind of window manager that is written in, and can be extended with, the language. It's almost as if programmers began to see the limitations of static, C/C++ programmed environments after they started using these languages, and then started to build up new environments more suitable for high-level programming. Is this the beginning of the end for the traditional Unix way of always running back to the C languages?
  • by j_sp_r (656354) on Sunday December 06 2009, @05:30AM (#30342044) Homepage

    Settings -> Keyboard and Mouse -> Global shortcuts -> Kwin

    Window to screen \d

    Kwin has a lot of shortcuts you can define.

    I don't know what the post is all about, but it is defiantly not true.

  • by julesh (229690) on Sunday December 06 2009, @05:35AM (#30342062)

    Any number greater than one counts as several.

    several -adjective
    1. being more than two but fewer than many in number or kind: several ways of doing it.

    (dictionary.com unabridged)

    several adj.
    1. Being of a number more than two or three but not many: several miles away.
    (american heritage)

    several determiner & pronoun - more than two but not many.
    (oxford compact)

    It sounds very much to me like more than two is necessary. Some dictionaries suggest more than three.

    FVWM was first released in 1993, i.e. less than two decades ago. Twm could just about scrape through the requirements, being 22 years old now.

  • Re:Issues I've had. (Score:2, Informative)

    by Crass Spektakel (4597) on Sunday December 06 2009, @05:37AM (#30342066) Homepage

    > but Windows has the multi-monitor down pat

    No, it hasn't. Had been removed after XP. Server 2008 and Vista do not support Multi-Graphiccard-Multiscreen-Solutions any more.

    Newer Linux AND Windows releases leave multi-screen completely to the drivers. So if your Driver supports a card with two screen connectors, then you are ready. If not, things get ugly.

    Setting up two screens on my Geforce 6600 and 8800 systems with Ubuntu is piece of cake, start Nvidia-Tool, active and configure screens, ready.

  • by julesh (229690) on Sunday December 06 2009, @05:41AM (#30342072)

    So, each can clearly show unique content in text mode, but does any tool exist that can bring some order to it?

    http://tldp.org/HOWTO/Framebuffer-HOWTO-14.html [tldp.org] mentions a tool called con2fb. I haven't tried it, but it sounds like it does what you want.

  • Re:Issues I've had. (Score:3, Informative)

    by Burpmaster (598437) on Sunday December 06 2009, @05:50AM (#30342100)

    Multiple graphics cards? That's a very exotic multiple-display configuration these days now that dual-head graphics cards are the standard. So if you act like your experience with your exotic setup is typical, you can expect shocked reactions from the 99% of multi-display users currently using a single dual-head graphics card with no problems or setup difficulty.

    The most common problem is having to use nvidia's setup tool instead of the standard 'display preferences' control panel because nvidia is taking forever to implement xrandr 1.3. But on the upside, they have their own (proprietary) solution to support hardware acceleration with a Xinerama setup [nvidia.com] (with similar cards).

  • Re:Issues I've had. (Score:4, Informative)

    by HeronBlademaster (1079477) <heron@xnapid.com> on Sunday December 06 2009, @06:00AM (#30342138) Homepage

    Xinerama keeps things aware of monitor boundaries (at least, I'm using multiple monitors with Xinerama right now, and things work properly).

  • Re:Issues I've had. (Score:3, Informative)

    by HeronBlademaster (1079477) <heron@xnapid.com> on Sunday December 06 2009, @06:03AM (#30342146) Homepage

    A single card with two heads is easy, yes. Multiple cards, though, can get tricky, especially if they're not from the same manufacturer (by which I mean Intel, ATI, or nVidia).

  • Re:Issues I've had. (Score:5, Informative)

    by Late Adopter (1492849) on Sunday December 06 2009, @06:04AM (#30342154)
    This. Welcome to the ugly side of proprietary drivers. nVidia wrote their driver in a really misbehaving way, they circumvent most of the X architecture. Don't expect it to play nice with... anything (does it even support XRANDR?) Long story short, you can use the nVidia card alone, and then use their tools to set up the dual head display on it, or you can use the Intel card alone and expect all your built-in tools to play fine. Never the twain shall meet. The fact that you got even independent X sessions working on it I find nothing short of miraculous (I would be curious to see glxinfo on each display).
  • Re:Issues I've had. (Score:3, Informative)

    by tomtomtom (580791) on Sunday December 06 2009, @06:04AM (#30342156)

    Firstly, you do know that neither Vista nor 7 will let you use multiple cards with different drivers (e.g. you can't even use substantially different generations of nvidia cards together)? So much as you complain about it being hard to use nvidia+Intel cards for 3 screens on Linux, it's actually impossible in the latest versions of Windows.

    Secondly, in terms of your Linux setup, you need to use Xinerama and disable nvidia TwinView. The way to do this is to add two separate "Device" sections (within /etc/X11/xorg.conf) for the same nvidia card, with one marked as "Screen 0" and one marked as "Screen 1". Then you need a separate Screen for each of those Devices, plus another for the Intel card. Secondly, make sure that you have Xinerama enabled (add Options "Xinerama" "on" within the ServerFlags section). Finally, make sure that within the "ServerLayout" section you have all three of your screens mentioned and using the "LeftOf" or "RightOf" keywords to make sure they are glued together. There's an example xorg.conf here [froebe.net] for example.

    These types of setups aren't easy to setup with graphical tools in Linux (where perhaps they should be) but if you understand a bit about how xorg.conf works they are not too hard to configure.

  • Re:Issues I've had. (Score:1, Informative)

    by ozmanjusri (601766) <aussie_bob@@@hotmail...com> on Sunday December 06 2009, @06:20AM (#30342198) Journal
    Just because you can post a screenshot of a Linux machine running multi-head, doesn't rebut at all the fact that it's a pain in the ass to set up,

    Plug in monitor.
    Click System/Preferences/Display.
    Click X-Server Display Configuration.
    Click Detect Displays.
    Select Twinview from the combo selector.
    Click Apply.
    Close the dialog box.

    You'd have to be a real mouth-breather to find that difficult.

  • by Bent Mind (853241) on Sunday December 06 2009, @06:44AM (#30342284)

    Of course, the Nvidia-applet works fine, doing anything with the TV of my liking. But it would require the user to know that she uses a Nvidia card, and that there is another applet that she needs to use. Not good.

    How is this different from Windows? If I want to do something special with graphics output under XP, I use the Intel applet that sits in the system tray. ATI and nVidia also have their own special applets under Windows.

  • Re:You need a GUI? (Score:2, Informative)

    by Anonymous Coward on Sunday December 06 2009, @07:04AM (#30342346)

    Unless Xorg decides that the maximum allowable view is smaller than that allowed by your multiple monitors.

    In which case, you have to create an almost empty Display SubSection to tell it what is really allowed. Then restart X.

    It took me less than half an hour to find this (http://www.thinkwiki.org/wiki/Xorg_RandR_1.2), but it is not obvious and most people do not know how to create xorg.conf and people now say you don't need one!

    Cheers,

  • Re:Issues I've had. (Score:4, Informative)

    by mugginz (1157101) on Sunday December 06 2009, @07:14AM (#30342372)
    If we're talking nVidia hardware, then when you use a combination of nVidia's TwinView with x.orgs' Xinerama for three or more screens, then there are issues with windows maximising across two screens when it should only be on one.

    If you're using just Xinerama or Twinview then screen boundaries are respected.

    There's a "fake xinerama" patch available though that works around the TwinView with Xinerama problem.
  • Re:Issues I've had. (Score:3, Informative)

    by PastaLover (704500) on Sunday December 06 2009, @07:46AM (#30342470) Journal

    Just because you can post a screenshot of a Linux machine running multi-head, doesn't rebut at all the fact that it's a pain in the ass to set up,

    Plug in monitor.

    Click System/Preferences/Display.

    Click X-Server Display Configuration.

    Click Detect Displays.

    Select Twinview from the combo selector.

    Click Apply.

    Close the dialog box.

    You'd have to be a real mouth-breather to find that difficult.

    And you'd have to be a complete moron to think that always works. I have one of the older ATI cards at work and up until the latest version of ubuntu (with newish open source drivers) I'd routinely get graphics corruption. On my newer ATI card at home, there are no decent open source drivers and driving two screens with the propietary drivers is a real pain. Like when notifications suddenly start appearing partway off screen. Not to mention when I use compiz, video playback is dog slow, and there doesn't seem to be an easy way to fix that.

    There are enough horror stories out there to get that it's still not quite there yet. xrandr is nice, but it's taken the propietary vendors a bit to catch up. Yes, it would be nice if they open sourced everything. Not going to happen though, so it might be a good idea to have a stable API for once, so it doesn't end up breaking every 6 months.

  • Re:Issues I've had. (Score:2, Informative)

    by uglyduckling (103926) <uglyduckling@@@flashmail...com> on Sunday December 06 2009, @09:13AM (#30342710) Homepage
    And you'd be a moron to think that those older ATI cards will work smoothly with multiple monitors on Windows 7. Multiple monitor setups generally only work well with the latest well-supported cards with the latest drivers, many of which also work well under Linux. If you use cards that have crappy drivers under Linux then they won't work well, same for windows 7 (and your latest hackintosh). The difference is, Windows will generally make it pretty obvious that the card is useless, whereas there's always some braniac who will tell you a convoluted way to get things working under Linux, which is great if you can't afford a new graphics card and don't mind the hassle.
  • Re:Issues I've had. (Score:2, Informative)

    by Anonymous Coward on Sunday December 06 2009, @09:26AM (#30342760)

    > but Windows has the multi-monitor down pat

    No, it hasn't. Had been removed after XP. Server 2008 and Vista do not support Multi-Graphiccard-Multiscreen-Solutions any more.

    Windows 7 does.

    http://www.techarp.com/showarticle.aspx?artno=637&pgno=8 [techarp.com]

    Windows 7 supports heterogeneous multi-adapter configurations, whereas Windows Vista does not. In Windows 7, a system can have a heterogeneous multi-adapter configuration, with multiple GPUs that require different WDDM drivers. The WDDM model for Windows Vista required that all display adapters use the same driver.

    Additional sources [google.com]

  • Re:Issues I've had. (Score:3, Informative)

    by Anonymous Coward on Sunday December 06 2009, @09:56AM (#30342894)

    What kind of crack are you on! Windows will take just about any piece of shit video card you have and multi head it without problems.

    Plug it in, install drivers, "extend desktop to this monitor"

    It's been this easy for a good 10 years now.

  • Re:Issues I've had. (Score:3, Informative)

    by MartinJW (961693) on Sunday December 06 2009, @10:02AM (#30342916)

    According to that article heterogeneous multi-adapter will work in Vista/W7 if you use XPDM drivers instead of WDDM drivers.

    At least that's my understanding of this:

    A user could force the installation of a XPDM driver for each of these devices, and therefore get heterogeneous multi-adapter multi-monitor to work as in Windows XP.

  • Re:Issues I've had. (Score:2, Informative)

    by Matz0r (324905) on Sunday December 06 2009, @10:40AM (#30343092)

    I'm still using fvwm and have been doing it for 10+ years. Over the years I've tried switching to gnome or KDE several times but found them too be too slow and lacking features and ended up back in fvwm again. I even tried gnome + sawfish for a while but the constant lisp hacking got the best of me. Fvwm has for a long time and still handle multiple monitors perfectly well and I'm still very happy with it.

Learning at some schools is like drinking from a firehose.

Working...