tags:

views:

192

answers:

6

I used to program in QBasic, Turbo Pascal, C, C++, some Visual Basic, a good amount of Assembly (a school requirement), and some robot language that I have long forgotten.

I'm completely ignorant in anything else (java, python, and the many others -- I also don't know how to deal with unix at all). I've decided to self-teach myself some languages to get back in the game. What would be a good plan? What should I start from that would be most beneficial/fun?

I didn't really know how to tag this. Help would be welcome.

+5  A: 

Programming should be no more than problem solving.

Find your problems to solve first.

Only then act upon.

Frankie
A: 

You will need to read some books. First, decide the first language you want to learn. Java isn't a bad start since you have had experience in C++. Grab some books about Java and do some simple programming exercises. Google some simple programming assignments and attempt them as if you were a student.

Come back here if you have problems.

Kinderchocolate
A: 

I think the most important thing is finding something you'd like to create. See if there's something you're missing or every day things you use of which you think they could be better and it'd be nice to create it yourself. That way you have a goal, you can see which language would fit best, and you won't get bored quick if things take a while to figure out.

Alec
A: 

What languages are you trying to learn?

I find the best way that I self learn material is to set a small project as a goal. Say, "I want to build a program/app/piece of software that does BLANK." Make the BLANK something that interests you.

Do you like games? Then see if you cannot recreate pong. It might be hard, but you'll learn a lot along the way and more importantly, have fun doing it!

Andrew
More than anything I want to adapt old skills to new environments. The more influential the knowledge of the programming language you might suggest, the better.
Shannon
C or C++ is probably the most prevalent language out of your list. C++ code can go anywhere from games to scientific programs to iPhone apps. Since it has been around for a long time, there should also be a plethora of resources to help you get back in the game.
Andrew
A: 

I think this has already been said, but I'd like to put it thus. First you need to decide why you're "getting back in the game". Is it to change careers? Just have some fun? Expand your horizons? Write programs to help you with your mathematics?

If you intend to do this as a means to make money (as a primary profession), you will need to investigate what kind of jobs interest you most and learn the technologies that are associated with those. For example, if you want to write web applications, you'll need to learn the basics of GUI (this is as much philosophy as it is technical) and the tools to render and implement said elements. Obviously that will involve HTML, CSS, Javascript, and possibly Flash. Flash has the added bonus of allowing you to develop iPhone applications, if you get the latest.

That's just one example. If you're doing it for any of the other three reasons, then the first thing to do is to figure out what you want to ultimately wind up with... a game? a useful app for your phone? a gag app to send to your friends? It can be anything. Once you have that figured out you can alter this question and quickly people will tell you what the best way to implement the idea would be.

If you used to write c/c++ then none of this will be difficult, but there is SO much to learn that simply asking "what" should I be doing is sort of like saying "I used to know how to walk but I've been in bed for the last 10 years... now that I'm up again, where should I go?!"

Dr.Dredel
Well put, and useful advice. I'm not doing it for money or for benefit. Just for ego. I used to be considered good with computers, but I've allowed myself to lag way behind the times.
Shannon
While *"Flash has the added bonus of allowing you to develop iPhone applications"* is currently true... with all fuzz between Apple and Adobe I'd probably not put it as a path (Flash to program for iPhone) but as a nice feature to have at-this-moment.
Frankie
Frankie, you're right, but that's pretty true of everything at any time. All technology is transient. Consider that Google is now in court trying to retain the right to use Java in the way they're using it for Android. But that doesn't mean that someone who has decided to write Android apps shouldn't learn Java, even if Google switches the SDK to Python, when (if) they lose the lawsuit.
Dr.Dredel
Shannon, in that case the world really is your oyster. But if you want useful advice as to what path to take you'll have to at least tell us approximately what you wish to achieve. There is simply too much in this space at this point to get a useful answer from such a broad question.
Dr.Dredel
A: 

Start coding. Find something to work on, a simple project, something that you're really interested with (games, tools, utilities, plugins of your favorite application etc..). First, maybe use the language your really comfortable with then try new/better ways of doing it.

Sharing this short good read. Enjoy!

ginotria