Technology moves at a frighteningly fast pace and for developers it can feel like we have managed to grab on to a tigers tail and are now barely holding on whilst flying across the open plains of this technological continent we have made.
From DevOps and Infra-as-code to React and serverless, there is an enormous array of technologies to learn and master, with new ones being released all the time. So, how can I possibly say that there is one to learn that will make you forever employable?
Some say it's a programming language, others say it's not, but it meets the modern trend of being declarative and also being cross platform. It powers some of the largest websites in the world whilst also being light enough to run in little phone apps.
The technology I am talking about is SQL, which stands for Structured Query Language and is a relational database technology that has been, and will continue to be, a core foundational technology of the web. If you are a web developer who doesn't know SQL you need to bump it to the top of your "To Learn" list today.
It might not get the press that NoSQL does, it might not be as hot as MongoDB or ElasticSearch and it might feel a bit too much like IT and not Dev'ing, but SQL is pervasive and is much better at solving many problems still than NoSQL.
NoSQL is powerful and amazing. The schema-less design approach allows you to feel very free and unconstrained, however when you want to start managing relationships and keeping duplicated data in sync across many documents you start to feel the trade off for that write time freedom.
Want to grab related data in SQL? Well it's just a
LEFT JOIN away!
Database technologies can be hard to get really good at without some real data. Inserting small amounts of data in a tutorial like songs and albums is good for the basics but when you land in a job with a SQL database with 1,000 tables that is 15 years old you're going to find yourself wishing for more experience that that. Here are a couple:
SQL might not be the new hotness but it's also not going anywhere, it is a manifestation of relational algebra and has been used to build much of the web.