From c990c863b517a97ffccce6737ed93eb01e77df4a Mon Sep 17 00:00:00 2001 From: David Metcalfe Date: Fri, 30 Oct 2015 13:23:20 -0700 Subject: [PATCH 01/14] Cleanup per formatting guidelines --- free-programming-books.md | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/free-programming-books.md b/free-programming-books.md index afcf55d5..1d668cd6 100644 --- a/free-programming-books.md +++ b/free-programming-books.md @@ -137,7 +137,7 @@ Original Source: [List of freely available programming books](http://web.archive * [Processing](#processing) * [Prolog](#prolog) * [Constraint Logic Programming](#constraint-logic-programming-extended-prolog) -* [PureScript] (#purescript) +* [PureScript](#purescript) * [Python](#python) * [Django](#django) * [Flask](#flask) @@ -147,7 +147,7 @@ Original Source: [List of freely available programming books](http://web.archive * [QML](#qml) * [R](#r) * [Racket](#racket) -* [Raspberry Pi] (#raspberry-pi) +* [Raspberry Pi](#raspberry-pi) * [REBOL](#rebol) * [Ruby](#ruby) * [RSpec](#rspec) @@ -233,7 +233,7 @@ Original Source: [List of freely available programming books](http://web.archive * [Introduction to Modern OpenGL](http://open.gl/) * [Learn OpenGL](http://learnopengl.com/) - Joey de Vries * [Learning Modern 3D Graphics Programming](http://www.arcsynthesis.org/gltut/) (draft) -* [OpenGL](http://www.songho.ca/opengl/index.html): Concepts and illustrations. +* [OpenGL](http://www.songho.ca/opengl/index.html) - Concepts and illustrations. * [OpenGL Programming Guide (The Red Book)](http://fly.srk.fer.hr/~unreal/theredbook/) * [ShaderX series](http://tog.acm.org/resources/shaderx/) * [Tutorials for modern OpenGL](http://www.opengl-tutorial.org/) @@ -268,14 +268,14 @@ Original Source: [List of freely available programming books](http://web.archive * [Elementary Algorithms](https://github.com/liuxinyu95/AlgoXY) - Larry LIU Xinyu * [Foundations of Computer Science](http://infolab.stanford.edu/~ullman/focs.html) - Al Aho and Jeff Ullman * [Handbook of Graph Drawing and Visualization](https://cs.brown.edu/~rt/gdhandbook/) -* [Lectures Notes on Algorithm Analysis and Computational Complexity (Fourth Edition)](http://larc.unt.edu/ian/books/free/lnoa.pdf), University of North Texas (PDF) +* [Lectures Notes on Algorithm Analysis and Computational Complexity (Fourth Edition)](http://larc.unt.edu/ian/books/free/lnoa.pdf) - University of North Texas (PDF) * [LEDA: A Platform for Combinatorial and Geometric Computing](http://www.mpi-inf.mpg.de/~mehlhorn/LEDAbook.html) * [Linked List Basics](http://cslibrary.stanford.edu/103/LinkedListBasics.pdf) (PDF) * [Linked List Problems](http://cslibrary.stanford.edu/105/LinkedListProblems.pdf) (PDF) * [Matters Computational: Ideas, Algorithms, Source Code](http://www.jjj.de/fxt/fxtbook.pdf) (PDF) * [Open Data Structures: An Introduction](http://www.aupress.ca/index.php/books/120226) - Pat Morin * [Planning Algorithms](http://planning.cs.uiuc.edu/) -* [Problems on Algorithms (Second Edition)](http://larc.unt.edu/ian/books/free/poa.pdf), University of North Texas (PDF) +* [Problems on Algorithms (Second Edition)](http://larc.unt.edu/ian/books/free/poa.pdf) - University of North Texas (PDF) * [Purely Functional Data Structures](http://www.cs.cmu.edu/~rwh/theses/okasaki.pdf) (PDF) * [Sequential and parallel sorting algorithms](http://www.inf.fh-flensburg.de/lang/algorithmen/sortieren/algoen.htm) * [Text Algorithms](http://igm.univ-mlv.fr/~mac/REC/text-algorithms.pdf) (PDF) @@ -668,7 +668,7 @@ Original Source: [List of freely available programming books](http://web.archive * [Agile Android Software Development](http://www.agiledroid.com) (PDF, epub, mobi - need email confirmation) by Etienne Savard * [Android 4 App Development Essentials](http://www.techotopia.com/index.php/Android_4_App_Development_Essentials) * [Android Programming Guide for Beginners](http://eduonix.com/offers/Android_ebook_free_offer.html) (PDF - need email confirmation) -* [Android Programming Succinctly, Syncfusion](https://www.syncfusion.com/resources/techportal/ebooks/android) ([PDF](https://www.syncfusion.com/content/downloads/ebook/Android_Programming_Succinctly.pdf), [Kindle](https://www.syncfusion.com/content/downloads/ebook/Android_Programming_Succinctly.mobi)) *(Just fill the fields with any values)* +* [Android Programming Succinctly, Syncfusion](https://www.syncfusion.com/resources/techportal/ebooks/android) ([PDF](https://www.syncfusion.com/content/downloads/ebook/Android_Programming_Succinctly.pdf) - [Kindle](https://www.syncfusion.com/content/downloads/ebook/Android_Programming_Succinctly.mobi)) *(Just fill the fields with any values)* * [CodePath Android Cliffnotes](https://github.com/thecodepath/android_guides/wiki) * [Coreservlets Android Programming Tutorial](http://www.coreservlets.com/android-tutorial/) * [Expert Android and Eclipse development knowledge](http://www.vogella.com/android.html) @@ -1177,7 +1177,7 @@ Original Source: [List of freely available programming books](http://web.archive * [Spring Framework Reference Documentation](http://docs.spring.io/spring/docs/current/spring-framework-reference/html/) ([PDF](http://docs.spring.io/spring/docs/current/spring-framework-reference/pdf/spring-framework-reference.pdf)) - Rod Johnson, Juergen Hoeller, Keith Donald, Colin Sampaleanu, Rob Harrop, Thomas Risberg, Alef Arendsen, Darren Davison, Dmitriy Kopylenko, Mark Pollack, Thierry Templier, Erwin Vervaet, Portia Tung, Ben Hale, Adrian Colyer, John Lewis, Costin Leau, Mark Fisher, Sam Brannen, Ramnivas Laddad, Arjen Poutsma, Chris Beams, Tareq Abedrabbo, Andy Clement, Dave Syer, Oliver Gierke, Rossen Stoyanchev, Phillip Webb, Rob Winch, Brian Clozel, Stephane Nicoll, Sebastien Deleuze #### Spring Boot -* [Spring Boot Reference Guide](http://docs.spring.io/spring-boot/docs/current/reference/html/) ([PDF](http://docs.spring.io/spring-boot/docs/current/reference/pdf/spring-boot-reference.pdf), [EPUB](http://docs.spring.io/spring-boot/docs/current/reference/epub/spring-boot-reference.epub)) - Phillip Webb, Dave Syer, Josh Long, Stéphane Nicoll, Rob Winch, Andy Wilkinson, Marcel Overdijk, Christian Dupuis +* [Spring Boot Reference Guide](http://docs.spring.io/spring-boot/docs/current/reference/html/) ([PDF](http://docs.spring.io/spring-boot/docs/current/reference/pdf/spring-boot-reference.pdf) - [EPUB](http://docs.spring.io/spring-boot/docs/current/reference/epub/spring-boot-reference.epub)) - Phillip Webb, Dave Syer, Josh Long, Stéphane Nicoll, Rob Winch, Andy Wilkinson, Marcel Overdijk, Christian Dupuis #### Spring Security * [Spring Security Reference](http://docs.spring.io/spring-security/site/docs/current/reference/htmlsingle/) - Ben Alex, Luke Taylor, Rob Winch @@ -1229,7 +1229,7 @@ Original Source: [List of freely available programming books](http://web.archive For resources on Angular, Backbone, D3, Dojo, Ember, Express, jQuery, Knockout, Meteor, React and any other JS toolkit/framework, please refer to [Javascript Frameworks Resources and Tutorials](/javascript-frameworks-resources.md). #### Node.js -* [An Introduction to libuv](https://nikhilm.github.io/uvbook/) - Nikhil Marathe ([PDF](http://nikhilm.github.com/uvbook/An%20Introduction%20to%20libuv.pdf), [ePub](http://nikhilm.github.com/uvbook/An%20Introduction%20to%20libuv.epub)) +* [An Introduction to libuv](https://nikhilm.github.io/uvbook/) - Nikhil Marathe ([PDF](http://nikhilm.github.com/uvbook/An%20Introduction%20to%20libuv.pdf) - [ePub](http://nikhilm.github.com/uvbook/An%20Introduction%20to%20libuv.epub)) * [JavaScript and Node FUNdamentals](https://leanpub.com/jsfun/read) *(Leanpub - by Azat Mardanov)* * [Mixu's Node Book](http://book.mixu.net/node/) * [Node.js Succinctly, Syncfusion](http://www.syncfusion.com/resources/techportal/ebooks/nodejs) (PDF, Kindle) *(Just fill the fields with any values)* @@ -1797,7 +1797,7 @@ See also [TeX](#tex) * [Simply Scheme: Introducing Computer Science](http://www.cs.berkeley.edu/~bh/ss-toc2.html) * [Structure and Interpretion of Computer Programs](http://mitpress.mit.edu/sicp/full-text/book/book.html) * [Teach Yourself Scheme in Fixnum Days](http://www.ccs.neu.edu/home/dorai/t-y-scheme/t-y-scheme.html) -* [The Scheme Programming Language: Edition 3](http://www.scheme.com/tspl3/), [The Scheme Programming Language: Edition 4](http://www.scheme.com/tspl4/) +* [The Scheme Programming Language: Edition 3](http://www.scheme.com/tspl3/) - [The Scheme Programming Language: Edition 4](http://www.scheme.com/tspl4/) * [Write Yourself a Scheme in 48 Hours](http://en.wikibooks.org/wiki/Write_Yourself_a_Scheme_in_48_Hours) @@ -1862,7 +1862,7 @@ See also [TeX](#tex) ### Standard ML -* [Programming in Standard ML '97](http://www.dcs.ed.ac.uk/home/stg/NOTES/), by Stephen Gilmore, University of Edinburgh +* [Programming in Standard ML '97](http://www.dcs.ed.ac.uk/home/stg/NOTES/) - by Stephen Gilmore, University of Edinburgh * [Programming in Standard ML, Draft](http://www.cs.cmu.edu/~rwh/smlbook/) - Robert Harper ### Subversion @@ -1877,8 +1877,8 @@ See also [TeX](#tex) * [Using Swift with Cocoa and Objective-C](https://itunes.apple.com/us/book/using-swift-cocoa-objective/id888894773?mt=11) (iBook) ### Tcl -* [Tcl Programming](http://en.wikibooks.org/wiki/Programming%3ATcl), by Richard.Suchenwirth, et. al. -* [TclWise](http://www.invece.org/tclwise/index.html), by Salvatore Sanfilippo +* [Tcl Programming](http://en.wikibooks.org/wiki/Programming%3ATcl) - by Richard.Suchenwirth, et. al. +* [TclWise](http://www.invece.org/tclwise/index.html) - by Salvatore Sanfilippo ### Teradata @@ -1887,8 +1887,8 @@ See also [TeX](#tex) ### TeX * [Notes On Programming in TeX](http://pgfplots.sourceforge.net/TeX-programming-notes.pdf) (PDF) by Christian Feursänger -* [TeX by Topic, A TeXnician's Reference](http://eijkhout.net/texbytopic/texbytopic.html), by Victor Eijkhout -* [TeX for the Impatient](https://www.gnu.org/software/teximpatient/), by Paul Abrahams, Kathryn Hargreaves, and Karl Berry +* [TeX by Topic, A TeXnician's Reference](http://eijkhout.net/texbytopic/texbytopic.html) - by Victor Eijkhout +* [TeX for the Impatient](https://www.gnu.org/software/teximpatient/) - by Paul Abrahams, Kathryn Hargreaves, and Karl Berry See also [LaTeX](#latex) From dd2519c310f911817b0c88c64077e6ae09587158 Mon Sep 17 00:00:00 2001 From: David Metcalfe Date: Fri, 30 Oct 2015 17:28:29 -0700 Subject: [PATCH 02/14] Removal of numerous dead links --- free-programming-books.md | 41 +-------------------------------------- 1 file changed, 1 insertion(+), 40 deletions(-) diff --git a/free-programming-books.md b/free-programming-books.md index 1d668cd6..a0305a7f 100644 --- a/free-programming-books.md +++ b/free-programming-books.md @@ -308,7 +308,6 @@ Original Source: [List of freely available programming books](http://web.archive * [Compiler Design in C](http://www.holub.com/software/compiler.design.in.c.html) - Allen Holub, Prentice Hall, 1990 * [Compiler Design: Theory, Tools, and Examples, C/C++ Edition](http://elvis.rowan.edu/~bergmann/books/c_cpp/) - Seth D. Bergmann * [Compiler Design: Theory, Tools, and Examples, Java Edition](http://elvis.rowan.edu/~bergmann/books/java/) - Seth D. Bergmann -* [Compilers and Compiler Generators: An Introduction with C++](http://www.scifac.ru.ac.za/compilers/) - P. D. Terry * [Compiling Scala for the Java Virtual Machine](http://lampwww.epfl.ch/~schinz/thesis-final-A4.pdf) - Michel Schinz * [Compiling Techniques](http://www.chilton-computing.org.uk/acl/literature/books/compilingtechniques/overview.htm) - F.R.A. Hopgood, Macdonald, 1969 * [Implementing Functional Languages: A Tutorial](http://research.microsoft.com/en-us/um/people/simonpj/Papers/pj-lester-book/) - Simon Peyton Jones, David Lester @@ -360,7 +359,6 @@ Original Source: [List of freely available programming books](http://web.archive * [An Introduction to Statistical Learning](http://www-bcf.usc.edu/~gareth/ISL/) - Gareth James, Daniela Witten, Trevor Hastie and Robert Tibshirani * [Bayesian Reasoning and Machine Learning](http://web4.cs.ucl.ac.uk/staff/D.Barber/pmwiki/pmwiki.php?n=Brml.HomePage) * [Gaussian Processes for Machine Learning](http://www.gaussianprocess.org/gpml/) -* [Inductive Logic Programming](http://www-ai.ijs.si/SasoDzeroski/ILPBook/) * [Information Theory, Inference, and Learning Algorithms](http://www.inference.phy.cam.ac.uk/itila/) * [Introduction to Machine Learning](http://alex.smola.org/drafts/thebook.pdf) - Alex Smola and S.V.N. Vishwanathan (PDF) * [Introduction to Machine Learning](http://arxiv.org/abs/0904.3664v1) - Amnon Shashua @@ -406,7 +404,6 @@ Original Source: [List of freely available programming books](http://web.archive * [OpenIntro Statistics](http://www.openintro.org/stat/textbook.php) * [Ordinary Differential Equations](http://en.wikibooks.org/wiki/Ordinary_Differential_Equations) * [Power Programming with Mathematica](http://mathematica.stackexchange.com/questions/16485/are-you-interested-in-purchasing-david-wagners-power-programming-with-mathemat/22724) - David B. Wagner -* [Probability and Statistics Cookbook](http://matthias.vallentin.net/probability-and-statistics-cookbook/) * [Probability and Statistics EBook](http://wiki.stat.ucla.edu/socr/index.php/Probability_and_statistics_EBook) * [Statistics Done Wrong](http://www.refsmmat.com/statistics/) - Alex Reinhart * [Think Bayes: Bayesian Statistics Made Simple](http://www.greenteapress.com/thinkbayes/) - Allen B. Downey @@ -431,7 +428,6 @@ Original Source: [List of freely available programming books](http://web.archive * [Designing for Performance](http://designingforperformance.com) by Lara Hogan * [Designing Interfaces](http://designinginterfaces.com) by Jennifer Tidwell * [DevDocs](http://devdocs.io/) - Documents for Developers in 1 place -* [DevOps For Dummies (IBM Edition)](http://public.dhe.ibm.com/common/ssi/ecm/en/ram14011usen/RAM14011USEN.PDF) (PDF) * [Digital Signal Processing For Communications](http://www.sp4comm.org/) * [Digital Signal Processing For Engineers and Scientists](http://www.dspguide.com/) * [Distributed systems for fun and profit](http://book.mixu.net/distsys/single-page.html) @@ -490,7 +486,6 @@ Original Source: [List of freely available programming books](http://web.archive * [An Introduction to Computer Networks](http://intronetworks.cs.luc.edu) (HTML, PDF, Kindle) * [Bits, Signals, and Packets: An Introduction to Digital Communications and Networks](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-02-introduction-to-eecs-ii-digital-communication-systems-fall-2012/readings/) * [Code Connected vol.1](http://hintjens.wdfiles.com/local--files/main%3Afiles/cc1pe.pdf) (PDF) (book on ZeroMQ) -* [Computer Networking : Principles, Protocols and Practice](http://cnp3book.info.ucl.ac.be/1st/html/index.html) (HTML, ePub, PDF, Kindle) * [High-Performance Browser Networking](http://chimera.labs.oreilly.com/books/1230000000545/index.html) * [HTTP Succinctly, Syncfusion](http://www.syncfusion.com/resources/techportal/ebooks/http) (PDF, Kindle) *(Just fill the fields with any values)* * [HTTP2 Explained](http://daniel.haxx.se/http2/) - Daniel Stenberg @@ -611,7 +606,6 @@ Original Source: [List of freely available programming books](http://web.archive * [Programming Reliable Systems (Joe Armstrong's PhD thesis)](http://www.sics.se/~joe/thesis/armstrong_thesis_2003.pdf) (PDF) * [Scrum and XP from the Trenches](http://www.infoq.com/minibooks/scrum-xp-from-the-trenches) * [Seamless Object-Oriented Software Architecture](http://www.bon-method.com/book_print_a4.pdf) (PDF) -* [Software Architecture](http://ftacademy.org/materials/fsm/11) (PDF) * [Software Engineering for Internet Applications](http://philip.greenspun.com/seia/) * [Web API Design](https://blog.apigee.com/detail/announcement_new_ebook_on_web_api_design) * [Your API Is Bad](https://leanpub.com/yourapiisbad) *(Leanpub, by Paddy Foran)* @@ -645,7 +639,6 @@ Original Source: [List of freely available programming books](http://web.archive #### Web Performance -* [Book of Speed](http://www.bookofspeed.com/index.html) by Stoyan Stefanov * [High Performance Browser Networking](http://chimera.labs.oreilly.com/books/1230000000545/index.html) by Ilya Grigorik * [Mature Optimization](http://carlos.bueno.org/optimization/mature-optimization.pdf) by Carlos Bueno @@ -674,7 +667,6 @@ Original Source: [List of freely available programming books](http://web.archive * [Expert Android and Eclipse development knowledge](http://www.vogella.com/android.html) * [Google Android Developer Training](https://developer.android.com/training/index.html) * [Styling Android](http://www.stylingandroid.com/) -* [TechnoTalkative Android](http://www.technotalkative.com/android/) * [The Busy Coder's Guide to Android Development](https://commonsware.com/Android/4-2-free) (PDF - older versions) * [Tutorial Point Android Tutorial](http://www.tutorialspoint.com/android/android_tutorial.pdf) (PDF) @@ -763,7 +755,6 @@ Original Source: [List of freely available programming books](http://web.archive ### C * [A Tutorial on Pointers and Arrays in C](http://home.netcom.com/~tjensen/ptr/pointers.htm) -* [Advanced Linux Programming](http://www.advancedlinuxprogramming.com/) * [Beej's Guide to C Programming](http://beej.us/guide/bgc/) * [Beej's Guide to Network Programming](http://beej.us/guide/bgnet/) * [Build Your Own Lisp](http://www.buildyourownlisp.com/) @@ -790,7 +781,6 @@ Original Source: [List of freely available programming books](http://web.archive * [Data Structures and Algorithms with Object-Oriented Design Patterns in C#](http://www.brpreiss.com/books/opus6/) * [Dissecting a C# Application](https://damieng.com/blog/2007/11/08/dissecting-a-c-application-inside-sharpdevelop) - Christian Holm, Bernhard Spuida, Mike Kruger * [Fundamentals of Computer Programming with C#](http://www.introprogramming.info/english-intro-csharp-book/read-online/) - Svetlin Nakov -* [HTTP Programming Recipes for C# Bots](http://www.heatonresearch.com/articles/series/20) * [Threading in C#](http://www.albahari.com/threading/) @@ -801,7 +791,6 @@ Original Source: [List of freely available programming books](http://web.archive * [C++ Succinctly, Syncfusion](http://www.syncfusion.com/resources/techportal/ebooks/cplusplus) (PDF, Kindle) *(Just fill the fields with any values)* * [C++ Tricks](http://www.bordoon.com/cplusplus/book_wrapper.html) * [CS106X Programming Abstractions in C++](http://www.stanford.edu/class/cs106x/) -* [Data Structures and Algorithms with Object-Oriented Design Patterns in C++](http://www.brpreiss.com/books/opus4/index.html) * [Financial Numerical Recipes in C++](http://finance.bi.no/~bernt/gcc_prog/recipes/) - Bernt Arne Ødegaard * [Game Programming Patterns](http://gameprogrammingpatterns.com/) * [Google's C++ Style Guide](http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml) @@ -948,22 +937,9 @@ Original Source: [List of freely available programming books](http://web.archive ### Force.com -* [Analytics Workbook](http://www.salesforce.com/us/developer/docs/workbook_analytics/index.htm) -* [Apex Design Patterns and Best Practices](http://www.gobookee.org/get_book.php?u=aHR0cDovL3d3dy5zdW5kb2dpbnRlcmFjdGl2ZS5jb20vd2hpdGVwYXBlcnMvU1VOX0NodWNrX0FwZXhkZXNpZ25wYXR0ZXJucy5wZGYKQXBleCBEZXNpZ24gUGF0dGVybnMgYW5kIEJlc3QgUHJhY3RpY2VzIC0gU3VuZG9n) -* [Apex Workbook](http://www.salesforce.com/us/developer/docs/apex_workbook/index.htm) -* [Cloud Flow Designer Workbook](http://www.salesforce.com/us/developer/docs/workbook_flow/index.htm) -* [Database.com Workbook](http://www.salesforce.com/us/developer/docs/workbook_database/index.htm) * [Force.com Fundamentals](http://wiki.developerforce.com/page/Force_Platform_Fundamentals) -* [Force.com Integration Workbook](http://www.salesforce.com/us/developer/docs/integration_workbook/index.htm) * [Force.com Platform Fundamentals: An Introduction to Custom Application Development in the Cloud](http://www.lulu.com/shop/salesforcecom/forcecom-platform-fundamentals/ebook/product-17381451.html) -* [Force.com Workbook](http://www.salesforce.com/us/developer/docs/workbook/index.htm) * [Heroku Postgres](http://media.developerforce.com/workbooks/HerokuPostgres_Workbooks_Web_Final.pdf) (PDF) -* [ISVForce Workbook](http://www.salesforce.com/us/developer/docs/workbook_isv/index.htm) -* [Security Workbook](http://www.salesforce.com/us/developer/docs/workbook_security/index.htm) -* [Service Cloud Workbook](http://www.salesforce.com/us/developer/docs/workbook_service_cloud/index.htm) -* [Site.com Workbook](http://www.salesforce.com/us/developer/docs/workbook_siteforce/index.htm) -* [Visualforce Workbook](http://www.salesforce.com/us/developer/docs/workbook_vf/index.htm) - ### Forth * [A Beginner's Guide to Forth](http://hackershelf.com/book/482/a-beginners-guide-to-forth/) @@ -1035,7 +1011,6 @@ Original Source: [List of freely available programming books](http://web.archive * [The Grails Framework - Reference Documentation](http://grails.org/doc/latest/) ([PDF](http://grails.org/doc/latest/guide/single.pdf)) - Graeme Rocher, Peter Ledbrook, Marc Palmer, Jeff Brown, Luke Daley, Burt Beckwith, Lari Hotari #### Spock Framework -* [Spock Framework Reference Documentation](http://spock-framework.readthedocs.org/en/latest/) - Peter Niederwieser * [Spock Intro](http://edgibbs.com/spock-intro-a-bdd-testing-framework-in-groovy/) - Ed Gibbs @@ -1097,7 +1072,6 @@ Original Source: [List of freely available programming books](http://web.archive ### IDL * [Getting Started with IDL](http://www.astro.virginia.edu/class/oconnell/astr511/IDLresources/getting-started-IDL-v7.0.pdf) -* [Guide to Using IDL for Astronomers](http://www.astro.virginia.edu/class/oconnell/astr511/IDLresources/IDLguide.html) ### iOS @@ -1125,13 +1099,11 @@ Original Source: [List of freely available programming books](http://web.archive * [J for C Programmers by Henry Rich- online](http://www.jsoftware.com/help/jforc/contents.htm) || [pdf](http://www.jsoftware.com/jwiki/HenryRich?action=AttachFile&do=get&target=JforC20071003.pdf) || [word 2003 file](http://www.jsoftware.com/jwiki/HenryRich?action=AttachFile&do=get&target=JforC20070929.doc) * [J Primer](http://www.jsoftware.com/help/primer/contents.htm) * [J Reference Card](http://www.jsoftware.com/jwiki/HenryRich?action=AttachFile&do=view&target=J602_RefCard_color_letter_current.pdf) (PDF) -* [Learning J by Roger Stokes- online](http://www.rogerstokes.free-online.co.uk/book.htm) * [Math for the Layman by Kenneth E Iverson](http://www.jsoftware.com/books/pdf/mftl.zip) (zipped html+images) ### Java * [3D Programming in Java](http://www.mat.uniroma2.it/~picard/SMC/didattica/materiali_did/Java/Java_3D/Java_3D_Programming.pdf) - Daniel Selman -* [Animation/Games in Java](http://www.heatonresearch.com/articles/series/3) * [Apache Jakarta Commons: Reusable Java Components](http://ptgmedia.pearsoncmg.com/images/0131478303/downloads/Iverson_book.pdf) - Will Iverson * [Artificial Intelligence - Foundation of Computational Agents](http://artint.info/html/ArtInt.html) * [Cadmus: A Primer in Java](http://java.divshot.io) - Hashan Punchihewa, Joseph Bills et al. @@ -1140,15 +1112,11 @@ Original Source: [List of freely available programming books](http://web.archive * [Data Structures and Algorithms with Object-Oriented Design Patterns in Java](http://www.brpreiss.com/books/opus5/html/page9.html) * [Data Structures in Java for the Principled Programmer](http://dept.cs.williams.edu/~bailey/JavaStructures/Book_files/JavaStructures.pdf) (PDF) * [Google's Java Style Guide](http://google-styleguide.googlecode.com/svn/trunk/javaguide.html) -* [Hibernate 4 Example Programs](https://leanpub.com/hibernate4-example-programs) - L. Mohan Arun -* [HTTP Programming Recipes for Java Bots](http://www.heatonresearch.com/articles/series/16) * [Introduction to Computer science using Java](http://chortle.ccsu.edu/java5/index.html) -* [Introduction to Neural Networks with Java](http://www.heatonresearch.com/articles/series/1) * [Introduction to Programming in Java](http://introcs.cs.princeton.edu/java/home/) - Robert Sedgewick and Kevin Wayne * [Introduction to Programming Using Java](http://math.hws.edu/javanotes/) - David J. Eck * [JAAS in Action](http://www.jaasbook.com/) * [Java Application Development on Linux by Carl Albing and Michael Schwarz (PDF)](http://www.phptr.com/content/images/013143697X/downloads/013143697X_book.pdf) (PDF) -* [Java for the Beginning Programmer](http://www.heatonresearch.com/articles/series/15) * [Java Programming for Kids, Parents and Grandparents](http://myflex.org/books/java4kids/java4kids.htm) - Yakov Fain * [Java Thin-Client Programming](http://www.redbooks.ibm.com/redbooks/SG245118.html) * [Java: A Beginner's Guide](http://www.oracle.com/events/global/en/java-outreach/resources/java-a-beginners-guide-1720064.pdf) - Oracle @@ -1158,7 +1126,6 @@ Original Source: [List of freely available programming books](http://web.archive * [Open Data Structures (in Java)](http://opendatastructures.org/ods-java.pdf) (PDF) * [OSGi in Practice](http://njbartlett.name/files/osgibook_preview_20091217.pdf) (PDF) * [Processing XML with Java (A Guide to SAX, DOM, JDOM, JAXP, and TrAX)](http://www.cafeconleche.org/books/xmljava/) - Elliotte Rusty Harold -* [Programming with Java - An Algorithmic Introduction](http://www.scifac.ru.ac.za/javabook/) - Pat Terry * [Sun's Java Tutorials](http://download.oracle.com/javase/tutorial/) * [The ABC of PDF with iText: PDF Syntax essentials](https://leanpub.com/itext_pdfabc) * [The Java EE6 Tutorial](http://download.oracle.com/javaee/6/tutorial/doc/javaeetutorial6.pdf) (PDF) @@ -1183,7 +1150,7 @@ Original Source: [List of freely available programming books](http://web.archive * [Spring Security Reference](http://docs.spring.io/spring-security/site/docs/current/reference/htmlsingle/) - Ben Alex, Luke Taylor, Rob Winch #### Wicket -* [Official Free Online Guide for Apache Wicket framework](http://wicket.apache.org/guide/) +* [Official Free Online Guide for Apache Wicket framework](http://wicket.apache.org/learn/#guide) ### JavaScript @@ -1253,7 +1220,6 @@ See also [TeX](#tex) ### Linux * [Ad Hoc Data Analysis From The Unix Command Line](http://en.wikibooks.org/wiki/Ad_Hoc_Data_Analysis_From_The_Unix_Command_Line) -* [Advanced Linux Programming](http://www.advancedlinuxprogramming.com/) * [Automated Linux From Scratch](http://www.linuxfromscratch.org/alfs/download.html) * [Getting Started with Ubuntu](http://ubuntu-manual.org/) * [GNU Autoconf, Automake and Libtool](http://sources.redhat.com/autobook/download.html) @@ -1537,7 +1503,6 @@ See also [TeX](#tex) * [Prolog Problems](https://sites.google.com/site/prologsite/prolog-problems) - Werner Hett * [Prolog Programming: A First Course](http://engronline.ee.memphis.edu/deductiveDB/prolog_book.pdf) - Paul Brna * [Prolog Techniques](http://bookboon.com/int/student/it/prolog-techniques-applications-of-prolog) -* [Prolog Tutorial](https://www.csupomona.edu/~jrfisher/www/prolog_tutorial/pt_framer.html) * [Simply Logical](http://www.cs.bris.ac.uk/~flach/SimplyLogical.html) * [The First 10 Prolog Programming Contests](http://dtai.cs.kuleuven.be/ppcbook/) - Bart Demoen, Phuong-Lan Nguyen, Tom Schrijvers, Remko Tronçon * [Warren's Abstract Machine: A Tutorial Reconstruction](http://wambook.sourceforge.net/) - Hassan A¨it-Kaci @@ -1552,7 +1517,6 @@ See also [TeX](#tex) ### Python * [A Beginner's Python Tutorial](http://en.wikibooks.org/wiki/A_Beginner%27s_Python_Tutorial) * [A Bit of Python and Other Things](http://jessenoller.com/good-to-great-python-reads/) -* [A Guide to Python's Magic Methods](http://www.rafekettler.com/magicmethods.html) - Rafe Kettler * [Automate the Boring Stuff](http://automatetheboringstuff.com/chapter0/) - Al Sweigart * [Biopython](http://biopython.org/DIST/docs/tutorial/Tutorial.pdf) * [Building Skills in Object-Oriented Design (Python)](http://www.itmaybeahack.com/book/oodesign-python-2.1/latex/BuildingSkillsinOODesign.pdf) (PDF) (2.1.1) @@ -1619,7 +1583,6 @@ See also [TeX](#tex) * [Snake Wrangling For Kids](http://www.briggs.net.nz/snake-wrangling-for-kids.html) (3.x) * [Test-Driven Web Development with Python](http://chimera.labs.oreilly.com/books/1234000000754/index.html) (3.3 - 3.x) * [Text Processing in Python](http://gnosis.cx/TPiP/) - David Mertz (2.3 - 2.x) -* [The Art and Craft of Programming](http://beastie.cs.ua.edu/cs150/book/index.html) (3.x) * [The Little Book of Python Anti-Patterns](http://docs.quantifiedcode.com/python-anti-patterns/) ([Source](https://github.com/quantifiedcode/python-anti-patterns)) * [The Programming Historian](http://niche-canada.org/research/niche-digital-infrastructure-project/the-programming-historian/) - William J. Turkel, Adam Crymble and Alan MacEachern * [The Python Ecosystem: An Introduction](http://mirnazim.org/writings/python-ecosystem-introduction/) @@ -1709,7 +1672,6 @@ See also [TeX](#tex) * [Mr. Neighborly's Humble Little Ruby Book](http://www.humblelittlerubybook.com/) * [Practicing Ruby](https://github.com/elm-city-craftworks/practicing-ruby-manuscripts) * [Programming Ruby](http://www.ruby-doc.org/docs/ProgrammingRuby/) -* [Read Ruby](http://readruby.io/) * [Ruby Essentials](http://www.techotopia.com/index.php/Ruby_Essentials) * [Ruby Hacking Guide](http://ruby-hacking-guide.github.io/) * [Ruby in Twenty Minutes](https://www.ruby-lang.org/en/documentation/quickstart/) @@ -1816,7 +1778,6 @@ See also [TeX](#tex) ### Silverlight -* [10 Laps around Silverlight 5](http://www.silverlightshow.net/ebooks/10laps_silverlight5.aspx) ### Smalltalk From 1639af6ed32c9d993bc98ba9b8216ca71d915639 Mon Sep 17 00:00:00 2001 From: David Metcalfe Date: Sun, 1 Nov 2015 18:28:12 -0800 Subject: [PATCH 03/14] Adjustments per comments by @vhf --- free-programming-books.md | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/free-programming-books.md b/free-programming-books.md index a0305a7f..b25c2130 100644 --- a/free-programming-books.md +++ b/free-programming-books.md @@ -162,7 +162,6 @@ Original Source: [List of freely available programming books](http://web.archive * [Scilab](#scilab) * [Scratch](#scratch) * [Sed](#sed) -* [Silverlight](#silverlight) * [Smalltalk](#smalltalk) * [SQL (implementation agnostic)](#sql-implementation-agnostic) * [SQL Server](#sql-server) @@ -404,6 +403,7 @@ Original Source: [List of freely available programming books](http://web.archive * [OpenIntro Statistics](http://www.openintro.org/stat/textbook.php) * [Ordinary Differential Equations](http://en.wikibooks.org/wiki/Ordinary_Differential_Equations) * [Power Programming with Mathematica](http://mathematica.stackexchange.com/questions/16485/are-you-interested-in-purchasing-david-wagners-power-programming-with-mathemat/22724) - David B. Wagner +* [Probability and Statistics Cookbook](http://statistics.zone/) * [Probability and Statistics EBook](http://wiki.stat.ucla.edu/socr/index.php/Probability_and_statistics_EBook) * [Statistics Done Wrong](http://www.refsmmat.com/statistics/) - Alex Reinhart * [Think Bayes: Bayesian Statistics Made Simple](http://www.greenteapress.com/thinkbayes/) - Allen B. Downey @@ -428,6 +428,7 @@ Original Source: [List of freely available programming books](http://web.archive * [Designing for Performance](http://designingforperformance.com) by Lara Hogan * [Designing Interfaces](http://designinginterfaces.com) by Jennifer Tidwell * [DevDocs](http://devdocs.io/) - Documents for Developers in 1 place +* [DevOps For Dummies (IBM Edition)](http://www.ibm.com/ibm/devops/us/en/resources/dummiesbooks/) (PDF) * [Digital Signal Processing For Communications](http://www.sp4comm.org/) * [Digital Signal Processing For Engineers and Scientists](http://www.dspguide.com/) * [Distributed systems for fun and profit](http://book.mixu.net/distsys/single-page.html) @@ -486,6 +487,7 @@ Original Source: [List of freely available programming books](http://web.archive * [An Introduction to Computer Networks](http://intronetworks.cs.luc.edu) (HTML, PDF, Kindle) * [Bits, Signals, and Packets: An Introduction to Digital Communications and Networks](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-02-introduction-to-eecs-ii-digital-communication-systems-fall-2012/readings/) * [Code Connected vol.1](http://hintjens.wdfiles.com/local--files/main%3Afiles/cc1pe.pdf) (PDF) (book on ZeroMQ) +* [Computer Networking : Principles, Protocols and Practice](http://cnp3book.info.ucl.ac.be/1st/html/index.html) (HTML, ePub, PDF, Kindle) * [High-Performance Browser Networking](http://chimera.labs.oreilly.com/books/1230000000545/index.html) * [HTTP Succinctly, Syncfusion](http://www.syncfusion.com/resources/techportal/ebooks/http) (PDF, Kindle) *(Just fill the fields with any values)* * [HTTP2 Explained](http://daniel.haxx.se/http2/) - Daniel Stenberg @@ -639,6 +641,7 @@ Original Source: [List of freely available programming books](http://web.archive #### Web Performance +* [Book of Speed](http://www.bookofspeed.com/) by Stoyan Stefanov * [High Performance Browser Networking](http://chimera.labs.oreilly.com/books/1230000000545/index.html) by Ilya Grigorik * [Mature Optimization](http://carlos.bueno.org/optimization/mature-optimization.pdf) by Carlos Bueno @@ -940,6 +943,7 @@ Original Source: [List of freely available programming books](http://web.archive * [Force.com Fundamentals](http://wiki.developerforce.com/page/Force_Platform_Fundamentals) * [Force.com Platform Fundamentals: An Introduction to Custom Application Development in the Cloud](http://www.lulu.com/shop/salesforcecom/forcecom-platform-fundamentals/ebook/product-17381451.html) * [Heroku Postgres](http://media.developerforce.com/workbooks/HerokuPostgres_Workbooks_Web_Final.pdf) (PDF) +* [Developer Workbooks](http://developer.force.com/workbook) ### Forth * [A Beginner's Guide to Forth](http://hackershelf.com/book/482/a-beginners-guide-to-forth/) @@ -1011,6 +1015,7 @@ Original Source: [List of freely available programming books](http://web.archive * [The Grails Framework - Reference Documentation](http://grails.org/doc/latest/) ([PDF](http://grails.org/doc/latest/guide/single.pdf)) - Graeme Rocher, Peter Ledbrook, Marc Palmer, Jeff Brown, Luke Daley, Burt Beckwith, Lari Hotari #### Spock Framework +* [Spock Framework Reference Documentation](https://spockframework.github.io/spock/docs/current/index.html) - Peter Niederwieser * [Spock Intro](http://edgibbs.com/spock-intro-a-bdd-testing-framework-in-groovy/) - Ed Gibbs @@ -1099,6 +1104,7 @@ Original Source: [List of freely available programming books](http://web.archive * [J for C Programmers by Henry Rich- online](http://www.jsoftware.com/help/jforc/contents.htm) || [pdf](http://www.jsoftware.com/jwiki/HenryRich?action=AttachFile&do=get&target=JforC20071003.pdf) || [word 2003 file](http://www.jsoftware.com/jwiki/HenryRich?action=AttachFile&do=get&target=JforC20070929.doc) * [J Primer](http://www.jsoftware.com/help/primer/contents.htm) * [J Reference Card](http://www.jsoftware.com/jwiki/HenryRich?action=AttachFile&do=view&target=J602_RefCard_color_letter_current.pdf) (PDF) +* [Learning J by Roger Stokes- online](http://www.jsoftware.com/help/learning/contents.htm) * [Math for the Layman by Kenneth E Iverson](http://www.jsoftware.com/books/pdf/mftl.zip) (zipped html+images) @@ -1503,6 +1509,7 @@ See also [TeX](#tex) * [Prolog Problems](https://sites.google.com/site/prologsite/prolog-problems) - Werner Hett * [Prolog Programming: A First Course](http://engronline.ee.memphis.edu/deductiveDB/prolog_book.pdf) - Paul Brna * [Prolog Techniques](http://bookboon.com/int/student/it/prolog-techniques-applications-of-prolog) +* [Prolog Tutorial](http://www.cpp.edu/~jrfisher/www/prolog_tutorial/contents.html) * [Simply Logical](http://www.cs.bris.ac.uk/~flach/SimplyLogical.html) * [The First 10 Prolog Programming Contests](http://dtai.cs.kuleuven.be/ppcbook/) - Bart Demoen, Phuong-Lan Nguyen, Tom Schrijvers, Remko Tronçon * [Warren's Abstract Machine: A Tutorial Reconstruction](http://wambook.sourceforge.net/) - Hassan A¨it-Kaci @@ -1516,7 +1523,8 @@ See also [TeX](#tex) ### Python * [A Beginner's Python Tutorial](http://en.wikibooks.org/wiki/A_Beginner%27s_Python_Tutorial) -* [A Bit of Python and Other Things](http://jessenoller.com/good-to-great-python-reads/) +* [A Bit of Python and Other Things](https://github.com/RafeKettler/magicmethods) +* [A Guide to Python's Magic Methods](http://www.rafekettler.com/magicmethods.html) - Rafe Kettler * [Automate the Boring Stuff](http://automatetheboringstuff.com/chapter0/) - Al Sweigart * [Biopython](http://biopython.org/DIST/docs/tutorial/Tutorial.pdf) * [Building Skills in Object-Oriented Design (Python)](http://www.itmaybeahack.com/book/oodesign-python-2.1/latex/BuildingSkillsinOODesign.pdf) (PDF) (2.1.1) @@ -1777,9 +1785,6 @@ See also [TeX](#tex) * [Sed - An Introduction and Tutorial](http://www.grymoire.com/Unix/Sed.html) -### Silverlight - - ### Smalltalk * [Computer Programming using GNU Smalltalk](http://www.canol.info/books/computer_programming_using_gnu_smalltalk) (PDF) * [Dynamic Web Development with Seaside](http://book.seaside.st/book/table-of-contents) From 2f313830a3d6a8a88b283774468c25cc37d697ce Mon Sep 17 00:00:00 2001 From: David Metcalfe Date: Sun, 1 Nov 2015 18:32:47 -0800 Subject: [PATCH 04/14] Adjusted expired certificate links from #1586 --- free-programming-books.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/free-programming-books.md b/free-programming-books.md index b25c2130..fc40adb2 100644 --- a/free-programming-books.md +++ b/free-programming-books.md @@ -655,7 +655,7 @@ Original Source: [List of freely available programming books](http://web.archive ### Agda -* [Agda Tutorial](https://people.inf.elte.hu/divip/AgdaTutorial/Index.html) +* [Agda Tutorial](http://people.inf.elte.hu/divip/AgdaTutorial/Index.html) ### Alef * [Alef Language Reference Manual](http://doc.cat-v.org/plan_9/2nd_edition/papers/alef/ref) @@ -1290,7 +1290,7 @@ See also [TeX](#tex) ### Markdown -* [Learn Markdown](https://www.gitbook.io/book/gitbookio/markdown) (PDF) (EPUB) (MOBI) - GitBookIO, Sammy P., Aaron O. +* [Learn Markdown](http://www.gitbook.io/book/gitbookio/markdown) (PDF) (EPUB) (MOBI) - GitBookIO, Sammy P., Aaron O. ### Mathematica From 60f52ec85d741a3bd287172698ce7e43eab17ab5 Mon Sep 17 00:00:00 2001 From: Victor Felder Date: Mon, 2 Nov 2015 16:34:33 +0100 Subject: [PATCH 05/14] Update CONTRIBUTING.md to be more explicit and more complete --- CONTRIBUTING.md | 98 +++++++++++++++++++++++++++---------------------- 1 file changed, 54 insertions(+), 44 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index be5999ab..e2fc6cfa 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,63 +1,73 @@ -# Contribute to the lists -Hello dear friend, welcome! -This guide details how to contribute to this repository. - - ## Contributor license agreement -By submitting code you agree to the [LICENSE](https://github.com/vhf/free-programming-books/blob/master/LICENSE) of this repository. +By contributing you agree to the [LICENSE](https://github.com/vhf/free-programming-books/blob/master/LICENSE) of this repository. - -## All the steps you need -1. First of all, what you want to add should be actually 'Free'. Don't mistake "An easy link to Download a book" with "Free". -2. If you don't know how to work with git or github, just simply go to [Wiki: Contribution](https://github.com/vhf/free-programming-books/wiki/Contribution) and read the rest. -3. We have 5 kinds of lists. Make sure you know where you're adding the link: +## Free, Git, and Files +1. First of all, what you want to add should be free. Don't confuse "an easy link to download a book" with "a free book". +2. If you don't know how to work with git or github, simply refer to our wiki [Contribution](https://github.com/vhf/free-programming-books/wiki/Contribution). +3. We have 5 kinds of lists. Choose the right one: - + **Books** : PDF, HTML, DJVU, ePub, a gitBook.io based site, a Git repo, etc. - + **Courses** : A course is a well designed learning material which was made by an organized group and is availabe for a long time where there is no interactive tool embeded in the site. e.g.: [OpenCourseWare](http://ocw.mit.edu/), [PHPAcademy](https://phpacademy.org), etc. - + **Interactive Tutorials** : An application which helps you learn, by actually typing syntax. e.g.: [Codecademy](http://www.codecademy.com/), [Try Github](http://try.github.io/), etc. - + **Javascript Resources** : Resources for learning a Javascript Framework - + **Problem Sets & Competetitive Programming** : Challenges/problems, where you can prove your programming skills for yourself or against others + - **Books** : PDF, HTML, ePub, a gitbook.io based site, a Git repo, etc. + - **Courses** : A course is a learning material which is not a book and where there is no interactive tool embeded in the site. [This is a course](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/). + - **Interactive Tutorials** : An interactive website which lets the user type code or commands and evaluates the result (by "evaluate" we don't mean "grade"). e.g.: [Try Haskell](http://tryhaskell.org), [Try Github](http://try.github.io). + - **JavaScript Resources** : Any resources teaching a JavaScript framework or library. + - **Problem Sets & Competitive Programming** : A website or software which lets you assess your programming skills by solving simple or complex problems, with or without code review, with or without comparing the results with other users. -4. We prefer small commits rather than one large commit in a pull request. If you don't have the time to make small commit, add an issue with all the links included and we'll add them for you. -5. Use our standard for formatting the .md file. Check it out: [Formatting](#formatting) -6. Must use ***alphabetic*** order. +4. Make sure to correctly [format](#formatting) your modifications. +5. Read the guidelines below: +### Actual guidelines +- make sure a book is free. Double-check if needed. +- insert your links in alphabetical order. If you see a misplaced link, please reorder it and submit a PR +- use the link with the most authoritative source (meaning author's website is better than editor's website is better than third party website) + + no file hosting services (this includes Dropbox and Google Drive links) +- always prefer a `https` link over a `http` one -- as long as they are on the same domain and serve the same content +- on root domains, strip the trailing slash: `http://example.com` instead of `http://example.com/` +- always prefer the shortest link: `http://example.com/dir/` is better than `http://example.com/dir/index.html` + + no URL shortener links +- usually prefer the "current" link over the "version" one: `http://example.com/dir/book/current/` is better than `http://example.com/dir/book/v1.0.0/index.html` +- if a link has an expired certificate/self-signed certificate/SSL issue of any other kind: + 1. *replace it* with its `http` counterpart if possible (because accepting exceptions can be complicated on mobile devices) + 2. *leave it* if no `http` version but link still accessible through `https` by adding an exception to the browser or ignoring the warning + 3. *remove it* otherwise +- if a link exists in multiple format, add a separate link with a note about each format +- if a resource exists at different places on the Internet + + use the link with the most authoritative source (meaning author's website is better than editor's website is better than third party website) + + if they link to different editions and you judge these editions are different enough to be worth keeping them, add a separate link with a note about each edition +- prefer atomic commits (one commit by addition/deletion/modification) over bigger commits. No need to squash your commits before submitting a PR. (We will never enforce this rule as it's just a matter of convenience for the maintainers) ### Formatting -+ All lists are `.md` files. Try to learn Github's Markdown syntax. It's simple! -+ All the lists start with an Index, the idea is to show all of sections and subsections there, so it's important to have an index for each section. Right now it's alphabetized, so please use alphabetic order. -+ Sections are using level 3 heading (in HTML is `

`, in Markdown is `###`), and subsections are using level 4 (in HTML is `

`, in Markdown is `####`). +- All lists are `.md` files. Try to learn Github's Markdown syntax. It's simple! +- All the lists start with an Index. The idea is to list and link all sections and subsections there. Keep it in alphabetical order. +- Sections are using level 3 headings (`###`), and subsections are level 4 headings (`####`). The idea is to have -+ `2` empty lines between last suggested book & new header -+ `1` empty line between header & first book of that very section. -+ `0` empty line between each book in 1 section. -+ `1` empty line at the end of each `.md` file. +- `2` empty lines between last link and new section +- `1` empty line between heading & first link of its section +- `0` empty line between two links +- `1` empty line at the end of each `.md` file -Like this example: -```markdown -[...] -* [Essential Pascal Version 1 and 2](http://www.marcocantu.com/epascal/) +Example: + + [...] + - [Essential Pascal Version 1 and 2](http://www.marcocantu.com/epascal/) -### DTrace + ### DTrace -* [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html) -* [Some Other Book](http://so.me/other/book.html) + - [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html) + - [Some Other Book](http://so.me/other/book.html) -BAD : * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html)(PDF) -GOOD: * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html) (PDF) +- Don't put spaces between `]` and `(` -BAD : * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html)- Robert -GOOD: * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html) - Robert + BAD : * [IllumOS Dynamic Tracing Guide] (http://dtrace.org/guide/preface.html)(PDF) + GOOD: * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html) (PDF) -``` +- Put a single space between the link and its format -#### What to do about multiple links to the same book ([#1192](https://github.com/vhf/free-programming-books/issues/1192#issuecomment-135969100)) -+ if its a different edition, add separate link with a note about its edition -+ if its the same book but in a better format, replace link -+ if one is a webpage and the other is pdf, add separate link with a note about its format + BAD : * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html)(PDF) + GOOD: * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html) (PDF) -And that's it! Simple, easy and lovely... +- If you wish to mention the author, use ` - ` (a dash surrounded by single spaces) -We hope you contribute to this great repository. :+1: + BAD : * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html)- Robert + GOOD: * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html) - Robert From 6275f32d8808036dd3fad3fbca400e16489417cb Mon Sep 17 00:00:00 2001 From: Victor Felder Date: Mon, 2 Nov 2015 16:43:16 +0100 Subject: [PATCH 06/14] Enhance CONTRIBUTING.md --- CONTRIBUTING.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e2fc6cfa..c45aaa20 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,21 +1,21 @@ ## Contributor license agreement By contributing you agree to the [LICENSE](https://github.com/vhf/free-programming-books/blob/master/LICENSE) of this repository. -## Free, Git, and Files -1. First of all, what you want to add should be free. Don't confuse "an easy link to download a book" with "a free book". -2. If you don't know how to work with git or github, simply refer to our wiki [Contribution](https://github.com/vhf/free-programming-books/wiki/Contribution). +## In a nutshell +1. "An easy link to download a book" is not necessarily a *free* book. Please only contribute free content. +2. You don't have to know git: if you found something of interest which is *not already in this repo*, please open an issue with your links propositions. + - If you know git, please fork the repo and send pull requests. 3. We have 5 kinds of lists. Choose the right one: - - **Books** : PDF, HTML, ePub, a gitbook.io based site, a Git repo, etc. - - **Courses** : A course is a learning material which is not a book and where there is no interactive tool embeded in the site. [This is a course](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/). - - **Interactive Tutorials** : An interactive website which lets the user type code or commands and evaluates the result (by "evaluate" we don't mean "grade"). e.g.: [Try Haskell](http://tryhaskell.org), [Try Github](http://try.github.io). - - **JavaScript Resources** : Any resources teaching a JavaScript framework or library. - - **Problem Sets & Competitive Programming** : A website or software which lets you assess your programming skills by solving simple or complex problems, with or without code review, with or without comparing the results with other users. + - *Books* : PDF, HTML, ePub, a gitbook.io based site, a Git repo, etc. + - *Courses* : A course is a learning material which is not a book and where there is no interactive tool embeded in the site. [This is a course](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/). + - *Interactive Tutorials* : An interactive website which lets the user type code or commands and evaluates the result (by "evaluate" we don't mean "grade"). e.g.: [Try Haskell](http://tryhaskell.org), [Try Github](http://try.github.io). + - *JavaScript Resources* : Any resources teaching a JavaScript framework or library. + - *Problem Sets & Competitive Programming* : A website or software which lets you assess your programming skills by solving simple or complex problems, with or without code review, with or without comparing the results with other users. -4. Make sure to correctly [format](#formatting) your modifications. -5. Read the guidelines below: +4. Make sure to follow the [guidelines below](#guidelines) and respect the [Markdown formatting](#formatting) of the files -### Actual guidelines +### Guidelines - make sure a book is free. Double-check if needed. - insert your links in alphabetical order. If you see a misplaced link, please reorder it and submit a PR - use the link with the most authoritative source (meaning author's website is better than editor's website is better than third party website) From f994793de58c0e98fefcc77b697639574b9c9f7e Mon Sep 17 00:00:00 2001 From: Victor Felder Date: Mon, 2 Nov 2015 16:44:27 +0100 Subject: [PATCH 07/14] Enhance CONTRIBUTING.md --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c45aaa20..f174f61a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -2,7 +2,7 @@ By contributing you agree to the [LICENSE](https://github.com/vhf/free-programming-books/blob/master/LICENSE) of this repository. ## In a nutshell -1. "An easy link to download a book" is not necessarily a *free* book. Please only contribute free content. +1. "An link to easily download a book" is not alway a link to a *free* book. Please only contribute free content. Make sure it's free. 2. You don't have to know git: if you found something of interest which is *not already in this repo*, please open an issue with your links propositions. - If you know git, please fork the repo and send pull requests. 3. We have 5 kinds of lists. Choose the right one: From e536f568368648efe6801b5a16d433ffbd2715eb Mon Sep 17 00:00:00 2001 From: Victor Felder Date: Mon, 2 Nov 2015 16:45:40 +0100 Subject: [PATCH 08/14] Fix markdown --- CONTRIBUTING.md | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index f174f61a..e2c548ac 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -59,15 +59,21 @@ Example: - Don't put spaces between `]` and `(` - BAD : * [IllumOS Dynamic Tracing Guide] (http://dtrace.org/guide/preface.html)(PDF) - GOOD: * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html) (PDF) +``` +BAD : * [IllumOS Dynamic Tracing Guide] (http://dtrace.org/guide/preface.html)(PDF) +GOOD: * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html) (PDF) +``` - Put a single space between the link and its format - BAD : * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html)(PDF) - GOOD: * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html) (PDF) +``` +BAD : * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html)(PDF) +GOOD: * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html) (PDF) +``` - If you wish to mention the author, use ` - ` (a dash surrounded by single spaces) - BAD : * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html)- Robert - GOOD: * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html) - Robert +``` +BAD : * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html)- Robert +GOOD: * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html) - Robert +``` From 1eb711f372a03126466cb6a27b9235b7bf62c6f3 Mon Sep 17 00:00:00 2001 From: Victor Felder Date: Mon, 2 Nov 2015 16:46:14 +0100 Subject: [PATCH 09/14] Fix examples --- CONTRIBUTING.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e2c548ac..effd5626 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -60,8 +60,8 @@ Example: - Don't put spaces between `]` and `(` ``` -BAD : * [IllumOS Dynamic Tracing Guide] (http://dtrace.org/guide/preface.html)(PDF) -GOOD: * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html) (PDF) +BAD : * [IllumOS Dynamic Tracing Guide] (http://dtrace.org/guide/preface.html) +GOOD: * [IllumOS Dynamic Tracing Guide](http://dtrace.org/guide/preface.html) ``` - Put a single space between the link and its format From 87da57c50729dd96ed87e5e399fac956eb1e3a4e Mon Sep 17 00:00:00 2001 From: David Metcalfe Date: Mon, 2 Nov 2015 11:40:29 -0800 Subject: [PATCH 10/14] Alphabetical order fix. --- free-programming-books.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/free-programming-books.md b/free-programming-books.md index fc40adb2..efa07a88 100644 --- a/free-programming-books.md +++ b/free-programming-books.md @@ -940,10 +940,10 @@ Original Source: [List of freely available programming books](http://web.archive ### Force.com +* [Developer Workbooks](http://developer.force.com/workbook) * [Force.com Fundamentals](http://wiki.developerforce.com/page/Force_Platform_Fundamentals) * [Force.com Platform Fundamentals: An Introduction to Custom Application Development in the Cloud](http://www.lulu.com/shop/salesforcecom/forcecom-platform-fundamentals/ebook/product-17381451.html) * [Heroku Postgres](http://media.developerforce.com/workbooks/HerokuPostgres_Workbooks_Web_Final.pdf) (PDF) -* [Developer Workbooks](http://developer.force.com/workbook) ### Forth * [A Beginner's Guide to Forth](http://hackershelf.com/book/482/a-beginners-guide-to-forth/) From 7ecf28163fe953ad5ef46bcd42c1644e5e818d63 Mon Sep 17 00:00:00 2001 From: Victor Felder Date: Mon, 2 Nov 2015 23:19:58 +0100 Subject: [PATCH 11/14] Update README.md --- README.md | 25 +++++++------------------ 1 file changed, 7 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index fcaa758a..507a90e1 100644 --- a/README.md +++ b/README.md @@ -1,22 +1,15 @@ # List of Free Learning Resources [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) -[View the list](https://github.com/vhf/free-programming-books/blob/master/free-programming-books.md) +[View the English list](https://github.com/vhf/free-programming-books/blob/master/free-programming-books.md) ## Intro This list initially was a clone of [stackoverflow - List of Freely Available Programming Books](http://web.archive.org/web/20130824154208/http://stackoverflow.com/a/392926) by George Stocker. Now updated, with dead links gone and new content. -Moved to GitHub for collaborative updating and for the site mentioned above. +Moved to GitHub for collaborative updating. ### How To Contribute -It's [easy](https://github.com/vhf/free-programming-books/wiki/Contribution). Please read [CONTRIBUTING](/CONTRIBUTING.md). -- [Fork](https://help.github.com/articles/fork-a-repo) -- Read the [TODO](/TODO.md) file (Adding new books is our #1 priority, but things like Alphabetizing are important, too.) -- [Edit](https://github.com/vhf/free-programming-books/edit/master/free-programming-books.md) (we prefer multiple small commits rather than one large change) -- [Send a PR](https://help.github.com/articles/using-pull-requests) -- Be part of a project starred by over 42,000 - -**Again, unlike other projects, we prefer multiple small commits rather than one large change in a pull request - it's fine to have one PR, but please make sure your title reflects what you're changing**, thanks. +Please read [CONTRIBUTING](/CONTRIBUTING.md). ### How to Share + [Share on Twitter](http://twitter.com/home?status=https://github.com/vhf/free-programming-books%0AFree%20Programming%20Books) @@ -34,7 +27,7 @@ It's [easy](https://github.com/vhf/free-programming-books/wiki/Contribution). Pl + German: [github](/free-programming-books-de.md) + Greek: [github](/free-programming-books-gr.md) + Hungarian: [github](/free-programming-books-hu.md) -+ Indonesian : [github](/free-programming-books-id.md) ++ Indonesian: [github](/free-programming-books-id.md) + Italian: [github](/free-programming-books-it.md) + Japanese: [github](/free-programming-books-ja.md) + Korean: [github](/free-programming-books-ko.md) @@ -51,12 +44,12 @@ It's [easy](https://github.com/vhf/free-programming-books/wiki/Contribution). Pl + Ukrainian: [github](/free-programming-books-ua.md) -### Noticeable lists from [reSRC](http://resrc.io/) -+ Free JavaScript frameworks resources and tutorials: [github](/javascript-frameworks-resources.md) or [site](http://resrc.io/list/18/javascript-frameworks/) +### Noticeable lists ++ [Free JavaScript frameworks resources and tutorials](/javascript-frameworks-resources.md) ### Interactive Programming Resources -+ Free interactive programming tutorials: [github](/free-programming-interactive-tutorials-en.md) or [site](http://resrc.io/list/217/programming-interactive-tutorials/) ++ [Free interactive programming tutorials](/free-programming-interactive-tutorials-en.md) ### Podcast - Screencast @@ -65,7 +58,3 @@ Free Podcasts and Screencasts: + Czech: [github](/free-podcasts-screencasts-cs.md) + English: [github](/free-podcasts-screencasts-en.md) + Russian: [github](/free-podcasts-screencasts-ru.md) - - -### Software Testing Books -+ [Free ebooks about software testing](https://github.com/ligurio/free-software-testing-books) From 0b64f9fe33d48150c795ef5aaa003936390a6698 Mon Sep 17 00:00:00 2001 From: garrmark Date: Tue, 3 Nov 2015 13:33:28 -0500 Subject: [PATCH 12/14] Fix link to "A Guide to Python's Magic Methods" --- free-programming-books.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/free-programming-books.md b/free-programming-books.md index efa07a88..e81fdc92 100644 --- a/free-programming-books.md +++ b/free-programming-books.md @@ -1524,7 +1524,7 @@ See also [TeX](#tex) ### Python * [A Beginner's Python Tutorial](http://en.wikibooks.org/wiki/A_Beginner%27s_Python_Tutorial) * [A Bit of Python and Other Things](https://github.com/RafeKettler/magicmethods) -* [A Guide to Python's Magic Methods](http://www.rafekettler.com/magicmethods.html) - Rafe Kettler +* [A Guide to Python's Magic Methods](https://github.com/RafeKettler/magicmethods) - Rafe Kettler * [Automate the Boring Stuff](http://automatetheboringstuff.com/chapter0/) - Al Sweigart * [Biopython](http://biopython.org/DIST/docs/tutorial/Tutorial.pdf) * [Building Skills in Object-Oriented Design (Python)](http://www.itmaybeahack.com/book/oodesign-python-2.1/latex/BuildingSkillsinOODesign.pdf) (PDF) (2.1.1) From d40a36983b9249a6441e5a022588eca63386c3b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Parienti?= Date: Wed, 4 Nov 2015 08:04:28 +0100 Subject: [PATCH 13/14] =?UTF-8?q?Add=20=E2=80=9CComplexit=C3=A9=20algorith?= =?UTF-8?q?mique=E2=80=9D=20french=20free=20(by-nc-sa)=20book.=20Link=20to?= =?UTF-8?q?=20author's=20website.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- free-programming-books-fr.md | 1 + 1 file changed, 1 insertion(+) diff --git a/free-programming-books-fr.md b/free-programming-books-fr.md index e6fecdb7..d67c2268 100644 --- a/free-programming-books-fr.md +++ b/free-programming-books-fr.md @@ -46,6 +46,7 @@ ### Non dépendant du langage #### Algorithmique * [Algorithmique](http://pauillac.inria.fr/~quercia/cdrom/cours), par Michel Quercia +* [Complexité algorithmique](http://www.liafa.univ-paris-diderot.fr/~sperifel/livre_complexite.html), par Sylvain Perifel * [Éléments d'algorithmique](http://www-igm.univ-mlv.fr/~berstel/Elements/Elements.pdf) par D. Beauquier, J. Berstel, et Ph. Chrétienne * [France-IOI](http://www.france-ioi.org/) * [Prologin](http://www.prologin.org/) From d542e406e3b4ad32102ec7c0a007c095dda77904 Mon Sep 17 00:00:00 2001 From: Victor Felder Date: Thu, 5 Nov 2015 11:03:12 +0100 Subject: [PATCH 14/14] Fix duplicate with wrong title --- free-programming-books.md | 1 - 1 file changed, 1 deletion(-) diff --git a/free-programming-books.md b/free-programming-books.md index e81fdc92..50232b93 100644 --- a/free-programming-books.md +++ b/free-programming-books.md @@ -1523,7 +1523,6 @@ See also [TeX](#tex) ### Python * [A Beginner's Python Tutorial](http://en.wikibooks.org/wiki/A_Beginner%27s_Python_Tutorial) -* [A Bit of Python and Other Things](https://github.com/RafeKettler/magicmethods) * [A Guide to Python's Magic Methods](https://github.com/RafeKettler/magicmethods) - Rafe Kettler * [Automate the Boring Stuff](http://automatetheboringstuff.com/chapter0/) - Al Sweigart * [Biopython](http://biopython.org/DIST/docs/tutorial/Tutorial.pdf)