I want to learn how to program. Where do I begin?

I am very technically skilled, and am a very able person. I am a quick learner, and I do not give up under pressure or time constraints. I have even assembled my computer by myself, with no assistance or outside sources other than Newegg. I intend to the fullest to undergo the most rigorous training possible until I am able to program quickly and as efficiently as possible.

I would like some expert help on where to begin. I have already dabbled a little bit in Visual Basic, but as the title suggests - it is quite basic and I wish to go deeper into programming. I didn't learn much about how code interacts with hardware while using Visual Basic. All I learn to do was place buttons and then link them to certain actions.

Please, share your knowledge with me and guide me towards a more enlightened outlook into the world of computers.

6 Answers

  • 1 decade ago
    Favorite Answer

    Today, a developer is never concered with the interaction between hardware and code, he is glad that he can forget about it, Java is praised for being hardware-independent. If you wish to develop applications, Java is the right start, better than Visual Basic, because with VB you will get bad habits. But developing applications is all about linking buttons to actions.

    If you wish to get deeper and closer to hardware, you have to become automation engineer or the like. That are people who write software for controlling industrial machines, they write for specific hardware using specific languages. But that isn't a very good job. If you don't go to the production industry but remain at the university, you'll be able to get into interesting areas like the programming of robots, that will be much better.

    This is however not as easy as becoming a PC software developer, because you can't try it at home. You have to go to university and study either computer science or automation engineering (I would recommend the first, it is broader and offers you more areas to specialize after you have found out where your exact interests are). If you are too young yet to go to university, learn the usuall PC software development with Java and/or C#, it will make your later education much easier, the experience you will get with it will be useful even if you get to be an automation engineer later, and you will be able to make your own money while studying not by working at McDonlad's, but by writing software (which is much more pleasant, I've tried both).

    And a piece of advice: programming is not at about being quick and efficient. Programing is a very creative, multifaceted task which poses various challenges. Writing a program which is elegant, has no bugs, is versatile and maintainable, and pleases the customer's wishes despite the fact that he never knows what his wishes are is the thing which makes you a good developer. If you do it slowly and achieve all these things, you did your job well. If you do it quickly but don't achieve that quality, it isn't well. If you are able to achieve all this and do it quickly, then you are a genius and shouldn't waste yourself on such low tasks, but become a scientist and bring enlightment to humanity.

    Source(s): I am a developer and my dad is an automation engineer
  • 1 decade ago

    Mishka, let me tell u first and foremost tht no language is by its nature basic. I hve dabbled with Visual Basic 6.0 a lot and later found my perceptions changing as i moved deeper into it. If u decide 2 move into API functions in Visual Basic 6.0, u wil find tht ther r more things to Visual Basic thn placing buttons and coding the events. Although those functions r nt written in Visual Basic, but they still gve u the capability 2 perform certain complex functions in Visual Basic. And VB was nvr developed for this sort of programming, It is a RAD(Rapid Application Development) tool.

    But i agree wit u on one thing, tht Visual Basic does nt directly interact wit H/W as does C/C++. I cannot advise u as to which language 2 learn unless i know ur background and interests.

    But u can definitely start wit C to get a feel of programming and then later C++ 2 get a feel of Object-oriented programming. Once u feel tht u hve understood the concepts very well. U can decide whether u move further wit Java/DOTNET bcoz these 2 r the happening technologies. Sadly VB is passe.

    And one more thing, u cannot always say tht u wanna code in languages which interact wit H/W coz even if a language does u might nt use those features. Take for example C#. It has certain advanced capabilities which r most of the time nt used(I m talking abt jobs in India). Many ppl who work on ASP.NET, code in C# but they dont know the basic fundamentals of the language coz they r nt required to actually code applications.

    I hope this answer is helpful. ALL THE BEST!!!

  • 4 years ago

    in case you have never programmed on your existence and you decide directly to study the thank you to application, do no longer hassle discovering C++ or Java. The complicated syntax shape in those languages have get interior the way of unquestionably programming techniques. I advise Ruby or Python as a creation language. (Python extraordinarily.) I relatively propose taking a class for programming nevertheless.

  • 1 decade ago

    I agree with pradosh, although i'm not a good programmer. I'm also learning Java right now. I am a Java beginner leaner. In my opinion, Java is much more powerful than VB. VB is a lot easier to be used than Java. Try to learn Java, because Java can be used to program an online application.

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

    I would start with JavaScript. It is relatively easy, there are plenty of resources, and the feedback in immediate ... as far as trying something and seeing what happens.

    All you need is a browser and a text editor to get started. It is "baby steps" and "low hurdles".

    Also, PHP, but there is more to get "knitted together".

  • 1 decade ago

    By buying Computer first.

Still have questions? Get your answers by asking now.