21 May 2010

actionscript based mailing labels

Click here to download:
pdfLabels.as (3 KB)

I created an actionscript class that creates mailing labels based on a data grid.  It is attached here.  Basically there is one method (pdfLabels.labels) that takes a data grid, and an object that describes how to concatenate the addresses on each line that looks like:

                       

 

{

                        "line1":["Ownername"],

                        "line2":[AptNum"],

                        "line3":["Mailingaddr"],

                        "line4":["city_state","| ","Zipcode"]                      

}

 

The “| “ will add a space in the middle, and “|,” will add a comma.  Basically anything that starts with a pipe will just add the next character and not treat it like a fieldname.  Feel free to comment and ask questions.  Good Luck.

 

29 Apr 2010

Long time no talk...

So it's been a while.  I notice my subtitle is News, and commentary.  Yeah right, I'm not helping anyone by not saying anything.  Look forward to a few posts in the next few days.  One about hiring an intern, and what I see as a big lack of skills geography students don't have coming out of school.  Another about ArcGIS Server and the Amazon S3 and cloudfront.  My impressions and estimated costs now that we have gone live with a very popular site.  The third is going to be about ArcGIS Server and the FLEX API and something we have been working on for a long time that is now going to be in a 1.0 version and available for purchase.  I am really excited about the last one and I hope some people have some good comments and feedback about all of them.  So... watch this space, I promise good things are coming.
15 Oct 2009

Map navigation is simple, DON'T COMPLICATE IT WITH "TOOLS"

In the past 6 months, I have worked on 8 different mapping applications and in all but one, I have convinced the powers that be to omit the old school style of map navigation "tools".

You know, these:

Media_http4bpblogspot_aqybl

I will be honest, in IE5, or before Google, Microsoft, Mapquest, and Yahoo all changed their navigation to the new style, these tools made sense. In 2009 they don't. Once I select a zoom in tool, and I want to pan, I never remember to switch to the pan tool, and I end up zooming farther than I want, then I have to go back, and then switch to the pan tool. Huge annoyance.

The ONLY argument I have heard in favor of these old school tools is this:

"The old version of *insert application name here* had these tools."

The old version of your car used leaded gas, the old version of your TV was in black and white, and the old version of your house had lead based paint and asbestos insulation. That reasoning SUCKS. If I can't click and drag at any time and pan around, your navigation is faulty. If I can't use my scroll wheel to zoom in or out, your navigation is faulty. See where I am going here?

If you are naive enough to think your users don't use any other map applications than the old version of your page with antiquated navigation tools, YOU'RE WRONG. Please get your head out of your ass, and move to the new navigation style. you'll never have to explain what a "pan" tool is again.

26 Aug 2009

Silverlight API and Bing Maps

Just finished up working on a silverlight API application using Bing Maps. This is the first major project I've worked on that used ArcGIS Online instead of ArcGIS Server and everything went pretty smoothly. The client's data sits in SQL server and we query the data using WCF services. I am VERY impressed with the speed and quality of the Bing Maps services, and I was pleasantly surprised by the Silverlight development process. We hit a few snags on some things, printing being the biggest, but had workarounds and got through it. If you are really interested I can send you a link to our demo server if you want to comment below but I don't really want to put the URL out to the public just yet.
16 Jun 2009

New ArcGIS Server App

I am just wrapping up a deployment for a county in PA. The link to their new site is here The URL may change and I will update this post if it does. It uses the ArcGIS Server JavaScript API. We developed it so it was completed customizable and configurable with one json config file. Next we are going to be setting up a wizard for editing the config file. We are hoping to be able to use this application core for a lot of clients in the future. Let me know what you think
20 Apr 2009

IGIC

I will be at the Iowa geographic information council (igic) conference in Waterloo, IA this week. I am also presenting on using ArcGIS server for public mapping apps on Wednesday. I know it's not quite the esri devsummit, but I will be tweeting about it using #igic from username adcon . Follow me if you're interested.
6 Feb 2009

ArcGIS Server on the iPhone

This Link goes to a test I am doing of using the ArcGIS Server JavaScript API on the iPhone(if you go to it in a normal browser, there will be errors, because the iphone events aren't supported). It only displays the map, and allows you to zoom in, out, and pan. I basically covered the map div with a transparent div that I can capture the iphone gestures on, and then manipulate the map.

To zoom in: double tap the screen, or do a reverse "pinch"
To zoom out: pinch your fingers together
to pan: drag 1 finger across the screen

I wish the touchchange event fired more often, so the panning was more fluid, but I'll take what I can get for now. Leave comments below on what you think.

16 Dec 2008

Amazon Web Services Map Cache Hosting

If you are using the JavaScript, or Flex API's with ArcGIS server you are getting your map cache tiles through the REST API interface. If you dig around through the folder structure on the machine holding the tiles, you will notice that the folder names that match the row and columns are not the same in the REST API as they are on the disk. For example /01/1.jpg from the REST api would be a different file name on the disk.

Every time the map is drawn using one of these 2 API's the ArcGIS server machine must translate /01/1.jpg into the same numbers in hexidecimal. That is not a really huge issue, but if you think about this, the machine has to do this roughly 10 times for every map redraw, and sometimes many more times based on the number of layers that are turned on, and the screen size. Multiply that times 20 users and that is a lot of requests going to the same machine that has to do all the queries, dynamic map redraws, geoprocessing services, etc. I wanted to remove this overhead on the machine resources, disk access, and the bandwidth of the ArcGIS server machine sooooo:

We loaded the tiles to Amazon's S3. This makes things MUCH faster for map redraws and removes a small amount of overhead to let ArcGIS server do the work that only it can do.

The following link was built using the flex api and everything including the swf and html page is loaded up to the Amazon S3 (what you are seeing will not make a single request to the ArcGIS server machine at all). Give it a try and let me know what you think, comment if you notice any slowdowns or other issues. (This can be done with the Javascript API too. )

Link

6 Oct 2008

ESRI Javascript API Application

We finished this site a while back, but I am just now getting around to posting it here. The client is hosting it themselves, and I am not sure if performance is suffering slightly because of the hardware it is on. Overall though, I am pretty impressed with the performance.

Carver County TRIP

25 Jun 2008

Functionality or Usability

So which is more important. I think in many GIS applications some folks are so impressed by functions they want as many of them as possible. How many functions do most users ever use? Does adding more functions take away from the experience?

Read this link to a letter Bill Gates sent about usability in windows. Pretty Interesting Stuff.

Give me simple intuitive functions all day long, if I have to think about how to use them... they better be the best thing since sliced bread.

Adam Conner's Space

I am a web application developer. Most of my applications are map centric, but most of the apps have much more functionality than just a map.