Live data from Hacker News

Everything's broken and nobody's upset

hanselman.com

201–210 of 418 posts

Re: Everything's broken and nobody's upset

#201

As a user of software, I get similarly frustrated as the author. ("user" here includes use of third-party libraries to build on) However, developing system-level software, I've come to realise that even if you really, really care about the quality of your software, you can still be bitten by statistics. Basically, developing error-free software is comparatively easy if your software effectively performs no I/O, that…

As someone who works on compilers for a living, even “read in some data on launch, grind through some computation, emit output, terminate” is not an easy problem. Regardless of what tools you use, there are no substitutes for testing, care, and rigour. And testing.

I would not be surprised if compilers were the most complex examples of that kind of program in the wild. Still, I would be surprised if automated testing of a compiler was as difficult as, say, test cases kernel-space driver that simulate hardware failure. (this is one example of something I'm currently dealing with) This is probably why compilers tend to have comprehensive test suites, and why drivers (and other I/O-heavy software) usually don't. To be clear: I'm not saying writing compilers is easy; I'm saying automated testing of compilers is conceptually not that hard to imagine, so it gets done. Whereas testing I/O and other external interaction involves ridiculous levels of yak shaving as it has almost no existing tool support, so it doesn't happen. Yet, most of the software we as humans interact with directly is exactly that I/O-heavy stuff.

Re: Everything's broken and nobody's upset

#202
post #73

My sentiments exactly. I got so tired of being upset with the horrendous human design in modern technology that I took action. What I've done: - Buy 2 $350 laptops every year. Move all data. Give away old ones. - All contacts in one .txt document. - Memorize most frequently used contacts. - No smart phone. - No tablet. - No Kindle. - No palm pilot. - No Facebook. - New car ('12 Hyandai) with minimal technology. - Was…

Clearly some of these are life choices, and important ones which almost certainly make sense to you, but one thing; No dishwasher? I don't really understand this. My dishwasher has a single wheel and a switch. The switch is "heated dry" [ON|OFF] and the wheel sets to one of three positions ("light wash", "normal wash", "medium wash"). If you're only washing dishes for one then I guess this makes sense, but I fail to…

No dishwasher here, either.

It takes 10 minutes, start to finish, to wash and put the dishes in the rack, if I've neglected to do them for a day or two. 15 total if I towel dry them.

Yeah, the dishwasher would be more convenient, maybe, but doing it by hand is just plain faster and I don't have to multitask.

Probably cheaper, too.

Re: Everything's broken and nobody's upset

#203
post #73

My sentiments exactly. I got so tired of being upset with the horrendous human design in modern technology that I took action. What I've done: - Buy 2 $350 laptops every year. Move all data. Give away old ones. - All contacts in one .txt document. - Memorize most frequently used contacts. - No smart phone. - No tablet. - No Kindle. - No palm pilot. - No Facebook. - New car ('12 Hyandai) with minimal technology. - Was…

I don't think the OP is being serious. Wash dishes by hand? Call me optimistic but, I kind of thought we perfected the craft of producing dishwashers.

They were perfected, until the new buyers wanted to connect their smartphone to it.

Re: Everything's broken and nobody's upset

#204
post #73

My sentiments exactly. I got so tired of being upset with the horrendous human design in modern technology that I took action. What I've done: - Buy 2 $350 laptops every year. Move all data. Give away old ones. - All contacts in one .txt document. - Memorize most frequently used contacts. - No smart phone. - No tablet. - No Kindle. - No palm pilot. - No Facebook. - New car ('12 Hyandai) with minimal technology. - Was…

Wash dishes by hand. (Fuck the 48 buttons on the dishwasher.) There are one button dishwashers out there.

Yep, the 10+ year-old ones. Might last a lifetime too.

Re: Everything's broken and nobody's upset

#205
post #131

Earlier quoted context omitted.

Clearly some of these are life choices, and important ones which almost certainly make sense to you, but one thing; No dishwasher? I don't really understand this. My dishwasher has a single wheel and a switch. The switch is "heated dry" [ON|OFF] and the wheel sets to one of three positions ("light wash", "normal wash", "medium wash"). If you're only washing dishes for one then I guess this makes sense, but I fail to…

Yeah, mine literally just has a dial that is only used to turn it on and off. No buttons, switches, anything. You just turn the dial like 0.2cm and it turns on. I can't imagine being OK with wasting time washing dishes by hand.

It's therapeutic, for me anyway.

Re: Everything's broken and nobody's upset

#206

I've been thinking for some years now, I wish everyone would stop implementing features and perfect the ones that are already there. Optimise. Improve. This is why I was so upset at Sparrow throwing in the towel - they concentrated on one thing, email, and did it better than I'd seen it done before. By specialising they were able to spend the time to get it right.

Since this is HN, what do you think about the business impact of it? I know "make something small but better" is a nice motto, but will it work for Apple, Microsoft? Heck, even for a proven startup's product, is it a good long term strategy, or a long term gamble? There aren't much examples of 37Signal's model of "don't implement features but keep polishing" approach.

Even 37Signals has added new features; they just make them a new product instead. The large advantage of this approach is that the complexity is minimized. As long as your customers are OK with this (37Signals trained their customers early and well), it's a good way to go.

Re: Everything's broken and nobody's upset

#207
post #180

Earlier quoted context omitted.

The browser doesn't have to know or care if some javascript on a page is doing an infinite loop. It's quite possible to sandbox a tab so that it can't take down the browser, just like an OS sandboxes processes so that one can't take down the kernel and other processes just from using too much CPU.

That is true in that Chrome always seems handle this better than Firefox for example. I guess it is to do with scheduling the browser UI threads and the JS threads. Although perhaps there are issues with locks and contention because there is probably some shared state between the browser UI thread and the JS engine/DOM on that tab. Thing is once you start implementing stuff inside the browser to handle these situatio…

Even without a true sandbox, and with JITed/compiled code, you should be able to run it on a stack of its own, either a distinct kernel thread or a user space thread. If the code doesn't call out to event-handling code frequently enough, a watchdog thread can send it a signal; the signal handler may then choose to cause the thread to pause execution or reschedule or whatever. It's not exactly simple, but also not that outlandishly difficult compared to creating the JIT compiler in the first place! Of course, it depends if you're merely having to avoid blocking the UI thread or if you're also interested in preventing runaway CPU usage.

Browsers stopped being document readers well over a decade ago, even if they seem like one to the user.

Re: Everything's broken and nobody's upset

#208
post #139

Earlier quoted context omitted.

I don't think the OP is being serious. Wash dishes by hand? Call me optimistic but, I kind of thought we perfected the craft of producing dishwashers.

We will have perfected it when you can again expect them to last 20 years without failure and at failure there is a diagnostic code that tells which reasonably priced part needs to be replaced.[1] They are probably optimized now, but not for the consumer's benefit. Also, people's thoughts on dishwashers vary hugely with the number of people in the household. When I am alone I never use a dishwasher. When in a househo…

> They are probably optimized now, but not for the consumer's benefit.

I suspect you mean they've been optimized for the shareholder's benefit.

Re: Everything's broken and nobody's upset

#209
post #73

My sentiments exactly. I got so tired of being upset with the horrendous human design in modern technology that I took action. What I've done: - Buy 2 $350 laptops every year. Move all data. Give away old ones. - All contacts in one .txt document. - Memorize most frequently used contacts. - No smart phone. - No tablet. - No Kindle. - No palm pilot. - No Facebook. - New car ('12 Hyandai) with minimal technology. - Was…

Yes, I'll single out the dishwasher item. Mine has a couple dozen buttons. I only care about two: Start and 4-Hour-Delayed Start. I couldn't even begin to tell you what the other buttons do.

Sometimes it's also about focus, too.

Same with my digital camera, Microsoft Word, Excel, et cetera.

Don't master. Learn what you need to get the job done.

Twist ending: I do the dishes a lot, and I end up washing them by hand anyway. Why? Because it's tedious labor that gets my mind away from coding and technology. I consider it meditation. My wife hates that I don't use the dishwasher.

Re: Everything's broken and nobody's upset

#210

Earlier quoted context omitted.

Clearly some of these are life choices, and important ones which almost certainly make sense to you, but one thing; No dishwasher? I don't really understand this. My dishwasher has a single wheel and a switch. The switch is "heated dry" [ON|OFF] and the wheel sets to one of three positions ("light wash", "normal wash", "medium wash"). If you're only washing dishes for one then I guess this makes sense, but I fail to…

No dishwasher here, either. It takes 10 minutes, start to finish, to wash and put the dishes in the rack, if I've neglected to do them for a day or two. 15 total if I towel dry them. Yeah, the dishwasher would be more convenient, maybe, but doing it by hand is just plain faster and I don't have to multitask. Probably cheaper, too.

10 minutes? For how many people?
Post reply on HN