Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

I am going to learn programming

  1. May 12, 2014 #1

    adjacent

    User Avatar
    Gold Member

    I have decided to start with Visual Basic. C++ and C looks scary.
    What should I do first? Download the visual basic? I found Visual studio,I think this is better,is it?
    Is there any stand-alone version of visual studio? My powerful computer can't access internet.


    What should I do if I want to learn C++? Download C++? Where?
    What are the additional requirements I need?

    Sorry. I am just like a one year old baby when it comes to programming.
     
  2. jcsd
  3. May 12, 2014 #2

    phyzguy

    User Avatar
    Science Advisor

    I would advise against starting with Basic, as it is rarely used in technical work. My advice would be to start with either Python or Java, then move on to C/C++. What operating system are you running? If it is some version of Unix (this includes Macintosh), then C, C++, and Python are probably already installed.
     
    Last edited: May 12, 2014
  4. May 12, 2014 #3

    Borek

    User Avatar

    Staff: Mentor

    +1 to what phyzguy wrote, don't start with Basic.
     
  5. May 12, 2014 #4

    adjacent

    User Avatar
    Gold Member

    I am running Windows 7 Ultimate S1. I thought of using Python before. Can it be used to build a patch application?
     
  6. May 12, 2014 #5
    I take it you've looked at the "Express" versions and don't like them because they are not stand-alone. Here's the link anyway:
    http://www.visualstudio.com/en-US/products/visual-studio-express-vs

    Here's a link to a DVD version of the Visual Studio 2008 - which includes C++.
    Of course, it operates in the Microsoft Windows environment and generate code for Windows - and it includes the 2008 version of the Microsoft Foundation Classes. That's important for creating Dialog Boxes and most other non-trivial operating system interfaces.

    http://www.trustprice.com/643088/mi...tandard.html?gclid=CO_tueutpr4CFYMSOgodPy4ATw

    But...
    Whether you're just picking up C++ or have been coding for decades, you are going to what the internet handy while you code. There are tons of things about the Microsoft Windows operating that are only documented online - and commonly only by those who have already run into the same problems you will be running into.
     
  7. May 12, 2014 #6

    adjacent

    User Avatar
    Gold Member

    I want to learn python. How do I start?
     
  8. May 12, 2014 #7

    phyzguy

    User Avatar
    Science Advisor

  9. May 12, 2014 #8

    jedishrfu

    Staff: Mentor

    Before you jump in, check out processing.org and its IDE for java development. Its geared for beginners and casual programmers like graphics artists who want to design interactve art and comes with many example sketches that run right out of the box. There are also several books. Processing will give you a gentle introduction to Java with immediate feedback as you develop and run your sketch.

    Python is a good start too. Basic is just too... basic although many of us old programmers got our start with it when python and java were just twinkles in the eyes of their creators.
     
  10. May 15, 2014 #9

    SixNein

    User Avatar
    Gold Member

    Visual basic is ok as a first language. In fact, it's by far the most popular language because it is easy to learn and use. You'll probably get more use out of it then you will with C++ unless you intend to become a computer scientist.

    Microsoft has an express studio version that you can download from their website. Visual basic will be included in it. You just download it, install, and your ready to start.
     
  11. May 16, 2014 #10

    adjacent

    User Avatar
    Gold Member

    I have done that. I have found a stand-alone version too.
    Thanks everyone!
     
  12. May 16, 2014 #11
    Python is great. Its functional enough and is really simple.
     
  13. May 16, 2014 #12

    adjacent

    User Avatar
    Gold Member

    I don't think it's simpler than visual basic for a beginner. I will master visual basic and then go to C++.
     
  14. May 16, 2014 #13

    Borek

    User Avatar

    Staff: Mentor

    Perhaps things have changed, but in the past Basic was the best way to learn bad habits before you even knew how to walk. You may later waste a lot of time trying to unlearn what you will "learn" now.

    But it is your choice, you have an inalienable right to repeat the same mistakes others did in the past.
     
  15. May 16, 2014 #14

    adjacent

    User Avatar
    Gold Member

    Perhaps I liked Visual basic because I don't have to write graphics using Visual studio.

    If you guys thinks visual basic is bad, prove that python is better. I downloaded it some months ago and I only got a blank space. It didn't have any way to make graphics like in visual studio.
    I think I am talking non-sense here :shy:. Is there any free python IDE equilvalent to visual studio?
     
  16. May 16, 2014 #15

    jedishrfu

    Staff: Mentor

    We're not here to prove anything, you asked for suggestions and help and we gave it. Python in the opinion of many programmers is a better learning tool that is applicable across many platforms from Windows to MacOSX and Linux of any flavor. There are a raft of books on the subject. Raspberry PI uses Python as a basic teaching tool helping kids to learn programming. That should be proof enough.
     
  17. May 16, 2014 #16

    harborsparrow

    User Avatar
    Gold Member

    Might I suggest C# instead of Visual Basic? They use the same IDE, but C# is a well-behaved language, easier than C or C++, very similar to Java. I've done a lot of programming in both VB and C# and I strongly prefer C#.

    My beef about Python is the same as my beef about VB. These languages are not strongly typed, but rather duck-typed. This means, they try to infer the types of variables from how you use them, which is a fine idea except that, every once in a while, the software guesses wrongly. If you use a strongly typed language such as C# or Java, you'll have to think about the type of every variable, and IMO you will learn more.

    The duck-typed languages are so popular because beginners can be lazy and skip learning certain things, which encourages them to get off to a fast start. IMO they pay for this later in having misunderstood what is really going on in memory. Which ultimately you need to know if you're going to be a good programmer.

    Microsoft provides an Express version of Visual Studio for either VB or C#, so you can learn either language without needing to buy anything.
     
  18. May 16, 2014 #17

    adjacent

    User Avatar
    Gold Member

    Then it's decided. I will go with C# :smile:
    Yes. I don't know why I don't like python. Even though lots of people suggest it to beginners, I just can't agree with them.

    I have a question. How do I open a file in VB?
    I have searched for hours and cant find how to do that.
    I have used Diagnostic thing, file.open, IO.file.open,system.Io_Open etc. Nothing works.

    And how do I open a file in C#?
     
  19. May 16, 2014 #18

    Mark44

    Staff: Mentor

    FileOpen - http://msdn.microsoft.com/en-us/library/microsoft.visualbasic.filesystem.fileopen.aspx

    Here's a link to an MSDN article on how to read from different file types in VB - http://msdn.microsoft.com/en-us/library/wz100x8w.aspx.
    It seems that opening a file is part of either reading from it or writing to it. How to write to a text file: http://msdn.microsoft.com/en-us/library/8bh11f1k.aspx. How to read from a text file: http://msdn.microsoft.com/en-us/library/ezwyzy7b.aspx.
    If you write C# or VB code, a good place to start for documentation is MSDN.
     
  20. May 16, 2014 #19

    harborsparrow

    User Avatar
    Gold Member

  21. May 16, 2014 #20

    adjacent

    User Avatar
    Gold Member

    Thanks guys.
    I have a very important question. How do you guys remember all those functions(Whatever it is. Like FileOpen , Public static or whatever.)? Do you keep a list of them?
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook