Archive for April, 2008

Stepping Back and Looking Back

April 29th, 2008 by Steven Myhill-Jones

Steady, gradual change is easy to underestimate when you’re up close to something.

While working on my GISWORX (Dubai) keynote for next week, I opened a few of my 2003-2004 PowerPoint presentations that examine the significance/future of web-based GIS technology on society and decision-making. Despite the fact that I don’t feel like the fundamentals change all that much day-to-day, I was struck by the fact that most of my forward-looking presentation content from 2003-2004 is now happening. Core aspects of the “road ahead” sections from these presentations have arrived and I can replace my slides with real-world examples that are mainstream (if not yet ubiquitous).

Surprises as I look back? I didn’t forsee the incredible shift from Java towards .NET that we’ve observed, I overestimated the probable future influence of WMS/WFS, and Google entering the spatial realm wasn’t on our radar screen (it hadn’t happened yet).

Though we sometimes make major strides forward overnight (e.g. leveraging new capabilities possible with ArcGIS Server), as I cobbled together examples of innovative developments from the last couple years I noticed that many of the “breakthroughs” happened incrementally through innovative pilot projects and the addition of relatively minor new capabilities. When examined together, it becomes clear the technology is actually evolving very quickly.

What? Notepad2 instead of TextPad?

April 24th, 2008 by Kevin Rintoul

The developers at Latitude are heavy TextPad users. I always thought this was funny because Visual Studio has a very capable text editor with more than enough features for the documents I would ever edit and all developers at Latitude are also Visual Studio users. Admittedly, Visual Studio is pretty heavyweight for simple editing tasks and because of this; I can understand the need for an alternative light-weight text editor.

For whatever reason, TextPad never really did it for me. There are two problems I can see with TextPad. The first is that it is not free and as such, a nag screen is displayed each time you launch it. Of course, I have nothing against nag screens (I have actually written a lot of shareware in my life) but the reality is that I know of no TextPad user who actually owns a registered copy of TextPad. They prefer to dismiss the nag screen each and every time they use it. (If after reading this post, you wish to purchase a registered copy, click here) The second problem I see is that TextPad’s default function keys mappings are different than any program I’ve ever used. Who uses F5 for searching anyways?

While reading about the WIX installer package in the O’Reilly book Windows Developer Power Tools I came across a link to an excellent alternative, free editor with no nag screens called NotePad2. I recall hearing about it a few years ago but did not ever look at it in any detail. I did today and it is excellent. It has block commands, a comprehensive search and replace function with regular expressions support, line numbers, syntax highlighting for just about any language you can imagine and much more. Best of all, F3 is Search as it should be. Check it out. I’m sure you’ll be happy you did.

And yes Dale, I think PFE is almost as good as NotePad2.

2008 IMF/Geocortex User Conference wraps (mostly)

April 24th, 2008 by Steven Myhill-Jones

It sure has been a busy few days. Although there are all-day technical workshops happening today and tomorrow, the main sessions of our 3rd annual user conference are now over. Based on initial feedback from staff and attendees (we haven’t read all the evaluation forms yet), I’d say it was another successful event. The weather held out, and except for a digital projector dying mid-way through a presentation, everything went pretty smoothly. Even after the Road Ahead/Conference Recap Session, the audience went easy on us during the Q&A. I concluded the day with a pre-dinner paddle in the company kayaks with one of our International Distributors.

It’s cool to see how people are actually using our stuff. I’m continually impressed by the creativity and zeal of our customers, and they always have lots of awesome ideas for new features and product enhancements.

In the coming weeks, we’ll make presentations available for attendees to download. This year we also videotaped some presentations, which we might post on the web for folks to check out. But first, we’ve got our conference wrap party for staff on Friday night.

United States of the World

April 14th, 2008 by jade

Back in 2005 Steven posted a map in the office kitchen, showing US States named for countries with a comparable gross domestic product (GDP).

I noticed the United States of the World map that Steve had clipped out of the Globe and Mail, as well as a remake in the Strange Maps archive:

350816052_0a392a0d28_o1

The blog comments suggest that the accuracy of the source data may be in debate – an interesting way to compare world economies nonetheless.

Agile Development At Latitude – A Progress Report

April 13th, 2008 by Kevin Rintoul

As many of our regular readers know, product development at Latitude Geographics has taken on an Agile flavor over the last few months. While it hasn’t been without its challenges, I think most participants would agree that, all things considered, it has been a good experience. We’ve been stretched and I think the effort is paying off. Here is an overview of a few of our Agile practices.

Short Development Iterations. We chose to run our products group on a 3-week iteration. Feature development begins on a Monday and ends with a software release on Friday, 3 weeks later. The thought was that two weeks would be too short to get anything meaningful done and 4 weeks would be long enough to defocus us. This has worked pretty well for us. It is always challenging to get everything done that we’ve wanted to get done, but arguably, that would be true for any iteration length.

Unit Testing. Given the heavy GUI orientation of our product, it has been challenging to get write good, comprehensive unit tests for many of our features. The strategy we’ve adopted is to factor out business logic from our GUI code and to write unit tests for the business logic. We’ve also automated our User Acceptance Testing using a test tool called Selenium. We’ve found that once our tests are automated, we are able to re-run the tests as often as necessary, catching errors early while they are inexpensive to fix. (Finding an available developer to fix bugs is another issue altogether). We’re still early in our unit test experience, however, the value of writing unit tests and using them after they’ve been written has been demonstrated on a number of occasions.

Stakeholder Involvement. Before each iteration, we sit down with our stakeholders, examine a candidate list of features for the iteration and talk about priorities. This has been an excellent exercise for everyone involved. The best way to save development dollars is to not develop features that no one cares about. Once the list of features is decided, we sit down again with our stakeholders and develop requirements for each feature with them. This minimizes the amount of rework we need to do because of misunderstandings. At the end of an iteration, we get our stakeholders together one more time and give them a demo and solicit their feedback. While at first glance, this level of involvement, seems time consuming, and perhaps even a little wasteful, it has actually really been a real time saver for us. We are now able to focus only on features that have a real business need behind them.

Code Reviews. For the most part, code reviews are simply hard work. There is a lot of benefit to them, but, honestly, it is really difficult to review a feature consisting of several thousand lines of code scattered over a large number of files. There are obvious benefits to doing code reviews including an opportunity for knowledge transfer and catching really obvious issues before they become entrenched but I have yet to see a good way to perform code reviews that really do find most errors in code. If anyone out there has had good experiences reviewing code, I’d really be interested in hearing what their approach was.

Cost Recovery?

April 13th, 2008 by Steven Myhill-Jones

I was parsing through my inbox last week, and was reminded that the topic of access to government-produced geospatial base data continues to challenge society. While it isn’t a sexy issue, it is an important one.

On a separate note, I have an idea… Governments should recover the cost of building local roads by charging citizens a hefty up-front fee if they want to use them. Roads are already built, you say? So? They were costly to build, and putting the burden on taxpayers is unfair to people who are shut-ins and don’t travel on the roads.

Think this is a bad idea? What about charging folks for geospatial base data that taxpayers have already paid for, resulting in that data not being used by people who need quality information to make decisions about the world around us?

Both represent infrastructure investments. Both provide value only when they are used. And the negative long-term economic consequences of withholding either far exceed the revenue we might collect along the way (history has shown such revenues tend to be meager).

I think the main reason the “cost-recovery” model even exists is because geospatial data is abstract enough that policy-makers with noble, fiscally-responsible intentions didn’t understand that the economics of geospatial data are the same as the investments we make in things like roads and elementary schools. They pay off later; and if we try to make them pay off right away, we muck things up. I also presume that they weren’t aware that, even stripping out all the negative long-term impacts on society and the economy, “cost recovery” usually costs far more to implement than the revenues it actually brings in. Unfortunately, this model is very hard to remove once folks realize it probably wasn’t such a swell idea after all (due to inertia, cross-licensing agreements, and the smattering of folks who actually paid for the data who’d be understandably irritated if said data became free).

Six Degrees of Kevin Bacon

April 10th, 2008 by Darin Herle

I’ve always been fascinated by the Hollywood game “the six degrees of Kevin Bacon“. Its a pop-culture version of the well known “six degrees of separation” idea – we’re all seperated from anyone on the planet by, at most, six people. Except, in the “Kevin Bacon” version, you interconnect Hollywood stars via Kevin Bacon.

I’m in Corpus Christi, TX right now at the ESRI SCAUG conference, and was thinking of this concept as it relates to my predicament: I flew here on American Airlines and narrowly averted getting stuck in Seattle as their MD-80 fleet was grounded for FAA inspection earlier this week. With the cancelling of so many flights, surely everyone would know someone this has affected? Well now you know one more (or the first) – me.

I just checked the American Airlines website for information related to my flight home tomorrow and it won’t load – presumably becuase the other 100,000 or so displaced passengers are looking for the same information I am! Anyways, I hope I make it home tomorrow – but I can think of worse places to spend a weekend.