AlgLab contains laboratories for conducting experiments on algorithms. It includes resources and tools to learn about a problem and its algorithm, run programs to measure performance, and modify programs and run experiments. AlgLab also provides links to algorithm resources.
CALGO contains software associated with papers published in the ACM Transactions on Mathematical Software and other ACM journals. The software is refereed for originality, accuracy, robustness, completeness, portability, and lasting value.
This site provides an overview and description of secret key cryptographic algorithms. It is organized into block ciphers, stream ciphers, and hash algorithms. The descriptions include links to additional information.
Based on his book The Algorithm Design Manual, Steven S. Skiena has mounted this site containing a collection of algorithm implementations for over seventy of the most fundamental problems in combinatorial algorithms.
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.
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.
C Programming is a self-paced, learning module. As an introductory guide to the C programming language, it includes the basics needed to program effectively. The guide also includes worked examples and interactive tests.
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.
Tutorials or lecture notets are furnished for Java, MIPS assembly language, vector algebra for computer graphics, finite-state automata, and bioinformatics.
Cplusplus Resources 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.
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.
EbookOffline provides access to free online books, tutorials, computing tools, and articles as well as other computing resources. It is arranged by the broad subjects of programming, Web development, and database management, and sub-divided by subjects like C#, Java, MS-DOS, PHP, Ajax, XML, MySQL, Oracle, and DB2. EbookOffline can be browsed by these subjects, or the entire Website can be searched.
There are two main sections of the Eiffel Online Book: the language and case study. The language section is a fifteen-chapter online book that begins with the basics and proceeds to present almost every aspect of the Eiffel programming language. The case study section reinforces the material in the book with a continuing example; each part of the case study builds upon the previous part. A download section makes the book, case study, and an Eiffel environment available to users.
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.
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.
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.
Submitted by members of the Free2Code community, this site contains numerous tutorials including coverage of programming languages, operating systems, networking and Web development.
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.
A basic tutorial on genetic programming.
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.
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.
This free online textbook uses Java to explain basic programming concepts.
A list and description of all known computer programming languages.
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.
A scientific and technical computing portal covering C/C++, Excel, FORTRAN, Java, Matlab, and Visual Basic. It provides access to tutorials, documentation, source code, software tools, libraries, routines, and applications. The site may be browsed or searched.
This site provides extensive documentation and guides for MATLAB, including manuals that describe everything from basic usage to graphics and built-in toolboxes.
This site provides access the complete text of the following Numerical Recipes books from Cambridge University Press.
The purpose of this tutorial is to provide an introduction to object-oriented programming. Although examples are given in Modula-2, C++, and Java, teaching these languages is not the objective. The objective is to teach the basics including objects, classes, and inheritance.
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.
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 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.
This site contains the official Python source code distribution, binaries, documentation, and conference proceedings.
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.
searchVB.com is a technology specific search engine for Visual Basic that not only searches the site but also a set of pre-screened Web sites. Search results may also find news, products, services, and technical tips. This site may also be browsed for tutorials, glossaries, book reviews, periodical articles, career information, source code, and other downloads.
This is a portal to Smalltalk and object technology resources. Resources include tutorials, FAQs, articles, reports, magazines, books, standards, vendors, important people, user groups, organizations, conferences, and other Smalltalk and object technology Web sites.
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.
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.
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.
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.
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.)
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.
This site provides a very extensive portal to information on the C++ programming language. It is topically arranged and furnishes links to FAQs, learning resources, standards and documentation, the C++ standard libraries, standard temple libraries (STL), book reviews, critiques, style guides, program archives, benchmarks, source code, magazines, newsletters, technical reports, tools, compilers, and newsgroups.
Smalltalk.org 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.
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.