Live data from Hacker News

Software Disenchantment (2018)

tonsky.me

311–320 of 504 posts

Re: Software Disenchantment (2018)

#311
post #88
post #68

He has a nice follow up which gets to the reasons why https://tonsky.me/blog/good-times-weak-men/ Another take: rewrites and rehashes tend to be bad because they are not exciting for programmers. Everything you re about to write is predictable, nothing looks Clearly better and it just feels forced. First versions of anything are exciting, the possibilities are endless, and even if the choices along the path are subop…

He hints at Electron in the end, but I think the real blame lies on React which has become standard in the past five years. Nobody has any fucking idea what’s going on in their react projects . I work with incredibly bright people and not a single one can explain accurately what happens when you press a button. On the way to solving UI consistency it actually made it impossible for anyone to reason about what’s happe…

If someone's starting a new website project (that has potential to become quite complex), what would you recommend is the best frontend technology to adapt then?

Re: Software Disenchantment (2018)

#312
Second the OS > VM > Docker > Kubernetes gripe. Soon no-one will know how to admin a sys. Companies like Hetzner (http://www.hetzner.com) are offering an 8-core VPS with 32Gb RAM for a mere $40 per month but all we hear about is AWS. It's insane. Facebook conqured the world on a fraction of that hardware back in 2004. Docker and Kubernetes were originally designed to solve problems managing massive fleets of servers but now devs at every 2-bit startup with a single server are expected to be hiding their efforts behind these 2 extra layers. "Over-engineering" doesn't even come close.

Re: Software Disenchantment (2018)

#313
post #312

Second the OS > VM > Docker > Kubernetes gripe. Soon no-one will know how to admin a sys. Companies like Hetzner ( http://www.hetzner.com ) are offering an 8-core VPS with 32Gb RAM for a mere $40 per month but all we hear about is AWS. It's insane. Facebook conqured the world on a fraction of that hardware back in 2004. Docker and Kubernetes were originally designed to solve problems managing massive fleets of server…

My problem with that 8C/32GB machine as opposed to AWS is that that’s literally everything I want my VPC and direct connect.

Re: Software Disenchantment (2018)

#314
post #65
post #34

> Jonathan Blow has a language he alone develops for his game that can compile 500k lines per second on his laptop. That’s cold compile, no intermediate caching, no incremental builds. You don’t have to be a genius to write fast programs. The guy is most definitely at least a genius.

Depends on your definition of genius, but I definitely agree that these folks don't quite hold up the sentiment that "anyone can do it." I would put Martin Thompson, Raph Levien, and Jonathan Blow at least in the top 0.1% of programmers. They are great examples for his overall point though. It probably would've been better just to leave out the genius bit and talk about them as folks proving it can be done.

You should add the late Terry Davis to your list, or if that area interests you, read up on his work: https://en.wikipedia.org/wiki/TempleOS

Re: Software Disenchantment (2018)

#315
post #313
post #312

Second the OS > VM > Docker > Kubernetes gripe. Soon no-one will know how to admin a sys. Companies like Hetzner ( http://www.hetzner.com ) are offering an 8-core VPS with 32Gb RAM for a mere $40 per month but all we hear about is AWS. It's insane. Facebook conqured the world on a fraction of that hardware back in 2004. Docker and Kubernetes were originally designed to solve problems managing massive fleets of server…

My problem with that 8C/32GB machine as opposed to AWS is that that’s literally everything I want my VPC and direct connect.

Sorry, I don't understand the last part of the sentence.

Re: Software Disenchantment (2018)

#316

Earlier quoted context omitted.

> Even worse, try using an OS running in a VM for an extended period of time... I do that for most of my hobbyist Linux dev work. It's fine. It can do 4k and everything. It's surely not optimal but it's better than managing dual boot.

Any hints? How are you getting any kind of graphics acceleration? What's your host/guest/hypervisor setup?

Host is Windows, guest is Ubuntu. Hypervisor is VMWare Workstation 12 Player. There is a very straightforward process to get graphics acceleration in the VM. The shell has a "mount install CD" option that causes a CD containing drivers to be loaded in the guest (Player > Manage > Reinstall VMWare Tools). You install those, and also enable acceleration in the VMWare settings (https://imgur.com/a/PUaE38u). Again, it's not perfect, but I can e.g. play fullscreen 1080p YouTube videos. Not sure how it would like playing 4k videos, but my desktop doesn't like that so much even in the host OS.

Re: Software Disenchantment (2018)

#317
post #308

Earlier quoted context omitted.

Yes both appear to be a disaster. Vuejs is a bit better imo but i'm generally holding out for the next thing.

... which is https://svelte.dev

It might be the next big thing, but Svelte doesn't solve the problem outlined in the root of this subthread: nobody has any idea what the fuck is going on.

I like Svelte, the simplicity of programming in it is great, and it has several advantages compared to React. But I have no idea how it works, past a point of complexity. Like, yes: I can run the compiler and check out the JS it generates, same as I can do in React. For simple components, sometimes the compiled code even makes sense. But when I introduce repeated state mutations or components that reference each other, I no longer know what's going on at all, and I don't think I'm alone in this.

Svelte might be an improvement in ergonomics (and that's a good and much needed thing!) but it does nothing to answer the obscurity/too-far-up-the-abstraction-stack-itis that GP mentioned. The whole point of that is frameworks/abstraction layers that tell you "you don't need to understand what's going on below here" are . . . maybe not lying, exactly, but also not telling the whole truth about the costs of operating at that level of both tooling abstraction and developer comprehension.

Re: Software Disenchantment (2018)

#318
In my opinion, the reason nobody cares about something taking 15 seconds, is because the process would have taken them 4 hours of manual work.

Of course they’re going to accept that delay, even if adding a few million numbers together should really take less than a millisecond.

Re: Software Disenchantment (2018)

#319
post #178

Long ago I watched a documentary about the early Apple days, when management was encouraging their developers to reduce boot times by 10 seconds. The argument was that 10 seconds multiplied by the number of boot sequences would result in saving many human lives worth of time. Edit: found a link with the same story: https://www.folklore.org/StoryView.py?story=Saving_Lives.txt The software world needs more of this kind…

I wish more companies thought like this in general. I often think about the nature of the work I'm doing as a developer and wonder if it's making society better off as a whole. The answer is usually a resounding no.

I think my work makes society some infinitisemal amount better.

Re: Software Disenchantment (2018)

#320

He seems to make a contradictory point... he complains: > iOS 11 dropped support for 32-bit apps. That means if the developer isn’t around at the time of the iOS 11 release or isn’t willing to go back and update a once-perfectly-fine app, chances are you won’t be seeing their app ever again. but then he also says: > To have a healthy ecosystem you need to go back and revisit. You need to occasionally throw stuff away…

I think that's not quite the point in the article. The idea is, in my reading, that we've built lazily on castles of sand for so long that sometimes we think it makes sense to throw away things we shouldn't, and other times we obsessively wrap/rewrap/paper over things we should throw away. What falls into each category is obviously debatable, but the author seems to be critiquing the methodology we use to make those decision--debatable or not, people aren't debating it so much as they're taking the shortest and often laziest path without prioritizing the right things (efficiency, consistency).

Even with our priorities in order, there will still be contentious, hard choices (to deprecate so-and-so or not; to sacrifice a capability for consistency of interface or not), but the author's point is that our priorities are not in order in the first place, so the decisions we make end up being arbitrary at best, and harmful/driven by bad motivations at worst.

Post reply on HN