music
OSdata.com: programming text book 

OSdata.com

computer programming

summary

    This chapter is intended as an introduction to computer programming.

    Programming is problem solving and writing instructions for a computer.

free computer programming text book project

table of contents
If you like the idea of this project,
then please donate some money.
more information on donating

Google

computer programming

    Programming is problem solving and writing instructions for a computer.

    The principles of programming are independent of the computer programming language used. Different languages have different strengths and weaknesses, making some kinds of programs easier or more difficult to write, but the basic principles remain the same regardless of language.

    A skilled programmer should be able to switch to a new programming language in a few hours.

    On the other hand, beginners should pick one language and learn it before attempting a second language. Normally this choice will be made by the school or the professor.

    There is the possibility that the professor might have created a custom version of this book that places everything in the order the professor thinks is best and deletes all materials that the professor views as outside the needs of the class (such as materials on other programming languages). The student is of course free to download the complete version of the book from this website.

    This free text book includes information on multiple programming languages. Unless instructed otherwise, you should concentrate on the language you are learning and skip over the others. Trying to learn the syntax and semantics of multiple programming languages at the same time as learning the basics of programming is a recipe for utter confusion.

    “As long as programmers cherish their freedom not only to design their own clever software, but also to modify adopted software according to their likings, a proper design discipline remains unlikely. And as long as companies secretly cherish complexity as an effective protection against being copied, there is little hope for dramatic improvements of the state of the art.” —Niklaus Wirth

programming as a skill

    I would like to strongly suggest that learning the principles of computer programming is far more valuable than learning a specific programming language.

   “Hire a programmer. He’s a programmer. You don’t need to hire a Java programmer. By the way, you should do that now anyway. Do not hire Java programmers, not because Java programmers are bad. But you should not be asking, “excuse me, what language do you program in? We’re only hiring Java programmers here.” Learning a language is a matter of a week. Oh, and to get skillful in the platform is a matter of another week or two or three or a month. Finding someone who actually knows how to write code, that’s the hard problem, so you don’t ask, “you must know Sprint.” No, you do not have to know Sprint. “you must know JavaScript.” No, you don’t have to know JavaScript. “Can you write code?” Show me code in any language. If you can write code, I’ll hire you.” —Robert C. Martin, The Last Programming Language, approximately 37:09

   “Learning how to code in any one particular [computer] language is not going to be worthwhile beyond 10 or 20 years. Learning how to problem-solve using algorithms and how technology works and how it’s built is going to last a century at least,” —Hadi Partovi, cofounder of code.org, For some, learning coding is a calculated strategy, Los Angeles Times , Business Section, Saturday, August 2, 2014, p. B1

other

   “7. It is easier to write an incorrect program than understand a correct one.” —Alan Perlis, Epigrams on Programming, ACM’s SIGPLAN Notices Volume 17, No. 9, September 1982, pages 7-13

   “93. When someone says ‘I want a programming language in which I need only say what I wish done,’ give him a lollipop.” —Alan Perlis, Epigrams on Programming, ACM’s SIGPLAN Notices Volume 17, No. 9, September 1982, pages 7-13


free music player coding example

    Coding example: I am making heavily documented and explained open source code for a method to play music for free — almost any song, no subscription fees, no download costs, no advertisements, all completely legal. This is done by building a front-end to YouTube (which checks the copyright permissions for you).

    View music player in action: www.musicinpublic.com/.

    Create your own copy from the original source code/ (presented for learning programming).


return to table of contents
free downloadable college text book

view text book
HTML file

Because I no longer have the computer and software to make PDFs, the book is available as an HTML file, which you can convert into a PDF.

previous page next page
previous page next page

free computer programming text book project

Building a free downloadable text book on computer programming for university, college, community college, and high school classes in computer programming.

If you like the idea of this project,
then please donate some money.

send donations to:
Milo
PO Box 1361
Tustin, California 92781

Supporting the entire project:

    If you have a business or organization that can support the entire cost of this project, please contact Pr Ntr Kmt (my church)

more information on donating

Some or all of the material on this web page appears in the
free downloadable college text book on computer programming.


Google


Made with Macintosh

    This web site handcrafted on Macintosh computers using Tom Bender’s Tex-Edit Plus and served using FreeBSD .

Viewable With Any Browser


    †UNIX used as a generic term unless specifically used as a trademark (such as in the phrase “UNIX certified”). UNIX is a registered trademark in the United States and other countries, licensed exclusively through X/Open Company Ltd.

    Names and logos of various OSs are trademarks of their respective owners.

    Copyright © 2007, 2010, 2011, 2014 Milo

    Created: September 3, 2007

    Last Updated: Aug 3, 2014


return to table of contents
free downloadable college text book

previous page next page
previous page next page