Re: Learning more/Linux programming books
Steve Lamb wrote: I don't know, I think if there were a language to start newbies out on, it is perl. Don't have to worry about many of the things that other languages force upon you yet gives you a good gounding in how those other languages work. Heaven, no! I think its quite a sinn to give perl to a newbie, perl corrupts. I use Perl since two years and I quite like it, but only because I can choose to use either imperative or oop thinking in perl and I dont have to every variable. And thats the reason why a newbie should start with a a structured language like java (oop), pascal (imperative) or scheme (functional/lists oriented), so she/he learns to order hers/his thoughts and get a habit of problem solving. Perl gives you every opportunity to everything in one or two or in any other way, and I don't think that this is a good start in programming ... soryy, my 2 euros mfg -- --- Andreas Sliwka --- http://emil.nef.wh.uni-dortmund.de/~goff talk to me: [EMAIL PROTECTED]/ICQ:13961062
Re: Learning more/Linux programming books
Andreas Sliwka wrote: Steve Lamb wrote: I don't know, I think if there were a language to start newbies out on, it is perl. Don't have to worry about many of the things that other languages force upon you yet gives you a good gounding in how those other languages work. Heaven, no! I think its quite a sinn to give perl to a newbie, perl corrupts. I use Perl since two years and I quite like it, but only because I can choose to use either imperative or oop thinking in perl and I dont have to every variable. And thats the reason why a newbie should start with a a structured language like java (oop), pascal (imperative) or scheme (functional/lists oriented), so she/he learns to order hers/his thoughts and get a habit of problem solving. Perl gives you every opportunity to everything in one or two or in any other way, and I don't think that this is a good start in programming ... soryy, my 2 euros May I add my 2 euros as well, though I didn't read everything in this discussion? I think that OO analysis and design is fundamental for mastering OO programming. My prefered refernces are Meyer, Booch and Raumbaugh (OMT). I think I'd better hide under the table to avoid the flames :-). Mamoun -- Mamoun ALISSALI LIUM Tel: (33-2) -02-43 83 38 47 UNIVERSITE DU MAINEFax: (33-2) -02-43 83 38 68 Avenue Olivier MessiaenE-mail: [EMAIL PROTECTED] 72085 LE MANS CEDEX 9 http://www-ic2.univ-lemans.fr/~alissali
RE: Learning more/Linux programming books
a) It's closer to the natural language than C and, of course, C++, and all of us think in our own natural language (english, spanish, french, german, etc...) and this is the first language we use when we develope a program. This can also be a disadvantage, because programming _is_ much unlike natural language. Yes, natural language is quite far from the code of a programm but the first algorithms that one must develope for a programm are much like cooking recipes in natural language. Is there someone out there thinking in C or Pascal? organization than C or Pascal. Procedural programming is more structured than BASIC, but OO programming is much more structured than procedural programming. Pascal itself is an OOP language, in a way. Any pascal unit is almost and object. But if you want learning OOP just get a Pascal package with objects like Borland Pascal 7.0 for DOS. To declare an object in Pascal you must use the reserved word 'OBJECT'; more clear water. Learn C is not necessary the way to understand linux. To understand linux you must know how to programm devices like controllers, video cards, sound cards, etc..., and programm devices is something that you can do with Pascal also. This I agree with. However, reading C code written by experts requries some understanding of C on its own. You can start with any language. For a complete beginner, I would advocate Scheme. Even if you don't want to do big projects in Scheme, you can start very fast. A good book on programming (using Scheme) is Structure and Interpretation of Computer Programs, Abelson/Sussman. I can't say anything about Scheme because I don't know it. I'll put an eye on it and then I'll tell you what I think. Marcus -- Rhubarb is no Egyptian god.Debian GNU/Linuxfinger brinkmd@ Marcus Brinkmann http://www.debian.org master.debian.org [EMAIL PROTECTED]for public PGP Key http://homepage.ruhr-uni-bochum.de/Marcus.Brinkmann/ PGP Key ID 36E7CD09 Antonio A. Rivas[EMAIL PROTECTED] STARTEG Project - Oviedo - 'Even God discuss with the devil on the details' -
RE: Learning more/Linux programming books
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On Wed, 20 Jan 1999 10:01:35 +0100, Antonio A. Rivas Ojanguren wrote: You can start with any language. For a complete beginner, I would advocate Scheme. Even if you don't want to do big projects in Scheme, you can start very fast. A good book on programming (using Scheme) is Structure and Interpretation of Computer Programs, Abelson/Sussman. I can't say anything about Scheme because I don't know it. I'll put an eye on it and then I'll tell you what I think. I don't know, I think if there were a language to start newbies out on, it is perl. Don't have to worry about many of the things that other languages force upon you yet gives you a good gounding in how those other languages work. - -- Steve C. Lamb | I'm your priest, I'm your shrink, I'm your ICQ: 5107343 | main connection to the switchboard of souls. - ---+- -BEGIN PGP SIGNATURE- Version: PGPsdk version 1.0 (C) 1997 Pretty Good Privacy, Inc iQA/AwUBNqaYSnpf7K2LbpnFEQIHSACg1IHWUtvsJwA/+1EPoq6PRfX8roAAoJQ5 gVVAK1U4CtVO0Oz4V9chiEJk =+woL -END PGP SIGNATURE-
RE: Learning more/Linux programming books
Yes, natural language is quite far from the code of a programm but the first algorithms that one must develope for a programm are much like cooking recipes in natural language. Is there someone out there thinking in C or Pascal? fprintf(HANDS,Me %s,SMILEY); Matthew -- Elen sila lumenn' omentielvo Steward of the Cambridge Tolkien Society Selwyn College Computer Support http://www.geocities.com/Area51/Chamber/8841/ http://www.cam.ac.uk/CambUniv/Societies/tolkien/ http://pick.sel.cam.ac.uk/
RE: Learning more/Linux programming books
On Wed, 20 Jan 1999, Steve Lamb wrote: On Wed, 20 Jan 1999 10:01:35 +0100, Antonio A. Rivas Ojanguren wrote: You can start with any language. For a complete beginner, I would advocate Scheme. Even if you don't want to do big projects in Scheme, you can start very fast. A good book on programming (using Scheme) is Structure and Interpretation of Computer Programs, Abelson/Sussman. I don't know, I think if there were a language to start newbies out on, it is perl. Don't have to worry about many of the things that other languages force upon you yet gives you a good gounding in how those other languages work. How does Python rate as a beginners language?
Re: RE: Learning more/Linux programming books
Quoting Bruce Sass ([EMAIL PROTECTED]): How does Python rate as a beginners language? Excellent. The manuals are excellent, free and, for once, you can probably get away without the O'Reilly book. I find it much easier to code cleanly than Perl (which I came from because Perl was the only way of doing shell programming on DOS), and it's the only language I've found which is as good for both quick-and- dirty and real programming. It doesn't force OOP on you, yet everything is an object. For beginners, the tracebacks are excellent, and the way `thingy` exposes everything is great. And you can try things out in the interactive interpreter. I've also found that the way in which unix (C) and the GUI (Tkinter, written in tcl) are wrapped makes it easy, for example, to do systems programming stuff from documentation written for C. Cheers, -- Email: [EMAIL PROTECTED] Tel: +44 1908 653 739 Fax: +44 1908 655 151 Snail: David Wright, Earth Science Dept., Milton Keynes, England, MK7 6AA Disclaimer: These addresses are only for reaching me, and do not signify official stationery. Views expressed here are either my own or plagiarised.
RE: Learning more/Linux programming books
How does Python rate as a beginners language? From the little I've looked at it, I'd say it's a good starting place. The syntax is clean, the organization logical, and the new learner can begin using OOP in his or her programming career. One could argue that *any* programming language could serve as a beginner's language. We all learn very complicated natural languages as children. Then, when we are older, we say, such and so other language is *so* difficult. And speakers of that language say the same thing about *our* language. I think the same applies. Each programming language has its own syntax and way of thinking. If you learn that syntax and thought-pattern from the beginning, it will be natural to you. I have been learning C from a book written for non-programmers -- it teaches both C and programming (Problem Solving and Program Design in C, by Jeri Hanly and Elliot Koffman -- I recommend it highly). This book does a fine job of teaching programming methods and C syntax, and the beginning programmer learns close to the machine, which has its own advantages (Python and Tcl, on the other hand, are purposely far from the machine, high-level languages). There are many such books for C, and I've seen them for C++ as well. It's no different than taking first-year biology, chemistry, physics, or calculus. If a person wants to learn programming, he or she can do it with just about any language (even assembler, I would argue). The difference will be in what the beginning programmer can *do* -- which varies dramatically among languages. So the question is, What language do you *want* to learn, based on what you want to *do*? == [EMAIL PROTECTED] ==
RE: Learning more/Linux programming books
On Thu, 21 Jan 1999, Harrison, Shawn wrote: How does Python rate as a beginners language? From the little I've looked at it, I'd say it's a good starting place. The syntax is clean, the organization logical, and the new learner can begin using OOP in his or her programming career. Excellent, I started (OOP anyways) with Python for those very reasons, thanks. The difference will be in what the beginning programmer can *do* -- which varies dramatically among languages. So the question is, What language do you *want* to learn, based on what you want to *do*? I have always figured that: If you are a hardware kinda guy/gal, learn assembler and C; for applications, learn some higher level languages. later, Bruce
RE: Learning more/Linux programming books
On Thu, 21 Jan 1999, Bruce Sass wrote: On Wed, 20 Jan 1999, Steve Lamb wrote: On Wed, 20 Jan 1999 10:01:35 +0100, Antonio A. Rivas Ojanguren wrote: You can start with any language. For a complete beginner, I would advocate Scheme. Even if you don't want to do big projects in Scheme, you can start very fast. A good book on programming (using Scheme) is Structure and Interpretation of Computer Programs, Abelson/Sussman. I don't know, I think if there were a language to start newbies out on, it is perl. Don't have to worry about many of the things that other languages force upon you yet gives you a good gounding in how those other languages work. How does Python rate as a beginners language? I would recommend Python www.python.org.
RE: Learning more/Linux programming books
snip I think that it is worth considering skipping the Pascal stage and going straight to C, or equivalent languages. Taking this approach a bit further, I think it is even worth considering going straight to C++, perhaps by talking first about the procedural aspects of C++ and only then, as a second stage, talking about the OOP aspects. snip Are you crazy? He's a begginner and he wants learn programming not to get mad. Let me suggest a different angle toward this issue. You are interested in learning more about programming the Linux system, right? Linux is written in C -- not Pascal, not C++, for the most part. I am not disparaging those languages, and in fact am more interested in using C++ than C. Certainly the C++ advocates feel that you can just learn to program in C++ to start with. But I decided to go ahead with C because I want to understand the Linux system well. How can you run if you don't know how to walk? If you want to learn programming the best language is Pascal: a) It's closer to the natural language than C and, of course, C++, and all of us think in our own natural language (english, spanish, french, german, etc...) and this is the first language we use when we develope a program. b) It forces you to make a highly structured code. Bad programming habits appears easier with C than with Pascal. Learn C is not necessary the way to understand linux. To understand linux you must know how to programm devices like controllers, video cards, sound cards, etc..., and programm devices is something that you can do with Pascal also. Antonio A. Rivas[EMAIL PROTECTED] STARTEG project - Oviedo (Spain)
Re: Learning more/Linux programming books
On Sun, Jan 17, 1999 at 05:05:48AM +0100, Antonio A. Rivas Ojanguren wrote: snip I think that it is worth considering skipping the Pascal stage and going straight to C, or equivalent languages. Taking this approach a bit further, I think it is even worth considering going straight to C++, perhaps by talking first about the procedural aspects of C++ and only then, as a second stage, talking about the OOP aspects. snip Are you crazy? He's a begginner and he wants learn programming not to get mad. I agree with him. Yes, he is a beginner. However, OO programming and procedural programming are different enough. If you teach the bad habits you get in C first, it is harder to change to a type safe and well organized OO programming language. How can you run if you don't know how to walk? If you want to learn programming the best language is Pascal: a) It's closer to the natural language than C and, of course, C++, and all of us think in our own natural language (english, spanish, french, german, etc...) and this is the first language we use when we develope a program. This can also be a disadvantage, because programming _is_ much unlike natural language. b) It forces you to make a highly structured code. Bad programming habits appears easier with C than with Pascal. Then you should advocate C++, because it is type safe and enforces much more organization than C or Pascal. Procedural programming is more structured than BASIC, but OO programming is much more structured than procedural programming. Learn C is not necessary the way to understand linux. To understand linux you must know how to programm devices like controllers, video cards, sound cards, etc..., and programm devices is something that you can do with Pascal also. This I agree with. However, reading C code written by experts requries some understanding of C on its own. You can start with any language. For a complete beginner, I would advocate Scheme. Even if you don't want to do big projects in Scheme, you can start very fast. A good book on programming (using Scheme) is Structure and Interpretation of Computer Programs, Abelson/Sussman. Marcus -- Rhubarb is no Egyptian god.Debian GNU/Linuxfinger brinkmd@ Marcus Brinkmann http://www.debian.orgmaster.debian.org [EMAIL PROTECTED]for public PGP Key http://homepage.ruhr-uni-bochum.de/Marcus.Brinkmann/ PGP Key ID 36E7CD09
Re: Learning more/Linux programming books
snip I think that it is worth considering skipping the Pascal stage and going straight to C, or equivalent languages. Taking this approach a bit further, I think it is even worth considering going straight to C++, perhaps by talking first about the procedural aspects of C++ and only then, as a second stage, talking about the OOP aspects. snip Let me suggest a different angle toward this issue. You are interested in learning more about programming the Linux system, right? Linux is written in C -- not Pascal, not C++, for the most part. I am not disparaging those languages, and in fact am more interested in using C++ than C. Certainly the C++ advocates feel that you can just learn to program in C++ to start with. But I decided to go ahead with C because I want to understand the Linux system well. == [EMAIL PROTECTED] ==
Re: Learning more/Linux programming books
But I think Pascal is somewhat easier language to start with. I am aware to the fact that this is the common attitude. But I wonder if this is still valid these days. I mean, today using the computer and even programming is much more embedded in every days routines, especially when young people are involved, then 30 years ago. So people feel the computer and its abilities much more then before. They are also more used to it. Which is why I think that it is worth considering skipping the Pascal stage and going straight to C, or equivalent languages. Taking this approach a bit further, I think it is even worth considering going straight to C++, perhaps by talking first about the procedural aspects of C++ and only then, as a second stage, talking about the OOP aspects.
Re: Learning more/Linux programming books
Hello, What computer languages do I need to learn? As others have said, that depends on what you want to do... If you are looking at particular files you want to understand, use the `file' command to check what they are; or, if the first line starts with #! it tells you directly (eg a file beginning with #!/usr/bin/perl is in the PERL language; the file command will tell you it's `perl script text'). In general if someone could point the direction. You've heard quite a few recommendations about C. And I agree with that. But I think Pascal is somewhat easier language to start with. But it's not used nearly so often... This really depends on what kind of area you want to learn - whether it's programming (and what kind), or system administration, or what. Oh yes, most of the difficulty of programming is not understanding the language itself, but the mental discipline associated with getting what you asked for, rather than what you meant. And don't write window manager. Write some fun games where bad guys are chasing you on the screen. You'll learn a lot. I was going to agree with that, but then I realised that if everyone followed that advice there'd be no Linux (if memory serves). So I don't know. Obviously, mileage may vary. HTH Jiri
Re: Learning more/Linux programming books
I did a few searches in user's archives and came up with the book Beginning Linux Programming.' I read a review and it said it was for people who already have programming experience. I have none. I look at files and understand very little. I would like to be able to understand the phrases in the files. I'm very new to Linux, I have a few how to use linux books but am looking for something with a different slant. I'm sorry if I am being a little vague here but I don't have the words. I'm learning commands, I'm learning how to edit files but at some point I would like to be able to read files like I read books and maybe make a windows manager. What books do I need to read? What computer languages do I need to learn? In general if someone could point the direction. Thanks, Kent I gather you want to read files like those a Linux system administrator would read. If you understand those files, you have learned a lot [compared to the average world citizen, not to these Debian users] You might consider A Practical Guide to Linux, by Sobell [Linus himself grew up on Sobell's A Practical Guide to Unix]. Consider also the Bash book about the bash shell by O'Reilly publishers. There is also a book of just Linux commands, with brief descriptions, also by O'Reilly publishers, Linux in a Nutshell as I recall. Unless you are programming full time, rather that learning C, consider nothing. Or, consider the scripting language perl, which does much of what C does, handling words well [C handles characters well], though as a scripting language Perl won't be a speed demon. You can get your hands fully around the Bash shell, but unless you program full time, rather than try understanding every nook of C or Perl, just lookup in a good book those commands you need for your programs only. -- Jim Burt, NJ9L, Fairfax, Virginia, USA [EMAIL PROTECTED] http://www.mnsinc.com/jameson [EMAIL PROTECTED] (703) 235-5213 ext. 132 (work) A poor man associating with a rich man will soon be too poor to buy even a pair of breeches. --Chinese Proverb
Re: Learning more/Linux programming books
On Mon, Jan 11, 1999 at 06:02:58PM +0100, Henning Makholm wrote: ktb [EMAIL PROTECTED] writes: I did a few searches in user's archives and came up with the book Beginning Linux Programming.' I read a review and it said it was for people who already have programming experience. I have none. Given that you use Linux you definitely want to program in C. Now, you can get beginner's C/C++ books by the truckload, but the majority of them have a definite Windows slant. I'd advise getting the original text: The C programming language, 2nd edition, by Brian Kernighan and Dennis Ritchie. It is brief enough not to bury the reader in system-dependent details, and by the time you've worked through it you should know enough to begin reading up on the Linux specific material. Another book which is often suggested is K.N. King's C: A Modern Approach. Some people find KR to be a bit heavy going - it depends on your preferences in textbooks - and King takes it more gently. Getting a Linux-specific book such as the one you found as well might not hurt - it could provide a route into the documentation, and many people prefer books for some things. -- Mark Brown mailto:[EMAIL PROTECTED] (Trying to avoid grumpiness) http://www.tardis.ed.ac.uk/~broonie/ EUFShttp://www.eusa.ed.ac.uk/societies/filmsoc/ pgpde59Ue1JHF.pgp Description: PGP signature
Learning more/Linux programming books
I did a few searches in user's archives and came up with the book Beginning Linux Programming.' I read a review and it said it was for people who already have programming experience. I have none. I look at files and understand very little. I would like to be able to understand the phrases in the files. I'm very new to Linux, I have a few how to use linux books but am looking for something with a different slant. I'm sorry if I am being a little vague here but I don't have the words. I'm learning commands, I'm learning how to edit files but at some point I would like to be able to read files like I read books and maybe make a windows manager. What books do I need to read? What computer languages do I need to learn? In general if someone could point the direction. Thanks, Kent
Re: Learning more/Linux programming books
ktb [EMAIL PROTECTED] writes: I did a few searches in user's archives and came up with the book Beginning Linux Programming.' I read a review and it said it was for people who already have programming experience. I have none. Given that you use Linux you definitely want to program in C. Now, you can get beginner's C/C++ books by the truckload, but the majority of them have a definite Windows slant. I'd advise getting the original text: The C programming language, 2nd edition, by Brian Kernighan and Dennis Ritchie. It is brief enough not to bury the reader in system-dependent details, and by the time you've worked through it you should know enough to begin reading up on the Linux specific material. It is probably going to take some years before you are up to programming window managers, which are rather intricate beasts. A strong desire to program is needed, along with infinite supplies of persistence and patience. That goes no matter how you start. -- Henning Makholm http://www.diku.dk/students/makholm
Re: Learning more/Linux programming books
I did a few searches in user's archives and came up with the book Beginning Linux Programming.' I read a review and it said it was for people who already have programming experience. I have none. I look at files and understand very little. I would like to be able to understand the phrases in the files. I'm very new to Linux, I have a few how to use linux books but am looking for something with a different slant. I'm sorry if I am being a little vague here but I don't have the words. I'm learning commands, I'm learning how to edit files but at some point I would like to be able to read files like I read books and maybe make a windows manager. What books do I need to read? What computer languages do I need to learn? In general if someone could point the direction. Make sure you know what you want first: Do you want to be a linux programmer, i.e. write programs that will run under linux? Understand and possibly modify the linux source code? If so, learn the C programming language first. You have a long way to go in this case. Or do you merely want to use linux, be a linux administrator, be able to use maintain a linux system without requiring lots of help? You don't need to be a C programmer for this - you will want some beginner's books on linux and learn about shell scripts. (A shell script is a file containing mostly the same kind of commands you can type on the command line - with some extensions.) Note that linux comes with a lot of helpful documentation. This is useful by itself, or when there's something your books don't cover. If you need information about a command, type man command (i.e. man df for info on the df command and so on.) Then there are the HOWTO files, usually installed for you when linux is installed. To use them, try these commands: cd /usr/doc/HOWTO (to get to where the HOWTO files are stored) ls or ls | more(to see what files are available) zcat Tips-HOWTO.gz | less(To read the Tips-howto, similiar for the other files) I don't think you need to make a new window manager. There are plenty of them available, and they can usually be configured to work the way you want. You will need to be a reasonably good programmer before writing a new manager. Setting up one of the existing ones is much easier. You will also need to be a good programmer if you want to understand the linux source. Understanding the many configuration files are easier though. The most important ones are covered in books about linux, and many have online manpages as well. (man fstab will provide information enough to understand the /etc/fstab file, for example.) Helge Hafting
Re: Learning more/Linux programming books
Hi, Kent! read? What computer languages do I need to learn? In general if someone could point the direction. You've heard quite a few recommendations about C. And I agree with that. But I think Pascal is somewhat easier language to start with. It's based on my teaching experience of people who had absolutely no programming experience. IMHO taking C next will be less painful. You know, you can almost read Pascal program like a sentences from the book (well to a certain extent of course), it's less likely with C. Turbo Pascal is very good programming environment, especially build-in help. (I still use Turbo Pascal 6 for DOS). Free Pascal is a Linux version which is very close to Turbo Pascal as a compiler. http://www.brain.uni-freiburg.de/~klaus/fpc/ And don't write window manager. Write some fun games where bad guys are chasing you on the screen. You'll learn a lot. Sasha.