Since I did this last year, I thought I’d try this again for 2008. Here’s the lowdown for my 2008:
Geospatial Catalogues: the saga continues. I have dug deeper into this area this year as part of my day-job, and find that interoperability is difficult to achieve in the OGC Catalogue space. Clearly there is a balance between abstraction/flexibility and ease of integration. And the two step approach to discovering, say, OGC WMS layers (invoke GetRecords, then chain to GetRecordById) is cumbersome, IMHO. At the end of the day, the most common use cases (that I have seen) are publishing data and services, and being able to query for them (data, service endpoints, service resources [layers/feature types/coverages]) with spatial, temporal or aspatial predicates. And have the content come back in some usable format for display or binding. Seems easy, eh?
Publications: glad to see “Open Source Approaches in Spatial Data Handling” was finally published. Alot of the well known folks in the foss4g community contributed to this. At the same time, the release took so long (like many publishing processes) that some items ended up dated. Overall, I think the book gives a good viewpoint into foss4g at this time, and makes me think about how far we’ve come. It’s good for the community to be published in this format / manner
MapServer: We just launched a new website. Beers for hobu! Also, lots of OGC CITE fixes and improvements, and next generation of OGC standards, adding updateSequence to OWS support
Python fun again: it’s been fun contributing to owslib for SOS, OWS and Filter support. OWS Common presents a huge opportunity to abstract codebase when it comes to next generation OGC standards. As well, I’ve been using Python for day-to-day scripts. Not bad!
kralidis.ca turns 10: from humble beginnings, alot less done by hand now, and easier to manage (thanks WordPress!).
Basement renovation: this took up most of my time this past year. Frustrating, expensive (I should have been a plumber or electrician!), but gratifying. Took a bit longer than expected, and still not 100% finished, but the major work is done. I think this needed to happen for the property overall, even if it means I have more space than I could possibly need :). N.B. if you ever want to lose weight, do a home reno; I shed 20lbs!
New job: I started a new job in the fall, which promises to be very exciting and satisfying, especially given the state of the geospatial web. The new gig will give me more opportunity for discovery and SensorWeb information management spaces. So I’m grateful for the opportunity. I’ve also been having fun 1/2 time with the GeoConnections program again, so it’s fun to work with some previous colleagues and getting acquianted with new faces who are helping to shape and evolve our national infrastructure. So thanks again to those for helping me along a tough road and getting me here; I owe you big time 🙂
Work: January 11 will mark 10 years of civil service for yours truly
Data dissemination: this is my key function in my day job for the months to come. I look forward to evolving what started off as a very high level strategy into an architecture all the way to implementation. This will be fun!
Standing up usable catalogues: you’ll see a few OGC Cat2.0 instances this year.
MapServer: more CITE fixes for SOS and O&M. One thing I’d really like to see for 2009 is official compliance for OGC standards in MapServer
T.O. Code Sprint in March: this event is going to be fun. What could be better than foss4g and beers, all in the centre of the universe 🙂
Renovations: I think that is it, for this place, for now. Almost three years and it’s time for a rest in this space
Property: I think it will be a good time to buy in 2009. The question (for me) is where. Locally, or down south?
All the best for 2009 for you and your loved ones!
The other interesting bit was that only a range of columns applied to the condition; the other columns represented ancillary data.
# open file and read headers
fPhenomenon = open("phenomenon.txt","r")
sHeaders = fPhenomenon.readline().replace(r'"','')
aHeaders = sHeaders.split(",")
# feed the rest to csv
csvIn = csv.reader(fPhenomenon)
csvOut = csv.writer(sys.stdout)
for sRowIn in csvIn:
aRowOut = 
aPhenomenon = 
aRowOut.append(sRowIn) # procedure ID
aRowOut.append(sRowIn) # major drainage area ID
for nIndexTupleVal, tupleVal in enumerate(sRowIn[3:-1]):
if (float(tupleVal) > 0): # phenomenon measured at least once
# add phenomenon name to list
# add phenomenon list to record
hooray for raw strings!
enumerate() is great and saves you the trouble of declaring your own counter
like any language, modules/libraries makes things so easy to work with
I wish the header stuff was a bit cleaner (I should look further into the csv module w.r.t. headers
That’s my hack for the day. Have a good weekend!
UPDATE: ah, the csv module has a .next() method, which can be used instead of the shoemaker attempt I made above to regularize / split / store the header list.
Since I did this last year, I thought I’d try this again for 2007. Here’s a lowdown for my 2007:
REST is really here: and as popular as ever. For me, I finally realized that REST was a style, not a syntax, API or schema for that matter. Sean’s recent post sums it up quite nicely. It’s nice to see the OGC has acknowledged this
Mass Market is really here: Things like Google, Yahoo Maps, and lowering the barrier to application development and, more ultimately, content, are paramount in the Web 2.0 sphere of things. Defacto standards / approaches matter
Geospatial Catalogues: I blogged about this last year. Even with Cat 2.0 CSW / ebRIM formally approve, where is catalogue interoperability? Is a federated / distributed catalogue approach realistic in the near future?
SOS Server: There has been much development here, including forthcoming support for 1.0.0, as well as implementation of POST support in mapogcsos.c. SWE DataBlock has also been implemented. We’ve also introduced automated testing for SOS in msautotest/wxs/sos.map. And a slew of bug fixes, memory leak fixes, etc. So I’m really happy about how SOS Server support has progressed this year. It goes without saying that major props to Assefa are in order here, as well Charlton and other MapServer SOS Server testers who have provided valuable feedback
OWS Common: Through increased usage in SOS Server, as well as the WCS 1.1 Server support (thanks Frank!), mapowscommon.c usage has been slowly increasing in the codebase to reuse existing functionality. This is a result of the OGC standards gradually adopting OWS Common for their “common” bits of XML and such. mapowscommon.c is also becoming more robust as a result of more integration and testing. I’m also happy about the increased libxml2 support in MapServer. We used libxml2’s xpath functionality in supporting SWE DataBlock, and have generic utilities now defined in maplibxml2.c
I’m happy to have become more involved in the MapServer codebase and project overall as part of the Project Steering Committee. There is definitely alot going on and alot to do, and the enthusiasm, commitment and helpful nature of the developers is great. MapServer is a special project to me, starting in early 2000 as part of my research / dissertation. The rest, as they say, is history. Oh, and “STYLES=” is optional again 🙂
Publications: I was glad to see “The Geospatial Web” published this year. Nice to see new folks and goings on out there
Adventures in Python: I decided to diveintopython finally. With some sound advice from Sean, I embraced stuff like Genshi and etree. I managed to stand up a generic SensorML generator which I’m happy with, as far as my first Python project goes. My next goals are to experiement with doing things differently (like SQLAlchemy; I had to use good old SQL scripting as I ran out of time)
In other news:
Construction time continues: I did some major work on my place, including new fencing, landscaping/gardening, central air conditioning, as well as a shiny new veranda. A bit more curb appeal for sure
Condo: I finally picked up my condo this year. After much thought, I decided to sell. This was a beautiful property in a can’t lose location! Onwards
Lifestyle changes: Perhaps my biggest victory is quitting smoking. I have been absolutely smoke free for all of 2007. I can’t say that there haven’t been times where I wanted one from time to time, but I feel much healthier and better overall
So as 2008 quickly approaches, here are a few things I’m looking forward to:
MapServer: I look forward to continuing in helping more with OGC support, as well as become more familiar with the inner workings of the codebase.
OpenLayers: I really want to get into OpenLayers this year. I have not done much on client side work since the initial Mapbuilder days
New Springer publication: keep an eye out for a new, exciting book on GIS and open source this year
OWSContext and KML: it will be useful to see a resolution or unification of some sort between these two standards
OpenSearch: I think OpenSearch, with the geo extensions, will make a big hit this year. Nothing like a simple search facility which is already supported in browsers
I’m renovating my basement this year. Gutting the entire basement and installing a new bathroom and kitchen. I hope to have this done by summer 2008 — wish me luck!
So that’s it from here. I wish you and your loved ones the very best in the holiday season and for 2008!
I thought I’d put in my $0.02 CAD after reading a few similarposts out there. So here are some from my point of view (in no particular order):
GeoRSS is here: GeoRSS made v1 this year at foss4g2006 and has proven to be a simple, yet very effective way to tag feeds. I’ve used and integrated in all my projects (I use the GML flavour) which produce RSS content by way of outputting an overview map based on the position. It gives the developers endless possibilities, and folks just love to see ‘where’ a post is
Getting to Know PHP: Earlier this year, ignorant to PHP, I decided to take the plunge and see what all the fuss was about. Boy was I glad I did. So easy, even I could figure it out. So easy that I’ll be porting bits of my website to PHP in the coming year
MapServer SOS support: It’s great to see OGCSensorWeb support in MapServer. Given that MapServer can already do stuff like spatial, temporal and aspatial queries, I think SOS was a relatively easy initial implementation effort. The more complex effort is the data bindings (sensor data is quite complex and multidimensional, and getting in and out of MapServer, in a generic framework is quite the challenge
ResEau portal launch: I was very fortunate to work with a great bunch of people to have finally released the ResEau water portal after two years of planning, design and development. I think this portal is a great example of the benefits of using standards-based approaches all the while providing useful information to a vast audience
MapServer commiter access: I was very honoured to be nominated this year for commit access to the codebase. My main focus was and is to implement the OGC OWS Common Specification for use by other OGC implementations
Web 2.0, Time article and information overload: Such a good article. And so true. As a result, we are overloaded with information! At one point, I refactored all my bookmarks to be pure RSS feeds just to handle it all. Whoever said computers would lessen the workload!?
foss4g2006: This was a great conference. The lighthing talks, BOF sessions, and demo fest, as well the gathering of the OSGeo crowd further solidified OSGeo’s existence. Can’t wait until next year’s event!
Catalogue woes continue: the Cat2.0 ebRIM vs. ISO implementation debate continued. Add to this the lack of (especially open source) implementations, and stuff like owscat, and other catalogue-ish projects continued to exist. The OGC has recently endorsed ebRIM as the future base for Cat2.0 implementations, so hopefully we should start seeing some interoperability between catalogues
Atlas of Canada 100th Anniversary: Congratulations on the 100th anniversary of this valuable Canadian resource. Kudos to the Atlas!
Cool travel: Charlottetown, Alabama, Washington D.C, Lausanne, Las Vegas, San Diego, Moncton, Winnipeg were among some of the neat places I visited this year
Home renovation: I did my biggest renovation job ever on my house this year, which lasted almost 6 months. I’m really glad the way things turned out, and I’m looking forward to doing some more stuff in 2007
Condo putters along: construction continued on my condo, and is now ahead of schedule, ready this coming June. Looking good!
Website changes: This year, I finally succumbed to using softwarepackages to manage my website content. This websiteoriginated in 1998, as an HTML learning experience, so I was inclined to do *everything* by hand. While very useful, as time goes on, I find myself with less and less time (go figure!), and there’s so many solid tools out there to make things easy, and standards based (i.e XHTML, CSS, etc.). So why not use these great tools and concentrate more on the stuff you want to do, right?
Looking forward to 2007:
Further OWS Common support in MapServer: mapowscommon.c/h is almost complete to spec (missing some operations support). The next step will be to begin integrating into the OGC specs as they migrate to OWS Common for stuff like GetCapabilities XML, etc.
OWSContext: look for further formal development on this specification. OWSContext has been used frequently in the OGC testbeds, and interest is increasing in seeing the spec push forward.
Further development on discovery and cataloguing: I’m hoping to see some development / experiments on this track. It will be interesting to see how packages like deegree2 progress given the recent motion passed at OGC
Publications: I’ll be published in two Springer London books this year (The Geospatial Web, as well as Open Source Approaches to Spatial Data Handling)
MapServer Brazil: I was honoured to be invited to this event, and look forward to speaking on OGC and open standards. Looking forward to this!
Did I miss anything? What else was geospatial-worthy in 2006?
At any rate, this closes out 2006 for me in the blogosphere. I wish everyone a great Holiday season, and all the best for 2007!
OK, so I’ve finally started a blog. I’ve been meaning to do this for the longest time, but between house renovations, trying to figure out whether to use a hosted blog or host my own, this fell off my radar screen. Until my cousin started his own, then I just had to put one up.
So anyways, here I am. The rest of my website will remain and develop in the same way. I’ll use this blog to post my thoughts and random stuff from time to time. I’m a do-it-yourself kind of guy, but using blog software makes things really easy. Plus maintaing my old RSS feed by hand was becoming, well, cumbersome 🙂 So here we go!