• 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.

Learning to program.. Anywhere to see what leads to what?

IamDavid

Diamond Member
I know, I don't make much sense..

I want to learn some programming. I know nothing. I can copy/paste really good and make some great looking websites by doing so. I'm really good with Excel but can't quite figure out Access. To lazy I guess. I've been reading about each different language lately and its makes my head spin. I can't undrstand the need/point of so many. Sure they are all needed, just don't know why.

I want to see a flowchart/diagram of what language leads to what and what can be created by each. Any suggestions? I know I will have no problem learning something I can use. I just don't want to waste my time learning something outdated and useless.
 
Windows or Linux web servers?

For Windows the languages would be ASP.Net and either VB.Net or C#, but for a lot of interesting work you're also going to have to learn how databases like SQL Server work.

For Linux, PHP + MySQL is most popular.
 
It doesn't make sense, your self-taught approach will lead to problems later. Better see programming as long-term investment that brings long-term benefits.

In a nutshell, with omitting many languages
C++ and C# makes everything (apps, games, server side apps and their clients) with C# being easier one
Java little less (less games for sure, but good for everything else)
Perl, PHP if you enjoy script being your end result
VB, VBA (Excel, Access) is mostly focused to databases and spreadsheet based data and mediocre apps
 
Sorry I wasn't to clear. I don't want any specific recommendations on what to learn for any specific project. Everyone here on AnandTech is extremely helpful for all of us newbies. That's the problem for me though. Everyone has a different idea on what is needed to do "x".. I want to see a breakdown of what they all do..

Example:

Learn HTML - then Java, then ?????

or

basic then vbasic then c then c++


I get to distracted and hung up on what else I could be learning and lose focus in my A.D.D. mind (I think that's a good thing by the way) when I have to many option in front of me. So I wan to figure out what path i need to take to learn somehing useful, instead of a little of everything. I've always been "jack of all traits, master of none". I'm tired of that.

I don't think I want to learn any website programming. To easy for me to copy/paste and make what I want that way.

Thanks,
David
 
Thank postmortemIA. That's basicly what I am looking for. I am looking at this as a long term investment. I know it will be a never ending challenge and will always be evolving. I need some direction though or I know I will be doomed to failure before i begin.
 
Dave's right, but I'm not sure how far all this big picture stuff will take you, coming at it with no background at all. If you dive in and start trying to figure out how the database connects to the shin-bone, it will all be overwhelming.

The first thing you need to learn is how code controls the computer. Build from that. I wish we still had the kind of jump-in-and-program environment that BASIC provided during the early days. There are BASICs out there, but the ones I've tried didn't quite replicate that early experience. Maybe there are some realtime Java consoles that will let you just type in statements and make stuff happen. Others here may know of one. The .Net Snippet Compiler might just be a reasonable choice.

If you had an IT background and a strong understanding of how the machine works, then C# might be a practical leap for you. It might still be, if you're talented and quick. If you want to take a stab at it go get the Express Edition of Microsoft's Visual Studio for C#. It's free. Try to make a console program that prints "Hello world" on the screen.

If you want to try it with the SnippetCompiler mentioned above download and run it, and you'll see it starts you with a basic program. Modify the following function so that it looks like what I have here, and then click the green arrow to run it.

public static void Main()
{
WL("Hello World!");
RL();
}

If you need help don't hesitate to ask.
 
That's funny Mark. Years ago I played with VB a bit and made that "Hello World" deal. Had it boxed in and move. Those were the days. Don't remember a thing about it. Forgot about it entirely until now.
 
Originally posted by: IamDavid
I know, I don't make much sense..

I want to learn some programming. I know nothing. I can copy/paste really good and make some great looking websites by doing so. I'm really good with Excel but can't quite figure out Access. To lazy I guess. I've been reading about each different language lately and its makes my head spin. I can't undrstand the need/point of so many. Sure they are all needed, just don't know why.

I want to see a flowchart/diagram of what language leads to what and what can be created by each. Any suggestions? I know I will have no problem learning something I can use. I just don't want to waste my time learning something outdated and useless.

Well, for the most part programming in different languages is just a matter of learning the different syntax for each language. Most things are pretty easy to learn. What has helped me more then anything is to first have a goal of what I want a program to do. Of course, don't set your aims too high, but just high enough that you think it will stretch you. After that, I would identify what language to use. I would suggest that you stick to some of the golden oldies (Java, C++, and maybe c#). Newer languages are nice and they have their niche areas, but they are not great teachers of fundamentals and it is more then possible that they will die a quick death leaving you high and dry.

After you have a language chosen, get to work, first apply what you know, then use the intraweb to get what you don't know, and finally keep applying until you get something that does what you want. After you are done with that, post your results so we can make fun of you, and then give you helpful suggestions that will make your program more efficient/readable.

This is how I started out. First my programs where completely contained in one function (Yicks!) then slowly they evolved into works of readable art 🙂. Really though, I couldn't have gone anywhere if I hadn't first started to tinker with the languages.

FYI I first learned CGI, Perl, PHP, VB6, C (really a C/C++ hybrid form) then C++. and even some java in between. If I where to do it all over again, I would probably cut out CGI, Perl, and PHP and just have learned VB, C, and C++ then maybe later learned PHP/Perl/Java. But I didn't know what I was getting myself into when I started, I just had a problem and I wanted to fix it.

My first script/program was a simple program to ban people based on their IP address (really, it was in Perl). I did it by reading other peoples scripts that identified IP addressed and then the scripts that served web pages. Put two and two together and came up with a simple script to ban people based on their IP addresses.

I would suggest something similar maybe you have a collection of MP3s you want to sort based on author or you want to make an alphabetic folder listing and store each MP3 by letter name in the right folder. So, go at it, that shouldn't be too hard to do and would teach you loads (and C++ could handle it nicely).

What I wouldn't suggest as a beginning project is a game. Games are very complex and really require I fairly good level of understanding. If you try and dive right in there you will only get discouraged and confused.

Hope this helps
 
I always suggest people start with VB simply because you can dive right in and create functional programs. Learning C will be necessary if you intent to make a career out of programming, but if it's just a hobby I think you'll get bored before you learn to harness the capabilities of those lower level languages.

I took one class that dealt with VB, another that combined VB and SQL, and I just finished a database class that involved more in-depth SQL and proper database design.

Now I'm working on a project for a friend who needs a database to track some customer/order information. Rather than creating an app in VB I decided to use ASP.NET & VB so he can use it on his PC's, Macs, even his Blackberry. It's turning out to be a lot more work than I thought... I think I'm going to have to pick up a book on ASP.NET to finish it, but it's going to be something really nice to add to my portfolio/resume when it's finished and working.
 
Originally posted by: Jeff7181
I always suggest people start with VB simply because you can dive right in and create functional programs. Learning C will be necessary if you intent to make a career out of programming, but if it's just a hobby I think you'll get bored before you learn to harness the capabilities of those lower level languages.

I took one class that dealt with VB, another that combined VB and SQL, and I just finished a database class that involved more in-depth SQL and proper database design.

Now I'm working on a project for a friend who needs a database to track some customer/order information. Rather than creating an app in VB I decided to use ASP.NET & VB so he can use it on his PC's, Macs, even his Blackberry. It's turning out to be a lot more work than I thought... I think I'm going to have to pick up a book on ASP.NET to finish it, but it's going to be something really nice to add to my portfolio/resume when it's finished and working.

Just make sure you do a good job with it now, If you write crazy code now I can guarantee it will come back to haunt you. (BTW congratulations of being tech support for life for your friend 😀)
 
Nah... he's pretty savvy. He put together the website for his business (which is a large format print shop) and is capable of troubleshooting his own computer and network problems. Just doesn't have much experience with databases or programming besides graphic design type stuff.
 
If you want the ease of learning VB but the power of C/C++, use CodeGear's Delphi. It is object pascal, the language built for learning programming. You do not need to know C if you want a programming career. Plenty of jobs outside C.

The language is secondary. There are two major things you should focus on outside the language: programming basics and application frameworks. Learning the basics first. This means learning primitive data types, boolean algebra (easier than sounds), functions/procedures, and object oriented programming (get the concepts. fancy stuff like patterns can come later.). These concepts carry to just about every language out there. Lastly, know something about an application framework. Applications are built on top of them. Delphi has the VCL (built on Win32) and VCL.NET/.NET (built on .NET FCL). .NET web applications use the ASP.NET portion of the .NET library. My examples are Windows based. If you want something other than Windows, you will need to learn a framework library on the target platform.

Zarko at About.com has good tutorials on Delphi. http://delphi.about.com/ Free versions are available: http://www.turboexplorer.com/downloads Specially priced academic version available too.
 
Back
Top