The Crib’s 5 Years Old

On this day, way back in 2005, the first post on this blog was published (there is one article that predates the blog, it was added after the first post and backdated). Since that time a lot has changed. WordPress has changed dramatically over the past five years. This blog originally ran WordPress 1.5; it now runs WordPress 3.0 beta 1.

Being the five year anniversary of the beginning of this blog, changing themes today seems appropriate. This is Cran-Berry 2. While it is a little rough around the edges, in the coming weeks it will be polished and expanded upon. Once WordPress 3.0 is released, a public version of Cran-Berry 2 will be available.

-John Havlik

[end of transmission, stay tuned]

Breadcrumb NavXT 2010 Roadmap

With the first beta of WordPress 3.0 being available, it’s time to think about Breadcrumb NavXT once again. Currently, the SVN version of Breadcrumb NavXT works in WP 3.0. All versions of Breadcrumb NavXT prior to 3.5 (not released yet), have known bugs in WP 3.0.

As Breadcrumb NavXT 3.5 is already upping the minimum WordPress version to 2.8, support for custom post types won’t make this release. Some modifications to the core will be done to enhance extensibility for those who don’t want to use OOP techniques (e.g. filter/action hooks will be added). The first “beta” of this will be available, without updated translations, in the next two weeks. After a month of beta status, translations should be updated and a release in early May (will be moved up to be within a few days of the WordPress 3.0 release, if not before).

Breadcrumb NavXT 3.6 will require WordPress 2.9 as custom post type support will be added. Depending on the time available this release may have enhanced multi blog support. Currently, it looks like this will show up sometime in July.

Breadcrumb NavXT 3.7 will wrap up any multi blog support not covered in 3.6. Depending on how WordPress 3.0 and 3.1 turn out, this version may require WordPress 3.0. This will be a fall release, probably sometime in October.

-John Havlik

[end of transmission, stay tuned]

Check Image Dimensions Without getimagesize()

In a forthcoming project, it was necessary to check the dimensions of a remote image before deciding to cache it or not. While the PHP native function getimagesize() exists, it has some pitfalls. The biggest being: it relies on allow_url_fopen being enabled. While allow_url_fopen is not inherently dangerous, many web hosts do not have it set to prevent issues caused by inexperienced users (including Weblogs.us). Additionally, getimagesize() will retrieve the entire image—a waste of bandwidth, and time. This guide will cover finding the dimensions of images in the PNG and GIF formats with a word on JPEG and why it makes life difficult.

Download Sources

Continue reading

Absence and Upcoming Events

There is a fresh guide in queue, ready for review and then release. It’s related to image dimensions and PHP. Originally, it was to be released yesterday, however it depends on some elements that need styling. It will be out some time this week.

Almost two years have come and passed since I originally created Cran-Berry, and it has grown stale. There are two potential replacements, both have been mocked up. One is more of a grunge theme (similar to the Cran-Berry 2 Mockup 1).  The other is more of a natural progression from the current Cran-Berry. The biggest changes to note are a slight narrowing of the over all page size, a change in the navigation setup, wider article space, taller footer, and some tweaks to make the site more navigable in mobile browsers (on the Motorola Droid). Currently, the plan is to update on April 23rd, the 5 year anniversary of this blog on Weblogs.us.

There is also a new plugin in the works. It is already written, and in initial user testing. Unlike WP Trainer, which has barely seen the light of day, this plugin will be released as public beta in April.

Breadcrumb NavXT will receive an update in either April or May. At the moment, I need people to test out the SVN trunk. It contains a vastly rewritten settings page (doesn’t look different, but the code behind it is). Currently, the bcn_breadcrumb_trail class is more or less the same as in 3.4.1. So there is some work still left to do. Finally, if you are using the WP SVN trunk, you’ll need to use the Breadcrumb NavXT SVN trunk, it contains some minor fixes to reflect changes in the WP API in 3.0.

-John Havlik

[end of transmission, stay tuned]

Notes on Trustworthy Computing

How much is security worth to you? What about freedom? Currently, the Internet is akin to the Western United States in the 1800s. It is mostly a lawless land, unorganized, untaxed, and full of roaming bad guys. The commercial sector is exploiting it more and more. And in turn, is being harassed by the bad guys (crackers). Some foolish individuals, and organizations, wish to expel all of the bad guys from the Internet, and fund it with a tax on all Internet connections. Not only is this an ineffective waste of everyone’s money, it will make things worse.

Microsoft’s Scott Charney wishes to frame the issue of computer viruses in the same manner as their biological counterparts. He boasts, “I actually think that the health care model, particularly related to the World Health Organization and the Center for Disease Control …might be an interesting way to think about the problem.” While the idea itself is not new, the implications tend to draw heated debate. And, after the H1N1 and Avian Flu scares that did not materialize during the last decade, following too closely in the footsteps of the WHO and CDC would be foolish. However, having a procedure for containing and cleaning up virus outbreak is beneficial.

Charney continues, “Why don’t we think about access providers who are doing inspection and quarantine, and cleaning machines prior to access to the Internet?” With the bandwidth shaping technologies out today, a third party real time traffic scanner for malicious activity is possible. However, the first hurdle to this is the issue of privacy. With the real time scanner, the carrier could look at data that was once forbidden. Looking at packet destination won’t work as botnets become more sophisticated and operate in a more peer to peer fashion. Thus, content analysis will become necessary. This will drive both the botnets and legitimate users to encrypt all network traffic. Which is the second issue, real time scanners will become ineffective in the arms race against the bad guys.

Creating a WHO of computer viruses will cost money. Charney suggests a compulsory internet tax for all connected individuals. He even goes as far as suggesting that “…it’s a public safety issue…” Since when has the Internet been vital for public safety? If we, as a global community, are so dependent on the Internet for day to day life, maybe the roll of the Internet needs to be rethought. Twenty years ago, most people had never heard of the Internet. Today, most use the Internet just for logging into Facebook and playing Farmville or some other worthless time sink. Contrary to what Hollywood would have you believe, infrastructure–such as nuclear power plants–does not have vital components exposed to the Internet (e.g. the plot in Live Free or Die Hard could not happen). Why should one, who is responsible and maintains good security practices, pay to clean up the computer of some idiot who still believes that a Nigerian prince is going to give him (or her) a large sum of money. Recent viruses have not been self propagating, and the idea that the actions of one idiot will cause everyone else to get infected is invalid. The last major auto infecting worm was Blaster, and that was back in 2003 (Sasser does not count as a patch was available before it went public).

If a WHO of computer viruses is necessary, maybe it should be funded the same way that the quit smoking organizations are, charging the software vendors. Microsoft, in particular should pay. It is their insecure OS (Windows XP), and their ignorant user base that has caused the problem. They need to educate their users as to why UAC is good, and should not be disabled or ignored. Mr Charney, that is your organization, do not push your burden onto us.

-John Havlik

[end of transmission, stay tuned]