Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie

How to become a programmer

2»

Comments

  • Closed Accounts Posts: 5,482 ✭✭✭Kidchameleon


    Microsoft® XNA® Game Studio 3.0: Learn Programming Now!

    ^^ This is a great book if you want to learn C#. It teaches you the language and core programming concepts in a very beginner friendly way through simple game projects. They have it in town in all the book shops. BTW, I'd recommend learning C# or Java first before you move onto C++.


  • Closed Accounts Posts: 2,087 ✭✭✭Clanket


    Thanks Kidchameleon. I'll look into that book.

    Yep I've decided against C++ and am going with Java. Am going to do the beginner course here and learn it in my own time through books and internet.

    If I can get my head around Java I'll move onto C#.

    Thanks again to everyone for your help.


  • Moderators, Society & Culture Moderators Posts: 9,688 Mod ✭✭✭✭stevenmu


    Another suggestion, if you're not already familiar with linux, stick to windows, there's no point trying to complicate things with a new OS in the mix as well.

    Laptops can be great (I usually use one for development) but it's important to have a good keyboard and mouse, and it's really useful to have multiple screens (one for developing, one for google :)), so if you go the laptop route do get an external keyboard and mouse you can plug in and if possible an external monitor to connect as well.


  • Registered Users, Registered Users 2 Posts: 891 ✭✭✭Mmmm_Lemony


    If you have decided on Java, then this is for you. As I said before, his voice can annoy some people, but he works through everything in a very simple way.

    http://www.youtube.com/user/thenewboston


  • Registered Users, Registered Users 2 Posts: 9,579 ✭✭✭Webmonkey


    If you have decided on Java, then this is for you. As I said before, his voice can annoy some people, but he works through everything in a very simple way.

    http://www.youtube.com/user/thenewboston
    Is that not Java script?


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 891 ✭✭✭Mmmm_Lemony


    Webmonkey wrote: »
    Is that not Java script?

    Maybe, but his tutorials on Java are what I'm talking about. It looks like he's attempting to be a KhanAcademy for programming and web dev, and for the most part does a pretty good job at it. Hats off to him.

    Here are all his Java related tutorials;
    http://www.thenewboston.com/?cat=36&pOpen=tutorial


  • Registered Users, Registered Users 2 Posts: 9,579 ✭✭✭Webmonkey


    Maybe, but his tutorials on Java are what I'm talking about. It looks like he's attempting to be a KhanAcademy for programming and web dev, and for the most part does a pretty good job at it. Hats off to him.

    Here are all his Java related tutorials;
    http://www.thenewboston.com/?cat=36&pOpen=tutorial
    Ah good stuff. A lot of material in that channel


  • Registered Users, Registered Users 2 Posts: 184 ✭✭Razzuh


    If you're going for java, there's a free program for beginners called BlueJ that's handy for people starting out. It let's you get going with a friendly GUI and helps make OO programming more visual. It has an easy-to-use debugger so you can get used to this basic tool too.

    Once you have something going, then go to the command line and see how compiling etc. works using that.


  • Closed Accounts Posts: 2,087 ✭✭✭Clanket


    Thanks Razzuh. Will do.

    Am reading the beginning programming for dummies at the minute. Will be finished it by next week.

    I'm then going to go back over this thread and watch the tutorials/get the books recommended.

    Am also booked in to do the Java for beginners with sct ireland towards the end of April.


  • Registered Users, Registered Users 2 Posts: 604 ✭✭✭Gator


    The only advice I can give (and maybe some people will disagree) is that programming is something you are good at or are not, after 10 years of doing courses etc I really couldnt get a hold of programming as easily as other people, I found it really difficult and was lucky to stumble across networking where I enjoyed and was reasonably good at it.

    I dont think simply thinking one day "Il learn programming" is a simple as as picking up a book and reading, it can be quite hard for some people and I have seen some really intelligent struggle with the concepts.

    Dont underestimate the effotr involved, it takes a good mind and good dedication to really get a grip of it,but , maybe you will be one of those lucky b*astards that takes to it like rain man!!!!!! best of luck though


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 220 ✭✭dueyfinster


    Gator wrote: »
    I dont think simply thinking one day "Il learn programming" is a simple as as picking up a book and reading, it can be quite hard for some people and I have seen some really intelligent struggle with the concepts.


    I'm final year compsci and I can attest to this, people generally fall in to three categorys: those who get programming, those who try really hard at it and those who fail miserably.

    My advice: stick with it, vast majority of it is experience. You learn from the crappy programs you start off with. I have to say a structured course was essential for me as I could pick lecturers brains about the concepts etc, but there is nothing that can't be self taught.

    I have done mainly Java in College. I found a post (I can't find now) with a guy describing why Java is a terrible first language (and probably and C variant also). A dynamic scripting language like ruby or python with very simple syntax for first programs may be a better choice, though I can't say because I can't unlearn and try it it again! :D


  • Closed Accounts Posts: 2,087 ✭✭✭Clanket


    Gator wrote: »
    .

    I've always been interested in computers so hopefully I can pick it up. In most cases, if you're interested in something you'll learn it. Even if it takes years.
    I found a post (I can't find now) with a guy describing why Java is a terrible first language (and probably and C variant also). A dynamic scripting language like ruby or python with very simple syntax for first programs may be a better choice, though I can't say because I can't unlearn and try it it again! :D

    So far I've learned that if you ask 10 different programmers where's a good place to start you'll get 10 different answers :)

    I've made my mind up with Java and I'm sticking to it.

    Thanks for the replies.


  • Registered Users, Registered Users 2 Posts: 3,548 ✭✭✭Draupnir


    Java is a good call, it's certainly as good a call as any and gives you plenty of online materials to use and lots of people you can ask questions.

    I'd strongly advise that you avoid trying to put together any huge system or front end etc. at the first point, just try to put together some classes at first and then try to get your head around methods, class hierarchies and polymorphism.

    Once you've done that in one language you'll be pretty much sorted to pick up any other.


  • Registered Users, Registered Users 2 Posts: 981 ✭✭✭fasty


    Clanket wrote: »
    I've made my mind up with Java and I'm sticking to it.

    :D Good call. Really, the language doesn't matter as long as you learn and get stuff done. Sometimes it's the right tool for the job, sometimes not. You'll find that out soon enough.


  • Closed Accounts Posts: 4,564 ✭✭✭Naikon


    You need to get a good grasp of general Algorithms and logic. I think once you get a good grasp of the actual fundamentals
    it's easier to get a hold of programming. For example, you need to understand at the hardware level what a function call is doing.

    How can somebody execute arbitrary code by overwriting the return address of a stack subroutine? Nasty stuff like ASM will not
    give you a decent grasp of algorithms, but it's a start to actually understanding what is going on under the hood.

    People who think they suck at programming-> Start small and work your way up. Everyone sucks at programming when the idea
    of a silly cert is to simply memorise the class libraries. Get a grasp of the fundamentals and life will be much better. I would argue
    Java is not great for learning, as it abstracts everything to a high level. Learn from the ground up is my best advice.

    Also, try and understand pointers and concepts like recursion. Hard at first, but worth knowing for the fringe cases. Practice is key.
    I knew nothing about programming once upon a time, and while I am no Dennis Ritchie, practice will get you up to scratch after a while.


  • Registered Users, Registered Users 2 Posts: 9,579 ✭✭✭Webmonkey


    Naikon wrote: »
    You need to get a good grasp of general Algorithms and logic. I think once you get a good grasp of the actual fundamentals
    it's easier to get a hold of programming. For example, you need to understand at the hardware level what a function call is doing.

    How can somebody execute arbitrary code by overwriting the return address of a stack subroutine? Nasty stuff like ASM will not
    give you a decent grasp of algorithms, but it's a start to actually understanding what is going on under the hood.

    People who think they suck at programming-> Start small and work your way up. Everyone sucks at programming when the idea
    of a silly cert is to simply memorise the class libraries. Get a grasp of the fundamentals and life will be much better. I would argue
    Java is not great for learning, as it abstracts everything to a high level. Learn from the ground up is my best advice.

    Also, try and understand pointers and concepts like recursion. Hard at first, but worth knowing for the fringe cases. Practice is key.
    I knew nothing about programming once upon a time, and while I am no Dennis Ritchie, practice will get you up to scratch after a while.
    Unfort it takes a certain type of programmer to have the patience to start at ground up. I was of a similar view before, learning C / pointers etc first but I think it scares of a lot of people.

    I don't know, I think it depends on the person really.

    But algorithms/logic can be done in any language anyways.


  • Closed Accounts Posts: 4,564 ✭✭✭Naikon


    Webmonkey wrote: »
    Unfort it takes a certain type of programmer to have the patience to start at ground up. I was of a similar view before, learning C / pointers etc first but I think it scares of a lot of people.

    I don't know, I think it depends on the person really.

    But algorithms/logic can be done in any language anyways.

    On second thought, I think you are right. I only really started to "get" programming when learning about the instruction set and it's use for simple 8 bit stuff. Tedious for most taks however.
    A loop is a loop, whereas assembly varies between each instruction set.

    Assembly -> Getting the logic behind the machine
    C -> Teaches you to be careful/discipline(SEGMENTATION FAULT!)
    Java/Python -> Forces convention to the benefit of other team members
    Sed/Perl/Awk -> Essential for sysadmin/scripting

    You are 100% right though. It just so happens computers are very good at implementing Algorithms. A lang is just a means to an end. Something thee "certification" mills appear to forget at the best of times.


  • Registered Users, Registered Users 2 Posts: 5,246 ✭✭✭conor.hogan.2


    Plan out any program that will take up more than a screen worth of space, unless you like wasting time and if/when it works it looks all over the places.

    Whether you use pseudo code or flowcharts or whatever, just plan as it will save you so much hassle and time.


Advertisement