Eoin Connolly, technology director at ConsenSys, explores his own history with code and lays out his key tips for anyone new to the community.
In the summer of 2002, I left what my Irish mammy would call a ‘good job’ to travel around Europe with my now wife. Everything was good in the world – IT was booming thanks to the heady possibilities of the internet and the Y2K land grab, and after a few years working on payments processing systems, I was planning to take some time off to work out what I wanted to do next. The opportunities appeared endless. After all, I could code, and if there was one thing that the world needed more of, it was code.
But then the dot-com bubble burst, likely with a soft pop while I was messing around with Quake 3 and ANSI C, and the world decided that not only did it not need that much code, but maybe even the internet wasn’t all that. Thousands of developers flooded onto the job market and the opportunities in Ireland were few and far between.
Smash cut to now. Tech companies are among the most valuable in the world, and there are few places in the world better than Ireland to get involved. Microsoft, Apple and Amazon have all (sometimes briefly) become trillion-dollar companies. Data is the new oil. Social media platforms have billions of users and are forcibly enriching our lives by scaling peer pressure and envy to a global level. Everyone carries a supercomputer in their pockets and the thin electronic layer of the internet wraps us all in its warm glow. These interconnected systems we interact with daily, either through the push of a button or the touch of a screen, form the largest cooperative (or competitive) engineering project the world has ever seen.
And it’s all built with code. Trillions of lines of code. Some autogenerated, but most tapped out by coders one character at a time. The Large Hadron Collider – the most complex machine humans have ever built, which somehow accelerates protons to close to the speed of light to reveal the secrets of the universe – has 50m lines of code, while Google has more than 2bn in its repositories.
‘We’re on the verge of an inflection point that will inject the digital world into all of our interactions’
As Marc Andreessen testified, software is eating the world. Every process that can be converted to code will be converted to code. Because unlike us ‘meatspace’ humans, code doesn’t need to sleep or eat or take a break to play with more code on its phone. Code can perform millions of calculations per second and communicate globally at the speed of light. And as hardware hits Moore’s law and becomes simultaneously more specialised and commoditised, it is code that enables the transformative technical advances that will change our world – ideally for the better.
What does that mean for the coders reading this? We’re on the verge of an inflection point that will inject the digital world into all of our interactions. Smaller, low-power SOCs, 5G connectivity, secure cryptographic enclaves, cheap screens and cameras, cloud and distributed computing are among the fundamental building blocks in the hardware world. In the software world, open-source projects and frameworks are the tools that will help us build the human interfaces and data connections that will make it all sing.
Career opportunities
If you’re technical, the most interesting opportunities right now are in blockchain, machine learning, augmented reality, virtual reality and autonomous vehicles. All of them have large engineering challenges made up of thousands of tiny interconnected problems, and all of those problems need a human being to write the billions of lines of code needed to achieve their potential (at least until the machine learning people accidentally create the AGI that can write its own code).
Thanks to Ireland’s welcoming stance for multinational companies, our positioning as an English-speaking gateway to Europe, and the network effects of the high proportion of our workforce that are software developers, anyone coding today in Ireland is in a position to work directly on these technologies. Sure, the bar is high – these are complex problems, but if you love code, you’ll be doing what you love. You’ll even earn good money doing it, which is why a love of code is more pragmatically useful than, say, a love of medieval poetry.
‘Show your kids code so they know the world doesn’t run on magic’
Don’t obsess too much over your initial language choice either. We’re in a polyglot world where JavaScript, Java, C#, Go, C++ and Haskell, among others, all intercommunicate using our existing network protocols (HTTP, TCP/IP, UDP), and it’s unlikely you’ll have the luxury of sticking with the one syntax for your entire career. You need to understand the capabilities and limitations of the language you’re using.
Node is super fast and easy, but it’s single-threaded, so scaling out is your only option. Go makes multi-threaded applications easy, but you won’t have direct access to the frameworks that can do a lot of the heavy lifting for you. C# is lovely but tightly coupled to the Microsoft stack.
If there was one perfect language, we’d all be using it. But popular languages are usually popular for a reason, and using a language that has that critical mass of developer adoption behind it means you’ll have access to the open-source code and knowledge of that developer ecosystem.
And day to day? I recommend that you continue to advance your knowledge, in-person or online through free educational resources, network with industry peers by joining a dev meet-up, or share your knowledge by presenting at a dev meet-up. Take part in hackathons if there are any in your area (virtual hackathons are totally a thing now) and you can typically go to these solo and link up with a team of like-minded people.
You can also build an app or a service that at least one other person finds useful, contribute to open source, answer questions on Stack Overflow, work with people better than you because that’s how you learn, show your kids code so they know the world doesn’t run on magic, and above all, code.
This will move us all forward to our best-case non-dystopian future, one key-tapped character at a time. Because right now, code is what the world needs.
Eoin Connolly is technology director at ConsenSys Ireland, leading the company’s engineering team of blockchain specialists to help bring about the decentralised future.