Programming landscape in 2019
It's the beginning of 2019. The world is changing. Coding is sexy these days. It's no longer only a privilege of us, the nerds, who have been practicing it for decades in our dark basements. Nowadays you may hear stories about grannies who built their first fully responsive websites at the age of 82, and just three weeks after they are already writing their own JS framework. Same goes for kids: programming is integrated into the curriculum of first graders. I bet some of the parents are jealous.
Where are we going?
I argue the world does not need more programmers, rather it needs more domain experts who possess strong-enough-programming-tool-belt. Embedding programming into curriculums is the recipe for having these kind of domain experts in the future. The way to boost the change for current generation is to teach the relevant programming skills for domain experts. By domain, I mean things like finance, telecom, sciences, etc. In other words, I mean we should have less software developers who are specialized in stock market and more stock market experts who can modify existing software tools (or even implement some new tools) to meet their constantly changing needs.
Like the Economist article states, Python is playing a key role in the adoption of programming among wide audience. One major reason for this might be:
If you can write and read it like English, it's likely more approachable compared to most other programming languages. Over a billion people speak English. I'd call it a huge potential audience for Python. Of course there are a variety of reasons for why programming is getting so popular and why Python is leading the way. However, if the first programming language you learned is strongly typed, you probably understand why Python is booming especially among software development newcomers.
Internet is great, it's full of great study materials. Basically, anyone who has access to internet could become a self-taught full-stack junior dev in 6 months. That's revolutionary compared to an old-fashioned career path which usually start with 5 years in uni. If you are planning to start the self-taught path, a pro tip: put most of your eggs in Python basket. On the other hand, if you are already a domain expert and wont't mind staying in the same domain, consider picking up just the required programming skills and be a superstar in the domain.
What's the role of us, the professional devs?
No worries, we are safe, for now. Once domain experts pick up the required programming skills, there will be less demand for middling developers because non-developers will be able to perform part of the work currently performed by developers. This won't happen any time soon but I think it'll be interesting to get back to this prediction in 10 or 20 years from now.
As mentioned above, great online materials lower the barrier to enter the programming job market. What does this mean for existing developers? I argue it forces us to keep our skills up-to-date in order to stay relevant. If you prefer not to get run over by some kid born in the 2000s, you may want to have a look at those new JS frameworks. On the other hand, if you still like to polish your 25-year-old COBOL shield, take it chill, the kids will stay far away from your ever diminishing territory.
As closing words, the most natural way to stay relevant is to be passionate about what you do as a developer. Then you'll continuously develop your skillset, even without putting much effort to it. Being passionate can not be forced though. If you don't feel like it, try something else. Like it's easy to enter the programming field, it's even easier to switch speciality inside the field. Book recommendation for 2019: The Passionate Programmer by Chad Fowler, it's oldie but a goldie.
The last thing: some inspirational music for the new year.