Dan Harper

Binaries and Hexadecimals

Singing with Sinatra - The Basics

This is part one of three of “Singing with Sinatra”. In this mini-series we’ll be taking a look at Sinatra; a small, yet incredibly powerful DSL for quickly creating Ruby web applications. In this part, we’ll get started with Sinatra by playing around with a few routes, learning how to access URL parameters and how to POST data between pages.

Book Review - PHP 5 Social Networking

The guys at Packt Publishing recently emailed me asking if I'd be interested in reviewing their latest book, PHP 5 Social Networking by Michael Peacock. Of course I jumped at the chance of receiving another free book!

The book guides you through the process of building a fully-featured social networking site for Dinosaur owners, complete with user profiles, a status stream, events and groups. While the book pushes itself as a 'social networking' book, everything you will learn is adaptable to any type of site - the social network is simply the demo application you will build.

One Line Server Install

I've recently published a script called One Line Server over at GitHub which, with one line, installs everything you need to run a LAMP and Rails web server with Ubuntu. This removes a bulk of the work required to set up a server manually, as I detailed recently in my Setting up an Ubuntu web server screencast for Nettuts+.

The script itself is a fork of Joshua Frye's Rails Ready script which installs Ruby and Rails on Ubuntu. Click through to see just how easy it can be to set up your own development web server!

A (Very) Brief Look at CSS3 Transitions

Sometimes I like to re-create effects I like from other sites. I find this is a great way to learn a new technology or skill. Today, I decided to have a go at creating the big “Welcome to Channel 4” navigation area on the Channel 4 homepage in CSS3.

Moving files between servers

While publishing my latest Nettuts+ post, a screencast tutorial on setting up a LAMP server with Ubuntu, I first needed to get the video, a 150mb archive, to the editor.

Now, I could have uploaded the file through FTP to my own server then sent him the link, but I've developed a bit of a distrust of FTP with it corrupting a few of my files, and with an upload speed of ~45kb/s I only wanted to do this once.

So I went with Rapidshare a popular file hosting service. About an hour later, the file was uploaded and I sent the link off to Jeffrey to be published.

Setup an Ubuntu Dev Server

In this tutorial and screencast, you’ll learn how to turn that old computer you have lying around into a full-featured test bed for your websites!

We’ll set up a typical LAMP server with Ubuntu Server 10.10, using Apache 2, PHP 5, MySQL 5.5 and SQLite3. We’ll also build in support for your Ruby on Rails 3 apps!

To view this tutorial you must be a Tuts+ Premium member or you can purchase a copy for $3 from the Tuts+ Marketplace.

A New Year, A New Site

It's been a whole year since I last had what I could think of as a "proper site", and not just a landing page with links to my profiles elsewhere on the web. It's always such a challenge to create something for yourself and be 100% pleased with it. I must have gone through over 20 new designs which I get part-way through, decide I don't like it any more and abandon it.

This time it'll be different. I'm going into this new design knowing that I'll probably be making slight changes to it every few weeks, constantly improving, constantly changing.

I've also never really blogged before as I've never been happy with the tools available. Previous versions of my site have been built on the WordPress blogging platform which I've also hacked a portfolio section in to, so it's not that I don't understand WordPress, but that writing a blog post in the WordPress dashboard is actually a horrible experiece.

Bringing the Magazine to the Web

The rise of blogs on the web has brought a quick and easy way for anyone to publish their thoughts online without having to get down and dirty with HTML. Just write your content, hit ‘Publish’, and your thoughts are instantly available for the masses to read.

For all the good that blogs have done, they’ve made the internet look predictable when compared to articles printed in a magazine which look completely unique, each with their own art style and layout. As Greg Storey pointed out in a blog post from 2006, “before there were blogs we had websites. Beautiful, random websites that felt more like a zine – one page looking nothing like the one before or after it”.

The Beginner's Guide to Web Design

Throughout this three-part series, you will learn how to create a website using the latest in web design techniques (HTML5 & CSS3). This series is aimed at those with minimal knowledge of web design.

To view this tutorial you must be a Tuts+ Premium member or you can purchase a copy for $3 from the Tuts+ Marketplace.

Learn How to be a TextMate Champion

TextMate is, by far, the preferred text-editor for most web developers on the Mac. In this Premium screencast, we’ll be taking a look at some of the features most developers simply don’t use; ones which can massively increase your productivity by allowing you to type less and code more.

To view this tutorial you must be a Tuts+ Premium member or you can purchase a copy for $3 from the Tuts+ Marketplace.

Essential Reading for Ruby and Rails

Ruby is rapidly becoming the preferred programming language for many developers. With that said, let’s look at some of the best tutorials, videos and books to learn Ruby and Rails.

From CodeIgniter to Ruby on Rails

Today, we’ll be creating a simple shoutbox using the CodeIgniter PHP framework. We’ll then port this exact application, piece-by-piece, to Ruby on Rails!

Throughout this tutorial, we’ll create a simple shoutbox application in CodeIgniter, and then port it over to Ruby on Rails. We’ll be comparing the code between the two applications to see where they are similar, and where they differ. Learning Rails is much easier if you are already familiar with an MVC (Model, View, Controller) framework structure.

WordPress, Beginner to Master Series

Throughout this six-part beginner-to-master series, we’ll be using the advanced features of WordPress to create our own portfolio & blog, complete with an options page, multiple styles and support for the new WordPress 2.7 features.

To view this tutorial you must be a Tuts+ Premium member or you can purchase a copy for $5 from the Tuts+ Marketplace.

The Anatomy of GamePress

GamePress is a “Gaming News & Reviews” theme for WordPress and currently one of the most popular themes at ThemeForest. It is the most advanced theme I’ve created so far, and really pushes what the WordPress engine can do!

This two-part series will focuses on several key areas of the theme which seem to be some of the major selling points. I will also include examples of any important code used and provide links to various tutorials detailing similar techniques.

Create a Basic Shoutbox with PHP and SQL

In this tutorial, we will be creating a basic ‘Shoutbox’ system with PHP. Aimed at beginners to PHP development, this allows you to get your feet wet working with databases before moving on to some of the more advanced PHP tutorials here at Nettuts+.

Create A Tabbed Interface Using jQuery

Creating tabbed interfaces suddenly becomes a piece-of-cake when using the Tabs function in the jQuery UI library. It can be utilized to create completely unique interfaces without having to be a coding God – using only one line of code!

Build a Featured Posts Section for WordPress

WordPress is awesome. Even more awesome is the fact that it can be customized to power any type of site you like! Here, we’ll be learning how to create a featured and “latest posts” section – easily a ‘must-have’ for all good News/Magazine themes. We’ll also go over using the ‘Custom Fields’ to their fullest potential.