An intro to React.js: Build an incremental web game Part 1

If you're comfortable with the web development fundamentals (HTML, CSS, and JavaScript) but have never tried out modern JavaScript libraries such as React, there's no better time than now. React is not only one of the most popular technologies in the web development world; it also brings a host of benefits and conveniences for developers.

Many user interfaces are written with plain JavaScript, or with libraries such as jQuery. In many cases these technologies are sufficient on their own, and there's nothing inherently wrong with them. However, you can run into difficulties as your codebase grows. Dealing with application state and ensuring your code is modular, reusable, testable, and fast running can become a real pain - but React can help you solve these problems, as we will see.

What we will be making

Many beginner React tutorials will have you to develop a project such as a todo list, or something relatively boring. Let's make something a bit more fun - a web-based incremental game. An incremental game is a popular type of game where the player uses simple mechanics to accumulate some kind of resource(s). Often the player can purchase upgrades to automate resource accumulation. A famous example of an incremental game is Cookie Clicker. In our game, instead of collecting cookies, we'll be collecting coins.


Programming Books You Should Read: The Pragmatic Programmer

I've been a professional web developer for over four years now, but one book that seems to have escaped me is The Pragmatic Programmer, by Andy Hunt and Dave Thomas. It's a rather famous and influential tome, so I thought I should make some time to read it.

The book was first published in 1999, but it still has a lot of relevance today. It's not a long or arduous read, and anyone even relatively new to programming should be able to read it without too much fuss.


Launching Off

I decided to re-launch my blog again after a long time. What better way to start by jotting down a few thoughts on SpaceX's recent rocket launches?

Last month SpaceX successfully launched the first of their Falcon Heavy rockets into space, a rocket that the company hopes will carry humans into space and restore "the possibility of flying missions with crew to the Moon or Mars". The other day, they launched their 50th Falcon 9 rocket into flight.

It's no surprise that it's fallen to the private sector to advance space exploration efforts. Since President Kennedy's successful moon landing nearly fifty years ago, interest in space exploration from public institutions has evaporated. Little has been done to return astronauts to the moon and beyond save a few feeble efforts that never came to fruition. The modern-day Space Race is between private organizations.

Indeed the Falcon Heavy launch was a remarkable feat, born partly from private obsessions over cost savings. The Saturn V rocket cost, adjusting for inflation, over $1 billion to launch. The Falcon Heavy, which can carry about half the payload of the Saturn V, costs only $95 million.

If the moon landing was the defining moment of the old Space Race, then the defining moment of this modern private race will be a manned mission to mars. If anyone delivers it, it'll be a company like SpaceX, headed by obsessed individuals like Elon Musk.