Yahoo Answers is shutting down on May 4th, 2021 (Eastern Time) and beginning April 20th, 2021 (Eastern Time) the Yahoo Answers website will be in read-only mode. There will be no changes to other Yahoo properties or services, or your Yahoo account. You can find more information about the Yahoo Answers shutdown and how to download your data on this help page.

Anonymous
Anonymous asked in Computers & InternetProgramming & Design · 1 decade ago

What steps should I take to learn programming?

I'm interested in software engineering as a career, but I don't know where to start. I'm currently in senior high, and excellent at math. I'm fluent in simple markup languages, that is, HTML and CSS. I've built a fully functional and appealing website before, but that's the limit of my coding knowledge.

What should be my next step? Should I start with web-based technologies, such as JavaScript, SQL and PHP, or dive right into a 'simpler' programming language such as Python?

Thanks in advance.

Oh, and I'm familiar with a GNU/Linux environment, if that affects anything at all.

Update:

Thanks for all your responses.

It seems that Python is the next step. I start SQL next term at school, so it seems that'll be another challenge to tackle.

I'm looking at doing a dual degree at the end of school, a Bachelor of Mathematics/Bachelor of IT majoring in software engineering. I'll start with Python, and I cover JavaScript and SQL in school soon.

8 Answers

Relevance
  • Sun
    Lv 5
    1 decade ago
    Favorite Answer

    Hello,

    It pretty much depends on what you are interested in pursuing. If you want to go into a career in web development, as you hinted at, then the .NET languages are probably a great place to start. PHP is also good but Microsoft's ASP is taking up most of the market now.

    No matter where you want to go I think that Visual Basic .NET is probably the best programming language to begin first. It is extremely wordy which makes the transition from psuedocode to real code extremely easy. Some of the old school folks will recommend diving right into c++ but I feel that it is a bit too challenging for a beginner. But definitely pick up an Object-Oriented language, scripting languages won't get you very far as a programmer.

    Another thing that is usually best when starting to learn programming is to have formal instruction so you can avoid falling into bad programming practices. Check with a local university and see if they offer any night classes. I also teach introduction to programming online every now and then - if you are interested shoot me an email through my profile.

    Later on when you have a good programming foundation you'll need to learn SQL because applications and websites are useless if they can't talk to a database.

    Good Luck!

  • 1 decade ago

    Okay so you are familiar with a GNU/Linux environment. What about UNIX? If you can get your family's support I would GENUINELY go down to the nearest school (State school or continuing ed program is fine) and talk to their CS faculty about classes. It helps (A LOT) to be familiar with math through trigonometry, and studies show repeatedly the more math you take the more you make ultimately. One class to take is UNIX. If it doesn't start out to be terribly familiar then you DON'T know about GNU/Linux. They will cover issues like shell scripting usually in the bourne shell or bash, use of sed (the stream editor) and piping, and grep. All of these should make your life very comfortable in GNU/Linux. Learning them on your own is like what the great cartoonist/colorist Marie Severin said about her not going to art school: "It took me ten years to learn what my brother John learned in four."

    If you are familiar with Ubuntu, and that is what you mean, then immediately boot it up with web access and type "sudo apt-get install build-essential" in a terminal window. Ubuntu is one of the few Linux environments which does not come with the development packages installed by default.

    SQL I would definitely hold off on. Webmonkey's javascript tutorials are nice (but HARD sometimes) however really, python is a really great choice for the next step. A simple interpreted language like that or perl can help you to begin to understand the difference between what a computer does and what we like to think it does. For example computers don't know the difference between doc files and jpg files and pdf files. We and our programmers like to pretend they do. Generally they get a request for any data file like that and they will go down a list of applications and what they handle, and if they don't handle that one then they return an application not found message. It might be a big deal for us but not for our computers -- they've already done what was appropriate.

    There is really a lot to learn and obviously you can hear what my bias is. In this case -- the money may not be there but it's worth the investment.

    And work hard on your math.

  • 1 decade ago

    It seems to me that you are in good feet to start learning programming. If I were you, I would start first with python. It'll give you good customs on how to write decent code and since it is so easy. It will help you to accomplish a lot of things and keep you motivated.

    From then on you should try to learn things progressively. Python is fairly easy and after learning it you should try a low level programming language. Like C or C++, so you can learn more about memory and how to deal with a very demanding syntax.

    Everything is progressive in programming. That's why I suggest you to start with the easy things and then go on to the not so easy but still interesting things.

  • 5 years ago

    C++ to me is a very easy language to learn, i got the hang of it in a about a couple days and i really dont spend a whole lot of time around a computer. I say start with C++

  • How do you think about the answers? You can sign in to vote the answer.
  • 1 decade ago

    Since you already have some background on HTML/CSS, i would say PHP+MySQL is the next step for you to get your hand dirtier.

    Or, if you want to try abit of desktop programming which is quite differnet than what you have been doing, try C Programming Language.

  • 1 decade ago

    A natural extension to what you've already done is to use PHP to create dynamic websites. You can set up a linux box with apache and php to get started. A great benefit to PHP is the great documentation at http://www.php.net/

    If you really want to get serious, learn C/C++ and Java. But for your next step, I would try to tackle PHP.

  • Anonymous
    1 decade ago

    Search on Net

  • Anonymous
    1 decade ago

    you should start with C/C++

Still have questions? Get your answers by asking now.