Noob coding question

Discussion in 'Wii U - Hacking & Backup Loaders' started by rufuszombot, Jun 26, 2015.

  1. rufuszombot

    rufuszombot Assassin

    Apr 13, 2010
    United States
    The Moon
    I've always wanted to get into coding/programming but just never got around to it. Now I've got some free time and I'd like to learn the basics, but I have no idea where to begin.
    Does anyone have some useful resources or insight as to where I could begin?
    Is it hard to teach yourself, or should I just try to find classes for it?
  2. DarkFlare69

    DarkFlare69 GBAtemp Psycho!

    Dec 8, 2014
    United States
    Find the language you want to learn. I personally started off with HTML (I know that's barely even a "programming" language). Start simple, then go onto Lua or VBS, and progressively get harder. Take classes, too, but do a lot outside of school. Take and modify old programs. Change custom function names, etc just to get the feel of it.

    EDIT: It's not too difficult to teach yourself, but make sure to look at examples, start simple, and be patient.
  3. Fishaman P

    Fishaman P Speedrunner

    Jan 2, 2010
    United States
    I first started with some very basic programming classes in high school, where we learned binary, hexadecimal, and general programming concepts (like how the computer does exactly what you tell it to, and nothing more).
    Then, when we finally started learning Java the year after, I got The C Programming Language from the library because I was fed up with Java's abstraction and OOP design.

    Basically, find a specific purpose you want to code for, then choose the language that suits it best. Then just study hard!
    Last edited by Fishaman P, Jun 28, 2015
    Psi-hate likes this.
  4. TehCupcakes

    TehCupcakes GBAtemp Regular

    Apr 5, 2013
    United States
    Programming is about 10% code and 90% reasoning. I am completely self-taught, and had been programming ~7 years before I took a single class. This is to say you do not need formal education to learn programming, but in my opinion... It could help a lot early on. Classes tend to focus on (or at least, should focus on) teaching you the skills to abstract an idea, and understanding how different components work together to make that a reality. The language is one component, but the biggest hurdle in programming is simply learning abstraction. Your logical reasoning and problem-solving skills are critical, especially as most programming time is spent debugging rather than writing "new" code.

    It's not so important that you learn a specific language as it is that you learn programming concepts. Once the concepts and practices are solidified, learning a new language's syntax and quirks isn't all that difficult. There are several programming "styles". (E.g. functional programming, object-oriented, structured, etc.) Each style has it's own learning curve, but there are always some transferable concepts. A lot of languages are designed more for a specific style, and thus, are better suited for certain purposes.

    Fishaman made a very good point:
    I would not recommend HTML unless you're planning on doing web development, simply because it is not a programming language. (It's a markup language.) For this reason, you won't really learn a lot of skills from it that you can transfer to other languages. However, if making websites appeals to you, by all means, go for it! HTML is pretty easy to learn and it is very rewarding to see results quickly.

    If you're interested in "official" game modding (where support for modding is built-in by the game developers), scripting languages are probably going to be most useful. Javascript, python, and LUA are probably the most common. Scripting languages are generally used in combination with other languages though, so it's easier to learn if you have a specific game/project that you're working with.

    If you want to make your own games, I would encourage you to not spend too much time on an "easy" game creation tool... By that I mean, serious game development requires a lot of flexibility and processing power, and you sacrifice a lot when you pick something that makes quick and easy results. I for one started with Game Maker (which is an "easy" game creation tool), and while it was awesome to see my ideas come to life quickly, it also became a crutch, and made it harder for me to move into "real" programming and away from the limitations imposed by other tools. If you start with a language like C#, Java, or C++, you will learn skills that are much more useful for long-term development. Unity is probably the best middle-ground, as it is designed for rapid production, but you use javascript and/or C#, and it is much more robust than other game creation tools. Oh, but one more tip: Plan small. Even some seemingly-simple games are incredibly time-consuming to make, which can be discouraging. Avoid RPGs, MMOs, and complicated mechanics until you have built up experience.

    Where you start is up to you and depends on what you want to do. I would suggest you download lots of examples that are similar to what you want to do, and use google extensively when you run into trouble. There are tons of resources online, and you don't need a single class if you don't want to. (However, as I pointed out before, it may help you pick up on some concepts a bit faster, and keep you motivated.) If I were to choose a language to recommend to a beginner, I would say C#. It is useful for many different kinds of projects and the syntax is about as "standard" as any programming language, so it should be easier to pick up other languages with a C# knowledge-base. Now this is just my opinion, and tons of people will definitely disagree with me, but I found it easier to work and more flexible as a whole than any other language I've touched. (C++, Java, JavaScript, Delphi, Visual Basic, PHP, python, ActionScript, and a few others...)
  5. Coto

    Coto GBAtemp Addict

    Jun 4, 2010
    3 stuff to study :

    1. bottom up programming

    2. top down programming

    3. learn brainfuck

    then you'll be able to join structures and process information no matter what language you code
  6. BullyWiiPlaza

    BullyWiiPlaza Nintendo Hacking <3

    Aug 2, 2014
    Like it has been said before, it barely matters which language you start with because they are all very similar. The most important is learning the abstraction and to start thinking like a programmer. I recommend you to learn Java if you want an all purpose convenient language for Desktop or Android applications. If you're more interested in hacking, homebrew and the likes, definitely check out C, C++ or Python.