Skip to Main Content

Computer Science: A Guide to Non-Library Web Resources

Programming & Programming Languages

Ada Home

This stie is designed to be the Web resource center for Ada and Ada-related issues. It includes the full text of the Ada 95 Reference Manual and the Ada Lovelace Tutorial.

Ada Information Clearinghouse

Supported by the Ada Resource Association, AdaIC contains information about the Ada programming language including compilers & conformance, news & events, projects & usage, a resource library, education & training, standards & guidelines, products & vendors, and jobs.

The Art of Assembly Language Programming

This is a book length, in depth tutorial on assembly language programming. Two versions are available: the Win32 (32-bit) edition and the DOS (16-bit) edition. Both versions may be viewed online or downloaded. A thorough table of contents and index provides access to each.

A Beginner's Guide to Programming Languages

From IT Hare on Soft.ware, this site provides information and links for some of the most popular languages, like C, C++, C#, Visual Basic, Java, Python, and Ruby, as well as several markup and scripting languages. 

C Programming Tutorial

This tutorial covers basic concepts including data types, keywords, constants, variables, operators, expressions, control statements, array, pointer, string, library functions, and structures and unions. 

C# Station

C# Station is a gateway to resources for programming on Microsoft's .NET platform. Access is provided to articles, recommended books, sample book chapters, discussion forums, documentation, downloads, events and conferences, links to other C# sites, source code and example applications, software tools, and an extensive tutorial.

Computer Aided Instruction Project

Tutorials or lecture notets are furnished for Java, MIPS assembly language, vector algebra for computer graphics, finite-state automata, and bioinformatics. contains a bounty of resources for the C++ programming language. It includes basic and advanced resources like technical documents, source code, standard libraries, and discussion forums.

This site contains resources for learning the C and C++ programming languages. There are several tutorials.

CSS Creator

CSS Creator is a site for Web development, covering CSS as well as HTML and JavaScript.  It includes a forum where users can seek help from other users.  There are also a news feed, a tools section, and a site check area to validate code.

Designing and Building Parallel Programs

This is the online version of the Addison-Wesley text Designing and Building Parallel Programs by Ian Foster. The site integrates the contents of the book with a collection of public domain parallel software tools and a set of links to other information on parallel and distributed computing.

Eiffel Documentation:  Learning Eiffel

Learning Eiffel contains resources for the Eiffel programming language, including presentations, documentation, a tutorial, a guided tour, book recommendations, examples and sample code, and a summary of the Eiffel syntax.

Extreme Programming: A Gentle Introduction

Extreme programming is a method of software development that maximizes programming efficiency. This site provides a thorough overview of the techniques, beginning with a general introduction, followed by specific rules and guidelines.

Fortran Library

The Fortran Library contains a collection of general purpose Fortran 90 routines that can be used to simplify the development of programs with a batch-style input/output interface. Most of the routines can be used to perform standard non-numeric coding tasks.

Free Online Resources for Microsoft .NET Developers

Aimed at beginners, this site contains resources for learning programming concepts in the Microsoft .NET Framework.  Included are tutorials and lessons covering VB.NET, C#, ASP.NET, Ajax, and the .NET Framework.  There are worked examples with source code and FAQs.

A Gentle Introduction to Haskell

The goal of this tutorial is to provide an introduction to the Haskell programming language for a programmer who has experience with at least one other functional language.

The GP Tutorial

A basic tutorial on genetic programming.

HOPL: An Interactive Roster of Programming Languages 

HOPL is an encyclopedia of computer languages. It tracks the evolution, history, function, and relationships among computer languages. Covering over 8,500 languages, HOPL is fully searchable with basic and advanced search modes. Bibliographic references and links to other programming language Websites are also included.

Introduction to Object-Oriented Programming Using C++

This is self-paced course to learn object-oriented programming. Concepts are presented using the C++ programming language, but the course is not intended to learn C++ in all its details.

Introduction to Programming Using Java

This free online textbook uses Java to explain basic programming concepts.

Java Programming Tutorials

This site contains several beginning, intermediate, and advanced Java and JavaScript tutorials as well as tutorials for C#, XML, and Python. Sample programs and source code are also provided.

JavaScript Primer

This primer is an introductory tutorial covering the basics and some advanced features of JavaScript. The site also provides links to JavaScripts and other tutorials.

jQuery Cheat Sheet

This website provides a cheat sheet for jQuery that is useful for both the experienced developer as well as the beginner. It is available in .pdf and .png.

Learn C/C++ Today

After furnishing some background and tools required for C and C++, this site lists several tutorials available on the Web.


This site furnishes resources on how to program in assembly language using free programming tools. It focuses on development for or from the Linux operating system. Resources include tutorials, documentation, and actual programs.


This site provides extensive documentation and guides for MATLAB.

Numerical Recipes

This site provides access the complete text of the following Numerical Recipes books from Cambridge University Press.

  • Numerical Recipes in C: The Art of Scientific omputing
  • Numerical Recipes in Fortran 77: The Art of Scientific Computing
  • Numerical Recipes in Fortran 90: The Art of Parallel Scientific Computing
Open Directory Project - Computers: Programming: Languages

This directory has an extensive listing of resources for individual programming languages.


This site from Synopsys contains a wealth of information about the standard and its development. There are many technical papers, but free registration is required to access the specification and language reference manual.

Pascal Programming

This is an interactive introduction to the Pascal programming language that covers the basics of learning to program, data types, declarations, arrays, functions, records, pointers, enumerated and set types, and file handling.

Programmers Heaven

Programmers Heaven features links to programming-related Web sites as well as development tools, utilities, source code, and compilers and interpreters. Access is also provided to technology news headlines, summaries, articles, and the 50 most popular links and downloads. The site can be browsed by languages, platforms, applications, and Web development; and it is fully searchable.

Python Language Website

This site contains the official Python source code distribution, binaries, documentation, and conference proceedings.

The main site for installing the open source software.  Includes documentation.

This is a collection of resources for the Scheme programming language. In addition to an FAQ and a bibiliography, the site includes access to information about textbooks and other documents, standards, tutorials, educational resources, implementations, libraries, employment, and events.

The Source for JavaTM Technology

From Sun Microsystems, the developers of the Java programming language, this site is the source for Java documentation, applets, servlets, plug-ins, and other resources. It also contains news, tutorials, case studies, and live discussion forums.

SQL Interpreter and Tutorial

This site contains an introductory SQL (structured query language) tutorial and a means to practice with an online SQL interpreter. There is also a link to an advanced SQL tutorial.

SQL Quiz

The goal of SQL Quiz is help students improve their SQL and database understanding by testing their knowledge. Each SQL quiz consists of 15 questions randomly selected from a pool of over 500 questions. When the quiz is completed, SQL Quiz generates a grading sheet that includes the question, the student's answer, whether or not the student was correct, and recommended readings for incorrect answers.

Structure and Interpretation of Computer Programs

This site contains the full text of the MIT Press book Structure and Interpretation of Computer Programs by Abelson, Sussman, and Sussman. Also included are programming assignments, source code, the instructor's manual, and errata.

Technology Resource Guide: Computer Programming Languages

Briefly covers history, prominent people, elements, design and implementation, usage, and taxonomies.  (Suggested by Lyn in the Cleary Mountain Union Free School District in Virginia.)

Unified Modeling Language Resource Center

The Resource Center is sponsored by the Rational Software Corporation, the developers of the Unified Modeling Language. It contains guides for the beginners as well as advanced materials. Guides for getting started include FAQs, tutorials, and recommended reading lists. Among the advanced materials are documentation, quick reference guides, technical reports, specifications, and whitepapers.

Web Fundamentals
Web developer site, created by Google, that includes resources and tutorials for HTML5. focuses on the object-oriented Smalltalk computer language and environment. It provides access to important articles, events like conferences and workshops, FAQs, versions of Smalltalk, user groups, and newsgroups.

XML Technologies

A section on the Sun Microsystems Web site, these pages contain tutorials, downloads, and documentation. There are also links to news, articles, FAQs, and other resources.