HACKER Q&A
📣 bicx

Is there a technology you loved but had to abandon?


I recently started my own software development agency after 14 years in startups. Because I’m now in a position to set the technical direction for many small businesses who have no established engineering team, my technical choices have a long-term impact for their future ability to hire engineers with relevant knowledge.

I’m also someone who deeply enjoys working with Elixir and Phoenix. However, I’ve quit investing in that stack and I don’t plan on recommending it for my clients. I think Elixir is a fantastic language and I’m highly productive with Phoenix, but I can no longer justify my personal investment in that stack due to the small pool of engineers who have relevant knowledge. The ecosystem is also quite weak in comparison to JS or Python, and that can have a major impact on productivity.

Now I’m doubling down on TypeScript with Python as a secondary choice. No niche frameworks, just things other engineers likely already have experience in. I’m not terribly excited about it, but I feel like I’m making the right choice for my clients.

At the same time, I hate being someone who perpetuates the status quo. Maybe I’ll reach a point where I can begin investing back into Elixir and other niche technologies that I feel should have a greater presence in the world.

Anyone have a similar story?


  👤 orionblastar Accepted Answer ✓
I used to be a 10X programmer in Visual BASIC 6.0 but it is obsolete now and replaced with C#, something better came out and replaced it Dotnet.

I had to give up my Commodore 64 and Commodore Amiga 1000 for a 386 PC clone to do DOS and Windows work.

I know COBOL and FORTRAN but they are old as well. So I am into retro computing stuff.


👤 thesuperbigfrog
In the early 00s the Psion Series 5mx (https://en.wikipedia.org/wiki/Psion_Series_5) was an amazing portable computing device.

It was more portable than a laptop, had a hardware keyboard large enough for touch typing, fit in your pocket, came with a full suite of office / productivity software, and ran on 2 AA batteries.

Sadly it and the other handheld computing devices Psion made were discontinued and the software was converted to power feature phones.


👤 mlhpdx
Pour on the hate, but I still miss Windows Phone.

👤 breckenedge
How much of a burden is it to maintain Phoenix/Elixir apps?

I wonder if TypeScript will be around in 10 years. Looking back 10 years ago, CoffeeScript was a thing. I like the annotations of TS, but don’t like the necessary compilation step, and I seem to remember another new JS annotation scheme coming out recently?

Who knows, everything browser could be WASM-based in 10 years, or the underlying language may not even matter?

Or maybe we’re all just deploying things on clones of AWS services and gluing them together?


👤 bruce511
In your position I suspect I'd follow a similar pattern if I had to make the choice today.

But, as a counter-point, I currently work with a stack which is both highly productive, unfashionable, and has a tiny community, writing in a language you never heard of.

We moved from custom projects to products many years ago and we are now big fish in our market space. Customers buy software and services, not source code, so the stack doesn't matter.

While there are clear and obvious issues to using "old" technology, there's also pleasure gained by having a high level of expertise in a specific area. As distinct from being yet another c# programmer in an ocean of c# programmers.

Incidentally, there's also a lot of money to be made, as others retire my incredibly specialised abilities come into demand. Much in the way that COBOL programmers made money in the 90s.

I can't really advise you to focus on niche technologies since I can't say how much of my path was pure luck. But I chose a path less travelled by, and that has made all the difference.


👤 muzani
IRC. I like it more than all the alternatives today - Discord, Slack, Matrix. Slack even had the # logo for a while.

It lacks push notifications, connectivity, all of which clients like IRCCloud have built in. But I suppose companies like Discord want to actually own the channel, and I suppose it doesn't work for enterprise purposes and the terrible moderation led to a lot of harassment. My wife thinks IRC is a place to find hookers and date underaged girls.

Still I think IRC was just a nice place, quite similar to this niche HN holds.


👤 solardev
I don't think anything we do today will be the same in a few years. The JS ecosystem is a hack on top of a hack. Typescript itself is a third party add-on usually compiled by a fourth-party builder integrated by a fifth-party bundler. There's no guarantee of stability there, and odds are the whole stack will continue to mutate.

I used to love AngularJS v1, but that died a quick death and v2 was much more complicated. React took over but was such a limited library in comparison. I'm still hoping it gets superceded by a more holistic framework. Next is headed that way, but it still doesn't handle some things out of the box (like redux toolkit fetch and slice stuff).

I also really miss the awesome power and integration of Visual Studio (not VSCode, the stripped down editor, but the full fledged one). That was such a nice environment to work in, especially building WYSIWYG WinForms GUIs that is directly tied to code. You can right click anything and change its attributes or jump to source. Like Dreamweaver but way more powerful.

At the end of the day, technologies are just fashions. Nothing we do today is fundamentally different than 20 years ago. We run apps or web pages on devices. The languages and stacks ultimately don't matter, the product and UX do.

I don't think it makes sense to become deeply specialized in any particular stack unless it's evergreen, something like C++. Maybe Java, if you like legacy enterprise baggage. But otherwise it's always just chasing fashion trends...

Exhausting, I think. Part of the reason I'm looking for an exit out of this field. We keep reinventing the wheel every few years for no real reason. Just some other huge company or tiny startup wanting their turn.


👤 mikewarot
>I hate being someone who perpetuates the status quo.

I've worked making gears, in a machine shop, a "job" shop. When you enter the world of production, you encounter a mix of machines from WW2 onward. These machines are those that have been making parts for longer than most people have been alive. They're not optimal, of course, but the cost of change is far, FAR larger than you can possibly imagine from the outside.

If you have a machine that does a $5000 operation on a $100,000 part, and you do 50 of those parts per year. A single scrapped part can take out years of profit. That machine might do be used on 100 similar jobs of that nature over time. Thus replacing that machine, or "upgrading" its controls could upset all those apple-carts, over time. This is why manufacturing production environments are highly resistant to change. One of the hobbs we used to cut gears was made in 1909, and it was only 1/2 way worn down. Most of them were from the 1960s and onward.

The computer, and the software that runs on it, is a tool. Thanks to logging, and the general ability to undo changes, the costs are far lower where software is concerned, but the same forces are at play. You have to adapt yourself to the found environment, and be careful when introducing changes, especially un-necessary changes.


👤 wildermuthn
Clojure.

Clojure is an objectively superior language, and it used to have a lot of potential. I used it for four years, and even built up a nice sized engineering team around it.

But its ecosystem was already tenuous when Rich Hickey curb stomped it with a rant about how the ecosystem didn’t matter — only Rich Hickey mattered.

At that point it became clear to me that the ecosystem would gradually vanish into non-significance, especially given the core team’s tendency to co-opt popular existing libraries into Clojure itself (thus stifling any further innovation).

Clojure is an objectively better language than Python and JavaScript, but both have an objectively better ecosystem of frameworks and libraries. It would be foolish to choose Clojure over them.