Decaflon

Welcome to Decaflon! Where the geeks hang out: Signup or Login Here
Decaflon is proudly hosted by (mt) Media Temple.  We recommend them for your web hosting needs.
Clips: Popular Clips Upcoming Clips Notes: All Notes

I have a slight programming background. Basic C, C++ and HTML.

I want to concentrate on one or two languages in-depth.

What do you recommend I learn & how?

This question get asked occasionally here from time to time and my response is always the same: what are your goals? I ask this because once you know one language and learn to "code" you can pick up any language relatively easily. The act of programming is just that, an act. Languages are just tools to get the job done. If you goal is just to code for fun then the language you pick my differ from the one you decide to focus on for a career.

Since you have a slight background in C and C++ your object-oriented background isn't too in-depth so I would find a language that would cater to that. I'd recommend Python or Ruby (without the Rails) since they provide great frameworks for learning OOP. I say stay away from Rails (and in the case of Python, Django) because they are frameworks that will handicap how well you learn how to do things.

As for how to go about learning? Hell you have the whole web as your teacher. Go out and explore.

I've heard of Ruby. Actually that's the one I was planning on learning. Just thought I'd pose a question here first. Thanks for the reply.

What is this 'Rails' thing all about?

Rails is a web framework built on top of Ruby. I'm not a fan because I feel the architecture ties your hands into doing things a particular way, but it's popular enough that there are more than a few blogs devoted to it.

Scrivs is right. It depends on your goals.

If you're looking to concentrate on developing web sites and web-based applications (and who isn't these days) then something like Ruby or PHP is a good choice. I'd familiarize myself with Javascript and at least one of the major frameworks for JS as well like prototype or jquery.

If your goal is a career working in or for the corporate world, you might take a different angle. Personally, I am a .NET guy. So from my perspective I would recommend C#, which would be a natural fit for your background. In addition, you can use it to build both web-based ASP.NET apps and desktop apps as well. It gives you the flexibility to do a lot of different things which comes handy in a job search.

- Ryan

It definitely depends on what you're working on. Generally, learning C# or Java (or both) are the most valuable since both of them can be applied towards pretty much any type of software project.

The scope of Ruby and Python in comparison is a bit limited. Ruby and Python are both great and fun languages (I already learned Ruby and I'm teaching myself Python at the moment), but I wouldn't jump into those first solely because the job market for those languages is fairly small (mostly hobbyists and startups). Also, the "documentation" for Ruby and Rails is pretty terrible which is the main reason I hardly ever use it.

If deciding to learn C# or Java first, I would look at the kind of positions that are available where you live. C#/.NET is more popular in the midwest while Java is more popular on the west coast. I prefer C#/.NET because its the better designed language/technology of the two. Once you learn one language, its pretty easy to learn the other because much of the syntax is similar. C# might be easier coming from a C/C++ background though because some of Java's syntax is obscure.

The problem is, I'm not sure where my career interests lie. I may have some hazy idea, but I'm sure that can easily change. I've decided to go advanced with HTML, then do CSS, and maybe PHP (I've heard it can be challenging). I might even try Ruby. I'll take it as it comes.

Thanks, all of you for your inputs. :)

Please Login To Leave A Comment

Decaflon Sponsors Get in touch if you want in.

Hot Notes (View all »)

 

Decaflon is part of the Chawlk Network of sites.

9 Great Places To Visit, Hang Out, & Meet New People

What's new and interesting at other Chawlk Network sites: