I am going to learn programming

  • Thread starter adjacent
  • Start date
  • Tags
    Programming
In summary: I don't know how to start.I don't think it's simpler than visual basic for a beginner. I will master visual basic and then go to C++.
  • #1
adjacent
Gold Member
1,552
63
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.
 
Technology news on Phys.org
  • #2
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:
  • #3
+1 to what phyzguy wrote, don't start with Basic.
 
  • #4
phyzguy said:
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.
I am running Windows 7 Ultimate S1. I thought of using Python before. Can it be used to build a patch application?
 
  • #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.
 
  • #6
I want to learn python. How do I start?
 
  • #8
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.
 
  • #9
adjacent said:
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.

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.
 
  • Like
Likes 1 person
  • #10
I have done that. I have found a stand-alone version too.
Thanks everyone!
 
  • #11
Python is great. Its functional enough and is really simple.
 
  • #12
Manraj singh said:
Python is great. Its functional enough and is really simple.

I don't think it's simpler than visual basic for a beginner. I will master visual basic and then go to C++.
 
  • #13
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.
 
  • #14
Borek said:
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.
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?
 
  • #15
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.
 
  • #16
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.
 
  • #17
harborsparrow said:
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#.
Then it's decided. I will go with C# :smile:
My beef about Python is the same as my beef about VB. These languages are not strongly typed, but rather duck-typed. 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.
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 can't 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#?
 
  • #18
adjacent said:
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 can't find how to do that.
I have used Diagnostic thing, file.open, IO.file.open,system.Io_Open etc. Nothing works.
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.
adjacent said:
And how do I open a file in C#?
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
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?
 
  • #21
I never deliberately "memorize" stuff like that. If I use a function often enough, I automatically come to a point where I remember the syntax. If I don't use it very often, I remember the name, or at least "there's a function for that," and I look it up quickly on a website or in one of my reference books (for C++ I use Stroustrup's "The C++ Programming Language").
 
  • #22
adjacent said:
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?

Intellisense helps *ALOT*.
 
  • #23
DavidSnider said:
Intellisense helps *ALOT*.
Yeah. Especially to beginners. I like it a lot.
 
  • #24
The one caveat people have about python is the indentation feature where code is blocked together if it has the same indentation. If you're off by even one space it will be blocked differently in contrast to using { } in other languages.

The second caveat for me at least is the explicit use of self as the first argument when defining the methods of a class:

Code:
    def myMethod(self,arg1):
        print "Hello "+arg1
        ...

vs calling methods within your class via:

Code:
    def someOtherMethod(self,arg1):
        self.myMethod(arg1)
        ...

and the third caveat is the use of predefined methods like __init__ for the constructor:

Code:
    def __init__(self):
        ...


that use the leading __ characters.

My caveats are mainly rooted in my having programmed extensively in java.

But recently, I've come back to Python for creating a useful developer tool for working with java files and maven projects and its working out quite well.
 
  • #25
My school taught vb when i was 13. I am 15 now, and must say python is much better. Its really simple. But the thing is if you know any other language, you can easily master python in a day.
 
  • #26
adjacent said:
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?

So you have already learned one lesson. There is the language, and there are the libraries that do lots of useful things. With C# (and VB for that matter) there is a "standard library" (even though it is not officially called that way) that is almost part of the language. You CANNOT remember all what it contains, it is huge. Keeping lists is a waste of time, too, because it already has documentation. Familiarise yourself with it, and train yourself to have a look there whenever you want to do something - chances are, it is already there.
 
  • #27
harborsparrow said:
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.

When it comes to writing software the wrong way, language selection has very little to do with anything. We develop different languages because we try to reach different audiences with different application domain needs. To write high quality code, one really does need to go through a computer science curriculum with a deep study in algorithms, data structures, operating systems, and bare metal programming. Languages don't infer that kind of knowledge to a person. In fact, some languages like C++ can even make things worse because they are less restricted on things one can do.

So you need to ask yourself what you want to do before selecting a language. For example, if your looking to write a lot of math stuff for engineering or something, you would probably want to learn FORTRAN.
 
Last edited:
  • #28
adjacent said:
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?

There are three components to it:
1. I know a lot of languages in addition to a lot of computer science related stuff. In many cases, I know what I'm looking for even if I don't remember what it is being called in some language.
2. Software engineers in particular often spend their working day using some particular language for some application domain. And so they end up remembering a lot of things through repetition.
3. Learn to use help and look stuff up.

But as mentioned in above posts, your not going to memorize every function that someone can make.
 
Last edited:
  • #29
jtbell said:
I never deliberately "memorize" stuff like that.

There's a nice quote from Stoustrup: "If you fully understand int and vector, you understand the whole of C++. The other 1300 pages of the language standard document are just details."
 
  • #30
Look for a C# cookbook these are always helpful for finding recipes on how best to do some task like read a file, walk a directory list, sort an array... the list goes on...

https://www.amazon.com/dp/059651610X/?tag=pfamazon01-20

A newer release of this book may be in the works since people are at C# 5.0 now with betas of C# 6.0 in April 2014.

http://en.wikipedia.org/wiki/C_Sharp_(programming_language)
 
Last edited by a moderator:
  • #31
I must say that C# is better than VB.
It's not as easy to learn but it seems much better.
 
Last edited:
  • #32
You can learn more online about this.

As you want to going programming, so you can learn more many tutorial site about this.
 
  • #33
As to the question of "how to remember specificly how to code something", I have one suggestion. And that is to keep, filed in some well-organized fashion, all the code you ever write. In the course of my job, I work with many different programming languages, sometimes within a single day. So I can remember some things but there are always some details that I can't remember. However, I can remember that I once wrote code that did that, and I can pretty easily find the code that I already wrote and then adapt it or learn again from it the details that I need. This is one reason that experience in programming, over time, can really pay off.

All the other strategies suggested above are also very useful.
 
  • Like
Likes 1 person

1. What is programming?

Programming is the process of creating instructions or code for a computer to follow in order to perform a specific task. It involves writing, testing, and debugging code to create software, applications, and websites.

2. Why should I learn programming?

Learning programming can open up many opportunities for you in various industries such as technology, finance, healthcare, and more. It also helps develop critical thinking and problem-solving skills, and allows you to create your own projects and turn your ideas into reality.

3. What are the most important programming languages to learn?

The most important programming languages to learn depend on your goals and interests. Some popular languages include Java, Python, C++, and JavaScript. It's important to research and choose a language that aligns with your career goals and the type of projects you want to work on.

4. How long does it take to learn programming?

The time it takes to learn programming varies for each individual. It depends on factors such as your dedication, previous experience, and the complexity of the language you are learning. With consistent practice and dedication, you can start creating basic programs within a few months.

5. What resources are available for learning programming?

There are many resources available for learning programming, including online courses, tutorials, books, and coding bootcamps. It's important to find a resource that works best for your learning style and to practice regularly to improve your skills.

Similar threads

  • Programming and Computer Science
Replies
1
Views
722
  • Programming and Computer Science
Replies
2
Views
277
  • Programming and Computer Science
Replies
10
Views
3K
  • Programming and Computer Science
Replies
2
Views
1K
  • Programming and Computer Science
Replies
16
Views
1K
  • Programming and Computer Science
Replies
33
Views
2K
  • Programming and Computer Science
Replies
15
Views
1K
  • Programming and Computer Science
Replies
8
Views
866
  • Programming and Computer Science
12
Replies
397
Views
13K
  • Programming and Computer Science
Replies
17
Views
1K
Back
Top