Minecraft Blogs / Article

To Be a Programmer | Popreel

  • 1,260 views, 2 today
  • 40
  • 23
  • 10
Cardinal System's Avatar Cardinal System
Level 31 : Artisan Geek
231
Have you ever thought, "It would be cool if I could make a video game," or admired the popular kid who claimed to know coding? Have you ever longed to make a Minecraft mod, or customize a plugin? Well, I am sure you'd love to say instead, "It is cool that I made a video game", or tell the popular kid, "Opening a file from command prompt is not programming", or even be the popular kid yourself. I am sure you would love to run through Minecraft using your very own homemade mod, or play a mini-game you invented using your very own plugin. Here I will explain what life as a programmer is like, why you would or would not enjoy it, and how you can become a successful programmer.

Life as a programmer:

Once you really start programming there's no turning back. The life of a programmer is like a fever with no physical effects. It will completely change the way you think, which for the most part was beneficial to me, but in some cases it is a disadvantage. Since I started programming, I cannot listen to someone proposing an idea without calculating in my head how I would virtually create it as a program. When you are in hypnagogia you find yourself trying to solve real life problems with code samples that don't even make sense. This is a very confusing experience and can even be torturous at times. The funny thing about these fever like dreams is that you only experience them while you are in a hypnagogic episode - once you fully fall asleep they will cease to torment you.

When you are a programmer, you feel almost like a god. It is the most amazing feeling to see yourself successfully create a working program. Programming can also be a socially interactive experience. Most good programmers will collaborate and assist each other in improving their work. Some of my closest friends were found when seeking assistance with various errors in my code. Some programmers can become like celebrities. Take Cyprezz for example, he went from zero to everything just by creating a simple site where users can share Minecraft worlds. Over time, the site began supporting more than just maps, and now it is one of the biggest online communities in the world.


Should You Become a Programmer?:

Before you decide to give your life away to your PC, you should consider a few things first. Although it is exciting to know about computers, and you are probably anxious to learn the ropes, there are a few possible negative results that not all people would want to experience.

  • Programming requires incredible amounts of patience. Writing a program can take some time, and debugging it can take longer. People without patience would die before they finished their first program.
  • Programmers can easily fall into poor health. Although none of the programmers I personally know are fat, they all have knee and feet trouble. Furthermore, a lot of programmers will find themselves staying up to absurd hours like three and four in morning. Avoiding problems like this really comes down to self discipline. Make yourself take a walk every hour or so, and have a set bedtime.
  • Many programmers will find that they have lost their social skills. I did say that programming can be socially interactive, but there is more to a social life than internet interactions. This of course can be avoided by occasional breaks from the computer to take a talk in the park or go shopping, but the more you isolate yourself, the weirder and more anxious you will get.
These negative results are not the only outcome. There are also positive results that you should consider.

  • Programmers can create almost anything just by pressing buttons on a keyboard. You can do anything from creating an algebra calculator to cheat on your homework, to making your own Cleverbot API.
  • Programmers can create solutions to most problems. They can mentally create a step by step approach to almost any problem, and they are surprisingly good with math.
  • Programmers make stupid amounts of money just for sitting in a chair and having fun! Geico pays their Java programmers approximately one hundred US dollars every hour.
  • Many programmers create APIs for other programmers to use, they help others in achieving their goals. It feels amazing when you can help someone else. Also, I personally find that most APIs I create for other people I will end up using myself.

An interesting fact is that many autistic people easily take up an interest in programming and can comply with it better than your average person. Why this is? I am not entirely sure, but if you have minor Autism or Asperger's Syndrome, your chances of understanding and enjoying programming are higher than those of your neighbor.

Kick Starting Your Career:


For me, one of the most difficult challenges in becoming a programmer was finding where to start. Although there are multiple internet tutorials and explanations, they don't actually make any sense unless you follow these critical steps:

  1. Learning to think like a computer is really the first and foremost step in preparing your mind for the complexity of a machine. You are probably asking yourself, what does it mean to "think like a computer?" That is a very good question, but very difficult to answer.
    • It is important to understand logic and to learn to think logically in order to obtain the mind of a machine. Logic is something that usually comes naturally to someone soon after puberty (It is a little awkward to say, but maturity and comprehension comes after puberty).
    • Another important concept to understand before seeking lessons is Boolean logic. I once gave a very detailed and explanatory presentation on Boolean logic, and a day later my audience could not even explain a simple operator. It's actually very basic, and I do not understand why people cannot comprehend it.
    • I know that everyone hates it, but algebra is probably the most important thing to learn before you can think like a computer. When learning math, almost every student believes he will never use it in real life, but I believe that aside from history and literature, math is the most necessary subject in school. Many of the historical figures which we admire were, believe it or not, mathematicians - Plato, Galileo, Copernicus, Babbage, Einstein, etc.
    I think one of best ways to start thinking like a machine is through Scratch. If you read this Wikipedia article you will see that the program is designed for new programmers.
  2. Programming is not a cost free experience. It does cost a little money to get started, and it will cost you endless amounts of precious time. I personally believe that the fastest and cheapest way to hit the ground running is to start with Java, because its syntax is simple and easy to learn and the key words and methods provided by the JVM are easy to understand. Once you learn Java, learning any other programming language should be very easy. Here are some tips on kick starting with Java:
    • Start by purchasing a book. You will need to invest anywhere from 30 to 50 bucks in order to get a quality book that will suit your needs. I strongly encourage starting with the book that has a huge 'Oracle' logo on the front cover, considering the fact that Java is owned by Oracle (Java was actually created by Sun Microsystems, however, in 2010, Oracle bought the entire company).
    • Follow through in creating each individual example-program in the first chapter or two, then practice and experiment with the concepts you've learned. While you're at it, try to get to memorize the syntax.
    • Practice the basics. This is something I used to struggle with myself. You want to go through them again and again until they become second nature to you.

  3. Even the most experienced programmers will occasionally run into problems, and new programmers constantly run into errors and find that they are lacking understanding in some concept. The best way to resolve these problems is dealing with them alone. Resolving the issue by yourself is highly beneficial because you will not forget how to resolve it in the future, and it strengthens your current knowledge in programming. These are steps that every programmer follows in resolving an issue:
    1. Review the basics.
    2. Read over your previous lessons.
    3. Search the internet for answers.
    4. Use a debugger.
    5. Seek help from other programmers.
    When all else fails, you can always seek help from other and more experienced programmers. There is website dedicated entirely to this purpose, and it has taught me most of what I know. If you absolutely cannot resolve the issue on your own, sign up for Stackoverflow and submit a question. But be warned! If your question obviously lacks research, is poorly asked, or does not target a specific issue, than it will be down-voted and you could potentially loose your asking ability. You can learn more about asking at the FAQ in the Help Center.
  4. To really get into programming and to get to the point where you can self-teach yourself most of everything, you need a motivation, a goal, something you can work up to. Having a goal gives you a drive - something to make you learn the next chapter despite its difficulty. My goal was to create a mod, and from there I have gone onto creating much bigger and greater things. Someone in the comments had a similar experience, and I am grateful that they gave feedback and shared their story. You want to always have a goal, even if it is a small one. Set multiple goals with different difficulties. Once you achieve one, work up to the next. However, you do not want to overwork yourself. Learn your limits and take breaks when needed - your mind will soak everything up faster if you let it rest when it needs to.

If you still want to learn the art of computer programming, even after everything I just told you, than you are truly meant to work with computers, and you are destined to achieve great things.

Thank you for reading my article! Feedback in comments is greatly appreciated.
If you enjoyed reading this, please consider giving me a diamond.
Tags

Create an account or sign in to comment.

2
03/26/2018 10:30 am
Level 23 : Expert Dragon
redfern2003
redfern2003's Avatar
Yes Cardinal! This was super helpful, and yes I still want to be a programmer. I don't know if I will be able to, cause I'm impatient and I used scratch back in grade school for some video game that we had to make. I was literally wanting to obliterate Scratch. But, I think that with some time experience and patience, I can learn and achieve greater things then I have set out before me.
2
08/28/2017 2:44 pm
Level 4 : Apprentice Network
Iriss
Iriss's Avatar
Yes
Y E S
SAO program, you're overwhelming me with this amazing blog
1
08/28/2017 2:48 pm
Level 31 : Artisan Geek
Cardinal System
Cardinal System's Avatar
c:
2
08/27/2017 10:50 am
Level 34 : Artisan Lego Builder
SnowyOxygen
SnowyOxygen's Avatar
I gave making minecraft mods a go back in beta before hunger existed, never really got into it as I didn't understand anything. Interesting post though :p
2
08/20/2017 1:05 am
Level 58 : Grandmaster Programmer
JustKilling
JustKilling's Avatar
Interesting post. I would just like to add, the reason I got into programming was because I had an idea. When I first got the idea to create my first mod, I didn't know a thing about programming. Because I had an idea, I searched up what I needed to know to accomplish what I wanted. I found this a lot more beneficial to me than sitting there reading a book or watch tutorials for random projects.

If you want to get into programming and enjoy video games, try making a mod for a game or if your more adventurous, try making a basic game with Unity. (I wouldn't recommend Scratch as I find it kinda too oversimplified to actually learn anything useful)

That's just my two cents.
1
08/20/2017 1:15 am
Level 31 : Artisan Geek
Cardinal System
Cardinal System's Avatar
That's what happened with me. But I found that you will need a Java background to create a more exciting mod. As for Scratch, it does simply things, but it helps you get the idea of step by step instructions for the machine, and also introduces methods (which took me a while to understand).
2
12/08/2019 1:53 pm
Level 9 : Apprentice Skinner
TheDiamondGamin
TheDiamondGamin's Avatar
public void Query(){
if(Java>Scratch){
System.out.println("Scratch?! I don't even know what you are");
else{
System.out.println("There must be a error somewhere");

}
}

}
2
08/18/2017 1:01 am
Level 42 : Master Dragonborn
IndyJacksonTT
IndyJacksonTT's Avatar
I wouldn't really want to code...
I would just want people to code for me! XD
I'm really lazy... :^)
2
08/17/2017 10:46 pm
Level 32 : Artisan Artist
Unnumbered Tears
Unnumbered Tears's Avatar
Nice! I was surprised out how interesting and informative this blog was. It seems really honest and down-to-earth, because it's not stupidly optimistic and unrealistic about what it takes to become a programmer. Personally, though I'm really interested in coding and think it would be awesome if I could do it, I know I don't have the time in my life to spend on it.
2
08/17/2017 9:22 pm
Level 37 : Artisan Geek
PusheenFluffyPuff
PusheenFluffyPuff's Avatar
Oh my gosh this is huge! It looks like it has so much effort into it! .O. This is amazing!
Planet Minecraft

Website

© 2010 - 2024
www.planetminecraft.com

Welcome