• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

Want to further my programming knowledge

jae

Golden Member
First and foremost, I would to think all of you who helped me after I undergone surgey and was swampped with make-up work.

I ended up getting an 94% on my midterm, 98% on my final, and a strong B in the class. Although this was Programming I using VB and learning the basics of programming languages, I want to continue learning how to programming, because as we all know; if you dont use it you will lose it. So where should I go from here?
 
well im going linux for this summer, so i guess ill pop red pills. Ive downloaded VB.NET 2005 and 2008 off MSDN for when I go back to XP.
 
Visual Studio is one of the strongest IDE packages out there. However, for learning how to program, I'd recommend you not start with the Microsoft languages. Microsoft deviates too much from convention and often just follows bad ideas. That said, if you want to become a serious programmer, you'll have to learn an IDE at some point, and Visual Studio blows away Eclipse.

Java, imo, is the ideal academic language to learn. It gives you the full breadth of object oriented coding without tying you down with memory management issues like C++. It also happens to be highly in demand. If you learn Java well, you'll have a strong basis with which to transition to most other languages. Java also happens to be one of the fastest languages around thanks to the amount of dev effort put into it. Put in the extra effort to learn how to use eclipse to manage projects while you're at it.

Python is a fun language to use, but I wouldn't recommend it to learn early on. It's easy, isn't strict with type casting, is very powerful, but I can't say a language that lacks type casting or strict structure is going to be useful for serious projects. Plus, not many corporations are using Python. It's very popular on Linux though, and wouldn't be a bad one to look into once you've got the basics down. (it's also very slow, but that doesn't matter for 99% of programming projects)
 
Java. As Fox5 mentioned, its the best academic language to learn. The good thing is that once you know Java, it'll be very easy for you to pick up C#, C++, C, PHP due to similar syntax and flow.
 
If you're still interested in C#, you can always use Mono on Linux, and the official VS tools on Win.
I'd also highly suggest learning a build language - makefiles or ant, or something similar. It can be an invaluable tool for later on, when project complexity increases.
 
Website: msdn.microsoft.com is the place to go for any ms language. I'd go to the c# area and also to the VS express editions area. You can pick up the 2008 express editions of vs for free. You should be able to find some free introductory ebooks and lessons/videos on any of their VS languages. A free ebook on c# is at charles petzold's website. (Do a google on his name to find the url). Book called "dot net zero". This just for starters. If you are interested in databases, then you can also pick up the free sql server express from ms, and start using c# or vb to access/query databases on that platform using the new "linq" features in those languages.

Good luck!
 
Just stick with VB. The differences between C# and VB.net in functionality are minute, and VB is, far, far more friendly to amateurs and hobbyists. At this stage, you should be learning concepts, not wasting time with syntax, and VS is far more helpful when screwing up VB syntax the C# syntax.

 
Originally posted by: PhatoseAlpha
Just stick with VB. The differences between C# and VB.net in functionality are minute, and VB is, far, far more friendly to amateurs and hobbyists. At this stage, you should be learning concepts, not wasting time with syntax, and VS is far more helpful when screwing up VB syntax the C# syntax.

Thanks will continue on with VB.Net. Ill probably just look over Java just to get my foot in it. Before I left for school I grabbed Visual Studios .NET 2005 & 2008 🙂 and other MSDN software to kep me busy.
 
I will have to disagree with PhatoseAlpha. Visual Basic is not a good language to learn on - it will not get you used to good programming practices. Too many things in Visual Basic are encapsulated and you won't really learn the core basics of real-world programming. A transition from VB to C or C++ is excruciatingly painful. If you get used to Java, the transition from Java to any other language is much smoother. Like others have stated, another great thing about Java is that it exposes you to true Object Oriented Programming, but you don't have to worry about more complicated topics, like memory management.

Your next goal is to understand HOW programs work, not to make more complex programs. VB won't make this easy to accomplish. VB is considered to be a RAD tool - Rapid Application Development. Basically, it accelerates the development time by simplifying what the developer is expected to write/code, therefore complex applications are written with very little, if any, custom code for each object. While this seems nice at face value, all of the "real code" that is actually making the program function is hidden from you. This is called encapsulation (what I referred to above). You will experience encapsulation in any programming language, but VB encapsulates way too much for it to be considered a good academic language. Java is a happy medium; it'll let you get your hands dirty, but you're just in a sandbox as opposed to a desert.

I can't stress enough - get away from VB. If you ever _need_ to use VB down the road, you can pick it up practically instantaneously after knowing Java, C#, or C++.

Go with Java.

Another thing to note: if you for some reason decide to go with C++, I'd recommend starting with at least some C. It's not required by any means, but it's always nice to be familiar with it. C is NOT a dead language - it's still used quite extensively in embedded devices. If you go with C++, at least experiment with C so you can become aware of its differences and limitations. I wouldn't say that you need to become proficient in C, however.
 
I actually think that going to PHP would be a good thing to do. I know it isn't always looked up with smiles, but what it does to is offer you a position to really begin to appreciate the work that you're doing on a broader scale. I know for a hobbyist one of the cool things to do is to show off what you've done to someone else, especially if they can appreciate it. Well, developing on the web is a great medium for that. If you learn MySQL too (which is really, really simple to learn by the way) you will be on your way to being able to keep yourself busy with fun projects that can be really practical.

PHP is flexible enough to allow for new programmers to get involved in it, it uses scripts, which you can reuse, and you can also get into object oriented programming (maybe program a stopwatch object to time your SQL queries and see which ones yield the best results?), and you can even use it for writing software that isn't web use only.

I might get booed for this, and that's fine. But I started programming in QBASIC when I was in fifth grade (I'm 25 now), then I went to C, and then VB, then C++, Assembly, then I got into web development, and started the whole bit of HTML and CSS as well as PHP and MySQL. I can tell you from my walk, which was mostly self-taught, that PHP offered me the best inside and kept me the most interested in programming (though it may just be because I do web development for my living now).
 
Back
Top