Puppy Linux vs Ubuntu
Puppy GNU/Linux and Ubuntu are two popular GNU/Linux distributions. Ubuntu is a general purpose distribution. Puppy has been built from the ground up but can be rebuilt, "based" on other distros using a special script tool "woof". One of the latest version of Puppy GNU/Linux "Lucid" had been built from Ubuntu, and is made for computers that are old or slow.
Puppy GNU/Linux is very small - typically about 120MB.
Ubuntu is about 20 times the size, or 2.5GB.
However Ubuntu is designed to be installed to your hard disk for many users, who enjoy larger and larger hard drives year on year, this is not an issue.
Whereas Puppy is designed to be loaded entirely into RAM and ran from there. atow most users still rely on 1gig - 4gig of ram so a small size is key. Puppy is however designed to take up a certain percentage of ram, so it typically doesn't load that entire size, hence why you can run puppy on a machine with very little ram.
 Memory and Processor Use
Puppy GNU/Linux is intended to function well on machines with slow processors and little memory. Ubuntu is best-suited to machines with at least 512MB of memory. With a slower computer it one will see a significant speed difference between the two as PuppyGNU/Linux will run much faster due to is smaller size and the fact that it runs from memory.
Puppy is designed to run entirely out of memory, so it will typically load itself into RAM when you boot, this usually means a slower boot time but it will mean accessing your files and programs will be considerably quicker as they are being accessed via RAM. This also means you can run puppy on a machine that does not have a hard drive
Ubuntu includes an installer that asks questions and can automatically handle almost every step of the process when installing to hard drive.
Puppy is actually designed to run live, so it is actually not recommended to install it at all. It can be ran from a CD or a USB and can save back to either format (even CD-R). If you do wish to install it to the HDD there is a graphical script you can use called "Puppy Universal Installer"
 Fit and Finish
Ubuntu tries to avoid overwhelming new users with too many options. Both distributions attempt to be very easy for new users to use. Due to the larger community and greater number of developers, Ubuntu has more resources to achieve this goal and is generally easier for new users.
Ubuntu is backed by a large company that seeks to provide compatibility with a wide variety of computer software and hardware. Puppy GNU/Linux is a much smaller effort based on the work of an online community.
Ubuntu has a huge number of packages available for it due to its very large community, and its use of the large Debian repositories.
Puppy GNU/Linux can be based on any distribution you desire. If you base it off Ubuntu it should be compatible with Ubuntu packages, but in rare instances software written for Ubuntu may not work with Puppy GNU/Linux. Puppy can also be built to be compatible with any other packages, currently the "main" puppys are:
- Lucid: based on Ubuntu
- Slacko: based on Slackware
- Wary: built from the ground up to be as compatible as possible with all hardware
- Racy: built from the ground up, using the latest Linux kernel to work best with the latest hardware
Ubuntu has a number of variations including:
- Xubuntu (running XFCE)
- Lubuntu (designed to more light weight).
- Aswell as a netbook remix
- and a rescue remix.
Puppy has its main release including:
- Lucid (built with Ubuntu repositories)
- Slacko (built with Slacko repositories)
- Wary (built to support older hardware)
- Racy (built to run on the latest hardware)
And a massive range of puplets built with woof.
To add to your endless choice with puppy often you will find a single puplet has many of its own variations. e.g. simplicity GNU/Linux has a netbook, media and desktop version.