Subversion for Beginners

I mentioned previously that I wanted to post how Subversion works (on the surface, for beginners) and how I use it for my development needs.

To create my WordPress plugins, Simpler iPaper and Simpler CSS, using SVN has been a must; after all, the only way to release new versions of the plugins is through SVN. I also keep this site’s WordPress installation up-to-date on the development version using Subversion. Additionally, in my current efforts to develop a working solution for HDTV’s in business and organizational settings, Display UI is being developed using Subversion for version control.

You get the idea. I use it on a daily basis, and for practical purposes. I don’t claim to understand the fine details, but hopefully this post gives you an idea of how I use it and how you can, too.

Source Code SnapshotSo what is version control? Simply put, it’s a way of keeping track of the changes made to files. It’s often impractical to make manual backups of a file before every set of changes to it, so version control systems like CVS and SVN emerged to help people — especially developers and programmers — keep track of their files, share changes with team members, and prevent stupid mistakes.

Accidentally deleted your code? Revert your changes. Came up with an ingenious way (that works) to do something? Commit your changes. Need to get the latest revision of all the files? Update the working copy.

Perhaps the most practical application of systems like Subversion is in team development. When three or more people are working on the same set of files, it’s useful to be able to merge the changes seamlessly, see the changes others have made, or even work separately on branches (kind of like forks) and tags (usually released versions that are being maintained).

I did write that I don’t claim to understand the fine details. If you really want to understand Subversion, I highly recommend this book by members of the development team: Version Control with Subversion, or the book online.

Let’s talk about how to use it. Hard-core programmers often choose to use the command line tools, where they type commands like svn up to update the files. Beginners will be glad to know that there are implementations with GUI‘s, like RapidSVN and TortoiseSVN. Eclipse users may use Subversive or Subclipse, “team providers” that let coders easily perform version control tasks inside the IDE.

Subversion tasks can be done in Windows Explorer
Subversion tasks can be done in Windows Explorer

Assuming that you’re using the command line binaries — which you can get from the Subversion site, and I recommend official CollabNet builds where possible — most of the basic tasks are rather easy.

Instead of right-clicking and picking options from a menu, tasks are done by typing commands.

First of all, a ‘repository’ is a hosted location containing all of the code, revisions and metadata. Often, one can access a repository via HTTP, as in the case of WordPress, which is found at http://core.svn.wordpress.org/ .

To ‘checkout’ a repository means to make a local copy (known as a ‘working copy’) of the contents. That’s what we have to do first when working with an established project: get the code from the repository.

To do so, type the following at an open shell (on Linux/Mac OS X) or command prompt: (don’t type the ‘$’ — that’s just a placeholder for the prompt you’ll see, such as frederick@ubuntu-pc:~# or [frederick@fedora-vm Desktop]$ — the specific prompt will differ depending on your machine and platform)

$ svn checkout http://core.svn.wordpress.org/trunk/ wordpress/

Windows users would do the same, but at a command prompt — again, without the dollar sign.

That command invokes the svn executable and tells it to checkout the WordPress trunk directory to the local folder wordpress.

Continue reading “Subversion for Beginners”

Yay for WordPress 2.8 Release Candidate

Awesome! WordPress has just released the release candidate of WordPress 2.8, which seems to contain an awesome amount of improvements over WordPress 2.7 (most of them subtle and unexposed to the end user). I’ve been running the trunk version of WordPress for months now, and I have to say that WordPress 2.8 is stable and usable.

If you want to stay up-to-date with WordPress, you can try running it from SVN. I’ll post a little guide on how I do it soon.

Beautiful rainbow

After the storm, there were the chirps of birds, the rustling of leaves, and the sounds of water dripping — draining from roofs, into the street, and into the sewage system.

But a few minutes later, anyone looking out would see an immensely beautiful rainbow spanning the dusk sky. This is the rainbow at dusk, after the storm.

A beautiful rainbow panorama
A beautiful rainbow panorama

I don’t purport to be a photography expert, but this is a beautiful rainbow. Click on the picture to see a larger file.

How do you deal with stress?

It’s very difficult to live life entirely without stress. No matter how calm and peaceful one wishes to be, there will always be events in one’s life that test the limits of psychological endurance.

I experience stress on a daily basis, and perhaps much more so this month. As for my methods of dealing with stress, I enjoy music, knowledge, and technology.

Music

Classical and soundtrack music are especially enjoyable for me. I find that they contribute to a calmer emotional state, especially with beautiful orchestral pieces. (See what kind of music I like at Music to Hear.) Listening to the Brandenburg Concertos by Bach, for instance, Ennio Morricone film score, Planet Earth incidental music, or Hans Zimmer’s remarkable compositions, or Karajan’s amazing interpretations, probably bring my mood from stressed out at 8/10 to 3/10. This is one of the reasons that I listen to music while I’m doing work.

Take a look at a video of one of my favourite pieces, conducted by the composer Ennio Morricone at the United Nations Headquarters in New York.

Learning

TED videos are really inspiring to watch. Whether it’s Al Gore or someone talking about the importance of bread, I find TED to be an absolutely amazing source of inspiration.

Developing knowledge helps to take my mind off pressing matters, at least temporarily. And that’s one of the reasons that I like reading news, reading design blogs and so on.

Humour

FAIL Blog, NotAlwaysRight and FMyLife are all amazing sources of humour. Laughing is probably the easiest way to enjoy oneself for a while.

Today, I got a cross-country job promotion. I decided to plan my Going-Away-Forever party, and bought a pack of 100 invitations. After mailing them out to all my friends, I have 92 left. FML (source)

This keeps me amused, but is by no means as effective as music — after all, I can listen to music while working, and this humour stuff takes away from time I could be putting towards resolving causes of stress.

Et vous?

What do you do to keep your stress at an acceptable level? (You can select multiple answers. Choose any item if it has a soothing / stress-relieving effect for you.)

The Thing with Fonts

I love fonts… well, I love some fonts to a great extend and vehemently despise others. I don’t consider myself a typographer — and I don’t make fonts — yet I probably have a keener eye for type than the average citizen. And my documents typically reflect the period of my life in which they were produced, because, well, I have favourite fonts… and these preferences change about every year.

The thing with fonts is that they contribute greatly to the overall feel of any production, whether it’s a logo or corporate identity, a book, a newspaper/magazine, an essay, or an advertisement. Choosing the right typeface for a particular purpose is like an art, and typography itself is an art. Unfortunately, most average Joes lack awareness and skill in this area.

To test your ability, see if you recognize the fonts below; click on the image to see the answers. (Windows users should have no problem with these.)

You know these fonts
You know these fonts

Continue reading “The Thing with Fonts”

Blog scraping

As a blogger, I’ve encountered the issue of trackback/pingback spam coming from splogs that scrape content. It is sometimes frustrating when a new post is immediately reproduced on spammy sites that do nothing but scrape content from other sites.

It used to be that these splogs would just quote the content word-for-word and add a link to the original source. As time went on, search engines and other tools became aware of them, and these sites were short-lived, as many of them made it onto blacklists.

Yesterday I posted about the Mercedes GLK, a sponsored blog post that was quickly and automatically copied by a splog.

I noticed something new. Instead of simply copying the original text, this splog uses computer intelligence to replace words with synonyms, evading duplicate content detection and content theft tools.

The first screenshot is my original post from yesterday. The lower screenshot is from the splog.

Original content from my blog
Original content from my blog
Splog's stolen content
Splog's stolen content

Now what? What will we see next from Webmasters who attempt to profit from scraping content?