Learning to code. Page 2

  • Page

    of 7 First / Last

  • Deleted user 15 March 2012 14:01:09
    If you're going down the book route there's a ton of free ebooks here
  • RunningMan 15 Mar 2012 14:09:40 2,396 posts
    Seen 10 minutes ago
    Registered 8 years ago
    Good site that.
  • RedSparrows 15 Mar 2012 18:40:49 22,285 posts
    Seen 3 minutes ago
    Registered 7 years ago
    Goodness me, thank you for all the advice.

    Going to look at the ebooks, thanks Rhythm. Looked at some books in a shop (as per the reccs on here), and they look good, if a bit pricey for me at the moment.

    Java I think it will be. I might use this thread to post really dumb questions from time to time... mwmahahaha!

    Gonna start tomorrow morning, after deciding on what bits and bobs to do tonight.
  • RedSparrows 15 Mar 2012 18:47:16 22,285 posts
    Seen 3 minutes ago
    Registered 7 years ago
    Oh God. CodeAcademy has badges.

    Badges are like achievements.

    BOOYAH!
  • freakybun 15 Mar 2012 19:00:58 601 posts
    Seen 2 days ago
    Registered 11 years ago
    Great advice given so far.

    Without trying to overload your brain with more stuff to learn, when you get a feel for things you should look at source version control.

    It allows you to save the changes you make to your software and maintain a history of everything you do.

    That way, when things go wrong, you can go back in time to when it did work and compare what you changed.

    It's an invaluable tool to use when you find your feet..

    I use "git". Its can be a bit tricky if you've used more traditional tools like subversion but once you start reaping the benefits you'll wonder how you got by without it.
  • RedSparrows 15 Mar 2012 19:11:53 22,285 posts
    Seen 3 minutes ago
    Registered 7 years ago
    Thanks Freaky. What I'd love to be able to do, just like with a linguistic language, is have enough to go on and be able to make simple, but 'true' statements over and over again, without thinking.

    I can do it in Russian, next for Java!
  • freakybun 15 Mar 2012 19:15:05 601 posts
    Seen 2 days ago
    Registered 11 years ago
    ... and of course I'll give you a hand if you have any questions, Java or android.
  • Deleted user 16 March 2012 09:51:36
    RedSparrows wrote:
    Oh God. CodeAcademy has badges.

    Badges are like achievements.

    BOOYAH!
    \o/
  • Deleted user 16 March 2012 10:08:25
    Code Academy seems great but do they do any other languages?

    I'm reasonable in PHP and Visual Basic for Access but really struggle when it comes to object-oriented stuff. I started a Lynda.com course for Objective C and was fine with all the loops, variables and other typical programming standards, but as soon as they got onto OO my brain melted.
  • Lt_Drebin 16 Mar 2012 11:05:59 146 posts
    Seen 5 minutes ago
    Registered 3 years ago
    Not sure if anyone's mentioned it in here already but i've been using an online book introducing java programming by David Eck that I found here.

    I'm only a few chapters in and I'm a complete novice so I don't know enough to say if it's technically lacking anywhere (it was last updated July 2011) but I've found it a really simple to understand introduction to OOP. The author spends a lot of time explaining the jargon in plain English with simple examples and a quiz at the end of every chapter. It's available in pretty much every format you could ask for as well.
  • mikew1985 16 Mar 2012 11:11:19 12,656 posts
    Seen 54 minutes ago
    Registered 7 years ago
    Rhythm wrote:
    Tonka wrote:
    Don't waste your money on books. Use the internet instead.
    This. The Codeyear thing that CodeAcademy are doing seems really well paced and has a ton of community support right now. Only 8 weeks in at the moment so not too hard to catch up either. They're doing Javascript but as has been said elsewhere, the syntax of a language isn't the biggest obstacle, it's dealing with the concepts of handling loops, variables and the step-by-step processes of laying shit out. Javascript's as good a place to learn that as any
    I've always had an interest in learning how to code even just some basic stuff to see how I get on and this Codeyear programme seems great so far. Thanks for pointing me toward it.
  • Tonka 16 Mar 2012 11:50:49 20,222 posts
    Seen 17 minutes ago
    Registered 11 years ago
    Nowadays javaScript will get you far (and a job).
    If doing stuff on the web is enough for you then that's what I'd recommend. A friend of mine swears by it.

    With node.js you can do server side scripting using the same syntax.

    If you can read this you really need to fiddle with your forum settings.

  • skuzzbag 16 Mar 2012 12:15:25 5,638 posts
    Seen 22 hours ago
    Registered 10 years ago
    I'd recommend a combination of books and web. I've used both extensively over the years and I find starting with a book to get the basics then using the Internet for examples is a good approach.

    Also it's always handy to have book for reading on the loo etc. The loo and bath are where you'll make most of your coding breakthroughs after all.
  • skuzzbag 16 Mar 2012 12:17:21 5,638 posts
    Seen 22 hours ago
    Registered 10 years ago
    Tonka wrote:
    Nowadays javaScript will get you far (and a job).
    If doing stuff on the web is enough for you then that's what I'd recommend. A friend of mine swears by it.

    With node.js you can do server side scripting using the same syntax.
    What kind of jobs can you get with JavaScript? Web stuff? I've never worked at a coder and wouldn't mind any kind of entry into it. Have been programming for over 20 years off and on (so not advanced or anything).
  • warlockuk 16 Mar 2012 12:17:45 19,148 posts
    Seen 15 hours ago
    Registered 10 years ago
    Tonka wrote:
    warlockuk wrote:
    Books are good, actually. The intro chapters give you a bit of background and tell you how whole systems and things hang together and where to find the online SDK / Language reference documents.
    All of that is readily available on the web, and kept up to date, and usually comes with comment sections.

    I'd say an old iPad would be abetter investment than a bunch of books.

    Horses for courses though but I really can't see the point of buying a book to learn stuff about computers.

    /stares at practically untouched versions of various Java books
    /opens cabinet at the office filled with mint condition O'Reily books (all outdated)
    I agree with the shelves of semi-untouched books. Fuck iPads in their arse, though.

    If he got an Android one he could develop apps for it ;)

    But yeah. I only meant get one book that's an intro to the language (ie a Java book which won't go too much out of date) for cheap from somewhere and plop (haha) it in the bog for when he needs some readin'. I'd not bother with books as much these days 'cos quite often they seem to be written by bellends.
    Specifically with books on Android they're going to be out of date quite fast, too.

    I'm a grumpy bastard.

  • warlockuk 16 Mar 2012 12:18:28 19,148 posts
    Seen 15 hours ago
    Registered 10 years ago
    skuzzbag wrote:
    What kind of jobs can you get with JavaScript? Web stuff? I've never worked at a coder and wouldn't mind any kind of entry into it. Have been programming for over 20 years off and on (so not advanced or anything).
    There's a fair bit of web-app stuff going around, making things for use on blackberry/android/iOS/other at once.

    I'm a grumpy bastard.

  • [maven] 16 Mar 2012 12:32:40 5,152 posts
    Seen 3 hours ago
    Registered 10 years ago
    I just started asking myself which language I'd start with nowadays:
    - A modern, high-level scripting language like Python or Ruby. These throw lots of concepts into a huge blender, and there's too many ways to do the same damn things, so it's hard to learn the proper idioms of these languages, especially if you look online; a lot of source-code written in these is godawful.
    - Javascript has similar idiosyncrasies, I'd stay well clear of it, it's too irregular. Watch this, it's fun and entertaining.
    - C++ has way too many ways to shoot yourself in the foot, it's a bad language for beginners (especially if you want to learn good OO-design principles at the same time).
    - C has quite a few confusing areas (pointers, arrays with one open dimension), but I like the rest of the directness and simplicity of the language. The standard-library is anemic, and you'll likely end up writing lots of code that in other languages would be available for your use. This is both good (you learn shit) and bad (:effort:).
    - If you end up liking C, Objective-C is my favorite OO-language and framework, at least it doesn't do things behind your back like C++ does with implicit copies / conversion operators etc.
    - C# I know nothing about, but I'm assuming that if you're content to stay on Windows / XNA (no, Mono doesn't really count) that it is also a decent option (from the language spec anyway, not sure about the system libraries).

    I learned with a mixture of BASIC (first on the Amiga, then MS-DOS), moved onto Turbo-Pascal (good memories), then via inline assembly to pure x86-Assembler. Hopped onto the C train (Watcom C, then Visual Studio 6) for an interlude in game & 3D-engine programming. Then moved to C++ and Python (with lots of pure C though) for proper work with HPC applications on clusters, while in my spare time I learned Objective-C and the Cocoa / Foundation framework.

    Whatever works. :)
  • Tonka 16 Mar 2012 12:53:21 20,222 posts
    Seen 17 minutes ago
    Registered 11 years ago
    warlockuk wrote:
    skuzzbag wrote:
    What kind of jobs can you get with JavaScript? Web stuff? I've never worked at a coder and wouldn't mind any kind of entry into it. Have been programming for over 20 years off and on (so not advanced or anything).
    There's a fair bit of web-app stuff going around, making things for use on blackberry/android/iOS/other at once.
    we use a lot (a lot, a lot) of JavaScript at my company. Both for front end and then the node.js stuff for the back end. But you would also need to get into HTML/CSS stuff (wich isn't hard at all). The some PHP for good meassure.

    Or you go down the other route with .Net and the whole C# thing.

    What I like abut JavaScript is that you don't have to compile stuff.

    Do the codeacademy.com stuff and see how you like it. As others have said, once you get the mindset right you can pick up other languages quicker.

    If you can read this you really need to fiddle with your forum settings.

  • superflyninja 16 Mar 2012 13:15:44 462 posts
    Seen 1 hour ago
    Registered 10 years ago
    if you already have some java behind you then I find the book "Beginning Android Games" really good. Im gonna need to recruit some artists soon ;p

    Put away those firey biscuits

  • Dirtbox 16 Mar 2012 13:23:59 77,701 posts
    Seen 3 hours ago
    Registered 12 years ago
    I found this useful when I was learning java.

    http://www.greenfoot.org/

    +1 / Like / Tweet this post

  • skuzzbag 16 Mar 2012 14:56:34 5,638 posts
    Seen 22 hours ago
    Registered 10 years ago
    HairyArse wrote:
    Code Academy seems great but do they do any other languages?

    I'm reasonable in PHP and Visual Basic for Access but really struggle when it comes to object-oriented stuff. I started a Lynda.com course for Objective C and was fine with all the loops, variables and other typical programming standards, but as soon as they got onto OO my brain melted.
    A book for the Open University course M250 (or M255 now I think) was very good at teaching you Object Oriented design using Java as the language (as opposed to Java with OO stuck on at the end). You can pick up ex-student copies on Amazon.

    Learning it this way round helps you associate OO concepts with real life programming problems that can be applied to any language.
  • Deleted user 16 March 2012 15:08:35
    iTunes U has *tons* of coding stuff for free, a lot from OU and loads from MIT.

    You can follow entire MIT syllabuses, including video lectures and coursework, from start to finish, in your own time, for FREE too. and you don't need iTunes U

    As you start picking stuff up, start looking outside of the course you're doing so that you're using what you're learning. Head to places like Python Challenge, Sphere Online Judge and Project Euler. All three of those sites set up problems that can easily be solved with a bit of coding. Euler and Sphere are language-agnostic, Python's obviously for Python users :-)

    They all start off pretty easy with some very basic maths problems and gradually get harder as you go, until you're looking at some pretty deep algebraic and logic problems. All the while the problems you'll encounter will have you using different skills you may already know, or, more importantly, going out and seeking the right skills for the problem.
  • RedSparrows 16 Mar 2012 15:14:07 22,285 posts
    Seen 3 minutes ago
    Registered 7 years ago
    I'm ploughing through the CodeAcademy JS. It's well designed and I find it speaks in terms I can understand.

    I just need to get my head around the particular logic required.

    Currently trying to define a function in the terms of another. It's hard but I'm getting there.
  • freakybun 16 Mar 2012 20:58:03 601 posts
    Seen 2 days ago
    Registered 11 years ago
    RedSparrows wrote:
    I'm ploughing through the CodeAcademy JS. It's well designed and I find it speaks in terms I can understand.

    I just need to get my head around the particular logic required.

    Currently trying to define a function in the terms of another. It's hard but I'm getting there.
    I think that can be one of the hardest challenges of JavaScript, understanding functions and in turn what "this" means given your context. If you can get that and get to grips with what's going on with prototypes you're setting a good foundation for other languages.
  • RedSparrows 17 Mar 2012 15:17:01 22,285 posts
    Seen 3 minutes ago
    Registered 7 years ago
    Can anyone coax me along bit here?

    I am presented, by CodeAcademy, with this:

    var power = function (base, exponent) {
    var result = 1;
    for (var i = 0; i < exponent; i++) {
    result = result * base;
    }
    return result;
    };

    power(2, 2);
    I don't have to do anything, it simply asks me to understand.

    I get the var power, the return and the call of the function, fine.

    But what is the for loop actually doing? I get the impression it is taking
    '1' and incrementing on it until it reaches the 'exponent' (in this case, 2?).

    But my silly brain doesn't see why it needs to do this, because all I need to do is have var power.... result.... and the call function, don't I? What is the use of this loop? Why is var result=1 there at all?

    Maths is not my strong point, but I understand most of what is required of me. Just I'm still not used to thinking how they want me to, yet.

    sorry :(

    If they had used say, 4 to the 6th, would that mean the loop was essentially adding +1 to the base (4?) until it reached 6? Brain hurt.

    Edited by RedSparrows at 15:22:16 17-03-2012
  • Deleted user 17 March 2012 15:20:30
    Can you please correct the thread title to 'Self-Learning: Coding'? It makes me sad to see a thread with so much good in it marred by that title :)

    Edited by Aargh. at 15:20:50 17-03-2012
  • Phattso Moderator 17 Mar 2012 15:28:45 13,274 posts
    Seen 5 hours ago
    Registered 10 years ago
    @RedSparrows

    Step 1: remind yourself what raising a number to a power does. Think through how you would write it mathematically rather than code. Given the inputs (2,2) do it by hand to work out what you expect the result to be. This will help you understand what this code is trying to achieve.

    Step 2: remind yourself that the 'for' loop executes the code between the braces {} according to its limits (in this case, from 0 to exponent-1).

    Step 3: write out the value of 'results' for each step in the loop. i.e. what is the value of 'result' after the first pass through the loop, then what is it after the second? Hopefully this will look a little like what you learned in Step 1.

    Important concepts these - important that you grasp them rather than get given the answer in an explanation*. Good luck! :)




    * no doubt someone will take pity if you continue to have trouble. ;)
  • [maven] 17 Mar 2012 15:29:16 5,152 posts
    Seen 3 hours ago
    Registered 10 years ago
    Note: I know fuckall about JavaScript, but:

    - The "var power" bit stores the following function into a variable called "power", which you can then call.
    - Definition of the power function would be something like:
    base^expre computing a new value for result using result and base as input? That's why result has to be initialised, to handle both the edge case and so the loop works; as for the first iteration you're just computing result = 1 * base (i.e. base^1).

    Edited by [maven] at 15:31:23 17-03-2012
  • [maven] 17 Mar 2012 15:32:01 5,152 posts
    Seen 3 hours ago
    Registered 10 years ago
    The forum is eating parts of my post.

    post content here

    Edited by [maven] at 15:34:59 17-03-2012
  • monkehhh 17 Mar 2012 15:38:58 3,294 posts
    Seen 18 hours ago
    Registered 6 years ago
    Post deleted
  • Page

    of 7 First / Last

Log in or register to reply