I saw that with libimobiledevice, it's possible to control your iOS device with your Ubuntu desktop, including doing things like installing apps: https://help.ubuntu.com/community/PortableDevices/iPhone
What I'm wondering is, would it now be possible to develop apps for the iPhone from your GNU/Linux desktop, using a free software stack? What I have in mind is something like this: you write the application in C (a strict subset of Objective C), compile it using GCC (targeting ARM architecture?), using headers obtained from the Apple SDK (I suppose GNUStep wouldn't do), and then use libimobiledevice to deploy it to your phone. I suppose this still lacks some important parts, such as a device emulator which can hook back into a debugger, but still I think it's interesting to think about.
Is anyone currently pursuing this kind of work?
I'm going to be heading to Belgium soon on exchange, and so I've been looking into buying an auxiliary device that I can take with me traveling so that I don't have to bring my 7.5 lbs. beast of a laptop. The things that were most important to me were to have decent hardware and overall user experience (touchscreen responsiveness, etc.), the ability to make VoIP calls using Skype or SIP, and to have a decent terminal emulator and Unix-like subsystem (bash, ssh, vi, and GNU screen are most important for me). Ideally, it would also cost around $200 (I'm a student, after all).
What I found was that in order to install a Unix subsystem on an iOS or Android device, you need root access. And, rather than just giving you root access, for some reason all devices, including the Android ones, require you to jailbreak the device via some exploit in the OS. I was expecting this of Apple devices (and I'm still waiting for the jailbreak for iOS 4.1, which should be any day now), but somehow I thought that Android devices would be more "open" or something because they are running Linux. But in fact, they are often, in effect, even more locked down than the Apple devices, as there is not a dedicated team of hackers searching for exploits, and so jailbreak techniques may not exist. For example, this is the case for the new Archos internet tablets, which at this moment may not be jailbroken.
It dawned on me that this was the difference between old-school PDAs (remember those?), and these new handheld iOS and Android devices. With PDAs, I think it was unquestionable that you would have administrator rights on your device. Why? Because they were seen as personal computers that incidentally could also fit in your pocket. Somehow, the expectation of these new devices is not the same - they are seen as phones or media players instead - and for that reason, it is seen as acceptable to lock them down, restricting what the user can do with them. This shift in the expectation of the manufacturer regarding what the user may do with their device seems to have happened very quickly and quietly, perhaps commencing with the release of the iPhone, and it's something that I'm only beginning to grasp now. This is not something that anyone seems to be talking about, however.
Unfortunately, this is a complete deal-breaker for me. I won't be able to buy an Android device until it comes with root access out of the box.
I took notes on my laptop extensively all through my undergraduate degree in Computer Science, and I always used OpenOffice.org Writer's equation editor. It has a nice, concise syntax, and it was, in fact, possible to enter even very complex mathematical expressions in real time, faster than my prof was able to write them on the board. This was true even for matrixes.
Here's an example of some of my notes made with OO.o: http://csus.cs.mcgill.ca/wiki/COMP-330_(Panangaden%2C_Fall_06)_Lectures
My linear algebra notes would be more impressive, because they often involved fairly large and complex matrix equations, but I never made those notes available online.
I had a colleague who also took notes in class who had quite a nice method - he wrote all of his notes in wiki markup, with latex for the mathematical expressions. He didn't have a laptop, but instead used a PDA and small, foldable keyboard.
An example of his notes are here: http://csus.cs.mcgill.ca/wiki/COMP-302_(Panangaden%2C_Pientka%2C_Winter_06)_Lectures
I think it's quite a nice result.
what's not to like?
No plugin that implements vi keybindings
But the more I use linux (Ubuntu in case you are interested), the more unhappy I am. It's the little things, like, keyboard not processing input on dual screen when there's no window open on that desktop. And configuring / changing (external) display configuration is simply broken. And high IO really brings system on the knees (even surfing is not possible while writing to a CD). Firefox is sloooooowwww. No exchange client. No out of the box AD integration. And so on and on and on.
Many of the complaints you list here I think are valid, because I'm using Ubuntu Linux as well and I have found myself thinking the exact same thing. Specifically, all of the trouble with X.org and dual-head, the high IO, and the slow firefox all resonate with me. None of these are enough to make me go back to Windows though; overall, Ubuntu offers a much better experience for me than Windows.
Mac OS, on the other hand, is very intriguing. Unix-based (FreeBSD, specifically), and yet has 110% hardware support. A thriving ecosystem of free software available (much [most?] of it ported from GNU/Linux). Overall, it seems like a pretty attractive target. There are just two things that really really prevent me from using it: the UI, and the culture. The UI I find to be bloated and ineffecient, and the culture feels quite closed. Until Apple opens up their OS and allows me to install it on non-Apple hardware, and stops bricking jailbroken iPhones, I just don't see Apple products as something I want to use. Better to target Ubuntu, which is technically very close, and properly philosophically aligned.
Oh, and as far as getting MS Office working on Ubuntu, apparently you can get it to work under Wine:
http://www.programmerfish.com/roffice-2007-in-linux/
I haven't tried it myself, though, so your mileage may vary.
fortune: No such file or directory