Why should you be a programmer? (Inspired By Notch)
27 replies, posted
An interesting article which discusses why you should learn programming, to make money online.
[url]http://youngwebbuilder.com/why-you-should-be-a-programmer[/url]
Im starting to try and learn java atm. Good language to start with isnt it?
I personally don't like java. But I'm biased towards C++/C# so take that with a grain of salt.
Is that your blog?
I've read a few of the things on there. Looking at making a website, and earning money from it. But i've decided i want to learn programming, because i also want to make an app. I can use java in app development too right?
For an aspiring programmer you're not very bright, considering a quick google search can answer all of your problems.
Android development is done in Java, for example.
I know i never really liked it, but i really want to be able to make an app, and im going to start with android me thinks. Yeah i knew that :P im just confirming it :P
You don't just learn to program, make something, and make money. If it was that easy then everyone would do it.
I mean that it is transferrable across multiple platforms.
[editline]30th April 2012[/editline]
[QUOTE=Darkest_97;35772901]You don't just learn to program, make something, and make money. If it was that easy then everyone would do it.[/QUOTE]
Nah, but i need to be able to make apps, to support other projects that i want to start.
Why you should not be a programmer, but you should know programming: being a multi-profile engineer basically assures you're gonna be working with cool shit. Like rockets.
A bad reason for programming is for profit rather than enjoyment. Trust me, if you don't like programming then it's not for you and you'll just get mad and angry and sad and confused.
[QUOTE=WTF Nuke;35773451]A bad reason for programming is for profit rather than enjoyment. Trust me, if you don't like programming then it's not for you and you'll just get mad and angry and sad and confused.[/QUOTE]
And then sometimes even if you do like programming, sometimes you get mad, angry, sad, and confused.
[quote=tehgameze]I mean that it is transferrable across multiple platforms.
Nah, but i need to be able to make apps, to support other projects that i want to start.[/quote]
Do explain these other projects.
If you are trying to be like Notch, you are doing it all wrong! There are five simple steps to being like Notch:
1. Hire a programmer
2. Show your support for mods
3. Have the programmer you hired install some good community-made mods
4. Upload the programmer's modded game build
5. Take all the credit and go on a permanent vacation with your millions of dollars
I'm pretty sure that Notch wrote most of Minecraft himself before he brought other people onboard.
Sometime I heard from a freind, that the alpha code, he solely made, was more than messy and disgusting to look at
[QUOTE=Topgamer7;35773586]And then sometimes even if you do like programming, sometimes you get mad, angry, sad, and confused.[/QUOTE]
But you persevere because you like what you're doing. If you suck at something but like it chances are you're going to keep doing it until you get better. If you're working on programming something and you have no strive then when you hit a bump you'll just give up. This is a generalization, but there's not a very large chance you'll succeed and then you'll just have a game you didn't even have fun making (if you even get this far).
[QUOTE=Tehgameze;35772793]I've read a few of the things on there. Looking at making a website, and earning money from it. But i've decided i want to learn programming, because i also want to make an app. I can use java in app development too right?[/QUOTE]
For android, yes
[editline]1st May 2012[/editline]
[QUOTE=jack5500;35774827]Sometime I heard from a freind, that the alpha code, he solely made, was more than messy and disgusting to look at[/QUOTE]
If you were working on a game such as minecraft on your own, without the knowledge that other people will be working with your code at somepoint, im sure the code you write would also be messy.
This sound kinda aggressive but it isnt meant to be, im just saying he didnt know how it would turn in the long run so at first he was probably just getting something working to be able to show off
[QUOTE=jack5500;35774827]Sometime I heard from a freind, that the alpha code, he solely made, was more than messy and disgusting to look at[/QUOTE]
The point is that it worked. It wasn't the cleanest code, certainly not the most optimized code, but it still worked. That's really all you need to be able to take a game to a point where you can start selling it, and that's one thing that Notch really understands.
If only Notch didn't understand that, then boy would minecraft be better off.
[QUOTE=WTF Nuke;35777394]If only Notch didn't understand that, then boy would minecraft be better off.[/QUOTE]
The point I was trying to make is that if Notch tried to do everything "the right way", he'd still be developing it privately, it wouldn't have millions of fans or a modding community, and he wouldn't have made a ton of money.
Sure, the source code would have looked a little bit nicer, but it wouldn't matter since no one would be looking at it to begin with. People love the concept of Minecraft and deal with the edge cases and bugs present in it.
[QUOTE=WTF Nuke;35777394]If only Notch didn't understand that, then boy would minecraft be better off.[/QUOTE]
Have you seen the Mari0 source?
Messy coding gets crap done, whereas clear coding takes forever.
[QUOTE=neos300;35777625]Have you seen the Mari0 source?
Messy coding gets crap done, whereas clear coding takes forever.[/QUOTE]
Mari0's code isn't messy, it's maurice. You get used to it after about a day, anyways
Hmm. Maybe I should change the way I think about when I code. Thanks for the tip.
[img]http://imgs.xkcd.com/comics/academia_vs_business.png[/img]
XKCD is always relevant.
notch is the gold standard for video game developing
Why does this thread even exist?
I WANA DO PROGRAMMING TO GET RICH
I WANNA MAKE A WEBSITE TO MAKE MONEY
I DONT HAVE ANY CLUE OR CONCEPT BUT MONEY
OH YEAH JAVA IS GOOD RIGHT?
The whole thing about Notch writing dirty code and getting shit done fast is true to a certain extend. The problem is that Minecraft ran like shit. Jebs getting something done about this now, but pre-release versions would certainly lag most 2GB-of-RAM computers to death for no particular reason, other than lack of optimization.
The problem is, each block in the world is loaded as an instance of a class. In a garbage collected environment, this is a disaster. The memory requirements are huge due to this, as well as CPU requirements as the GC has to scan millions of instances.
Also, the netcode is terribad - it spams packets down a TCP connection.
[QUOTE=T3hGamerDK;35927148]The whole thing about Notch writing dirty code and getting shit done fast is true to a certain extend. The problem is that Minecraft ran like shit. Jebs getting something done about this now, but pre-release versions would certainly lag most 2GB-of-RAM computers to death for no particular reason, other than lack of optimization.[/QUOTE]
Generally how I develop is in very quick iterations of hacking something in then kinda optimizing it. Once it starts lagging on a slower machine we'll slow down development, profile the game, and reorganize/optimize until it's pretty clean and doesn't lag on a slower machine anymore.
If you ignore the last bit and just keep hacking on then you'll end up with a pile of messy hacks and it'll take a really long time to sift through it and organize it.
[editline]12th May 2012[/editline]
Also, like thomasfn said, if you're working on a garbage collected environment, write your code with that in mind. Create object pools, try and offset work to the GPU, etc. to avoid GC collection.
And making networking "work" initially with TCP is fine as long as you plan to quickly move it to UDP once you've set up the client to be able send/receive data. Then all you're doing is changing the networking implementation while the interface remains mostly intact.
Sorry, you need to Log In to post a reply to this thread.