Learning computer programming - any advice/tips? | INFJ Forum

Learning computer programming - any advice/tips?

James

Infamy, infamy.. they've all got it infamy
Retired Staff
Dec 29, 2009
5,556
22,658
3,498
MBTI
INFJ
Hi all,

I've decided to learn some computer programming. I have started to have a look at Java and I was wondering if anyone has any experience in that area, or suggestions that might help me. I know it will take considerable time and patience.

I want to establish;

1) What are the most important/valuable languages to learn.

2) Which are most likely to be useful in looking for a new job in that area.

3) Any suggestions or links to useful resources.

I'm in no huge rush, and even if I only learn something for fun then that's ok with me, but I'd like to develop my ability to go further than that, and write useful software.

Thanks for reading, I'm grateful for any constructive feedback.



 
Hi all,

I've decided to learn some computer programming. I have started to have a look at Java and I was wondering if anyone has any experience in that area, or suggestions that might help me. I know it will take considerable time and patience.

I want to establish;

1) What are the most important/valuable languages to learn.

2) Which are most likely to be useful in looking for a new job in that area.

3) Any suggestions or links to useful resources.

I'm in no huge rush, and even if I only learn something for fun then that's ok with me, but I'd like to develop my ability to go further than that, and write useful software.

Thanks for reading, I'm grateful for any constructive feedback.



Hi James. I work as a programmer. Sometimes I wonder if that is what I really should do with my life, but that's another story. I'll just go ahead and try to answer your questions. :)

1) What are the most important/valuable languages to learn.
Java is definitely one of the most versatile and widely used laguages. It is relatively easy to write programs in Java, which is a plus for beginners. It takes care of a lot of memory management details for you, at the cost of performance, but in most cases that's worth it. Java is a very good first language to learn.
C# was created by Microsoft to compete with Java. The languages are very similar. C# is specialized for Windows while Java works on all platforms. C# would not be a bad choice either.
C++ is the most common language used for high performance applications, such as games and number crunching. As a beginner, I'd recommend - just don't go there.
Flash/ActionScript is used mostly for graphics intensive web applications. (Also known as Rich Internet Applications, RIA.) This is what I'm into at the moment. It is really easy to make small programs that make fun things, but I wouldn't recommend it to a beginner who wants to build a solid foundation of programming knowledge. It is very easy to write ugly, complicated code in ActionScript if you are not careful, and you don't want to make that a habit. For someone who just wants to have some fun, it might be the perfect language.
PHP
is used for the web. I have no personal experience with that, but it's good to know at least that it exists.

2) Which are most likely to be useful in looking for a new job in that area.
Java.

3) Any suggestions or links to useful resources.

When I want to learn a new language, I go to Amazon and look for books with 5-star reviews. I google for beginners' tutorials and for forums on the particular topic I'm interested in. I find looking at other peoples' code very enlightening. You also need to remember that there are many levels of understanding of programming. There is the syntax of the language, then the common basic ways of use the constructs, then the higher level design patterns and more. It is also good to know a little about the OS, the compiler and how the comupter works under the hood. No programmer can be expected to have complete knowledge about all this, but knowing a little of everything will benefit. Try to find resources that are direcred towards your level and you will learn in time.

So, that's all I can think of right now. Hope it helps. Good luck and have fun! :)
 
  • Like
Reactions: DoveAlexa
Also, javascript, which has nothing to do with java, is a language used in many web pages for use in rollovers and drop-down menus. Roll-overs are super easy to learn and make, but it'll soon test your patience because it tends to just 'not run' even though everything is fine XD. Something about the nature of the web itself I think, and caching. However, the beginning stuff is easy to learn, and is very useful.
 
Also take a look at CSS, HTML, XHTML, Ruby, Rub on rails, and mySQL,
 
Thanks to all of you for your help and advice. I've previously ran a website and learned some html, but its years since I tried to write any code (that was in basic back in the 80's).

Anyway thanks for the support, and the swift replies. This is a good forum with some very helpful people.
 
to me, the most important thing I should have learned earlier is that programming ≠ computer science.
 
If you want to learn how to program learn C# or Java.
If you want to understand how to program learn C++. I would say learn straight C, but having the standard libraries available is really useful.

Learning C++ will give you a better foundation but learning C# or Java will get you started quicker.
 
[ame="http://www.youtube.com/watch?v=A1zySeNpW20"]YouTube- Java 4-Ever Trailer[/ame]
 
  • Like
Reactions: Siamese cat
Hi all,

I've decided to learn some computer programming. I have started to have a look at Java and I was wondering if anyone has any experience in that area, or suggestions that might help me. I know it will take considerable time and patience.

I want to establish;

1) What are the most important/valuable languages to learn.

2) Which are most likely to be useful in looking for a new job in that area.

3) Any suggestions or links to useful resources.

I'm in no huge rush, and even if I only learn something for fun then that's ok with me, but I'd like to develop my ability to go further than that, and write useful software.

Thanks for reading, I'm grateful for any constructive feedback.

Hi James,
I'm working on learning Flash/Action Script right now... and am also dabbling in CSS and HTML. There seems to be a fair amount of demand for these languages, and I'm enjoying learning them, but it is not exactly easy. I'll probably move on to Ruby on Rails and maybe Flex after this. Good luck with learning these things -- I've found it is very similar to learning actual spoken languages, once you figure out the logic behind them and remember the punctuation. It can be incredibly frustrating and rewarding at the same time! Would love to hear your experiences as you pursue this...
Janet
 
  • Like
Reactions: Blind Bandit
Java is definitely the best, if you're looking to get a job.

And actually... if you're looking to tune your mind to work in a programing-friendly way, I would recommend giving http://www.kongregate.com/games/Coolio_Niato/lighbot-2-0 a try. Don't be discouraged if you have trouble, because it gets very hard rather quickly... but there's a link to solutions if you ever get stuck. I'm not certain, but it seems like it would be a great tool for a new person to learn the basics of functions, conditionals, recursion, problem solving by programing, and the general flow of how a program runs.
 
If you want a decent job you'll have a major advantage if you know Perl. I've seen lots of job apps with it requested/preferred.
 
I'd rather stick my tongue on a mousetrap then study computer programing!
 
If you want a decent job you'll have a major advantage if you know Perl. I've seen lots of job apps with it requested/preferred.

Honestly I wouldn't even touch perl its outdated. I would rather spend time learning a more current language.
 
I recommend Java or C# for beginners.

You can learn C++ as a beginner but stick with examples and books that use the language wisely.

If you want to learn computer science, get three books:
1) Algorithms
2) Theory of Computation
3) Computer Architecture

Then branch out from there.

If you prefer to stick your tongue in a mouse trap, I recommend applying Orajel first. Just be careful not to accidentally study organic chemistry, as it is considered torture by the UN. ;)
 
Get Hennesy's computer org book and once you've read it get his architecture book. It requires very little programming knowledge and explains how things work at the hardware level. If you really want to be a programming genius start this way.
 
I should point out that android cell phone applications are all java.

If you need practice, there's a site called http://codingbat.com/
 
oh yeah... another good one for practice problems is http://projecteuler.net/

It's a page full of math problems which require that you write a program to solve (else they'd take you forever to do). After the first dozen or so, they require that you put considerable thought in the algorithm, because solving them the "obvious, easy way" would take a computer far too long to do. I taught myself Python using that site, hehe.
 
Thank you to all

Thank you to everyone for the advice and suggestions. Especially the mousetrap one, that really cracked me up..

I'm going to give JAVA a go first, and I'll probably be posting again soon, to say I can't work it out !

Thanks again,
James