15 June 2009
If you’re like me, you run your WordPress installation off of a SVN checkout, making it far easier to stay up to date with new versions. In fact, using version control checkouts is an excellent way to maintain web applications running on production servers, especially if they don’t require compilation.
However, if you recently tried to upgrade to the latest version using the instructions at the WordPress Codex, you likely ran into a problem with an error mesage like this:
$ svn sw http://core.svn.wordpress.org/tags/2.8/ .
svn: 'http://core.svn.wordpress.org/tags/2.8/'
is not the same repository as
'http://svn.automattic.com'
This is because sometime between the release of 2.7.1 and 2.8, the URL of the WordPress SVN repository changed from http://svn.automattic.com/wordpress/ to http://core.svn.wordpress.org/.
Continued
31 May 2009
As reported a little while ago, Sun plans to launch their own app store for Java-based desktop applications. With Apple’s App Store having passed the one-billion download mark last month and thus proving to be a roaring success, it’s clear that Sun, like many others, is hoping to imitate and perhaps improve on the effort. But does it make sense?
Continued
18 May 2009
If you’re using Maven to manage your project’s build and dependencies, you may have encountered some problems when trying to include the latest version of log4j as a dependency. Specifically, log4j 1.2.15 depends on some artifacts that are not available in the central Maven repository due to licensing issues, and thus when you try to build a project that depends on this version of log4j, you may not be able to download the artifacts and your build will fail.
We could download and install these artifacts to the local repository, if we really needed them. But in most cases, they’re not needed and thus you won’t want your project relying on these artifacts just because some parts of log4j do. Thus, we need to exclude them.
Continued
16 May 2009
If you’re like me, you love shortcuts and other tools that improve productivity. One of the other things I’ve gained a liking for is the Bash shell, after spending time in a Unix environment. Since I couldn’t live without this, and the other tools that typically come with a Unix environment, I installed the great Cygwin, in order to create a Linux-like environment on my Windows PC. (Not ready to make the full jump to Linux yet, for gaming reasons)
However, one thing that always irked me was having to manually navigate to a certain folder after opening up a Bash shell in Cygwin. For Windows, there is a PowerToy called “Open Command Window Here”, that provides a context menu option for quickly opening a (Windows) command prompt with the location set to the selected folder. This is helpful, since you often have the folder open when you want to also have a command prompt at the same location. Now, all I needed was the equivalent function, but for the Cygwin Bash shell, instead of the Windows Command prompt.
Continued
5 May 2009
From PHP, you can access the useful cURL Library (libcurl) to make requests to URLs using a variety of protocols such as HTTP, FTP, LDAP and even Gopher. (If you’ve spent time on the *nix command line, most environments also have the curl
command available that uses the libcurl library)
In practice, however, the most commonly-used protocol tends to be HTTP, especially when using PHP for server-to-server communication. Typically this involves accessing another web server as part of a web service call, using some method such as XML-RPC or REST to query a resource. For example, Delicious offers a HTTP-based API to manipulate and read a user’s posts. However, when trying to access a HTTPS resource (such as the delicious API), there’s a little more configuration you have to do before you can get cURL working right in PHP.
Continued
15 April 2009
When Google launched App Engine about one year ago, many were excited about their expected move into the cloud computing space, but at the same time, dismayed that it only supported Python, a language seemingly favoured at the Mountain View-headquartered company.
However, Google was adamant that they would begin supporting new languages and began taking requests on their issue tracker for what language to support next. So, it was no surprise that support for Java was announced last week as part of an “Early Look” at the feature.
Continued
14 April 2009
I have had the greatest difficulty in finding a pair of shoes that fit and feel right. I think I can remember back to a time in grade school, bugging my Mom to buy me a pair of shoes that I so badly wanted, only to rarely wear them because they just didn’t feel right. All in all, I probably have accumulated a closet’s worth of shoes during my lifetime that just didn’t get much usage because they didn’t work for me.
Thus, for me, trying on a pair of shoes at the store and walking around for few minutes just doesn’t cut it. I won’t feel comfortable until the shoes have been “battle-tested” for hours… unfortunately this sort of intense “try before you buy” approach doesn’t work for most types of footwear, because it’s not fair to the store especially if you’ve worn the shoes outside.
Continued
13 April 2009
If you use Twitter a lot (unlike me) you’ll likely have been alerted and worried about the presence of a worm that’s been making the rounds at the popular micro-blogging website. The so-called “StalkDaily” worm was first noticed on Saturday, and it appeared to be able to “infect” a user’s Twitter profile, causing random tweets about the StalkDaily website (don’t go there) to show up on their profile. Furthermore, other user’s Twitter profiles could also become infected, seemingly by only viewing the profile of another infected user.
Eventually the source code of the worm was uncovered, (safe to view) and a quick analysis of the worm shows why it was able to quickly spread through Twitter so fast. Here’s an overview of how the worm worked.
Continued
11 April 2009
Flickr photo by greensambaman
There’s an interesting article out that points to the fact that every day there are 10,000 canceled installations for Firefox; this meaning that each day 10,000 people download the Firefox installer, “fire up” the *.exe and then click “Cancel”. (A further 40,000 apparently downloaded the setup file, but didn’t even make it far enough to start and then subsequently cancel the installation)
Even more interesting were the reasons why the 10,000 canceled their install. A large part of the respondents were “confused” with some part of the install process (nearly half) while most of the other half identified that they did not have the proper permissions to complete the install.
Continued
31 March 2009
I’ve started looking at Aspect-Oriented Programming (AOP) recently, because of its potential for improving code readability and maintainability. This is mainly provided by the “separations of concerns” goal that AOP aims to achieve. To get started, I decided to jump in using the jQuery AOP plugin. Why jQuery/JavaScript instead of something more mature like AspectJ? Well, for one thing, I have spent quite a bit of personal time developing with JavaScript and it seemed like a logical place to get a good footing before diving deeper with something like AspectJ.
Continued