My takeaways from WeAreDevelopers
AI development helpers
GitHub announced copilot, a plug-in to your IDE which will predict and write code for you. They predict this could save a developer unto 40% on common code problems, and in the next 5 years could effectively write 80%.
The other speakers didn’t really align with this but its an interesting concept, if we’re all resolving the same types of issues, it doesn’t take long before there is a design pattern or best practise to develop the solution – the complexity is making those design patterns work with our codebase.
Remote development workspaces
As businesses start using global workforces, there is often a need to setup environments, although docker etc make this easier, it still takes time. GitHub and other companies are actively pushing a cloud development environment where the setup is 1 minute, enabling coding from day 1, with the added benefits of being able to code from anywhere, without the potential risks of losing digital assets if machines are lost or stolen.
I’ll admit here, I’m still not entirely onboard with a distributed web where our data can be shared on a blockchain and public – but none the less I listened and will be watching this space more closely.
Memory and CPU efficiencies is on the rise.
Cloud computing gave us near infinite compute, its great, but it can be expensive. There was a trend in looking at performance, specifically cpu and memory and optimising it.
Technologies such as Span<t> have existed in .net for several years but its adoption is low. Such technologies can significantly reduce cpu and memory overhead, delivering a leaner more efficient cloud operation.
Scalability, but not what you think.
There were a few topics of how to build scalable software (Clean Architecture) – not in the traditional scalable though. Scalable in more of a human aspect – being organised, maintaining the separation, and documenting code in a way where you can maintain it in the future.
Do you know exactly where to look in the project to add a feature?
How confident are you that it’s working as expected?
Empowering teams to have autonomy
As teams grow managing those teams can be challenging, one business/startup explained how they allowed separate development teams to deploy straight to production without stakeholder approval, as long as the code had a fast rollback policy, and that the teams could demonstrate the codes effectiveness – this empowered the teams to deliver faster, and engage with what the user wanted faster.
Stripe discussed how their team used every opportunity to engage and speak with their customers, understand how they want to use technology and to make it as easy as possible to make technology accessible.
They described they got it wrong a few times, and needed to rebuild as they grew, but they felt it was the core values of the business that made it the business that it is today.
Open source licences and commercialisation
Sentry.io has recently become a commercial platform, evolved from open source. One of their developers explained how open source can be a struggle, but that the struggle can be worth it. Providing tools are technology open source can lead to a successful business model, which doesn’t always involve money.
The origin of C++ is not that dissimilar to typescript!
We learned about the creation of C++ bak in 1979, and that its goals were stronger type checking, classes with zero overhead. It was interesting to see a technology that was expected not to live on, has become a software platform which is used in many devices, including those in space.
Privacy – and social engineering.
Nord had an interesting talk on security, describing that one of the largest challenges in privacy is not technology its social engineering.
Our employers can easily ask for a change in software, which can lead to mining data – developers and stakeholders should consider the future ethical impact of such changes and how something trivial could result in tracking data which could be considered un-ethical.
Gen-Z are technology adopters, and technology often comes before considering what that technology is doing. We need to stop and think and be clear on the intentions as software evolves to think, are peoples privacy being compromised?
Eurowings described how they refactored their front end code base, and described that legacy isn’t necessary legacy, well understood legacy can still play a part.
They described how they used design sprints using a double diamond approach to prioritisation, then delivered in sprints.
Evolution of adopted software (development)
Laurie from Netlify, described how software evolves, and how a market leader evolves following an iterative cycle – it was an interesting presentation, which then predicted that the next generation of software tools would be evolving as WYSIWYG style editors (as Tim Berners-Lee had intended with the wide world web). – almost everything would be abstracted leaving very little code to write, it could be consumed almost like a drag and drop eco system.
AI World Models
There was a demonstration on how AI world models (real world models which have consumed large datasets – see here and here) once trained it can predict and answer in an almost sentient way (albeit slightly wrong). The advances in context and conversational is enabling AI to develop at deriving language context, and can answer questions in a natural almost human way.
IE is dead, RIP
The browser that had 90% share, is no more. long live IE.