Computer programming: Difference between revisions

The educational technology and digital learning wiki
Jump to navigation Jump to search
 
Line 1: Line 1:
{{Stub}}
{{Stub}}


== Definition ==


Computer programming (often shortened to programming or coding), sometimes considered a branch of applied mathematics, is the process of writing, testing, debugging/troubleshooting, and maintaining the source code of computer programs. [...] There is an ongoing debate on the extent to which the writing of programs is an art, a craft or an engineering discipline. (Wikipedia, , retrieved 16:42, 13 August 2008 (UTC)).




== Links ==
== Links ==


=== Overviews ===
* [http://en.wikipedia.org/wiki/Programming Programming] (Wikipedia).


=== Introductory tutorials ===
=== Introductory tutorials ===


* [http://en.wikibooks.org/wiki/Computer_programming computer programming] (Wikibooks). This a short conceptual overview. It also summarized all computer programming books in a table.
* [http://en.wikibooks.org/wiki/Computer_programming Computer programming] (Wikibooks). This a short conceptual overview. It also summarized all computer programming books in a table.


* Wikibooks series of three computer science textbooks on algorithm
* Wikibooks series of three computer science textbooks on algorithm
Line 16: Line 21:
*# [http://en.wikibooks.org/wiki/Advanced_Data_Structures_and_Algorithms Advanced Data Structures and Algorithms]
*# [http://en.wikibooks.org/wiki/Advanced_Data_Structures_and_Algorithms Advanced Data Structures and Algorithms]


* [http://www.landofcode.com/programming-intro/ Introduction to computer programming], Ladofcode.com. A series of short tutorials about fundamental concepts.
* [http://www.landofcode.com/programming-intro/ Introduction to computer programming], Landofcode.com. A series of short tutorials about fundamental concepts.


=== Introductory free online textbooks ===
=== Introductory free online textbooks ===
Line 22: Line 27:
; Using Java
; Using Java


* Allen Downey, [http://www.greenteapress.com/thinkapjava/ How to Think Like a Computer Scientist] - Java Version, Grean Tea Press.


; Using Javascript
* See [[JavaScript_links#Tutorials_and_tutorial_sites|Javascript links]]


; Using Python
; Using Python


* Allen Downey, Jeffrey Elkner and Chris Meyers, [http://www.greenteapress.com/thinkpython/thinkCSpy/html/index.html How to Think Like a Computer Scientist], Python Version, ''Greantea Press''. There are some translation and derivations from this, e.g. [http://www.cifen.ulg.ac.be/inforef/swi/python.htm Programmer avec Python]
* Jeffrey Elkner, Allen B. Downey, and Chris Meyers (2008). [http://openbookproject.net/thinkcs/python2e.php How to Think Like a Computer Scientist: Learning with Python], 2nd Ed.
 
* Allen Downey, Jeffrey Elkner and Chris Meyers, [http://www.greenteapress.com/thinkpython/thinkCSpy/ How to Think Like a Computer Scientist], Python Version, First edition (??). ''Grean Tea Press''. There are some translation and derivations from this, e.g. [http://www.cifen.ulg.ac.be/inforef/swi/python.htm Programmer avec Python]
 
* Allen B. Downey (2008). [http://www.greenteapress.com/thinkpython/ Think Python], An Introduction to Software Design. Green Tea Press. (This is a revised version of How to Think Like a Computer Scientist).


; Using Scheme
; Using Scheme


* Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi (2003). [http://www.htdp.org/ How to design programs], MIT Press.  
* Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi (2003). [http://www.htdp.org/ How to design programs], MIT Press.
* Hal Abelson, Jerry Sussman's and Julie Sussman's (1984). Structure and Interpretation of Computer Programs. [http://mitpress.mit.edu/sicp/ companion site, including an HTML version of the text]
* Hal Abelson, Jerry Sussman's and Julie Sussman's (1984). Structure and Interpretation of Computer Programs. [http://mitpress.mit.edu/sicp/ companion site, including an HTML version of the text]


[[Category: Programmming]]
 
[[Category: Programming]]

Revision as of 18:42, 13 August 2008

Draft

Definition

Computer programming (often shortened to programming or coding), sometimes considered a branch of applied mathematics, is the process of writing, testing, debugging/troubleshooting, and maintaining the source code of computer programs. [...] There is an ongoing debate on the extent to which the writing of programs is an art, a craft or an engineering discipline. (Wikipedia, , retrieved 16:42, 13 August 2008 (UTC)).


Links

Overviews

Introductory tutorials

  • Computer programming (Wikibooks). This a short conceptual overview. It also summarized all computer programming books in a table.

Introductory free online textbooks

Using Java
Using Javascript
Using Python
  • Allen B. Downey (2008). Think Python, An Introduction to Software Design. Green Tea Press. (This is a revised version of How to Think Like a Computer Scientist).
Using Scheme