Live data from Hacker News

Things that used to be hard and are now easy

jvns.ca

241–250 of 316 posts

Re: Things that used to be hard and are now easy

#241
post #70

It's very hard to accept the statement that writing fast programs is now simpler with Go/Rust. I think that what happened is more like this: * With Go is now possible to write reasonably fast (not as fast as C) programs in a simpler way. That's great indeed, but is not exactly the above statement. * With Rust it is possible to write programs that have a speed that is comparable to the one of C programs, that are memo…

Here is the initial version before it was modified.

https://web.archive.org/web/20220220150536if_/https://jvns.c...

"Building fast programs, with Go/Rust"

Re: Things that used to be hard and are now easy

#242
Laundry list of terrible stuff.

Let's Encrypt is a headache and roots your box.

Concurrency was solved eons ago with common libraries widely used today. Erlang has had it as a design requirement since the beginning.

Centering in CSS! Heck isn't that just an HTML tag?

Building fast programs... with a certain language. Admitting it's slow? I don't get it.

I could go through the whole little list like this.

Re: Things that used to be hard and are now easy

#243

Earlier quoted context omitted.

> * Privacy online Privacy is a lost cause, the younger generations don't care. I remember when people were warned about sharing their real information online. over 50% of people I knew were just nicknames on the internet. I had zero clue about their gender, where they lived or what they did for a living. Didn't affect our conversations the least bit. Now everyone is plastering their faces everywhere they go. Every p…

Really? On almost all Discord servers I've visited, everyone has a nickname and doesn't share photos of themselves. On Instagram, I've also noticed a lot of young people who share e.g. art have a completely anonymous profile (and I guess probably another, non-anonymous profile for their friends only). Not sure about Snapchat or TikTok, though.

The problem with Discord and anonymity is the fact that it's really tedious to have multiple Discord accounts.

Let's say you want to keep your work, hobby and private profiles completely separate. You'd need to have one with the official client and the other two with a separate browser each. Also you'd need to be super careful when joining a new server for any category to make doubleplussure you're not joining with the wrong profile.

Re: Things that used to be hard and are now easy

#244

I would love to see the reverse of this 'things that used to be easy and are now hard' That would be an interesting read

* Running any website with user-contributed content. Spam is just everywhere nowadays, and you cannot publish a simple hiscore list for your game anymore without some kind of anti-spam measures, otherwise the spammers find it astonishingly fast and flood it with spam, even if it doesn't allow any clickable links * Thinking about it some more, everything related to security. Back in the days, the whole Internet wasn't…

> Thinking about it some more, everything related to security.

wasn't it more like "nobody gave a f back in the days"? :P

>Back in the days, the whole Internet wasn't port-scanned for known vulnerable services multiple times a day, and you could get much further with less refined security practices.

what years are you talking about? seems like a lot of decades ago

Re: Things that used to be hard and are now easy

#245
post #85

Earlier quoted context omitted.

> * (Europeans only.) Publish a simple website without worrying that the hosting provider you choose doesn’t perfectly conform to privacy laws that even lawyers won’t explain to you and you’re personally liable for ridiculous damages. I'm sorry but that's just FUD. GDPR fines are only for serious infractions with intent, most violators get off with a warning. Furthermore, access logs are OK because they're a legitima…

Oh boy you have no idea how horrible it is. Check out the latest rulings in that regard. Google Fonts is a big no now. Everything that "transmits PII (including your IP address)" is problematic. Its just a matter of time until all those free static site hosters (github/gitlab pages, netlify, etc) are targeted, cloudflare probably too. Our legal council already told us to "at least add some notification that people ar…

Ain't it Google specific?

Re: Things that used to be hard and are now easy

#246
post #90
post #59

Earlier quoted context omitted.

I keep hearing that argument, but I also dropped Evernote for Apple notes because Evernote was too slow, even on my M1 mac. So there is definitely such a thing as optimizing your programs.

That argument is usually made by the kind of people who consider developer experience the most important part of software development. I'm on the opposite end of this spectrum: I couldn't care less about developer experience, user experience is the king. Your users won't see your "write less code" crap and all your other "elegant" overengineered solutions that use 5 libraries for something that should be a trivial 10…

Be careful about the baby/birtwater situation. I can deliver a website a lot faster if I get to write it in typescript than if I have to write it in C++, even if the latter might execute faster.

Re: Things that used to be hard and are now easy

#247

Earlier quoted context omitted.

Thats how you get people who have no idea what the underlying tools can do and bloat the high level abstraction. Complexity has to go somewhere. If something is easier, something else is harder. These things may make the bog standard use case easy but woe to you if you ever try to go another path or change something. Then you need to figure out if the abstraction layer allows you to tweak the underlying software laye…

I understand you manually manage the kernel and wrote your own TCP library? I sure hope you didn‘t just pass all of that complexity down!

There are well designed abstractions that are helpful. It's very hard to come up with them.

Mycrotoque aims at those who quickly jump to introduce new abstractions into their workflow before they understand what they are doing. It very often results in pain. It helps in the short term, because you are up and running faster but these shiny new frameworks are often immature and, like Potemkin villages, only look good from the correct angle, and have no meat. Once you try to use them for custom scenarios, you end up having to route around the abstraction layer because it wasn't designed so well.

To take an example outside of cloud management etc, in deep learning frameworks: there were competing libraries some years ago: caffe, theano, tensorflow etc. François Chollet decided to create an abstraction layer that could unify multiple low level frameworks. Called Keras. Did it work? No. Because the different implementations were different enough that they couldn't usefully be coerced under the same abstraction layer. I mean it worked for some time, to some extent. But very soon after, they dropped support for anything but Tensorflow. Creating good abstractions is very hard especially if the underlying layer is unstable and gets big conceptual changes. With kernels it's not the case. We've had them in similar Form for like half a century.

Re: Things that used to be hard and are now easy

#248

Earlier quoted context omitted.

CGNAT will be here for the forseeable future and I wouldn't be surprised if ISPs end up deploying some version of CGNAT on IPv6, assuming they're somehow forced to use IPv6 in the future.

Why would they want to run CGNAT on ipv6?

I can think of couple of reasons for it

- they get money for selling static/public IPv4 addresses right now and they wouldn't want this money going away when IPv6 arrives

- can't imagine how the world will look like with shitty insecure routers everywhere and everyone having a public IPv6 address, ISPs might provide NAT connections to protect non-tech people

If I'm not mistaken, one of the largest ISPs in my country has begun to roll out IPv6 but it was either broken the last time I checked or it had some form of NAT on it.

Re: Things that used to be hard and are now easy

#249
post #66

Earlier quoted context omitted.

Golang was created from the same people of C, it's what C++ should have been. It takes lots of background from plan9, the 'Unix++' OS.

> it's what C++ should have been No. There's a large class of programs that you can't write in Go that you can write in C++.

No. I meant that C++ should have never been born. For high perf software C should be enough, while Go could work great for generic system binaries.

Today's low end machines are not a Pentium 2 or 3, but a Raspberry Pi B+ with 512 MB of RAM (very low end, a real life machine would be a Pentium 4 with SSE2 and 1GB of RAM or a Core Duo with 2). Enough for Go and statically linked binaries a la plan9/9front.

Re: Things that used to be hard and are now easy

#250
post #8

> Building cross-platform GUIs, with Electron How about no. I so want this abomination of a technology uninvented.

> I so want this abomination of a technology uninvented. Good enough beats perfect almost every time. The real fail is that the major desktop OSes have spent the last 20 years jockeying for a monopoly on how software is made on and distributed their platforms. Apple and MS (and even the Linux desktops to a lesser degree) want me to have to build and maintain completely separate apps for their platforms to unlock all…

Almost everyone is making native mobile apps — two copies of the same thing, for Android and iOS — but for desktop, it's suddenly something infeasible? Why so? It has always been other way around in my mind — my phone is an auxiliary limited communication device that's awkward to type on. Yet for almost every IT company with a mainstream product, phones are first-class, and computers are an afterthought. How so?
Post reply on HN