Leaving San Diego…

Posted by Dave Bouwman | Posted in Uncategorized | Posted on 30-07-2005

0

Well, another UC has come and gone. This one was similar in many ways to ones in the past – not enough sleep, more than enough drink, loads of sushi, information overload, and a great time. However, this year I’m leaving here really excited to be developing using ESRI products. I sensed a real dedication to the development community – developing tools to make development easier, and faster. And at the same time adding some very cool new features in the underlying software.
Meeting up with some of the other ESRI bloggers has been great (sorry you all could not make it out) – and I promise to post more about what I’m doing on a daily basis… starting now…

I got an email this morning that a member of my team now has draggable object-style DHTML/Javascript windows integrated with the Map Canvas server control we’ve been building, and that this happily lives in a DotNetNuke 3.1 module. These will be used to display results, TOC/Layer list etc. I’ll post a screen cap on Monday.

I’m also going to check out the free ArcWeb Services stuff and see if I can build out some objects to integrate it with my Map Canvas control. I’ll also try and get some demos up (no promises here) – we’re really busy with a deliverable due August 15th.

And finally, a big shout out to J Singh & Eagle technologies from New Zealand – good presentation, and very nice application – I’ll have a number of questions for you over the next few months. I’d also mention that that was the first presentation I’ve seen at any ESRI UC that actually talked about a development process. Speaking of this, I picked up the “ICONIX” book from the Spatial Outlet here, and have given it a breif read. It sounds similar to many of the Agile methodologies – skip the “high cermeony” items, develop in iterations and test test test. Sounds like RUP worked well for the NZ Post Project, so I’ll give that a look too. We’ve been using an ad-hoc agile methodology which more or less mirrors many of the items in ICONIX and RUP, but as our group grows, I’d like to have something a little more standardized so we can point new staff at a book/site etc to get up to speed.

Connectivty Woes…
I’m at the SDCC on Friday morning, and I’d expected the wireless to be pretty stable – few people etc. But it’s crap – up and down evey 30 seconds or so. Maybe they’re shutting it down. So – who knows when I get this posted.

No luck at the San Diego airport either – just T-Mobile has hot spots running $6/hr or $9/day. WTF? Why not make this a free service? How much bandwidth could the passengers at an airport possibly use? Maybe have a free hour? Nope – gouge everyone as much as possible. :-(

Finally posted this from home.

Developer Sessions on Thursday

Posted by Dave Bouwman | Posted in ArcGIS Devt | Posted on 30-07-2005

0

Road Ahead for Developers – ArcIMS and ArcGIS Server
I must say that this was a really really cool presentation. Nine people up on stage, a full room and it went smoothly. On the .NET side, they’re doing some really nice work with the IDE integration, and have built some great AJAX based infrasructure for client side interactions (the map tips contol just rocks – very nice work!). The Globe server is very cool, but the Geodata server (check out & check in of GDB’s) is something I could see my clients adopting much sooner. The Smart Client ADF looks very promising (but not much different from the demo I saw last year at the UC) – still it’s something I think clients will get onboard with pretty quickly.

Road Ahead for Developers – ArcGIS 9.2
Very good session on what’s coming up. Brian was spreading the EDN community gospel, and mentioned that they are looking at building a threaded comment section into the online help – along the lines of what I mentioned in a previous post – I think this will be really helpful.
ESRI is doing ton of work to make the development experience as streamlined as possible and a highlight for me is the .NET templates and wizards which will really kick start development. Euan mentioned that these may be released later this year for 9.1 as a download from EDN. This would be fantastic!

Another item of interest (or maybe I’m the only one who didn’t know about this) , but Engine at 9.1 has about 100 tools that come with it. At 9.2 they’ll add another 80 or so. These cover all sorts of things from symbol pickers to network solvers to feature editing. Looks like a very powerful kit for building apps – I’ll have to get it installed and find some time to play with it!

ESRI Image Server Session

Posted by Dave Bouwman | Posted in ESRI | Posted on 28-07-2005

1

On Wednesday morning I checked out the Image Server session, and I’ve attached my stream of consiousness thoughts below. I must say that on the whole this looks like some really cool stuff. It’s super fast, runs on relatively ordinary servers, and looks easy to use.
The release time frame they were talking about was late 2005…

  • based on Prompt Server
  • managed overviews automatically generated by system
  • process chaining – radiometric/projection/merging/pan sharpening on the fly
  • on the fly change bands etc. to compute different products on the fly 432, NDVI etc
  • huge savings of disk space by not having the preprocessed layers on spinning disks
  • handles partial datasets very smoothly, including updating – this would be idea for partial or staged deliveries
  • handles SRTM datasets (global dataset 40,000 tiles on disk) – on the fly hillshade/color ramps
  • scanned maps – direct from scanner with 9 georef ticks per sheet. each sheet is held as a separate tiff – looked really slick
  • sub sampling is done on a per-request basis based on the screen info on the client.
  • on the fly orthorectification from raw files
  • works on commodity PC’s – does not need a huge server put the data on the server’s disks – NAS/SAN not recommended
  • algorithms can be added into the system – wonder about on the fly modelling???
  • compressions can be done after the processing – allows images to be served to low bandwidth devices
  • integrated metadata showing processing path for the image (lineage for each request)
  • can run off raw digital camera files (uses IMU parameters to do on the fly orthos from raw images – did say that it may not meet requirements for accuracy – i.e. not “final” product – woulld be good to get data staged really quickly)
  • anything that can be georeferenced can be added in – scanned line drawings etc
  • service creation – very rapid if the data has good metadata
  • set up default processing options for a service – can be overridden by clients
  • runs on windows – other??
  • handles 12, 14 bit images etc.
  • Input data sources
  • - 1 – 32 bits per channel
  • - pretty much any raster file format
  • - SDE Raster, Oracle GeoRaster
  • - SDK for proprietary formats
  • Data is stored un compressed, processing run on raw imagers, then compressed (as needed) for transmission
  • Disks are cheap, so store uncompressed data, and save money by not having redundant datasets (products which can now be created on the fly)
  • each tile can have it’s own input processing (radiometric correction)
  • stored as XML, or database tables

Service has a default projection, client can request other projections

  • - Mosaic & Merge – Merge is very simple stacking. Mosaicing can use a blend across boundaries, or a seamline can be specified
  • - if you have overlapping imagery, you can request “the other” image
  • - can select “best” which will determine which is most nadir view point
  • - can also add field to database which can contol the moasic order (newest data, best, high sun angle etc)

Ability to add in better quality terrain model for specific areas – start with SRTM of the world, but with upgraded data in target areas Logo stamping, payment gateways etc as a process step.

Some of the fancier stuff requires extensions…

  • Ortho is an extension
  • feathered/auto cutlines mosaic is an extension
  • Image compensation algorithms

Scalability

  • - multi-servers load balancing for a single service
  • recommend having disks local to the server – not NAS/SAN b/c of network issues and caching. Image data will overwhelm the caches, degrading it all (not all SANs)
  • runs on IDE disks w/ no problems
  • cascading servers

Different licensing schemes for deploying data to clients. There is a license which allows you to create a “deployment system” (i.e. it can’t ingest any more data – a good delivery mechanism)

Server monitors all requests determine areas/products which get a lot of requests. The admin can then tell the server to cache those areas/products to increase performance.
Clients – any ESRI product, mess of other clients AutoDesk, MapInfo and Open API for other use
These are my question at this point…

  1. WMS Integration mentioned at PromptGeo site.
  2. Is there a coverage service (WCS) option?
  3. Is there a web service API? (I think this may have been mentioned, but I missed it)
  4. What version of ArcGIS will be able to connect?

.NET SIG and Blogger Meetup

Posted by Dave Bouwman | Posted in ESRI, General | Posted on 28-07-2005

0

These two events may end up being the hilights of the conference for me. The .NET SIG, led by Art Haddad looks to be the beginning of some really great changes for the professional developers working with ESRI products. James Fee posted some notes about what went on during the session, but the things I’m really excited about are an ESRI Developer (EDN?) conference, and (hopefully!) a “GotDotNet workspace” type of area on EDN.

EDN Conference
As I mentioned in the session – I think that having a mix of ESRI and user presentations at the EDN conference would be really good – trying to focus on “best practices”, or innovative techniques etc more than the vertical market/industry background of your project. And if it was 2-3 days, many more companies could send more of their development teams, instead of one or two representatives to the “User Conference”. This would be fantastic.

Workspaces
I think we can all agree that ArcScripts is a nice way to share some code, but not exactly a platform for collaborative development. While we could set up projects on the GotDotNet workspaces, or put things up on SourceForge, it would be nicer (and likely easier) if this was integrated into the EDN site, and possibly into the search (an indexing of “community samples”?) so that you could find these projects as well when searching for ITopologicalOperator (for example).

I believe Art also mentioned something about allowing annotation/markup of the EDN content/site, but this was not elaborated on. Would this be via wiki-like functionality? I think this would be a great addition to the site – there certainly are times where I’ve found the documentation lacking, and if the developer community could add comments into the help (or a parallel wiki) we could help improve the doc, and at the same time get the benefit of others experiences without having to dig through 1000’s of forum posts.

Another request I’ve had for some time is some kind of limited access to the internal bug database – this would save a lot of time if we could simply search to see if it’s a bug with a workaround before spending a ton of time trying to sort it out ourselves/calling support etc. Likely a tall order, but if you don’t ask, it definitely won’t happen! The blogger meetup was also great – very nice to meet everyone, and put a face to a feed. It was very cool to see a real lot of genuine enthusiasm from everyone out there, and unfortunately I had to bail to attend a party my company was throwing for our clients – oh well, someone has to pay the bills. Hopefully I’ll run into you all again in the last days of the conference, but if not, there’s always RSS.

Jack’s Talk – Starting off the UC Right

Posted by Dave Bouwman | Posted in ESRI | Posted on 27-07-2005

0

[A day late b/c I ran out of battery power before I could post this from the convention center- oops!]

I’m sure that some other people have posted a blow-by-blow of the Plenary session, so this is just a collection of thoughts on what I thought was impressive, or will impact me as a developer…

Image Server
The breif synopsis on this is that it reads raw data files, processes the data on the fly (including orthorectification), and spits the data out to your client. And it’s going to be OGC compliant. The demo was really slick. Apparently this is some sort of ESRI re-branding of another product – runmor is that it will ship pre-9.2 (possibly by year end). I’m going to hit the Image server session Wed morning for more info.

ArcIMS .NET “site author”??
I will agree that this is a HUGE improvement of the previous site builder. It’s basically a code-gen system with a few settings and it chunks out a .NET website with a canvas, toolbar and other very nice DHTML controls. However, the demo was a little cheezy with the pseudo-Google-pan – but it was clear to anyone that they just returned an image that was larger than the div, and were moving it around inside the div. Still a very cool effort, and a bummer for all those .NET developers who have built their own connectors, canvas and toolbar controlls to fill this gap. Still, let’s hope they will open the source the connector, or at least have a rapid patch cycle to deal with bugs. This was my beef with the previous ActiveX connector – it had bugs and they just never fixed them. Anyhow – I’m sticking with my connector and controls for a while yet. (besides – I built them to be agnostic of the back side – I can work with WMS/ArcIMS/Arc Web Services – whatever can return a map)

ArcGIS Server everywhere
Not sure if this is a push to drive sales of this, or just done to showcase how it can be integrated, but AGS was in nearly every demo. Heck I’d love to do more AGS work, so I’m all for everyone getting it, and then needing some consulting to built out the services. :-)

ArcExplorer with “globe” support
In what seems to be a very thinly veiled response to Google Earth, this “update” to the ESRI free data viewer is slated to be released in th 9.2 timeframe. Cool. They had to address this, and my main question on this is how expandable is it? Can 3rd parties add in specialized tools? Will it have a subscription model built in? I know that geographic data “wants” to be free, but that’s not realistic, and data providers need to have a revenue stream based around this. I think that this ability would make it more widely adopted – or at least as a option under consideration.

Beefy Hardware
There is no question that the demos were impressive both in functionality and performance. Only once did they point out some of the hardware – and Blade server running with 6 blades installed – very cool – where can I get one? (hardware donations gladly accepted!!) . I do believe that you should run the beat gear to show off your stuff, but it may be useful to note what it runningon from time to time. If it takes a $100,000 box/raid to run something for the 1 person demo, what does it take to run for 100 users?

Geodatabase Versions
This was breif, and I’m going to seek much more info on this, but it sounded like the geodatabase family is getting a face lift. With 4 versions now – file based, personal, workgroup and enterprise, it’s going to allow more flexibility in deployment. Apparently the personal and workgroup will come with an embedded DBMS – so they will actually be “servers”, and not a file-based DBMS a la Access. I’m guessing this was needed to support the replication which is also coming at 9.2. This seems pretty ambitious for a dot release, but we’ll see.
I had dinner with some ESRI folks who side that at this point the new “personal” and “workgroup” versions are running on the new “tahoe” version of MSDE, although there was much waffling as to if this is the final release architecture.

Google Maps Future? Prognostication starts now!

Posted by Dave Bouwman | Posted in Uncategorized | Posted on 20-07-2005

0

I’ve been thinking about what a good job Google has done getting their API out into the hands of the public, and how the development community has really run with it. This is all well and good, and while Google is rolling in captial now, they do need to make this pay. The question is how? MapQuest and TerraServer are not known as being a pot-o-gold, so what does Google have up it’s sleeve?

Being an ad-driven company at this point, it’s relatively safe to speculate that it will continue in the same vein. They even say as much on the API page

The Maps API is a free beta service, available for any web site that is free to consumers. Google retains the right to put advertising on the map in the future. Please see the terms of use for more information.

So then the question is how will they do on the maps, and when will they implement it?

Prognosticate(How):

I suspect that when they start it, we’ll see additional markers show up on the maps. Since they control the server side, they just need to send along a little more data, and pop! extra markers on your map. Hopefully they will be relevant to the site (should be simple since they already know the context/content of the site).

Since these will be at least somewhat invasive, I see Google giving the site operator the option to “buy your way out” of the ads. Who can say what that will cost? Will it be substantially cheaper than ArcWebServices?

Prognosticate(When):

I think Google is waiting until there are a large number of fairly robust sites/apps built on the API. This gives them momentum and mind-share. It also allows them to work out the details (the use of an API key up front is great – they already have a subscription system built into it!), and suss out what the market/community will accept.

By the time the ads drop, developers have invested time, companies have made decisions to use the service/build on top of it, all the while knowing that the adds “will come”. The exact timimg can have an effect on ESRI. If Google pulls the trigger too soon, or the ads are too invasive, or the price to remove them is too high, the development community may back off. And if ESRI / ESRI consultants can be there with compelling alternatives (clearly they will have more powerful functionality, but can they match the usability?) they may be swayed.

All this leaves me thinking about how to go for “Google-like”, but without Google? I have not had a chance to play with the code behind this, but I suggest checking out the maps page at CivicActions.net for an open source “tile-server” solution along the same lines. Sure you don’t have the entire world, but most clients only care about their data anyhow. And no ads…

So – who knows where this will go. I’d be very interested in other peoples opinions on this though.

ESRI ArcIMS HTML View Survey

Posted by Dave Bouwman | Posted in ArcIMS | Posted on 19-07-2005

0

Ryan Olson has posted about ESRI releasing a survey for users of the ArcIMS HTML client.
While I have not used this much in the past, I do have some ideas for the future, Ryan does note that this is a chance to influence a re-design of the HTML client. And I do have some ideas for that…

First off, lets all agree that the current HTML client is a javascript nightmare. No slight to the folks who wrote it, or people who’ve made it do some very cool things, but really, it needs some serious updating.

So, here are my suggestions for the new version…

  1. This should be obvious – use AJAX. Google has set the bar for interaction, and now we all have to go there. ESRI included.
  2. Use Javascript objects. This is one of the nicest things about the Google Maps API – happy little objects all over the place. It also makes it easy to fold into other apps – which is one of the biggest issues with the current ArcIMS HTML client.
  3. Use javascript “tool classes” to add functionality to the system. Brian Flood has a breif example on his post about extending Google Maps
  4. This may be reaching, but if ESRI could integrate an option for a “tiling” service which could leverage the CivicMaps open source Google-like panning/zooming. The page at civicactions.net describes how to do this with MapServer, so maybe ESRI should look at this too (or leave something on the table for us consultants to build :-) )

New Skin…

Posted by Dave Bouwman | Posted in Uncategorized | Posted on 13-07-2005

0

I was getting plenty bored of the first dasBlog skin I built (or should I say slightly modified), so I spent a little time this weekend cooking up this one. Granted it’s really just CSS shuffle of the standard “discreetBlueBlog” skin that comes with dasBlog. But I have to give some props where due…

Color scheme was inspired by this CSS Zen Garden entry… This is a great place to look through to get ideas for site designs.

Font for ‘davebouwman.net’ and the little fellow off to the right came from Tom Murphy at tom7.com. Tom gives away a whole bunch of different fonts including some “smilies” – some of which I’ve integrated…

Happy – :-)

Very Happy – :-D

Wink – ;-)

Open mouth – :-o

Frown – :(

If anyone actually reads this via a browser, let me know what you think of this…

ArcGIS Server & Machine.config

Posted by Dave Bouwman | Posted in ArcGIS Server | Posted on 12-07-2005

1

So I go to install DNN3.1, and boom – IIS pukes with this helpful message:


Configuration Error
Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately. Parser Error Message: Type ‘ESRI.ArcGIS.Server.WebControls.ImageHandler, ESRI.ArcGIS.Server.WebControls, Version=9.0.0.4, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86′ cannot be instantiated under a partially trusted security policy (AllowPartiallyTrustedCallersAttribute is not present).


Lovely. At least it notes tha the issue is in machine.config – where I see this…

Following this, a little Googling to find out that this message means that the ESRI ImageHandler can not be run with any other trust setting than FULL. And since it’s registered in machine.config, this handler is loaded for all sites on your machine. While this is “nice” for some people, and avoids having the ESRI web controls have to try to edit the web.config file for any project they are used in, it is a PAIN for anyone who want’s to run in a partial trust environment, which DNN3.1 wants.

Initially I tried to set the trust level for DNN3.1 to “Full”. However, this did not work. Then I tried to remove this httpHandler in the DNN3.1 web.config, but this still did not work (curious, but I did not spend a lot of time tracking this down). Finally, I commented out the line in the machine.config, assuming I can add it back in using web.config for the sites that actually use it. I did not test this because at this time, I’m only building web services with ArcGIS server. While I was writing up a post to the ESRI forums, I thought about this – what if the ESRI .NET ADF is hard coded to pull images from http://HOSTNAME/ESRI.Web.Controls.MIMEImage.aspx??? If that’s the case, then it would seem that this would need to be in the machine.config???
Link to posting on ESRI Support Forums


[UPDATE 7-18-05]
Art Haddad posted an answer in the ESRI forums.
All you need to do is stick validate=”false” into the line in the Machine.config file, and it all plays nice. Thanks Art!

More Google Maps Stuff

Posted by Dave Bouwman | Posted in Uncategorized | Posted on 12-07-2005

0

The more I look around, the more I’m finding re: Google Maps. This is a really interesting situation for the GIS industry – Yahoo & Google are really getting “where” into the minds of the masses, and now we (GIS software developers) need to provide solutions that build on this level of interactivity.

Here’s a blog all about Hacking Google Maps http://googlemapsmania.blogspot.com/

Our response to Google Maps…

This has been a large topic of conversation on our team – how much do we try to Google-ify our GeoPortal? For sure we’re going to use AJAX to get the partial page refreshing, and a more interactive UI. A while back I wrote about an ASP.NET server control for a “Map Canvas”. Well, today I jumped back into that, tore out the old event handling code (which relied upon a postback to the page), and slapped in some proof-of-concept code for using AJAX.NET to fire server side map refresh events. It’s going very well, and should present very few problems. We’re still a ways off from having a demo site up (I don’t have it linked to a map server connector yet, so I’m just swapping in random images etc), but hope to have a working demo in the ESRI UC timeframe.