malphigian

0x10c -- Next little number from Mojang

Recommended Posts

Huh, there really are no good programmers at all?

Not quite. The thing is, good programmers ship. If you expect everything, from design to implementation, to be perfect (or even close), you'll never ship.

This code can be a bit messy, but we'll ship three weeks earlier. This isn't optimized, but eh, it's not on a critical path, so it's not worth the time. This code is a mess, but structuring it too rigidly will leave little room for experimentation. And so on.

So there's a compromise that every developer needs to make. We all do it differently, some better than others, but for the most part if a developer ships, that earns my respect.

As Erkki pointed out above, "the perfectionist guy" is the one everyone perceives to the be the bestest developer, but their work is worthless because it never ships.

Except Carmack, of course. That man is aces at everything.

Share this post


Link to post
Share on other sites

There's a difference between allowing imperfections to allow a decent release date and coding something that brings modern computers to their knees because it's poorly made.

Share this post


Link to post
Share on other sites
This code can be a bit messy, but we'll ship three weeks earlier.

And can be thrown out of the window 1 month later because it's unmaintainable, but not after wasting 2 months to mend a butload of issues that pop up after shipping.

But I agree, being a perfectionist means you will never ship. Develop and design software with (drastic) change in mind, and keep your stuff readable (readable as in: you can understand the intention of the code by looking at it).

Share this post


Link to post
Share on other sites
Wow, I didn't know Rovio had published that many games! Still, when saying "first game" I was referring to Notch specifically – Minecraft is his first (and only) commercial game, no? Anyway, there's nothing wrong with being successful – even on your first attempt!

he worked on other stuff, but not as a sole programmer:

Professionally he had worked as a game developer for King.com for over four years, until 2009. Afterwards he worked as a programmer for Jalbum. He is also one of the founders of Wurm Online, although he no longer works on this game.

Agreed, it's great! The barrier of entry to a real games market has nearly tempted even me to put out a little thing.

definitely. I'm charged up enough after Molyjam that I'm going to try and jam something for Ludum Dare 23 as well.

Yup, it sounds like a terrible idea, though I probably said the same thing about Minecraft when I first heard about it, and look how that turned out. I guess we'll see whether my admittedly uninformed one-hit-wonder intuition proves correcty.

I think Minecraft was different. it was an iteration -- a deep, elaborate iteration, to be sure -- on building blocks, that combined enough mechanics and "room to play" that it could be as "mechanically rich", in a manner of speaking, as Lego and imagination, with the ease-of-sharing of bits on a wire.

there have been a lot of trading games over the history of commercial gaming (Exile being the elephant in this particular room), but I don't think what people were aching for was an open world you had to pay continually for access to, and developing assembly language for an in-game computer that's thirty years out-of-date.

but I could be wrong, and by next year we might all be posting on the Idle Forums through virtual index cards pinned to a corkboard in a coffee shop on Betelgeuse IV.

Also, let's not forget we know basically nothing about the game at this point, and that so much has changed so much since Minecraft was announced – it'll be interesting, to be sure. Whether it fails or succeeds, I'm certain it will be spectacular!

it'll definitely be crazy, yeah.

Me neither, but I think that's mostly from my feeling sad when peering, sweaty and proud, out of my lame half-finished, half-assed underground fort full of nothing special and see everyone else built amazing statues and fully working Gameboy emulators.

to me, it's that Minecraft feels like an oddly restrictive medium to build anything in. the code I want to write isn't conducive to circuits made out of redstone and torches -- I'd much rather just use C# and a text editor. I'm not super ingenious as an architect or sculptor, but the things I want to build, I'd much rather just use Maya or SketchUp.

I hate to compare Minecraft to FarmVille, but Ian Bogost's rant about "shit crayons" applies for me here. it's a space for creativity, but that's just because humans are creative -- Minecraft doesn't enable any of that, beyond perhaps giving people game-mechanical prompts to guide the creative impulses they wouldn't be able to focus otherwise.

and, on the flip side, it's not a super-compelling game in the sense of "a thing you can play through" to me (and wasn't really a game at all for a long time.)

I can understand why people like it, but meh.

Share this post


Link to post
Share on other sites

Walking around in a Minecraft world is far more interesting and evocative than loading up a bunch of SketchUp files that people have made, or browsing somebody's gallery of Maya work, though. I think that's why it's meaningful and important. I don't even have to create anything in Minecraft to enjoy it. I can just experience a place.

Share this post


Link to post
Share on other sites

yeah, I get where you're coming from, and I think I'd get something out of experiencing a place the same way.

but when I build things I don't necessarily want to design based on where they can be experienced best as places, is the core difference; I want to build them where I can most effectively translate them from thought into an actual thing. if that makes any sense.

Share this post


Link to post
Share on other sites

I think the difference with Minecraft--outside of Creative mode, which I don't understand the point of at all--is that there's a sense you're not simply creating ex nihilo but constructing something from what's available. To a certain degree, we feel meaning in creation because of the work involved, the constraints we work within, and the context that gives the work; for some people, Minecraft's constraints make their creations feel more "real" than if they had simply created something in Maya without any larger context.

Also, I think the shared, continuous world aspect of it is very important. Minecraft isn't, for me at least, one-off creations but evolving communities.

Share this post


Link to post
Share on other sites
I think the difference with Minecraft--outside of Creative mode, which I don't understand the point of at all--is that there's a sense you're not simply creating ex nihilo but constructing something from what's available. To a certain degree, we feel meaning in creation because of the work involved, the constraints we work within, and the context that gives the work; for some people, Minecraft's constraints make their creations feel more "real" than if they had simply created something in Maya without any larger context.

personally, I'd almost rather play in Creative mode. you can still build works in Creative mode which are constrained as if you were in Adventure mode, and you're not as constrained in your avatar's point-of-view.

where the restrictions inherent to a medium interfere with me out of happenstance rather than because the statement I'm trying to make is particularly difficult, I always find that really frustrating -- rather than subjecting myself to those restrictions by choice, I'd usually rather work in a freer medium to make more audacious things. (that said, returning to where we started in a weird, circuitous way, I have idle plans kicking around to build an old microcomputer out of relays, because it would be fun to have a computer that makes clacking noises and takes multiple seconds to answer simple problems.)

Also, I think the shared, continuous world aspect of it is very important. Minecraft isn't, for me at least, one-off creations but evolving communities.

yeah; a lot of Minecraft's value as a thing is in the network effect of having multiple creators working in the same space. I get that.

but when I enter a world full of stuff that's already been created, I get overwhelmed with that initial "whoa, there's a lot of stuff here; this universe is far bigger than just my avatar" feeling. I know that for some people, this is a fun and exciting challenge, a new frontier to explore; but for me, when I'm already operating at a disadvantage because I'm bogged down with trying to get a footing in a new and unfamiliar world that's imposing restrictions on me that are making it hard to do and to create things I know I could do otherwise, it turns me off rather than firing me up.

maybe it's just a reflection of a deeper, more ingrained risk-averseness or strength of will or something.

Share this post


Link to post
Share on other sites
I don't even have to create anything in Minecraft to enjoy it. I can just experience a place.

This was the best thing about the Thumbs server, even on the worlds rolled when I didn't have time to build anything, I could still log in and look at everyone else's stuff.

Share this post


Link to post
Share on other sites
personally, I'd almost rather play in Creative mode. you can still build works in Creative mode which are constrained as if you were in Adventure mode, and you're not as constrained in your avatar's point-of-view.

where the restrictions inherent to a medium interfere with me out of happenstance rather than because the statement I'm trying to make is particularly difficult, I always find that really frustrating -- rather than subjecting myself to those restrictions by choice, I'd usually rather work in a freer medium to make more audacious things.

I think people respond so well to Minecraft because it isn't simply a creative tool. On the flip side, you're right in the post you made higher up when you say it's not a super-compelling game to "just play through" (although I disagree when you claim it "wasn't a game" for a long time, but that's getting into a "what is art" sort of meaningless argument). The creative aspects and the survival aspects put constraints on each other, and those constraints are what the game is.

If it frustrates you that it isn't one or the other, then I understand why you wouldn't like it; that's pretty much WHY I like it.

Share this post


Link to post
Share on other sites
If it frustrates you that it isn't one or the other, then I understand why you wouldn't like it; that's pretty much WHY I like it.

yeah, that's about the long and short of it. it frustrates me as a creative tool because it's not a very good creative tool, and it doesn't particularly compel me to play it as a game. (especially since I bought it and originally tried it out before creepers were even in.)

Share this post


Link to post
Share on other sites

To continue the derailing of the 0x10c OP.

I've never been able to get into creative mode Minecraft. Without the survival restrictions I don't see the point. If I wanted to just build something I'd fire up a world editor and build/model with a better tool set instead of flying around in creative mode. I guess it depends on what you derive your enjoyment from. Making/Crafting something, or the end product. Personally the closer something is to being done the less interested I become. (Which has been a demon I've had to battle my entire professional life.)

I'd rather travel two days to the nearest desert, haul stacks of sand back, build an array of furnaces, stock them with fuel, cook the sand, then climb to the top of my creation, dangle precariously on a one block wide dirt scaffold, and place the last blocks of that giant glass dome I've been working on all week. All while fighting off aggressive mobs, and a keeping yourself from starving to death. Or.. Fly around for ten minutes placing glass blocks selected from a menu. Or.. Open a menu select hemisphere, type in a radius, select glass, and click. Seriously which is more satisfying?

There is also way more satisfaction in showing off your giant stone brick castle to your friend, and then showing them the equally giant quarry or strip mine where you got all the stone from. :)

Get'er back on track... As for 0X10c. I hope the virtual computer element ends up being that game's equivalent to Minecraft's redstone circuitry. In Minecraft I can put together simple circuits (multi-piston doors, mob killing machines, etc..), but leagues away from making a giant working calculator with LCD screen. Regardless redstone is never a necessity to successfully survive and thrive in Minecraft. So here's hoping it won't be required to operate your spacecraft (I'd probably enjoy running around frantically turning things on and off manually, instead of running a program/script), and if it is, I hope it remains somewhat approachable for the un-initiated (My first ship ... the USS Hello World).

Share this post


Link to post
Share on other sites

I'm a programmer, so I like the idea of programming being a part of this. I also firmly subscribe to the idea that most people would benefit from basic compuer programming knowledge, meaning I'm likely to support something that proposes exposing programming ideas to y'all nubbins.

Share this post


Link to post
Share on other sites
There is also way more satisfaction in showing off your giant stone brick castle to your friend, and then showing them the equally giant quarry or strip mine where you got all the stone from. :)

I think this is really important, too--not just constraints in general, but the sense that your work came from something, that you're reshaping an extant world rather than purely creating.

I value Minecraft a lot because it's one of the few video games to implement any kind of sustainability/consistency model--it really bugs me in MMOs, for example, when things constantly appear out of and disappear into nothingness and the whole world is ephemeral. (Which also gets into the whole political discourse of it--MMOs as models of consumer capitalism where labor is fully alienated from genuine production and the economy is a Skinner's box centrally planned and managed--but that's dangerous territory.)

Share this post


Link to post
Share on other sites
I value Minecraft a lot because it's one of the few video games to implement any kind of sustainability/consistency model--it really bugs me in MMOs, for example, when things constantly appear out of and disappear into nothingness and the whole world is ephemeral.

to be fair, I'd imagine that if Minecraft had the per-shard traffic of an MMO it would be a clusterfuck, with the entire world getting mined to bedrock and filled back up with TNT crates within the first day after the server went up.

Share this post


Link to post
Share on other sites

Minecrafts code is soup. Terrible, poorly optimized, strung-together-with-putty-and-lies soup. The game could run about a trillion times better than it does now, to my understanding.

Minecraft is written in Java and I've never experienced a GC pause in it. It can't be all bad.

Share this post


Link to post
Share on other sites

I find it silly to talk about how good or bad the code is until someone in the conversation has actually worked with it, or at least looked at it.

And even then, Notch seems to be uniquely targeted with this kind of criticism. Since when do consumers talk about developers in terms of code-aptitude? It's bizarre.

Erkki brings up a good point, though, which is the game is written in Java... frankly, I think most performance issues stem from that single decision right there. If Notch were to have started Minecraft knowing how big it would get, and still choose to develop it in Java... that would be dumb.

Share this post


Link to post
Share on other sites
And even then, Notch seems to be uniquely targeted with this kind of criticism. Since when do consumers talk about developers in terms of code-aptitude? It's bizarre.

Yes, that's exactly what bothers me about the claims Orvidos made.

Share this post


Link to post
Share on other sites

Alright.

Obsidian?

Bethesda?

The reason I singled out Notch for it is because while Obsidian and Bethesda games are often broken from release, they're also swiftly patched. Minecraft, to this day, is happily capable of bringing a very beefy machine to a halt if, gods forbid, some part of your system doesn't agree with it.

Don't get me wrong, I like Minecraft, and the coding isn't even the issue I potentially have with Stupidname. It's just part of what Notch does. Like I said, Minecraft development has gotten a thousand times better since Jeb took over, and I just wonder if Notch has learned anything from making Minecraft.

To put that in a more scrutinizing light, while Notch was still sort of connected to Minecraft but Jeb was the lead coder, Jeb added a couple really neat, really good quality of life features that people had been clamoring for for a long while. Notch went in and removed them because he didn't like them. After he had already announced his intention to stop developing Minecraft.

Look, this probably sounds like I'm completely crazy, but I don't like what I've seen from Notch over the past year or so. :violin:

Share this post


Link to post
Share on other sites
Minecraft is written in Java and I've never experienced a GC pause in it. It can't be all bad.

I think it would have performed much better if it was written in FrostByte

Share this post


Link to post
Share on other sites

And even then, Notch seems to be uniquely targeted with this kind of criticism. Since when do consumers talk about developers in terms of code-aptitude? It's bizarre.

If the consumers are true (maybe read: die hard) programmers/software developers then it happens quite often.

Erkki brings up a good point, though, which is the game is written in Java... frankly, I think most performance issues stem from that single decision right there. If Notch were to have started Minecraft knowing how big it would get, and still choose to develop it in Java... that would be dumb.

That's nonsense. Java isn't slow (programming languages cannot really be slow), the JVM isn't slow either. JVM vastly outperforms the .Net VM and a lot of games are written based on .Net VM.

The only real issue JRE has is "multimedia". OpenGL, sound and input are a bit of an issue because it requires non-standard JRE extension. .NET is nicely linked with DirectX.

Share this post


Link to post
Share on other sites
The only real issue JRE has is "multimedia". OpenGL, sound and input are a bit of an issue because it requires non-standard JRE extension. .NET is nicely linked with DirectX.

Nonsense? I feel like you just explained a way how what I just said isn't nonsense. I said that the decision to write it in Java is likely where a lot of performance issues stem from. Which is distinct from saying Java is slow. I may be wrong, sure, but when you yourself can come up with reasons why someone could think that, why call me out for "nonsense"?

That said, I think I might've been underestimating the JVM when I made that statement.

Share this post


Link to post
Share on other sites
The only real issue JRE has is "multimedia". OpenGL, sound and input are a bit of an issue because it requires non-standard JRE extension.

how quickly we forget the wonderful piece of computer engineering that is Java 3D!

http://en.wikipedia.org/wiki/Java_3D

Share this post


Link to post
Share on other sites

You misunderstood. Just because the Java Runtime doesn't have excellent support for OpenGL/OpenAL/SDL/DirectX/etc. doesn't mean that the JRE addons don't provide that.

What it does mean is that you have to provide platform specific components with your Java application. So, it's no longer "compile once, run everywhere"

FYI, minecraft uses JInput which is a JRE extension for DirectInput. It uses LWJGL for OpenGL and OpenAL support.

Share this post


Link to post
Share on other sites

Alright, well, now I know. /learning

Everything I assumed behind my statement about Java stems from comments from a professor of mine in a rudimentary computer graphics class I took but never followed through on. Now I'm guessing he was just talking about unextended support for media stuff.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now