In the majority of companies it's simply not possible to operate on the bleeding edge the way HN articles would have you believe you should. Besides the obvious issues around the value of rewriting stable legacy systems on new platforms, there are also man power issues. You need tier 1 developers to live on the bleeding edge because any problem that comes up (and they will come up) largely requires you to solve it yourself sans the help of the greater internet. On a legacy system an average dev can generally Google any issues that arise because they are known problems.
When dealing with new tech it's a lot more likely to be the first person to run into some obscure use case no one has ever experienced before. And in that case you need devs who are not only capable but willing to invest in solving the problem. Sometimes that means, re-architect something in the stack and sometimes it may even require making a PR to the original project. That's a lot of investment that may make your devs happier but probably provides little concrete value to the business.
That said I'm still building on elixir so what do I know.
Really good points. IMO the web-surfing crowd's taste for news (as opposed to their capability when it comes to work) is deceiving. Their excitement for prospective high-leverage information creates a demand that biases community sites like HN and Reddit toward novelty, and the result is this massive FOMO loop: "Read it, remember to try it, forget to try it, aw damn a new thing already came out and it's better because X! Read it..." I love that the author of the article really speaks to this situation.
I have a relative who got really into this mindset. In fact he picked the "HN's Choice" software framework of the day for one of our co-creative projects a couple years ago. Mostly a fun project, but it could have gone somewhere, maybe. He got as far as setting it up so that we had some scaffolding, then basically he flamed out. I don't blame him at all; he'd never even used it before and expected himself to be able to just run with it. And this guy was a _master_ at a certain language starting with the letter P, but he was ashamed to use it. It made me so upset to see him feel all this pressure and then collapse.
Personally I feel that pressure myself sometimes but being aware of it helps a lot. As a hobby side project, I decided to go back and do some 1990s MS-DOS programming and experiencing this FOMO stuff was part of the motivation. I needed to be free to work deep instead of thinking broad, so to speak.
Good points here. Which is why HN is oriented toward startups with Tier 1 engineers. PG and his cofounders invented the web app, using a combination of old tech (lisp) and new (the internet).
There are plenty of other forums and sites to read about conventional tech. HN is where I find the bleeding edge. 90% of it is just fascinating. But the other 10% offer tantalizing possibilities for making something novel, which is to say: solving an unsolved problem.
“How to Become a Hacker” puts it plainly: no problem should have to be solved twice. Drudgery is evil. And by those axioms, a ‘Hacker’ is just uninterested in old solutions to old problems. We need to live in the future so that we can build the future. Although HN’s content has suffered over the last 5 years with the influx that accompanied a wider awareness of startups, it still is the best place I know of to dip your toes into the various futures we may one day encounter.
Having said that, lately I’ve found that Google Scholar is often more thought-provoking. If only there was a HN for Google Scholar.
Are we reading same HN? It seams majority of people advocate fairly sane proven choices for majority of projects e.g. start with the monolith default to PostgreSQL for dbms etc.
The concrete value doing such things add to our business is happy staff (which you mentioned), which means the best people don't leave, and stat excited and productive for the long term. Also, when hiring, because it helps us get the best people to join us in the first place.
It's not just about "bleeding edge", it's about giving dev teams the freedom to do that if they want to. Some do more than others, but the point is, if they get it wrong, things break and they get called at the weekend or whatever and they soon change track.
Fun story : i had to develop the same system for two different companies, one a startup with 3 employees (the founders) , the other a billion dollar business. Just a backend api & web interface, together with an iOS app displaying the content.
I could use shiny new tech for the startup (which at the time was python on app engine and its nosql datastore, with a backbone.js framework), whereas the other one forced me to use java and deploy the code on the big corp datacenter.
The start up code was built in two months, and maintained by an intern for two years with success. It basically cost nothing to run.
The big corp code was built in a year (note: i did know how to develop in java), people in charge couldn't manage to deploy it (i had to do it myself, despite just discovering their infra on the spot), and i had to maintain the code myself, because despite huge code guidelines and restrictions on the technologies allowed, nobody inside was assigned to maintaining the code.
So, yeah, there's definitely a danger to absolutely wanting to follow the HN hype. But don't feel good if your company relies on 8yo tech and process. It could be loosing a TON of money by not staying up-to-date with the state of the art.
The start-up code written in modern Java would similarly taken two months to develop and maintainable by an intern.
The problem in enterprise tech like you found is that one is forced to use certain, non-productive old frameworks filled with legacy, over-engineered bloat.
Modern Java micro-services in contrast are really fast to develop. Green field Java projects where one can make personal choices of lean technology and libraries are simply amazing. They also have terrific characteristics under load. The JVM performs well even with bloatware. When you trim out and make your JAR's lean and mean then its utterly amazing.
GAE went through a lot of changes after coming out, I remember the days spend on catching up its changes, so I wouldn't say it costs nothing to run 2 successive years. Even worse, after around 3 or 4 years they completely cancelled the node I am on notifying me to deal with my datae myself within limited amounte of time. Bleeding age my ass
This sounds like Java is not the big corp's problem. This is bound to happen if the people deploying the software don't know their way around their own infrastructure and around the software they are going to deploy. A big corp tends to centralize knowledge into departments. To get stuff done, departments have to communicate and coordinate. If there are shoddy processes for this in place, you get a big, fat, slow organization.
> there's definitely a danger to absolutely wanting to follow the HN hype. But don't feel good if your company relies on 8yo tech and process. It could be loosing a TON of money by not staying up-to-date with the state of the art.
I think the tech itself has little to do with it. Cash-strapped small startups are hungry for developers, and often ask them to do more than they can. Large companies often have many developers idling or working on fake toy projects that never see the light of day. There are massive inefficiencies in large institutions. Using old tech may be one of them, but it's a drop in the bucket compared to inefficiently utilizing the people you have.
The HN front page is similar to any community. For example, a car site's homepage will be listing the latest supercars, expensive turbos, rims, whatever... while most readers are driving a $30,000 Civic.
The best & brightest in tech are working with the best tools on the biggest problems, and that's what gets talked about, regardless of what the mass is doing.
> The best & brightest in tech are working with the best tools on the biggest problems
I don't think that's true—there is a subset of the best and brightest who work on greenfield projects very decoupled from existing customer bases, and they get to blog / present / post a lot about what they're doing. There are quite a few "best and brightest" people who are in large companies or slow-moving industries. They're often constrained to existing tooling, because moving to fancy new tooling is a huge risk and time sink for limited reward. They might be using cool personal tools—fancy editors and keyboards and window managers—but the stack they work on is generally "legacy".
And usually the problem of "How do we make this work slightly better for millions of end users" ends up being a bigger problem than "How do we do something really cool as a demo."
Good point about communities, but I don't think it's good to say "the best and brightest in tech" in this context. HN exists to gratify curiosity, and people are more curious about things they haven't seen before, or that are currently captivating their imagination. This emotion is not a reflection of the world around us—it's aspirational. But there's a risk if we start to feel inferior because we don't get to do that at our job or whatever, which is partly what the article is about.
Incidentally, it's the same curiosity that has the current article near the top of HN right now. It's not a point that has been articulated so often, or so recently, or so well, so it's fresh. Even if we already know it, it's a fresh reminder. (And also, of course, there's the catnip of the meta dimension.)
> The best & brightest in tech are working with the best tools on the biggest problems, and that's what gets talked about, regardless of what the mass is doing.
That doesn't have to mean new and shiny.
By way of analogy: the F-117 stealth fighter--the world's first operational stealth aircraft--was developed by the best and brightest (Lockheed Martin Skunk Works) and solved the biggest problem (visibility to radar). Aside from having a weird polyhedral shape and innovative radar-absorbing material, nothing about the plane was the "best", "latest", or "cutting-edge" at all. Much of it consisted of parts from other aircraft hacked together. If you actually do want to have the best cutting-edge technology all in one plane, you spend 25 years designing the damn thing--that's the F-35.
>The best & brightest in tech are working with the best tools on the biggest problems, and that's what gets talked about
We should be so lucky. Nobody knows who's the best, what the best tools are, or what the biggest problems are. We only know the ones that get written about.
Writers cover what's flashy, who's the best self-promoter, and what makes the most money.
Sites like HN and Reddit are aggregators in the literal sense. They take a large volume of data points and reduce it to a select few that get shown to most users. that aggregation function is "most interesting", not "most representative". Those are direct opposites of each other: interesting is almost by definition unusual.
I always find the subreddits that try to explicitly not target polar extremes the most fascinating from a sociology perspective. For example, this photo of a sink faucet is the most mildly interesting submission of the past year:
There is most likely some kind of division here where 5% here is working with the best tools on the biggest problems, 60% are working with old and non optimal tools on crud making money, 15% is working with the latest and coolest at a well funded startup and the rest is just following hypes making peanuts trying to fill their resume. Here best & brightest depends on your definition; if you are in it for the money and do not live in the valley, I think brightest might be java or c# if you want to make money.
Much of the ahead-of-the-curve, aspirational tech stack posts featured on HN are the blogging equivalent of Instagram-polished shots. On a personal blog they're equal parts self-expression and self-promotion; on a company blog they're equal parts deep dive and recruitment teaser. It's okay. Some readers will feel intrigue, some confusion, some envy. They'll wonder why they can't use those new tools at their work.
It's nice to recognize there exist developers who seem to stand apart from the vocal ones who make these posts, but they're not a single class. Some brag just as much, just in different circles. Some don't brag, but they do lots of good work. Some put out work that's not so good, and they may or may seek to represent their accomplishment regardless. The only factor they clearly share is their underrepresentation and their lack of attained popularity in talking about their work on social media.
As tempting as it may be, it's a big reach to conclude due to their underrepresentation that their tech stacks are conservative, or even dated; it's not a given that their work is solid and they're hard at work solving business problems given numerous constraints and office politics. Efforts to define this population by their rejection of shiny hype just perpetuates a kind of fictitious class divide between "fancy" developers and "plain" developers, when the real class divide is between management that is desperate for results, and IT workers that are desperate for empowered decision-making and resources. Businesses are under tremendous pressure, and silver bullets read about elsewhere carry great appeal. Transplanted organically by enthusiastic developers or by order of management, such solutions rarely work, because changing just a few inputs of a complex process won't deterministically give a better result. And mediocre results of a messy process make for a different genre of writing.
Maybe there's a class divide after all: between developers who are privileged enough to cook up all sorts of clever, custom solutions to challenging problems and can write about it, and those who spend their whole workday surviving the onslaught of nonsensical demands and deliver something mostly working in the end.
I have seen some Excel files from end users which grows into a whole application. The users wanted more functionalty and didn't get through all the management levels to reach someone from corporate IT and just start doing it by themselve with the tools they know and develop from Excel to Macros to VBA to VBA with SQL Database (because they have a standard process in the company to request a new SQL Database and the data was to big to be just in the Excel file directly). And then the company have this whole mess of "application" which is already business cricitcal because a lot of other users just use it as the fastet way to get their job done and the person who develop it is the only one which someone knows to handle it and maintain the application.
At some point in time the original person isn't available anymore and whole setup will have troubles because of upgrades of the basis (e.g. Excel) or just performance problems. They are even consulting companies specialize in optimizing or migrate to new Excel version for such kind of applications.
The corporate IT have to pick up the users early to help them to solve their current problem or help them to be more efficient with IT. If nobody helps they will develop their own solution which the knowledge/tools the have.
The funny thing is that from a purely technological point of view, Java (even the 5-year-old Java 8 and certainly recent versions) is far ahead of most other stuff hyped on HN (as well as less hyped stuff). Virtually no other platform comes close to that combination of state-of-the-art optimizing compilers, state-of-the-art GCs, and low-overhead in-production profiling/monitoring/management. And much of the cutting-edge development and technological breakthroughs on these matters continues to take place in Java (disclosure: I work on OpenJDK full-time). Just in the past few years we've seen the release of open-source GCs with less than 2ms worst-case pause times on terabytes of heap (ZGC and Shenandoah), a revolution in optimizing compilers (Graal/Truffle), and there's an upcoming release to streaming access to low-overhead deep profiling (JFR). So Java is not only the safe choice for serious server-side software; it's also the bleeding edge.
> And what Hacker News was teaching me was that the entire IT industry was working on brand-new Macbooks, using Go and Rust, Docker and CI, to build amazing products.
The problem is, some companies are using Go and Rust, K8s, Docker in brand new Macbooks. They are not the majority, but they are there. You may care about these things, or you may not. But if you do, working on a "normal" company is infuriating. I had to use CVS while using Git for my personal projects...
Now I am typing this on a Macbook (although not brand new) and deploying Go microservices in K8s.
The thing to keep in mind is that companies are schizophrenic. In another corner of the same company, there are people arguing against Lua for an embedded system because "no one uses it in production"...
I went from a software dev role at a B2B SaaS company to a consulting role about a year and a half ago. It has been eye opening to say the least.
One of my first projects was helping a Fortune 500 company run analytics on AWS with data sourced from their Db2 mainframe, which had been in production for multiple decades. Most clients are very uncomfortable with Linux, and Microsoft stack is definitely the default. IT usually keeps the corporate network and individual workstations under VERY strict control, so getting new tech onboarded or new processes implemented can be a multi-week territorial battle.
It truly is a different world at most places.
ETA: I forgot to mention that things at FAANG companies may not be as different as you think. I am currently working with a business team at one which is using a few tools based entirely on Excel and VBA.
It's a bit disturbing how much people in this industry are focused on tooling.
It's a biproduct IMO of working on boring problems or supporting morally ambiguous corps. That thing that you need to keep yourself busy and keep going in the rat race.
HN is basically Reddit for tech founders, so it tends to skew toward hype. And it's a small place, which makes for great echo chambers. Anything that makes it to the front page without being killed by admins, bots or users will probably be over-hyped.
Wrt over-using new tech: I've mostly seen this with hype directed at C-levels. Maybe one or two people on a team will pick up Rust or Go because they saw it on HN, but a year-plus slog will be initiated to implement a single Kubernetes platform that everyone must use, because a jagoff in a suit read a Wired article that said Kubernetes is the future of the internets. (Meanwhile, most of the devs don't use containers, pipelines are stood up in one-off Jenkins on shitty infra, the new "microservices" are really "distributed monoliths", and the security team is a guy nobody knows whose main occupation is writing drafts of best practices that nobody reads)
I think this will continue as long as we build tech by winging it, rather than doing case studies, analyzing solutions, and setting industry standards. And I'd argue another problem is cobbling together our own tools rather than paying for well-made ones. Because we're so interested in either getting things for free or writing them ourselves, really solid tools are rare.
All I know is that reading HN and responding to what I've learned has made my salary go up, up, up in the last 5 years. Partially by recognizing there are so many cool things out there that pay well. You can be defeatist and say "I'll never learn all of this,' or you can be clever and figure out the things that are worthwhile to learn.
I went from working in a boring insurance shop to one of the fastest growing tech companies in America. Had I not paid attention to HN, that wouldn't have happened.
I mean, Java 8, that's great! From an enterprise point of view it was released basically yesterday. I'm sure a large minority of systems still runs on Java 5 or 6.
There's very little reason not to upgrade to Java 8. Generally things just work. With Java 11 generally things just break, so it's completely another matter. I think that Java 8/11 will repeat Python 2/3 story.
Using java8 in 2019 is pretty normal. It's "only" 6 years old (released at the beginning of 2014), nothing like the cobol horror stories. The 6 years old java is not very different from what software you get from debian stable. The next lts java11 was released at the end of 2018 and does break some things so you need time to update. It was supported by oracle until Jan 2019, while other vendors have pledged support until 2023 and more.
And most importantly java8 is still a decent experience.
I don't know why, but Scott's comments in here came off pretty condescending.
If you're a developer on Twitter, it's really easy to fall into the trap of believing that the only developers that matter are front-end engineers. Just because helping develop the kernel, or integrating a new product on an already existing, proven stack that runs Angular for the front and Spring in the back, does not provide shiny things to look at doesn't make them less important, and it really comes off as if he's saying the "famous developers" should feel bad about that.
I don't know, maybe it just rubbed me the wrong way.
I think the stuff that surfaces on places like HN is mostly out of the ordinary.
I've worked in enterprise shops churning out staid Java code on weblogic servers in the past, if anything HN was kind of an escape hatch for me to see what else is going on in the tech world, even if sometimes it's driven by fads.
Most enterprise software engineering is either very complex due to over engineering, complex business rules or organisational structure or very mundane CRUD development. Not to say it isn't challenging because often it is, with the usual scaling, managing data models problems that need to meet the needs of the corporate hierarchy, but a lot of it is very bespoke.
The only commonality is maybe the frameworks and tooling (C#, Java, Spring etc) and maybe some industry level patterns that map to business processes (shopping carts, reporting systems, invoice processing etc) but the web has endless resources around these that take a while to dig through but usually you find something to solve your problem.
I would argue that Hacker News is actually not about the latest in cutting edge technology.
Rather, it derives more from the spirit of hacking, fundamentally making computers do something other people thought are not possible to do or never tried. It looks like the latest cutting edge tech but rather its a bunch of people just experimenting.
It does not show whats the norm, but what is possible.
That would be cool if that's how things worked, but it seems like nearly every post here (certainly most comments) aren't considering the shiny new tools in that context. Rather, most comments are in the vein of "this seems fun to play with, may have marginal benefit in x business scenario, how do I convince my bosses to let me spend resources implementing it?"
At work, we have some customers who want to use WebLogic and Websphere, and last time I checked those don't have versions that support anything beyond Java 8.
I still use Java 8 even on personal projects. I'm migrating those to Kotlin, so I'm at least not held back with regard to programming language features. I could upgrade those to Java 11 (or 12), just haven't prioritized taking the time to do that over other tasks, and the benefit would be minimal for these particular projects.
When using Java 8 language, I'm just happy to have lambdas and streams. Java 8 was the biggest improvement to Java language since 5 -- and I'd say it's a bigger leap that 5 was.
I’ve developed in environments where Java 8 was still the latest available version because of upgrade security issues.
I have a friend who, until very recently, was working on a system based on Java 6, which coincidentally was the latest version back when the both of us were in college.
I'm currently in a not-that-old project(2 years old) the front-end of which was built using Angular 1.x.
I have to admit I like this, because my biggest gripe with this framework was that the API changes from version to version were so intense, that you couldn't find a working tutorial for some stuff.
Now that it's not being updated that fast it's much easier.
I agree with a lot of what this article is saying, but here's a counterpoint: http://www.paulgraham.com/pypar.html (Although I think you'd have to call it something different from the python paradox nowadays).
I know personally I prefer working for companies that have these modern tech stacks, not because I'm a tech hipster or because I think these newer technologies are implicitly better than the old ones. Rather, I think it signals that the people there care about their profession and are interested enough to read blogs, keep up to date, etc., and those are the people I want to work with.
That's not a criticism of the people that want to work with what they know and go home and not think about tech at all. Just a personal preference.
Hehe... Cool, I'm a "dark matter developer" and I like it. Edit: Because of downvotes, I'll expand a bit for more interesting comment. I work in a pretty large corp. as a developer, and solve a lot of smaller day-to-day business problems - let's say it begins with Excel and ends with a web form. I also set up the server, database and anything else I need on Azure in co-operation with our (very big) IT provider. I find it quite interesting, but my workday ends at 16.
[+] [-] dcole2929|6 years ago|reply
When dealing with new tech it's a lot more likely to be the first person to run into some obscure use case no one has ever experienced before. And in that case you need devs who are not only capable but willing to invest in solving the problem. Sometimes that means, re-architect something in the stack and sometimes it may even require making a PR to the original project. That's a lot of investment that may make your devs happier but probably provides little concrete value to the business.
That said I'm still building on elixir so what do I know.
[+] [-] themodelplumber|6 years ago|reply
I have a relative who got really into this mindset. In fact he picked the "HN's Choice" software framework of the day for one of our co-creative projects a couple years ago. Mostly a fun project, but it could have gone somewhere, maybe. He got as far as setting it up so that we had some scaffolding, then basically he flamed out. I don't blame him at all; he'd never even used it before and expected himself to be able to just run with it. And this guy was a _master_ at a certain language starting with the letter P, but he was ashamed to use it. It made me so upset to see him feel all this pressure and then collapse.
Personally I feel that pressure myself sometimes but being aware of it helps a lot. As a hobby side project, I decided to go back and do some 1990s MS-DOS programming and experiencing this FOMO stuff was part of the motivation. I needed to be free to work deep instead of thinking broad, so to speak.
[+] [-] wildermuthn|6 years ago|reply
There are plenty of other forums and sites to read about conventional tech. HN is where I find the bleeding edge. 90% of it is just fascinating. But the other 10% offer tantalizing possibilities for making something novel, which is to say: solving an unsolved problem.
“How to Become a Hacker” puts it plainly: no problem should have to be solved twice. Drudgery is evil. And by those axioms, a ‘Hacker’ is just uninterested in old solutions to old problems. We need to live in the future so that we can build the future. Although HN’s content has suffered over the last 5 years with the influx that accompanied a wider awareness of startups, it still is the best place I know of to dip your toes into the various futures we may one day encounter.
Having said that, lately I’ve found that Google Scholar is often more thought-provoking. If only there was a HN for Google Scholar.
[+] [-] qaq|6 years ago|reply
[+] [-] martingxx|6 years ago|reply
The concrete value doing such things add to our business is happy staff (which you mentioned), which means the best people don't leave, and stat excited and productive for the long term. Also, when hiring, because it helps us get the best people to join us in the first place.
It's not just about "bleeding edge", it's about giving dev teams the freedom to do that if they want to. Some do more than others, but the point is, if they get it wrong, things break and they get called at the weekend or whatever and they soon change track.
[+] [-] jonhendry18|6 years ago|reply
(There may be some overlap)
[+] [-] unknown|6 years ago|reply
[deleted]
[+] [-] bsaul|6 years ago|reply
I could use shiny new tech for the startup (which at the time was python on app engine and its nosql datastore, with a backbone.js framework), whereas the other one forced me to use java and deploy the code on the big corp datacenter.
The start up code was built in two months, and maintained by an intern for two years with success. It basically cost nothing to run.
The big corp code was built in a year (note: i did know how to develop in java), people in charge couldn't manage to deploy it (i had to do it myself, despite just discovering their infra on the spot), and i had to maintain the code myself, because despite huge code guidelines and restrictions on the technologies allowed, nobody inside was assigned to maintaining the code.
So, yeah, there's definitely a danger to absolutely wanting to follow the HN hype. But don't feel good if your company relies on 8yo tech and process. It could be loosing a TON of money by not staying up-to-date with the state of the art.
[+] [-] oaiey|6 years ago|reply
You cannot stay up to date permanently, because that introduces risks all the time. Once you earn money, there are layers to protect the money stream.
You can loose tons of money by not staying modern, that is true. But you can loose everything when you ignore a risk. The trick is to find a balance.
And all of that is not considering investors and their idea how the money should be used.
[+] [-] lenkite|6 years ago|reply
The problem in enterprise tech like you found is that one is forced to use certain, non-productive old frameworks filled with legacy, over-engineered bloat.
Modern Java micro-services in contrast are really fast to develop. Green field Java projects where one can make personal choices of lean technology and libraries are simply amazing. They also have terrific characteristics under load. The JVM performs well even with bloatware. When you trim out and make your JAR's lean and mean then its utterly amazing.
[+] [-] snaky|6 years ago|reply
[+] [-] ewngzen|6 years ago|reply
[+] [-] samus|6 years ago|reply
[+] [-] scarface74|6 years ago|reply
[+] [-] speedplane|6 years ago|reply
I think the tech itself has little to do with it. Cash-strapped small startups are hungry for developers, and often ask them to do more than they can. Large companies often have many developers idling or working on fake toy projects that never see the light of day. There are massive inefficiencies in large institutions. Using old tech may be one of them, but it's a drop in the bucket compared to inefficiently utilizing the people you have.
[+] [-] mzkply|6 years ago|reply
The best & brightest in tech are working with the best tools on the biggest problems, and that's what gets talked about, regardless of what the mass is doing.
[+] [-] geofft|6 years ago|reply
I don't think that's true—there is a subset of the best and brightest who work on greenfield projects very decoupled from existing customer bases, and they get to blog / present / post a lot about what they're doing. There are quite a few "best and brightest" people who are in large companies or slow-moving industries. They're often constrained to existing tooling, because moving to fancy new tooling is a huge risk and time sink for limited reward. They might be using cool personal tools—fancy editors and keyboards and window managers—but the stack they work on is generally "legacy".
And usually the problem of "How do we make this work slightly better for millions of end users" ends up being a bigger problem than "How do we do something really cool as a demo."
[+] [-] dang|6 years ago|reply
Incidentally, it's the same curiosity that has the current article near the top of HN right now. It's not a point that has been articulated so often, or so recently, or so well, so it's fresh. Even if we already know it, it's a fresh reminder. (And also, of course, there's the catnip of the meta dimension.)
[+] [-] _ea1k|6 years ago|reply
[+] [-] philwelch|6 years ago|reply
That doesn't have to mean new and shiny.
By way of analogy: the F-117 stealth fighter--the world's first operational stealth aircraft--was developed by the best and brightest (Lockheed Martin Skunk Works) and solved the biggest problem (visibility to radar). Aside from having a weird polyhedral shape and innovative radar-absorbing material, nothing about the plane was the "best", "latest", or "cutting-edge" at all. Much of it consisted of parts from other aircraft hacked together. If you actually do want to have the best cutting-edge technology all in one plane, you spend 25 years designing the damn thing--that's the F-35.
[+] [-] forgottenpass|6 years ago|reply
We should be so lucky. Nobody knows who's the best, what the best tools are, or what the biggest problems are. We only know the ones that get written about.
Writers cover what's flashy, who's the best self-promoter, and what makes the most money.
[+] [-] munificent|6 years ago|reply
Sites like HN and Reddit are aggregators in the literal sense. They take a large volume of data points and reduce it to a select few that get shown to most users. that aggregation function is "most interesting", not "most representative". Those are direct opposites of each other: interesting is almost by definition unusual.
I always find the subreddits that try to explicitly not target polar extremes the most fascinating from a sociology perspective. For example, this photo of a sink faucet is the most mildly interesting submission of the past year:
https://www.reddit.com/r/mildlyinteresting/comments/9ykoe4/t...
Does that mean all other submissions were less interesting, or less mild?
[+] [-] tluyben2|6 years ago|reply
[+] [-] testplzignore|6 years ago|reply
[+] [-] NoInputSignal|6 years ago|reply
[+] [-] mycall|6 years ago|reply
[+] [-] pron|6 years ago|reply
[+] [-] sarcasmic|6 years ago|reply
It's nice to recognize there exist developers who seem to stand apart from the vocal ones who make these posts, but they're not a single class. Some brag just as much, just in different circles. Some don't brag, but they do lots of good work. Some put out work that's not so good, and they may or may seek to represent their accomplishment regardless. The only factor they clearly share is their underrepresentation and their lack of attained popularity in talking about their work on social media.
As tempting as it may be, it's a big reach to conclude due to their underrepresentation that their tech stacks are conservative, or even dated; it's not a given that their work is solid and they're hard at work solving business problems given numerous constraints and office politics. Efforts to define this population by their rejection of shiny hype just perpetuates a kind of fictitious class divide between "fancy" developers and "plain" developers, when the real class divide is between management that is desperate for results, and IT workers that are desperate for empowered decision-making and resources. Businesses are under tremendous pressure, and silver bullets read about elsewhere carry great appeal. Transplanted organically by enthusiastic developers or by order of management, such solutions rarely work, because changing just a few inputs of a complex process won't deterministically give a better result. And mediocre results of a messy process make for a different genre of writing.
Maybe there's a class divide after all: between developers who are privileged enough to cook up all sorts of clever, custom solutions to challenging problems and can write about it, and those who spend their whole workday surviving the onslaught of nonsensical demands and deliver something mostly working in the end.
[+] [-] jum4|6 years ago|reply
At some point in time the original person isn't available anymore and whole setup will have troubles because of upgrades of the basis (e.g. Excel) or just performance problems. They are even consulting companies specialize in optimizing or migrate to new Excel version for such kind of applications.
The corporate IT have to pick up the users early to help them to solve their current problem or help them to be more efficient with IT. If nobody helps they will develop their own solution which the knowledge/tools the have.
[+] [-] pron|6 years ago|reply
[+] [-] outworlder|6 years ago|reply
The problem is, some companies are using Go and Rust, K8s, Docker in brand new Macbooks. They are not the majority, but they are there. You may care about these things, or you may not. But if you do, working on a "normal" company is infuriating. I had to use CVS while using Git for my personal projects...
Now I am typing this on a Macbook (although not brand new) and deploying Go microservices in K8s.
The thing to keep in mind is that companies are schizophrenic. In another corner of the same company, there are people arguing against Lua for an embedded system because "no one uses it in production"...
So go find the corner that makes you happy.
[+] [-] cbdumas|6 years ago|reply
One of my first projects was helping a Fortune 500 company run analytics on AWS with data sourced from their Db2 mainframe, which had been in production for multiple decades. Most clients are very uncomfortable with Linux, and Microsoft stack is definitely the default. IT usually keeps the corporate network and individual workstations under VERY strict control, so getting new tech onboarded or new processes implemented can be a multi-week territorial battle.
It truly is a different world at most places.
ETA: I forgot to mention that things at FAANG companies may not be as different as you think. I am currently working with a business team at one which is using a few tools based entirely on Excel and VBA.
[+] [-] inertiatic|6 years ago|reply
It's a biproduct IMO of working on boring problems or supporting morally ambiguous corps. That thing that you need to keep yourself busy and keep going in the rat race.
[+] [-] peterwwillis|6 years ago|reply
Wrt over-using new tech: I've mostly seen this with hype directed at C-levels. Maybe one or two people on a team will pick up Rust or Go because they saw it on HN, but a year-plus slog will be initiated to implement a single Kubernetes platform that everyone must use, because a jagoff in a suit read a Wired article that said Kubernetes is the future of the internets. (Meanwhile, most of the devs don't use containers, pipelines are stood up in one-off Jenkins on shitty infra, the new "microservices" are really "distributed monoliths", and the security team is a guy nobody knows whose main occupation is writing drafts of best practices that nobody reads)
I think this will continue as long as we build tech by winging it, rather than doing case studies, analyzing solutions, and setting industry standards. And I'd argue another problem is cobbling together our own tools rather than paying for well-made ones. Because we're so interested in either getting things for free or writing them ourselves, really solid tools are rare.
[+] [-] jressey|6 years ago|reply
I went from working in a boring insurance shop to one of the fastest growing tech companies in America. Had I not paid attention to HN, that wouldn't have happened.
[+] [-] Sharlin|6 years ago|reply
[+] [-] vbezhenar|6 years ago|reply
[+] [-] Zardoz84|6 years ago|reply
[+] [-] jonenst|6 years ago|reply
And most importantly java8 is still a decent experience.
[+] [-] ar_lan|6 years ago|reply
If you're a developer on Twitter, it's really easy to fall into the trap of believing that the only developers that matter are front-end engineers. Just because helping develop the kernel, or integrating a new product on an already existing, proven stack that runs Angular for the front and Spring in the back, does not provide shiny things to look at doesn't make them less important, and it really comes off as if he's saying the "famous developers" should feel bad about that.
I don't know, maybe it just rubbed me the wrong way.
[+] [-] djhworld|6 years ago|reply
I've worked in enterprise shops churning out staid Java code on weblogic servers in the past, if anything HN was kind of an escape hatch for me to see what else is going on in the tech world, even if sometimes it's driven by fads.
Most enterprise software engineering is either very complex due to over engineering, complex business rules or organisational structure or very mundane CRUD development. Not to say it isn't challenging because often it is, with the usual scaling, managing data models problems that need to meet the needs of the corporate hierarchy, but a lot of it is very bespoke.
The only commonality is maybe the frameworks and tooling (C#, Java, Spring etc) and maybe some industry level patterns that map to business processes (shopping carts, reporting systems, invoice processing etc) but the web has endless resources around these that take a while to dig through but usually you find something to solve your problem.
[+] [-] z3phyr|6 years ago|reply
Rather, it derives more from the spirit of hacking, fundamentally making computers do something other people thought are not possible to do or never tried. It looks like the latest cutting edge tech but rather its a bunch of people just experimenting.
It does not show whats the norm, but what is possible.
[+] [-] iamatworknow|6 years ago|reply
[+] [-] ausbah|6 years ago|reply
[+] [-] nileshk|6 years ago|reply
I still use Java 8 even on personal projects. I'm migrating those to Kotlin, so I'm at least not held back with regard to programming language features. I could upgrade those to Java 11 (or 12), just haven't prioritized taking the time to do that over other tasks, and the benefit would be minimal for these particular projects.
When using Java 8 language, I'm just happy to have lambdas and streams. Java 8 was the biggest improvement to Java language since 5 -- and I'd say it's a bigger leap that 5 was.
[+] [-] Tade0|6 years ago|reply
I have a friend who, until very recently, was working on a system based on Java 6, which coincidentally was the latest version back when the both of us were in college.
I'm currently in a not-that-old project(2 years old) the front-end of which was built using Angular 1.x.
I have to admit I like this, because my biggest gripe with this framework was that the API changes from version to version were so intense, that you couldn't find a working tutorial for some stuff.
Now that it's not being updated that fast it's much easier.
[+] [-] overgard|6 years ago|reply
I know personally I prefer working for companies that have these modern tech stacks, not because I'm a tech hipster or because I think these newer technologies are implicitly better than the old ones. Rather, I think it signals that the people there care about their profession and are interested enough to read blogs, keep up to date, etc., and those are the people I want to work with.
That's not a criticism of the people that want to work with what they know and go home and not think about tech at all. Just a personal preference.
[+] [-] exlurker|6 years ago|reply