Is using Unity3D Cheating?

Unity-Logo

If you wan’t to skip through this ever-so enthralling and invigorating read and leave here with something more than you came with, my insight on the subject is going to be a rock-hard “NO!”. But, if you so choose to stick around and hear me out, I’d be more than happy to explain myself.

Over the past year I’ve been pretty heavily involved with Unity3D, which may or may not contribute to my biased opinion. Oh, so you’ve been living under a rock and haven’t the slightest clue as to what the hell I’m talking about? Unity is an awesome, powerful, and  free game engine that has been the backbone of some pretty successful projects, including: Dead Trigger 1 & 2, Temple Run 1 & 2, Bad Piggies, and most notably Blizzard’s Hearthstone: Heroes of Warcraft.

When I say the Unity software is free, I mean that there is a free option which basically just comes with less packages and tool kits than the paid version. If you are in fact interested in the paid version you’ll be happy to know that it’ll only run you a modest $1,500. But, when you’re about to drop that kind of dough on a game engine you’ll have known that you’ve made it as a developer.Wait… stop getting me off track, this is all besides the point!

Recently my friend had asked me that if he wanted to make an app, would it be cheating to use Unity. I couldn’t believe this was an actual thing, so I did some research on how people feel about it which inevitably led me to reading a lot of hubbub on the internet saying that if you’re making games with Unity (or any of the other popular engines) instead of rolling your own engine, you’re cheating. First of all let me say that I wasn’t aware anyone was keeping score.

From a programmer’s point of view, the number one rule of thumb that I keep in my handy dandy magic programmer’s arsenal is that there is ab-so-lutely no use in reinventing the wheel. Why on earth would I spend the hundreds, if not thousands of man hours on rolling my own engine that will be substantially less capable than Unity’s? I wouldn’t and I wont because I THOUGHT THIS WAS AMERICA!

eh+im+not+really+sorry+_9f10b05345e097483995812969ef2867

Thank you, Randy.

The people making those outlandish claims are probably 12 year old kids that just kicked my ass in Call of Duty but that’s not what gets to me. What gets to me is that if you’re reading this right now it’s most likely because you literally Google’d “Is using Unity3D Cheating”.  There are some passionate people who just want to make video games and they are going to read those posts. The worst case scenario is them being led to believe that the community is going to chase them out of town with pitch forks and fire and stuff if they release a title using a preexisting engine.

Making a game is making a game is making a game. If you can have an idea or a goal, use the tools that you can get you’re hands on to realize said idea/goal, and actually complete the project, you’re better than 98% of the rest of the people that came before you. You don’t need to be some programming wizard, or Picasso to open up Youtube and start learning.
I’ve seen and heard of some pretty marvelous success stories from people that have made successful games/apps without even writing a line of code and if I didn’t love programming so much, I’d have zero shame in taking that route.

Thank you for letting me rant and check back for some more seemingly useless reads.

 

What Programming Language Should You Start Out With?

There are a lot of people in this world that would love to learn how to code, and with the up-rise of learning material sprouting up all over the internet, there is no reason why you shouldn’t learn (unless you have zero interest in the subject).
The first question any newbie programmer is going to ask is, “What should my first language be?” and that’s a very valid, but loaded question. I remember when I was also asking myself that question and in doing my research I only came across vague advice saying that it doesn’t matter what the first language you learn is because you’ll always be able to learn more. I never liked that answer much. Though it is true that there is no ‘go to’ beginner language you should learn. The language that you choose is entirely up to your own personal preference, but how are you supposed to choose when you don’t know anything about programming? That’s where I come in. With so many languages available, I wish someone would have narrowed my options down and just chosen for me. Unfortunately I can’t do that for you, but I can tell you the most popular languages available and narrow those down more to the top two, as well as where to access some sites that provide you with all you need to get started on your new career.

You heard that Programmers make a decent amount of money and you want a slice of the pie:

If you say something like that in a programmer’s forum, you’ll probably be ripped to shreds and told something like, ” Don’t program unless you’re passionate about it.” or, ” You’ll never make it if you’re in it for the money.”
Do I think that’s necessarily true? Not at all! (I’m probably going to take a lot of heat from the community for even posting such a sell out thing, but if I help one person who just wants to jump in and code then I don’t care) How many people are passionate about their jobs? Exactly. There are a lot of jobs that’d I’d do for $70,000 and up, I’m just fortunate to have a passion for programming. Although, if you find that you absolutely hate sitting in front of a computer for 8+ hours at a time and/or maintaining a thirst for knowledge for an extended period of time (your entire career), I’d recommend researching an alternative field of interest.
Getting back on track: If you like the sound of the average salary in your area (for me in Seattle, Wa the average salary for a software developer is $92,000 according to Indeed.com) Then you have many of options as far as languages go.

In the chart below you’ll see that in 2013, Java and Python dominated the market in terms of popularity.
Most Popular Programming Languages of 2013

Java and Python are used in almost every facet of technology today. Do you have a microwave? Java. Do you use Google? Python & Java. Ever play Minecraft? Java. Want to work in web development? Java & Python. Oh, you love Android and want to make apps? Java-ish. You see where I’m going with this.
Keep in mind that these two languages won’t always be the most popular. Programming languages live in phases. Something new and “better” will always come out, or you just need to use the tools of a particular language for a particular project and Java or Python wouldn’t be practical no matter how popular they are. That being said, I’m focusing on these two because I strongly believe that they are the best programming languages to learn as a first language. They are both fairly simple, will make the transition to a new and/or more complex language smoother, can be used in a practical setting, will be in demand for the foreseeable future, and do a fantastic job introducing you to object oriented programming.

Python itself is known for being an extremely novice language to learn. The first lesson you’ll do in any Python tutorial will have you print “Hello World!” out onto your screen. Making that happen in Python looks like this:

print("Hello World!")

But just because you can think of it as “easy”, that doesn’t mean it’s can’t be viewed as professional. On the contrary! The average salary for a Python Developer is $73,000 annually. Realize that these averages are for people that know how to code, and do it well.
There are plenty of free online resources as well as a heavy user base that will be happy to help you on your learning adventure:

. LearnPython.org
. Codecademy
. Official Python Documentation
. Pygame

Java is a little more complex than python in terms of syntax but all of the concepts are the same. Printing the same “Hello World!” message onto your screen with Java will be coded out as:

public class Main{
public static void main (String[] args){
System.out.println("Hello World!");
Continue reading