Above the Bay Area

Posted by Gregg Kellogg Thu, 15 May 2008 14:48:00 GMT

Recently, my good friend and local traffic reporting luminary, Stan Burford, got me up in the KGO Radio Traffic helicopter on a beautiful day where I could put my Nikon D200 through it’s paces. I think you’ll enjoy the results. We’re blessed here in the Bay Area with some of the most beautiful scenery in the country.

Picture can be found through the photography page on my site, or directly here

The ships you see are known as the Mothball Fleet. They include the Glomar Explorer, famous for attempting the recovery of a Soviet Submarine during the Cold War, and the USS Iowa battleship.

Other notable highlights were
  • an orbit around my house in San Rafael,
  • two passes by the Golden Gate Bridge,
  • the Palace of Fine Arts,
  • Fisherman’s Wharf,
  • Coit Tower,
  • San Francisco Skyline,
  • AT&T Park,
  • the Bay Bridge,
  • a shot of the KGO TV helicopter, and
  • McAfee park, home of the Oakland A’s, who you can see warming up on the field.

Thanks to Gary and Terry (reporter and pilot) for making this a most memorable experience!

Gregg

Posted in  | no comments | no trackbacks

Italy & France 2007

Posted by Gregg Kellogg Sat, 13 Oct 2007 16:36:00 GMT

Here are some pictures from our trip to Lake Como and Provence.

Enjoy,

Gregg & Rebecca

Posted in  | no comments | no trackbacks

Channel Islands July 2007

Posted by Gregg Kellogg Wed, 18 Jul 2007 21:59:00 GMT

Here are some pictures from my recent trip to the Channel Islands including San Clemente, Catalina and Santa Cruz Islands.

Enjoy,

Gregg

Posted in ,  | no comments | no trackbacks

Channel Islands May 2007

Posted by Gregg Kellogg Sat, 02 Jun 2007 22:44:00 GMT

Here are some pictures from my recent trip to the Channel Islands, including two days at San Miguel Island.

Enjoy,

Gregg

Posted in ,  | Tags , ,  | no comments | no trackbacks

ActiveWarehouse

Posted by Gregg Kellogg Sat, 19 May 2007 23:10:00 GMT

Related to the interesting talk at a recent NBRug meeting on Ruport, I’ve been looking at doing data warehousing in Ruby. Fortunately, Anthony Eden has beaten me to the punch with ActiveWarehouse.

For those unfamiliar with Data Warehousing, the concepts are basically to create a series of facts that are indexed buy multiple dimensions. A fact is typically an integer (eg, sales amount) with data relating to the fact expressed in dimensions. (Note that in some cases, you can have a Factless Fact table where the information is entirely in the dimensions). Dimensions provide different types of data relating to the fact (e.g., date & time of entry, user, product, location, etc.), so a fact table has a column for each ’’dimension’’ with a column for the fact scalar value itself.

The ’’dimension’’ tables contain an id index column, a column for the fact value (e.g., timestamp for date & time) and columns for each ’’summary’’ to be associated with the dimension (e.g., day of week, day of month, month, year, hour minute, ...).

At this point, queries can be performed by joining the dimension and fact tables and summarizing (or counting) the scalar fact value against conditions against the dimension tables (e.g., sales per year by person and region).

Typically, this data is pre-summarized in ’’cubes’’ with summary tables that contain the results of these summary queries.

The ActiveWarehouse plugin contains everything necessary to define, populate and report on this data.

I expect to be using this to hold information on user listening habits for MP3 files.

Gregg Kellogg

Posted in  | no comments | no trackbacks

Bonaire May 2007

Posted by Gregg Kellogg Thu, 10 May 2007 14:12:00 GMT

Pictures from dive trip to Bonaire in May 2007.

Posted in ,  | no comments | no trackbacks

RailsConf Sessions

Posted by Gregg Kellogg Thu, 26 Apr 2007 20:05:00 GMT

Here are the sessions Ill be attending at RailsConf. Hope to see you there.

Gregg

Posted in  | no comments | no trackbacks

Observers in Rails 1.2

Posted by Gregg Kellogg Sat, 27 Jan 2007 03:13:00 GMT

Thanks to Rick Olson for providing assistance with the proper syntax for instantiating observers in Rails 1.2. The old way was to add an observer statement to the appropriate controler, such as:
observer :user_observer

Hidden in the ignored parts of conf/environment.rb was the proper notation:

# Activate observers that should always be running
# config.active_record.observers = :cacher, :garbage_collector

This makes the last of my deprecation messages go away!

Gregg

Posted in  | no comments | no trackbacks

Eager Finder SQL

Posted by Gregg Kellogg Mon, 06 Nov 2006 01:31:00 GMT

EagerFinderSql allows custom SQL to be specified when doing eager loading of associations through the :include option to find. This allows for purpose-constructed queries to be used and still result in a fully linked object model.

Background

ActiveRecord constructs SQL to satisfy the requirements of a find request. Associations allow for customized SQL to be specified, using the :finder_sql option, but this has not been available when performing eager loading using the :include option. The result is that a standardized query is constructed to bring in the associated tables using LEFT OUTER JOIN. For some queries, this can be result in expensive queries and potentially very large result sets.

Custom SQL

EagerFinderSql addresses this problem by allowing :finder_sql to be added to find options when the :include option is also specified.

Read more...

Posted in  | Tags , , , ,  | 5 comments | no trackbacks

Web Design Goals

Posted by Gregg Kellogg Thu, 02 Nov 2006 18:00:00 GMT

Working with legacy software systems provides its own considerations, but there are some general goals that can be stated for web-based software applications. To the degree that the nature of system upgrades substantially touches these areas of system design, it is important to consider the following goals within the system design. Well designed applications should meet the following goals in order to provide lasting value:

Read more...

Posted in  | no comments | no trackbacks

Older posts: 1 2