Dev Environment Setup: The Missing Manual Pages for Linux

For those of you doing the prep course for Bitmaker Labs, and perhaps for those considering signing up, I am here to tell you something the instructors probably haven't. When I was researching the program I came across the following: "Bitmaker Labs strongly recommends students have Macs. Linux is OK too." There are two elliptical clauses missing from that statement that are likely relevant to a small portion of incoming students.

The first: Bitmaker Labs strongly recommends students use Macs... with the latest version of MAC OS X installed.

The latest version of Mac OS X is important because it allows you to run the latest version of Ruby (and other important software later in the course). The instructors like it when everyone in the cohort is using the same version because it makes troubleshooting student problems that much easier for them. And of course, learning the latest hotness is why you are signing up at Bitmaker in the first place.

So if you are a Mac owner, and you haven't updated to Mavericks (the most current version at the time of writing) then make sure to do that before the first day. Ryan Ming, the instructor that oversees this kind of thing, will make you do it before the end of the first week anyway, so just skip the hassle and do it before you show up.

As an aside, that also means if you are running an older Mac that doesn't support Mavericks, you will need to look into alternatives and I suggest you do that before you show up on the first day as well (see more on alternatives below).

The second missing clause is "Mac is ok, so is Linux... but Windows is not."

linux<em>at</em>bitmaker

If you are coming into the program with a Windows machine, you will likely be able to progress through the prework without an issue, but you will be in trouble by week two.

Stop. Breathe. Don't freak out.

This is not a huge problem. You will just have a few more hoops to jump through than everybody else.

If you are in this boat, before talking about those hoops, I would suggest you consider switching to Mac. You have just dropped a small fortune on tuition so paying for a new machine is probably not at the top of your list of priorities, but consider it. Depending on your situation (and your ability to rationalize the premium you will pay) it might be worth it. I am not speaking for the instructors. This is just my opinion. But it's a serious recommendation.

Another aside, the classroom space has a dozen external monitors that can connect to Macs via DisplayPort. Using these monitors may upsize the value of the cheaper Mac machines (I am looking at you 11-inch MacBook Air).

But if you are unwilling to pay the Apple tax, there are two credible options endorsed by the staff:

  1. Use one of the ten iMacs on premise. These are gorgeous 27-inch models. They have all the software you will need installed. No sweat. No hassle. The one downside is the portability. If you want to work from home, or on the bus then you will need to make compromises. That's not a deal breaker but it is a pain for some.
  2. The second option is to partition your Windows machine in two, and install Linux on one of them. I mentioned there were hoops. This is what I am talking about.
  3. If you have a very powerful PC, you can also run Linux in a virtual machine using tools such as Parallels or VMWare.
    Linux is attractive to students because it's portable and it's free. Of the 40 students in the January 2014 cohort, approximately half a dozen ran/are running Linux. They can attest that this approach works. After you install the system there is no real disadvantage. One student, Matthew Lackey from the October 2013 cohort, has already written about this issue here on the blog.

The qualifier "after installation" is a big one though.

In my experience installing Linux on a Windows machine, particularly the newer ones optimized for Windows 8 and above, is harder now than before. Like Mavericks I strongly suggest you get this out of the way before Day 1; unlike updating Mavericks installing Linux can take a long time depending on your machine. If you haven't done it before it can be painful. To this end, I have prepared a primer for Bitmakers new to the challenge. I should note, unless someone in future cohorts keeps this primer up-to-date, it will likely go stale pretty quick — so review it with caution and defer to the official documentation as needed — but hopefully it will give some needed context so you can show up at Bitmaker Labs with your best foot forward.