Attacking the modern JavaScript world

Learning all the JavaScript libraries that have come out in the past two years is hard work.

I attacked the modern Javascript approach through first focusing on functional programming.

1) Python + functional programming in Python

Python is hardly a pure functional language, but it’s lovely and simple and has all the core concepts including list comprehensions. This leads you on to…

2) Haskell

If you want to find a pure functional solution to a Python problem, first search for the Haskell one and translate it. Then read Learn You a Haskell which was the funniest programming book I ever read and almost, almost taught me about monads (I had it for a second, then tried to explain it in Python and all was lost)

Now you can relax cause the hard bit is done.

3) Read Javascript the Good Parts

Only pay attention to the functional programming bits. Suddenly mentions of currying aren’t so scary.

4) Work your way through the funfunfunction videos

The funfunfunction videos are brilliant, especially the functional playlist and for added bonus he has videos where he works through the first few chapters of Learn You a Haskell.

Then you’ve got map, reduce, filter all completely under control. Now immutability makes more sense, arrow functions don’t look so strange, promises are just friendly monads really and we all love those.

Now you’ve got Immutable.js, lodash, underscore all reasonable to understand.

React’s moaning about state and pure functions makes reasonable sense.

5) Following the Meteor + React tutorial

Babel really isn’t that hard, the Meteor + React tutorial got that all working without me really noticing. Then, holy moly you’re all reacted up, with JSX and pure sweet smelling functions.

6) Linting

Follow some of Dan Abramov’s excellent blog posts such as about getting eslint working in Sublime Text.

Yeah that’s as far as I’ve got, but adding in Redux to this mix doesn’t seem so scary, at least I understand the language now. Angular will just have to wait.

Installing Ubuntu on Windows

It really is getting quite easy to install Ubuntu onto a computer from Windows now – especially if you’re not trying to Dual-boot. But if you do want to Dual boot, you’d still do the following but you have to partition your hard-drive first (which is remarkably tricky).

Installall Ubuntu onto a USB stick

UNetbootin is your friend

Here’s the main Ubuntu document: https://help.ubuntu.com/community/Installation/FromUSBStick#From_Windows

  1. Plug-in an empty USB stick
  2. Download UNetbootin (http://unetbootin.sourceforge.net/) & Install
  3. Run UNetbootin
  4. Distribution: Ubuntu | Type: USB Drive
  5. Click OK – wait for the download and the installation
  6. Either Reboot when asked or click close and remove the USB stick

Install Ubuntu from USB-stick onto your computer

  1. Set the computer to boot via USB, if you don’t know how, search Google for: [Your computer make & model] usb boot
  2. Turn off the computer
  3. Insert the USB stick
  4. Turn on
  5. Click Install Ubuntu