I don't like the term webapp, because it diminishes the nature of the work. When I say programming, I mean writing database-backed multi-user network applications with a web interface. So yes, a webapp, but there's more to it than that.<p>Anyway, I have the opportunity to set up a learning environment to teach a bunch of bright, aspiring developers everything I know about my craft in a very short time, and I've reached the point where I have to choose the machines I'm going to use. Now, because I'm crotchety and apparently just stepped out of a time capsule, I want to teach debian-flavored linux: that's what I develop in and deploy to.<p>On the other hand, a colleague of mine extols the virtues of OSX and indeed, I can't deny the increasing ubiquity of macs in the silicon valley. He's pushing heavily for a mac environment and makes good points in favor of it. I even carry a macbook air when I don't feel like burdening my shoulders with my usual laptop, so I can't argue too much against it.<p>Now, without devolving into a "mac is better than XYZ" discussion, my question to HN is this: does it make sense to teach <i>new</i> developers linux directly as part of their education, or should I let them accrete knowledge of deploy environments and system configuration over time?