Historic Tutorials


Introduction to Blogging (The Basics)

Blogging is a great way to share your expertise, experience, views and opinions about topics you're passionate about with others from around the world. In this article we're going to take an introductory look at blogging, blogging services, software and what it takes to get started as a blogger.

Introduction to SEO - Part 1 (Concepts)

Learn all about SEO in this "Search Engine Optimization 101" style series. In this first installment to the SEO series you'll gain a basic understanding of search engines, search engine optimization and become familiar with some of the key concepts and terms used when discussing these topics. If you're new to SEO, this is the guide for you!

Install Subversion and Trac as Apache Virtual Hosts on Windows

Are you a developer in need of version control and a web-based project management solution? Subversion and Trac may be the answer. This guide details the Windows installation and setup of Subversion and Trac to run on Apache (mod_wsgi), optionally as Virtual Hosts.

Create a Chain of Dependent Combo Boxes Using Oracle ADF

Oracle ADF (Application Development Framework) is an end-to-end Java EE framework that can make things easier on developers. In this article I'll be providing a simple demonstration of ADF by creating a web page that contains a chain of dependent combo boxes.

Introduction to Hard Disk Drives (HDD)

This article takes a look at fundamental hard drive concepts such as their construction; low-level formatting; partitioning; high-level formatting; components; operations; performance; and common interface types such as IDE, EIDE, PATA, SATA, SCSI, SAS, Firewire and Fibre Channel.

Introduction to Computer Storage and Memory

Learn about a computer's primary storage (aka memory); secondary storage (aka storage); tertiary storage; and offline storage. Things considered include: RAM and ROM memory; the CPU; its registers; L1, L2 and L3 cache; its Control Unit and Arithmetic Logic Unit; bus width; hard drives; floppies; flash drives; and finally CD and DVD drives.

Encrypting Passwords with PHP Using the RSA PBKDF2 Standard

When creating password hashes for storage, many programmers will run a password through MD5 once and call it a day, rendering those hashes very susceptible to attack if they're discovered. In this article, you'll learn how to create stronger hashes with PHP by using the RSA PBKDF2 Standard.

Introduction to Computers (The Basics)

This is the first installment to the "Introduction to Computers" series, intended for people with little to no computer knowledge. Readers will learn various computer terms and acquire a very basic knowledge of computer history, the varying types of computers, computer hardware and peripherals as well as computer operating systems and software.

Using Scrot, the Screen Shot Command Line Utility for Linux

Scrot (SCReenshOT) is a Linux command line utility for taking screen shots of your Desktop, inside of a shell / terminal, or of specific windows. The scrot utility is great because it's lightweight, powerful and very flexible. When it comes to screen shot utilities, scrot is definitely a must have.

Create a Personal Budget with OpenOffice Calc or Microsoft Excel

This article serves as an introduction to the free OpenOffice Calc program available on Linux, Windows and Mac OS X. Readers will gain hands-on experience with the program by creating a personal budget that will help them see the ebb and flow of their finances throughout the year.

Introduction to Hexadecimal, or Base 16, Number System

The Hexadecimal, or base 16 number system is important to programmers because it's a shorthand way of writing out and inputting binary values. Hex is easier because you can work with fewer symbols, or "numbers". In this article you'll learn how hex works and how to represent numbers with it.

Introduction to the Binary, or Base 2, Number System

In this article you'll learn about the Binary (Base 2) number system, which can be used to represent numbers using only 2 symbols, 0 ("zeros") and 1 ("ones"). This method of representation is widely used in the digital world with electronic devices, hard disks, memory, networks etc.

Generating Session IDs and Random Passwords with PHP

Whether it's session ids, passwords or tokens in general, in the world of web development the ability to generate random alpha-numeric strings is a necessity. In this article I present a few simple yet effective PHP functions that can be used to generate strong alpha, numeric and/or special character tokens and passwords.

PHP Encryption / Decryption Using the MCrypt Library (libmcrypt)

The ability to encrypt and safeguard data is an essential ability that every serious web developer should have in their arsenal. In this article we'll explore encrypting data with PHP and MCrypt (libmcrypt), storing it in a database, retrieving it from a database and decrypting it for use.

Create Water Reflections in Adobe Photoshop

Reflections can add depth and realism to your images and digital artwork. In this easy to follow tutorial you'll learn how to place an object in water and create a realistic reflection of it. This same general technique can also be used to create other types of reflections.

Introduction to JSON and PHP

So you've heard the fanfare over JSON, but still haven't had the opportunity to dive into using it. Well, as a matter of fact, you may have been using JSON all along and not known it. Compounded by the fact that since PHP 5.2 there is native support for JSON, learning how to send data between your client and your server just got a whole lot easier.

Cross Browser CSS Opacity and the JavaScript Fade / Fading Effect

Using CSS and JavaScript to modify the opacity (transparency) of HTML elements and images can really open the doors when it comes to improving the functional attractiveness of web applications. In this article, we'll be explore CSS opacity setups and the JavaScript fading effect.

Create the Smooth Scroll Effect with JavaScript

Are you looking for something a bit more elegant than simple HTML anchor jumps? In this easy to follow guide you'll learn how to implement the "smooth scroll" effect using JavaScript that falls back to simple anchoring when clients have JavaScript disabled.

Introduction to JavaScript Timers with setTimeout() and setInterval()

JavaScript timers allow us to add the dimension of time to our scripts. You can use the setTimeout method to execute code once, when a specified period of time passes, or setInterval if you wish to create a loop where the code runs over and over at the interval you specify.

Create Vector Silhouettes with Adobe Photoshop

Silhouettes are everywhere in design. They can be placed in a photo or with other vector art and because they are in vector format, they can be re-sized without losing their quality. Ever wonder how vector silhouettes are created? Learn how with Adobe Photoshop in this easy to follow step-by-step tutorial!

Introduction to GIMP (GNU Image Manipulation Program)

The GIMP (GNU Image Manipulation Program) is a free, open source and extensible graphics editor. There are versions available for Linux, Windows and Mac OS X. This article is geared toward people with little to no experience working with a graphics program and serves as a basic introduction to creating graphics and touching up photos with GIMP.

Guide to Easy Logins with SSH on Linux

The marvellous SSH secure socket shell can be used in a myriad of remote login and file transfer ways. This article focuses on the OpenSSH software package specifically because it's featureful, I am most familiar with it, and it is very prevalent in the Linux world -- installed by default on just about every Linux distribution (and Mac OSX, BSD, etc.)

Introduction to JavaScript Objects, Methods and Attributes

In this article we'll take a look at JavaScript objects, methods, attributes and detail how Object Oriented Programming can help you write your own software libraries. I'll explain what objects, methods and attributes are and show you how to objectify your JavaScript so you'll only have to maintain one code base per functionality which will allow you to reuse your code over and over in many different projects.

Introduction to PHP MySQL Tag Clouds

Tags are a great way to organize user content such as photos, videos, articles and so on. This guide covers the necessary MySQL tables, SQL queries, PHP scripts, XHTML and CSS for adding tag support to your website. Apache mod_rewrite rules are also covered for search engine friendly URLs.

Forcing File Downloads with PHP Regardless of File Type

Web browsers use mime-types to determine how files should be handled. For example, if you open an image in your browser the image is displayed whereas a zip file will typically trigger a file download. In this article I detail why forcing file downloads can be advantageous and provide the necessary code to do so with PHP regardless of the file type.

UTF-8 Enabled Apache, MySQL, PHP, Markup and JavaScript

Does your web application only support the latin-1 (ASCII) character set? Are you having trouble switching over to UTF-8, running into garbled characters or question marks? In this article you'll learn everything you need to know about properly configuring Apache, MySQL, PHP and your markup to play nice with UTF-8 including how to validate UTF-8 strings with PHP.

Introduction to AJAX (Asynchronous JavaScript and XML)

Asynchronous JavaScript and XML allows you to communicate with server-side scripts behind the scenes via a JavaScript XMLHttpRequest object. In this article you'll learn all about AJAX, the XMLHttpRequest class and how to start developing interactive web pages with AJAX. A basic knowledge of HTML, CSS and JavaScript is assumed.

Optimizing Web Sites for High Performance (YSlow Guide)

The popular Firebug add on YSlow by Yahoo! is a great tool that can show you some very easy yet powerful ways a web site can be optimized. Such optimizations include fewer HTTP requests, content delivery networks, far future expirations, gzip compression, CSS and JavaScript markup positioning, minification and E-Tag removal.

Optimize Your Web Site Using CSS Image Sprites

Many web developers have replaced image slicing for a much better technique known as CSS Sprites. This technique results in cleaner markup, fewer HTTP requests, smaller file sizes and saves bandwidth. In this article you'll learn how CSS Sprites work and how to use them.

Install Apache, MySQL and PHP on Windows XP / Vista

This article aims to help newcomers to web development install and configure the Apache HTTP Server, MySQL Database and PHP Scripting Language (with various extensions) on either a Windows XP or Windows Vista operating system.