New Development Blood....

Discussion in 'Empire News' started by Aikar, Dec 5, 2013.

  1. As I said before, just go through the HTML tutorial, and it will give you an idea to the structure of programming as well as the way it's written. All in a very basic form. Or you could try using a program like Scratch, it's very useful.

    There is no relation what so ever between Java and Javascript. When Javascript was being made, Oracle(people who made Java) paid the people who made Javascript, to name it Javascript. The only similar things are the standard syntax styles etc.
  2. Personally speaking - If you've never coded before, I'd recommend starting out with Alice or Visual Basic, for a visual approach of understanding of how general java or javascript comes into play.

    If you later go for a degree, you most the time require prerequisite programming courses too;
    game design: java, visual basic, (and an understanding of java script and c#)
    web programming: html, asp.net, (and an understanding of java script)

    Java is the most widely used - I would recommend taking c# or visual basic for understanding java first.

    unless of course - you want to just straight up go into java and look up a lot of how to's :p
    mba2012 likes this.
  3. I wouldn't recommend even going near VB, it's horrible... Learn C++ :D
  4. D: what you talking about? I'll be making an entire phone app using visual basic for a capstone project.

    I thought the class and programming was fun - c++ I don't really like that style of programming... adding un-needed semi colons isn't my thing :p
    mba2012 and Kells18 like this.
  5. The semi colons actually make sense :p I'd die if I couldn't put in semi colons :p
  6. that was the death of me when I tried to program Flash xD
    Code:
    SYNTAX ERROR
    LINE 2
    Code:
    (random code here) (absence of semi-colon)
    mba2012 and eklektoi like this.
  7. Any thoughts about Lua? That's what I've been learning...
  8. uhm
    heard of it exactly once >.<
  9. :O lua is awesome ... Learn it - then download computercraft mod ... you'll enjoy it greatly :)
    mba2012 and 607 like this.
  10. Stay away from VB, it will teach you bad things and syntax styles that you will not use anywhere else... IE: Waste of time.

    Web approach with JavaScript is a decent idea, but there is a major caveat... JavaScript is asynchronous by design and is harder for beginners to understand. So JS can teach you some basic concepts, but its also going to teach you styles that you are not going to use as much elsewhere....

    Java is actually one of the main languages colleges use to teach people these days... Max was working on some beginner tutorials there, and I would recommend straight up learning in Java.

    Reasons:
    • Java is full of good programming designs
    • There are TONS of tutorials and resources on it
    • There are absolutely great IDE's (I strongly recommend IntelliJ IDEA Community Edition - it's free). Many people will say to avoid IDE's as a beginner and tell you to use notepad or such... Ignore them. IDE's will help you see what you did wrong as soon as you do it, and give you suggestions on how to better write your code. You will spend less time on errors, and more time on learning new things. You will also jump start learning the IDE, which any professional will be using.

      If you're not using an IDE for java, you are wasting time.
    • It's an extremely high paying career.... Java Developers make over 100,000$ a year when they are experienced.
    Consider it as 'getting on the right path quicker'.
    You won't go wrong learning java first. While other languages are useful to learn, its not bad to learn java first and will help you with other languages to do them better.
    My input on languages:

    • VB(.NET): Avoid like the plague. It's a Microsoft language, and while "simple" in concept, its usefulness is extremely limited to Windows GUI Application Development.
    • C#: Useful, much better language, but again, it's a Microsoft Language. You will only be able to use this language in a Microsoft career....
    • LUA: Interesting language, but fringe. It's not a major language you will build a career out of, but people like to use it for embedded scripting languages to build plugins and such into other applications. It has a great C++ binding, so its mainly useful if your using it as an api into a C++ app. It's not going to be your bread and butter language for solving problems. I would not focus your time here.
    • PHP: The pretty much breadwinner for Web Development in the open source world. Very mature foundation but the language itself has HUGE pitfalls. It's sloppy, disorganized, and most of the resources are written by amateurs that teach you things incorrectly. If your going to do anything web oriented, this is a must have skillset really, but I suggest learning proper OOP concepts first to help you write clean PHP code. (I Started with PHP... Lets just say I've learned a lot and my code of today in PHP is nothing like my early days)
    • C++: Very low level language.... While it would be nice to learn to have a better understanding of low level programming, do not expect to make a career out of this unless you are going to go into game development.

      For most business needs, you will need a high level language that can get the job done quickly and effectively. C++ Is neither of those, and it will be difficult to find a junior C++ developer position. Making junior mistakes in C++ has serious consequences, so those positions are more tailored to non junior.

      Not saying to avoid it, but its not something you should start out with unless you really want to delay getting yourself to a "useful" point of the career.
    • Java: As mentioned above, great language, used on all OS's, can solve nearly every problem you have. Probably the most mature programming language there is with tons of support and resources....

      It's a language built on the concept of "Getting stuff done". The style and syntax focuses on writing your applications logic, and spending less time worrying about the language itself. That is a major drawback to other languages, having to understand tiny concepts of them, spending time on the language itself instead of your application.
    Microsoft Languages:
    There are 2 career paths.. Microsoft or Open Source.
    You really should choose which you want to do, because they do not blend well.
    Places that use microsoft technology sticks to everything Microsoft. They are extremely unlikely to mess with new or different technologies, as they have support contracts with Microsoft....
    So, if you mess with MS languages, don't expect to use the others with your company. And vice versa.
    I value efficiency a lot, so I avoid anything MS related. I don't have the time to mess with both. Id rather maximize my efficiency at target languages and solve problems quicker.
  11. C++... 'low level' :p
    Lua...'fringe'... :(

    You seem to favour Java quite a lot, but Microsoft's languages are some of the best. C++ can work on all OSs too, it isn't a low level language and can do the same if not more than Java.

    Seeing as you gave the 'advantages' of Java, I will give the disadvantages. Java is CPU and RAM intensive, requiring more than any other language. Minecraft is the only game I have seen so far using Java. Also Java requires constant updates to keep up to date, and just get's bigger each time. Old PCs can't run the new Java (Java 7), so Minecraft won't work them as Mojang adjust Minecraft to work on Java 7. And now you need a high tech PC to run Minecraft or change the settings to bare minimum.

    C++ is made by Microsoft, but as I said, Microsoft have made some great languages. And I don't see operating systems being made in Java, but I do see them in C++ (Even Linux). C++ also work's on all OS's without a need for another program to work it, as Java requires the download from Oracle's website.
  12. And thus I do java. Sadly, I'm not cut out for GUI's, I simply can't do them, but for logical algorithms and the more mathy parts of programming, that's me. As far as an IDE, I'd recommend NetBeans. Simply because it works.
  13. adjective



    1. 1.

      not part of the mainstream; unconventional, peripheral, or extreme.
      "fringe theater"
    I think that fringe fits LUA very well =P Thinking more long of realistic projects like:

    • A company website
    • Security monitoring system
    • Analytics
    • Reporting
    • Deployment tooling
    • Game Server
    • Network Server
    • Proxy server
    • Data warehouse
    • Forums
    • Blog
    • API Interface
    etc...
    LUA would not be a "top choice" for any of those. I never even was exposed to LUA until FFXI where it was used to implement a scripting language on top of the C++ bindings.
  14. IDEA works with the same amount of simplicity, and is more powerful :) You will be amazed how much time IDEA will save you, handling things that NetBeans and Eclipse does not.
  15. I use it for Project Zomboid mods :p
    (Which I don't share because they're all buggy and stuffz and they usually don't work :p)
  16. I was just going to say that eclipse is also very good...
    I'll try IDEA if I can sometime. :)
  17. They're all good :p

    Eclipse, I find, is more Bukkit and MCP/Forge/Modloader friendly than Netbeans and IDEA. Although, I still am yet to use IDEA properly, so I could be wrong...
  18. Where did that come from? Visual C++ and C# are Microsoft products. C++ isn't Microsoft, you can't trust Microsoft with an industry standard. And would Apple have gone ahead and created their own programming language based on C++(Objective-C) if it was made by Microsoft? :p

    Also, C++ is both high and low level, compared to C, which is low level.
  19. When I use the terms high level vs low level, I mean
    in a sense on its connection to the operating system and low level concepts of application development such as memory management, pointers, assembly access etc.

    C++ Development still consists of os specific code EVERYWHERE.

    These days, development has modernized to the point that you can run languages that you do not have to worry about memory or OS specific stuff (well minus file system structures), giving a pretty clear distinguishment between high and low.

    High level languages are written in low level languages, and take care of all the management things such as memory and OS differences (VM/Interpreters).

    There is a HUGE distinction in the amount of time and code required to solve tasks.

    C++ is not a dead language, never declared that, but in the professional world you use "The right tool for the job", and for most jobs these days, there is no justification to use C++ over things like Java Python or PHP, or in MS Word, .NET.

    Now, for game development, for real serious games like Xbox/high end pc games, C/C++ is required to obtain the level of performance needed.

    Sure MC should of been done in c++ if performance was the concern, but it wasnt so they used java and I think its great they did that.

    Java actually is not bad on CPU Usage. its one of the fastest languages there is when it comes to cpu usage.

    Now memory, java does use a lot but its due to the concept of a VM and GC.

    In C++/C, memory is usually freed upon it being no longer needed, but due to the nature of a VM and dynamic memory allocation with a high level language such as java, trying to free as soon as its done would cause lots of cpu usage and tracking during runtime. So java was designed to use the GC concept to handle freeing more memory effeciently.

    Hardware and memory is cheap. Java was designed for businesses, so for a business, 32gb of memory is nothing in terms of cost. its more effective to scale hardware and write code quicker, and that is why a lot of businesses use java than other languages.

    I use to be in the boat of hating on java, swearing id never mess with it, hating the memory usage it has....
    But then I got smarter and realized how good these design concepts are :)
    PirateOfDW likes this.
  20. I also know that in some smaller games, Javascript is used a lot ... however, it might be something someone needs to learn before going into college, because - I mean it's not necessary for the classes I take - but there are a lot of javascripting in game development and occasionally html classes - and they personally didn't offer the course (as far as I know) ...but it would have helped if I learned it prior to taking the classes.