“Instead of putting the taxi driver out of a job, blockchain puts Uber out of a job and lets the taxi driver work with the customer directly.” – Vitalik Buterin


Relational Databases

We were hiring developers for a large, complicated application. I happened to mention to one of the more promising candidates that the application was fairly write-heavy and we might experience some performance concerns later. This developer, with years of experience and skills across multiple technologies that might have been of use to us, replied “you’re going to either need to shard your database or switch to NoSQL.”

That was enough to guarantee they didn’t get the job.

Before relational databases, all databases were NoSQL. That’s why we have relational databases.

Great read on why database design is so important

General SEO Principles

Getting Your Website on the First Page on Google

This will be a short and sweet post. Below I outline some good SEO principles to keep in mind when developing a website.

1. Understand what SEO actually is.  Search Engine Optimisation (SEO) is the technique in which web developers design websites so that search engines have a greater chance to find and rank your site higher than the millions of other sites in response to a user’s search query.

2.Include the “alt” attribute for each individual image on your webpage. The ALT tag ensures that every image has a relevant textual representation within my website, therefore providing more valuable content to the search engine. Ensure that there is also good content surrounding the image on the page; a factor that the search engine algorithms consider.

3. Content is king.  Include valuable and meaningful content on the actual pages so that the search engine algorithms can identify primary keywords and keyword phrases. Google (and other search engines) will lower your rank for trying to ‘trick’ the search engine, so avoid using techniques such as entering a bunch of unrelated of keywords in your website.

4. How long does your page take to load? Search engines like Google for example analyse the amount of time it takes too load your page. Search engines consider page size to be important due to the ever increasing number of users who choose to access the web via smartphone/tablet, etc. It is becoming increasingly rare that a user will solely depend on their wired PC connection at home to view pages on the Internet.

5. Utilize CSS as much as possible. CSS (Cascading Style Sheets) allows you to separate the content of the webpage from the display of the web page. This idea follows on from the aforementioned points about speed and ‘search engine friendliness’. By defining your styles once in a separate CSS style sheet, you can apply these styles to every page with one line of code. Not only is the code more ‘clean’ to the search engine, it also reduces the amount of code contained in each HTML document, therefore improving download speed.

Hope this helps!