Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Larry Page and Sergey Brin Are Lousy Coders

Soulskill posted about a year ago | from the if-it-compiles-it's-probably-fine dept.

Google 204

theodp writes "Don't tell Business Insider's Nicholas Carlson about Santa and the Easter Bunny just yet. He's still reeling after learning that Larry Page and Sergy Brin are actually pretty lousy coders. That's according to I'm Feeling Lucky: The Confessions of Google Employee Number 59, a book about the company's startup days by Douglas Edwards. 'I didn't trust Larry and Sergey as coders,' Google engineering boss Craig Silverstein recalls in the book. 'I had to deal with their legacy code from the Stanford days and it had a lot of problems. They're research coders: more interested in writing code that works than code that's maintainable.' But don't cry for Larry and Sergey, Argentina — even if the pair won't be taking home any Top Coder prizes, they can at least take solace in their combined $50+ billion fortune. And, according to Woz, they certainly could have kicked Steve Jobs' butt in a coding contest!"

cancel ×

204 comments

Sorry! There are no comments related to the filter you selected.

Ideas vs. Implementation (5, Insightful)

intermodal (534361) | about a year ago | (#45299953)

The computing world works specifically because some people have ideas and others have the ability to implement those ideas. And the few who can handle both of those are not generally going to be capable businessmen. It is a rare individual who can excel in all three roles.

Re:Ideas vs. Implementation (1)

i kan reed (749298) | about a year ago | (#45300091)

Yes, but they had one idea of their own that launched Google. That's links-as-metadata idea of indexing. It was a good idea, but nothing since then has been "from the top".

Re:Ideas vs. Implementation (5, Informative)

intermodal (534361) | about a year ago | (#45300189)

Maybe nothing groundbreaking, but I am quite confident that they've brought more to the table than one idea over the years. Not of an empire-launching grade, but certainly reasonable, development-worthy ideas.

Re:Ideas vs. Implementation (1)

Anonymous Coward | about a year ago | (#45300299)

I remember reading once that the founder of CNN, Ted Turner, had a habit of going to meetings and pitching no less than a dozen ideas, most of which were rejected. But afterwards, only the ones that stuck would be remembered by everyone. So it would seem that it's better to toss a lot of ideas than to STFU because you are afraid of being rebuked (which of course works better for The Big Boss [tm] than for a humble desk slave, YMMV).

Re:Ideas vs. Implementation (1)

s.petry (762400) | about a year ago | (#45300223)

Come now, be fair. They had many different ideas with Google. Search and meta-data is of course the biggie, but they also had many other innovations. Hardware implementation and use comes immediately to mind. While HA was not new, Google came up with a very cheap and easy method for HA.

Re:Ideas vs. Implementation (4, Insightful)

i kan reed (749298) | about a year ago | (#45300593)

Larry and Sergy aren't google. Google is a collection of some of the best software engineers in the country(with most of their talent being wasted on getting more people to click ads).

Re:Ideas vs. Implementation (4, Insightful)

poetmatt (793785) | about a year ago | (#45300839)

I would disagree with the talent waste. While they are at google, yes, but their focus isn't really getting people to click more ads. A lot of interesting things come out of google:

search
google music
google maps
google voice
hangouts
g+
android
android nexus devices
ingress
google glass
that media player device thing
google fiber

I wouldn't say that "most" of their talent is in advertising.

Re:Ideas vs. Implementation (2)

war4peace (1628283) | about a year ago | (#45301515)

search, maps and Android, yes. Nexus devices, arguably. Glass, maybe in the future. Everything else was garbage IMO.
Oh and you forgot mail. Which I love.

Re:Ideas vs. Implementation (2)

ShanghaiBill (739463) | about a year ago | (#45301555)

A lot of interesting things come out of google:

Also:
Driverless Cars [wikipedia.org]
Robots on the Moon [wikipedia.org]

Re:Ideas vs. Implementation (2)

s.petry (762400) | about a year ago | (#45300979)

Larry and Sergy aren't google.

No shit! Where did I state that they were all of Google? I said that you were wrong that there was only 1 idea to start Google, and gave examples of at least 2 other ideas they had. When Google started, there was very little "click" advertising so you are trying to re-write history to fit your bias. When Google started the majority of ads were still pay-per page ads like the Newspapers.

Re:Ideas vs. Implementation (1)

i kan reed (749298) | about a year ago | (#45301075)

I was talking about how people's talent was being wasted today, not the pre-doubleclick history of google.

Re:Ideas vs. Implementation (2)

s.petry (762400) | about a year ago | (#45301143)

Yes, but they had one idea of their own that launched Google. That's links-as-metadata idea of indexing. It was a good idea, but nothing since then has been "from the top".

That is what you started with, and what I made a correction to. It is easy to claim "wrong" when you not only move the goal post half way across the globe, but time travel with it as well.

Re:Ideas vs. Implementation (1)

i kan reed (749298) | about a year ago | (#45301353)

What goalposts? What the hell? I'm not trying to set a threshold of acceptance for something.

Claiming a fallacious argument for an argument that isn't even happening is moronic.

Re:Ideas vs. Implementation (3, Insightful)

s.petry (762400) | about a year ago | (#45301487)

You really can't read a thread as a conversation? Let me help.

You: Yes, but they had one idea of their own that launched Google. That's links-as-metadata idea of indexing. It was a good idea, but nothing since then has been "from the top".

Me: Come now, be fair. They had many different ideas with Google. Search and meta-data is of course the biggie, but they also had many other innovations. Hardware implementation and use comes immediately to mind. While HA was not new, Google came up with a very cheap and easy method for HA.

You: Larry and Sergy aren't google. Google is a collection of some of the best software engineers in the country(with most of their talent being wasted on getting more people to click ads).

Me: No shit! Where did I state that they were all of Google? I said that you were wrong that there was only 1 idea to start Google, and gave examples of at least 2 other ideas they had. When Google started, there was very little "click" advertising so you are trying to re-write history to fit your bias. When Google started the majority of ads were still pay-per page ads like the Newspapers.

You: I was talking about how people's talent was being wasted today, not the pre-doubleclick history of google.

You were wrong to deny my first point, but instead of admitting you were wrong you make false claims. You end up at a completely different point than you start, in a completely different era! Good grief, I feel like I'm explaining the basics of communication to an autistic kid!

Re:Ideas vs. Implementation (1)

i kan reed (749298) | about a year ago | (#45301561)

Since I'm really confused by your statement, I'll address it as literally as I can. With regards to your literal "first statement"
"Hardware implementation and use" isn't a novel idea, it's just what programming is. I kind didn't even parse that as a meaningful thing to say.

Re:Ideas vs. Implementation (4, Informative)

swillden (191260) | about a year ago | (#45301205)

Google is a collection of some of the best software engineers in the country(with most of their talent being wasted on getting more people to click ads).

Actually, very few of Google's engineers are focused on ads, at all. I'd guess that between ad auctions, ad displays, ad billing and miscellaneous management and support UIs, maybe 10% of Google's 20,000 engineers work on ads.

You can argue that since the rest of the company is primarily supported by ads (90% of Google revenues are from ads) that all of the products built by all of the rest are "getting more people to click ads", but I think that's a stretch, and in fact that's not at all how anyone in Google sees it. In fact Googlers see it exactly the opposite: Google's reason for existence is all of the products we build. Ads are just a convenient way to pay the bills. Google doesn't even consider itself an advertising company. It's an Internet and mobile technology company which has found that ads are -- currently -- the lowest-effort and most scalable method yet found to fund large scale technology of the sort Google builds. Everyone would be fine with finding other ways to make money -- and in fact Google's non-ad revenues are consistently growing much faster than it's ad revenues. I think it's mostly the enterprise services business that has been growing like crazy.

Not that ads are inherently evil. I know some people disagree, and believe that ads are pure manipulation. Personally, I occasionally find ads informative and useful, when they tell me about interesting (to me) products which I didn't already know about, or had forgotten. I don't believe I'm manipulated to any significant extent by them, but maybe that's just because I haven't been wearing my tinfoil hat, and am therefore so utterly mind-controlled by so many different forces that I've lost all free will and don't even know it. Anyway, I think the way Google does ads is at least neutral on the good/evil to humanity scale. And it funds a lot of really awesome stuff.

(Disclaimer: I'm a Google software engineer. I do billing security systems, so I do support ads, but I also support Wallet, Play, pay-by-Gmail, etc. Nearly all of my daily work is focused on the emerging payments needs, mostly consumer-facing. Ads-related stuff drives maybe 1% of my work.)

Re:Ideas vs. Implementation (2)

gnupun (752725) | about a year ago | (#45300745)

Yes, but they had one idea of their own that launched Google. ... It was a good idea, but nothing since then has been "from the top".

What about:

  • Google Maps — Ability to smooth scroll a large virtual map compared to slow, blocky scroll of older maps sites.
  • Gmail — Huge amount of disk storage for free emails. Before gmail, free email services offered only 3-10 MB space, where you had to regularly clear old emails
  • Search Ads — Users get text ads based on what product/service they are looking for.

They are not as insignificant as google search, but still quite useful.

Re:Ideas vs. Implementation (0)

Anonymous Coward | about a year ago | (#45300863)

Clearly they stole the search ads idea from an old Nortel patent.

Re:Ideas vs. Implementation (1)

Anonymous Coward | about a year ago | (#45300111)

It's a non-existent indvidual who has *time* to excel in all three roles. This is just a refactorization of the old "cheap, fast, good -- pick at most two" mantra.

Re: Ideas vs. Implementation (2)

Dzimas (547818) | about a year ago | (#45300267)

Sometimes we write code quickly as a proof of concept. I enjoy the challenge of "that chip's not powerful enough to do what we need," because it means a day or two of fun to prove the assertion wrong. However, that code might not be pretty simply because my goal is a proof of concept, not a production system. Of course, ever once in a while pieces of that rushed code end up in a production device. At any rate, the early proto-Google systems were all about demonstrating that something was possible. And it worked - they attracted seed money and the rest is history.

Re:Ideas vs. Implementation (1)

cusco (717999) | about a year ago | (#45300549)

It used to be easier, when the technology was simple enough that one could know everything about a field. The Wright brothers or (much as I may loathe him) Edison would be good examples. The only one in the computer industry that I can think of is Bill Gates.

Re:Ideas vs. Implementation (1)

wagnerrp (1305589) | about a year ago | (#45301675)

There are a lot of people with ideas. There are only a few with a proficient enough programming/engineering background to understand whether those ideas are remotely possible, or a wide eyed pipe dream.

Yes, and? (4, Insightful)

bmo (77928) | about a year ago | (#45299969)

They're research coders: more interested in writing code that works than code that's maintainable.'

So you're basically criticizing them because they're good at prototypes instead of production parts? Seriously? The world needs both prototype engineers and production engineers. STFU.

Non-story/trollbait.

--
BMO

Re:Yes, and? (4, Funny)

Enry (630) | about a year ago | (#45300127)

I've worked with researchers in the biomedical field for 10 years. I'm sure he'd prefer to deal with Larry and Sergey's code over some of the horrible stuff I've seen.

As a teaser: I once saw a software package with a Makefile that was really a shell script to build the application.

Re:Yes, and? (5, Funny)

lxs (131946) | about a year ago | (#45300181)

I heard that Frank Lloyd Wright couldn't grout a wall to save his life.

Re: Yes, and? (5, Insightful)

Anonymous Coward | about a year ago | (#45300583)

And a lot of Wrights buildings are in shambles, or gone. Because he was an artist, not a builder.

Re: Yes, and? (1)

spire3661 (1038968) | about a year ago | (#45301569)

The mark of an artist is mastery of his medium. If his buildings dont last, i would say thats a huge mark against him. True architectural art is functional, practical and beautiful.

Re: Yes, and? (1)

Megane (129182) | about a year ago | (#45301573)

For instance, Fallingwater: [wikipedia.org] "...the contractor had indeed added reinforcement over Wright's plan; nevertheless, the cantilevers were still insufficiently reinforced." That thing was literally ready to fall into the water.

Though for what it's worth, some of the problems were from him designing beyond the then-known standard engineering principles.

Re:Yes, and? (1)

TheloniousToady (3343045) | about a year ago | (#45301733)

That must be why he made the Guggenheim [wikipedia.org] entirely round.

Re:Yes, and? (1)

gspec (2710477) | about a year ago | (#45300331)

I don't think they were criticizing. They simply stated what they observed, and sometimes that's needed to improve things. I have experienced a project where most all people are really smart but their code was a mess, and nobody said anything. I don't have to tell you what happened next. Like you said, in different words, the world needs different type of skills to keep the wheel turning.

Re:Yes, and? (1)

antientropic (447787) | about a year ago | (#45300611)

Or maybe he wasn't "criticizing" them but was just reminiscing about the old days when interviewed for this book?

Re:Yes, and? (1)

Opportunist (166417) | about a year ago | (#45300841)

Maybe, but the world NEEDS more production engineers and few prototype engineers, and it HAS a lot of people who wanna be prototype engineers and few who'd agree to be in production. Yet still in those areas the laws of supply and demand, and the price thereof, are upside down.

Re:Yes, and? (0)

Anonymous Coward | about a year ago | (#45300883)

They're research coders: more interested in writing code that works than code that's maintainable.'

So you're basically criticizing them because they're good at prototypes instead of production parts? Seriously? The world needs both prototype engineers and production engineers. STFU.

Non-story/trollbait.

--
BMO

Exactly.

We're also talking about the founders of a company over a decade old. Since when are either of those two anywhere near Google code these days??

This is like blaming Bill Gates for coding problems in Windows 8.

Re:Yes, and? (1)

scamper_22 (1073470) | about a year ago | (#45301167)

Unfortunately, the line is very much blurred in software development.

Prototype code quickly gets incorporated as production code if it works.

In some ideal world, prototype code never touches the real world. It is always rewritten by production engineers. Yet, the fact that their prototype code is being maintained suggests otherwise as it is in most places of software development.

Write it once then write it again (1)

presidenteloco (659168) | about a year ago | (#45301265)

In novel writing, like in programming of innovative things, you should write it once, then write it again, as well as make a series of incremental rewrites in the second version.

You have different priorities the first time round. Get the most difficult core algorithm or core concept things implemented fast, to learn fast what's wrong with them.

If you were a really really good programmer, you might try to build in generality, modularity even in that first go around, but you would have to make sure it wasn't locking in half-baked concepts. That's why old AI programmers loved LISP. It lets you build some of the generality and modularity, encapsulation, in all the way along the process from exploratory prototype, but in a way that's way easier than in say Java or C++ to tear apart and fundamentally re-factor. Lots and lots of tiny functions, each one in a way its own type checker and complexity hider.

Unfortunately, economics of the software industry often dictates that hurried prototypes get propped up and lipsticked into production code.

The tragedy of the spiral development model is you almost never get to go around the spiral more than once, or if you do, it's done too late and the second iteration is then way too expensive. At least Google, as an exception to the rule, had the resources to do it again, better, several times, valuing quality over schedule in each subsequent round.

Re:Yes, and? (0)

Anonymous Coward | about a year ago | (#45301765)

They're research coders: more interested in writing code that works than code that's maintainable.'

So you're basically criticizing them because they're good at prototypes instead of production parts?

Indeed. As a mathematician/algorithm hacker with no CS background who never took a CS course, I can appreciate hacking to get the job done. That said, I would have been much better off to have taken some CS work so i wouldn't have to invent the wheel - b-trees. linked lists, etc. In that long list I must include maintainable code (one can write reasonably structured FORTRAN code, and I learned too do so - but damn how much easier life became with Pascal and C!) Still, some of my best work was done while writing crap code.

Normal for PhD students (5, Insightful)

Sir_Sri (199544) | about a year ago | (#45299971)

That's pretty normal for PhD students.

Most of us are aware of better coding practices, but getting things done on academic schedules tends to result in whatever can be done before reading week or before tuition is due or the like.

Re:Normal for PhD students (5, Funny)

rubycodez (864176) | about a year ago | (#45300055)

and in the business world, with salesmen selling product that hasn't been completed yet, let alone QA'd, there's no difference

Re:Normal for PhD students (1)

SJHillman (1966756) | about a year ago | (#45300125)

There's a big difference between an academic "end of the world" deadline and a business "we can patch it later" deadline.

Re:Normal for PhD students (1)

Anonymous Coward | about a year ago | (#45300397)

No.. neither of those are even remotely "hard" deadlines for delivering code.

"miss once every 2 year launch window to Mars" is a hard deadline; no marketing will get you around it; no "i guess I can do another semester to get my degree" will get you around it.

Re: Normal for PhD students (1)

O('_')O_Bush (1162487) | about a year ago | (#45300821)

I fail to see the difference between waiting 6 months and waiting 2 years. A harddeadline is now or never. Your example is not that either.

Re: Normal for PhD students (0)

Anonymous Coward | about a year ago | (#45300995)

I fail to see the difference between waiting 6 months and waiting 2 years. A harddeadline is now or never. Your example is not that either.

If the NASA project is funded based on hitting this launch window, then there will be no money to pay the hundred or so people for two, eight, or fifty years in order to make the next launch window. Project aborts and everyone goes home.

If a student needs one more semester, even if there's no stipend or tuition reimbursement for him, he can probably pay for that semester himself or through loans.

Commercial projects? If a company's budget is so tight that missing a launch deadline means people stop getting paid, then that company has already failed and is only waiting for the accountants to recognize it. Commercial 'deadlines' are a lot more like graduation deadline than research deadlines.

Re: Normal for PhD students (1)

0123456 (636235) | about a year ago | (#45301373)

If the NASA project is funded based on hitting this launch window, then there will be no money to pay the hundred or so people for two, eight, or fifty years in order to make the next launch window. Project aborts and everyone goes home.

Has that ever actually happened?

While it doesn't have a specific launch window to hit, JWST is years late and billions over budget (seven years and four times its original budget, according to Wikipedia) and no-one's been able to cancel it yet.

Re:Normal for PhD students (0)

Anonymous Coward | about a year ago | (#45300829)

How about an "I guess we can launch in 2 years."
Will that get me around it? I think it will.
Nothing is going to happen if you miss a launch window to Mars.
Sure, you'll have a billion dollar robot sitting in a warehouse for 2 years. But who cares.
A real hard deadline would be "we need a new heart for this patient in 5 minutes, or he'll die."

Re:Normal for PhD students (0)

Anonymous Coward | about a year ago | (#45300899)

No.. neither of those are even remotely "hard" deadlines for delivering code.

"miss once every 2 year launch window to Mars" is a hard deadline; no marketing will get you around it; no "i guess I can do another semester to get my degree" will get you around it.

Another semester that costs $40,000 !!?
Yeah right

Re:Normal for PhD students (1)

Sir_Sri (199544) | about a year ago | (#45300941)

There is a bit.

We had a grad student get charged 3000 dollars in tuition (money she didn't have) because she submitted the final corrected version of her thesis wrong in the computer system (she created it as a new thesis rather than as an update to the existing submission), She didn't realize this problem for a full 40 minutes, and by that point it was 00:30 hours. She fought for a couple of weeks with the administration until finally the dean overheard her arguing with someone, asked for an explanation, shook his head, and magically the 3000 dollar fee disappeared. But she wasn't going to get her PhD until she paid the money otherwise.

A lady I started my Masters with had a supervisor who retired and moved to australia. She was told about 10 months in advance this was going to happen. But her project didn't get done, so... she had to start over with a new supervisor on a new project. (There is and was a whole lot of the university screwing her on that one).

The big difference I found is that in business, your first priority is business. If you're on a project and you get moved to something else because of an emergency no one expects you to have completely the first project at the same time. In academia, not so much, well, not as a grad student anyway.

Re:Normal for PhD students (1)

Megane (129182) | about a year ago | (#45301587)

Obligatory mention here that PhD stands for "Piled higher and Deeper".

Typical (5, Insightful)

Virtucon (127420) | about a year ago | (#45299981)

I've always seen software engineers point fingers at other engineers and say that their work sucks. It's the one thing that remains constant in this industry and it's no different from any other competitive field. Most of the time however the guys pointing the fingers have more skeletons in their closets in terms of bad code and use it as a deflection mechanism. Sure, there are incompetent coders but they usually wind up moving into management or the fast food industry.

Re:Typical (3, Funny)

Anonymous Coward | about a year ago | (#45300069)

Years ago, I was changing the architecture of some code and I commented to someone else, "This isn't so bad. The guy who wrote it did a really good job. The code is concise, easily understood, and well commented. I'll have this done ahead of schedule!"

Other guy, "Hmmm. That coder was not known for his ability."

Me: "Why?"

OG: *silence*

Then I met the guy.

He was this good looking 6'-ish dark haired athletically built Québécois - who had no problem attracting the ladies.

I mean really - MALE programmers being catty?

Re:Typical (3, Insightful)

Nerdfest (867930) | about a year ago | (#45300141)

I've looked over soem code and said good things about it , then had the coder say they actually just copied some of my old code they found. I've also found older code of mine that I wouldn't pass in a code review in some cases. Hopefully we all learn and actually get better, setting a higher bar for ourselves. Sometimes it's hard to keep that in mind when we apply that bar to others.

Re:Typical (0)

Anonymous Coward | about a year ago | (#45301221)

When I used to write code on more than one occasion I found some code I wrote, and either it was in an old window or something, and rereading it I thought, "Wow, this person can write some pretty damn good code". Not knowing I had originally read it.

Back before I went AC, on slashdot, I've also come across my posts and thought, "Wow! I agree with ever word!" Then realize I wrote the post.

Moral of the story, I'm self absorbed and at times I even impress myself.

Re:Typical (4, Funny)

Daniel Dvorkin (106857) | about a year ago | (#45300155)

Sure, there are incompetent coders but they usually wind up moving into management or the fast food industry.

Apparently Page and Brin chose Door #1. That worked out okay. ;)

Re:Typical (0)

Anonymous Coward | about a year ago | (#45300327)

Perhaps. However, having dealt with a few PhD's over the years. Many have very poor coding skills. Along the lines of 'did you read the documentation?', poor skills. I have also dealt with those who have outstanding skills in it. The difference is usually amount of time they spent coding.

Learning to code well is usually a learned skill, one that takes lots of practice. The fact that these two basically went from school to running a large company and they have bad coding skills does not surprise me. They didnt spend 2-5 years learning it the hard way. They hired people to do it.

The funny ones are the ones who turn into salesmen. They find something in some academic paper then sell it as if they have found the mother load of gold. They usually seem to get a bit mad when I read their references and then figure out what they did. Had one who read a well known graphics book of the time and present his algorithm as something he came up with. It was kind of funny how he reacted when I recognized it and starting asking 'which of the 3 books did you get it out of?'.

Re:Typical (4, Funny)

Sponge Bath (413667) | about a year ago | (#45300747)

...moving into management or the fast food industry.

That explains the burger I got the other day. It was piled so high, there was a stack overflow.

This book came out years ago (0)

Anonymous Coward | about a year ago | (#45299989)

What in the world is the moderator thinking?

Well, if nobody knew, I guess it's still news.

Fanboi noise (0)

Anonymous Coward | about a year ago | (#45300011)

More prayer and praise at the alter of Google. Wow. Just wow.

How odd... (1)

Sait-kun (922599) | about a year ago | (#45300019)

Their code wasn't up to par with business standards while they where still in uni.

How odd... who would have thought that such famous people would have to learn things as well, I'am shocked!
Here I was thinking that unless you where born with l33t programming skills and your first words are in binary you can never make it in the world.

But seriously..

Most famous people in business are not where they are now because they started out especially good in their field, they became who they are now because they had original idea's and worked endless hours to make it possible.
And if you're working on your project in your parents basement you usually don't worry about how to maintain your code as long you understand how it works.

This is something all coders go through at some point.

Think that's bad? (1)

Anonymous Coward | about a year ago | (#45300025)

Some early facebook code (in perl) was released a couple days ago. SQL injection city! Connecting to a database name stored in a cookie!

Almost makes SLASH look robust. Almost.

Just like all old code (2)

Hentes (2461350) | about a year ago | (#45300045)

'I had to deal with their legacy code from the Stanford days and it had a lot of problems. They're research coders: more interested in writing code that works than code that's maintainable.

I don't think it's fair to criticize old code by today's standards.

Bill Gates was a lousy coder too (3, Insightful)

Junior J. Junior III (192702) | about a year ago | (#45300095)

For a lot of these mega-successful people, it's not the beauty of the code, or the maintainabilty of it. It's having the idea that software can do something, that this something is valuable and can be used as an engine drive profits, and then getting there first. Making it as good as it can be comes much later, if ever. Seemingly not at all if you're Microsoft. Not being able to code doesn't mean that much.

Re:Bill Gates was a lousy coder too (1)

DavidHumus (725117) | about a year ago | (#45300239)

I've heard that he was actually a good coder but have no citation.

his BASIC interpreter worked first time on Altair (4, Informative)

peter303 (12292) | about a year ago | (#45300259)

And he didnt even have access to an 8080 CPU while writing it. He wrote a 8080 simulator on a Harvard computer. Punched out on tape and sent Paul Allen to New Mexico to test it. This impressed me.

Who owns the software when you use Harvard's tools (1)

Anonymous Coward | about a year ago | (#45300457)

If billg were working for most USA companies, and used the machine at work to do this side project, they'd own a "shop right" to use it.
These days, at most USA universities, the university gets the rights... If the university spent any federal government funds on that computer, then "government funds were used by an academic institution in production of intellectual property" so Bayh-Dole comes into play, and the university has the rights to it; the government has a "royalty free nonexclusive license for government purposes" and the student may or may not share in that. No amount of university/student agreements or policy is going to change that.

So we have the interesting scenario that if pushed.. the US Govt might have rights to Google. Stanford accepts government funds and has used Bayh Dole in the past (this came up recently in Stanford v. Roche).

Re:Who owns the software when you use Harvard's to (1)

larry bagina (561269) | about a year ago | (#45300687)

The NSA has right to Google. Even if Google doesn't know it.

Re:Bill Gates was a lousy coder too (1)

Megane (129182) | about a year ago | (#45301687)

When I was much younger, I disassembled the Level II BASIC on my TRS-80. Not bad code at all, and I think I found only 35 bytes or so (out of 12K) worth of not using Z-80 JR instructions and other minor silliness. It's the reason I like to say that Bill Gates taught me assembly language, or at least 8080 assembler.

The code was however strictly 8080 code aside from the JR instructions and maybe a couple of shifts/rotates, and didn't teach me any cool tricks about using the Z80. (Looking at some C compiler generated Z80 code a few years ago really blew my mind in some of the things it did, though it was still mostly rather crappy.)

Otherwise coding is boring. (1, Funny)

metrix007 (200091) | about a year ago | (#45300135)

My code is generally pretty ugly...because I don't care about maintainability, or even at times efficient.

I care about solving a problem, as it is a challenge. That's it.

Improving efficiency, making the code look nice, documentation...all these things are boring and I'd rather not waste my time on them.

And that's what most of coding is.

Re:Otherwise coding is boring. (1)

ebno-10db (1459097) | about a year ago | (#45300213)

Maybe I'm falling for a parody, but ... for what type of application and in what environment do you write code?

Re:Otherwise coding is boring. (2)

retchdog (1319261) | about a year ago | (#45300427)

fwiw, I feel the same way as metrix007. The application is statistical computing, and the environment is typically R with some C for non-vectorizable loops and such. I write in emacs.

The thing is, not everyone who codes is a coder. If your job is to write maintainable software, generally to other folks' specs or ideas, over a period of months then, yeah, you'd better play nice. That job sounds like hell to me, and I'm glad I don't have it.

95% of the code I write never gets re-used, because the idea it was implementing turns out to suck, and it's hard to know in advance. It makes a lot more sense to just rewrite from scratch the 5% that ends up useful or interesting to other people.

Re:Otherwise coding is boring. (0)

Anonymous Coward | about a year ago | (#45300261)

Note to self: Do not hire matrix007

To everyone else, the google boy's can code circles around you all.

Re:Otherwise coding is boring. (0)

Anonymous Coward | about a year ago | (#45300301)

It only starts to hurt when you want to expand and/or debug your code and it's difficult or impossible to do if your original code was a mess. Not that I have ever done that mind you.. it always works correctly the first time. Doesn't yours?

Re:Otherwise coding is boring. (1)

h4rr4r (612664) | about a year ago | (#45300325)

Those things are sometimes more important that getting it working. No point in having a working solution if it can't be maintained. Might as well take more time to get it working and have efficient, good looking code with great documentation.

Those things are boring, but that is why it is called work and not play.

Re:Otherwise coding is boring. (1)

jkflying (2190798) | about a year ago | (#45300699)

In science a lot of code is only used once-off to get results and prove that the idea is valid. Maintenance on something that nobody will ever look at again? Why?

Put another way, often code is the means, and not the end.

Re:Otherwise coding is boring. (1)

h4rr4r (612664) | about a year ago | (#45300763)

In science yes, the other 99% of coding done for pay is not like that.

Re:Otherwise coding is boring. (1)

JaredOfEuropa (526365) | about a year ago | (#45301269)

Even outside of science, there's a demand for such code. Not much, because many managers feel that all coding projects have to be firmly embedded in a strong project management framework, and that support has to be arranged and ITIL-ized down to the last detail.

My current client understands that this is not always necessary. Get a clever guy to write some crappy code that works, and use it for non mission critical stuff. Is there support? No, if he wants it fixed or changed, he has to get another clever guy in to do the work. Sounds like an awful way to use code, but all this while the guy is deriving a great amount of value from this software, while I'd say his costs for building and maintaining it are less than 1% (yes, 1/100) of what a full blown development project and support structure would have cost (yes, including hidden costs). And what if he can't find a clever guy to fix his shitty software? In that case he'll have to make do without... (which is why you use it for non critical applications only).

There are of course plenty other cases where this approach wouldn't be optimal. But much as many coders and managers around me hate to admit, sometimes this is a cost effective way of doing thing. Sometimes it is the only way a certain piece of software will see the light of day, because it'll be too expensive otherwise.

Re:Otherwise coding is boring. (1)

pak9rabid (1011935) | about a year ago | (#45300349)

I care about solving a problem, as it is a challenge. That's it.

Writing code such that it does what you need it to and is easy to maintain can be a fun problem to solve...at least for me.

Re:Otherwise coding is boring. (1)

pak9rabid (1011935) | about a year ago | (#45300363)

Shit..I too probably have fallen victim yet again to parody.

e4? (-1)

Anonymous Coward | about a year ago | (#45300243)

of reality. Keep SurveyS show that

coding is 20% at a large software company (2)

peter303 (12292) | about a year ago | (#45300285)

I work for one. In the startup stage maybe 50% or more of the work is coding. But then you ad sales, managers, testers, corporate, documentation, yada, yada.

The needs of the business (2)

royallthefourth (1564389) | about a year ago | (#45300305)

more interested in writing code that works than code that's maintainable

That's how business works in general. You want to write good code, but deadlines and shifting goalposts turn all your best plans into a swamp.

Re:The needs of the business (1)

phantomfive (622387) | about a year ago | (#45301019)

If shifting goalposts turn your plans into a swamp, then your plan wasn't flexible enough to begin with. Goalposts always change, make sure your code is flexible (note: flexible is not the same as generic).

If you write bad code because of deadlines.......well, nothing will make you miss deadlines faster than writing bad code. You can do better.

eye of the beholder (1)

nten (709128) | about a year ago | (#45301329)

Maintaining and extending software is *always* hard. If abandoning concepts such as minimizing coupling, or hiding data make the design/implementation easier, then do it. Code that tries to adhere to these best practices when the problem space makes it difficult is consistently horrendous to extend and no easier to maintain. Not all problems can be partitioned out into neatly abstracted uncoupled cohesive realms of responsibility. Beauty is code that works well and is easy to extend, not code that is easy to understand. The latter is often impossible despite all our best efforts.

Full disclosure, I mostly write research code now, and my observations are based on over a decade of production coding experience that is probably not representative of normal business/web software.

Reminds me of a story... (4, Interesting)

fldsofglry (2754803) | about a year ago | (#45300329)

I saw part of a Robert Kiyosake (Rich Dad, Poor Dad) program (infomerical?) on PBS one day. He apparently had a woman come up to him and say that she was trained academically in writing and was perplexed at how she, being a good writer, was unable to achieve monetary and sales success. She then pointed out that she didn't think he was a very good writer.

He responded by telling her that he went to school for sales and not writing. He then told her to look at his book and it how it says "Best selling writer and not best writing writer".

I don't know...kind of seems relevant here in that well written fill in the blank has little to do with monetary failure or success

Disclaimer: I have never read one of Kiyosake's books, so I don't know if he mentions this in one of them or not, but I thought it was a pretty insightful.

Re:Reminds me of a story... (1, Informative)

glennrrr (592457) | about a year ago | (#45300509)

My wife asked me to read Rich Dad, Poor Dad, and he is, indeed, a pretty mediocre wordsmith.

Re:Reminds me of a story... (1)

fldsofglry (2754803) | about a year ago | (#45300731)

Ha, good to know! I certainly won't look to him for his writing abilities. And the content? Was the book helpful?

Re:Reminds me of a story... (0)

Anonymous Coward | about a year ago | (#45301009)

Reading this book (especially in isolation) is more likely to result in financial ruin rather than success. Also, I'll save you the time and summarize the highlights:

* if you're going to take financial risks, take them while you're young
* today's luxuries are tomorrow's necessities --- be maximally frugal while you're young

That's it. The book also contains some other material that seems to imply that everyone should invest in real estate and that the author is quite insecure about his intelligence and like to take this out on "academics".

Re:Reminds me of a story... (1)

phantomfive (622387) | about a year ago | (#45301065)

I read it, the story was in there. I found it to be a really good book. I wouldn't say that it has the 'secret' to wealth (which is basically a combination of hard work in the right direction and luck), but it does discuss a number of things that could make it harder for you to succeed if you aren't aware of them.

One of the things I learned from it was, "the biggest financial mistake you can make is to think you are working from someone else." Now when I go to work (even when I worked a lousy job like construction), I am focused on what I can learn to help me increase my earning power in the future, rather than focusing on the exact dollar amount I am making right now, or complaining about my bosses or whatever.

Re:Reminds me of a story... (1)

GodfatherofSoul (174979) | about a year ago | (#45301007)

Ain't this the truth. Lots of books get hyped. That 50 shades of grey book is all over the news and every single person I've heard give an opinion of it said it was poorly written.

Spaghetti Code (0)

Anonymous Coward | about a year ago | (#45300407)

Is the most delicious of all code.

Re: Spaghetti Code (1)

Anonymous Coward | about a year ago | (#45300853)

The FSM approves of this message.

Summary (0)

Anonymous Coward | about a year ago | (#45300665)

Skilled researchers produce good research, then start a company based on the results and hire skilled software engineers to produce good software engineering.

Somebody finds this shocking.

Someone else is shocked that someone finds this shocking.

Someone writes to slashdot explaining that someone is shocked about someone finding this shocking.

BusinessInsider (0)

Anonymous Coward | about a year ago | (#45300727)

Is garbage, why does anyone link to that?

Of course! (0)

Anonymous Coward | about a year ago | (#45300921)

I wouldn't expect Ford to know how to assemble an engine.

I wouldn't expect Oppenheimer to know how to operate a centrifuge.

I wouldn't expect Ray Kroc to know how to refill the Coca-Cola syrup.

The article is fine on its own; it serves as a great doctor's waiting room tabletop article. Slashdot, on the other hand, need not publish it as news.

I wish I had students like this! (5, Interesting)

Anonymous Coward | about a year ago | (#45300957)

I am a biologist working with computers (statistics, bioinformatics etc). My main problem with CS students is that they are more concerned with frameworks, coding principles, version controls, choice of the right language than whether their code actually works.

Biologists rarely get the things right. I had a brilliant student who came up with a new algorithm and actually discovered something new (in biology), but the code was an awfully coded Perl program without a single function declaration. But it was correct and produced interesting results. Contrast that with a CS student who spent three months of his thesis on building a Java framework for an algorithm that he did not come up with and produced a shiny tool that in the end turned out to be useless.

You can find people who know how to read instructions (e.g. SVN manual) and produce clean, reusable, maintainable code by the dozen. Finding the people who have new ideas -- that is the hard part. Even if their code sucks, if their thinking is right, there will be money to pay a self-rigtheous CS student who will, in his words, "clean up the mess" (but will not otherwise come up with anything substantial).

So maybe LP and SB are lousy coders. But then, they are great hackers.

I'm sure they'd admit as much (5, Funny)

tobiasly (524456) | about a year ago | (#45300983)

I remember reading an interview with one of them several years ago (I believe it was Brin), where they talked about the original homepage. At a time when other search engines were cramming as much crap onto their homepage as possible, Google stood out for being very minimal and serving up "just results" very quickly.

He said they were amused when people gave them compliments for taking such a bold move and assumed it was an intentional departure, but in reality they just didn't know HTML and cobbling together a single form and crappy logo was pretty much all they could manage (or were interested in).

beat this (1)

deodiaus2 (980169) | about a year ago | (#45301071)

After quoting a time schedule and costs, my previous manager once told me that "[He] doesn't know how to do that task nor understand the technical issues but doesn't think it should take or cost that much!" I guess if you can buy MS Word for $700, that is the ball park for any software task. I wish I had told him that he needs to buy a copy of MS Word and his problem is solved.
Unfortunately, most workers in the US revere top level executives as some sort of business geniuses. Call me "anti-business", but I believe most were lucky that they got in when the going was good and managed to hold on. I remember reading about William Penn (who at one time owned the land which became Pennsylvania). He leveraged himself too much and went bankrupt and died penniless. Since that time, our bankruptcy laws haven been changed to protect the wealthy and given them a chance to "reorganize" and keep "creditors at bay" until they get their finances in order. A case in point is Donald Trump who should be working selling hot dogs on 57th since the mid-1980's. Listening to him for half an hour on his "reality show" makes me want to puke. It would be good if that was his occupation, but his show was just a way to stay in the limelight for a bit longer.

Re:beat this (0)

Anonymous Coward | about a year ago | (#45301781)

>William Penn
>went bankrupt and died penniless
Sorry, I just had to point out the penn...er, pun here.

I ship. (2)

hajo (74449) | about a year ago | (#45301093)

I am typically the first guy to do an implementation. After that a bunch of guys come in and they refactor the code.
I pass all acceptance tests. (Typically a cucumber suite). The people I work with know this.
When I am contracting time is money. I don't refactor unless you pay me.
I can refactor that code as well as anybody, but by that time I'm typically called away on another project.
(My last assignment was writing a REST API while in Vietnam 5 subcontractors were writing a mobile app against my API on a nightly basis. That was a major pITA since they were 12 hours ahead of me. I prefer working against the West coast, three hours ahead is pretty much ideal.)

Now after I'm done In typically think of a much more elegant way of doing things, but by that time I'm usually on something else.
One thing: My hastily written code is nicer today than my refactored code was 5 years ago. So I guess I am improving.

People that hire me typically couldn't care less about what tools I use, or how elegant my code is.(Unless you work for a software company; I deal with a lot of businesses in totally different fields that need an issue solved, and need it done quickly.)

Re:I ship. (1)

JaredOfEuropa (526365) | about a year ago | (#45301489)

This. I work in a similar manner: more fun much better pay and in the end the client pays less than what he would have for a more traditional development project.

All coders start that way (4, Insightful)

minstrelmike (1602771) | about a year ago | (#45301155)

I don't know of any coders who started off writing easy to maintain code.
Most of the coders who do _write_ code that is easy to maintain only do so after having to come back a month or year later and revise code they themselves have written. /* revising other people's first draft of code just makes you over-confident that you are better than they are when that probably isn't true. Compare first drafts to first drafts, not to final code after all the bugs have been worked out and the customer has finally started understanding his own requirements */

There are even good business reasons not to worry about maintenance, such as if the product doesn't fly, then maintenance of it is moot. And if writing easy-to-understand code slows down getting the product out the door, don't do it.

Lousy? (3, Insightful)

scottbomb (1290580) | about a year ago | (#45301389)

I wouldn't call the guys who wrote the best search algorithm known to man "lousy" at what they do. Perhaps unconventional, but certainly not lousy.

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>