Welcome to another edition of the WeAreDevelopers Dev Digest. This time we have an interview with Sead Ahmetovic, CEO of of WeAreDevelopers and Scott Chacon, co-Founder of GitHub. They talk about careers, early coding days, developer communities, evangelizing git, and how AI is shaping the future of coding.
Gitting things done…
So, let's get started with some some Git topics. Julia Evans is full of great information about it, for example talking about popular Git config options, or a deep-dive explanation on how HEAD works in Git. Always worth coming back to her blog.
Version control to me is the main step to move from an enthusiast to a professional developer. You need to get your head around it at first, but it is so much better than keeping lots of zip archives and rename folders to _final_really_this_time_it_is_version1.0a
and the like. The big thing about Git is that it allows safe collaboration without the danger of overwriting each other's work. And that makes us more effective.
Which is an interesting topic, as the median active developer merges 2 PRs per week and on average 48% of active developers are responsible for 80% of PRs merged since 2023. So whilst collaboration is much easier, we still wait for each other to deliver the work for us. Anyone wanting to start as a developer should try to break this cycle and start collaborating immediately. Do your own branch or fork and nobody can be annoyed at your contributions.
Working together is a big thing in general and it's amazing how the communication part is often what breaks down. This is why many big products have a well-defined code of conduct. The W3C just adopted a new Code of Conduct which is pretty thorough and sensible to enforce. Also a good example for others.
Looking back at development learnings…
Development is nothing new, and we should be more organised by now and not afraid of change like other markets are. We have lots of experience of other people to build upon. And most is available on the internet.
- 50 years ago the book
The Mythical Man Month
defined the The “10x engineer and it still a mythical being to me. It's not about one person doing everything or finding the shortcut to release things much quicker. It is about people from various backgrounds, with different perspectives and experience building things together. - Lars Wirzenius wrote a wonderful article on his experiences of 40 years of programming.
- If performance is your thing, there is a great performance-aware programming series with lots of information about the inner workings of different processors.
But can't AI do what we do already?
Last week, we reported about Cognition's Devin, the first "AI software engineer" apparently making developers a virtual thing. Many people wrote about and over on the pragmatic engineer they discuss if the “AI developer” is a threat to jobs – or a marketing stunt.
The previous Director of AI at Tesla, Andrej Karpathy, wonders if software engineering can even be automated and Ryan Pettrman explains how AI Will affect your career.
So, yes, AI can do a lot of things well, but it's not really a replacement. And we still have to worry about it multiplying and replicating our biases. Mozilla did some research showing that AI is unfairly targeting and discriminating against Black people and whilst AI chats try their best not to give bad advice, you can get harmful responses from 5 major AI chatbots by using ASCII art of all things. ¯\_(ツ)_/¯ indeed.
What about jobs?
The job market has become a bit better but job cuts are still at highest since dot-com crash which has people worried. I remember the crash and how the dotcom I worked for closed all its offices. My response was to work for an agency focussed on government services in the UK, which was a good time to lay low for a year.
However, whilst some development work will be automated, there are still high-paying jobs in the age of AI.
On a more baffling note, in some companies remote workers can't get promotions. This sounds borderline discrimation to me, and I wonder what European work law says about this.
Back to the Bard?
Some things are great to be automated, like browser testing, and Playwright is an excellent tool for that. Browsercat released the Ultimate Guide to Visual Testing with Playwright and I did not know that Playwright has a code generator. You can use a web product, record all the interactions and let Playwright replay them.
Money matters
Serverless Horrors Stories is a collection of things going wrong when you go serverless. Especially bills coming in for traffic you didn't expect. Another interesting thing is a report showing that most subscription-based apps do not make money and ads don't seem to work either. So what can we do?
Tools in brief
-
- Capo.js helps you fix performance issues by optimising the
<head>
order - A Guide to Node.js Worker Threads to get you started
- Syntax Highlighting can be hard to do. One solution is Shiki.
Procrastination Corner
- Bartosz Ciechanowski is great at explaining complex topics with beautiful animated illustrations. He told us some time ago how bikes work, but this time things really take off with How planes fly.
- GifCities The GeoCities Animated GIF Search Engine allows you to find all those wonderful GIFs that made people's Geocities pages so much more unique. Time to let babies dance, hamsters spin and show that "under construction" sign.
That's it! See you all next week!