Open Source during War: Challenges of Independent Development Teams in Ukraine
To launch an important initiative, in September–October 2022 I interviewed 15 independent development teams that make open-source products for Ukraine’s victory in the war. Here are the findings.
General observations
- Share of source code. Open source accounts for up to 90% of the code of the solutions developed; its role is key in most solutions used.
- “Not only software”. Open hardware architectures are actively used, allowing maximum cheapness of solutions.
- “Licensing afterwards”. During the war, no one looks at licenses; the main aim is to eliminate more enemies. Everyone understands order will have to be restored after the war for MVPs to become businesses.
- “Changed code is not published”. Since an open-source solution can be exploited by the enemy, developers generally do not publish their code.
- “The new Kalashnikov”. Many solutions use the Raspberry Pi platform plus autopilot or other software — aptly called “the new Kalashnikov in the age of computers”. The platform allows both quick prototyping and working solutions “in production on the battlefield”.
Main problems noted by respondents
- Lack of good open-source solutions and experts in radio electronics;
- Many developers don’t know how to work with open source and lack qualifications to deploy complex solutions — “it’s easier to write a basic solution from scratch than deal with a complex and old one”;
- The open-source ecosystem lacks tools for development and debugging;
- Duplicate solutions: without common repositories, duplicated solutions are made by different teams unaware of each other;
- No unified architecture and development standards, especially among volunteer groups, delaying integration;
- Most programmers contracted into the army spend time on shifts, not programming;
- No good systems for monitoring experiments between teams in AI development;
- No ready-to-use pipelines for the release of cloud solutions;
- Not enough datasets;
- The issue of rights to AI developed on datasets with unclear authorship;
- The question of how the developed IT systems will be operated, and by whom, is inefficiently solved.
Instead of a conclusion
In the first 2–3 months of the war, the community of Ukrainian programmers created a large number of open-source solutions useful “right now and today”. As the conflict continues, both sides are improving their tools. IT infrastructure needs a more thoughtful architecture, qualified personnel, management and complex infrastructure — essentially the release of IT solutions “into full-fledged commercial production” during the war, where open source often shows unpreparedness.
There is also the license problem: developers have to deliberately violate licenses by hiding code so as not to disclose it to the enemy. This should be systematically settled at the level of standard licenses — for example, by introducing “open-source licenses for military communities” which allow disclosure of the code only within certain communities.
Best regards,
Vitaliy Goncharuk
LinkedIn