First, a disclaimer. This technology is currently evolving so fast, that things in this blog post will most likely be outdated quite quickly. New services, better (or worse) end user license agreements or privacy policies, and refined legislation are continuously being introduced. Enjoy reading how the state of things are in May 2023!
The tools used in software development have been getting better continuously since the early days of the craft. Manually coding everything from scratch has been enhanced with open source libraries which (usually) solve common problems which developers would otherwise be solving over and over again all over the world. This has greatly reduced waste, as in time which could be allocated to solve meaningful business problems.
Code editors (or IDEs) have brought in autocomplete features and linters have been introduced to keep the codebase nice and tidy, while automated security & quality checks are provided by a boatload of different tools on the market. Github Copilot and its code generating abilities were originally launched in 2021 with its private use licensing scheme.
But it was ChatGPT which became publicly available in late November 2022 that triggered a new era of generative AI tools which all claim to boost productivity and also make human developers obsolete in the next five years. Or so some people are saying. I tend to be the skeptic in the room when any new shiny thing starts to become overly hyped and taken into use without thinking twice.
However, instead of going to the Winchester, having a pint, and waiting for all this to blow over, the speed of this trend makes it mandatory to provide our people access to these tools and encourage them to learn and apply their strengths to benefit our Clients (but not without asking first, as we’re about to learn also of the caveats).
Generative AI in real world use
At the time of writing this blog (as this might be obsolete in a few weeks), main tools related to Generative AI at Futurice are the Github Copilot for Business, ChatGPT Plus, and OpenAI tools available in Azure through the magic of APIs. We also work with a number of other LLM tools, but those three are the most notable ones.
Based on our experiences so far, and even as highly potential technologies these are, we don’t yet see an existential threat to software development as a profession. Tools have proved to be highly efficient in handling dull repetitive tasks, but their capability to magically write complex custom business logic which needs to handle several integrations and take care of company specific security measures is another thing. There’s still a need for professional programmers to handle the complexity and ensure privacy/security requirements are met, while using the AI as their sidekick.
The internet is filled with examples where these tools are good, but based on our experiences from real-world projects, these tools currently shine most in generating test data, writing acceptance tests from documentation, producing documentation (a thing many developers usually despise!), automatically generating repetitive blocks of code and solving challenging problems related to algorithms and data structures.
Besides the tools being used to boost our own development workflows, we are introducing large language model based solutions to our Clients in various ways. We are continuously learning together with our Clients on what is actually possible and feasible in different industries and defining the reference architectures as we go since these are not yet too widely available with everything being so bleeding edge.
Our approach in utilizing AI at Futurice has always been to pay attention to the responsible use of these almost magical tools. These tools bring a lot of good to the table, but not without some downsides.
Most notably the discussions around the world focus on IPR and its both sides: fear of accidentally utilizing e.g. generated code which is actually licensed in a way that could create problems for anyone using it or your own highly confidential materials leaking out to the public. Just recently Apple banned the use of ChatGPT and Github Copilot to prevent such leaks. Also, besides corporate secrets, sending any personal data to these online services should be avoided - for now.
Because of this specific controversy, we are very careful to introduce these generative AI tools into the daily project work and always go through the potential risks with our Clients before making the decision to enable them for the dev teams.
On the other hand, the work required to train these large language models can be ethically questionable and exploitative. This is the darker side that the public rarely sees, but should be taken seriously to produce services which are both innovative and ethical. While moving fast and breaking things, the companies developing these highly interesting solutions should also pause every now and then to fix the basic things powering their growth.
What comes to regulatory developments in the field, the speed of new services popping up is so fast that the legal side will be far behind for a long time (and might never truly catch up). The most interesting (or worrying) discussion to follow in the European Union is a recent legislation proposal which could outright ban the use of non-EU services and be a major blow also to open source developers. This would surely be a very big thing and hopefully some better alternative legislation will be introduced to enable innovations to thrive across the globe - with privacy matters taken seriously.
With announcements from Microsoft and Google to bring these generative AI tools as core parts to all of their offerings, it currently seems inevitable that whether you like it or not, these technologies are here to stay and will become part of many people’s daily work. Limiting their use in some geographical areas would surely put different companies in very different positions in terms of competitiveness.
As said in many places around the world already, it is not AI that is going to take your job, but it will be taken by someone who knows how to leverage AI and become more productive.
So, embrace the change and buckle up, you could be seeing some interesting developments in the (near) future.
- Lauri AnttilaAlumni