loading

I would like to start programming but there are so many types it seems I don't which one to choose. Any suggestions?

First I wish to thank everyone for their comments. Secondly I should apologize for not being a little more specific in my needs.

I have had some experience, back in the two floppy pc/commadore days, with basic programming. I wrote database and spreadsheet program with it.

My immediate needs are more for programming chips to use on small robotic projects. There seems to be several out there to do this. I just thought if I were going to have to learn one it should be one that would take me from -move back and forth - to more complicated programs to allow more autonomous movement as well as other functions.

I just didn't want spend the money on arduino when maybe basic stamp? or whatever is where I should be.

sort by: active | newest | oldest
frollard6 years ago
Seconded all the others;

I really reccommend C (or C++) for it's ability to do very basic things, all the way up to gigantic projects. It's commonly used for microcontrollers, which is handy.

Not so much programming as scripting: Python can do tonnes of neat tricks. Great for working with files, pictures, text, data, i/o, networking.

BASIC (in a bajillion flavours) can do just that, basic things. Good for a nice 'scripted i/o experience'. Qbasic, TI Calculator Basic, even dos batch files work similarly.

I learned first calculator basic and Turbo Pascal. That was a blast in jr. high school.

I hav started my programming in C++ then done a little work in java.... now i want to improve my programming with java n JSP..... Plz give me some suggestions
"Not so much programming as scripting: Python can do tonnes of neat tricks."

Ouch. Not sure of the difference between programming and scripting, aside from removing the need for an explicit "Compile" process. I'd at least say Python has a feature set much closer to traditional programming languages than it does to batch files. And you can get a proper integrated development environment for it if you want.

If the original question could be read as "what's a good first programming language", and without any details on a specific application (such as microcontroller or database work), I'd say Python in a heartbeat. I'd always thought it was easier to move from higher-level languages to lower-level ones than the other way around, but I know there are others who completely disagree.

References:
Dive Into Python
Python Tutorial
How to Think Like a Computer Scientist (Python Version)

I knew I'd catch flack for that :) Indeed you are correct - it's incredibly feature rich, but it shares a lot in common with javascript and batch, as an example. (hence why I recommend it)
What we did at school (and they are really concerned about programming there: we are even doing great big programming projects instead of spending something like three weeks carrying bricks and whatever all normal people have to do after Year 10 (11 actually) was go through a number of very different languages: starting with a robot thing that goes up, down, left and right and colours squares on its' field, to boolean algebra, to something called RL and finally get to really old Borland Pascal version 1993 or something like that.
The idea is that learning to write in such a language on a blue screen 1) teaches that a computer is not 'smart', but is a something made out of little metal thingies and 2) it is easy to learn any other language afterwards with a 'Whatever for Dummies' book. (It turned out right, as I got an Arduino for Christmas and learned to write for it in about an hour... But I still sometimes check myself with a book).
lemonie6 years ago

ZX-BASIC?

http://www.zx81.nl/

L
What you mean.
Language?
For a starter a would recommend using Visual Baisc 2010.

Then moving on to C, or Python. Then C++

But at least some HTML knowledge to start with, to get you on the 'programming line'

Although I myself don't count HTML as 'programming'

Have Fun
HTML is most definitely not programming. It is a document-content markup language ("this is a chapter, this is a sectin, this is a paragraph"). Having said that, it is clear that HTML is used as a "visual description" or "layout" language :-(
Yeah yeah... You are right. But how you construct HTML documents by hand still requires "programming" type reasoning. The process for the content creator is virtually the same. And making things with HTML can have relatively fast gratification for a beginner. In my opinion (ps, I'm right.. nuk nuk nuk)
This seems like a decent enough prescription to me.
dawning6 years ago
The answer is dependent on you. What you want to accomplish is sort of the main question.

Personally, I'm inclined to suggest that programming beginners (who mean to go somewhere) ought to start with a gentle and powerful scripting language like Python (which, if need be, CAN be compiled in to a binary).

But, if you're not of the command-line persuasion as I hope you are, then you may have an easier time jumping in to something that isn't about the language, but rather, an Integrated Development Environment (IDE).

If you want to make graphical applications as quickly as possible, then run with Visual Studio (for Windows) or XCode (for Mac OS). Both are easy to get and there's lots of documentation to explore. I haven't really done many projects that needed a GUI in Linux, but for those, I've just used tcl/tk for Python.

In general, a good way to start can be to find example code for things and screw around with it. That'll help get you past a bunch of crap at first, you can learn the more interesting details once you hit a wall.

Just some thoughts...
That's a tricky question I think, and the answers get "religous" very quickly, as each person puts forward the "One True Way to programming Enlightenment". I can offer my own experience, but bear in mind I am from an earlier generation of programmer.

I started learning programming by hanging around in Radio Shack and using a TRS-80.

I bought a Sinclair ZX80, then a ZX81. At University, we learned Pascal programming on shared terminals, where compiling a program took so long, we could go for a coffee, or even for a good night's sleep, before it was ready - I was only a few years after jobs were submitted on punched cards !

After University, I learned to program in assembler language on several microcontrollers, whilst continuing to program big projects in UCSD Pascal, on the "P system"

I now program embedded systems in dialects of Pascal and Dialects of C, I program PC systems in Delphi.

My professional work is in making physical objects work, when controlled by computers, so my answers aren't the same as someone working on web technologies, but, back down in the basics, I can't help but think a classic, line-numbered BASIC is a fine way to start, but then you should graduate to C or Pascal quickly.

Steve