Saturday, December 30, 2006

Math for Maps - Experimental Chapter Of The Free GIS Book


I have started working on a chapter for the Free GIS Book that is being hosted at the OSGeo. I'm doing this in an effort to become more involved as a member of the organization, and I thought this would be a small way that I could help. The goal of the chapter is to explain some of the math mapping professionals encounter every day. I hope this chapter fills what I think is a void in current educational material for mapping professionals.
You can find the introduction to the chapter that I have prepared, and the table of contents here:

http://wiki.osgeo.org/index.php/Mapping_Math


I encourage other GIS professionals to participate in the writing of the Free GIS Book. I also welcome any suggestions, constructive criticism, and corrections that you can point out to me as you read the material I've developed for the chapter. I hope to add new material every Sunday morning. (This is the only time its quiet at my house.) Tomorrow morning I hope to actually start on the first part of the chapter, which will be dealing with some of the math behind measurments.


The Sunburned Surveyor

Posted on 6:51 AM | Categories:

The Quarter Million Dollar Shapefile...In Florida?

I received a couple of comments on the post about the $250,000 parcels data in Santa Clara County, and I wanted to follow up with a post of my own. One of the commenter's who works with parcel data in Florida pointed out that there was a law suit and court decision, as well as an attorney general opinion, regarding this very same issue in his state. (You can read this commenter's blog at http://www.gis-data.blogspot.com/.) In both cases the data was made available to the public, and in the first case the court found that the government agency could not impose licensing restrictions of any type on "public records".

Here is a link to to the court decision and attorney general opinion:
http://www.2dca.org/opinion/December%2001,%202004/2D03-3346.pdf

http://myfloridalegal.com/ago.nsf/aaee37715760bbce852563cc001bacf7/2639579ab297311d85256d970046709f!OpenDocument

I would like to express my agreement with something the commenter wrote: "Hopefully this case set a precedent for Florida. It just takes time and enough people to raise a concern over the issue for most government entities (county, city, towns, etc.) to change their attitude as far as GIS data being considered public records."

I wonder if the OSGeo would be willing and in a position to champion this cause across the United States and other parts of the world. Private companies that work with public GIS data often decide to suffer under the licensing restrictions and fees imposed by a government agency rather than risk angering a potential client by pushing the "free access to public records" issue. A neutral third party like the OSGeo would provide an appropriate champion for this issue. Public data plays a critical role in GIS in the United States, and as a community we want to make sure free and unencumbered access to that data continues.

I also received some information about a United States Federal policy of creating free or low cost access to geospatial data created and maintained by the United States Federal Government. I'd like to talk about that some more in a future post.

The Sunburned Surveyor
Posted on 6:38 AM | Categories:

Wednesday, December 20, 2006

The Quarter Million Dollar Shapefile...

When was the last time you paid $250,000 for an ESRI Shapefile? If you are a GIS professional that lives in Santa Clara County, California, it might not have been that long ago.

In the “NEWSLINK” section of the December 2006 issue of GEOWORLD magazine there is a short article discussing a lawsuit brought by the California First Amendment Coalition against Santa Clara County. Santa Clara County evidently maintains several “base map layers” as many local governments now do. These layers contain, for example, information about the parcels within the county. The county does make this geospatial data available to the public, but at what I think most people could agree are some pretty outrageous prices. I almost choked when I read this portion of the article from GEOWORLD:

“The fee for the county-wide” parcel information, for example, is approximately $250,000. In addition, those receiving the data are required to sign a non-disclosure agreement.”

No, I didn’t put the decimal point in the wrong place, or add any extra zeros. You just read “$250,000”. That figure isn’t in Mexican Pesos. That is actually ONE QUARTER OF A MILLION DOLLARS for the parcels layer. (I thought the $200 I paid for GIS data in my own county was too expensive. This story puts that in perspective.)

When I started this blog on of my goals was to become more active in the GIS community in general. I didn’t want to talk only about OpenJUMP. I hoped to discuss some broader topics that would be of interest to the GIS community, and add what I hope is a unique perspective on these issues from the position of both an open source advocate and a surveyor.

This is my first blog post in line with that goal.

I don’t have many details about the lawsuit, or the way Santa Clara County distributes is GIS data. I only know what I read from the short article in GEOWORLD. But I thought this news item brings to light an important issue in the geospatial community, and presented a good opportunity for some discussion on this issue. What follows is my opinion…

Government agencies should make geospatial data created and maintained completely or partially through public funds available to the public in a reasonable manner and for a reasonable price.

There is a cost associated with distributing geospatial data. For example, a government employee might need to spend some time collecting the data and placing it in an appropriate format, and they might need to pay for other costs like a CD or DVD, postage, and an envelope. I don’t have a problem paying for these types of costs when I acquire geospatial data from a government agency. After all, the public shouldn’t have to fund a GIS Data vending machine for GIS mapping professionals, and I don’t expect them to.

However, many government agencies cross the line and abuse their authority, charging far more than a “reasonable price”. Why does this happen? I can think of at least 3 different reasons. One is alluded to in the lawsuit against Santa Clara County. The GEOWOLRD article provides this insight:

“Scheer said that if the county base map were readily available, citizens would be able to see if their property is fairly assessed or if they’re being overcharged for home or flood insurance. ‘Access to the base map makes it possible for citizens to hold local government more accountable,’ he added.”

“’Real estate developers can afford to pay for the GIS database, but residents living near a development site don’t have access, and can’t pay the huge license fees,’ noted Rachel Matteo-Boehm, CFAC counsel and a lawyer with San Francisco-based Holme Roberts & Owen LLP.”

Let me interpret that for you.

The government knows that information is power, that maps are a great way to convey important information, and sometimes the government prefers the convenience of an ignorant citizenry. If you control access to the maps, you can keep people ignorant. Ignorant people have a difficult time questioning or challenging your decisions. (Especially decisions that favor large land developers.)

The second reason government agencies cross the line when it comes to access and affordability of publicly funded geospatial data is their budget. Most government departments can find a way to spend more money, and some of these are genuinely overworked and underfunded. How are they supposed to buy the new plotter and pay for the next upgrade of ArcGIS? When funding doesn’t come through the proper channels some GIS department managers may feel that selling GIS data for a higher price is the way to fill the gaps in their budget. This is flawed thinking. The solution to this problem isn’t highway robbery of GIS professionals, but addressing the budgeting issues that make this type of
robbery a temptation.

The third reason is perhaps the most legitimate. Many government agencies fear the legal liability that may arise from releasing geospatial data. As a result they severely limit the access and allowed uses of their geospatial data. The solution to this lies in promotion of a nation wide geospatial data licensing standard. Think of a “GPL” for geospatial data. If we have a geospatial data license, or licenses that gain widespread acceptance, government agencies will be able to overcome their fear of a lawsuit.

We can’t do much about the first two reasons as individual GIS professionals, but we can do something about the second. I encourage all of my readers to support standards for geospatial licensing when they have the opportunity.

$250,000 for the parcels layer. Santa Clara County should have known better. I think any reasonable person can recognize the problem with that fee. Hopefully a reasonable judge or jury will be able to do the same.

The Sunburned Surveyor
Posted on 12:07 PM | Categories:

Monday, December 18, 2006

OpenJUMP 1.1 Official Release

I wanted to give my readers a quick update on the state of the next official OpenJUMP release. I have the last week in December off from work at my day job, and I hoped to have a release ready for the public by the first of the year. However, after talking to Stefan I think this may have been a little overly optimistic.

We’re in the midst of getting agreement for a freeze on new features during the month of January. I hope to wrap up my work on support for pluggable renderers in OpenJUMP and JUMP this week. I’ll postpone my work on the CursorTools through January and concentrate of squishing bugs and making other changes for the release of OpenJUMP 1.1. Hopefully, with help from Stefan and the other developers, we can have the release ready to go by the end of January.

I don’t think that we will have any earth-shattering new features, but it has been a good while since we’ve had an official release of OpenJUMP, and it would be nice to get something out for those that are weary of the nightly build for one reason of another.

Stay tuned to this blog for updates on OpenJUMP 1.1!

The Sunburned Surveyor

P.S. – I had some time to read through the latest issue of GeoWorld, and I want to comment on some of the articles. I’ll try to get those blog entries posted by the end of the week.
Posted on 4:09 PM | Categories:

Monday, December 11, 2006

Naming Java Packages In OpenJUMP

When I was putting together the Java Package Maps for Vivid’s JUMP and OpenJUMP I noticed some inconsistencies that I would like us to address as a group of developers.

The main inconsistency I noticed was when a portion of a package name was made up ttwo or more terms that are normally separated by a space. (Java doesn’t allow spaces in a package name.) For example, let’s take my package for the work I’ve been doing on OpenJUMP’s Cursor Tools. All my packages at the SurveyOS for OpenJUMP follow this naming convention:

net.surveyos.sourceforge.openjump

I’ve got at least three ways that I can name the package for my Cursor Tools code, and I see packages in OpenJUMP named with all 3 techniques techniques. For example:

[1] net.surveyos.sourceforge.openjump.cursorTools
[2] net.surveyos.sourceforge.openjump.CursorTools
[3] net.surveyos.sourceforge.openjump.cursortools

I think we need to pick one of these techniques for all package names. I’m not sure if one of these methods is more correct than the other two, and I have no real preference for one over the others. But I’d like to use the one everyone else has agreed to use.

I also think it might be to everyone’s benefit if we use the org.openjump package for as much OpenJUMP code as we can. If a developer is writing code for OpenJUMP that is directly tied to the programs other parts, and can’t be used independently, I think it should go in the org.openjump package. As an example, I would need to change my net.surveyos.sourceforge.openjump packages to org.openjump packages. Source code that is used in OpenJUMP but that could be used independently can be prefixed with the vendor or organizations standard package name. For example, I might have some utility classes at the SurveyOS that I want to use in OpenJUMP. I could keep this in the net.surveyos.sourceforge package.

I’d like to hear from other developers on the JPP Mailing List. Are these good ideas, bad ideas, and why do you have that opinion? I think we should make an effort now to get some simple standards in place for package naming. This will help us avoid an ugly source code structure down the road.

The Sunburned Surveyor
Posted on 12:16 PM | Categories:

Friday, November 24, 2006

Personell Changes at Vivid Solutions and Refractions Research - What does it mean for OpenJUMP?

There have been recent some personell changes at Vivid Solutions ( http://www.vividsolutions.com/ ), the company that produces JUMP, and Refractions Research, ( http://www.refractions.net/ ) the company that produces uDig. These changes have taken place over the last few months. These companies both cooperate and compete with each other, although it seems there is more competition than cooperation lately.

I want to discuss how these personell changes might impact OpenJUMP. Specifically, I'd like to address some comments I've heard that indicate these changes might be a reason to switch from using OpenJUMP to using uDig. I'm not going to get into the details of the personell changes. I don't think those details are important for this discussion, and if you care you probably already know. :]

Some OpenJUMP developers and users may be concerned that Vivid Solutions no longer has employees that understand how JUMP, and consequently OpenJUMP, works on the inside. On the contrary, I think the company has taken recent steps to ensure that they retain some JUMP expertise "in-house".

Some OpenJUMP developers may also be concerned that Vivid Solutions is no longer supporting the development of JUMP. I have spoken to David Zwiers at Vivid Solutions, and I don't believe this is the case at all. In fact, I have spoken to David about the future of OpenJUMP and JUMP, and about how the JUMP Pilot Project and his company can work more closely on the development of both programs. He seems optimistic that we can work for the benefit of each other, and that our goals are similiar. Stefan and I will be talking more with David and other members of Vivid Solutions about this opportunity. I will also be making a personal effort to make sure that more of OpenJUMP's code makes it into JUMP.

I think OpenJUMP developers and users need to view these recent personell changes at Vivid Solutions as an opportunity to work more closely with the company. After my conversations with David, I really believe that these changes will be good for OpenJUMP and the JUMP Pilot Project.

It is also important to remember a key difference that distinguishes JUMP and uDig from OpenJUMP. The majority of the development and administration of OpenJUMP is done by volunteers, not by paid employees. There is no primary corporate backer of OpenJUMP. (There are currently companies that are funding some areas of OpenJUMP development.) This is great strength of the program, and I think it gives OpenJUMP a more secure future.

Corporate priorities "follow the money", and they can change overnight. Vivid Solutions and Refractions Research could abandon uDig and JUMP to their respective user communities tomorrow. (This isn't likely, but it could happen.) If no other corporate backer stepped into fill that void, those user communities would have to organize and provide their own leadership and administrators. That framework is already in place within the OpenJUMP community. I can't speak for all the other OpenJUMP developers, but I work on OpenJUMP because I recognize that it is a great program, and I think the best bet for a fully functional open source GIS program that can serve the needs of the geospatial masses. I don't work on the program because it is my job, and I'm not going to quit working on it because someone stops paying me to do so, or because I change jobs. I think there are other OpenJUMP developers that feel the same way.

In summary, OpenJUMP is here to stay.

It will live one with or without Vivid Solutions. (We would prefer with, not without, of course...) :] It may just outlive both companies. There may be a lot of reasons for an individual or organization to switch to uDig for their open source GIS needs, but the recent personell changes at Vivid Solutions and Refractions Research aren't one of these good reasons.

In the future I think you will see closer cooperation between the JUMP Pilot Project and Vivid Solutions, and this will mean only more growth and improvement of OpenJUMP.

The Sunburned Surveyor

P.S. - I want to make it clear that I have great respect for the employees of Refractions Research, for uDig, and for uDig's development team. I would welcome any opportunity to work with them for the benefit of the open source GIS community, or for the mutual benefit of uDig and JUMP/OpenJUMP.
Posted on 6:02 AM | Categories:

Monday, November 13, 2006

OpenJUMP Documentation Standard

I had a little extra time at my computer this last weekend, so I put together a quick standard for OpenJUMP Documentation. The standard is completely voluntary, of course, but I thought it would be helpful for documentation authors that want to help keep a consistent “look and feel” for all OpenJUMP docs.

You can find the standard here:

http://thejumppilotproject.pbwiki.com/Documentation%20Standard

I’ve also placed an ODT template for OpenOffice and and SLA Template for Scribus on the SurveyOS Page for download. The files are available in zip and gzip format. (The archives include the two font formats needed for the standard.) You can download the archives here:

http://sourceforge.net/project/showfiles.php?group_id=122820

Look for the OJ Docs Template release. I’ve also included a sample page of the OpenJUMP Developer’s Guide as an example of the template.

I’ll try to get some information on the wiki that explains the different parts of the template.

The standard was set up using imperial/standard units. I’ll need some help from one of my European counterparts to come up with the equivalent metric standard and templates.

I hope this will be the beginning for some more documentation for OpenJUMP and related technologies.

The Sunburned Surveyor
Posted on 12:36 PM | Categories:

Friday, November 10, 2006

The Learning Curve In OpenJUMP Development

Sometimes I feel as though I fall far short of the qualifications necessary to be one of the administrators at the JUMP Pilot Project. (Even though all I really do is try to answer questions on the mailing list. Then again, I probably ask as many questions as I answer.)

One reason that I sometimes feel under-qualified is my lack of knowledge about Java programming. I never ceased to be amazed at the ease with which other developers can interpret a piece of OpenJUMP's source code that has me stumped, or how they can point out a solution to a small programming problem that I've totally overlooked. Fellows like Larry, Ole, Ugo, Uwe and Stefan make it appear much easier than it really is, at least for me.

There is good news though. I think I am finally getting past the steepest part of the OpenJUMP development learning curve. I believe this is for two reasons.

[1] I decided to concentrate on making improvements to OpenJUMP, instead of starting from scratch with OpenJUMP-Ex. This has proven to be a great decision so far, because I have had the opportunity to discover some of the great design that went into OpenJUMP. This includes things that I never would have thought of on my own. Its taught me a lot about program design in general.

[2] I decided to take a detailed look at the source code for the CursorTools in OpenJUMP, instead of just implementing my Coordinate Selection CursorTools. This has given me the chance to learn all types of things about OpenJUMP, not just about CursorTools. This includes OpenJUMP's snapping mechanism and parts of its rendering system.

I find that the more I learn about OpenJUMP's source code, the easier it is to learn more. (I guess that's why they call it a curve.) :] This gives me hope about my future developing OpenJUMP, and about the future of the program itself. It also makes me realize that any user can become a OpenJUMP developer. You don't need to be a professional programmer to become involved. You simple get curious, and then start poking around.

I'm very grateful to all the other OpenJUMP developers that help me along. (The guys at Vivid Solutions and uDig belong in this group as well.)

I am getting very excited at what I will be able to accomplish for OpenJUMP as I conquer the learning curve, and I can't wait to get my first SurveyOS CAD Tools into the hands of the OpenJUMP users.

The Sunburned Surveyor
Posted on 8:51 PM | Categories:

Thursday, November 09, 2006

A Great Tutorial For OpenJUMP

Uwe Dalluege and Stefan Steiniger have done a great job producing an English version of an OpenJUMP Basics Tutorial. (Uwe authored the original version of the tutorial in German, while Stefan provided the English translation.) You can download it at the JUMP Pilot Project SourceForge site:

https://sourceforge.net/project/showfiles.php?group_id=118054

This tutorial fills a void in OpenJUMP documentation that has been around for a very long time. (Since the original JUMP User Guide was written. Even that user guide was never finished.) I want to pass on my warmest thanks to Stefan and Uwe for their hard work on this tutorial. I’m sure many of OpenJUMP’s users, including myself, will find this helpful.

The work that Stefan and Uwe completed got me thinking a little more about documentation for OpenJUMP. I’d really like to complement the work that these two programmers have done, by improving and expanding our documentation. (For example, OpenJUMP doesn’t currently have a developer’s guide, although there is some developer documentation on the wiki.)

Before I start work on some OpenJUMP documentation I thought it might be a good idea to come up with some documentation standards, using the tutorial by Uwe and Stefan as a starting point. I don’t want anything too complex. Perhaps we can settle on a standard the defines the following:

Paper Size
Margin Size
Title Text Font Type, Style, and Size
Heading/Subheading Text Font Type, Style, and Size
Regular Text Font Type, Style and Size

I also like the way Uwe set up his page header and footer, and perhaps that is something that we can add to the standard as well. This standard will allow us to have documentation that shares the same overall style, even if it is contributed by several different developers over the course of time. I could design a template for OpenOffice Writer that all other documentation writers could use.

I’ll post a question to the mailing list about this, so I can see what the other developers think.

The Sunburned Surveyor
Posted on 8:12 AM | Categories:

Wednesday, November 01, 2006

Getting Involved (No more long e-mails...)

Some recent activity on Paul Ramsey’s blog got me thinking about a blog for OpenJUMP. Here it is.

I hope this blog will provide a place for some longer discussions about OpenJUMP, OpenJUMP-Ex, JTS, the JUMP Pilot Project, and the SurveyOS Project. I hope it will also give me the opportunity to receive feedback from those involved in the regular use and development of OpenJUMP. The type of feedback that might not be appropriate or well suited for the JPP or SurveyOS mailing lists hosted at SourceForge. (That means the subscribers to those lists will no longer have to suffer trough as many of my terribly long and rambling philosophical posts.)

This blog will also allow me to have a more active role in the open source GIS community, which is something that I have neglected until now. Those that know me personally realize that I take a neutral stand in political matters, but this doesn’t mean that I can’t become a champion for the open source GIS and support issues that are important to me both as a free software developer and as a land surveyor. These are issues like reasonable access to publicly funded geospatial data, understanding and cooperation between land surveyors and GIS professionals, and the responsible use of geospatial data.

The Sunburned Surveyor
Posted on 11:39 AM | Categories: