Jump to content
IGNORED

Learn Programming


The Coach

Recommended Posts

I know some people have asked before regarding learning programming. So I thought I'd share some links and info for those interested.

 

http://www.tutorialspoint.com/computer_programming_tutorials.htm

You can learn pretty much language from here, not the best. But you could pick up some nice information.

 

http://www.lynda.com/

I find Lynda an excellent tutorial. Will range from beginners to advanced learners.

 

https://stackoverflow.com/

Great website if you are having problems and need help to find a solution to your programming task. Though try to make an effort with your program, they can get quite funny if no effort is made into your practical.

 

Books Wise:

 

http://www.amazon.co.uk/C-Programming-Language-2nd/dp/0131103628/ref=sr_1_1?ie=UTF8&qid=1455374548&sr=8-1&keywords=c+programming+language

This book came out in the 80s I believe and is still regarded as one of the best C Programming language books today. And still seems popular.

 

http://www.amazon.co.uk/Head-First-Java-Kathy-Sierra/dp/0596009208/ref=sr_1_1?ie=UTF8&qid=1455374592&sr=8-1&keywords=head+first+java

 

Not looked at this book myself, but seems popular and has great reviews.

 

http://www.amazon.co.uk/Intro-Programming-Comprehensive-Version-Global/dp/1292070013/ref=sr_1_1?ie=UTF8&qid=1455374752&sr=8-1&keywords=java+object+oriented+programming+liang

 

I've used another version of this book, wasn't my cup of tea. But others rate it highly. This is a global edition, If you look around you'll find it much cheaper I'm sure. Maybe a free online version.

 

If you are looking to become a programmer I'd recommended starting in either C Or Java. These are 2 of the most popular languages, especially Java. Everyone learns different with programming, though I believe the best way is to learn by trial and error. Watching videos is ok, but you need the feel of It yourself. I'd find a small project to work on, and take it from there. A lot of programmers use the internet for help with their code.

 

If anyone has any experience or any recommendations please comment. Happy programming!

 

 

 

Link to comment
Share on other sites

4 hours ago, Aizoon said:

And, of course, learning to program will guarantee your success with the ladies :noexp: 

If that's a particular concern the bank balance will probably do you no harm.

Some stuff to try for those interested:

www.coursera.org has some great programming courses that actually form part of undergraduate degrees.

The Head First books are great for those completely new to a subject (java one is mentioned above).

Structure and Interpretation of Computer Programs is good fundamental background.

Code Complete, Clean Code and Refactoring are good books on commercial programming practises.

These days sadly you probably have to know javascript so try Javascript: The Good Parts.  (The fact this is quite slim should tell you something).

If you want to earn an awful lot of money learn functional programming (scala, haskell etc) and learn the derivatives/trading markets.  Eventually you'll be able to bill £1200 a day or so.

Link to comment
Share on other sites

11 hours ago, Nibor said:

If that's a particular concern the bank balance will probably do you no harm.

Some stuff to try for those interested:

www.coursera.org has some great programming courses that actually form part of undergraduate degrees.

The Head First books are great for those completely new to a subject (java one is mentioned above).

Structure and Interpretation of Computer Programs is good fundamental background.

Code Complete, Clean Code and Refactoring are good books on commercial programming practises.

These days sadly you probably have to know javascript so try Javascript: The Good Parts.  (The fact this is quite slim should tell you something).

If you want to earn an awful lot of money learn functional programming (scala, haskell etc) and learn the derivatives/trading markets.  Eventually you'll be able to bill £1200 a day or so.

 

I've never looked at JavaScript myself. Very much different to Java itself I believe. Functional programming is the way to go as most AI programs are wrote in Prolog and Fortan. And with Artificial Intelligence becoming a big part of our society it's definitely a gold mine for programmers to look into.  I've never looked into Haskell either.

 

Do you program yourself Nibor?

Link to comment
Share on other sites

2 hours ago, Red_Wizard said:

 

I've never looked at JavaScript myself. Very much different to Java itself I believe. Functional programming is the way to go as most AI programs are wrote in Prolog and Fortan. And with Artificial Intelligence becoming a big part of our society it's definitely a gold mine for programmers to look into.  I've never looked into Haskell either.

 

Do you program yourself Nibor?

Yeah javascript is nothing like java other than sharing some syntax conventions.  It's a horrible language but unfortunately the internet is increasingly relying on it.  

I don't programme as much as I'd like to these days but hopefully when the project I'm working at the moment is over I can get started on something again.

30 minutes ago, Big Brother said:

asp.Net MVC with  C# is the way to go for commercial programming, imo.

Here's another resource - http://programming-mother******.com/become.html

C# is ok I guess but there's less of that around than Java (it is pretty much Microsoft's attempt to copy Java).  ASP is worth avoiding completely, you'd almost be better off with PHP these days - they've started to learn a few good habits.  What I'd definitely say is not to limit yourself to Microsoft technologies, but if you want to learn something on the .Net environment C# or F# are more useful than VB, ASP or MS C++.

Link to comment
Share on other sites

37 minutes ago, Big Brother said:

It's interesting what you're saying.  We worked with PHP for years and then looked into MVC patterns. We looked at Laravel and built an commercial app for a client using it, it was ok, we worked with Yii and on two projects, but then we needed to prototype something quickly and looked at asp.net MVC. We were blown away.  It wasn't just the language, though C# is really great, it was the whole Microsoft infrastructure.  We're using Azure and the integration with Visual Studio (itself the best IDE I've ever used) is superb.  We can crank-out whole crud apps very rapidly now, which means we can prototype stuff quickly.  But it's all personal in the end.

I don't do PHP or ASP but I'm told by people I know who do that sort of work that the PHP frameworks are beginning to get pretty good having borrowed a lot from the java community.  Thing is, Microsoft's all well and good until you're hooked in and then they'll stiff you on licenses and nothing you've built can be ported.  I had a client get bitten recently by SQL 2012 licensing vs 2008 - it's about four times the price for their hardware and they get nothing for that money.  They can't stay on 2008 because it's going out of support too soon and so is the O/S.  They can't afford the risk to move it all to something like PosgreSQL or whatever MySQL is calling itself these days. 

Most of what I've worked on in the last few years is for large businesses in house and that generally means a few thousand concurrent users (call centres etc) and anything from 100k to 20m accounts they're maintaining.  It ends up needing to scale more than either php or asp can, so mostly a choice between .net and java and since java gives you more options for deployment and has less cost I go down that route.  Lately I like Scala and the ecosystem they have quite a bit, that's all built on top of java and again is free and open source.  For IDEs I generally use eclipse and IDEA and find them pretty solid for the core stuff.

What amazes me about the industry now is just how many different bits of technology you have to stay abreast of to get anything done in a large org.  They seem to take every opportunity to complicate their IT further and then act surprised when it takes them two years to do a simple project.  Once I'm done with this project I think I'll go back to building my own stuff and let someone else deal with the clients and their crazy IT people.

Link to comment
Share on other sites

I wish I could find one that spoke in English, had some small projects and explained line by line the what and the whys of what is actually being written.

For example, back in the late 80's most computers came with Basic as a language, it really was such a simple easy to use langauge that made absolute sense with the commands (IF THEN GOTO DRAW) etc.

When I look at languages now, it's like reading Chinese backwards, nothing particulary makes much sense, words and symbols all jammed together with caps and lower case letters being used. Who made the decision to go from simple to gobbledygook or $gobbledyGook.

Ok I get that Basic was lists of code that couldn't handle larger programs, but come on, surely some idiot can design a language that doesn't involve needing to go cross eyed and standing on your head before you can understand it. It nearly gives me a stroke trying to make sense of it all, Basic, RealBasic or even Virtual Basic, must be a better start for beginners, surely.

Link to comment
Share on other sites

3 hours ago, screech said:

I wish I could find one that spoke in English, had some small projects and explained line by line the what and the whys of what is actually being written.

For example, back in the late 80's most computers came with Basic as a language, it really was such a simple easy to use langauge that made absolute sense with the commands (IF THEN GOTO DRAW) etc.

When I look at languages now, it's like reading Chinese backwards, nothing particulary makes much sense, words and symbols all jammed together with caps and lower case letters being used. Who made the decision to go from simple to gobbledygook or $gobbledyGook.

Ok I get that Basic was lists of code that couldn't handle larger programs, but come on, surely some idiot can design a language that doesn't involve needing to go cross eyed and standing on your head before you can understand it. It nearly gives me a stroke trying to make sense of it all, Basic, RealBasic or even Virtual Basic, must be a better start for beginners, surely.

Depends what you want to do screech.  I did various forms of basic back during a-levels and whilst it's easy to learn when you begin in the industry you need to unlearn a few things and some find that difficult.

Probably one of the languages to start learning in is Python.  It's reasonably simple in syntax, and you can go a long way with it.

https://www.coursera.org/learn/python

 

 

 

Link to comment
Share on other sites

3 hours ago, screech said:
12 minutes ago, Nibor said:

Depends what you want to do screech.  I did various forms of basic back during a-levels and whilst it's easy to learn when you begin in the industry you need to unlearn a few things and some find that difficult.

Probably one of the languages to start learning in is Python.  It's reasonably simple in syntax, and you can go a long way with it.

https://www.coursera.org/learn/python

 

 

 

I wish I could find one that spoke in English, had some small projects and explained line by line the what and the whys of what is actually being written.

For example, back in the late 80's most computers came with Basic as a language, it really was such a simple easy to use langauge that made absolute sense with the commands (IF THEN GOTO DRAW) etc.

When I look at languages now, it's like reading Chinese backwards, nothing particulary makes much sense, words and symbols all jammed together with caps and lower case letters being used. Who made the decision to go from simple to gobbledygook or $gobbledyGook.

Ok I get that Basic was lists of code that couldn't handle larger programs, but come on, surely some idiot can design a language that doesn't involve needing to go cross eyed and standing on your head before you can understand it. It nearly gives me a stroke trying to make sense of it all, Basic, RealBasic or even Virtual Basic, must be a better start for beginners, surely.

 

Yup Python is fairly simple. Unfortunately, Object Orientated Programming is far more complex. Try have fun writing AI in C.

 

Link to comment
Share on other sites

1 hour ago, Big Brother said:

Yep.  Screech take an evening class, once you break it all down it begins to make sense.  I found the switch to object orientated programming a bit of a challenge but now it kind of feels normal.

 

Totally agree. When I was first working with Java it took me a couple of months to get around. I'd describe programming as doing a jigsaw. First of all you're putting in pieces, possibly loads of pieces and still do not see what the image holds. But eventually you get the centre pieces, and everything starts to come clear.

 

I think everyone should have a go at programming. Can be a great complex way to train the brain. Can also be quite relaxing(as long as everything goes ok!)

Link to comment
Share on other sites

Here's a daft question, I want to learn how to code, but I don't know what I want to use it for.

I need to find something fun to start on to keep my interest, but it also needs to be understandable where line 1 you type this, because this stands for ......, it allows you to do this.....

I have seen tutorials where they presume you have an understanding of what a program is, how it is structured etc. You see, if I was building a house I know where I need to start, when writing a program is there a logical order to it, do you need to draw out a plan of background through to end product?

 

Link to comment
Share on other sites

23 hours ago, screech said:

Here's a daft question, I want to learn how to code, but I don't know what I want to use it for.

I need to find something fun to start on to keep my interest, but it also needs to be understandable where line 1 you type this, because this stands for ......, it allows you to do this.....

I have seen tutorials where they presume you have an understanding of what a program is, how it is structured etc. You see, if I was building a house I know where I need to start, when writing a program is there a logical order to it, do you need to draw out a plan of background through to end product?

 

I'd start with Java. Do it for a bit of fun and see how you get on.

 

You have an overall idea of what you want your project to do. But you don't sit there and wonder how you're going to do the project in one sitting. You break it up into small chunks.

Let's say you want to build a simple calculator.

The questions you're going to ask yourself is:

How many inputs do I want or need?

What symbols am I going to use and how can I link those symbols to my input?

 

package com.example.java;
 

import java.util.Scanner;
public class Main {
 
    public static void main(String[] args) {
 
        Scanner scan = new Scanner(System.in);
 

        System.out.println("Please enter a numeric value: ");
        String s1 = scan.next();
        double d1 = Double.parseDouble(s1);
 
        System.out.println("Please enter a numeric value: ");
        String s2 = scan.next();
        double d2 = Double.parseDouble(s2);
 
        double result = d1 + d2;
 
 
 

        System.out.println("The answer is " + result);
 

    }
}

 

This is just a few lines to demonstrate.

 

 

Link to comment
Share on other sites

5 minutes ago, Red_Wizard said:

I'd start with Java. Do it for a bit of fun and see how you get on.

 

You have an overall idea of what you want your project to do. But you don't sit there and wonder how you're going to do the project in one sitting. You break it up into small chunks.

Let's say you want to build a simple calculator.

The questions you're going to ask yourself is:

How many inputs do I want or need?

What symbols am I going to use and how can I link those symbols to my input?

 

package com.example.java;
 

import java.util.Scanner;
public class Main {
 
    public static void main(String[] args) {
 
        Scanner scan = new Scanner(System.in);
 

        System.out.println("Please enter a numeric value: ");
        String s1 = scan.next();
        double d1 = Double.parseDouble(s1);
 
        System.out.println("Please enter a numeric value: ");
        String s2 = scan.next();
        double d2 = Double.parseDouble(s2);
 
        double result = d1 + d2;
 
 
 

        System.out.println("The answer is " + result);
 

    }
}

 

This is just a few lines to demonstrate a simple addition "calculator".

 

 

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...