Wondering if Apple supports SXSWi?

SXSWi 2008 is over and done, filed away until next year. During this year the attendees are more than ever bombarded with marketing from Microsoft, Fuze, Miller Lite as well as many more sponsors. This year in my opinion was worse than before as many of the panels were actually just product demonstrations.

One thing I noticed along with my friend Rick Benavidez. Considering the massive gathering or designer and developer talent during SXSWi and that 90% (my estimate) of attendees as well as panelist use MacBooks or MacBookPro laptops. We have to ask “Where the hell is Apple?”

Why are they not a major sponsor in the conference? Maybe they supporting but for some reason just not advertised. Yeah right.

Do you have any proof of Apple at SXSWi? Pass it on Please

How do you treat your superstar developers?

During the downtime at SXSWi 2008 I had the chance to catch up on some RSS feeds. Even though I’m not technically a Ruby or Rails developer I’ve subscribed to the 37signals blog for some time. In a recent article Jason Fried provides a rebuttal to another news item from Jason Calacanis over at calacanis.com.

In his article Jason C. provides points from his experience running startups and saving money. This is actually good to hear since I thought all startups these days functioned much like the ones from the early 1990s and just spent money like it was free with total disregard for budget. “Yeah let’s get everyone new computers, the best available. Also everyone working longer than a week get a brand new Lexus because I want to spread the love!”. Yeah right.

In his 17 points Jason does pretty well. Until he gets to #11. This one item seems to have touched on a nerve with the 37signals guys and many other folks in the blogspere. Here is the original item:

11. Fire people who are not workaholics…. come on folks, this is startup life, it’s not a game. go work at the post office or stabucks if you want balance in your life. For realz

Seems like a pretty simple suggestion. I can see where Jason C. is coming from. He’s thinking dedication from the people involved. Most of the employees are hired for dedication and willingness to go above and beyond the normal 8-5 job. If the workers are not 120% behind the direction of the owner/CEO/person-in-charge then they have no business working there. Even if they are really really talented. I’ve worked with great people who for whatever reasons at the time had other things going in their life and just could not be bothered with ‘the job’. Shame.

What is interesting about this is I also agree with Jason F. in his rebuttal. He of course raises some excellent and well thought out points. And most of these I’m assuming are taken from his experience running things at 37signals.com.

The difference in the two directions may be something as simple as phase of execution. In the initial stages of a startup, similar to the points raised by Jason C.. You are fighting time and competitor trying to build something to meet a launch phase. You ask a lot from your employees. You ask them to skip dinners with the family, miss the son’s weekly soccer game to keep the mind focused on the goal of the company and little else. After things are launched and things sort of balance out I can see maybe how things might evolve into the scene presented by Jason F.

I especially like point #3 raised by Jason F.

3. People who always work late makes the people who don’t feel inadequate for merely working reasonable hours. That’ll lead to guilt, misery, and poor morale. Worse, it’ll lead to ass-in-seat mentality where people will “stay late” out of obligation, but not really be productive.

I’ve been at many companies where one or two smart worker bees will literally fuck around all day just so they have enough work to force them to stay late. They will always find ingenious ways to mention this to the supervisors in some water cooler conversation. Shame is they are actually looked upon as a model employee giving more grease to the wheel than the rest.

In his coverage of the Jason C. article, Robert Scoble mentions employees being fired for being outside smoking will others are working hard during lunches. In my opinion this is well harsh. Sure it’s a few hours of productivity lost but this was lunch. If a few people stay late does that mean everyone should be expected to stay late or fear for their job?

So look around dear reader. Do you feel the staff and co-corkers are all giving 100%. Would you as a supervisor fire or have fired two employees who were outside smoking instead of working during lunches?

Check WordPress Core Files for Hacks

Over the last 2 years I’ve worked on literally dozens of client WordPress projects. Many of these projects have been the simple cut the theme and go. Wham-Bam Thank You, Pay me, projects. The rest have been like normal projects. Tons of code written, different developers between phases of the site, custom plugins, themes from hell with very dynamic functionality. I hate to admit but in my early days exposed to WordPress, I found it easier to make mode direct to the core files before writing a plugin to extend the core functionality. This of course creates a problem because I don’t always remember what changes I’ve.

In more recent projects I’m been hired to make changes to an existing client WordPress site. Many of these project involve upgrading WordPress from some version 2 years ago to the most current. Not knowing the previous developer’s changes this has always been a concern of mine since a flat upgrade would mean potentially killing custom changes to some of the core files. So going in I will normally zip the entire tree of files. And pull a dump of the database just to be safe. Then perform the upgrade and do some visual and functional checks on the site to see if I can find things before the client sees the site.

At best this process is haphazard. Without doing a full diff on each and every file it would be near impossible to find file differences. Until now.

Announcing a new plugin Hash Checker

This plugin will help you determine changed file in your WordPress core before you upgrade.

Installation

Download the plugin from the link above. Unzip this into the plugin directory. This should create a folder named ‘hashchecker’. Open your browser to your WordPress Admin interface. Go to the Plugins page and activate.

Checking your site

To check your WordPress installation, find ‘Hash Checker’ on your Options menu. The plugin will automatically determine your current WordPress version and start comparing files. In this version there are two types of errors reported.

  • Errors reported because the hash values do not match.
  • Errors because the code file from the hash config are not found on your site

Customizing the Hash config files

Let’s say for example you like to secure your WordPress installation by removing the wp-admin/upgrade.php file or some other file. And you don’t want to see this error all the time when running the check.

Simple enough. Under the plugin install directory is a sub-folder ‘wp_version_cfg’. This folder contains a cfg file for many of the latest WordPress version. Each config file is a full set of files distributed for that release. To get the error off the screen simply edit the config file, find the line for the file and remove it.

Want to add files to the config? Well this can be done but it’s all manual at this point. The config file format is your basic format

Filename=hash value.

The filename is the path relative to where WordPress is installed. This is not your site root in all cases. The hash is a simple md5 hash of the file. The filename part is pretty easy. But how do you generate an md5 for a file? If you are lucky enough to run OS X or Linus you can easily do this from the command line:

md5

The returned alphanumeric value returned is the md5 hash. This goes on the right of the equal sign in the config.

Testing and Problems

I’ve tested this plugin under versions 2.3.3, 2.2.2 and 2.1. I’ve not been able to test this fully under all WordPress version. so please if you run into problems please give me a note using the comment form below. Will be glad to on this with you.

Also, this plugin assumes you are using the core WordPress files as downloaded from http://wordpress.org/download/. If you are running some SVN version or some ISP’s one-click custom installed version this plugin may not work. My apologies.

Future Plans

I’ve already started thinking about other options to put into the next release. Some of these are:

  • Adding the output to the Dashboard
  • Having the checker run on a cron at selectable intervals and emailing the admin on erros
  • Adding the ability to generate hash for non-core file via an interface.

If you think of anything please tell me below.

Accepting Payment from Clients

Since leaving my day job last August, I’ve become a very diligent Freelancer. I’ve setup a standard Invoice format. Started reading more articles and books on running a business than on developing. Printed official business cards, the works. I even started accepting electronic payments from clients via PayPal instead of waiting for the printed checks to arrive in the mail then needing to fill out the deposit slip for the bank. Yes, life is pretty good as a work from home freelancer. At least things were all well until I read the latest article from Freelance Switch.

This is one of those little articles that sends shivers down your spine. The article goes into some detail about assets requested by the client and the feeling from the Freelancer that assets were not part of the original deal. The client, being the creative twat that only clients can be, decided to reverse the charges on the credit cars. This is the really scary part. The reversal takes almost less time to come through PayPal that the original payment. That my friends real gets me where I live at the moment. Granted the article only paints on side of the picture. But really it’s all I need. The fact that no questions were ask by the client’s credit card company nor PayPal is quite disturbing

Other than switching back to cold hard printed checks I’m researching the alternate of in between solution that will at least offer me some protection. The thing is I know this will happen. Anyone who deals with clients no matter what the business is bound to come across one of those evil clients that knows the game. Thanks for the wake up Cara

Feedburner Custom FeedFlare

I’ve used FeedBurner to serve up the RSS/XML items from this blog for sometime now. But I don’t generally visit the FeedBurner site on any regular basis. I mean maybe 2-3 times a year I’ll go into the account and look around. Seems like every time I go into FeedBurner I find something new or an older feature enhanced. These guys rock!

Case in point is the FeedFlares. Not sure what FeedFlares are? If you read any RSS feeds you will see little text ads added between the RSS items. These ads are generally call to action links like, “Digg This!”, Bookmark on del.icio.us”, etc. At the time this feature was added they offered a pretty standard list of FeedFlares.

This weekend I logged into my FeedBurner account and went over to the FeedFlame section and noticed something interesting. The now offer the ability to add your own custom FeedFlares. Interesting. So I started looking at the API. They even offer a FeedFlare sandbox to test out the XML. Fully functional with you actual feeds.

As noted the general list of social bookmark sites offered in the FeedFlare list I wanted something a little more specific to my site. I wanted to add a text link in the FeedFlare items to my web host, WestHost. I’m a member of their affiliate program and at one time had ad ad on my site for them. Affiliate programs are all about getting links out and getting paid. So I stared playing around. Without about 5 minutes I had the XML in the sandbox ready and previewed. Next step was to save the XML file on my site somewhere. Then to add the URL to the XML into the FeedFlare list. Boom boom boom!

Like magic the FeedFlare link was added. Look for the “Site Hosted at WestHost” link at the end of the list below. Or check out my RSS feed for the real links.

FeedBurner FeedFlare for Site Hosted at WestHost.com