Programming is what one does to make computers do new and interesting things. There are many many types of programming languages, each with their own strengths and weaknesses.
For example, Project Sycamore's program components is what makes the Davis Wiki do what it does oh so well. All of the items on the Locally Owned Websites serve you information via computer programs and most of them likely required special programming to make them unique as well. (Note that HTML is not considered a computer programming language, and thus web pages that only serve HTML pages did not require any specialized programming to make them available).
If you want to learn to write software you could get a degree in Computer Science, though many people who are computer programmers by trade studied something else in school and/or college. Many learn to program by simply reading about the concepts and trying some easy getting started projects.
Resources in Davis
There are a plethora of books aimed at teaching yourself to program. Most of these assume no prior knowledge, so a CS degree is not a prerequisite.
- The UC Davis Bookstore has a fair collection, but significantly less than Borders.
- The Shields Library has a large programming section ( Dewey Decimal: QA 76 ).
- The Yolo Library has a few outdated books.
The libraries are of more use if you are trying to learn languages such as C++ which change little as time goes on. If you're looking for something more recent, such as Ruby, you will most likely have to buy something new at a bookstore or learn solely from online documentation.
If you want some real, live interaction with programmers, you might want to start attending LUGOD meetings.
2007-04-04 20:28:02 I remember coming across the Davis Hacking Society page on the wiki that described regular, informal, group programming sessions. Is anything like this currently active ? —PeterAnselmo
2009-01-12 10:24:09 I'm looking for a programmer familiar with changes to the C language between the early 90's and now. I have an old program, written by a colleague, that will no compile on my current machine. Some minor errors have been identified (i.e. alloc vs. malloc) but I'm not a computer programmer and I am getting stuck. I'm willing to pay in coffee, beer, or possibly lunch. Thanks —weschrist