Live data from Hacker News

The silent majority in software

vadimkravcenko.com

241–250 of 371 posts

Re: The silent majority in software

#241

made me think of a thread here recently, can't remember which one exactly, that had the general tone of "who even develops on Windows?". People in the .Net ecosystem at least it seems like are very underrepresented here given how large of a platform that is.

There are "arcane" development communities that are far less engaged in "social programming". The Basic Community is quite large as well and I think I have never met a developer on the net. .net is even larger but increasingly the community seems to withdraw as well. As someone who formerly developed on that platform I wonder where they exchange themselves nowadays. I know quite a few companies that develop on .net,…

Stackoverflow (and its offshoots) is pretty .NET heavy, perhaps unsurprisingly given its heritage.

Re: The silent majority in software

#242

Earlier quoted context omitted.

There are a few thousand compiler jobs in the world. Maybe in the tens of thousands, i'm not sure. For everyone of them there are thousands (again I don't know how to measure, could be in the ten thousands) of programmers using the compiler.

Feels pretty lined up to the amount of programmers who are skilled in writing compilers.

If I got a job in writing compilers I could becomes skilled at it. However I have a job in a different area. I doubt few as as skilled at writing the type of code I write as me, but the world only needs a few handfuls of people who write the type in the niche I'm writing code in. The world needs lots of websites, and so the world needs lots of people skilled in writing them.

Re: The silent majority in software

#243

Earlier quoted context omitted.

I’ve been programming ~15 years, and from my perspective, those frameworks helped us move on from a world riddled with XSS, “better than fail whale”-level reliability expectations, and software ossification (Gmail, Facebook, etc). Today, the frameworks bite me in the ass about once a week, but I think it’s worth it to get safe React with strict TypeScript, and plenty besides. Caveat: All infrastructure requires a lot…

??? XSS has long been a solved problem. Security is definitely not an argument for using front end JS frameworks as they add attack vectors and complication to the stack.

Is your solution something like “always remember to sanitize user-generated content”?

Re: The silent majority in software

#244

Earlier quoted context omitted.

> horizontally scaling I have never seen services (of any size) succeed in a place that wasn't using them to do vertical partitioning of a system. I imagine you are probably talking about horizontally scaling each of those vertical partitions, but the phrasing is really confusing.

Yeah, I'm probably just explaining poorly. That's what I was thinking: horizontally scaling subsets of your verticals that need it (they don't usually all need to scale at the same rate)

Oh, it's not you explaining it poorly. That's just the usual idiom, that anybody that already knows the meaning will instantly understand.

My criticism is more general, that the usual idiom is confusing and misleading for people that don't know it already. Maybe it shouldn't be usual.

Re: The silent majority in software

#245

Earlier quoted context omitted.

As someone who really appreciates strong typing, I will die on this hill - I hate Typescript. Introducing a transpiled typing system on top of a dynamically typed language is a recipe for all sorts of insane complexity, which is what I experience whenever I try to use TS. If you consider all the time and effort it took to introduce types for every NPM project out there, all the development of the language itself, the…

Did a personal web project and chose TypeScript to see what the rage was about. I spent a ridiculous amount of time trying to design types. At some points I couldn't figure it out, or I ran into some limitation of the language to express what I need. So my code has a bunch of exclamation points everywhere to assert that a null ain't coming. It feels dirty. Just too hard to use for me.

It's just so awesome that a thread on "Silent Majority" has the typical loud protests against JavaScript, against the web, against React, against TypeScript. The irony is loud to me.

It's not even that there's only happy heads-down programmers off HN who support these mainstream techs. Even in the active userbase here, I'd wager there are tons of people who have an adequate or better experience with typescript or react, and may disagree with the dislikers. But we're not as invested in our liking, don't feel like it's worth engaging in, and none of the banter changes what is or where things are going. These are the de-jure tools that the majority definitely uses widely, which at least the first anti- comment, on front-end frameworks, acknowledged. Whatever the targets-of-the-day happen to be, they will crop up repeatedly, which further dissuades from trying to come back with a positive or even neutral opinion that might represent that silent majority's take. And the silent majority must constantly face Brandolini's Law; what it's doing may be working & have good reason, but it's hard to keep supporting & reasoning through with a pact invested in disbelieving.

I liked the top post talking about disagreeing with the direction. That can be contributive, be value based. So often though the protests amount to gatekeeping "you've done too much." I evaluate where these comments would fall on Steve Yeggie's Software Political axis, from Notes from the Mystery Magic Bus[1], and almost universally the voices are conservative; they object rather than suggest, they refuse rather than support. I'd like to see more progressive protests, that can surface good, that acknowledge value & need but reflow or redirect the energy elsewhere, rather than being unhappy with what is.

[1] https://gist.github.com/cornchz/3313150

Re: The silent majority in software

#246

Earlier quoted context omitted.

At the end of an incredibly complex and long modern road, I end up looking at text and images in any application, but I wouldn't wish upon the developers of, say, IntelliJ that they render the user interface by making their own JNI calls directly to "draw a rectangle" APIs...

I agree that would be ridiculous, but I'm talking about people using some huge front end library, react, k8s, etc, to make a form. With a logo. Obviously do whatever you want, but it's a lot.

A form with a logo... that looks consistent across most browsers, scales automatically between mobile and desktop user-agents, and already has all its sticky a11y metadata sorted properly, if they've picked a good framework. The gap between modern expectations and the bare-bones AJAX page is pretty wide these days.

It would definitely be better if there were a way to side-load those libraries as a standardized strata underneath the main browser content to save resources. So if someone uses React to do their form, yes it seems costly but the cost only needs to be paid once, and then the relevant framework is cached more statically than the transient web cache (and with an alternative to domain-based cache, such as checksums or signed binaries, to determine if two domains are using the same framework and save the download cost for all sites you visit using that framework).

... but only better if the tricky engineering questions around caching were sorted. There's plenty of risk that you'd end up with gigabytes of cached frameworks, because the current solution means I don't have to care if one site is using React 12 and another is using React 12.1.

Re: The silent majority in software

#247
post #218

>While browsing HackerNews, I sometimes get the feeling that every developer out there is working for FAANG Bubbles on HN; Entry level Web Developers are getting $200K per year working in FAANG or Big Tech. Non-FANNG are getting $150K anyway. Ruby may be dead, but PHP is even more dead. Java may rule the enterprise, but you should not mention Java. No one uses Oracle or MySQL, why would you want that? Postgres is the…

These are still non controversial. Controversial bubbles on HN are:

* Everything should be free and open source. Just because small portion of the HN can donate to their favorite projects, everyone should run on donations. Ads are forbidden on the internet. No internet business should be a profitable company.

* Tiring and useless interview process designed by FAANG etc is no way a farce and a totally justified practice (some version of Stockholm syndrome there)

* Private companies should not interfere in the politics/internal matter of another country. (This view quickly changes when they see the negative effect of same companies in their own country)

* YC is the best and the most exclusive startup accelerator/incubator in the world. If you got accepted in YC, you have won in life.

Re: The silent majority in software

#248
post #204

Earlier quoted context omitted.

> only take Java for a B2B onprem app What's your reasoning? Java has one of the best ecosystems with lots of libraries and frameworks, especially for high-perf distributed applications (see Hadoop, Kafka, Ignite, Cassandra, etc). And there are plenty of developers to hire. So it is a good choice for most backends. As a developer I prefer C# (IMO the best general purpose language these days), but from the business pe…

As a rule, Java is not very productive. Yes, it has a lot of good libraries, and bad frameworks. The focus on code generation, distributed systems, and high complexity environments are all on the wrong side of starting something up. (One of those may be right after you are big, but then, Java isn't the best choice for any of it.) The one large selling point of Java, that is to help you enforce a minimum level of qual…

> As a rule, Java is not very productive.

I don't see how this is true.

Java has a great ecosystem all around for backend applications, which happens to be as focused as it can be, i.e. there are one or two big, high quality frameworks that everyone uses, and you're good to go if you stick to either of them. Also, every single cloud vendor supports Java as a first class citizen, so you get very low friction at CI and any step beyond it.

> The one large selling point of Java, that is to help you enforce a minimum level of quality on code that lots of people change, is completely meaningless for a small team starting up.

I haven't read this before, I must say it sounds a bit myopic.

Let's say it is true. Then what's the point of starting with any other language? Either you are a hobbyist, or you need to plan for scaling up your venture; and given that your team is small in the very beginning, where are you going to get the resources to give your product a makeover or rewrite it in a different language?

Re: The silent majority in software

#249
post #77
post #63

Earlier quoted context omitted.

I am regularly up at night in a cold sweat worrying about how if I suddenly needed to find a new job I’d have to learn some sort of front end JavaScript framework.

Could be worse. I am regularly up at night in a cold sweat worrying about how if I suddenly find a technically fulfilling job, realizing I forgot everything about computers after a decade on working on meaningless front end JavaScript framework.

Even worse when backend is javascript framework too. Welcome to isomorphic thingy (don't even know what that really means). SSR today only means nodejs server. No, not ruby, go, rust, python, php, elixir, it's javascript. Island architecture, partial hydration, and the latest backend js framework is "Zero JavaScript Runtime" wow. One language to rule them all pipe dream is not dead yet.

Re: The silent majority in software

#250

Earlier quoted context omitted.

As someone who really appreciates strong typing, I will die on this hill - I hate Typescript. Introducing a transpiled typing system on top of a dynamically typed language is a recipe for all sorts of insane complexity, which is what I experience whenever I try to use TS. If you consider all the time and effort it took to introduce types for every NPM project out there, all the development of the language itself, the…

Did a personal web project and chose TypeScript to see what the rage was about. I spent a ridiculous amount of time trying to design types. At some points I couldn't figure it out, or I ran into some limitation of the language to express what I need. So my code has a bunch of exclamation points everywhere to assert that a null ain't coming. It feels dirty. Just too hard to use for me.

Threads like these are why I don't pay attention to HN anymore.
Post reply on HN