Math Is Fun Forum

  Discussion about math, puzzles, games and fun.   Useful symbols: ÷ × ½ √ ∞ ≠ ≤ ≥ ≈ ⇒ ± ∈ Δ θ ∴ ∑ ∫ • π ƒ -¹ ² ³ °

You are not logged in.

#1 2011-07-04 06:05:20

123ronnie321
Member
Registered: 2010-09-28
Posts: 128

Programming and Computing

I do not have much knowledge about programming.

Which programming language should I start with?
Can you suggest me books or any link from where I can learn that language?

Offline

#2 2011-07-04 06:16:55

bobbym
bumpkin
From: Bumpkinland
Registered: 2009-04-12
Posts: 109,606

Re: Programming and Computing

Hi;

I am being called away to light my neighbors barbecue so I will definitely give you some cool advice when I get back later. I also plan to put a piece of my own meat on there. In the meantime what kind of applications do you want to work on? Games? Utilities? Or Mathematical programming?


In mathematics, you don't understand things. You just get used to them.
If it ain't broke, fix it until it is.
Always satisfy the Prime Directive of getting the right answer above all else.

Offline

#3 2011-07-04 06:34:48

123ronnie321
Member
Registered: 2010-09-28
Posts: 128

Re: Programming and Computing

Hi Bobbym,

Games? Utilities? Or Mathematical programming?

All of them fascinate me. But isnt there something that they have in common?
I would like to make simple applications like a simple calculator or something.
Or like writing a programme that gives all permutations of 'abcde'.

Offline

#4 2011-07-04 10:07:03

bobbym
bumpkin
From: Bumpkinland
Registered: 2009-04-12
Posts: 109,606

Re: Programming and Computing

Hi;

But isnt there something that they have in common?

Yes and no! Most people back in the past started out by learning BASIC (Beginner's All-purpose Symbolic Instruction Code). Their are probably still free versions of QBASIC running around. Liberty BASIC is a decent shareware version.

Here is a bunch of BASIC's

http://www.google.com/Top/Computers/Pro … ges/BASIC/

The language you start with sort of burns itself into your mind. You may learn more languages but your style will pretty much go with your first.

C++ can do everything you mentioned and it is fast. GNU C is free but Borland C++ is better but is shareware.

Python is coming along fast and it is free.

Let me recommend a strange choice. If I were in your spot and just learning I would start with Mathematica or Maple. They provide interesting languages that can mix the power of mathematics in your code. In this they far outstrip C++ or any other language. They are the standards in industry and science. They are shareware but can be gotten at a 90% discount if you are a student or a faculty member. Sage is the freeware alternative.


In mathematics, you don't understand things. You just get used to them.
If it ain't broke, fix it until it is.
Always satisfy the Prime Directive of getting the right answer above all else.

Offline

#5 2011-07-04 16:31:53

gAr
Member
Registered: 2011-01-09
Posts: 3,482

Re: Programming and Computing

Hi 123ronnie321,

I guess you may begin with an interpreted language like python. It's much slower than a compiled language like C, where your code gets converted to a binary file which is platform dependent. The speed difference is visible only when there is a lot of looping involved, even the slowest processors today are fast, you know! But there are ways to speed up python (E.g Cython).

For mathematical packages, there are mathematica, maple, sagemath etc.

Then there's assembly language, where along with your algorithm, you need to take care of the memory, registers, stack etc yourself! Certainly not for beginners.

But just like people have a taste for food, not everybody likes or dislikes the same language. Check for the programming paradigms. Once you get to know of the basics of programming in any language, you can easily learn others.


Reading codes written by others is a good way to learn. Experience yourself to know what you like.

Here's a small list: http://www.buzzle.com/articles/list-of- … uages.html

Edit: Just saw that it was discussed some time ago: http://www.mathisfunforum.com/viewtopic.php?id=7921

Last edited by gAr (2011-07-04 22:52:30)


"Believe nothing, no matter where you read it, or who said it, no matter if I have said it, unless it agrees with your own reason and your own common sense"  - Buddha?

"Data! Data! Data!" he cried impatiently. "I can't make bricks without clay."

Offline

#6 2011-07-04 22:51:49

123ronnie321
Member
Registered: 2010-09-28
Posts: 128

Re: Programming and Computing

Hi bobbym and gAr,

Thank you.
I have decided to start with C++ because it will be used in our college more widely than other languages.
Do you know of any good book for introduction to C++?

Offline

#7 2011-07-04 23:02:34

gAr
Member
Registered: 2011-01-09
Posts: 3,482

Re: Programming and Computing

Hi 123ronnie321,

I updated my previous post.
Check the last link, it has another discussion.

For C++, how about a book written by Bjarne Stroustrup himself?
I didn't like most of the books on programming languages which I read.
One book which I liked is K & R's "The C programming language", you can imagine, it still sells after so many years!


"Believe nothing, no matter where you read it, or who said it, no matter if I have said it, unless it agrees with your own reason and your own common sense"  - Buddha?

"Data! Data! Data!" he cried impatiently. "I can't make bricks without clay."

Offline

#8 2011-07-04 23:27:28

123ronnie321
Member
Registered: 2010-09-28
Posts: 128

Re: Programming and Computing

Thanks for that link. smile  I will need more time to read and understand the posts there
I will try to find the books that you have mentioned.
Thanks again!

Offline

#9 2011-07-04 23:36:33

bobbym
bumpkin
From: Bumpkinland
Registered: 2009-04-12
Posts: 109,606

Re: Programming and Computing

H 123ronnie321;

When I was programming init I was partial to Herbert Schildts book on C++. Hope you have fun!


In mathematics, you don't understand things. You just get used to them.
If it ain't broke, fix it until it is.
Always satisfy the Prime Directive of getting the right answer above all else.

Offline

#10 2011-07-05 01:39:42

gAr
Member
Registered: 2011-01-09
Posts: 3,482

Re: Programming and Computing

Hi all,

I don't know about Herbert Schildt's book on C++,
but this guy doesn't have a good opinion about his book on C http://www.seebs.net/c/c_tcn4e.html !

Last edited by gAr (2011-07-05 01:43:28)


"Believe nothing, no matter where you read it, or who said it, no matter if I have said it, unless it agrees with your own reason and your own common sense"  - Buddha?

"Data! Data! Data!" he cried impatiently. "I can't make bricks without clay."

Offline

#11 2011-07-05 01:53:09

bobbym
bumpkin
From: Bumpkinland
Registered: 2009-04-12
Posts: 109,606

Re: Programming and Computing

Hi all;

I have made the same comment on the Schildts book! I know he is a member of the C commitee so I know he is qualified to speak. But in this case he is overstating his view. Just because a book has some errors does not mean it is without value.

If I remember I used it as a giant reference of commands. I feel in that capacity it was the best one I knew of. If you are lucky enough to have Borland C Builder, then you have access to Minnie's 80 or so reference guides. These are the best, if not, Herbies book is okay.


In mathematics, you don't understand things. You just get used to them.
If it ain't broke, fix it until it is.
Always satisfy the Prime Directive of getting the right answer above all else.

Offline

#12 2011-07-05 01:55:34

123ronnie321
Member
Registered: 2010-09-28
Posts: 128

Re: Programming and Computing

Thanks for your inputs, bobbym and gAr.
I had one more question - Which compiler should I use? I have Windows Vista Home Basic. But I may change it. So should I go for XP or 7?

Offline

#13 2011-07-05 01:57:28

bobbym
bumpkin
From: Bumpkinland
Registered: 2009-04-12
Posts: 109,606

Re: Programming and Computing

Want to improve your machine? Get rid of Vista and do not touch 7. Go back to XP!


In mathematics, you don't understand things. You just get used to them.
If it ain't broke, fix it until it is.
Always satisfy the Prime Directive of getting the right answer above all else.

Offline

#14 2011-07-05 02:08:55

123ronnie321
Member
Registered: 2010-09-28
Posts: 128

Re: Programming and Computing

Okay. I will do that ASAP!
And which compiler should I use that is compatible with XP and is free too!

Offline

#15 2011-07-05 02:12:38

bobbym
bumpkin
From: Bumpkinland
Registered: 2009-04-12
Posts: 109,606

Re: Programming and Computing

I believe that GNU C is fine for 32 bit platforms and XP. I think gAr is running it so you can ask him.


In mathematics, you don't understand things. You just get used to them.
If it ain't broke, fix it until it is.
Always satisfy the Prime Directive of getting the right answer above all else.

Offline

#16 2011-07-05 02:16:12

123ronnie321
Member
Registered: 2010-09-28
Posts: 128

Re: Programming and Computing

Hi gAr,

wave
Is GNU C fine for someone who uses Windows XP?

Offline

#17 2011-07-05 02:16:17

gAr
Member
Registered: 2011-01-09
Posts: 3,482

Re: Programming and Computing

Hi bobbym,

Yes. Even I had used his book as reference a few times, but I don't remember whether I felt good or bad.
These days I depend only on internet and man command.

Hi 123ronnie321,

The laptop I bought had Vista in it, and it's such a drag!
I have dual booted mine with linux mint.
The man command available in linux is very useful, and most distros have compilers with it, so you can code right away!


"Believe nothing, no matter where you read it, or who said it, no matter if I have said it, unless it agrees with your own reason and your own common sense"  - Buddha?

"Data! Data! Data!" he cried impatiently. "I can't make bricks without clay."

Offline

#18 2011-07-05 02:21:27

bobbym
bumpkin
From: Bumpkinland
Registered: 2009-04-12
Posts: 109,606

Re: Programming and Computing

Yes. Even I had used his book as reference a few times,

For me programming is mainly looking up commands. That book saved my bacon a few times.

gAr is right about that. Linux distros usually come with a C. You can boot them right along side your windows. Or you can run them from a CD!. The new Ubuntu allows you to run it while windows is running.


In mathematics, you don't understand things. You just get used to them.
If it ain't broke, fix it until it is.
Always satisfy the Prime Directive of getting the right answer above all else.

Offline

#19 2011-07-05 02:25:58

gAr
Member
Registered: 2011-01-09
Posts: 3,482

Re: Programming and Computing

Ah, one more thing.

I forgot to mention virtualbox, you can try your distros directly, it even has provisions to exchange data between guest and host OSes. I guess that may be a good way!


"Believe nothing, no matter where you read it, or who said it, no matter if I have said it, unless it agrees with your own reason and your own common sense"  - Buddha?

"Data! Data! Data!" he cried impatiently. "I can't make bricks without clay."

Offline

#20 2011-07-05 02:32:06

bobbym
bumpkin
From: Bumpkinland
Registered: 2009-04-12
Posts: 109,606

Re: Programming and Computing

Hi;

Yes, there are two of those type programs.

You see that once you get into a compiled language like C++ that you begin to learn about OS's, booting and a little bit of hardware and machine language.


In mathematics, you don't understand things. You just get used to them.
If it ain't broke, fix it until it is.
Always satisfy the Prime Directive of getting the right answer above all else.

Offline

#21 2011-07-05 02:39:20

gAr
Member
Registered: 2011-01-09
Posts: 3,482

Re: Programming and Computing

My recommendation is to run linux as primary OS and run windows in virtualbox, if it's inevitable!

Last edited by gAr (2011-07-05 02:39:53)


"Believe nothing, no matter where you read it, or who said it, no matter if I have said it, unless it agrees with your own reason and your own common sense"  - Buddha?

"Data! Data! Data!" he cried impatiently. "I can't make bricks without clay."

Offline

#22 2011-07-05 02:43:08

123ronnie321
Member
Registered: 2010-09-28
Posts: 128

Re: Programming and Computing

Virtualbox sounds cool. But I dont think I will need it in the near future.
You guys know so much about computers!

Offline

#23 2011-07-05 02:48:27

bobbym
bumpkin
From: Bumpkinland
Registered: 2009-04-12
Posts: 109,606

Re: Programming and Computing

Hi;

Since linux is more versatile. It has solved the problem of a good bootloader, it can run off a CD or USB drive. It can run from a folder in Windows! I do it the other way. I run a hybridized XP as primary and run any linux I want in tandem.


In mathematics, you don't understand things. You just get used to them.
If it ain't broke, fix it until it is.
Always satisfy the Prime Directive of getting the right answer above all else.

Offline

#24 2011-07-05 02:49:42

gAr
Member
Registered: 2011-01-09
Posts: 3,482

Re: Programming and Computing

Well, what have you decided to do?

If you want to try gcc on windows, there's cygwin and mingw. But I haven't tried it.
Anyway, there are so many compilers, you may try the ones which are not gcc also.

Last edited by gAr (2011-07-05 02:51:33)


"Believe nothing, no matter where you read it, or who said it, no matter if I have said it, unless it agrees with your own reason and your own common sense"  - Buddha?

"Data! Data! Data!" he cried impatiently. "I can't make bricks without clay."

Offline

#25 2011-07-05 03:10:09

bobbym
bumpkin
From: Bumpkinland
Registered: 2009-04-12
Posts: 109,606

Re: Programming and Computing

Not to keep confusing you but I think you should take a little more time and reconsider my advice. I still think a CAS is the right way to go. You could start with Sage. You would be learning mathematics and python at the same time.

But maybe you have already chosen and further advice is non essential. C++ is a good choice, they all are. Let me know how it works out.


In mathematics, you don't understand things. You just get used to them.
If it ain't broke, fix it until it is.
Always satisfy the Prime Directive of getting the right answer above all else.

Offline

Board footer

Powered by FluxBB