Live data from Hacker News

The State of the Art is Terrible

zackarymorris.tumblr.com

71–80 of 242 posts

Re: The State of the Art is Terrible

#71
post #57

...Sure, your computer can perform 10 billion floating point operations per second. But most of the time it’s not doing anything at all. Just like you... This is a great rant. Nice emotional content, lots of technical details, the author qualifies his credentials, etc. Easily one of the better articles I've read in the past few weeks. One of the things he mentions is the pain of setup -- something I've painfully watc…

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 remember the joy of building fun and creative things.

When I was a kid I loved computers and I saved my paper route money and bought Borland C++ and tried to learn C++ from the manual. I failed utterly and I had no one to teach me. Now kids can learn easier languages that do cooler things on cooler hardware and they have the Internet to learn from.

Great things are possible and computing has made great leaps forward. Enjoy it!

Re: The State of the Art is Terrible

#72
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…

Totally agree, I still remember the pain I had almost a decade ago install something as simple as a Borland C++ IDE. What a nightmare that was for a newb like me, zero resources online to dig through. Today, you want setup and IDE or get iPad development going? There are TON's of resources with thousands of examples. Hitting an error when setting it up? Copy, paste that error into Google. 9.9 times out of 10 you get…

Dude, I would get Borland any day of the week instead of Apple. Just hit F1 if you are not sure what command does.

Re: The State of the Art is Terrible

#73
post #24

An excerpt from an article[1] I ran across a few weeks ago seems appropriate: "The printer was the first drum printer that I had ever seen. It would print 1500 lines per minute alphanumeric, and 1800 lines per minute when only numeric values were being printed. It cost $243,450. Its reliability was somewhat suspect. I walked through the room that it was kept in every day for a year, and the only time that I ever saw…

For those of you who, like me, had no idea what Burroughs was: An old American business equipment company.

Roughly: American Arithmometer Company (1886) → The Burroughs Corporation (1904 rename) → (1986 merger) Unisys.

Re: The State of the Art is Terrible

#74
post #64

Earlier quoted context omitted.

I'm not following you on the pain of setup. I'm finding it easier to setup things these days than I could 10 years ago. - Need a webserver and database setup? Easy, a few clicks on Heroku and I'm good to go. - Need to learn how to program something that you can then deploy to Heroku? Easy, just follow these 13 steps and you're on your way: http://learnpythonthehardway.org/book/ex0.html WTF is so painful about this?

Need a webserver and database setup? Easy, a few clicks on Heroku and I'm good to go. That's a different path entirely, though not necessarily a bad one. The full stack isn't under your control on Heroku.

Hey, that's a good point!

To get more control one should move to AWS. But wait, I don't control the network card on the server with AWS. Hmmm... I know! I'll get a colo. Now I can purchase and build my own machine and have control over the network card. But wait, I don't control the backup power system. Hmmm.... I know! I'll rent a building, get an internet backbone piped into it, buy some generators, and control the backup power system. But wait, I don't control the...

I guess what I'm getting at is, why is this an entirely different path? Why isn't using a service such as Heroku "the path" until you hit it's limitations and need to spend a bit more time going to the next step in the process.

One could easily make the statement of "blah isn't under your control on blah" for anything. Where does it stop?

:)

Re: The State of the Art is Terrible

#75
post #47
post #24

An excerpt from an article[1] I ran across a few weeks ago seems appropriate: "The printer was the first drum printer that I had ever seen. It would print 1500 lines per minute alphanumeric, and 1800 lines per minute when only numeric values were being printed. It cost $243,450. Its reliability was somewhat suspect. I walked through the room that it was kept in every day for a year, and the only time that I ever saw…

I completely agree with this sentiment. Look where automobiles were 100 years ago - nothing like the vehicles we use today; vehicles that are designed to squeeze every last MPG out of a gallon of gas, or can keep us from dying in a major car accident. Computing will improve. Computing will always improve. I think rants like this are helpful to point out where we definitely can improve, today, to bring on the future -…

You are kidding, right? Cars have hardly changed at all, still the same petrol powered devices with are a hard shell. Sure the car companies were forced to add in some extra safety mechanisms, but this does not mean much.

Re: The State of the Art is Terrible

#76
post #52

Earlier quoted context omitted.

1 - I agree that's a huge, massively important thing, but there are non-x86 processors in the world which find their niche (in ARM's case it's quite a huge niche), so surely if it is possible to develop a processor which is so much better than x86 then why don't they already exist? I am hardly very well informed on the processor market, so for all I know they do, though I'd be surprised. 2. Sure, I guess what I'm get…

so surely if it is possible to develop a processor which is so much better than x86 then why don't they already exist? Suppose I invented a new chip that was awesome for gaming, spreadsheets, word processing, databases and power consumption. Who would build PCs with it? What OS would it run if someone built it? Who would buy that? Its not merely a "huge, massively important thing". Its the only thing.

Intel & HP tried this with the Itanium. A decade (or two) and billions of dollars later and x86 or at least x64 is still king.

No doubt they made some mistakes, but it wasn't for lack of trying.

(And having debugged code on an ia64 I'm quite happy with the status quo!)

Re: The State of the Art is Terrible

#77
post #74
post #64

Earlier quoted context omitted.

Need a webserver and database setup? Easy, a few clicks on Heroku and I'm good to go. That's a different path entirely, though not necessarily a bad one. The full stack isn't under your control on Heroku.

Hey, that's a good point! To get more control one should move to AWS. But wait, I don't control the network card on the server with AWS. Hmmm... I know! I'll get a colo. Now I can purchase and build my own machine and have control over the network card. But wait, I don't control the backup power system. Hmmm.... I know! I'll rent a building, get an internet backbone piped into it, buy some generators, and control the…

“If you want to make an apple pie from scratch, you must first create the universe.”

Re: The State of the Art is Terrible

#78
post #57

...Sure, your computer can perform 10 billion floating point operations per second. But most of the time it’s not doing anything at all. Just like you... This is a great rant. Nice emotional content, lots of technical details, the author qualifies his credentials, etc. Easily one of the better articles I've read in the past few weeks. One of the things he mentions is the pain of setup -- something I've painfully watc…

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…

Youngster? Gee, thanks! I remember writing my first program on a Commodore Pet with 4K of RAM. Used peek and poke statements to draw the game field on the screen and loaded and saved the whole thing on a cassette tape.

The problem here is that you can argue this either way, so let me clarify. When we do systems analysis, we first focus on "happy path" scenarios. You want something, there's no exceptions, you push a big red button and it shows up. Life is good.

For those kinds of behaviors, say provisioning an entire linux stack on AWS, things are rocking. Want to code? Type in a couple apt-gets and you are on your way. There is a huge section of happy path scenarios where things are truly much better than before -- easily enough that many startups can totally stay on the happy path and do awesomely. (And that's exactly what they should do.)

But, alas, because of the dozens of layers of abstractions, and dozens more API, tooling, and hardware configurations, if you are doing anything technically difficult you can easily leave the happy path and get lost in the woods. It's very easy to get into a situation where you are using a combination of a dozen things in such a way as to be almost unique. Yes, each thing is awesome and easy to use, but the scenario you find yourself in is not. It's not called "sad path" A better name for it would be "terrible path of shame and destruction" Ever work inside a problem where you're dealing with multiple edge cases in several layers of complex system that has parts that are inscrutable? Ouch. I've plowed through complex and poorly-written C++ frameworks line-by-line and it's not as bad as that.

The author spun out one such scenario for writing iPad apps, but you could find a hundred of these cases easily. Boards are full of guys asking questions about combining A, B, C, D, E, F, and G into a situation where they are having problems, and responses are usually along the lines of "Hey, I know A, C, F, and G, and here's what worked." Sometimes that's helpful. Sometimes not.

I'm fairly new to linux, although I'm an old .NET/Win32/C++/COM hound. About a year ago, I thought about writing a mono app in F# to do functional reactive programming for the web as a side project. Basically Node. After poking around for a few days, I finally gave up. As far as I could tell, I couldn't find an entry point into a mono app such that I could load the app and hold it in memory, then re-enter from Apache (It probably could be done directly from the command line, but I didn't want to give up Apache) I wanted the speed associated with re-entrency.

Now perhaps somebody will reply and tell me the magic formula to make all of that happen. If so, awesome. But it was just too much bullshit. Finding stuff on Apache? Easy. Setting up a linux box? No problem. Loading up mono? Piece of cake. Getting F# up? A bit of a hassle, but I worked it out. Tying it all together in that unique combination in a configuration not commonly used? A very painful thing. I'm not saying it was impossible. I freely admit being a wus and giving up. But this kind of frustration is all too common any more.

Another example. I help teams a lot. Many teams I help are starting out on their project in a greenfield environment -- it's a new project and everybody is starting fresh. It's not unusual for them to spend a week just getting their environment set up. Now here's the deal: yes, you and I could cherry pick tools and such so that we could set them up in an hour or two, but many times the organizations they are part of have already made these choices for them. So no, it's not git. And no, it's not a plain-vanilla IDE. And so on. I really feel for these guys.

So sure, you can show all kinds of examples where things are a lot easier now than before, and I completely agree. But many folks do not live in that world.

Re: The State of the Art is Terrible

#79

...Sure, your computer can perform 10 billion floating point operations per second. But most of the time it’s not doing anything at all. Just like you... This is a great rant. Nice emotional content, lots of technical details, the author qualifies his credentials, etc. Easily one of the better articles I've read in the past few weeks. One of the things he mentions is the pain of setup -- something I've painfully watc…

We've complicated the plumbing to the point nobody knows how to work the damn shower any more.

This is probably the single most irritating thing to me as a developer. And, the most frustrating part is that this aspect often turns a simple project or a curious dive into a new technology into a knock-down, drag-out brawl with configuration files and dependencies that in the end produces frustration instead of working code.

Post reply on HN