Hacker News new | past | comments | ask | show | jobs | submit login
Architecture astronauts take over (joelonsoftware.com)
131 points by mqt on May 1, 2008 | hide | past | favorite | 75 comments



I have become sick and tired of the carping and flaming you see from some folks whenever Joel publishes a rant, accusing him of douchebaggery and all sorts of sin. The usual behaviour is that he has one great insight, a bunch of entertaining ranting, and one egocentric point. And on the basis of this, the whole thing is junk and he is a has-been windbag.

I don't go along with that sort of vilification. If a post has one great insight, something I can learn from, I'm a happy man. I can chuckle at Joel complaining about competing for interns with Google as long as I'mn entertained by his prose and intrigued by his central thesis.

I would have loved this post on that basis.

Except.

WTF is with the dig at playing Ultimate? Joel, you have totally lost it this time. Ultimate is the ultimate nerd sport, and interns who play Ultimate are your best hires ever.

Ultimate involves complex plays involving team co-ordination. A skill that just might come in handy working on a software development team. The flight of the disc is the kind of thing the mathematical mind drools over--gyroscopic procession, ballistics, aerodynamics, everything comes in to play.

Ultimate players are healthy and I'll wager can crank code for long hours compared to those who eschew aerobic sports in favour of foosball.

And for those who are still single... Ultimate is a great place to meet people of every gender and orientation. Which leads to cohabitation, the purchase of homes, large mortgages, and a slavish devotion to working your ass off to earn a fat bonus.

Joel, I wanted to like this post, I really did. But you have got to stop making insanely wrong pronouncements about things that matter most.

Like which games interns ought to play ;-)


It sounds more like a dig on their programming experience.


I was trying to satarize all the people elsewhere complaining about the last paragraph. As you can see, I am not a very funny writer.

I like the post very much. His point about Lotus taking over MSFT reminded me of Jamie Zawinski's story about Collabra taking over Netscape:

"Our punishment for that success was that management saw this general-purpose mail reader and said, "since this mail reader is popular with normal people, we must now pimp it out to `The Enterprise', call it Groupware, and try to compete with Lotus Notes!"

"To do this, they bought a company called Collabra who had tried (and, mostly, failed) to do something similar to what we had accomplished. They bought this company and spliced 4 layers of management in above us. Somehow, Collabra managed to completely take control of Netscape: it was like Netscape had gotten acquired instead of the other way around.

"And then they went off into the weeds so badly that the Collabra-driven "3.0" release was obviously going to be so mind-blowingly late that "2.1" became "3.0" and "3.0" became "4.0". (So yeah, 3.0 didn't just seem like the bugfix patch-release for 2.0: it was.)"

http://www.jwz.org/doc/groupware.html


I also enjoyed the vast majority of the article, but I have to admit the last paragraph was annoying. It just seems like everything Joel writes these days (since he started his Road Show) is Submarine.[1]

I realize everyone is going to talk about what they are doing, and Joel does Fog Creek, but I can't help getting that greasy used-car salesman feeling. I don't own Joel, and he owes me nothing, but it still makes me sad, because I used to enjoy his blog so much.

Really it just seems like that article should have been two. One about architecture astronauts, which was quite insightful and amusing, and one about the annoyance of competing on salary with Google/MSFT. Putting them together just makes Article #2 looking like the hidden motive for Article #1, which makes it seem like he didn't really mean the stuff he said for #1, he just said it to segue into #2.

And as for his salary issues: I thought Joel's whole deal was that he hired rockstars and treated them like Made Men. Salary isn't the only component of that, and probably not even the most important. Complaining about bigger players offering higher salaries is like complaining that some people are born richer. Complaining about it gets you nothing. You don't compete with someone by playing to their strength. You compete by playing to their weakness. All he has to do is keep trumpeting about his sweet office space and small team/fun environment, and he will have plenty of rockstars.

Oh, and thanks for the JWZ link. I love his stuff!

[1] If anyone doesn't know what I mean by Submarine... here ya go: http://www.paulgraham.com/submarine.html


I guess blog posts are often glass half-empty/half-full thingies. It's totally valid to feel that the annoyance of the empty part of the glass outweighs the enjoyment of the half-full part.

On my good days, I feel a lot more charitable about such things than on my bad days. It's dogs are sages all over again:

http://weblog.raganwald.com/2007/03/programmers-are-sages.ht...


I reread your comment with fresh eyes and I can see the sarcasm now. I kind of feel like the Mitch Hedberg joke:

My friend said to me, "I think the weather's trippy." I said, "No, man, it's not the weather that's trippy, perhaps it is the way that we perceive it that is indeed trippy." Then I thought, "Man, I should've just said, 'Yeah.'"

Anyway, enjoy the coffee!


+ a bushel of upmods for the Mitch Hedberg reference. Somehow, I think Mitch would have been a Bipolar Lisp Programmer if he was into programming...

http://www.lambdassociates.org/blog/bipolar.htm


That's a great essay. Funny, sad, and true.

"Veteran programmers of many years with obvious ability and talent go down with a fit of the blues. The intelligence is directed inwards in mournful contemplation of the inadequacies of their favourite programming language."

I actually laughed out loud.


I actually found the most interesting part of the article towards the end: Joel's really upset that MSFT and GOOG are picking up all the top CS grads, despite Joel's great internships and Aeron chairs. And, he's also upset that the starting salary for a CS grad is now pushing 6 figures.

I'd actually wager that the true cream of the crop is primarily interested in starting their own companies and cashing out early. It's the second tier that are interested in working for MSFT and GOOG. And then, the rest of the companies are fighting for scraps. I could be wrong, I'm not doing the HR thing like Joel is.

And, it's only going to be a matter of time before undergrad salaries across the board start climbing. And once the press starts writing "Tech shortage. Salaries skyrocket!" there will be a lot more people going into CS as a major.


In my experience (largely on the CS theory, math, and physics side of things), a large portion of the cream of the crop just wants to do research -- at least coming out of their undergrad, anyway. The numbers change fairly quickly after a few years of grad school.


"there will be a lot more people going into CS as a major"

Sadly, increasing quantity will probably have little impact on increasing quality.


I think it will have a big, negative impact on increasing quality.


how do you reason that?


I think a career in CS is already sufficiently attractive, for monetary and other considerations, that those who have a great potential and a passion for it already choose to pursue it.

So if we increase salaries a lot and this results in more people going into CS, I think it's pretty safe to say most of those additional recruits will be more in it for the money and less because that's what they should pursue, thus reducing the overall quality.

If programmer salaries went to 200k overnight, do you think the quality of undergrads would go up or down?


It would obviously go up or stay the same, following your logic. Even if the proportion of good programmers out of CS programs decreases there is no reason the real total number would go down.

[edit] If anything, the new influx of interested students would maybe counter a little the need for CS departments to dumb down the curriculum in order to stay above whatever arbitrary number. Maybe it would result in less JavaSchools. ;) [/edit]


I was speaking in relative terms, not absolute. I meant the the average quality of programmers would go down.


That is absolutely vintage Joel. And he's right.

Ray Ozzie and the rest of MS should have realized by now that the only thing that really works is building something. Give us something to criticize. Look at YUI. It's not great in places, but at least it works, and it there, and available to play with, and fun, and cross-platform.

It's coming to something when the most interesting thing out of MS is probably F#, and Photosynth. Aren't these from MSR?

What is the rest of MS doing?

[Personally I'd be glad if they finally got round to fixing all the damn non-resizable dialogs in their apps, which infest all MS software like cockroaches.]


It is absolutely vintage joel in that it is a FogCreek recruiting ad. Joel has mastered the art of using fanboyism as marketing. "Oh look -- Microsoft is doing something big! I'm sure it sucks! haha Come work for me"


Simon Peyton-Jones and his work on Haskell is very interesting.


He's also at MSR -- the folks at MSR are doing lots of very interesting work.


The problem with most synchronization systems I've encountered is that they're based on unification -- "one version to rule them all." Unification seems to be an optimization strategy, seen in all kinds of networks, from computer to political. History doesn't suggest it's a very good model in the long run, since it's so fragile. The Bible survived because so many people duplicated it, while all those single manuscripts in Alexandria, however divine, went up in smoke.

Duplication seems to beat unification. Just look at how Wikipedia and Google, writhing seas of duplication, kick the living shit out of closed taxonomies and hierarchal directories. Anand Rajaraman hit the nail on the head with his "more data beats better algorithms" observation, and I'd skew it here as "more copies beats better organization." I want to asynchronize my data, not synchronize it. The tricky part is making this model work at a personal level, across devices and yet not exposed to the world at large. I wouldn't put my money on MSFT figuring it out.


Maybe we just need to put all our data in git or mercurial and forget about all this other nonsense.


I yearn for the day when my cell phone runs git and has a single namespace for my data (including that maximum-length WEP2 key that I've typed into my iPhone twice).


The term "Killer App" has gotten brutally watered down. And y'all aren't helping.

From Wikipedia:

"a killer app is an application so compelling that someone will buy the hardware or software components necessary to run it"

Sorry, DropBox (while very, very well done) doesn't even come close to cutting it.

It doesn't hold a candle to Visicalc. Or email. Or Photoshop.


Or video games.


Or Winamp.


Would you buy a computer to use Winamp? Or, perhaps more fair today: would you switch OSs to use it?


No way. I use Amarok at home and love it. At work I have to use Windows, and used to be happy with iTunes - until I started having to update it every week (60MB download, no I don't want Safari, no I don't want to see the Quicktime icon, I'll check the box asking not to be propmted when there's a new version - oh, you're going to tell me anyway). Anyway, I thought I'd try Winamp again (I used it about seven years ago and liked it) - it doesn't seem capable of playing a CD without crashing. If anyone can recommend a free and/or open source media player for Windows I'd be grateful.


What version of Winamp did you use? There is a golden version: 2.91. Everything above is a perversion.

http://www.oldversion.com/program.php?n=winamp


I bought an iPod a few years back just because it has, in firmware, a program just like WinAMp that let me play CDs I ripped to my hard drive as well as stuff I could download from the Internet.

Is that close enough?


No, but I do run a Windows machine just for Winamp.

I have friends that do the same and I've also seen a number of restaurants in Vancouver (Rugby Club), Montreal (Bières et Compagnie), and Haifa (Stella's?) that use it too (among other places).


Or (dare I say it out loud)... Porn.


Worked for VCRs....


Again, would you BUY a computer to view porn?


Maybe not a computer, but I have it on good authority that a LOT of young males got internet access for porn, especially broadband internet access. The porn industry was streaming video on the net way before YouTube.


Interesting. I wonder why this is downmodded. It seem remarkably apropos to the discussion.


There is a kind of obsession here, one concerned with fabricating narratives and strategies for their own sake.

Bill Gates used every CES keynote in recent memory to go on about the "digital decade" and pose "in the year 2000" scenarios. Of course, this was all after The Road Ahead, a vision book which famously had a shorter shelf life than a bag of potato chips.

Apparently he's not the only one at Microsoft who suffers from this peculiar affliction. All these strategies for a digital millennium and manifestos for an online services marketplace or whatever are laughable. Particularly amusing is how they always find a way to drag every Microsoft business group into their vision. Suddenly, you're supposed to believe that Halo 3 is an embodiment of Microsoft's comprehensive cloud computing paradigm.

Kudos to Joel on calling them on it so entertainingly.


Synchronization is going to be really useful when the majority of applications moves online and there are no files to synchronize anymore. ;-)

Just another example of Microsoft denying the future. If they could sue the Internet for jeopardizing their current business model, they would have probably tried by now.


Exactly, or, to put it another way: right now synchronization is yet another way to share files either with someone else or with yourself, and there's already hundreds of methods for doing that, and once everyone starts using web applications exclusively, it'll be a non issue.


Web applications will not solve our synchronization problems

Example: You want to send a mail using Yahoo Mail where you attach a document created with Google docs. When you created that document you wanted to use an image from Flickr. That's 3 different services that needs to be synchronized. What happens when you add other web applications.

When/if people move to web applications, the synchronization problem moves with them.


I think you're talking about integration not synchronization.


It struck me after reading the article that the company who has solved synchronization is Apple.

All of the data people really care about is on their iPhone/iPod. Contacts, photos, music, TV shows, movies, email, web access. When you think of it, iTunes main purpose is syncing and organizing your media. And with iTunes Store seamlessly syncs a lot of the data people care about from the Internet, also (for pay movies and music, but a lot of free podcasts, too).

While Microsoft continues to try to solve the synchronization problem as an abstraction, Apple has actually created something everyone uses because it Just Works.


And interestingly, Apple isn't selling synchronization. They are selling products that use it, but only mention in passing the synchronization. Synchronization isn't a product, it is something you need for certain products.


To me the real Architecture Astronauts are the Enterprise Architects, who think that documenting in some 6-figure modeling tool how I order paperclips, and defining a paperclip SOA and sending EVERYTHING over a 8-figure ESB they bought from IBM-- now those are some space cadets!


>documenting in some 6-figure modeling tool how I order paperclips

are you suggesting that the execs should go and read the code that some intern wrote in order to figure out how their customers buy paperclips?


The file syncing issue CANNOT be addressed effectively as a proprietary, closed system. Maybe there are companies out there who have the fortitude to create some sort of framework that can remain open enough to engender enough pan-device support to make it useful to real people who happen not to want to be stuck in the windows (or mac, or whatever) environment on all there electronic devices.


Ok, but he's not pointed out a solution. I guess MSFT has lost the battle and solution is to admit it and they should work on their strengths. There is a whole lot of potential in there. I mean look at Vista & IE 7 ;( Even though .NET powers some heavy-traffic websites but the framework is still catching up. LINQ is somewhat cool but they're giving out MVC in (ahem) 2000 and 8.


Exactly, what is he really offering at his company to attract the top talent?

I think he is a pretty smart guy with a successful business - but I am not sure the work environment sounds interesting enough for some of the top grads. Who wants to work on the ASP -> PHP compiler they have, or write a bunch of AJAX?

Unless he has some luring new projects in the work like some sort of cloud based synchronization... :)


Yeah I think its a bit of an odd critique. Sure pie in the sky promises are just that, but it doesn't mean it's always a bad idea. Microsoft bob: bad, online file/data synch: good. Obviously the MS implementation is bound to fail for reasons circling the proprietary-lockin-nonstandard-triangle but the idea itself is killer. I am really digging dropbox for instance.


we beg to differ that sync/sharing isn't a killer app ;)


For me and the people I know, sync is a killer app for backups, but not for sharing.


that's because no one's made it really easy/reliable. our users (esp business users) love the easy folder sharing and many have stopped windows file servers as a result


I don't believe that you and Microsoft are suggesting the same thing at all.

My guess is you want to give everybody what programmers have been able to do for years with distributed VCS, publicly addressable computers and rsync. And presumably want to do it well enough that even programmers who could get it for free wouldn't be able to fool themselves that paying wasn't worth the convenience.

Now what Microsoft is doing is probably connected with there life-logging stuff. MSR has been going on for a while about how we'll never delete anything and every document and every phone call we make etc will be recorded and searchable. The mesh is presumably the infrastructure that all these Windows Mobile devices would use to make this seamless.

However this is insane, there are already more mobiles in Europe than people, and Microsoft can't even keep XBox Live running. Just have the devices query/talk to each other without getting some central server involved.


I wish you guys would include me in the beta! I've been tooling around with JungleDisk which hasn't been working (which sucks!). I'm a grad student so I have a lot of back and forth between school and my computer and I'm always syncing files back and forth through email (which is such a pain!). File syncing is a big deal for me. The fact that you guys do version control sorta by default is awesome. I've been thinking about how you guys do that, and I think I know how, but I'll keep it to myself as you probably wouldn't comment or confirm it anyway. (so nobody steals your thunder).


hah i have the same problem, signed up a while ago. Does dropbox work with linux?


Max! You don't have your email in your profile...Shoot us an email.


If this is how it works, then here's another shameless attempt to hasten acceptance into your beta program (I've also applied for registration by the regular means you provide :-). If Dropbox works as advertised, I promise I'll pay a monthly subscription fee. This is something I want.


I was thinking as I read this that the "syncing" killer app would likely come from an adjacent field, rather than being designed specifically for syncing. Either version control (git) or backup (DropBox)...


Well, you guys are actually solving a real problem. Especially since I'm not bored enough to maintain my own real-time backup system. Dropbox is very useful to me, even with just one computer.


Well, McCarthy correctly predicated sometime back ;)

"When architects get prizes, the people suffer."


This is laughable to me. I've muttered more obscenities trying to deal with synchronization problems between computers than with anything else I can think of.

I want all of my media everywhere. Is that so wrong?


You and, well, maybe everyone here and, uhm, maybe everybody at reddit and slashdot and then, well, nobody else.


just remote into your dtop with your lappy. if thats not enough, use SVN.


Speaking of the synchronization problem, Google calendar now syncs faultlessly with Outlook (my version is 2003) which makes both apps significantly more useful to me.

Go interoperability!


Hey Joel, look at me! I'll come work for you. I'm a young strapping rapscallion, and I made a python script to play ultimate frisbee FOR me!


"And dammit foosball doesn't play itself."

I dunno. With some spare parts and a few hundred lines of code, Trevor Blackwell could probably make it happen.



I don't read this guy that much, and (to the best of my knowledge) I haven't griped about his style.

I like Groove, at least until Microsoft bought it. I use it everyday and it rocks. Whether or not something is over-architected or not is beside the point: does it deliver value for my needs. Groove does.

You can make the case that it does a lot of stuff that I don't care about. So what?


'And dammit foosball doesn't play itself.'

Priceless


Hell no it doesn't.Its a full time job where I work!


I hate the last paragraph!


Just want to point out, this is dated April 2001.


http://joelonsoftware.com/items/2008/05/01.html

I guess if you omit the 2008 it does look like April 2001......................


Um, actually: "This item ran on the Joel on Software homepage on Thursday, May 01, 2008"


Oops. I guess I fail. I swear I saw a 1.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: