* [Don't Just Roll the Dice](http://www.neildavidson.com/dontjustrollthedice.html)
####Open Source Ecosystem
* [Getting started with Open source development](http://public.dhe.ibm.com/software/dw/db2/express-c/wiki/Getting_started_with_open_source_development_p2.pdf) (PDF)
* [Producing Open Source Software](http://producingoss.com/)
* [The Cathedral and the Bazaar](http://www.catb.org/esr/writings/cathedral-bazaar/)
* [The Architecture of Open Source Applications](http://www.aosabook.org/en/index.html)
* [The Performance of Open Source Applications](http://aosabook.org/en/)
####Information Retrieval
* [Introduction to Information Retrieval](http://nlp.stanford.edu/IR-book/information-retrieval-book.html)
@ -205,22 +229,17 @@
* [Mathematical Logic - an Introduction](http://www.ii.uib.no/~michal/und/i227/book/book.pdf) (PDF)
* [Bayesian Methods for Hackers](https://github.com/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers)
* [Introduction to Statistical Thought](http://www.math.umass.edu/~lavine/Book/book.html)
* [Mathematics for Computer Science](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-042j-mathematics-for-computer-science-fall-2010/readings/)
* [Category Theory for Computing Science](http://www.math.mcgill.ca/triples/Barr-Wells-ctcs.pdf)
* [Essentials of Metaheuristics](http://cs.gmu.edu/~sean/book/metaheuristics/) by Sean Luke
####Misc
* [97 Things Every Programmer Should Know](http://programmer.97things.oreilly.com/)
* [97 Things Every Programmer Should Know - Extended](https://leanpub.com/97-Things-Every-Programmer-Should-Know-Extended)
* [How to Design Programs](http://www.htdp.org/)
* [How to Think Like a Computer Scientist](http://openbookproject.net/thinkcs/)
* [I Am a Bug](http://www.amibug.com/iamabug/p01.html)
* [Learn to Program](http://pine.fm/LearnToProgram/)
* [Foundations of Computer Science](http://infolab.stanford.edu/~ullman/focs.html) - Al Aho and Jeff Ullman
* [Foundations of Programming](http://codebetter.com/files/folders/codebetter_downloads/entry179694.aspx)
* [Structure and Interpretation of Computer Programs](http://mitpress.mit.edu/sicp/)
* [An Introduction to the Theory of Computation](http://www.cse.ohio-state.edu/~gurari/theory-bk/theory-bk.html)
* [Programming Languages: Application and Interpretation](http://www.cs.brown.edu/~sk/Publications/Books/ProgLangs/)
* [Getting started with Open source development](http://public.dhe.ibm.com/software/dw/db2/express-c/wiki/Getting_started_with_open_source_development_p2.pdf) (PDF)
* [The Great Tree List Recursion Problem](http://cslibrary.stanford.edu/109/TreeListRecursion.pdf)
* [Guide to the Software Engineering Body of Knowledge](http://www.computer.org/portal/web/swebok)