Last night at the Sydney Go Users’ meetup, Jason Buberel, product manager for the Go project, gave an excellent presentation on a product manager’s perspective on the Go project.
As part of his presentation, Buberel broke down the marketplace for a programming language into seven segments.
As a thought experiment, I’ve taken Buberel’s market segments and applied them across a bunch of contemporary languages.
Disclaimer: I’m not a product manager, I’ve just seen one on stage.
|Web and mobile4||Big data and
|Desktop applications5||Mobile applications|
|Objective-C / Swift||0||3||2||29||0||3||3|
Is your favourite language missing ? Feel free to print this table out and draw in the missing row.
Scoring system: 0 – no presence, lack of interest or technical limitation. 1 – emerging presence or proof of concept. 2 – active competitor. 3 – market leader.
If there is a conclusion to be drawn from this rather unscientific study, every language is in competition to be the language of the backend. As for the other market segments, everyone competes with C and C++, even Java.
- The internet of things that are too small to run linux; micrcontrollers, arduino, esp8266, etc.
- Can you write a kernel, kernel module, or operating system in it ?
- Monitoring systems, databases, configuration management systems, that sort of thing.
- Web application backends, REST APIs, microservices of all sorts.
- Desktop applications, including games, because the mobile applications category would certainly include games.
- OpenGL libraries or SDL bindings.
- Swing, ugh.
- Phonegap, React Native.
- Who remembers WebObjects ?
- Python is a popular scripting language for games.
- Servo, the browser rendering engine is targeting Firefox.
- Thanks to @rakyll for reminding me about the Blu Ray drives, and j2me running in everyone’s credit cards.