Live data from Hacker News

How might software development have unfolded if CPU speeds were 20x slower?

news.ycombinator.com

151–160 of 161 posts

Re: How might software development have unfolded if CPU speeds were 20x slower?

#151

Earlier quoted context omitted.

Just curious, what is preventing people from creating something similar to VB6 and Delphi in modern days? Different underlying frameworks? But I'm sure VB6 still sort of works on Windows 10 (VBA).

The big problem is that nobody wants yet another platform-specific UI framework. Even Microsoft is using electron (or something like it) to build Microsoft Teams. If you build a cross-platform UI framework, it'll probably end up looking a bit ugly and custom on every platform (eg Java Swing). Making a cross-platform UI toolkit that looks native everywhere is an insane amount of work, because different platforms have…

That's not really the cause. As you say, Electron apps don't look native either. The issues are elsewhere.

Re: How might software development have unfolded if CPU speeds were 20x slower?

#152

Earlier quoted context omitted.

While your take makes sense, I feel like even general purpose programming frameworks should be orders of magnitude faster for what they are doing.

Yeah; and we have plenty of other general purpose databases which can run laps around postgres and sqlite. There's plenty of optimisations postgres and friends leave on the table. Like, the postgres client driver could precompile queries and do query planning on behalf of the database. It would introduce some complexity, because the database would need to send information about the schema and layout at startup (and a…

Would odbc/jdbc protocols have to change to support client-planned queries?

Re: How might software development have unfolded if CPU speeds were 20x slower?

#153
post #79
post #19

Earlier quoted context omitted.

Software wasn't bug-free, but it was responsive.

It may seem responsive if you run old software on modern hardware. It was always slow on contemporary hardware. On affordable PCs Win 3.1 was so slow you could see it redrawing windows and menus. Win 95 was so resource hungry, people wrote songs about it ( https://www.youtube.com/watch?v=DOwQKWiRJAA ). XP seemed fast only at the end of its very long life, due to Longhorn project failing and delaying its famously shit…

> Classic MacOS for most of its life could not drag windows with their contents in real time

There was shareware you could install which would do it though! Even on a 25 MHz 68030 it was surprisingly usable (more usable than the passive matrix LCD at least) https://www.youtube.com/watch?v=4cQo29SIIgU

It got a bit slower in color on an external display https://www.youtube.com/watch?v=peWIysrf7DY

Re: How might software development have unfolded if CPU speeds were 20x slower?

#154

Earlier quoted context omitted.

Just curious, what is preventing people from creating something similar to VB6 and Delphi in modern days? Different underlying frameworks? But I'm sure VB6 still sort of works on Windows 10 (VBA).

The big problem is that nobody wants yet another platform-specific UI framework. Even Microsoft is using electron (or something like it) to build Microsoft Teams. If you build a cross-platform UI framework, it'll probably end up looking a bit ugly and custom on every platform (eg Java Swing). Making a cross-platform UI toolkit that looks native everywhere is an insane amount of work, because different platforms have…

Thanks, that makes sense. Where can I find a Windows specific (or Linux specific)? I actually don't care about cross-platform. Desktop is dominated by Windows anyway.

QT is not bad and I used it for a small project. But it follows native so I'm not sure how to go back to native Win2000 style.

Re: How might software development have unfolded if CPU speeds were 20x slower?

#155

Earlier quoted context omitted.

Just curious, what is preventing people from creating something similar to VB6 and Delphi in modern days? Different underlying frameworks? But I'm sure VB6 still sort of works on Windows 10 (VBA).

Depends what you mean by "similar to VB6/Delphi". The VB6/Delphi era (called at the time RAD for Rapid Application Development) was oriented around proprietary UI and component frameworks. They were planned out a long way in advance and solved a lot of problems up front, but, they were tied to Windows and then you had to buy the dev tools on top. These days people usually want to write web apps if they aren't doing m…

Thanks. It looks complicated. I'm learning Windows desktop development and will take a look of QT first. I used it for a small project years ago and the experience was OK.

> 1. A standard way to define components that is statically reflectable (so you can populate property and event editors), and get documentation on the fly, etc.

This was what I really loved about Visual Basic back in the day. Everything is within clicks -- even with the legacy IDE it still feels slick.

Re: How might software development have unfolded if CPU speeds were 20x slower?

#156
post #79
post #19

Earlier quoted context omitted.

Software wasn't bug-free, but it was responsive.

It may seem responsive if you run old software on modern hardware. It was always slow on contemporary hardware. On affordable PCs Win 3.1 was so slow you could see it redrawing windows and menus. Win 95 was so resource hungry, people wrote songs about it ( https://www.youtube.com/watch?v=DOwQKWiRJAA ). XP seemed fast only at the end of its very long life, due to Longhorn project failing and delaying its famously shit…

That wasn't a hardware limitation. BeOS was outperforming Windows and Mac on the same hardware. If JLG hadn't demanded too much money, Apple would have merged with BeOS (and probably be a distant memory by now but that's a separate issue)

https://www.youtube.com/watch?v=cjriSNgFHsM&t=350s

Re: How might software development have unfolded if CPU speeds were 20x slower?

#157

Earlier quoted context omitted.

Doesn't it make you the go-to person when something goes wrong, and someone has to debug it? My own experience from a time at a SpringBoot/iBATIS/Hibernate etc. shop (so server-side not UI side) is that it's all well and good running on "rocket fuel" as the consultants say, until something goes wrong. Then at some point you need the person who understands HTTP and SQL and other antique stuff to diagnose the problem,…

There are people who do care about that, but it’s astonishingly rare. Just consider it abandoned knowledge. Most of the people who continue to care about these things do so in open source contributions far away from their employment. As a proof occasionally somebody will post something on HN about performance (asking for guidance, showing off a refactor, claiming performance is a critical must, whatever). I show them…

> they can’t hire anybody who is capable of following that guidance

This is the main constraint when designing some solutions. Oftentimes I know the best path (or that something deemed impossible is completely doable), but it might be arcane knowledge and I would be the only one to know how it would work and be responsible to keep it working.

Bus factor of one strikes this right away, unless there are no alternatives.

Re: How might software development have unfolded if CPU speeds were 20x slower?

#158
post #157

Earlier quoted context omitted.

There are people who do care about that, but it’s astonishingly rare. Just consider it abandoned knowledge. Most of the people who continue to care about these things do so in open source contributions far away from their employment. As a proof occasionally somebody will post something on HN about performance (asking for guidance, showing off a refactor, claiming performance is a critical must, whatever). I show them…

> they can’t hire anybody who is capable of following that guidance This is the main constraint when designing some solutions. Oftentimes I know the best path (or that something deemed impossible is completely doable), but it might be arcane knowledge and I would be the only one to know how it would work and be responsible to keep it working. Bus factor of one strikes this right away, unless there are no alternatives…

Again, it’s an economics problem. More specifically what you are addressing is not an availability problem, as everyone most commonly believes, but a selection problem.

Seriously, think about this logically. The compile target of the browser is the DOM. What is it these developers are so deathly afraid of: the DOM. Yes, it is raw emotional fear processed in the amygdala, qualified with poorly formed bullshit excuses. So, what about this induces fear? It’s not the technical challenge, because it’s not that challenging and easily taught to non-developers. I know this from experience. That’s how I know it’s a selection problem.

Re: How might software development have unfolded if CPU speeds were 20x slower?

#159
post #147

Earlier quoted context omitted.

According to the talk I watched, tigerbeetle makes heavy use of io_uring on linux - which isn't part of POSIX. Adding freebsd support should be pretty easy. If it supports darwin, it'll probably already have an implementation built on top of freebsd's kqueue. Its probably just a case of wiring it up to use kqueue when built for freebsd.

Yes, that was my impression as well when I looked at it yesterday. The monotonic_linux() bit that's quoted is platform-specific because it uses CLOCK_BOOTTIME with clock_gettime(), but that seems supported on BSD systems as well. It's probably just that no one tried to run it, and no one spent any effort on it. I can't find a single mention of "BSD" in the issue tracker.

> I can't find a single mention of "BSD" in the issue tracker.

Sounds like this is something you can help with. If you care, open an issue.

Re: How might software development have unfolded if CPU speeds were 20x slower?

#160

Earlier quoted context omitted.

Desktop UI is painful. It doesn't help that Microsoft is seems to have quite a few competing UI frameworks and technologies these days. 1. What is your goal? Do you need to run on Windows and Linux? QT isn't bad, although I personally think the UI looks a little weird. It is definitely highly opinionated and parts of it are quite strange IMHO. There's probably lots of jobs writing with QT, which might be a nice side…

I'm building a complex greenfield app in WPF, so your "Desktop UI is painful" comment does not resonate with me at all. They will have to drag me back to web development kicking and screaming. I absolutely love building UIs in this framework. No blockers, no bullshit. So fluid and easy. Not to mention, the exact same paradigm translates to the other Microsoft desktop/mobile/x-platform frameworks, so if you insist tha…

I also use WPF. Like you, I love it. But it still can be painful if you're doing non-trivial things. Sometimes desktop UI is painful. Sometimes it requires a lot of work to deliver a perfect user experience.
Post reply on HN