Upcoming

2014 Esri International Developer Summit (Day 1 Recap)

dev summit

Another awesome Esri International Developer Summit is underway and we have compiled a recap of how the first day went. The following details were submitted by some of our geospatial developers and architects who attended the summit: Jason Worrel, Jeff Galang, Steve Mulberry, Jamie Phillips, Jared Stark, David Marley, Katie Reiter, and Pete Mahoney.

We hope you enjoy and be sure to check out our Day 2 recap that will be published tomorrow!

Psst...We're hiring Geospatial Developers! Check it out and pass it along to anyone you know who might be interested in coming to work with us.

Summit Expectations

Jason: I was interested in experiencing the conference for the first time and was excited to be here. I previously read summaries and blogs about the event but was curious how it would be in person.

Jeff: The first day of the summit typically sets the tone for the rest of the week so I expected to get a sense of that tone and, unfortunately for me, it wasn’t very clear. However, as the new guy here at GISi, my main goal was to meet my fellow colleagues and reacquaint myself with past connections.

Jamie: I arrived hoping to learn more about Python and the new .NET Runtime SDK.

David: I looked forward to connecting with my coworkers as well as hopefully seeing some old friends from the Esri GIS community; it was successful on both fronts. We're a company comprised of many work-at-home developers spread across the country so it is great to see (in person) the people I work with regularly here at GISi.

Katie: This is my first Esri Dev Summit, so I was excited to finally get into town and be able to catch most of the afternoon sessions. My goals while out here are to learn as much as I can about Esri’s Javascript API and all of the awesome things you can do with it, learn about Esri’s new Web App Builder and all of its capabilities, enjoy the amazing Palm Springs weather and not get sunburned at lunch and finally - WIN dodge ball!

Pete: I’m really looking to learn about Esri’s JavaScript API for ArcGIS. As a developer who’s worked mainly with rich client apps like Flex and Silverlight, JavaScript is new to me. But it’s clear that JavaScript is the way of the future so excited to jump in here and learn some new tricks.

Workshops and Sessions

Jeff:

Esri on GitHub: How to Participate in Open-Source Projects (Allan LaFramboise, Nick Furness) – This was a general overview of Git including how to fork, clone, branch and submit pull requests. They also previewed some of GitHub’s UI features followed by some demos of contributing to Esri’s repos.

Development Strategies for Building Mobile Apps - the Great Debate (Dave Cardella, Julie Powell) – The classic mobile web versus native application debate. Enough said.

Modular JavaScript (Derek Swingley, Matt Driscoll) – This was an overview of creating classes in Javascript including prototypical inheritance, Asynchronous Module Definition pattern, and creating reusable dijits with Dojo.

Rethinking How You Style Your Maps (Jeremy Bartley, Jim Herries) – They displayed some new features of the JS API relating to feature layers and the many ways to display data in a meaningful way.

Getting Started with ArcGIS Runtime SDK for the Microsoft .NET Framework (Rex Hansen, Morten Nielsen) – This was a high-level view of the new Runtime SDK that enables a single experience for developing runtime apps on Windows Desktop, Windows Store, and Windows Phone. Key points include the use of view models and models such that core .NET code can be reused with different XAML views.

JavaScript Tooling - Love Your Development Workflow (Josh Peterson) – This was an introduction of various JavaScript tools, including IDEs, package managers, task tools, CSS preprocessors, and others.

Using Esri Leaflet to Create Lightweight, Modular Web Maps (Patrick Arlt) – They covered Dojo versus a lighter-weight library (Leaflet). Demoed Esri plugin of Leaflet.

Jason:

Esri on GitHub: How to Participate in Open-Source Projects (Allan LaFramboise, Nick Furness) - I learned how Esri has pushed many of their projects to open source and are available for contribution and collaboration on GitHub. Also, it was let loose there was an Easter egg on their GitHub page, so I spent some time tracking it down. Learning that Esri Leaflet and Terraformer were available for me to fork and clone was exciting.

Introduction to ArcGIS API for JavaScript (Andy Gup, Derek Swingley) - I learned the new release would be available shortly after the conference. Also the demonstration on how to style popups was very informative. They performed all the demos from the Esri Sandbox available for all their samples, which was a powerful tool allowing for quick testing right from the browser.

Getting Started with ArcGIS Runtime SDK for iOS and OSX (Nicholas Furness, Albert Pascual) - Here I learned about the new offline feature editing and synchronization. Seeing a live demo of this was impressive. I especially liked how the device was able to request a package tile dynamically.

Rethinking How You Style Your Maps (Jeremy Bartley, Jim Herries) - I enjoyed their presentation, especially showing how to add stops to your renderer and the DotDensityRenderer. They showed off some really cool dynamic maps.

Introduction to Portal for ArcGIS (Derek Law) - Here I learned about Portal, and what piqued my interest was the REST API exposed for the Portal administrator. Using scripts, you can remotely configure your server.

GeekSpeaking (activity) - This was a blast. We got to learn about many different products and projects being pursued or utilized by Esri. The ArcGIS on Fire was particularly interesting, as the demo was using firebase to add data to info popups and also points on the map in near real time.

Steve:

Esri Location Analytics – An Overview of the Road Ahead (Art Haddad, Brenda Wolfe, Scott Ball) - Esri reinforced its commitment in supporting business systems through the new Esri Maps Framework or EMF. This includes continued support for Microsoft Office; Excel, PowerPoint, SharePoint and Dynamics CRM as well as IBM Cognos and introducing support for MicroStrategy, SAP Business Objects and Salesforce soon to be released.

Integrating Enterprise Business Systems with the Esri Location Platform ( Mark Mallany, Patrick Brennan, Art Haddad) - Esri Maps Framework is a layer of abstraction that sits between your business systems or applications and the Esri JS API. Esri demoed the new version of Esri Maps for Office. No one uses WPF but this new Esri Maps Framework has the ability to disconnect the map from within Excel so it doesn’t obstruct the data sheets. Not to mention allowing multiple maps for data visualization...so look for the release of this new framework soon.

We were introduced to a new project, code named Merlin. This of course is subject to change and was publicly announced…so no trade secrets revealed here. This new project will focus on bringing Data Enrichment capabilities within the security of your corporate network avoiding the need to go outside your firewall to extend and enrich your data. Esri has developed a patent pending point weighting system for aggregating demographic data at specified geographic levels to datasets that span the world. It will probably be an extension to ArcGIS Server, Portal for ArcGIS and will be deployed with the data appliance. Lots to flush out still but it looks very promising for those clients that need to stay with their secure environments.

Jamie:

Developing Tools with Python (David Wynne, Jon Bodamer) - I learned about Python Toolboxes and the better user feedback for validation of inputs that those python toolboxes provide.

Offline Geocoding with ArcGIS Runtime (Brad Niemand, Christa Hash) - I learned how offline geocoding works in the runtime and how to create and clip a locater for use by the runtime.

Offline Routing with ArcGIS Runtime (Thomas Dunn, Nandini Rao) - The coolest item from this talk is that Esri supports historical traffic data on the network and the runtime routing will take this into consideration.

Getting started with the ArcGIS Runtime for the Microsoft .NET Framework (Morten Nielsen, Rex Hansen, Mike Branscomb, Antti Kajanus) - Lots of cool features coming in this release. There is going to be a built geometry engine so working with geometry should be improved. Disconnected editing features have been added with syncing capabilities. Now your ArcGIS runtime applications can use AGOL for licensing. There is full MVVM support built in and now the Map object is model and there is a separate MapView object for use in your XAML. You can toggle between offline and online modes. There is a generate tile cache task so you can create tile packages on fly. You also have geodatabase sync task.

Jared:

Getting Started with the ArcGIS Runtime (David Cardella, Euan Cameron, Will Crick) - This was a great session about the different runtime SDKs. There has been a focus over the last year to standardize the different SDKs. For example the iPhone and Android SDKs would evolve independently of each other and did not have much in common. A big effort has been made over the last year bring more consistency to the APIs. They announced the release of offline capabilities, allowing apps to take data offline and then synch when a connection is restored. They also spoke about the roadmap for the SDKs and planned features. One such feature is the capability to add 3D to the various SDKs. As planned, 3D capabilities would first be released in the Windows SDK, then Android, and then iPhone.

Introduction to ArcGIS API for JavaScript (Derek Swingley, Andy Gup) - This session was a great starting point for working with the JavaScript API. There was a walk-through of creating a simple app and a demonstration of the API documentation found here. The presenters also demonstrated the “sandbox” are where sample code could be quickly executed to see results. They also brought up some good points for increasing the performance of JavaScript applications, which included:

  • Reducing the number of layers
  • Setting custom scale dependencies
  • Generalized the features to use less points
  • Reducing the query extent by zooming in
  • Reducing the number of attributes

One more tip that was presented was using the methods Console.time and Console.timeEnd to help performance tune JavaScript execution speeds.

David:

Development Strategies for Building Mobile Apps - the Great Debate (Jeremy Bentley, Will Crick, David Cardella) - The premise of the session was a “spirited debate” on whether web-based or native SDKs are better for developing mobile applications. This session was very well attended. The take-home message was that neither is “better” in every situation, that there is no one answer – it is a matter of what your goals and intentions are with the application, as well as what resources you have at your disposal for developing mobile applications. The talk was broken into the following areas: Capabilities, Cost, Performance, Deployment, User Experience – with discussion about the merits of web or native for each.

One item from this session: JavaScript API, check out Pixel Image Blending or Canvas blending – instead of showing a Feature Layer above a basemap with semi-transparent fills, Pixel Image Blending actually merges the feature layer symbology into the basemap image on the fly. The end result looks as if the map was cached that way. Much more beautiful cartographic result that separate layers.

Architecture Best Practices for the ArcGIS Platform (Dave Wrazien) – Main message from the talk: consider and use architecture best practices in your GIS deployment, in order to maximize return on investment. The talk focused on best practices across three areas: People, Process, and Technology.

The presenter noted the 5 primary ways people interact with Data:

  1. Data Management – Collect and organize data
  2. Analysis – Transform data into information
  3. Field Enablement – Get information into and out of the field
  4. Visualization – Disseminate information and drive business decisions
  5. Constituent Engagement – Get feedback (for example from the public)

Groups that focus on and use all 5 of these consistently see the best ROI for their GIS investment.

Katie:

Rethinking How You Style Your Maps (Jeremy Bartley, Jim Herries) – This session was all about visualizing data on maps, bringing value to datasets. They used one dataset and presented it using a couple of new renderers available in the ESRI Javascript API (version 3.9 – to be released next week!). Their demos showed that every map has its sweet spot and what visually works for one dataset doesn’t necessarily work the best for another. This session proved its point that selecting an appropriate renderer and styling for a map is crucial to turn raw data into useful information that you can be proud of.

Development Strategies for Building Mobile Apps - the Great Debate (Dave Cardella, Julie Powell) – This session was packed – standing room only and it didn’t disappoint! It was an open debate discussing the pros/cons of web vs. native apps for mobile platforms. Both sides presented their points convincingly but in the end it still boils down to the individual needs of each application. They split the implementation patterns into 4 types: web, hybrid (native shell/web UI, i.e. PhoneGap), native, multiple and mainly just discussed web and native. Ultimately there is no right or wrong answer; you just have to find the solution that works best for your applications needs. Responsive web apps are obviously the simpler solution and can be built to visually look and feel just like a native app if done properly, but native has its advantages and will ultimately give you the best possible app for each device.

Speedgeeking - Two words – Free Popcorn! This was a fun event to hear a little bit about a lot of topics. The presenters were spread out within the room, each at a small bar-like table, and had 5 minutes to present their topic before the cow bell rang (yes, they really had a cow bell) and you moved to another presenter. My favorites out of this one were Bootstrapping your Map, one about JavaScript development patterns, and ArcGIS on fire. ArcGIS on fire demonstrated using fire base database to very quickly update large amounts of data. It was pretty sweet (see below).

Pete:

Creating an Effective GIS Technology Strategy (David Wrazien, Andrew Hendrickson) - This session (like another later in the day) was aimed at giving folks high-level advice on how to deal with implementing systems. For example, following best practices like having a staging area to develop that is identical but isolated from production.

Getting Started with ArcGIS Runtime SDK for iOS and OS X (Albert Pascual, Nicholas Furness) - Albert and Nicholas swapped the display back and forth between iPhone and Mac demos of similar functions. Here I learned that the 10.2.2 runtime was released on Friday – good news. The main steps to use this API were presented at a high-level as:

  1. Connect
  2. setup a web request (parameters) and
  3. get results.

The thing that might be new for thick app developers is that step 3 is an asynch result – kind of exciting. It was neat to see how this new technology can be used to request and use offline data (the offline API is the buzzword).

Developers.arcgis.com: Getting Started Building Your App (Patrick Arlt) - This session was fast and furious. This was in the demo theatre and the main idea was authentication to ArcGIS resources. The presenter displayed how to authenticate on behalf of the user without requiring login using JavaScript. This can also be accomplished in other runtime SDKs as well.

Introduction to Portal for ArcGIS (Derek Law) - Derek introduces Portal as a technology that’ll revolutionize the way we get GIS data to the masses. Why? I think of it as kind of a buffet table of GIS data and apps – a buffet that looks usable to non-technical folks where before only developers and analysts could understand how to get at this stuff. Now to me, it can be confusing to talk about Portal and ArcGIS Online capabilities and separate the two. I think of Portal as ArcGIS Online in the private network – you can do similar things with both. Derek laid out the three main types of configurations of Portal:

  1. Registered ArcGIS Servers
  2. Federated Servers and
  3. Hosted servers.

At a high level, what you decide is influenced by your authentication model and how tightly coupled you want your Portal to be with your ArcGIS server. Derek also showed some powerful python that is available for Portal Server Admin.

Architecture Best Practices for the ArcGIS Platform (David Wrazien, Andrew Hendrickson) - This was a great high-level talk that discussed system implementation from the view of three main components:

  1. People
  2. Process and
  3. Technology

Andrew says Esri is attempting leverage all the online identities we have to make it easier (less logins) to authenticate and get to the apps and data our users want. If it’s not easy, folks wont use it. He emphasized several best practices for process: Standardize on governance of the system, how you develop, how you deploy, the technologies you use, implement technology standards, rapidly prototype. On the technology side, some suggestions: consider making separate systems for different business systems (analysis vs. visualization).

Overall Messages and Themes

Jeff: To some extent, JavaScript and Open-Source are trending especially with the keynote speaker on Wednesday (GitHub CEO). This is the general direction of web development in general and Esri is on board (albeit a little late).

Jason: Overall I definitely picked up on a focus of GitHub being used to share and collaborate on projects. The developers giving presentations talked up the tools and projects available on Esri’s GitHub site and were likely behind the move for a collaborative coding effort.

Steve: We were shown and demoed a plugin to leaflet, which is a set of lightweight tools for working with ArcGIS Server. This set of tools is an open project managed on GitHub. The goal is to complete the initial development of the first release and have it ready buy UC this summer. Also, Esri is working hard on expanding its services and methodology for its live data feeds. They are looking to move these services to ArcGIS Online later this year with abilities to apply GeoEnrichment capabilities and provide predictive feeds. Follow the progress through the community page at ArcGIS.com.

David: There seems to be a real emphasis on ArcGIS as a platform for enabling spatial capabilities throughout the Enterprise. This is certainly not a new concept, but one that’s strongly emphasized this year. Also, 10.2.2 Runtime SDKs just released Friday with offline capabilities. The offline capabilities have been much anticipated for two years, so this is a big milestone.

Concluding Thoughts

Jeff: There seems to be a lack of advanced and/or in-depth sessions. Rather, high-level overviews are the norm but hopefully as the week goes on, more detailed sessions will prevail. This trend may be a result of the increased attendance at the summit.

Steve: Overall a great first day of technical sessions and catching up with new co-workers and old Esri friends.

Jamie: The day was a short day for me, but so far what I am hearing about the new .NET SDK is very promising and should simplify development so we can focus on solving the business problems.

2014 Esri International Developer Summit (Day 1 Recap)