I havenât heard about C# and the .NET framework for years. Itâs probably still being used to churn out ugly Windows applications by sleepy suits at business factories.
I bet there are still a few equally stuffy Java developers around, maintaining legacy enterprise applications at Oracle and IBM and what-have-you. What was it they built, again? Desktop applications with a GUI that looks equally bad on every platform, right?
JavaScript is everywhere, but a shiny new framework pops up every week, just as yesterdayâs fades into obscurity. Wasnât that language built in some two weeks? No wonder itâs awful to work with.
I assume that WordPress, Drupal, and Magento are keeping PHP alive, if you could call that life. PHP: thereâs another language that was hacked together for an entirelyâŚ
I havenât heard about C# and the .NET framework for years. Itâs probably still being used to churn out ugly Windows applications by sleepy suits at business factories.
I bet there are still a few equally stuffy Java developers around, maintaining legacy enterprise applications at Oracle and IBM and what-have-you. What was it they built, again? Desktop applications with a GUI that looks equally bad on every platform, right?
JavaScript is everywhere, but a shiny new framework pops up every week, just as yesterdayâs fades into obscurity. Wasnât that language built in some two weeks? No wonder itâs awful to work with.
I assume that WordPress, Drupal, and Magento are keeping PHP alive, if you could call that life. PHP: thereâs another language that was hacked together for an entirely different purpose, and what a mess it is!
Rails is the best, most productive framework ever. Everyone I know says so!
If I let my filter bubble dictate my understanding of development communities, it might go something like that.
The Feed
There are tens of millions (~20â30 depending on your source) of software developers around the world, each with the ability to build something completely new and radically challenge the status quo. After all, all we need is a computer and some time to launch a new thing.
Blink and you could find yourself irrelevant. So how do we keep up? We prioritise what we follow.
As someone primarily working with Ruby and Rails, I subscribe to Ruby/Rails news feeds. I follow prominent members of that community. I read changelogs for â you guessed it â Ruby software. Despite also following some more generic tech feeds, I hear precious little about many of the languages mentioned above. If I used the more mainstream social media platforms, they too would ensure that I receive primarily Ruby/Rails content, because thatâs what I engage with.
This serves me a steady stream of new information about my tools of choice. I see how theyâre developing and improving all the time. Bombastic announcements from community pillars generate excitement and incorrect assumptions about the âcompetitionâ. No one else is pushing the bar like we are!
Tribal Warfare
Add to this that developers are an opinionated bunch. Heck, humans are generally opinionated. Having an opinion means caring about something, doesnât it? Our opinions sort us into groups of others with similar opinions, which helps us further develop and build on those opinions â so long as they donât stray too far.
In these groups, the more we share, the more difficult it is to produce different, or opposing ideas. Those ideas are quickly shut down with jokes, ridicule, or downright disapproval. Diverse thinking be damned.
âHey guys, have you heard about Blazor? Itâs a new way to build things in .NET!â
âEw, .NET.â
âYeah, lol. Never mind.â
These little jabs are everywhere. Theyâre insidious, and the perpetrators genuinely donât mean any harm. Itâs not a big deal. Iâve done it myself.
A common target in the Ruby world is JavaScript. We avoid writing it to the point that many of us have become afraid of it. I get it: weâve been around a while, and JavaScript was, for a long time, a ânecessary evilâ of frontend development at best.
Little pokes and smirks at JavaScript being a lesser language are rife. Itâs all in good fun. Isnât it?
But what have we become? Weâre a tribe now. We take care of our own, but other tribes are dangerous. Itâs us versus them.
Outside the Bubble
Those languages I mentioned above? All thriving.
.NET was open sourced a few years ago and now runs on anything. ASP.NET Core has some of the best documentation Iâve ever seen, helping developers rapidly build performant web apps with batteries included. Blazor offers two powerful paradigms for creating client-side applications on the web.
Java is alive and well, with many openings for greenfield and legacy apps alike. The language has matured, with less boilerplate than I remember. Kotlin is a newer option under the same ecosystem, whose syntax is reminiscent of Ruby. Itâs possible to build just about anything within the Spring framework.
JavaScript has evolved the most since its early days. Sure, the language was hacked together to get it to market, but people didnât give up on it, instead putting effort into improving it. TypeScript only makes it better. New frameworks do pop up all the time, but thatâs a good thing: the community is inspired to experiment and innovate. Itâs not like new frameworks immediately displace âoldâ ones â there are plenty of mainstays for both front- and back-end development.
The PHP world may be the biggest shock to those who havenât followed it. Laravel, originally inspired by Rails, has not only become âRails for PHP,â but may even have surpassed Rails in its claims of rapid development, batteries included, and being the âone-person frameworkâ. Laracon attracts thousands of attendees the world over. And the language has grown up, too!
Ruby remains a pleasure to work with. Rails is still a really productive framework, and the last few releases have been fantastic improvements. I still really love working with Ruby and Rails, and my love for them doesnât need to take anything away from what awesome things are going on with other ecosystems.
Be Better to Be Better
Itâs so easy to get comfortable and hunker down, plugging our ears to the rest of the world and indulging in our friendly little group of like-minded people. But that does no one any favours.
Instead, I suggest we visit the other tribes. Exchange gifts: share what weâre doing, and bring their ideas back home. Donât disregard a framework because the syntax itâs written in isnât as pretty as yours. Donât ignore a language because of its early awkward moments as it found its feet.
Every few months, I like to go on an excursion and virtually visit other communities to read about what theyâve been up to since my last visit. This works better for me than overwhelming myself with a constant firehose of news, as I get to do a deeper dive and commit more to memory. Just as everyone learns differently, you might prefer a different approach.
Whatever your takeaway, I strongly recommend getting some exposure to other ecosystems. It expands our minds as well as our toolboxes, and may even spark novel ideas to build on as we return home.