OL Sessions at FOSS4G

Posted in FOSS4G 2008 on October 1st, 2008 at 02:15:38

Just watched Bart’s presentation on his employer’s use of OL + ExtJS: to see a map customized so thoroughly that I can no longer recognize it as OL is kinda neat.

Now watching Tim Schaub explain Vector Styling; “So new many developers don’t even know how to use it.” I’ll state that I think this is equal parts ‘new’ and ‘lack of effort into documentation’ 🙂 Showing a *really* cool styling demo tool, which lets you put in code, run it, and executes the JS and creates a map. Totally need to get that into the website.

Showing the addUniqueStyleRules stuff; just keeps reminding me we really need graduated symbolizer convenience methods. Maybe I can convince him to do that at the code sprint this weekend.

We need to get these style rules in SVN somewhere; Tim’s clearly done a lot of work very recently on this, and getting this into the documentation and website sounds like a great thing to me.

FOSS4G Starts

Posted in Django, FOSS4G 2008 on September 29th, 2008 at 07:55:41

After climbing Table Mountain yesterday, I’m somewhat beat, but was able to make it up at 0730 to give a GeoDjango workshop with Josh. After spending the first hour running around attempting to get power for everyone and get DVDs copied, we got started.

Overall, the workshop went well. We had a variety of users — including two people who were relatively successful with running GeoDjango from their own (mac) laptops. I’ve learned a few things about using VMWare — for example, I was reminded that there is no real VMWare option for PPC Macs, and that installing VMWare on Mandriva is not as trivial as it maybe should be.

I was able to get two of my machines working with the VMWare DVD we had and distributed (link later once I talk to Josh and we fix some of the missing things), and gave them out to people. With our 25 people, we had about 15 laptops running, with others sharing.

Learned a few key points: For one, our documentation on the workshop was insufficiently explanatory of how to do things like “edit files”, “open a terminal”, etc. A number of people were facing significant problems towards the start because of that. (Also, not installing vim on the VMWare image was problematic for me, and Erik had the same problem with emacs.) Due to the somewhat staggered start, we got a little bit lost in the weeds pretty quickly, and didn’t get a chance to really explain what GeoDjango was about to start, which I think was a lack in the workshop.

Overall, we got through setting up the VMWare image (though not installation from scratch), starting a project, creating a model, setting up the admin (with this being one of the more difficult parts, specifically because almost no one had internet access within the VM), generating KML, viewing the KML on an OpenLayers map, and using the GDAL tools (LayerMapping) to import polygon data from a shapefile and view/edit that. A couple people got ahead through creating a Ward view as well, which was nice.

There are a number of aspects of the workshop that need more polish, but overall, I think people who were interested got to see GeoDjango in admin, and see why it’s pretty cool. Hopefully we can clean up our workshop docs to make it smoother for the next person to walk through it, and get more people interested in GeoDjango and learning about Django in general through that.

Arrival, FOSS4G2008

Posted in FOSS4G 2008, Locality and Space on September 28th, 2008 at 01:00:55

Have arrived in Cape Town in preparation for FOSS4G. And the most important part of the trip — the drinking of the beers — is already in full force.

Tim, Fountains Hotel

I’m staying in the Fountains Hotel; apparently a good choice, given the number of random FOSS4G passerby we’ve had so far.

18 hours of flying is a long time, but didn’t go poorly, though I am lacking any clothes until Monday afternoon (so I’ll be kind of stinky for my workshop with Josh on GeoDjango on Monday). Made it to the hotel, then headed out to Dinner at Cape To Cuba. Was good environment and tasty, for not a bad price. We then went back to the Fountains Hotel and had a couple drinks at the hotel bar.

I’ve uploaded pictures — they’re tagged by day and foss4g2008, so you should be able to see daily shots as I continue to upload them. (I’ve also got a FOSS4G 2008 set.) Today we’re doing a trip up Table Mountain — taking the cable car — leaving from Fountains Hotel around 10AM (breakfast at 9:15).

PSA: If you’re at all interested in GeoDjango, and have more than a passing knowledge of Python, I highly recommend coming to our GeoDjango workshop (and bringing a laptop). It’s gonna be great.

PSA2: If you’re staying at Fountains, and don’t want to go down to the desk to get an internet voucher, you can still ssh. Just join the wireless network, and ‘ssh $ipaddress’. (If you don’t know your IP address, you can look it up by using ‘dig @72.232.176.58 yourdomain.example.com’.) If you need to get to the web, you can add “-D 4000” to your ssh command — ‘ssh -D 4000 crschmidt.net’ — to set up a SOCKS proxy. Then, in Firefox Preferences -> Advanced -> Network -> Connection, do manual Proxy configuration, and enter ‘localhost’, ‘4000’ as a “SOCKS Host”.

FOSS4G 2008

Posted in FOSS4G 2008, Locality and Space on September 26th, 2008 at 06:37:08

About to head out to FOSS4G 2008. Leaving from Boston this morning, New York this afternoon, arriving at Cape Town around 4pm with a refuel-only stop in Dakar.

I’m staying at the Fountains Hotel, and will try to spend most of my time in the lobby. (If you see a guy with a Macbook sitting around there, there’s a fair chance he’s me.)

I’m presenting Collaborative Mapmaking with GeoDjango, which should be great for anyone who has worked with Django but not GeoDjango, and even people who haven’t used Django can probably play along.

OpenLayers users should be interested in Tim’s excellent summary of the OpenLayers-related sessions; as he mentions though, there are *36* sessions that mention OL, so it seems likely that no matter what track you follow, you’ll see *some* OpenLayers mentioned.

After the conference, a couple of OL developers are doing a trip around the Cape; on Monday morning, I fly out to Kruger National Park for a 3 day whirlwind tour. I’ve rented the car, but I’m still keeping an eye out for anyone who wants to room with me: I can take at least one more person (and if we get two more, we can rent a bigger car :)). If you’re interested and fly out Friday or later, let me know!

I’ll be trying to keep Twitter updated with my whereabouts; if you’re interested in tracking me, you can follow me, though I expect I’ll be less prolific than usual, since I won’t have cheap text messaging access.

If you’re at FOSS4G, look me up!

MetaCarta Labs is Hiring

Posted in default on August 6th, 2008 at 09:00:45

MetaCarta Labs is looking for a new employee again.

MetaCarta Labs is a small team of enthusiastic, fast paced developers working directly under the CTO to develop prototypes and new products and facilitate developer outreach. MetaCarta Labs is taking a key role in geo-enabling the Web — helping existing content owners to add geographic information to their content — and has a long history of working with external developer communities through open source projects and conferences.

ландшафтoptical communications
Most people who’ve been long time readers know that I’ve been working at MetaCarta for two years, and I’ve really had a great time there. Some of the smartest people I know are my coworkers, and I’ve learned more working with them than I have anywhere else. I’ve travelled to conferences in other countries, met people from around the world, worked on several open source projects, and directly participated in a number of interesting revenue-building things within the company.

Interest in geo a must: experience in geo optional. We’re looking for a web hacker, primarily: interest and experience in HTML and JS is pretty much a prerequisite for what we’re looking for at the moment.

It’s a cool gig: if you know anyone who might be interested, feel free to send them my way, either directly (crschmidt@metacarta.com) or via the link above.

Technocentric Thinking

Posted in Social, Technology on June 28th, 2008 at 17:34:52

Chad writes:

I know their “motto” is “Don’t Be Evil” .. but I think it should be “Don’t Be Smart” instead.. this is some dumb thinking from Google. Trust me.. I know better than Google on how I want to download and install my software.

This is just the latest in a whole lot of similar statements I’ve seen from many people across the web in a variety of situations talking about how “I know how to manage my machine”, with the underlying meaning being something like “You should act as if people who are working with your software know how to work their computers.”

When I put it that way, does it really sound right? Is there anyone who thinks that the *majority* of users of Google Earth actually know how to run their machines? Is there anyone who thinks that it makes sense for Google to build and QA two different install mechanisms — one for technical users who know what they’re doing, and one for those who don’t?

Very few companies the size of Google do anything on a whim. I expect that some thought went into the development of the Google Earth downloader. The fact that the thinking is not centered around technically competent users is just evidence that Google doesn’t need to target the early adopters; it’s not a sign that what they are doing is ‘Bad’ or ‘Stupid’.

Technical users are few and far between in the mass market. Google Earth is targeted towards the mass market. Just like all software that is targeted towards a mass market, there is nothing ‘stupid’ about removing tools that the majority of users don’t need or care about: By doing so, you limit the number of people who are going to end up confused by your tool, and that’s not a bad thing when you care about the majority of people instead of a technical elite.

Printing Maps; Twin Mountain DRG

Posted in Locality and Space on June 28th, 2008 at 09:11:27

So, I’m going camping this week. While camping, I plan to be hiking the White Mountains relatively extensively, from my home base at Lafayette Campground in Franconia Notch.

One of the best part of planning hiking trips is maps. I love maps. I love looking at them, finding things, exploring things. I love having them handy to reference, I love browsing around them.

However, when you’re on a trail, looking at maps on a computer doesn’t work particularly well. As a result, I’m trying to print maps, and finding that it’s a somewhat difficult proposition.

I have DRGs from the libremaps project: These are great. I’m looking at o44071b5, o44071b6, and o44071a6, all downloaded from the Libre Map Project. Unfortunately, I then went to go open c6, only to find that… it’s not available. Argh! I know that it exists: I can check the features that should be on it in the Terraserver DRG WMS, but no Twin Mountain quad.

Oh well. Not a huge deal, just annoying; I’ve got other maps that cover the area. Now the problem is that I can’t figure out how to take a tiff like these and print them over multiple pages on a home printer. Anyone got any tips or tricks on that? Printing on one page is somewhat useful, but not nearly as much as I’d like; I also don’t want to spend all day cropping and fighting with tools. If I have to do that, I’ll just survive with what I’ve got.

I’m going to go out to the local map store and see if they have a nice Atlas for the Whites; if so, I’ll take it. It’s worth it to have a little bit of extra knowledge about a place — and who can’t use more maps?

DjangoGraphviz: Visualizing Django Models

Posted in Django, Software on June 25th, 2008 at 16:47:38

Earlier today, a coworker was trying to work out a diagram for the models in the Django app that I’ve been working on internally, to visualize the relationships between them. I did a quick Google, and found a reference to DjangoGraphviz, a super-handy little chunk of code.

DjangoGraphviz did exactly what I needed it to, with no problems at all. (My only complaint is that it requires the DJANGO_SETTINGS_MODULE to be defined in order to get the –help output, somewhat unintuitive.) The software quickly generated a .dot file which I was able to turn into a lovely PDF, and print. I’ve now got a copy on the desk of each of the developers using the codebase, and I think it’ll prove a lovely piece of reference.

So, if you want a quick visualization of your Django models, and you can install graphviz, I highly recommend DjangoGraphviz to do it.

(Note that the wiki page itself recommends a couple other things more ‘built in’ to Django, which are new to me: I didn’t try these, I just stuck with DjangoGraphviz, which did what I wanted.)

GeoJSON 1.0 Release

Posted in Locality and Space on June 16th, 2008 at 13:01:30

From the GeoJSON mailing list:

The GeoJSON Authors are proud to announce the finalization of the GeoJSON 1.0 Specification.

Representing more than a year’s worth of community discussion and development, the GeoJSON specification describes an easy to use, extensible format for transferring geographic data over the web. With support in more than 20 different applications, GeoJSON is already quickly becoming a de facto standard for transferring geographic data in a JSON format. The finalization of the spec represents the final step in formalizing the GeoJSON format for encoding this data.

More information on GeoJSON can be found at http://geojson.org/ , or from the GeoJSON mailing list at http://lists.geojson.org/listinfo.cgi/geojson-geojson.org .

Geographic Queries on Google App Engine

Posted in Locality and Space, Python on May 28th, 2008 at 12:05:13

I made a post over on the MetaCarta Labs blog about doing geographic queries on App Engine:

???????? ????? ????????In this way, I was able to put together a geographic bounding box query, on top of Google App Engine, using a Geohash-like algorithm as a storage format, and use that query to power a FeatureServer Demo App Engine application, doing geographic queries of non-point features on top of App Engine/BigTable. Simply create a Geoindex object of the bounding box of your feature, and then use lower-left/upper-right points as bounds for your Geohash when querying.

Geographic Queries on Google App Engine

Probably of interest to some of the people who read this.