Sacramento, CA

Partly Cloudy 64° | 42°

Seattle, WA

Cloudy 54° | 45°

Buk Life

Archive for January, 2010

15 January 2010

SEO From Scratch: Part 1

One of the services we provide here at BKWLD is producing brand new sites for our clients. One of the difficult things about a brand new site is getting the word out about it. I’m mainly a developer here, so I thought it might be a cool exercise to research more about SEO (Search Engine Optimization) and put it into practice on a new site we’ve built for our new product, Elastic.

About Elastic

Many of our clients are in the “Outdoor Sports” category. Elastic is a software tool that ties together retail dealers to the sales representatives of our clients so dealers can easily order product for their stores directly from our clients. Currently, the market consists of paper based order forms, catalogs, and phone calls for inventory checking. Some of the bigger players in the industry have their own custom software solutions for this, like Trek or Burton, but they can be a little unwieldy and they only work for the one brand. Other competitors in this space force clients to adhere to their limitations and conventions. We recognized an opportunity here, so Elastic was created.

The New Hotness

Elastic is based on Adobe Air technology, so the software runs on the desktop (Mac or PC), but  can also run in an offline mode. We designed it this way because typically sales reps would have the software loaded up on their laptop and bring it to the dealers directly. WiFi isn’t exactly pervasive yet in these environments, so always having an Internet connection is not an option. Sales Reps also travel a lot, so not relying on the Internet directly keeps them productive on the ground or in the air. Once the sales rep reconnects their laptop to the Internet, orders are placed and inventory totals are synced.

After the break we’ll get into it!

Read the rest of this entry »

7 Aaron Egaas,Web Applications Lead

January 15th, 2010 at 10:59 AM
Posted By: Aaron Egaas in General, Staff Posts

12 January 2010

Getting WebGrind working in MAMP

webgrind_largeWebGrind is a great tool for analyzing your PHP app and finding where slow down is occurring.  As stated on the Google Code site for the project, it is a “ Xdebug profiling web frontend.”  Here’s the steps I took getting it working in MAMP.

Install xdebug (taken from debuggable):

  1. Download the latest Xdebug binaries for your OS from Komodo.  They will be labeled as “PHP Remote Debugging” for Mac OS X.  When you unzip it, you’ll see the xedbug.so file.
  2. Copy the xdebug.so for your PHP version to your extensions directory (/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20050922/xdebug.so)
  3. Find your php.ini file (Applications/MAMP/conf/php5/php.ini)
  4. Add the following lines to your php.ini configuration (MAMP):

[xdebug]
zend_extension=/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20050922/xdebug.so

Enable xdebug
Note, you don’t want to do this in a production environment.  Add the following to your php.ini file:

xdebug.profiler_enable = 1

Install webgrind (from the install wiki)

  1. Download webgrind
  2. Extract to a directory in the web root
  3. Browse pages of your site
  4. View the directory webgrind lives in.

That’s it!  There is some useful additional ini settings I found in this blog post:

# Set the filenames generated by xdebug to use REQUEST_URI instead
# of the apache process number
# so all requests to the same page end up in the same file.
xdebug.profiler_output_name = cachegrind.out.%R

# Set xdebug to append data to files instead of overwriting,
# this means you can view aggregate
# function calls over multiple requests.
xdebug.profiler_append = TRUE

I’ve already found some major instances of slowdown that can be cleaned up in the application I’m testing.

2 Robert Reinhard,CTO

January 12th, 2010 at 03:13 PM
Posted By: Robert Reinhard in General