Monthly Archives: June 2012

New Book – South African Wine Tour – Stellenbosch

South African Wine Tour - Stellenbosch
I just wrote a new book, this one is non-technical and completely off what I write about, wine.

During 2011 I travelled around the Stellenbosch region of the Western Cape. I visited lots of wineries during that trip and decided to write a short guide about the trip. I listed my favorite 5 wine estates, one a Brandy Distillery and a small Belgian Waffle Shop in a little town on the beach just south of Stellenbosch.

You can find more about the trip on the book blog,, I’ll be adding the wineries there as well as posting some other news about my upcoming trip to the region in late 2012.

Now available on

2nd Edition (Build Your Own PHP Framework)

I’ve started work on the 2nd Edition of Build Your Own PHP Framework.

The 2nd edition is going to have the following additional content:

  • More To Read – You will notice this edition will be more than TWICE
    the size of the original book.
  • More Examples – Each chapter will show you working examples as well as how to use the
    example on the sample CMS (Content Mangaement System) being built
    throughout the book.
  • More Code – Each chapter will show you the exact code of the framework vs. snippets in
  • More Details – I’ve included a lot more detail around “Why” you do things.
  • Bonus Material – When you purchase the book you’ll get a custom code for accessing
    bonus content! Get Bonus Material Before ANYONE ELSE!

Rebranding Progress

I started out purchasing a WordPress theme, thinking that I could just find one, configure it, and be done… Wrong. The theme didn’t work and it did not have any helpful support. I should have done it myself and am now doing that.

I have a mantra I’m working on but I don’t have the wording quite right, so stay tuned…


Re-Branding Underway

Over the next few weeks I’m going to be re-branding my site. I feel it’s time to update it and make it more current with my latest projects.

You can’t be creative until you’re Popular

Just a quick thought on businesses that make it doing something new:

  1. You are popular first, then you do something new & creative and people love it rave about it, and you’re a hit.
  2. You are lucky. The right set of circumstances occur and you’re new creative idea is a big hit.
  3. You piggyback on something already popular, but spin it different.

I’ve done really well on new creative projects, but because they were not “popular” they only enjoyed minor financial success. Had I piggyback’d on a more popular idea, I bet the rewards would have scaled much different. I’ll let you know how my next experiment goes.

JavaScript Arrays

This is a post about JavaScript. I get these questions all the time and thought I’d start adding a few JavaScript tips on my site.

Arrays are a special kind of object in JavaScript. To create one just do the following:

// standard arrays
var arr = new Array();
arr[0] = "value";

// multiple items in constructor
var arr2 = new Array("test","test2");

// associative arrays
var arr3 = new Array();
arr3["key"] = "val";

Here’s a list of methods you might want to use:

  • length – to get the length/size of an array
  • pop – removes last element from an array
  • push – adds another element to the end of an array
  • join – joins all elements of an array into a string
  • slice – extracts a section of an array and returns a new array
Some examples of the methods above:
var arr = new Array("aaa","bbb","ccc");
// length property
alert(arr.length); // returns 3
// pop
alert(arr.pop); // returns "ccc"
// push
alert(arr.push("ddd"); // adds "ddd" to array

Multi-Dimensional Arrays look like this:

var mArr = new Array();
mArr[0] = new Array();
mArr[0][0] = "test";

Making Picasa Work on a NAS or Shared Drive

The biggest problem I’ve had with Picasa has been my inability to connect and use it with a NAS or Network Attached Storage.

We’ll it’s not like I couldn’t use it, but if I lost connectivity my local database went away. All my albums and thumbs were gone and I had to rebuild it.

This happened enough because I was either disconnected, switched to a WiFi Network, or left the house with Picasa still open. All while inadvertent completely messed up my photo libraries. So How did I solve it?

From the command line with Git. (Git is a versioning control software). Steps:

  1. Find the Picasa Internal Database Location. (Usually in c:\Users\username\AppData\local\Picasa?? or /Users/username/Library/Application Support/Google/Picasa3)
  2. Go to this directory after git is installed and type:
git init .
git add .
git commit -m 'adding picas to master'
git checkout -b nas

The last line creates a branch called ‘nas’, which allows you to create multiple Picasa databases by just switching branches.

Now I did a test I disconnected my NAS folder restarted Picasa and everything went away. I closed down Picasa, did a ‘git reset –hard’, started Picasa, and everything was back the way it should be.

The only downside is that your git repository takes up about 70% the space as your Picasa library folder, but it still beats storing your photos locally.

Build Your Own PHP CMS

Maybe you’ve used a CMS like WordPress, Drupal, or Joomla. But what if those had too much baggage? Too much dead code? Too much un-tested code or code that’s so cumbersome to use you’re stuck building your own?

I’m thinking about starting another book this summer called Build Your Own PHP CMS. Not only will I update Build Your Own PHP Framework, but I’ll describe in detail what you’ll need to do to create your own CMS from scratch.

Stay Tuned…

Books Update

I’ve decided to bring back my books: Robotics Programming 101 and Build Your Own PHP Framework to Amazon.Com. A few notes:

  1. The price is higher. Hopefully with the higher price people purchase less impulsively. Which means they think a little bit about what they are going to purchase which means they preview the book and decide yes/no.
  2. I plan on updating Build Your Own PHP Framework this summer and creating a 2nd book called Build Your Own PHP CMS.
  3. I plan on creating an update to Robotics Programming 101 and creating a 2nd book on Machine Vision maybe I’ll call it Machine Vision 101 or something similar.

Big Note: If you purchase from me (via sites above) vs. Amazon.Com, I’ll get you 2nd editions for FREE.