How we build the software of tomorrow

August 31, 2022
8
min read
How we build the software of tomorrow
Benedikt Bischof
by
Benedikt Bischof

Welcome to this issue of the WeAreDevelopers Live Talk series. This article recaps an interesting talk by Thomas Dohmke who introduced us to the future of AI – coding.

This is how Thomas describes himself:

I am the CEO of GitHub and drive the company’s mission of making GitHub the home for all developers. Fascinated by software development since my childhood, I am passionate about building tools developers love and creating products that drive software development forward. I previously co-founded HockeyApp and led the company as CEO through its acquisition by Microsoft in 2014. I hold a PhD in mechanical engineering from University of Glasgow, UK. 

Storytime

It’s a special moment for Thomas to be in this Conference-Center in Berlin as he grew up here but moved away some 20 years ago. Every time he arrives at the airport, he gets a bit sentimental when hearing the Berlin dialect which he describes as rediscovering an old love.

Thomas was born in Berlin-Marzahn in the late 70s, roughly at the time when companies like Microsoft and Apple were founded. As he lived in East Germany, it wasn’t normal for people to have a computer at home, so Thomas only had a calculator (an old one with a green LED screen). When Thomas was appointed to collect the milk money from his school colleagues he used the calculator to find out how much he needed to give to the janitor.

In 1988 the now CEO of GitHub saw a “real” computer for the first time through the window of a shop at the Alexanderplatz in Berlin. He remembers this as the moment he decided to become a software developer. But for his first own computer (a Commodore 64) Thomas had to wait until the wall has fallen and there was access to western technology.

Fast forward to 1998: Thomas started to study computer engineering at the technical university in Berlin. This was also the time he first got in touch with open source as he bought a Linux distribution (5.3) at the local book shop. He instantly fell in love with open source and when he got free internet at the university Thomas started to get in touch with other developers from all over the world. 

How fast computers and software have developed

Being back in Berlin, Thomas reminds himself how far we have come as developers and how much software has evolved in such a short period. In only the last 40 years we have gone from the introduction of the Apple 2, over the ubiquity of the internet and therefore the rise of open source, straight to mobile phones that fit in our pockets and have more power than some PCs.

Thomas points with every new advancement in software code we have built things together that are changing lives and we even managed to land on different planets with little helicopters – further emphasizing the importance of open source.  

Open Source has won

And since the world has gone online software developers have become the backbone of every organization that’s innovating and thriving. For Thomas, this is the most obvious symptom that open source has won. Referring to him the collaborative model which was established by it is actually the best one. No company can compete with the millions of open source contributors around the world. And despite all these advances, according to Thomas, we are only at the beginning of the golden era of software technology.

The rise of AI

Thomas predicts that in the next 5 years there will be a greater change in software than in the last 40 years. That’s because we are entering a time of fundamental transformation in development as we know it. And according to him, this will make us all happier.

He continues by stating, that AI is already co-piloting our everyday lives. Think about it for a moment. When you are taking a photo with your smartphone, the gallery app will automatically generate albums based on the content of the pictures so you can find them by tag-words like “holiday”, “dog”, or “garden” instead of searching for them manually. Or another example would be Google Docs. When writing a text with this tool it predicts the next two to three words you wanted to type which creates a dopamine rush when it’s really just the right word you were searching for. Also, cars like Teslas are driving themselves and let’s not forget how Alexa helped us during the pandemic by ordering thousands of toilet paper rolls.

So, you see – AI has already become a natural extension of humanity. But until now it didn’t interfere that much with code generation. What we as developers do has remained mainly manually.

Copilot

Referring to this, Thomas introduces the newest product of GitHub called “Copilot”. As a pair programmer, but with an AI as the other coder besides you, it works somehow like a Google Doc. When you write code or a comment it can predict the next word. But not only that: it can propose whole methods, unit tests and even more complex algorithms to you.

How do they achieve something like that you may ask? Like GPT-3 it uses a model from OpenAI called codex but instead of English or German, it’s trained with open-source code in many different programming languages. As a matter of fact, the vocabulary of these is much smaller than for example the whole oxford dictionary, Copilot is able to predict a whole method for you. As you can imagine many developers were sceptical at first. But with a growing user count, the satisfaction with the product rose enormously and Thomas even makes the statement that a lot of the developers who are using Copilot can no longer live without it. While that’s of course an overdramatization, we all know tools which simplify our lives and serve our comfort so I think everyone can relate to his assertion. To back that statement up, Thomas reveals that about 40% of the code, in those files that have Copilot enabled, was written by AI. While that’s an impressive amount of predicted code, he further declares that this number is just the beginning. In fact, the GitHub CEO assumes this percentage will double to 80% in the next five years.

Does that mean AI is going to take over the whole coding process and makes us as developers sparable? Short answer: no. At least when it comes to the models that are behind GPT-3 or Copilot. As they are not intelligent and above all not creative which means they need our input to output the correct code or to even be trained right. So, no need to worry, your job is safe, and your work will remain crucial for every company out there.

Codespaces

Developing and maintaining AI models on this level wouldn’t be possible without another great achievement of the information age: the cloud. To train large packages like codex a lot of GPU power is needed. As it would be not economical to maintain such hardware as a self-owned product, most companies move their AI operations to a cloud. But also people as individuals are using cloud-based services for their projects – a lot of salespeople use salesforce, accountants use NetSuite and many designers love Figma – and yet most of the software development is still local. How developers write code on their local machines hasn’t changed much in the last ten years. According to Thomas not only this circumstance has to change, but it is also in the process of changing already. His team has built a product around that line of thinking called Codespaces – a tool which allows us to move our whole development environment to the cloud. Of course, we still need some computer peripherals like a keyboard and screen (for now at least), but all other tools – like our dependencies, our compiler or the command line – are moved to a virtual machine on the cloud. Let’s talk about some of the many benefits that come with these changes. For example, you will never have to install new libraries and change your environment for projects you found on GitHub. This erases also onboarding time when new employees need to adapt to a project. 800 of GitHubs own employees were moved to Codespaces and that reduces their onboarding time from 45 minutes to one (nope no typo here). Not only the performance of us humans is enhanced, but with cloud-based services the compute power is also infinite because you can always add another environment for another project. And last but not least we don’t have to worry that much about security anymore as we don’t need to install scripts from unknown sources.

So don’t let the time move you and join the AI – community!

Thank you for reading this article. If you are interested in hearing Thomas Dohmke himself you can do so by joining our event platform.

About the author:

Benedikt is a media-technology student, computer hardware enthusiast, and proud dog dad. His mind is always on the latest tech news and how to make use of them.

Ready to take charge of your dev career?

Join Europe's leading job platform for software developers!

Register for free

Read more like this