Difference between revisions of "Learning Resource Recommendations"

From the Linux and Unix Users Group at Virginia Teck Wiki
Jump to: navigation, search
imported>Mjh
(Reference Cards)
imported>Mjh
(Started migrating stuff to fancy table)
Line 30: Line 30:
  
 
==Productivity==
 
==Productivity==
* Learning the bash Shell
+
{| class='wikitable sortable'
* From Bash to Z Shell: Conquering the Command Line
+
|-
* Version Control with Git
+
! Topic !! Title !! Author !! Notes
 +
|-
 +
| Shell || Learning the Bash Shell ||  ||
 +
|-
 +
| Shell || From Bash to Z Shell: Conquering the Command Line ||  ||
 +
|-
 +
| Version Control || Version Control with Git ||  ||
 +
|-
 +
|}
  
 
==Software Engineering==
 
==Software Engineering==
Line 41: Line 49:
 
* The Practice of Programming
 
* The Practice of Programming
  
==C==
+
==Programming==
* The C Programming Language
+
{| class='wikitable sortable'
* C: A Reference Manual
+
|-
* The Standard C Library
+
! Topic !! Title !! Author !! Notes
* The Elements of C Programming Style
+
|-
* Expert C Programming: Deep C Secrets
+
| ASM || PC Assembly Language * ||  ||
* 21st Century C
+
|-
* Mastering Algorithms with C
+
| C || The C Programming Language || Kerninghan & Ritchie ||
 
+
|-
==C++==
+
| C || C: A Reference Manual ||  ||
* The C++ Programming Language
+
|-
* C++ The Core Language
+
| C || The Standard C Library ||  ||
* Practical C++ Programming
+
|-
* Safe C++
+
| C || The Elements of C Programming Style ||  ||
* Effective STL
+
|-
* C++: The Good Parts (Still being written as of Dec. 2012)
+
| C || 21st Century C ||  ||
 +
|-
 +
| C || Mastering Algorithms with C ||  ||
 +
|-
 +
| C++ || The C++ Programming Language ||  ||
 +
|-
 +
| C++ || C++ The Core Language ||  ||
 +
|-
 +
| C++ || Practical C++ Programming ||  ||
 +
|-
 +
| C++ || Safe C++ ||  ||
 +
|-
 +
| C++ || Effective STL ||  ||
 +
|-
 +
| C++ || C++: The Good Parts ||  || Still being written as of Dec. 2012
 +
|-
 +
| Haskell || Learn You a Haskell for Great Good ||  ||
 +
|-
 +
| Java || Thinking in Java * ||  ||
 +
|-
 +
| Java || Effective Java ||  ||
 +
|-
 +
| Perl || Learning Perl ||  ||
 +
|-
 +
| Ruby || [http://ruby.railstutorial.org/ Ruby on Rails Tutorial: Learn Web Development with Rails (2nd edition)] ||  ||
 +
|-
 +
|}
  
 
==Unix==
 
==Unix==
Line 85: Line 119:
 
* The Art Of Computer Programming: Sorting and Searching
 
* The Art Of Computer Programming: Sorting and Searching
 
* The Art Of Computer Programming: Combinatorial Algorithms, Part 1
 
* The Art Of Computer Programming: Combinatorial Algorithms, Part 1
* PC Assembly Language *
 
* Learning Perl
 
 
* Learning OpenCV
 
* Learning OpenCV
 
* Mac OS X Internals
 
* Mac OS X Internals
 
* Mastering Regular Expressions
 
* Mastering Regular Expressions
* Learn You a Haskell
 
 
* The Art of Compiler Design
 
* The Art of Compiler Design
 
* Eloquent JavaScript *
 
* Eloquent JavaScript *
Line 99: Line 130:
 
* PDF Explained
 
* PDF Explained
 
* PostScript Language *
 
* PostScript Language *
* Thinking in Java *
 
 
* TCP/IP Illustrated, Volume 1
 
* TCP/IP Illustrated, Volume 1
 
* An Introduction to R *
 
* An Introduction to R *
 
* R Language Definition *
 
* R Language Definition *
 
==Ruby on Rails==
 
* [http://ruby.railstutorial.org/ Ruby on Rails Tutorial: Learn Web Development with Rails (2nd edition)]
 
 
  
 
<nowiki>*</nowiki> denotes digital-only format
 
<nowiki>*</nowiki> denotes digital-only format

Revision as of 23:26, 24 January 2013

This page contains recommendations for learning technical information on a variety of subjects.

Topic Resources Notes
"Hacking" (example) How To Become a Hacker - Eric Raymond Introduction to hacking
The Word "Hacker" - Paul Graham Another introduction

Reference Cards

External Lists

Free Programming Books

Productivity

Topic Title Author Notes
Shell Learning the Bash Shell
Shell From Bash to Z Shell: Conquering the Command Line
Version Control Version Control with Git

Software Engineering

  • Beautiful Code
  • The Art Of Readable Code
  • Code Simplicity
  • Design Patterns
  • The Practice of Programming

Programming

Topic Title Author Notes
ASM PC Assembly Language *
C The C Programming Language Kerninghan & Ritchie
C C: A Reference Manual
C The Standard C Library
C The Elements of C Programming Style
C 21st Century C
C Mastering Algorithms with C
C++ The C++ Programming Language
C++ C++ The Core Language
C++ Practical C++ Programming
C++ Safe C++
C++ Effective STL
C++ C++: The Good Parts Still being written as of Dec. 2012
Haskell Learn You a Haskell for Great Good
Java Thinking in Java *
Java Effective Java
Perl Learning Perl
Ruby Ruby on Rails Tutorial: Learn Web Development with Rails (2nd edition)

Unix

  • The Design and Implementation of the 4.4 BSD Operating System
  • Berkeley Unix: A Simple and Comprehensive Guide
  • Unix Made Easy
  • The Unix Programming Environment
  • Advanced Programming in the Unix Environment (2nd Edition)
  • The Art of Unix Programming
  • Unix Systems for Modern Architectures
  • UNIX Power Tools
  • Using C on the UNIX System

Security

  • The Art of Software Security Assessment
  • The Book of PF (2nd edition)
  • Applied Cryptography
  • Handbook of Applied Cryptography *
  • Applied Cryptography: Protocols, Algorithms, and Source Code in C

Misc

  • Introduction to Algorithms
  • Checking C Programs with lint
  • What Every Programmer Should Know About Memory *
  • Machine Learning for Hackers
  • The Art Of Computer Programming: Fundamental Algorithms
  • The Art Of Computer Programming: Seminumerical Algorithms
  • The Art Of Computer Programming: Sorting and Searching
  • The Art Of Computer Programming: Combinatorial Algorithms, Part 1
  • Learning OpenCV
  • Mac OS X Internals
  • Mastering Regular Expressions
  • The Art of Compiler Design
  • Eloquent JavaScript *
  • JavaScript: The Good Parts
  • WebGL: Up and Running
  • Node: Up and Running
  • HTML & CSS: The Good Parts
  • PDF Explained
  • PostScript Language *
  • TCP/IP Illustrated, Volume 1
  • An Introduction to R *
  • R Language Definition *

* denotes digital-only format