views:

1154

answers:

8

I commute a lot of my time to work (> 40 minutes by train) and been thinking about purchasing a notebook just to keep myself occupied on the train on my way to work and back home again.

There are already questions that are heavy on notebook recommendations. However they don't really tell much about using them. I'm more interested in knowing if anyone has experience of using a netbook for programming. The main question is whether or not it works out for you. So here are some questions that I have regarding netbooks, programming and commuting.

  • What programming environment do you use (IDE, language)?
  • Is the computer quick enough for you?
  • Do you use your netbook only for personal projects or do you bring your work with you?
  • How often do you use your netbook in your daily commute?

This is a community wiki question, and I'm interested to know what languages people have coded in their commutes. I've been itching to try out and experiment with esoteric languages in a while and commutes are probably the only time and place I have to do so.


Related Questions

+1  A: 

I find small amounts of time are better spent thinking than doing, and if you have a flash of inspiration and really want to write some code down then the notepad on any phone with a proper (or touch) qwerty keyboard is probably good enough; no netbook required!

Autopulated
I was going to say something about pencil and paper... but actually I'm way faster at typing than at writing.
Nicolás
BTW do you know of any phone with a proper dvorak or colemak keyboard? (at least keyb layout, I don't mind the physical keys, that's fixable) I think it makes a lot of sense to have non-qwerty in such tiny keyboards.
Nicolás
Not a hardware one. I hate to say it (crackberry addict myself), but there is probably an app for that on a well known mobile platform though...
Autopulated
+2  A: 

I do some coding on my 9" Eee PC. The keyboard isn't big enough for extended typing, and the screen isn't big enough to keep documentation and code on the screen at the same time, so it's limiting. On the other hand it's very light so it's never a burden to carry it round.

Even though it's not a powerful computer, it's plenty fast enough for Emacs, but compiling can be slow. I don't commute daily so I don't run into its limitations often enough to get annoyed. Usually I don't do much more than grab some code from SVN, make a few small changes and commit them back.

If I have internet access I may use SSH/screen to access my main machine and use that remotely. I try to work on things that need more thinking, less typing, and save the boilerplate stuff for when I have a big keyboard and monitor.

P-Nuts
Err... how does adding four carriage returns make me the owner of this question?
Spoike
@spoike it's a line oriented diff, it just went from one line to three lines.
Jeff Atwood
Wow. I suppose I'll have to make more of an effort to use paragraphs to prevent my comments being stolen.
P-Nuts
+4  A: 

I find it impossible to code seriously on a laptop, especially when commuting. Instead, get yourself an iPhone (or similar smartphone) and spend the time reading your mail, some industry blogs/news and playing a game or two :)

truppo
+1, money definitely better spent on a nice phone
Autopulated
I have a friend who develops exclusively on a laptop. Actually wore through the coating on the touch pad (as difficult as that may be to believe). I've gotten spoiled myself, and need dual monitors to really feel productive.
Eric Dahlvang
I have an iPhone 3GS already, which I play games and surf in the train with, but you can't really do any programming with it. ;)
Spoike
A netbook is far better for serious reading than an iPhone etc. (Larger screen, resolution). Also you can read any document format downloaded from the internet not just those currently supported by your phone.
Ash
+3  A: 

I've had an Eee PC for a few months (my first non-desktop). I have found it more than powerful enough for the kind of programming I want to do (it can also run Neverwinter Nights just as well as my desktop, although it struggles playing flash videos!).

I've made a lot of progress in two projects with it:

  • A usermode filesystem for Linux and Windows.
  • A compiler.

Both of these are written in C. I tend to use the Scintilla text editor and make in a terminal, with occasional excursions into GDB. I know this is all a bit antiquated but I've found it to be a welcome holiday from Java and NetBeans (which also runs fine, incidentally).

There are a few downsides I'll mention:

  • The keyboard is small, which means it's a bit more work to do common programming things like selecting blocks of text using the next word command, or scrolling up a by a screen (there's a Fn key which needs to employed here). Practice alleviates most of this.
  • The screen is small. It's nice to program on large (and preferably dual) monitors, but it's still possible without them.
  • There isn't much computing or graphics power, so writing and testing a raytracer or a 3D video game might be out of the question. But I haven't ventured into those areas much, yet.

Someone said it was better to spend the time thinking. I spend 15-20 minutes on the train twice a day. This turns out to be just about enough time to implement one small feature. I plan it while I'm walking to the station, and I know what to do once I've opened the editor.

Edmund
+1  A: 

I own a Dell Mini 10 with Windows 7 Home Premium, a SSD, 2 GB RAM, and Visual Studio .NET 2008 Professional. In order to keep my VS.NET install down, I only installed the bare essentials and only C# (sorry VB.NET, managed C++, and Crystal Reports).

Anyway, I use it all the time for personal projects, not work. At minimum, I can also go "command line" at the VS.NET Command Prompt.

Oh, and I have mySQL installed (not Sql Server because its a memory hog, and yes I know that you can configure its memory usage).

Kris Krause
I cannot justify an iPod Touch or Zune HD at this time... as I "need" a compiler... LOL
Kris Krause
I have gcc on my iPod touch. There is a JVM available, too. And Python works like a charm, you can even write graphical applications with PyObjC.
Nicolás
gcc? jvm? python? I can assume its "jail broken"?
Kris Krause
+2  A: 

I don't have a netbook, but I do have the slowest Macbook (not "Pro") you could buy 3 years ago, and have used it to write significant programs, and still find it ridiculously overpowered for that use, so maybe this is a relevant datapoint.

  1. Emacs, SBCL, Slime. I think this may have some effect on its utility: with Lisp I almost never have to compile more than one function at a time. When you only recompile the dozen lines of code you just touched, edit-compile-run-debug loops go really fast even on ancient hardware. (I don't even need to start a new process to run the compiler.) I would not expect Visual Studio on a large C++ program to work nearly as well.

  2. If I'm trying to watch full-length movies on Hulu, then no. For programming, yes.

  3. Today, I use it almost exclusively personal projects, though it was once my primary work computer.

  4. For better or worse, my daily commute isn't long enough for that now, so I usually take a book (you know, made of paper) for that. I do use it several times a week in coffee shops, though.

You pointed to questions about .NET, so maybe going the Emacs+Lisp route isn't in the cards for you, but you didn't specify. :-)

Ken
I didn't specify IDE or language because it is a community wiki and I want to use the commute time to experiment on other programming languages. I have been meaning to try out esoteric languages for a long time.
Spoike
Well, I don't have any experience with esoteric languages -- just Common ones!
Ken
+1  A: 

I take the Bay Area's Capitol Corridor train to Santa Clara, and while riding it have used a MacBook using Mac OS X for non-programming tasks, and a MacBook Pro running Ubuntu Karmic to do programming.

The MBP has plenty of horsepower, but I haven't had a lot of luck with programming on the train so far. The tracks are crummy and the train bounces a lot. So you'll be typing away and brush the trackpad, and then the cursor jumps and you're typing in the wrong place. It's very frustrating. Especially in Ubuntu, the system will also often wind up in some very odd GUI mode that's hard to recover from.

The MB for productivity tasks works pretty well; Mac OS X handles accidental trackpad brushes much better than Ubuntu does. I suspect it might also be okay to program on it with XCode, but haven't tried it.

Programming in Ubuntu might work if you can disable your trackpad and use a wireless mouse, or if you're riding a train with a really, really smooth ride. I would have no hesitation about programming - or trying to balance on one leg, for that matter - aboard a French TGV train.

Bob Murphy
a MB or MBP is hardly a cheap netbook though
Autopulated
Agreed. I was just noting usability issues the OP might run into, no matter whether one were working on an MBP or an EEE PC.
Bob Murphy
+1  A: 

I'd just install a GTD app on my phone if I ever needed to take notes on Ideas I have. Normally I just sleep on my bus->subway->train->car ride to work :)

But yeah, an Eee PC would suit your needs fine (provided you don't want to program anything CPU/GPU intensive). Depending on your taste/work, either Linux or Windows. As for IDE's...

    - Emacs
    - VIM
    - Anjunta
    - Visual Studio
    - Eclipse
    - Netbeans
    - Qt
    - Notepad++

Any of these will serve for C/Java/C++/Qt C++. Emacs/VIM/Notepad++ are great also for any kind of language. If you're using Windows, you should also install Powershell.

Ricardo Ferreira