skysight-inc/HackerNews huggingface dataset:
> Go should have died?! didn't Go come out like yesterday? This is why I am hesitant to invest time in new hot thing languages.

Actually it came out about 10 years ago, in one way or another: https://go.dev/doc/devel/release So it largely depends on what timescales you're comfortable with - some people switch stacks or learn new tech every 3-5 years, for others this cycle is slower or faster, also depending on the stuff you're working with.

I'd say that web dev moves quickly, embedded moves more slowly, the rest is somewhere in the middle for the most part, maybe AI/ML and certain DevOps aspects rival web dev speeds of innovation/churn.

> I swear in 20 years everything important will still be written in C, PHP, Perl, C#, Java, Python (how could I forget JavaScript).

Perhaps, i think languages like Rust will be pretty widespread, both in the Linux kernel, as well as many tools and whatnot, albeit in a different and perhaps more conservative fashion than currently (the "rewrite everything in Rust" craze). In contrast, most of the modern web based SaaS solutions will be dead, most certainly the majority of Kubernetes tooling out there.

Go might just be boring and useful enough to stick around and join the dreadful bunch of languages used in maintaining legacy code. It's funny, though, because while the languages themselves are more usable than they were 10 years ago, people's sentiments (including mine) are largely influenced by how many bad codebases they have to maintain: https://earthly.dev/blog/brown-green-language/

On an unrelated note, it would be pretty cool to have extremely slowly moving and stable languages, projects and tooling out there. To see maybe 3 or 4 releases in my entire lifetime and to have the next generation take over the burden. Then again, seeing how COBOL and FORTRAN are now, perhaps that sense of grandeur isn't worth the effort and old projects should just die.
Their service to institutions might have been good at one point, but their service to consumers was horrendous. I bought a PC from them at around their height and about 1 month later the hard disk died. It took a few customer service calls (each requiring a wait of 45 minutes to an hour to talk to someone) before they agreed the hard disk was bad. They send out an empty hard disk and I had to take the time to re-install all the software from a huge number of floppies. I also had to take time to package up the old drive, go to UPS and pay the postage to ship the broken drive back to them. (I remember they preemptively billed my credit card for the hard disk and later credited me. I guess they assumed their customers were scum bags like themselves.) I realized that when taking my time into account, I would have been much better off just paying for the hard drive myself and ignoring the warranty. Companies like they deservedly belong in the ash heap of history.
1,923,000L per day, right? So each person would need just short of 2,000 m³ of air.
I'm glad that you have learned of the brief golden age of online communication. I had friends on 6 different services and used Trillian, Pidgin, etc to talk to them all. Somehow we have to escape these walled gardens and get back to that borderless world.

At work (operations for a space mission), we use an XMPP-based chat system for tactical communications along with several other systems, but Slack was introduced and more and more communcations are being handled over Slack. I'm advocating for replacing several systems with Jitsi, which is XMPP-based, because it allows us better control and customizability. It's an uphill battle.
I have a 'personal' directory in my dotfiles repo, and within it are my .zshrc and other files. Then it's just:

stow -v --defer='.+' personal

and they're all put in place. The defer argument simply prevents any overwriting.

~/dotfiles % ls -a personal/
.bash_aliases .bashrc .gitconfig
[...]

EDIT: Yeah, it won't rename files when stowing them. It's never been an issue for me, FWIW.
> there wasn't a concept of clean code but to write code as simply as possible

Sounds good "on paper" - in fact, is tautologically true - but it's hard to find two people who agree on the definition of "simple". You say "not having thousands of classes with indirection", and I've definitely seen that over-design of class hierarchies create an untouchable mess, but I've seen designs in the other direction (one giant main routine with duplicated code instead of reusing code) that were defended as "simple".
1,923m^3, not 1,923L
How can XMPP have failed when I and many others use it daily? When many things like Snikket and Zoom and WhatsApp are built on it?
Modern browsers should really be treated like operating systems because they have so many capabilities and are so complex. I try to run all of mine in separate virtual machines on Debian Linux using virt-manager. Additionally, they're sandboxed with firejail (looking at moving to bubblewrap) and apparmor. I'm less concerned with my IP address and more with a website being able to access random files on my computer.
Two-letter icons also don’t help with alternative layouts. Flags are useful for e.g. US English vs. UK English, but are bad when a country has more than one official/widely-used language (e.g. Canada) or when multiple countries share the same keyboard language and layout.
Those are 20% above market rate in France, probably 40% above when you don’t have an engineer’s degree.

The blanket “YOU PAY THEM TOO LITTLE” and its brother “EVEN AT THE BEGINNING OF MY CAREER I NEVER STUDY AT HOME AND I JUST DO WHAT MY EMPLOYER TELLS ME ON A WRITTEN SHEET OF PAPER WITH DEFINITIVE SIGN OFF” mentality needs to go.

You choose:

- Want to work in a factory? €1200 net per month,

- Job that requires that you come with a skillset? €2400 pm.

- Job where you build an unknown product with lots of leeway, innovation, networking and entrepreneurship? 5400€ to 20k€ per month. 20k€ is President Macron’s salary, so it’s not so low.

I’ll give my 200k€ dividends to whoever accepts to perform the odd tasks like maintain the jQuery app AND clean the bathrooms AND notice when they need cleaning AND launch a new product when it needs launching AND close one down and find suitable ways out for customers.

“How do you expect them to work for you if you make them clean the toilets!” well that’s why I’m getting the bonus. To anyone willing to bend for the toilets when needed, there is a job available here.
I was all aboard the DuckDuckGo train until a few weeks ago when they went nuts[0] and went to Google. Not that Google is any better, but if I'm going to get censorship either way I might as well get a decent browsing experience. DuckDuckGo at this point provides 0 value.

I haven't had the time to look for something else, I feel like I'll move away from Google in the next few weeks. It's not as easy on iPhones however as Safari forces you into using like ~5 hardcoded search engines and I can't find something to replace Safari with that doesn't suck.

[0] https://news.ycombinator.com/item?id=30627892
Insert bwrap in lieu of docker and its the same thing. What the hell is bwrap?
I remember interviewing with them about 2-3 years ago. Everyone seemed very enthused, but no one was able to clearly articulate for me what it was that made their product/offerings different.

Glad I dodged that bullet
> definitely considerably worse than wasm-bindgen’s,

Thank you, wasm-bindgen is a new term for me (wasm as a whole is new to me since about 2 weeks). i'll add that to the list of tools to check out, as we're actively exploring different options and methodologies at this point for wasm/sqlite.
Flags don't even have their own codepoints. (Swedish flag emoji was stripped by HN when it was verbatim in the below)

import unicodedata
[unicodedata.name(c) for c in "\U0001f1f8\U0001f1ea"]
['REGIONAL INDICATOR SYMBOL LETTER S', 'REGIONAL INDICATOR SYMBOL LETTER E']
Brew doesn't give you a stable or repeatable install. You can't pin tools to specific versions, they'll get updated whenever you update brew. This is by design and kinda the core ethos of brew. The k8s tooling is generally all meant to have you using the bleeding edge stuff--every tool readme usually says get the latest build from a github release package, brew just effectively does that automatically.
The problem with hard and soft skills
I’ve been going back and forth every few years between Fusion and || Desktop. I’m currently on a || swing. I guess I’ll be staying here for a while.
Please don't interview potential hires by having them do work while you look over their shoulder.
It's mainly because XMPP is overcomplicated, but also they're for different use cases.

XMPP:

- is designed for chatting and P2P and VoIP over persistent HTTP connections
- requires everyone to be online
- servers have to implement 50 different specs
- works at the frontend and backend

SMTP:

- is designed to send one large message in bulk over a regular short-lived TCP session
- is a store-and-forward messaging system, highly resilient to slow or inconsistent networks and server issues
- is simple and the ecosystem is layered, so the core server doesn't have to implement a dozen specs
- is practically backend-only

The difference between "Can you hear me now?", and putting a letter in the mail.
> A Bolt spokesperson says that only a "single digit" number of laid-off employees took out the loans, despite more than 200 people losing their jobs, and that the aggregate amount was below $200,000. Moreover, she says the company plans to "work with" those individuals.

If the amount was less than $200k, which is about the salary for a single employee these days, Bolt should just have annulled them entirely. The PR alone would be worth more than the $200k.
> Now if you want to change getFoo to return a Foo2, and doSomethingWithFoo to take a Foo2, you have to go change every place where these two functions are called and update the explicitly declared variable type.

This is wrong, and mixes up what side effects actually exist, and what questions you can ask the compiler.

getFoo is going to construct an object with some type that type must be assignable to its return type, and then that return type must be assignable to your declared variable type. declaring the type of your variable isn't just copying the type from the return signature, its a query to compiler about assignability (which is a query about ordering on the subclass relation).

You could imagine changing the type of the object, but not the return type of the function, or the return type of the function, but not the type declaration of the variable.

if you declared your variable to have a type and then try to assign that variable to the parameter (as the argument) of doSomething, you are again asking the compiler is my variable assignable to the parameter of this method.

if you are just "composing" 2 functions, then sure you might think of type declarations as boilerplate.

but if you think of variable assignments as queries to the compiler then you gain something by declaring types.

This doesn't even get into the ideas of variance and contravariance of the subclass relation over function types as well.
> a tree of if's becomes impenetrable

Even in that case, a tree of if's isn't that bad (it's not great), but far worse is when you have the same set of if statements copied and pasted around dozens of places. Because you will forget to update one of them at some point.
why are Google and Bing the only two major search engines surviving?

Massively high technical barrier to entry, and in Google's case, bullying the little guy with impunity.
> it is that no-one from a European country would ever talk about “Europe” like it was a uniform thing when

As an immigrant to the US who's been to a dozen or so states, I'd add it's also inaccurate to talk about the US as a uniform thing or group of people
I've taken to saying that instead there are a few good apples. Misty Carausu is definitely a good apple, but she seems like a major exception to the rule :/
I’ve been using it for over 10 years now for client notes and it’s great!
No you're correct of course. I could go back and edit it to be & and |, but I think leaving the easy-for-a-noob to make mistake in actually illustrates the point better.

It wasn't on purpose, my brain took a shortcut from the eager logical operators I work with more frequently.
Go was released in 2009, which is 13 years ago. Many companies have built significant portions of their stacks on top of Go....Twitch, Google, Uber, Lyft, Amazon, etc.

It's widely used in industry and isn't going anywhere.
Nuland-Pyatt Tape Removed from YouTube After 8 Years
Can you please share a sample m4 script to generate ssh config? Just curious how you have solved complicated stuff, patterns, etc.
Will Wheaton was impressively good in the popular 1986 movie Stand By Me, also with River Phoenix and Kiefer Sutherland. I believe this was the role that made him famous, years before Star Trek.

https://en.wikipedia.org/wiki/Stand_by_Me_(film)
Whatever Docker is doing that your browser/OS/hardware isn't.

But that's the point. I have no idea what any of this stuff is actually doing. I'm just crossing my fingers that what I run isn't detrimental to my system. There's no actual understanding behind any of it anymore.
I've been playing Elden Ring on M+KB, why do you think you have to use a controller? M+KB support was kinda garbage in the PC port of the original Dark Souls but even then it was still there.
The flags led to a tense discussion with my boss once.

At my first office job in Canada, I was given a Mac. I activated US QWERTY for programming and CSA to be able to write messages with French accents.

One day not long after, I'm programming with US QWERTY enabled – US flag in the menu bar – and my boss comes up behind me, points, and says, "What ... is ... that ... ?"

It felt like it took forever to convince him that the flag just signified that I was using a particular keyboard layout and that it didn't mean anything else – to me, anyway.

All completely avoidable.

For better or worse, people assign a lot of meaning to flags. I can see why it's sensible to avoid using them for something benign like keyboard layout.
I would also like to see my children grown up. I’m aware that insane/evil people will do awful things, but that you don’t suppress the rights of everyone to stop one or two bad apples.

In my local community groups I see people demanding metal detectors be installed in our schools.

This is in response to: An attempted murderer being chased by police, going into a school he doesn’t belong in, barricading himself inside and murdering children.

It’s feel good security theater. If you’re in the middle of a killing spree you’re not going to stop because of a metal detector. If you’re dealing with kids bringing weapons to school, that’s different — but the responses to this event from people local to me are about 90% make-believe security.
Which jurisdictions are those?
I can only hope they let VMware operate independently and continue growing like they've done in the past decade.
> The issue with colors is that there's a slight variation for everyone. No one sees all colors exactly the same. The best thing to do is make this configurable for people who have serious issues with certain colors. Of course, good defaults are better but 1 color pair cannot fit everyone.

Yup, this is why I intend to add a feature similar to what mdbook offers on my website and zola theme if a visitor has 1st party javascript enabled.
This is from the FAQ:

How do I make a link in a text submission?

You can't. This is to prevent people from submitting a link with their comments in a privileged position at the top of the page. If you want to submit a link with comments, just submit it, then add a regular comment.
For all the ideological schpiel...

> Startpage would be the closest, but I really don’t like their purple colour scheme.

That can be solved with a plugin to override the CSS.
Have you played any sandbox games more seriously and joined some guilds etc? I would say WoW was more of a "world" in the start (but not on a comparable level to others) and turned less and less so over time. The one thing blizzard always managed really well however is a crazy level of polish. I am sure they could make any kind of game really shine.
> Debian does not trust the network.

Who ever said they do?

Why are you side tracking the discussion?

> The browser can not guarantee that connection is private. The reason why a browser shows a warning for a self-signed certificate is because there is no guarantee that the certificate itself is not a MITM attack.

I can check the certificate, if I have a copy from a trusted source.

The point of the scary warning (that I cannot disable) is that nowadays tech thinks of people like children to be protected from themselves, instead of educate them to understand the risks.

> There is no good reason not to have encryption on a publicly facing website

There are, actually.

None of them are good reasons for you.

An example from another post of mine [1]

Imagine you built an app for weather reporting, the app downloads static json from a server using the hardcoded ip address

What is the added value of putting HTTPS in front of the stupid web server serving stupid static Json?

What would anyone gain by MITM it, admitting someone can or want to do it?

There are many other ways to break an app like that...

If you can put yourself in the middle, you can simply break the trust chain and you broke the app, even on HTTPS.

there's no need to replace the content.

Assuming there's value in doing it.

> neither of which are good arguments against encryption

Who ever said no to encryption or HTTPS BTW?

the original post talked about HTTPS everywhere, that's what are we talking about, is it so hard to stay on topic?

Anyway, I can send encrypted data over HTTP if I wanted to.

> It's just stubbornness, paranoia that LetsEncrypt secretly has some plan to control the world

None of that corresponds to nothing that's been said here, not by me anyway.

It's just that HTTPS doesn't protect anybody from a stubborn malevolent actor with enough resources and motivation.

It should be said, instead of pretending that HTTPS is completely fine.

HTTPS is fine like OpenSSL "audited by million of developers' eyes in the World thanks to open source" was fine.

> This is a bad security policy and should be discouraged.

The fact that it's their job, doesn't mean encouraging it as a policy.

It's just a fact.

If you don't agree, ok, but if you agree why twist my words?

> if you are on a public network transmitting data then it is your job to care about MITM attacks.

I'm not transmitting, I'm delivering. Which is different.

Deliver happens on demand.

Transmitting is more similar to what a broadcaster does.

And even though broadcast radio and TV frequencies have been open and public for decades, they rarely have been hijacked.

Main reasons are: lack of resources and because it's prohibited by laws that are actually enforced.

> It's why we've started to move towards E2EE in many situations.

Which is, in fact, better than HTTPS as it is today in my opinion.

[1] https://news.ycombinator.com/item?id=31517326
In fact, it is much more similar to how people expected the Haskell's extensions to work when standardizing the language than anything from Rust.

Anyway, on practice they didn't work like that.
I would say that I am a true international user with 3 layouts.

I just use the control-space keyboard shortcut, I get a big popup in the middle of the screen showing the currently selected keyboard map.
Or, if you want to go one level deeper, v86 has a complete Linux environment with both python and sqlite running locally: https://copy.sh/v86/?profile=archlinux&c=python%20-ic%20%27i...
> Microservices, craptons of cloud-only dependencies, no way to easily create environments, ORMs and tooling that wraps databases

So, Spring Boot you mean?
> If a person needs 5L/day for survival (I am making this up), then you’d need to dry out 5000 / 2.6 = 1,923L of air each day

You made a unit conversion mistake there. It's 1923 cubic meters, not liters.
SMTP got a toehold before the eternal Corporate Age of the Internet practically ended open protocol development, because it was far more useful on intermittent connections, and on terminals one only used a few minutes a day.

Chat didn't get super-useful until everyone had a screen in front of them or on them just about every waking hour. People used it before (I know, I was there, and I did) but it was more of a "see who's on and chat with them" than what it is now.
Windows Updates introduce telemetry features and I don't allow my gaming PC network access to Microsoft. In my mind, the risk of them collecting my personal information is greater than the possibility of a "major security hole" being exploited, and even if it were, the data is limited to something totally inconsequential. As an additional measure, I reinstall the OS several times per year, but only allow updates before I use the computer for the first time.
For me the service they offer is exchanging money for time:

Going into a shop is more than the walk or drive. It is looking for a product, waiting in line if there is a line to pay, start the car, drive back, look for a parking spot. I would say that shopping 2-3 products from a 10-15 minute store, could cost at least 30 to 60 minutes time if going on foot and if driving probably more than one hour.

I count this time from the moment I decide I have the need until I am back home.

If a grocery delivery service can buy in the same time from the same store for at least two people I would say they also decrease fuel consumption. This could be a long shot.
SMTP was a way for email systems to communicate - and so things like CompuServe jumped on the bandwagon early.

Universities and others using mainly UUCP also migrated because of the benefits.

There wasn't really a huge benefit for the big instant messaging players to integrate, and the dirty secret is cross-platform "instant" messaging has always existed - it's SMTP! Many people still use email as a form of a chat tool.

XMPP also suffers from the "oh shit security might be important" that SMTP originally didn't deal with (it's horribly insecure by modern standards) which greatly increased the complexity.
I think all companies are having problems recruiting in the current environment. FB for a myriad of reasons.
My favorite bit:

> Don't look so smug, Marble Man, your game isn't very good.

> "Marble Madness II is a classic example of [when] a beautiful game is created and the sequel completely forgets why the original was great," the Internet Archive's Jason Scott told Ars. "I am excited that this long-anticipated game is out in the wild, because people can realize how uninteresting the game is and move on."