Re: are there any tutorials that someone completly new to programming can understand?
gbp <gpepice1@nycap.rr.com> wrote:
There are a lack of books on Python in general so there's a really big lack of books on niche things. All the books on python are for people who basically know how to program already.
Thanks for taking the time to look back and summarize. I think you're providing useful guidance to people venturing into computers and programming and wanting some overview/perspective. I used to work for a textbook company doing stuff for junior high schoolers. This was 1984 and Logo and BASIC (not Visual Basic) were the two teaching languages most used at that level. I would agree with you completely that Python is a good teaching language and that we need more teaching materials which phase in programming and computer basics at the same time. Or we could blend programming, computer, and basic math concepts (the approach I prefer, and call the 'Numeracy + Computer Literacy' or 'math through programming' approach) If I were to go back to that text book company (McGraw-Hill) now that 15 years have gone by, I'd be pushing Python as the "new BASIC". DrScheme is another good one, for giving the flavor of a LISP-style approach (which is quite different -- takes some getting used to (Logo is also LISPish)). The "Computer Programming for Everybody" initiative, which did get some funding initially, was about taking advantage of Python's teachability. The DARPA grant has run down, but there's still a special interest group (SIG) exploring the topic. See: http://www.python.org/sigs/edu-sig/ Also, maybe check out my "math through programming" essay, which starts with easy Python (3-to-8 line functions) and builds up to more complicated stuff, getting quickly into 3D graphics (by joining forces with Povray, also free): http://www.inetarena.com/~pdx4d/ocn/numeracy0.html At the bottom of the first section, is a link to the high school in Virginia where Jeff Elkner teaches. His program is one of the more dynamic and Python-invested. I suggest you explore his school's website for Python- learning resources (or, if you already know Python pretty well, point your friends just starting out to this resource). Kirby
Python really is a good teaching langauge because its both 'correct' and fairly complete. You can write a lot of cool programs in python fairly easily compared to C. I think that college professors and high school teachers should teach Python insted of BASIC. BASIC is often taught to lower level programming classes because its accessable. However, basic is a pretty bad langauge. For higher level classes C (now C++, or even Java) is taught. C is great if you have 4 years and are highly motivated to learn about computers.
When your learning on your own the quality of the book can be as if not more important than the langauge. Python is a great language but...
People have learned with all different kinds of langauges. There is no right way to learn. Real programmers usually know 2-5 langauges fairly well. Since the demand for programmers is so high theres a whole new bred of paid visual basic programmers who barely know anything about programming langauges-- a similar thing is true for network administrators. Some people who have gone through school or have a lot of work experience may have been exposed to ten or even twenty. Langauge nuts may 'know' even more. I'm only 25 and iv'e written programs in basic(many flavors), logo, pascal, C/C++, lisp(weird), Perl(very weird), bash(sucks), SQL, and javascript(not that good), a little java, and now python (yeah!).
Different langauges are good at different things, so there is never going to be a best langauge. People may argue about what the best langauge is in a particular niche.
Since the major obstical is going to be motivation you should pick a language that you think is cool. After that try to lacate decent teaching materials. If you can't find them move on. If you have an interest in a particular field try a langauge that you know is used in that field.
My advice to you is that the best books for learning programming come out of the acedemic world. Try to get a book that is meant for a first and second semester course in Computer science and is written by a professor or other acedemic. Try writing some toy programs.
This is my short list of ones to check out:
**** Logo: A fun little langauge that has a built in graphics engine. This is often used to teach kids but unlike basic it is actually a good langauge.
*** C: Not for the faint of heart but if you want to know the internals of how computers actually work this may interest you. Note I said C not C++.
*** Pascal: This is actually designed as a teaching langauge. (I think Logo was too) Not bad but it may be hard to write something cool in it. Lots a lanagues like Delpi and modula-2 are pascal-like.
*** Java: The OOP is kinda tough but this language is solid. Good book essential. IDE recommended.
*** Linux: Not a programming language :) Good way to learn about computers and operating systems. Also includes about 10-20 free langauges. SUSE Linux has the most stuff.
** 1/2 Visual Basic: Easy to actually build things with. Just don't let it go to your head. Your not a real programmer until you know TWO langauges :)
*** HTML: Not exactly a langauge either but may be interesting. You combine this with other stuff to make web sites.
*** SQL/Databases: Kindof a career thing. Databases are kindof interesting in there own right. SQL is a special lanaguage to manipulate databases. Access programmers are kindof like the Visual basic programmers. (Your not a real DBA until you know a 'real' database like Oracle, DB2, or Sybase :)
participants (1)
-
Kirby Urner