• No results found

Become a Programmer, Motherfucker

N/A
N/A
Protected

Academic year: 2021

Share "Become a Programmer, Motherfucker"

Copied!
13
0
0

Loading.... (view fulltext now)

Full text

(1)

Become a Programmer, Motherfucker

If you don't know how to code, then you can learn even if you think you can't. Thousands of people have learned programming from these fine books:

Learn Python The Hard Way

Learn Ruby The Hard Way

Learn Code The Hard Way

I'm also working on a whole series of programming education books at

learncodethehardway.org. These are works in progress, and feedback is welcome.

Learn C The Hard Way

Learn SQL The Hard Way

Learn Regex The Hard Way

A Huge List of Free Books Programming Languages

Assembly Language Bash C / C++ C# Clojure ColdFusion

Delphi / Pascal Erlang F# Forth Haskell HTML / CSS Java JavaScript Latex Lisp Lua Nemerle Oberon Objective-C OCaml Oracle PL/SQL Parrot / Perl 6 Perl PHP PowerShell Prolog Python R Ruby

(2)

SQL

Frameworks

ASP.NET MVC Django Flex Grails .NET Ruby on Rails Tools

DB2 Git Linux

Maven Mercurial NoSQL

Oracle Server PostgreSQL Subversion Vim Emacs

General Topics

Graphics Programming Language Agnostic Graphics Programming

GPU Gems

GPU Gems 2 - ch 8,14,18,29,30 as pdf GPU Gems 3

Graphics Programming Black Book ShaderX series

DirectX manual (draft)

Learning Modern 3D Graphics Programming (draft) Language Agnostic

Object-Oriented Reengineering Patterns Foundations of Programming

Computer Musings (lectures by Donald Knuth) The Cathedral and the Bazaar

Patterns and Practices: Application Architecture Guide 2.0 Security Engineering

Digital Signal Processing For Engineers and Scientists Getting Real

(3)

OO Design

Best Kept Secrets of Peer Code Review NASA Software Measurement Handbook

NASA Manager Handbook for Software Development (PDF) Introduction to Functional Programming (class lectures and slides) How to Design Programs

Guide to the Software Engineering Body of Knowledge Online Course Materials

Algorithms (draft)

Data Structures and Algorithms Essential Skills for Agile Development

Programming Languages: Application and Interpretation Learn to Program

Patterns of Software: Tales from the Software Community (PDF) How to write Unmaintainable Code

The Art of Unix Programming

The Definitive Guide to Building Code Quality How to Think Like a Computer Scientist Planning Algorithms

Mathematical Logic - an Introduction (PDF) An Introduction to the Theory of Computation

Developers Developers Developers Developers (broken download link?) Linkers and loaders

Let's Build a Compiler

Producing Open Source Software How to Write Parallel Programs Don't Just Roll the Dice

97 Things Every Programmer Should Know How Computers Work

Introduction to Information Retrieval

(4)

Matters Computational

Type Theory and Functional Programming

Getting started with Open source development (PDF) Database Fundamentals (PDF)

Clever Algorithms

Summary of the GoF Design Patterns Flow based Programming

Algorithms and Data-Structures (PDF) Compiler Construction (PDF)

Project Oberon (PDF)

The Little Book of Semaphores Essential Skills for Agile Development I Am a Bug

Mining of Massive Datasets

Data-Intensive Text Processing with MapReduce (PDF)

Understanding IP Addressing: Everything you ever wanted to know (PDF) Operating Systems and Middleware (PDF and LaTeX)

Think Stats: Probability and Statistics for Programmers (PDF, code written in Python) The Architecture of Open Source Applications

ASP.NET MVC

NerdDinner Walkthrough Assembly Language

ProgrammingGroundUp (PDF)

Paul Carter's Tutorial on x86 Assembly

Software optimization resources by Agner Fog Bash

Advanced Bash-Scripting Guide Lhunath's Bash Guide

(5)

C / C++

The new C standard - an annotated reference

Matters Computational: Ideas, Algorithms, Source Code, by Jorg Arndt The C book

Thinking in C++, Second Edition C++ Annotations

Software optimization resources by Agner Fog

Introduction to Design Patterns in C++ with Qt 4 (PDF) Object Oriented Programming in C (PDF)

Beej's Guide to Network Programming Learn C the hard way

Also see: The Definitive C++ Book Guide and List C#

C# School (covers C# 1.0 and 2.0) Threading in C#

C# Yellow Book (intro to programming) C# Programming - Wikibook

C# Essentials

Data Structures and Algorithms with Object-Oriented Design Patterns in C# Illustrated C# 2008 (.zip, dead link)

Clojure

Clojure Programming ColdFusion

CFML In 100 Minutes DB2

(6)

Getting started with IBM DB2 development (PDF) Getting started with DB2 Express-C (PDF)

Delphi / Pascal

Essential Pascal Version 1 and 2 The Tomes of Delphi

Django

Djangobook.com Erlang

Learn You Some Erlang For Great Good Flex

Getting started with Adobe Flex (PDF) F#

The F# Survival Guide

F Sharp Programming in Wikibooks

Real World Functional Programming (MSDN Chapters) Forth

Starting Forth Thinking Forth Git

Pro Git

The Git Community Book Git From The Bottom Up (PDF) Grails

(7)

Getting Start with Grails Haskell

Learn You a Haskell Real World Haskell HTML / CSS

Dive Into HTML5 HTML Dog Tutorials Java

Sun's Java Tutorials Thinking in Java

How to Think Like a Computer Scientist Java Thin-Client Programming

OSGi in Practice (PDF) Java 6 Tutorial (PDF) JavaScript

Eloquent JavaScript Crockford's JavaScript

jQuery Fundamentals (starts with JavaScript basics) Mozilla Developer Network's JavaScript Guide

Essential Javascript & jQuery Design Patterns for Beginners JavaScript (Node.js specific)

Up and Running with Node The Node Beginner Book Mastering Node.js Latex

(8)

Linux

Advanced Linux Programming Lisp

COMMON LISP: An Interactive Approach A Short Course in Common Lisp

Structure And Interpretation of Computer Programs A Gentle Introduction to Symbolic Computation (PDF) Practical Common Lisp

On Lisp

ANSI Common Lisp

Common Lisp the Language, 2nd Edition Successful Lisp

Let Over Lambda - 50 Years of Lisp Natural Language Processing in Lisp Lua

Programming In Lua (for v5 but still largely relevant)

Lua Programming Gems (not entirely free, but has a lot of free chapters and accompanying code)

Maven

Better Builds with Maven Maven by Example

Maven: The Complete Reference Repository Management with Nexus Developing with Eclipse and Maven Mercurial

(9)

HGInit - Mercurial Tutorial by Joel Spolsky Nemerle

Nemerle .NET

C# School (covers C# 1.0 and 2.0)

Visual Studio Tips and Tricks (VS 2003-2005 only) Entity Framework

Charles Petzold's .NET Book 0 Threading in C#

C# Yellow Book (intro to programming) C# Programming - Wikibook

C# Essentials

Data Structures and Algorithms with Object-Oriented Design Patterns in C# Nemerle

NoSQL

CouchDB: The Definitive Guide The Little MongoDB Book Oberon

Programming in Oberon (PDF) Objective-C

The Objective-C Programming Language OCaml

Unix System Programming in OCaml Introduction to OCaml (PDF)

(10)

Oracle's Guides and Manuals Oracle PL/SQL

PL/SQL Language Reference

PL/SQL Packages and Types Reference

Steven Feuerstein's PL/SQL Obsession - Videos and Presentations Parrot / Perl 6

Using Perl 6 (work in progress) Perl

Higher-Order Perl Perl The Hard Way Extreme Perl

Perl Free Online EBooks (meta-list) The Mason Book

Practical mod_perl Beginning Perl

Embedding Perl in HTML with Mason Perl & LWP

Perl for the Web

Web Client Programming with Perl Modern Perl 5

PHP

Symfony2

Practical PHP Programming (wiki containing O'Reilly's PHP In a Nutshell) Zend Framework: Survive the Deep End

(11)

Mastering PowerShell Prolog

Building Expert Systems in Prolog Adventure in Prolog

Prolog Programming A First Course Logic, Programming and Prolog (2ed) Introduction to Prolog for Mathematicians Learn Prolog Now!

Natural Language Processing in Prolog

Natural Language Processing Techniques in Prolog Prolog techniques Applications of Prolog Simply logical PostgreSQL Practical PostgreSQL Python Byte of Python

Building Skills in Python Version 2.5 Python Bibliotheca

Think Python (PDF)

Data Structures and Algorithms in Python Dive into Python

How to Think Like a Computer Scientist: Learning with Python Python for Fun

Invent Your Own Computer Games With Python Learn Python The Hard Way

Thinking in Python The Django Book

(12)

Snake Wrangling For Kids

Natural Language Processing with Python R

The R Manuals The R Language R by example

Computational Statistics, Jeremy Penzer Ruby

Programming Ruby

Why's (Poignant) Guide to Ruby (mirror) Mr. Neighborly's Humble Little Ruby Book Ruby Best Practices

MacRuby: The Definitive Guide Learn Ruby the hard way Ruby on Rails

Ruby on Rails Tutorial: Learn Rails By Example Scala

Programming in Scala, First Edition

A Scala Tutorial for Java programmers (PDF) Scala By Example (PDF)

Programming Scala Xtrace (Github) Lift (Github)

Pro Scala: Monadic Design Patterns for the Web

Exploring Lift (published earlier as "The Definitive Guide to Lift", PDF) Scheme

(13)

The Scheme Programming Language (Edition 4) Smalltalk

Free Online Smalltalk Books (meta-list) Squeak By Example (Smalltalk IDE) Subversion

Subversion Version Control (PDF) Version Control with Subversion SQL

Developing Time-Oriented Database Applications in SQL

Use The Index, Luke! (a guide to SQL database performance for developers) Learn SQL The Hard Way

Vim

A Byte of Vim Vim Recipes Emacs

An Introduction to Programming in Emacs Lisp (Third Edition) GNU Emacs manual

References

Related documents