Live data from Hacker News

The State of the Art is Terrible

zackarymorris.tumblr.com

211–220 of 242 posts

Re: The State of the Art is Terrible

#211

Earlier quoted context omitted.

I remember when it was, when it seemed like most things just worked, even though they didn't look pretty. I remember spending hours moving around jumpers to set DMA and IRQ. Only to find out that the only free IRQ was #9 and bloody Packard Bells sometimes didn't have a frikkin' 9 because that batch of boards was $2 cheaper that month... I remember when it wasn't pretty and it took ridiculous efforts to make it work e…

Hardware improved. I believe the guy's talking about software.

Which software was it exactly that was so great and just worked? MS-DOS? Windows 3.1? Windows Me? Some specifics would be nice, because across the board it seems everything is MUCH better now. It used to be that you would buy a computer game and 75% of the time it would not work out of the box.

Re: The State of the Art is Terrible

#212

Computing is in a bad shape partly because of momentum, and the momentum exists because of the nature of capitalism. The momentum means we can never stop to make sure the software is as carefully written at it needs to be, and we can never stop to think of the big picture (all the other software we need to operate with). And because of capitalism's inherent competitive nature, there is no concerted movement towards a…

If there would be ruby but no python, or python but no ruby - the remaining one would be worse and less mature than it is now.

Having competition made them both stronger, no doubt.

Re: The State of the Art is Terrible

#213
post #71
post #57

Earlier quoted context omitted.

Ah, you youngsters. Trust me, it is FAR easier now to get started than any time in computing history. Before GitHub, you installed SVN or CVS on your own. Before that you accidentally overwrote your software once a month. Before Cloudant you installed MySQL on your own. Before that you wrote your own storage system. Before Amazon you bought a server and installed Linux on it. Before that you wrote customer databases…

I love this perspective. I think part of the problem is so many of us are stuck doing stuff that is far too damn complicated to be fun to build or fun to use. If you're burning out on hard stuff, do something easy for a change that puts a smile on someone's face. If you don't think you can make a cynical, stressed-out adult smile, make something that puts a smile on a kid's face - that's easy, and it's a way to remem…

I have the luxury of a corporate job that allows me to create software applications for internal users that are much better than what they were using before - so much better that their daily enjoyment of their jobs is significantly improved. (And that says a lot more about how bad their old tools are than it says about how awesome a programmer I am.)

As challenging and frustrating as it can sometimes be for me to get the application stack working, it's nothing compared to the aggravation and sheer misery I'm eliminating from my users' workflow.

One group sits close enough to me that I can actually hear the reduction in swearing each time I replace a shitty old tool they have to use with something that was actually designed with their needs in mind. That's a pretty nice feeling.

Re: The State of the Art is Terrible

#214

I'd like to buy Zack a drink, because all of this is obvious to those poor shmucks among us that handle the support end of things (also known as the "shit end"). I've been saying a lot of the same things for years. I'm tired of it now; I'm starting to give up, because it's obvious there isn't a programmer out there that gives a damn. You can try telling them that there's something wrong with software -- something fun…

"I really don't like this industry much anymore. I guess that makes me a bad hacker or something."

This is the 'little death.' Allow me to relate an anecdote.

I grew up loving computers, loving everything about them, how they were built, how they were programmed, how they did what they did. I started out just as the 'personal computer' revolution was getting started, it was glorious, Altair, IMSAI, SOL20, Heathkit. Lots of folks with their own take on what the PC should be. I have spent hours and hours and hours writing my own BIOS code, hacking ZCPR3, making an emacs clone work on CP/M, falling in love with the Amiga and suffering the incurable disease of incompetent management. By the time the late 90's rolled around I was starting to burn out. A lot of stupid things which didn't have to be that way, Microsoft always trying to make their version of something just a bit incompatible and only buildable with their tools. Etc. I was writing some code on a windows box and hating it. I yearned for a simple 'make foo'.

Then I met a 'kid' who was building stuff on Windows and he had the same wonder I had when I was that age, except he didn't complain about visual studio crap because he had been introduced to computers with this as the way to do it. Where I saw re-implementations of the wheel, done poorly, he didn't see anything, they were just the tools you had to use to get to the end point.

I realized with a start that I had lost my sense of 'wonder.' That childlike state where you ignore the fact that something is uncomfortable or irritating because you have so much amazement over the thing itself. And the truth is that if you use crappy tools for a while your muscle memory will figure out how to minimize the irritation. I looked around and saw that people I knew, people who were bright lights of leadership back in the day, were now stuck in an endless cycle of curmudgeonly rant because they too had lost their sense of wonder. I decided to start picking my battles more carefully. (which you can do in a hobby, not so much at work)

I found an editor that I could use everywhere (Visual Slick Edit, now VIM) so that I could have the same editing experience on all my platforms. I spent some time to understand the build system (make, gcc, java, python, etc) to get to a point where not only could I create my own environment I could keep it running across platforms, and began to develop my own set of APIs which I could link through into the underlying platform. The goal was reduce the friction between getting stuff done, and the tools to get things done. I recognized the reward comes in the running of the code and getting it to work as I wanted.

Then I can mostly ignore the crappy stuff. I can joke about how putting a character on screen used to be to monitor the transmitter buffer empty (TBE) flag on the serial port and then write the ASCII character when that flag was 'true', to something which spends thousands of cycles checking to see if this time I want my characters to go right to left, or which code points or font I should use to display them, or how they should be alpha blended into the background of what is on a screen somewhere. And when I come across something that is horribly, horribly broken like using WebCam's in Linux, I try to develop a durable API for talking to video which isn't cumbersome to use, or has feature stubs I'll be unlikely to use. I try to stay amazed that I can capture digitally on a piece of $20 hardware that which used to cost thousands, and in so doing keep my sense of wonder about what is possible.

Re: The State of the Art is Terrible

#215

Computing is in a bad shape partly because of momentum, and the momentum exists because of the nature of capitalism. The momentum means we can never stop to make sure the software is as carefully written at it needs to be, and we can never stop to think of the big picture (all the other software we need to operate with). And because of capitalism's inherent competitive nature, there is no concerted movement towards a…

If there would be ruby but no python, or python but no ruby - the remaining one would be worse and less mature than it is now. Having competition made them both stronger, no doubt.

Maybe, but it's a shame you need two competing, but very similar projects, to accomplish this. If people had been competing about contributing the best code to the same project, we could have reduced the duplication.

Re: The State of the Art is Terrible

#216

Earlier quoted context omitted.

>Disagree. I don't think 95-98% of programmers are idiots. I didn't say that. > It takes 10,000 hours of deliberate practice to become good at something, People need to stop re-hashing this. 10,000 hours of deliberate practice is likely but not necessarily going to make you an excellent programmer. I know plenty of programmers in their 40s and older who have that much time in or more that are frankly, garbage. Invest…

People need to stop re-hashing this. 10,000 hours of deliberate practice is likely but not necessarily going to make you an excellent programmer. I know plenty of programmers in their 40s and older who have that much time in or more that are frankly, garbage. Sure. And I could spend 10,000 hours playing basketball and I'd never become good at it. I don't have the genes. The point about "10,000 hours" is not that anyo…

The 10,000 hours meme is something a bad author made up to fit his pile of anecdotes.

It's not a fact, it's a number he pulled out of his ass.

He never made it about deliberate practice, he used the Beatles jamming and fucking around for 10,000 hours as an example.

Stop talking about 10,000 hours IT'S BULLSHIT. You might was replace-string it with "SIX-SIGMA CERTIFICATION", it means nothing!

Re: The State of the Art is Terrible

#217

Computing is in a bad shape partly because of momentum, and the momentum exists because of the nature of capitalism. The momentum means we can never stop to make sure the software is as carefully written at it needs to be, and we can never stop to think of the big picture (all the other software we need to operate with). And because of capitalism's inherent competitive nature, there is no concerted movement towards a…

> Computing is in a bad shape partly because of momentum, and the momentum exists because of the nature of capitalism.

This is true of any engineering discipline throughout history (read Henry Petrowski for many examples). One example was the technology of building iron railroad bridges in UK in 1800s. As the railway network grew bridges were needed and UK did not have enough forests left, so bridges were constructed from cast iron. However, at the time the science of metal fatigue was not there, so many of the these bridges failed - killing people in the process.

Clearly the state of the art of iron bridge building was in a horrible state, yet bridges were built because people needed them.

Eventually the science caught up and bridges don't fail as much anymore..

Re: The State of the Art is Terrible

#218
post #14

Though I speak from a probably utterly uninformed + unqualified standpoint, this raises a few points for me:- 1. If x86 hardware is so terrible (and I have heard that the architecture really is bad many times), how come we don't have competing chips out there which are many, many times more efficient? I know ARM outperforms on the low-power front, but not in terms of perf to my knowledge. Do such chips exist? And if…

The x86 thing is just grousing by people who think aesthetics in the assembler are the definition of a clean architecture. Instruction decode for a modern x86 CPU is indeed a difficult problem when compared with cleaner architectures (though ARMv7 is hardly "clean" -- how many instruction sets does it support now? Five, I think?). Instruction decode, however, is one of the easiest problems to tackle on a CPU. It just…

Statements like this -- saying that x86 is either good enough or as good as anything could possibly be anyway -- sound to me like a lack of imagination, lack of perspective, or not wanting to stir up any cognitive dissonance given that market forces have caused x86 to dominate.

Would you also say that there probably couldn't exist a significantly better OS than Mac, Windows, or Linux, or else we'd know about it? I admit "better" can be hard to define; what would make a 10x better car, or IP protocol, for example? It strains the imagination, because what makes these things "good" is complicated. But ask anyone who was around during the early proliferation of computer architectures and operating systems, and they will tell you that what ended up winning out is markedly inferior to other things that could have been. Paths get chosen, decisions get made, billion-dollar fabs get built. The market doesn't pick the best technology.

It's like web standards -- accept them, but only defend them to a point. We may be stuck with CSS, but that doesn't mean it's any good or that it succeeded on its merits.

Re: The State of the Art is Terrible

#219

I'd like to buy Zack a drink, because all of this is obvious to those poor shmucks among us that handle the support end of things (also known as the "shit end"). I've been saying a lot of the same things for years. I'm tired of it now; I'm starting to give up, because it's obvious there isn't a programmer out there that gives a damn. You can try telling them that there's something wrong with software -- something fun…

"I really don't like this industry much anymore. I guess that makes me a bad hacker or something." This is the 'little death.' Allow me to relate an anecdote. I grew up loving computers, loving everything about them, how they were built, how they were programmed, how they did what they did. I started out just as the 'personal computer' revolution was getting started, it was glorious, Altair, IMSAI, SOL20, Heathkit. L…

So, of all the replies in this thread, this one spoke to me the most. I think you're right. Thank you for describing it so well.

I started out a little after you did, with BASIC on a Commodore Vic-20 and Commodore 64, then Logo, then HyperTalk, and so on. I used to have fun decompiling programs and poking them with MacsBug to make them dance for me, and I used to have fun writing my own toy operating system and generally just screwing around. And, for the most part, my tools were simple and reliable.

So that's what I compare everything now against, and it all seems less reliable and more complicated. MacsBug was a thing of wonder and beauty compared to the "debuggers" I have to deal with most often now -- Firebug and GDBp. And I've started working recently on building my own tools, which is sort of fun again, so maybe I'm sort of headed on the right track.

But anyway, thanks for describing it like you did.

Re: The State of the Art is Terrible

#220

Earlier quoted context omitted.

Every now and then I decide I don't like being a programmer anymore. And then I remember its the only thing I'm good at.

I can so relate to that... But then I think of other actual jobs that exist nowadays, and I conclude being a software dev might be the least worse. Software is eating the world, after all.

Indeed, bugs are creatures of great appetite!
Post reply on HN