Below are recommended resources (show all).
- C
- Ansi Escape Sequences. By Landon Curt Noll.
- C Reference. "This site is meant to be used by more-or-less experienced [C] programmers, who have a good idea of what they want to do and simply need to look up the syntax."
- How C Programming Works. "In this article, we will walk through the entire language and show you how to become a C programmer, starting at the beginning. You will be amazed at all of the different things you can create once you know C!"
- CSS
- Core CSS: Part I. "In this foundational reference card, you'll find not only a bit of history and rationale for use, rule structure and syntax, but also a thorough resource as to the Cascade, inheritance and specificity—core principles of CSS that will expand and strengthen your professional ability to work with CSS."
- CSSplay. "Experiments with Cascading Style Sheets."
- CSS Tutorial. "Save a lot of work with CSS! In our CSS tutorial you will learn how to use CSS to control the style and layout of multiple Web pages all at once."
- Emacs
- Emacs Beginner's HOWTO. "This document introduces Linux users to the Emacs editor. It assumes minimal familiarity with vi or a similar editor."
- GNU Emacs Manual. "Emacs is the extensible, customizable, self-documenting real-time display editor. This Info file describes how to edit with Emacs and some of how to customize it; it corresponds to GNU Emacs version 22.1."
- A Guided Tour of Emacs. "To give you an idea, here is a sampling of the things you can do with Emacs..."
- GDB
- Debugging with DBG. "This file documents the GNU debugger GDB."
- GDB Quick Reference. For GDB Version 4 [and above].
- JavaScript
- JavaScript Guide. "If you are new to JavaScript, start with the Guide. Once you have a firm grasp of the fundamentals, you can use the Reference to get more details on individual objects and language constructs."
- JavaScript Reference. "This JavaScript reference includes complete documentation for JavaScript 1.5 and updates."
- JavaScript Tutorial. "JavaScript is the most popular scripting language on the internet, and works in all major browsers, such as Internet Explorer, Firefox, Chrome, Opera, and Safari."
- Nano
- The Nano Text Editor. "Nano is a text editor suited to working in UNIX. It is not as powerful as PC window-based editors, as it does not rely on the mouse, but still has many useful features."
- Papers
- Grading Qualitatively with Tablet PCs in CS 50. David J. Malan. Workshop on the Impact of Pen-Based Technology on Education. Blacksburg, Virginia. October 2009.
- Moving CS50 into the Cloud. David J. Malan. 15th Annual Conference of the Northeast Region of the Consortium for Computing Sciences in Colleges. Hartford, Connecticut. April 2010.
- Reinventing CS 50. David J. Malan. 41st Annual ACM Technical Symposium on Computer Science Education. Milwaukee, Wisconsin. March 2010.
- Virtualizing Office Hours in CS 50. David J. Malan. 14th Annual ACM Conference on Innovation and Technology in Computer Science Education. Paris, France. July 2009.
- PHP
- PHP Manual. "PHP is an HTML-embedded scripting language. Much of its syntax is borrowed from C, Java and Perl with a couple of unique PHP-specific features thrown in. The goal of the language is to allow web developers to write dynamically generated pages quickly."
- PHP Tutorial. "PHP is a powerful server-side scripting language for creating dynamic and interactive websites. PHP is the widely-used, free, and efficient alternative to competitors such as Microsoft's ASP. PHP is perfectly suited for Web development and can be embedded directly into the HTML code. The PHP syntax is very similar to Perl and C. PHP is often used together with Apache (web server) on various operating systems."
- Scratch
- Scratch for Budding Computer Scientists. "This tutorial introduces budding computer scientists to the building blocks of programming by way of Scratch. It assumes that you are already familiar with Scratch's usage and, accordingly, have a general sense of how to program with Scratch. This tutorial aspires to formalize your understanding of programming, framing some basic programming constructs in the language of Scratch."
- SFTP
- How to SFTP to nice.fas.harvard.edu from Mac OS using Cyberduck. "This document explains how to install and use Cyberduck, freeware for Mac OS."
- SecureFX. This article explains how to SFTP to a server (e.g., nice.fas.harvard.edu) from a PC using SecureFX.
- SQL
- MySQL 5.0 Reference Manual. "This is the MySQL Reference Manual."
- Non ASCII Characters with MySQL. "This chapter explains: Storing Non ASCII Characters in Database; Transmitting Non ASCII Characters to the Server; MySqlUnicode.php - UTF-8 Sample Script."
- SQL Tutorial. "In this tutorial you will learn how to use SQL to access and manipulate data in Oracle, Sybase, SQL Server, DB2, Access, and other database systems."
- SSH
- PuTTY. This article explains how to SSH to a server (e.g., nice.fas.harvard.edu) from a PC using PuTTY.
- SecureCRT. This article explains how to SSH to a server (e.g., nice.fas.harvard.edu) from a PC using SecureCRT.
- Terminal. This article explains how to SSH to a server (e.g., nice.fas.harvard.edu) from a Mac using Terminal.
- Vi
- Mastering the VI editor. "The VI editor is a screen-based editor used by many Unix users. The VI editor has powerful features to aid programmers, but many beginning users avoid using VI because the different features overwhelm them. This tutorial is written to help beginning users get accustomed to using the VI editor, but also contains sections relevant to regular users of VI as well."
- (X)HTML
- Core HTML. "This Refcard, useful for beginners and veterans alike, introduces to the basics of HTML and XHTML, Page Structure Elements, Key Structural Elements, Specialty Markup and Validation."
- HTML Tutorial. "In this HTML tutorial you will learn how to use HTML to create your own Web site."
- XHTML Tutorial. "In this tutorial you will learn the difference between HTML and XHTML."
- XML
- PHP SimpleXML Functions. "The SimpleXML functions lets you convert XML to an object. This object can be processed, like any other object, with normal property selectors and array iterators."
- XML Tutorial. "XML stands for EXtensible Markup Language. XML was designed to transport and store data. In this tutorial you will learn about XML, and the difference between XML and HTML. XML is important to know, and very easy to learn."