Fab Academy 2013 Journal

About Me

Hi, I'm John and this site contains all of the documentation from my journey on MIT's Fab Academy Diploma course.

I'm from the UK but decided to come and study in Barcelona because there are so many exciting things happening with its hardware community right now.

I'm a web developer by trade (Ruby on Rails, PostgreSQL/NoSQL) but I also like making apps and hacking prototypes together whenever I get the opportunity. When I'm not using some type of keyboard I'm probably running or sleeping.

Oh... I think bees are cool too.

How I made this site

One trait that I think many programmers share, well, humans in general perhaps. Is that we are inherently lazy. This isn't necessarily a bad thing though. It can be a motivator for writing efficient code or routines that help to avoid monotonous repetition. So to keep things DRY (Don't Repeat Yourself) I used a static site generator called Middleman and I automatically created all of the required files and directories with the following ruby script.

require 'date'

titles = <<END
Principles and Practices
Project Management
Computer-Aided Design
Computer-Controlled Cutting
Electronics Production
Computer-Controlled Machining
Electronics Design
Molding and Casting
Composites
Embedded Programming
3D Scanning and Printing
Input Devices
Interface and Application Programming
Mechanical Design
Output Devices
Networking and Communications
Machine Design
Applications and Implications
Project Development
Invention, Intellectual property, and Business Models
END

now = Date.today

titles.split("\n").each_with_index do |title, index|

  # you'll need to remove the backslashes from these instances below 

  date = Date.commercial(now.cwyear,index + 2, 3).strftime('%Y-%m-%d')
  url = [date,title.gsub(/[^0-9A-Za-z\- ]/, '').gsub(/\s+/, '-').downcase].join("-")

  File.open("source/#{url\}.html.haml", "w") do |f|
    f.write "---\ntitle: #{title\}\n---\n\n"
  end
  Dir.mkdir "source/#{url\}"

end