Live data from Hacker News

Notch, WebGL, Dart, and ramping up quickly

blog.tojicode.com

81–90 of 204 posts

Re: Notch, WebGL, Dart, and ramping up quickly

#81
post #46

Earlier quoted context omitted.

can you elaborate on what's so terrible about his coding style?

There are lots of problems with it. Here are a couple: He uses poor OpenGL practices, and sees poor performance as a result. He also designed the entire product in a way that makes it cumbersome to mod, without a consistent interface or a logical way for mods to work together. Modding Minecraft as a whole is one big hack. I'm more familiar with the networking side of things. The Minecraft networking protocol is a mes…

These all seem like issues that are obvious in hindsight but may not have been obvious at the time. It's much easier to look at an existing, established codebase and point out all the flaws that it is to anticipate all the future challenges. In other words, you're monday-morning quarterbacking.

Maybe Notch didn't start building it with the idea that anyone would want to mod it. Heck, maybe he didn't even anticipate that it would be popular enough to require great performance. If he expected the game to be played primarily by him and a few friends then he could forego performance for beefier machines.

If he started out trying to build a game that would need to be extremely easy to mod and be performant on millions of machines of varying performance capabilities, he probably wouldn't have gotten around to actually writing it in the first place. It's called over-engineering, and it kills more projects than anything else, IMO.

Re: Notch, WebGL, Dart, and ramping up quickly

#82

Earlier quoted context omitted.

No, he really is terrible. I'm dead serious. I am responsible for working with his crap all the time, and I probably know more about the technical workings of Minecraft than even he does. Notch writes terrible code.

Can you give a couple of concrete examples of why he's so terrible? Or at least the areas in which he is not strong. Because it's clear to me that Minecraft was a fun and stable experience from the end users perspective, at least when I bought it (which was probably a good 18 months after the initial launch).

I mentioned some in a response to a similar comment: https://news.ycombinator.com/item?id=6842944

Re: Notch, WebGL, Dart, and ramping up quickly

#83
post #19

Now, I haven't seen one line of Notch's code. I have no idea if it's well structured or spaghetti. I would make an educated guess and say that there's a lot of the basics in this project that have been ported over from the Minecraft or 0x10c code. This last point is rather unlikely I think. I spent more than one or two weeks worth of time watching the various screencasts you can find on twitch.tv of Notch coding (I f…

I've also spent time examining Notch's coding habits. He is a terrible, terrible coder. Minecraft was (and still is) an unoptimized, poorly designed piece of crap when he handed it off to the rest of Mojang. The DCPU-16 he designed had many flaws and his assembler for it threw out assembly convention. He makes very basic mistakes very frequently and his core designs are flawed. I say this as someone who has spent a c…

Notch is a very bad programmer

I despise this sort of single-dimension haughty evaluation of programming "goodness": It is garbage, and is the dismissive grenades that a particular type of maintenance programmer tosses to feel better about themselves as they try to feed the family with sloppy seconds.

I single out maintenance programmers because there is a stark difference between creating something out of nothing, and being the guy who looks at that something and -- with all that is laid in stone in front of you, all of those unknown lands revealed and detours and dead-ends made evident -- can say "Oh clearly you should have A->E->Z: What a dummy!".

All novel works can be improved in countless ways, iteratively. This is a given of software development, and the fear of having to go through this inevitable process has stopped most projects before they've ever begun.

"His failures have tangible reprecussions that have long plagued the Minecraft hacking community and Mojang itself."

There is so much irony in this statement. Do you even realize?

Re: Notch, WebGL, Dart, and ramping up quickly

#84

Earlier quoted context omitted.

I've also spent time examining Notch's coding habits. He is a terrible, terrible coder. Minecraft was (and still is) an unoptimized, poorly designed piece of crap when he handed it off to the rest of Mojang. The DCPU-16 he designed had many flaws and his assembler for it threw out assembly convention. He makes very basic mistakes very frequently and his core designs are flawed. I say this as someone who has spent a c…

> He is a terrible, terrible coder. I've had an idea brewing in my head for quite some time, and while I still don't quite have the words to express it completely, it more or less boils down to this: There isn't necessarily a correlation between being a good programmer and shipping a successful product. Now of course we can argue over the definition of "good programmer" and "successful product". I started as a hobby…

> Lately I've realized that having pristine, elegant code is NOT the goal. The goal is to ship software that people actually use.

It depends on the use case and business model of your software.

If you want to ship a single version of something then don't worry about code quality. If you're market testing and will get resources for a rewrite if the product takes off then again speed to market is more important than code shape.

But if you want to enhance the software or tune its performance then you need good code structure.

Re: Notch, WebGL, Dart, and ramping up quickly

#85

Earlier quoted context omitted.

So, uhm... how many blockbuster games have you shipped, just out of curiosity? Not an ad hominem attack. Just, curious, because someone with such confident opinions as yours about notch's abilities must surely have shipped a few.

> Not an ad hominem attack I don't think just saying that makes it true

It's not attacking a person to ask them to back up their qualifications to judge.

Re: Notch, WebGL, Dart, and ramping up quickly

#86
post #75

Earlier quoted context omitted.

> What kind of a person even idolizes someone for writing great code? Are we on the same site? I've been reading HN since it was called Startup News, and I have never felt such a disconnect before. > The Instagram founders didn't have a programming background Instagram could be worth a trillion dollars and I wouldn't give a shit about it. Show me the code. Satisfy me intellectually. Not everything is about money, and…

Beats me. I guess someday when you're an old man, right before you close your eyes for the last time, you can imagine all that cool code that you wrote, and say what a great life you had. You were a hacker. Steve, Larry, Notch, and the Instagram guys can know what they did made a difference. The world is a different place because they lived. They connected the important dots and hacked life...

> I guess someday when you're an old man, right before you close your eyes for the last time, you can imagine all that cool code that you wrote, and say what a great life you had. You were a hacker.

I'm also a researcher, and I like to think that the ideas I discover will outlast me and will make a difference.

Your implication is that those who think of software as a 'product' to be sold are making a difference, and those who think of creating software as its own reward are not. Maybe you are right. I just wish there was a place for those of us who appreciate the craft to hang out. Hacker News, for a long time, was that place for me.

Re: Notch, WebGL, Dart, and ramping up quickly

#87
post #19

Now, I haven't seen one line of Notch's code. I have no idea if it's well structured or spaghetti. I would make an educated guess and say that there's a lot of the basics in this project that have been ported over from the Minecraft or 0x10c code. This last point is rather unlikely I think. I spent more than one or two weeks worth of time watching the various screencasts you can find on twitch.tv of Notch coding (I f…

I've also spent time examining Notch's coding habits. He is a terrible, terrible coder. Minecraft was (and still is) an unoptimized, poorly designed piece of crap when he handed it off to the rest of Mojang. The DCPU-16 he designed had many flaws and his assembler for it threw out assembly convention. He makes very basic mistakes very frequently and his core designs are flawed. I say this as someone who has spent a c…

I'm hoping that one day, Minecraft gets completely open source and is ported away from Java. I've tried and failed to write a plugin for Bukkit and the whole ecosystem is horrible. When your modding toolkit involves importing craptons of JARs and decompiling the rest, something's really wrong.

Re: Notch, WebGL, Dart, and ramping up quickly

#88
post #75

Earlier quoted context omitted.

> What kind of a person even idolizes someone for writing great code? Are we on the same site? I've been reading HN since it was called Startup News, and I have never felt such a disconnect before. > The Instagram founders didn't have a programming background Instagram could be worth a trillion dollars and I wouldn't give a shit about it. Show me the code. Satisfy me intellectually. Not everything is about money, and…

Beats me. I guess someday when you're an old man, right before you close your eyes for the last time, you can imagine all that cool code that you wrote, and say what a great life you had. You were a hacker. Steve, Larry, Notch, and the Instagram guys can know what they did made a difference. The world is a different place because they lived. They connected the important dots and hacked life...

Have you read Stephen Levy's Hackers? I'm not sure Instagram would even exist without the pioneering programmers who started out on model trains...

Re: Notch, WebGL, Dart, and ramping up quickly

#89

Earlier quoted context omitted.

I've also spent time examining Notch's coding habits. He is a terrible, terrible coder. Minecraft was (and still is) an unoptimized, poorly designed piece of crap when he handed it off to the rest of Mojang. The DCPU-16 he designed had many flaws and his assembler for it threw out assembly convention. He makes very basic mistakes very frequently and his core designs are flawed. I say this as someone who has spent a c…

Sir_Cmpwn's assessment of Notch was harsh, but not wrong . Notch isn't in the same league as a John Carmack, for example. The most recent release of Minecraft saw massive changes to the underbelly of the game, all of which is being done by Mojang staff other than Notch. The game does have a ton of warts, especially where modding is involved, which can be traced to some of Notch's technical decisions. Does that mean t…

>especially where modding is involved

The modding API consists of decompiling the entire thing and monkey-patching it. Does anyone else see a problem with that?

It's such a fantastic game but it's really unfortunate.

Re: Notch, WebGL, Dart, and ramping up quickly

#90
post #77

Earlier quoted context omitted.

> What kind of a person even idolizes someone for writing great code? Are we on the same site? I've been reading HN since it was called Startup News, and I have never felt such a disconnect before. > The Instagram founders didn't have a programming background Instagram could be worth a trillion dollars and I wouldn't give a shit about it. Show me the code. Satisfy me intellectually. Not everything is about money, and…

It's not about money, it's about providing value. Beautiful code that solves the wrong problem is just broken, because it doesn't do what it sets out to do. I don't see much beauty in code that's broken like that. "For every complex problem there's an answer that's clear, simple, and wrong."

I don't disagree with what you are saying, but I think you are saying something different than the person I replied to.

To me, the statement "What kind of a person even idolizes someone for writing great code?" suggests that programming is not an art, not worthy of further consideration, a mere means to an end to whatever product to be sold. To me, that statement is like saying "Who even idolizes ? The guys who sold this art didn't even know how to paint!"

I am not saying that is an invalid viewpoint. I just think it's a weird viewpoint to have on Hacker News. For me, mathematics, code, etc is not a means to an end, but its own reward. To me, that is part of what it means to be a hacker. I wish there was a place where everyone felt the same way. Hacker News used to be that place for me, but the demographic has changed a lot. That is sad.

Post reply on HN