Monday, April 11, 2011

Vegas, Baby!

I'm off to MIX. Though I've presented at a few smaller, regional conferences in the past, this is my first time ever attending a big developer conference. It'll be exciting to attend MIX but there's a much more important reason for the trip. is gathering there (we're bi-costal) to celebrate and hold our first hackathon. Why the celebration? The heavens smiled down upon us last week and final approval went through with our ACH provider. For those not in the know, ACH is what makes possible: it's the means by which can debit and credit bank accounts. Without it, would have been DOA.

In the tradition of successful hackathons before us we'll be hacking all week and subsisting on a strict diet of high octane, highly bad-for-you sundries. Actually, I'm lying. I hate junk food. Not to mention my stomach is extremely sensitive and that stuff causes me much gastro discomfort. However, I will make sure my web developer adheres to the hackathon diet. My stomach will live vicariously through his. Also on the agenda is playing a continual loop of movies in the background. This is our list so far:
  • Bill & Ted's Excellent Adventure
  • The Breakfast Club
  • Ferris Bueller's Day Off
  • The Great Gatsby
  • Hackers
  • The Hangover
  • Office Space (thanks Bill)
  • Pirates of Silicon Valley
  • Sneakers
  • The Social Network
Any essential flicks we're missing?

Please get in touch with @xanadont if you'd like to meet up. See you there.

Monday, April 4, 2011

Blog Commitment

I've been quiet here for a while, folks. This is me making a new commitment to my blog. You'll find regular posts about zigGIS,, and Current. A quick word about Current - you haven't heard about this one yet but it's a startup I'm involved in that hopes to apply a software engineering discipline to revolutionize (excuse the hyperbole) the mom & pop / boutique construction industry. We're hoping to bring an elegant and user-centric experience to the inudstry's process of estimating and managing projects.

I've been doing 100% of the engineering work for the past 8 months. The CEO is a good friend of mine who is doing an excellent job of dreaming big and exposing our ideas to the industry. A quick & dirty demo may be seen here. Note that you won't be able to see the realtime estimate report unless you right-click > Install onto this computer (do the reverse to painlessly uninstall). In the future I'll get into the technology and write up a tutorial or two on the various things I've been learning while developing with Silverlight.

Quick updates about my other endeavors:
1. zigGIS is NOT dead, I promise. I'm currently in talks with a company (to remain unnamed until things are finalized) about a partnership that should greatly increase zigGIS's reach and resources.
2. is in the final stages of securing our payment provider. Fingers crossed!!!

Thanks for your time. I'll be back soon.

Wednesday, October 13, 2010


First, I apologize to all my GIS readers. This post will be almost entirely void of GIS.

I've been working on something for about 8 months now and it's time to finally start sharing it with the world. I only have a teaser page up now. Click the start button and you'll be urged to signup with the announcements list. Please do! Not only will you get updates but you'll be the first to be invited into the beta. The beta is expected to begin in November.

And now:

Wednesday, June 23, 2010

On to 3.0

I know you want to see the roadmap NOW. Here, fool:

Version 3.0 - Website - Date TBD
  • Blog
  • Forums
  • Videos
  • Feature suggestion with voting
  • Feature tracking - percent funded, percent completed
  • Bug tracking
  • Code repository
Version 3.0 - Core, complete ground-up rewrite - Date TBD
  • Provider model (pluggable data connectors)
  • Streaming
  • Memory caching and / or disk caching**
  • Internationalization (enables translations)
  • PostGIS provider
  • API / automation (standard ArcObjects integration)**
Version 3.x Providers - Date TBD
  • SQL Server
  • SpatiaLite
  • Oracle (depends on community desire)
Version 3.x Translations - Date TBD
  • Italian
  • German
  • French
  • Spanish
  • More based on community desire
*roadmap is organic and may (probably) change
**requires more research

So that's the draft roadmap. Now for some thoughts.

First and foremost I want to be very candid about the state of affairs at Obtuse Software. Further zigGIS development will require funding. There is one full time developer, me, and two part time developers, Paolo and Bill, involved. And we're hungry. Actually, we really want beer. Now I love, Love, LOVE working on zigGIS and I want, as do Paolo and Bill, to continue. But that just won't happen without the financial backing.

To reiterate, zigGIS version 3.0 will be completely free to download and use, Open Source software. But that won't occur until the project is fully backed by individual and company support. The tools and information for supporting version 3.0 will slowly become available as things progress. You can find slightly more information here.

Problems that suck in version 2.0:

1. Performance
Performance has always been a significant issue. We tried easing the burden by incorporating a caching scheme. But the problem with viewing GIS data is complicated. And although our caching scheme does improve performance quite dramatically, it's just not a sustainable solution. Caching loads all data into memory. Most working datasets we've seen are immediately larger than what a typical, well equipped work station can handle. This makes zigGIS's caching mechanism moot.

In addition, zigGIS does not stream data (render features to the screen one-by-one). It instead loads the entire table and only then does it start rendering. If, on the other hand, the data was streamed then the layer would start rendering immediately and you could interrupt the process by zooming into an area of interest. As it is now you have to wait until the entire layer renders before you can zoom. We had a streaming prototype working about two years ago but it caused intermittent and random errors, errors we could never track down. Ultimately our streaming efforts were abandoned.

2. Automation
Anyone who has followed zigGIS since its 1.0 days knows our plight of cracking the mystery of ArcGIS's custom datasource editing model. If you're a late-comer you can read a history about it here. While we were never able to solve the mystery, we did manage to "fake" an acceptable solution and editing capabilities became the flagship feature of version 2.0. The problem with "faking" is the solution is completely custom and not directly integrated into ArcGIS's editing tools. The fallout is that automation scripting (ArcObjects API hooking) was not possible. For those less technically inclined, this meant that although you could use PostGIS data for making maps, doing queries, etc. in ArcMap, you could not use zigGIS to write scripts to manipulate your PostGIS data in a custom manner.

We think we're in the position to solve all the current issues in version 2.x. We're certain we can lick streaming. Automation is still tricky and requires a little more research but we think we have a promising new approach.

The new website is critical.

Harnessing the community - financially, technically, and socially - is the only way we'll succeed. I like to think of the website and it's backing community a feature of version 3.0. Together we make the product the best it can be for everyone.

To wrap up,

Version 3.0 is coming but it's certainly not knocking on the door. There's still a ton to do even before we break ground on actual development. All our communication channels will be updated as we proceed. Be on the look out for updates on the financial model and the website. Other updates will follow.

Friday, April 23, 2010

The Prodigal Extension

Get ready for the next chapter in zigGIS's history book. If you've been following along thus far you know that I started zigGIS about five years ago. Somewhere between six months and a year in I became frustrated with the difficulties I was running into as I tried to unlock ArcGIS's secrets. The 1.x version was successful in connecting to PostGIS and pulling data into ArcGIS for viewing. But it remained only a curiosity and the holy grail of editable PostGIS layers stayed tantalizingly out of reach. With the goal seemingly unattainable I got bored with the project.

That's when I decided to open source zigGIS and enlist the help of my fellow, gis-coding, comrades. But my hopes were soon dashed since the open source move failed to rouse the troops as I had hoped. So with my frustration, and the community's lack of interest, the project stagnated and became all but abandoned.

And then a little glimmer of hope. An email came to me from Italy by Paolo Corti. He had apparently been experimenting with zigGIS and wanted to collaborate. Coincidentally around the same time, Bill Dollins in Maryland, was writing a few blog entries in an unofficial series about zigGIS. Finally, some real interest!

We all began collaborating. And although none of our efforts got us any closer to the original goal of editable PostGIS layers, that undefinable spark that a team brings was there. Then, out of no where, an idea hit me - if directly integrating an ArcGIS plug-in datasource wouldn't work then maybe spoofing a native datasource would. Indeed it did. A few months later I had a working prototype. Three years of toil and now the GIS gods were taking notice.

Everything progressed rapidly thereafter. The Three GISketeers formed Obtuse Software LLC, rapidly put together the website, and began selling zigGIS 2.0. The dream crossed over to reality and the rest, as they say, is history.

Or was it ...

We saw considerable backlash from our users when zigGIS went to a pay-for-license model after we transitioned from version 1.0 to 2.0. Additionally, while the source code remained available, we were advised that the zigGIS EULA would not hold up to the OSI definition of open source.

Additionally, while we have seen steady sales since the release of version 2.0, it's simply not enough to support a team of three. So our new goal is to find a way for zigGIS to enjoy full time development. Full time development means better focused attention on zigGIS's evolution and, perhaps most important, better support and involvement of our beloved users and the open source GIS community.

Would I get to the point already? OK, sure - what this all culminates to is our decision to return zigGIS back to its open source roots. The next release, version 3.0, will be officially released under an OSI-approved open source license. There, I said it.

What does this mean moving forward? First, we absolutely are not abandoning our currently paying customers. Version 2.0 will remain being sold at and it will continue being supported on our Google Groups forum. Second, we'll soon be posting our zigGIS 3.0 roadmap and the detailed plan for its financial support. For now we can say that we are formulating a combination of corporate sponsorship, individual donations, and professional support contracts. As standard as that is we think we're cooking up a pretty unique, even fun (? … nah) way to cultivate the community's involvement. But until then, you can start supporting zigGIS 3.0 by continuing to purchase 2.0 licenses; all version 2.0 revenues henceforth will be directly applied to the development of zigGIS 3.0.

We're very excited for zigGIS's future and working more directly with you. Thank you for supporting us and zigGIS!

The forum announcement can be read here.

Tuesday, April 14, 2009

Drink up / Tweet up

The boys of Obtuse Software are gathering to drink beer. Please join us if you can in NYC on 4/24 @ Lolita Bar @ 6.00pm. Oh yeah, we might talk about GIS and zigGIS too.

Wednesday, January 14, 2009

zigGIS Candy

Version 2.0.2 is on its way. The number one requested feature is ID column flexibility. Prior versions of zigGIS required a primary key column named "GID". This will no longer be the case; when PostGIS layers are added you choose the ID column. See the new "Add PostGIS Data" dialog for a better idea:

But wait, there's more! The complete list of new functionality is as follows:
  1. Configurable ID column

  2. Configurable Geometry column

  3. Configurable Geometry type

  4. Native support for views (although views will remain read-only)

  5. Independence from geometry_columns table

It's possible to have mixed geometry types in a single column if DB admins circumvent the built-in PostGIS functions and create spatial tables manually. In these cases the "normal" PostGIS data constraints aren't in place to ensure homogeneous geometry types per geometry column. With configurable geometry types and the geometry_columns table emancipation, zigGIS will now handle PostGIS data originated from any number of workflows.

In a word, zigGIS 2.0.2's major new functionality is "flexibility."