If you spend enough time working with computers there is a good chance you might stumble onto some magic. This doesn't mean that you might randomly see unicorns while tracking down your next porn-s-cipade, frankly this is normal. No, the magic that will be reamed on, neglected, yelled at, and belabored for the rest of this post is that of utter deception.
Programmers are really good at hiding away all the hard things in this magic. They wrap it up in little quiant boxes, with buttons and checkboxes that..."just work." We see this with Windows Server. Everything is just a click away, all along while the user has no idea how to actually DO any of it. In their mind they build a network of roads, all of which lead to desired solutions. We don't know how the roads are leveled, what goes into the mixture, how they are laid, etc. We just know how to use them.
This is a blessing, wrapped in an duck all shoved into a wonderful enema. This cripples us. We don't understand how any of the underlying items fuction or how they interact with each other to actually make something work. Rails, Windows, OS X, all of it should be rooted through, explored, tested, and ultimately broken. Set up environments, test, test, test, and more important than anything: attempt to do your worst.
This is a really complex topic, one that can't be put to justice with just one post. The plan? Extrapolate the magic further and smatter it throughout a couple more posts. Come back tomorrow...or whatever.