Programming - where to start

I truly do not understand all the objecting, irrelevant, unhelpful and inconclusive posts after the generous and knowledgeable overview that berry120 has posted. :confused:

I've got an idea, if you disagree with berry120, by all means start your own thread with your version of where to start with programming according to [your username]. How about that? Make your own dissertation on that thread which it will definitely be more useful than all the empty post I wasted time reading in these 2 pages. ;) About >95% of the posts after the first two could be ignored with no fear of loosing precious information.:rolleyes:

And besides, while reading the two initial posts I didn't feel that the author was forcing anyone to choose a language (be it a "mother", "father", or "uncle fester" language :p LOL!) over another. It was merely an advice very well supported by experienced opinions and facts which I won't reiterate as they were (to me at least) self-evident.

In conclusion, many thanks to you berry120 for taking the time to share the insights and juicing up the pros, cons and advices in just a couple posts. That was some very helpful information therefore thanks again berry120, your advice was much appreciated here! ;)

Cheers!

PS: berry120 your time would be better spent avoiding trying to make some "heard-of-reading" users understand why HTML is not a language... Perhaps writing updated tutorials for beginners or consolidating helpful info into more digestible, newbies' bite-sized overviews and training/study material would make more sense :p
And if you won't feel like spending your time on making a tutorial for newbies, maybe it's best to turn a deaf ear and a blind-eye on nonsensical posts filled with empty criticism and dedicate your time to doing something you'll enjoy more. ;)
 
I think visual basic is the easiest to start with. It is also money saving to just download vb because it can read vbs and c and c++
 
In conclusion, many thanks to you berry120 for taking the time to share the insights and juicing up the pros, cons and advices in just a couple posts. That was some very helpful information therefore thanks again berry120, your advice was much appreciated here!
You are more than welcome, I'm happy if people find it useful - that's what it's there for!

I'm not sure all of the posts here were genuine, they seem rather repetitive and I'm pretty sure they've been an attraction for spam-bots more than anything else. Nice to hear I'm not the only one that thinks like that though...

On the contrary the following post is a good critique since it actually voices an opinion properly, I don't fully agree but I've rep-ed just because it's actually criticism potentially worth reading!

I started with C, but then my approach to a new topic is to throw myself head first into the the deepend. It is really scary to start with but you learn good practices and code standards FAST, it's either that or throw your computer out the window. But then not everyone is planning on coding for a living and if not then C is probably a bad starting place.

You may learn fast, but you spend a lot of time thinking about talking to the machine at a low level and not as much time thinking about a higher level way to approach a problem which IMO is a far more valuable skill to have (especially these days where virtually all modern languages have built in garbage collection and memory management.)

I do disagree with your assessment of Java though. I think new comers should start in a non-OO language, or at least one that lets you program in a non OO manner. If I had a nickle for every time someone asked me why they have to write "public class OMGMYFILE { public static void main(String []args) {}}" ... Anyways the point is I think that the amount of overhead and superfluous (from a beginners stand point) syntax can be confusing.
Yes and no - the overhead of that code can be confusing, but that's why I don't think you should start there. BlueJ is a great IDE for beginners, it gets rid of all that so you're not thinking about what weird keywords mean and you jump in at dealing with objects and thinking in an object-oriented mindset straight away. You only get the overhead of dealing with those sorts of keywords when you're ready for it.

Which brings me back to C, it gives you an understanding of concepts such as memory management, good Data Structures and efficiency without providing key words for things that should actually be functions.
It does provide a good low level understanding of things such as memory management, but I'd argue that should come later in the development cycle - not straight away since it distracts from learning other things that personally I think are more important in this day and age.
 
Really appreciate this information. I took a java class and had to drop it cause it was outside of my degree and I didn't have time. I looked at other languages thinking I could just pick them up but I find myself frustrated...switching around...starting assembly, c++ python. Think I'll dedicate myself to java for a while. Assembly has taught me quite a bit about how cpus and ram actually work.
 
Excellent summary there berry120.

I would say in my own experience I've found things to like in both C and Java. Java definitely I think for the pure novice, it's easy to download and get up and running, you learn the mechanics of object-oriented programming, and you don't have to worry about memory directly. Plus you have the portability.

Saying that, I find to get a increased technical understanding of what's happening at the lower level C is pretty good. Obviously it was developed when memory management was hugely important, which isn't the case now. But I still find it (mostly) quite logical and easy to understand, and writing in a procedural language allows me to make comparisons to how to achieve similar results in an object-oriented sense. Still valuable.

Great post, much appreciated.
 
Well there really is no such thing as a "must learn" language, neither is there any language required for a beginner. There are some people who find it hard to learn C or C++ or Java. You don't go saying that because one thing's difficult you should go with the other one. You have to work your way up in any language. And on the other hand there are people who are quick to adjust.

There are plenty of languages out there, and it's up to you as a programmer to choose among those languages and make it stand out and work just perfectly despite the flaws in the language's features and development.
 
When I learned to code we weren't intially taught any language we were taught basic concepts of code structure; sequence, selection and iteration and where to use them
 
As much as I agree that you should learn the logic first, it makes it much easier if you use a programming language to use as an example. C, C++, Java, C#, Python, PHP, JavaScript etc can all follow the logic you mention, so learning the components using one will still be applicable to the others, just a case of changing syntax around a bit.
 
Back
Top Bottom