Skip to content

Instantly share code, notes, and snippets.

@fffaraz
Last active October 21, 2025 14:12
Show Gist options
  • Save fffaraz/2b86cf1f1a1f9564c51b to your computer and use it in GitHub Desktop.
Save fffaraz/2b86cf1f1a1f9564c51b to your computer and use it in GitHub Desktop.

Revisions

  1. fffaraz revised this gist Oct 22, 2014. 1 changed file with 0 additions and 2 deletions.
    2 changes: 0 additions & 2 deletions resources.md
    Original file line number Diff line number Diff line change
    @@ -1,8 +1,6 @@
    Web Resources
    =============

    * * * * *

    #### Course Textbooks

    - [Tim Jones homepage](http://www.mtjones.com/) (author of primary textbook, note that book code is only on cdrom with book)
  2. fffaraz created this gist Oct 22, 2014.
    191 changes: 191 additions & 0 deletions resources.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,191 @@
    Web Resources
    =============

    * * * * *

    #### Course Textbooks

    - [Tim Jones homepage](http://www.mtjones.com/) (author of primary textbook, note that book code is only on cdrom with book)
    - [*GNU/Linux Application Programming (1st ed.)* by Tim Jones](http://books.google.com/books?id=KjEq9Mua5TQC&dq=gnu+linux+application+programming&printsec=frontcover&source=bn&hl=en&ei=wwxmSv-yLpW0NpXLwZYB&sa=X&oi=book_result&ct=result&resnum=4) (much of first edition of Jones text on Google Books)
    - [*Beginning Linux Programming (4th ed.)* by Matthew and Stones](http://www.wrox.com/WileyCDA/WroxTitle/Beginning-Linux-Programming-4th-Edition.productCd-0470147628.html) (alternative text, can download code from this site)
    - [free download of *Beginning Linux Programming (4th ed.)*](http://www.ebooksdownloadfree.com/Linux-Unix/Beginning-Linux-Programming-4th-Edition-BI750.html)

    #### Other Linux/UNIX Programming Books (w/code)

    - [*The Linux Programming Interface* by Kerrisk](http://man7.org/tlpi/)
    - [*Linux Application Development (2nd ed)* by Johnson and Troan](http://www.ladweb.net/)
    - [*Advanced Linux Programming*](http://www.advancedlinuxprogramming.com/) (free online ebook)
    - [*Understanding Unix/Linux Programming* by Molay](http://wps.prenhall.com/esm_molay_UNIXProg_1/0,6678,522376-,00.html)
    - [*Advanced UNIX Programming* by Rochkind](http://www.basepath.com/aup/)
    - [*Advanced Programming in the UNIX Environment*, 2ed, by Stevens and Rago](http://www.apuebook.com/)
    - [*UNIX Network Programming* Vol 1, 2ed, by Stevens](http://www.kohala.com/start/unpv12e.html)
    - [*UNIX Network Programming* Vol 2, 2ed, by Stevens](http://www.kohala.com/start/unpv22e/unpv22e.html)

    #### Linux Documentation and General Info/Help

    - [Linux Documentation Project (HowTo's, etc.)](http://www.tldp.org)
    - [Introduction to Linux (Guide)](http://www.tldp.org/LDP/intro-linux/html/index.html)
    - [Bash Guide for Beginners](http://www.tldp.org/LDP/Bash-Beginners-Guide/html/index.html)
    - [Linux Command-Line Tools Summary](http://www.tldp.org/LDP/GNU-Linux-Tools-Summary/html/index.html)
    - [The Linux System Administrator's Guide](http://www.tldp.org/LDP/sag/html/index.html)
    - [LinuxQuestions.org](http://www.linuxquestions.org)
    - [Linuxhelp.net](http://www.linuxhelp.net)
    - [Rute User's Tutorial (online/downloadable admin book)](http://www.icon.co.za/~psheer/book/rute.html.gz)
    - [Linux Program Library HowTo](http://www.dwheeler.com/program-library/Program-Library-HOWTO/index.html)
    - [Secure Programming for Linux HowTo](http://www.dwheeler.com/secure-programs/Secure-Programs-HOWTO/index.html)

    #### Bash (shell)

    - [Bash home](http://www.gnu.org/software/bash/bash.html)
    - [Bash Reference Manual](http://www.gnu.org/software/bash/manual/bash.html)
    - [BASH Programming - Introduction HOW-TO](http://en.tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html)
    - [Advanced Bash-Scripting Guide](http://en.tldp.org/LDP/abs/html/index.html)
    - [Bash Programming Cheat Sheet](http://www.justlinux.com/nhf/Programming/Bash_Programming_Cheat_Sheet.html)
    - [Introduction to Bash Shell Scripting](http://www.justlinux.com/nhf/Programming/Introduction_to_bash_Shell_Scripting.html)
    - [IBM: Bash by example, Part 1/3](http://www.ibm.com/developerworks/library/l-bash.html)
    - [IBM: Bash by example, Part 2/3](http://www.ibm.com/developerworks/library/l-bash2.html)
    - [IBM: Bash by example, Part 3/3](http://www.ibm.com/developerworks/library/l-bash3.html)

    #### Emacs (extensible/customizable editor)

    - [GNU Emacs home](http://www.gnu.org/software/emacs/emacs.html)
    - [GNU Emacs manuals](http://www.gnu.org/software/emacs/manual/)
    - [XEmacs home](http://www.xemacs.org/)
    - [EmacsWiki (help materials)](http://www.emacswiki.org/cgi-bin/wiki)
    - [Emacs Wikipedia entry](http://en.wikipedia.org/wiki/Emacs)

    #### Vi/Vim (editor)

    - [Vi lovers home](http://www.thomer.com/thomer/vi/vi.html)
    - [Vim home](http://www.vim.org/)
    - [Introduction to Programming in C/C++ with Vim](http://www.justlinux.com/nhf/Programming/Introduction_to_C_Programming.html)
    - [Vi Wikipedia entry](http://en.wikipedia.org/wiki/Vi)

    #### C Language Reference Cards and Overviews

    - [ANSI C Reference Card v2.2 (PDF)](http://math.brown.edu/~jhs/ReferenceCards/CRefCard.v2.2.pdf)

    #### C Language Reference Material

    - [C Overview (Wikipedia)](http://en.wikipedia.org/wiki/C_(programming_language))
    - [C Syntax (Wikipedia)](http://en.wikipedia.org/wiki/C_syntax)
    - [C Variable Types (Wikipedia)](http://en.wikipedia.org/wiki/C_variable_types_and_declarations)
    - [Operators in C/C++ (Wikipedia)](http://en.wikipedia.org/wiki/Operators_in_C_and_C%2B%2B)
    - [C Strings (Wikipedia)](http://en.wikipedia.org/wiki/C_string)
    - [C Standard Library (Wikipedia)](http://en.wikipedia.org/wiki/C_standard_library)
    - [C Library Functions (Wikipedia)](http://en.wikipedia.org/wiki/List_of_C_functions)
    - [C99 (and beyond) Draft Standard](http://www.open-std.org/JTC1/SC22/WG14/www/docs/n1256.pdf)
    - [C Language FAQ (comp.lang.c newsgroup)](http://c-faq.com/)
    - [The New C Standard (1600 page downloadable book covering C standards)](http://www.knosof.co.uk/cbook/)
    - [The Inquirer article on above book](http://www.theinquirer.net/inquirer/news/1016493/the-new-c-standard-free-ebook-c-coders)
    - [The C Library Reference Guide](http://www.acm.uiuc.edu/webmonkeys/book/c_guide/)
    - [CERT C Secure Coding Standard](https://www.securecoding.cert.org/confluence/display/seccode/CERT+C+Secure+Coding+Standard)

    #### C Language Help/Tutorials

    - [The C Book (free online version of out-of-print book)](http://publications.gbdirect.co.uk/c_book/)
    - [The C Cheat Sheet (PDF)](http://claymore.engineer.gvsu.edu/~steriana/226/C.CheatSheet.pdf)[overview of C]
    - [CProgramming.com, C/C++ programming help site](http://www.cprogramming.com/)
    - [C Programming Tutorial](http://randu.org/tutorials/c/)
    - [C Language Tutorial](http://www.physics.drexel.edu/courses/Comp_Phys/General/C_basics/c_tutorial.html)
    - [C Programming](http://www.its.strath.ac.uk/courses/c/)
    - [How C Programming Works](http://computer.howstuffworks.com/c.htm)
    - [C++ Memory Management](http://linux.oreillynet.com/pub/a/linux/2003/05/08/cpp_mm-1.html) (many of the problems apply to C as well)
    - [Steve Summit's C Programming Notes (set 1)](http://www.eskimo.com/~scs/cclass/notes/top.html)
    - [Steve Summit's C Programming Notes (set 2)](http://www.eskimo.com/~scs/cclass/int/top.html)
    - [Exforsys Inc C Language Tutorials](http://www.exforsys.com/tutorials/c-language.html)

    #### C Language Books

    - [The C Book (free online version of out-of-print book)](http://publications.gbdirect.co.uk/c_book/)
    - [An Introduction to the C Programming Language and Software Design (Bailey)](http://www-personal.acfr.usyd.edu.au/tbailey/ctext/)
    - [C Programming (Wikibooks)](http://en.wikibooks.org/wiki/C_Programming)
    - [C Programming Tutorial (Burgess)>/a>](http://markburgess.org/CTutorial/C-Tut-4.02.pdf)
    - [Beginning C (Horton)](http://www.codewithc.com/beginning-c-ivor-horton-pdf-download-4th-edition/)
    - [Expert C Programming (van der Linden)](http://www.e-reading.me/bookreader.php/138815/Linden_-_Expert_C_Programming__Deep_C_Secrets.pdf)

    #### Linux & C Development Tutorials/Info

    - [The Linux Development Platform (book, online html version)](http://www.faqs.org/docs/ldev/)
    - [Software Optimization Resources](http://www.agner.org/optimize/)

    #### C Indentation Tools

    - [Wikipedia: Indent Style](http://en.wikipedia.org/wiki/Indent_style)
    - [GNU Indent](http://www.gnu.org/s/indent/)
    - [Uncrustify](http://uncrustify.sourceforge.net/)
    - [Emacs Wiki: Indenting C](http://www.emacswiki.org/emacs/IndentingC)
    - [Brace and Indent Styles](http://www.riedquat.de/prog/style)
    - [UniversalIndentGUI](http://universalindent.sourceforge.net/)

    #### GNU C/C++ Tools

    - [GCC (GNU Compiler Collection) home](http://gcc.gnu.org/)
    - [GCC manuals](http://gcc.gnu.org/onlinedocs/)
    - [An Introduction to GCC (book, with online HTML version)](http://www.network-theory.co.uk/docs/gccintro)
    - [The GNU C Library manuals](http://www.gnu.org/software/libc/manual/)
    - [GDB (GNU Debugger) home](http://www.gnu.org/software/gdb/)
    - [GDB manual](http://www.gnu.org/software/gdb/documentation)
    - [DDD (GNU Data Display Debugger) home](http://www.gnu.org/software/ddd/)
    - [DDD manual](http://www.gnu.org/manual/ddd/)
    - [Make home](http://www.gnu.org/software/make/)
    - [Make manual](http://www.gnu.org/manual/make/)
    - [Comparing and Merging Files with GNU diff and patch (book, with online HTML version)](http://www.network-theory.co.uk/docs/diff)
    - [ACM Developing Software in UNIX Tutorial](http://www.cs.washington.edu/orgs/acm/tutorials/dev-in-unix/)

    #### Eclispse IDE

    - [Eclipse (main webpage)](http://www.eclipse.org)
    - [Eclipse CDT (C/C++ Development Tooling)](http://www.eclipse.org/cdt)
    - [Using Eclipse for C/C++ Programming](http://www.math.ucla.edu/~anderson/UsingEclipseCPP/index.html)
    - [Remote C Development Using Eclipse](http://www.madirish.net/190)

    #### Netbeans IDE

    - [Netbeans (main webpage)](http://www.netbeans.org)
    - [Netbeans C/C++ features](http://www.netbeans.org/features/cpp)
    - [Netbeans C/C++ tutorial](http://www.netbeans.org/kb/trails/cnd.html)
    - [Getting Started With the NetBeans C/C++ Development Pack](http://cnd.netbeans.org/cnd-tutorial.html)

    #### Other C/C++ Editors and IDEs for Linux

    - [Geany editor/IDE](http://www.geany.org/)
    - [Kdevelop (KDE IDE)](http://www.kdevelop.org)
    - [Anjuta IDE for GNOME](http://projects.gnome.org/anjuta/)
    - [CodeLite IDE](http://codelite.org/)
    - [jEdit](http://www.jedit.org/)

    #### Programming Analysis Tools for C/C++

    - [Valgrind (memory management debugging and profiling for x86-Linux programs)](http://valgrind.kde.org)
    - [Splint (Secure Programming Lint -- supersedes LCLint)](http://www.splint.org)
    - [strace, ltrace tutorial](http://doc.opensuse.org/documentation/html/openSUSE/opensuse-tuning/cha.tuning.tracing.html)

    #### SSH/SFTP/SCP Software for Windows

    - [PuTTY and PSFTP (SSH terminal and command-line transfer)](http://www.chiark.greenend.org.uk/~sgtatham/putty/)
    - [WinSCP (GUI secure copy/sftp software)](http://winscp.sourceforge.net/eng/index.php)

    #### Linux Distributions (selective)

    - [CentOS (free Redhat clone)](http://fedora.centos.org)
    - [Fedora (free Redhat project)](http://fedora.redhat.com)
    - [Knoppix (Linux on a CD)](http://www.knoppix.org)
    - [Kubuntu (KDE-based Ubuntu distro)](http://www.kubuntu.org)
    - [Mageia (community Mandriva fork)](http://www.mageia.org)
    - [Redhat](http://www.redhat.com)
    - [Mint](http://www.linuxmint.com)
    - [Suse (OpenSuse)](http://en.opensuse.org)
    - [Ubuntu](http://www.ubuntu.com)

    #### Linux Distributions Info Sites

    - [DistroWatch.com](http://www.distrowatch.com)
    - [LiveCD Linux List](http://www.livecdlist.com)

    #### Free Virtualization Software and Info

    - [VirtualBox](http://www.virtualbox.org/)
    - [VMWare](http://www.vmware.com/)
    - [Installing Ubuntu in VirtualBox on Windoze](http://www.howtoforge.com/virtualbox_ubuntu)
    - [Installing Ubuntu in VirtualBox on Windoze](http://www.simplehelp.net/2007/05/13/how-to-install-ubuntu-studio-in-windows-using-virtualbox-a-complete-walkthrough/)