I've seen this article before. A lot of people that are active on the internet like to assume that everyone is using the latest tech and can just use whatever tech they like. This is rarely the case. I've spent the majority of my career tending to old code bases.<p>There is a lot of <i>legacy</i> code that is still working fine. There is a lot of old C# code bases that are working exactly as intended in now unsupported .NET versions.<p>One of the constant annoyances of some of the newer tech stacks is that developers constantly break the API meaning that when you upgrade the framework version you have to fix code and probably tests as well. It is absolutely infuriating when an API is changed when the old API was working perfectly well.
I keep up with modern tech. I regularly learn new languages and frameworks. I lead agile dev teams. I work as a consultant modernizing devops and moving to cloud deployments. I write real software for real businesses doing real things.<p>I don't blog. I don't go to conferences. I don't go to hackathons. I don't have any meaningful presence on GitHub. Hacker News is about the only place I have even the slightest footprint, and most of what I talk about here has nothing to do with my career as a software engineer.<p>So what? The implication in this article is that if you're not out there trying to be visible, you must be some crusty old COBOL developer locked in the basement.<p>In my experience, the people who are the loudest are rarely the people who are doing the most. If you spend all your time trying to prove to strangers that you're hip to the latest trends, just how much time are you spending doing anything of actual value? Not everyone who has a big public presence is actually doing anything. Most of the discussions online and presentations at conferences are nothing new. Most of it is self-promotion. When I see people get all excited about tech, it's usually because it's new to them, not because it's a new idea.
The big mess seems to be in the CSS/Javascript space, where fad frameworks come and go rapidly. There's more change than improvement. Visually, most web pages haven't changed much, and web development has become much harder.<p>But we can now scroll forever. Slowly and jerkily.<p>On the language front, we really should have had a replacement for C/C++ by now. We don't. D never got traction. Go is mostly for web back ends, where it has really solid libraries heavily used within Google. Rust looked promising but was taken over by the "functional" crowd and is doomed to Haskell obscurity. C++ itself is now trying to fake ownership tracking at run time, with mediocre results. The abstractions always leak because too many old things need C pointers. Java was supposed to replace C/C++ but became tangled in its own libraries and ended up replacing COBOL.<p>There's been some progress. There's now grudging agreement that the way to go is type declarations with some type inference. Having to type everything is too much of a pain. Not typing anything makes for unreadable programs. Function definitions really do need type info. So C++ added "auto" and Python added "advisory typing", moving both towards the center. Which is about where Go started.
> we need to find a balance between those of us online yelling and tweeting and pushing towards the Next Big Thing and those that are unseen and patient and focused on the business problem at hand.<p>What makes him think we don't have a balance already? Most devs are the quiet ones who just do their job and then go home. Aside from participation on HN, I consider myself to be be one of those quiet ones. I work on business problems with whatever tools are appropriate, which includes both modern stacks and legacy codebases.<p>I'm not sure what other balance he is seeking.
I feel like the article misses out on two crucial truths:<p>1. Most of the new tools are pure nightmare to maintain. RoR has breaking API changes often enough that you need multiple people to maintain a large codebase, whereas in PHP you'd only need one person because things don't magically break that often. And MongoDB is so convoluted and complicated that almost nobody can deploy it correctly. And then there's "new" container techniques, which are basically just an admission that you have no f*ing clue on how to make your new tool set secure. In most cases, the loud new technology is just over-funded hipster stuff, but not ready for the real world yet.<p>2. Posting things online (e.g. Source Code) will not only attract the attention of peers. You might also get flooded with rather demanding emails by technically incompetent people who complain that your free source code release didn't solve their problem.<p>Also, I wonder if the author is aware of IRCs ongoing popularity for private development discussion rooms. It seems many people thought Slack was new, but some of us programmers have been hanging out like that since 95.
I wonder if Scott Hanselman ever had to maintain large system while having limited resources to do so. Churn is bad for most, apart from companies who must sell new things to keep on going, like software companies. Moving fast and breaking things is great when you don't have to consider churn cost. Calling the anti-churn crowd "dark matter developers" seems at least a bit derogatory.
That's a nice way to describe something, but it doesn't have to be a problem. Some devs around me (partially me too) just doesn't want to tweet or write blogs about tech, yet we could work in bleeding edge tech or writing cobol at the same time.<p>Some people maybe don't need help, guidance, or something like that, maybe just maybe we like the things as they are now.<p>Maybe we'll start doing all of social stuff some day.<p>It's just okay.
The fact that you go mostly "unseen" online seems completely orthogonal to whether you love programming and keep up with the latest technologies, etc. I would consider myself "dark matter" in the respect that no one knows who I am and I'm not constantly blogging or tweeting about stuff. That doesn't mean I'm not interested in, passionate about and highly competent in technology. I find it kind of insulting actually that someone would assume that just because I'm not loud about it means anything else about how much I care about it or how good at it I am. I'm not totally surprised by this though; for most people, if you're not jumping up and down telling them about how awesome you are they have no way of knowing. I see this a lot in my current job; all the developers know which of their colleagues are kick-ass at their jobs, but you have to sell yourself and your accomplishments to everyone else.<p>TL;DR, I know this is an old article, but it seems there's still some perception that us dark matter folks are all just passionless drones in it for the paycheck, and while there's surely some percentage of us for which that's true, I think it's completely wrong-headed to assume that's how we all are.
Back in the usenet days it was said that 99% of users were readers and 1% were writers. The same is true for the web.<p>That is, I think "dark matter" developers read blogs but they just don't write them.<p>As for conferences, these are widely seen as a scam. I remember sitting through a presentation at the end of a conference by the platinum sponsor where I sat next to some tired defense contractors from the East Coast and then drinking in the hotel bar later with the director of marketing for the sponsor who thought that he hadn't gotten what he paid for.
Scott talks about how devs don't do anything to be seen yet if you look at his twitter stream it's mostly just him tweeting his own posts and retweeting other "famous" developers. He, and the majority or other very visible people in the community, gatekeep the blogosphere by failing to help anyone else break in (not necessarily consciously of course; they may just never see the less famous devs posts).<p>Scott could be a much bigger part of the solution than he chooses to be.
I keep a client that has not much to do with my current line of work, just to keep in touch with these guys and this environment. I feel it is important to solve real problem and real user's problems from time to time, I learn a lot from them. On top of that, I am a client of them and we live in the same city, so there is mutual interest things go smooth.<p>And yes, they learn a lot from me. Sprinkling some new tools like git and Docker, encouraging people migrating their systems off PHP4, etc. can't hurt.
> The Dark Matter Developer will never read this blog post because they are getting work done using tech from ten years ago and that's totally OK<p>I thought I was a “Dark Matter Dev” until this. But then it’s weekend so maybe I still am.
"Dark Matter Developer", what label is that for a developer doing his thing without going to conferences, doing blogs, etc..? This should not be on HN imao.
Just don't actually go and look, if you're not prepared for the fantasy to be broken that such persons are super productive and doing quality work.<p>There's enough dysfunction to go around that all types of programmer can be uniquely afflicted, and usually are.