ArcGIS is Esri's complete system for creating, managing, analyzing, serving, and displaying geographic information. This session will briefly introduce the ArcGIS platform, then concentrate mainly on exploring the toolkits, APIs, and resources available to developers. With these tools, developers can create and customize a wide variety of applications for the desktop, mobile devices, the web, as well as customizing the integration of ArcGIS throughout the enterprise.
00:01 Andy Gup and I am Jim Barry with Esri in Redlands. We're with the Esri Developer Network team.
00:07 And we're going to take the next hour, I guess, to go through kind of an overview of ArcGIS for developers...
00:16 ...where our goals today are to cover all of ArcGIS.
00:18 This is to answer the question, Can someone just tell me everything that's available so I can at least know what's there?
00:26 So this is really a familiarization session to start off the week and to answer the questions...
00:31 ...What is there? What can I do with it? and What resources are available?
00:34 We're not going to dig too much into the how to do things; we're going to leave that for other sessions...
00:40 ...that can go into specific topics and...and do a real deep dive.
00:43 There's just...there's just no way we can hit the how on...on all of that in one session.
00:48 But that has happened a lot where people say, you know, I see a lot of specifics, but you know...
00:53 ...I'd like to make sure I understand the whole landscape so that I can pick the tools that are going to work best for me.
01:00 And then...and then, most importantly, how do I get started?
01:03 So if you've been using GIS, or ArcGIS, or you saw the plenary yesterday, you understand the why...
01:08 ...of why we use GIS and what it can do, and...and...and what we're going to cover is...is the what, not so much the how.
01:16 So, who are you? I'm going to hit this slide real quick to make sure that...that you...you believe you're in the right room...
01:22 ...and you're making good use of your time.
01:24 If you're an experienced application developer but you happen to be new to ArcGIS, this is a good session to start with.
01:30 Also if you are a more advanced GIS professional but maybe you're new to leveraging developer tools...
01:37 ...you've tinkered with some of them, but you just kind of want to know what's the whole landscape and...and...
01:42 ...and what's there for me at 10.
01:45 Or maybe you're in management or you're a project lead and...
01:47 ...and you kind of want to know the capabilities of the platform from a developer's perspective...
01:51 ...how can you develop with these tools and customize, this is a good session also.
01:56 If you're more advanced or more experienced in any of these areas...
01:59 ...then you probably want to hit the metadata session down the hall or something.
02:04 But I...I just wanted to make sure that we don't...we don't cut things too light for you.
02:09 So what we're going to cover is ArcGIS, not as a GIS professional workstation but as a developer toolbox or developer toolkit.
02:18 We're going to look at desktop development, desktop application development that you can do with [ArcGIS] Desktop...
02:24 ...with [ArcGIS] Explorer and with [ArcGIS] Engine.
02:26 Also touch on geoprocessing from a developer's perspective; also the geodatabase.
02:31 Then Andy's going to take a few minutes and go through client/server applications...
02:35 ...how to build server applications that serve map services and...and map...and GIS functionality...
02:42 ...and also client-side development that taps into those services using mobile applications and Web applications.
02:48 And then finally, I'm going to sum up by going through a huge set of the developer resources that are available to you.
02:54 It's not...the way we see it, it's...it's not enough to just have a bunch of DVDs with software.
02:58 What kind of develop...what kind of resources are available for you to be most successful...
03:02 ... so that you can get up to speed quickly and get them...and get the most out of these technologies.
03:09 So to start with, what is GIS? We saw that a little bit in the plenary, if...if you're new to...to GIS.
03:14 And, you know, it's just a...a way to...to manage map data and to create maps and do spatial analysis.
03:21 It's more than just visualizing maps.
03:23 I mean, back in the day we had plastic Mylars of layers, and then it would be your eyes that would do the analysis.
03:30 Well, GIS can do that computational geometry that's necessary in order to...to process and really learn about...
03:37 ...about the world around you by...by doing hard analysis on that.
03:40 So ArcGIS, we look at it as a collection of data and functional services that are being viewed and manipulated...
03:48 ...by a set of windows, either Web clients, mobile clients, or desktop clients, in order to do these things in the middle.
03:55 To collaborate, to discover, to analyze.
03:58 The...the What Is GIS section of our Web site is a really nice overview.
04:03 It's just a few pages but kind of gives you, in a nutshell, what that is.
04:07 There's also GIS.com that you can also, if you're new to GIS but you're an advanced developer...
04:13 ...this the...a good way to kind of come up to speed on what GIS can do, some of the basic term...terms and terminology.
04:22 Okay. So let's just start with [ArcGIS] Desktop. I mean, this is the GIS professional workstation.
04:28 This is basically everything Esri has with regards to technology for managing and manipulating data...
04:35 ...it can be found in ArcGIS Desktop.
04:37 In fact, if you look at the five pieces of...of GIS, software and hardware, data procedures, and people, you see it all right here.
04:45 We've got our layers on the left; some are coming from a local hard drive, some are coming from Web services.
04:51 We've got toolboxes and data management tools on the right.
04:54 We've got a bunch of tools on the top for...for the user that's driving the system to use...
05:01 ...and...and this is...is basically the workstation that GIS professionals use every day.
05:07 Many of them use it with very little customization and certainly no coding.
05:11 But that's not why we're here. We're here to look at ArcGIS Desktop from a developer's perspective.
05:16 What can you as developers do to make better applications, make applications that are tailored to your needs?
05:24 Well, there's a few ways to do that from...for developers.
05:27 One is that ArcGIS Desktop is extremely customizable. We'll just start right from the ground. Very customizable.
05:33 If I added every menu, every button, and every tool that was available to ArcGIS Desktop, it would fill up that entire screen.
05:41 So it's very important that you really customize the toolbars and the tools and the menus...
05:46 ...to fit your workflows and to fit what you want to do with GIS.
05:50 The next is...oh. And...and so that's what that looks like. Just a little snapshot.
05:56 There's some default tools and toolbars that are there already that you can strip away.
06:00 There's new toolbars through the Customize dialog that you can add...
06:04 ...and there is...and then there's a dialog that you can use to do that too.
06:09 Each GIS professional can tailor it to their workflow...
06:13 ...but you can also create standard interfaces that can be used across your organization.
06:19 And so that's not really a coded solution, but that's okay too. That's customizing; that's developing.
06:26 Had a developer at the DevSummit in March tell me once, it was pretty...pretty neat, saying...
06:31 He said, "The best line of code is the...the one that you don't write"...
06:36 ...because it doesn't require any time to define, it doesn't require any testing, and it can't introduce any what? Bugs.
06:44 So if you can get away with customizing or developing an application without...without writing a line of code...
06:49 ...that can certainly help you a lot.
06:51 But if you are going to write code, and you'll need to, we have classic COM development.
06:57 We have about a hundred of these object models that contain about a thousand object classes...
07:02 ...thousands of properties and methods and defined interfaces, and it's all documented there.
07:08 And it's an in... In the beginning of ArcGIS Desktop, this was really the only way for developers to interface...
07:15 ...to...to grab the components and use them, where to use these very fine-grained, esoteric object classes and interfaces...
07:25 ...and it was doable.
07:26 And there was training, but it took...you know, the learning curve was...was pretty steep.
07:30 But one of the neat things about COM, even though it's an older standard, an older methodology...
07:36 ...is that we designed the system to be extensible.
07:39 So we have a class that defines...that...that exposes an interface.
07:43 Well, if you design your own class that has your own implementation, as long as you stub it out and to...and...
07:49 ...and implement our interface, then the entire ArcGIS system will treat your class like one of ours.
07:56 And the...and so that's...that's one of the neat... You know, a lot of people say, oh, COM; COM is old...
08:01 ...but that's still one of the neat things that's left is that you're not stuck with our code and our implementation.
08:07 Let me give you an example. You know how...you know, like a class breaks renderer, a value map renderer.
08:13 Well, one of the renderers that we give you is called a natural breaks renderer, and it's based on a particular algorithm.
08:18 Well, you may have a different algorithm, and you can implement that in the system and bring that right into ArcGIS Desktop.
08:27 So that's very fine grained.
08:29 What about coarse-grained options that are going to get you most of the way there in a way that's...that's...that's fairly quick.
08:36 And that's something we call add-ins. Something that's relatively new, and you can...
08:41 ...as a developer can use Visual Studio or Java to create these things, and then you zip them up into an Esri add-in...
08:49 ...and you can share them very easily. You can e-mail a file to someone.
08:52 All they have to do is double-click on it and it brings that add-in directly into [ArcGIS] Desktop.
08:59 Okay. So in ArcGIS Desktop, if...I'm sorry...in Visual Studio, we provide templates for you to get started with these add-ins.
09:08 Sure, you can write them from scratch...
09:09 ...but if you use these templates, this will give you a Visual Studio project that has a kind of vanilla structure.
09:17 All of the licensing has been wired, all the binding has been wired, all the references that you need have been included.
09:23 So it has everything there to kind of start with, and then you can build from there.
09:27 That'll save you a lot of development time.
09:31 As long as your add-in is going to contain these types of components, then you're good to go.
09:36 And the...an add-in is constructed of some XML metadata...
09:40 ...some resource files, and then also then the .NET assemblies or the Java jars, all brought into an Esri add-in.
09:48 That Esri add-in's really a ZIP file, but we call it Esri add-in so that the file association can launch the install wizard.
09:54 It's pretty easy to distribute.
09:57 Then once you have an add-in, you can use your Customize dialog and add that thing in...into the interface.
10:05 We also have you put that Esri add-in, you can put it in what we call a well-defined location.
10:10 It's a specific folder on your machine that when you fire up [ArcGIS] Desktop, it'll just discover the add-in.
10:17 And that's on a local machine. If you have add-ins that you're creating for your entire organization...
10:23 ...you can tell ArcGIS Desktop that that well-defined location is on a network share somewhere...
10:28 ...so that everyone that's using ArcGIS Desktop will simply inherit that add-in.
10:33 If the next day you change that add-in, then the next time they fire up [ArcGIS] Desktop, it's just going to take that add-in.
10:38 So it's...it's...it's a neat way to distribute this stuff.
10:43 And the help on this is fairly extensive, not only in the detailed developer technology documentation...
10:53 ...but also we wrote a lot of topics that are conceptual as well.
10:56 And I highly encourage you, if you're...if you're...if you're eager to...to start digging into add-ins...
11:01 ...is to take a look at some of this conceptual documentation so you understand kind of what's being built...
11:06 ...and then...and then...before digging into the developer doc.
11:12 More details? Right here in this room this afternoon and our...is a session for .NET and for Java...
11:20 ...and then Wednesday and Thursday, that session will be repeated.
11:23 So what we're going to do right now with add-ins is kind of "fork" you. If you use Java, go this way, .NET go the other way.
11:29 And they will walk you through exactly how this stuff is done, how you make them, and also how to share them with others.
11:37 We also, in the Desktop Developer demo theater, which is in the big showcase area, we have demo theater sessions that cover add-ins.
11:45 You can meet the developers from the [ArcGIS] Engine and [ArcGIS] Desktop development team.
11:50 And then if you have specific questions or specific problems, we have a Tech Support Island you can use.
11:55 Next is ArcGIS Engine. Note that I'm not showing an application here.
12:00 ArcGIS Engine is not a software application; it's simply a developer toolkit that contains object classes and controls and components.
12:12 Again, you have access to the same controls, even more controls than you do at [ArcGIS] Desktop, but you have...
12:18 ...also have access to the entire fine-grained object model of ArcGIS.
12:24 So you can take any components that are in our products and put them into yours. Alright?
12:29 So let me do something real quick with [ArcGIS] Engine. If I start up Visual Studio and go to New Project...
12:39 ...you'll see that there's...you can start from scratch, but there's a bunch of templates here.
12:42 I can create an [ArcGIS] Engine application, [ArcGIS] Desktop. I can create 3D applications with [Arc]Globe and [Arc]Scene.
12:47 But we have this one template here called Map Control Application that's a pretty neat one to start with.
12:57 It's a popular one to start with because if you go to the... Like I said, all of the references are already there.
13:05 All of the...all of the licensing, all the...the binding, the wiring under the hood is all there...
13:10 ...and you're starting with a form that has a map control, a table of contents, and a toolbar control.
13:15 Right here at design time, I can add and remove buttons and tools from this toolbar.
13:20 There are hundreds to choose from on the menus and toolbars that you can just drag and drop.
13:24 This stuff...these tools are already coded; you don't have to write any code on that.
13:30 And the licensing control allows you at design time to specify which licenses and which order the application...
13:39 ...when it starts up is going to try to discover and use them; that also goes for extensions.
13:46 And then finally, what I can do, is back in ArcMap, I created this map document that had some local data...
13:53 ...and also some...some data from ArcGIS Online.
13:58 I'm going to open that MXD that I created in [ArcGIS] Desktop and put that into [ArcGIS] Engine. Okay?
14:07 And rather than compile, you know, just for sake of time, I'm going to go ahead and just build that solution.
14:14 This is about as "hello, world" and vanilla as it gets, but we all have to start somewhere.
14:21 Alright. So I'm going to start that up in Runtime, and you're going to see what's going to end up on my screen...
14:25 ...is my [ArcGIS] Engine application that I created with Visual Studio.
14:31 This can be deployed on any machine that has a supported Windows development environment.
14:35 Doesn't have to have any Esri products; doesn't have to have ArcGIS Desktop or anything else.
14:40 This is your application that you've embedded our components with, and you deploy that through ArcGIS...
14:47 No. ...through Visual Studio. Okay?
14:57 Okay. For ArcGIS Engine, this isn't for add-ins but just for creating stand-alone applications.
15:04 There's...I believe there's a session right here today in this room for .NET, and...and then there's sessions for Java also.
15:13 So check the agenda if you want to learn more about creating stand-alone applications.
15:19 We also have a bunch of demo theater sessions in the Desktop Developer Island.
15:24 There's some What's New at 10 if you've been using 9.x before. There's sessions on how to actually...
15:30 ...tips and tricks for deploying your application and making sure that all the dependencies are there in...in the...in the app.
15:36 We have a really neat session on geoprocessing using ArcGIS Engine and...and also migrating your applications.
15:45 Alright. The third desktop option is ArcGIS Explorer.
15:49 This is a very lightweight map viewer...
15:51 ...that can take advantage of some more advanced GIS functionality by tapping into map services.
15:59 One of the advantages of [ArcGIS] Explorer is the application is free, the developer SDK is free, and deployment is free.
16:05 And as long as you have the map data local or you can get to ArcGIS Online or some ArcGIS services, that stuff's free also.
16:13 So if you just need a, you know, basic map viewer that has some neat functionality into it, that's...
16:19 ...you know, ArcGIS Explorer may be a good option for you.
16:22 There are two options for developers with ArcGIS Explorer.
16:26 For end users, they just download it, install it, and use it. That's it.
16:29 But for developers, you have two options. You have application configuration, which doesn't require any code...
16:35 ...and then you also have the ArcGIS Explorer SDK that you can download and use in Visual Studio.
16:41 And like add-ins, these are portable files. These...these add-ins for ArcGIS Explorer are very easy to deploy.
16:47 They're just a single file that you bring into ArcGIS Explorer; you can e-mail it to somebody; you can...
16:54 ...and...and they can just...they can just go ahead and use it.
16:58 This is the Application Configuration Manager. It's an applica...it's a utility that gets installed when you install...
17:04 ...[ArcGIS] Explorer, and this allows you to real...
17:12 I'm sure some of you have built applications where the requirement is this application's going to be used by these people...
17:18 ...and they need to do these four things and nothing else with no training whatsoever.
17:23 This is a really good option.
17:24 You can make the interface look exactly the way you want, and then you can go from there.
17:29 You can also change the splash screen. So take "ArcGIS Explorer" off there, put your splash screen on there.
17:35 Take the...you know, put your own little logo in the corner of the map itself.
17:40 So this application really does become yours.
17:42 Integrate your help, integrate your About splash screen.
17:48 SDK is very well documented; there's conceptual doc, also detailed developer doc.
17:54 Much like I showed you with [ArcGIS] Engine, when you open up Visual Studio, there are templates for ArcGIS Explorer as well.
18:01 You can create what kind of add-in. You can create a single button add-in that does a specific thing...
18:06 ...an extension add-in, a dockable window or a...or a gallery. Okay?
18:13 You don't just have to create these yourselves. There are developers that are creating add-ins all the time...
18:19 ...and they're loading them up onto our Resource Center, and you can...
18:24 You know, so before you take the time to develop an application or an add-in, probably not a bad idea to go to the Resource Center...
18:35 ...and see if there's something already there that does either exactly what you want it to do...
18:41 ...or at least something that gets you a couple steps along the way...
18:44 ...that has some source code that you can modify and move from there.
18:46 Save you a lot of development time.
18:48 For example, there's one here I wanted to buffer a point and create a circle out of it.
18:54 I found out that there was some code out there already. And let me see here.
19:09 And so I downloaded that...that add-in, and the...
19:16 Not only did that download come with the .eaz file that I can just use as the add-in, and the end user can use that as an add-in...
19:23 ...but whoever developed this was nice enough to also give me the Visual Studio project that has all the source code in it.
19:35 So if I go into ArcGIS Explorer, and go into ArcGIS Explorer Options, there's a place for me to manage my add-ins.
19:45 And what I did is I downloaded that from the Resource Center and threw that right into here.
19:52 And then that new buffer point shows up on my tool...on my toolbar.
19:58 I can say, hey, I want to create a buffer point by 10 miles, click that by one of these red dots, buffer that point.
20:09 How am I creating the buffer?
20:11 This is kind of neat too is that I'm not...
20:13 ...I didn't actually write any code in Visual Studio that did the geometry that buffered the point...
20:18 ...because from the [ArcGIS] Explorer SDK, you can actually call out to an ArcGIS Server map service or functional service...
20:26 ...in this case, I'm calling a geometry service...
20:29 ...that's handing over a point for the radius, and the geometry service is returning that shape back.
20:33 So I didn't even have to code that.
20:35 Now if I zoom in...Andy, can you see that? The circle?
20:41 The circle? No.
20:42 Yeah, a little tough to see. Can anybody see it? Yeah. Oh, there you can. Okay. But...
20:47 Okay. So I don't like that, but in the source code, I can see that...I can find out where that is happening and...
21:00 I found it in here before. Yeah, it's in here before where it has the...the size and the color...
21:07 ...and I can actually change it from red and 1 to yellow and 5 or whatever.
21:11 So I can...I can take this buffer point and enhance it any way I want and then just create a new .eaz file and then move from there.
21:18 So that...that saved me a lot of development time also.
21:21 So much in the same way that the best line of code is the code... the one you don't write, the...the...the...
21:27 An almost best line of code is the code that somebody else wrote, as long as you check it out.
21:34 Alright. There I'm managing my add-ins, there's the SDK help.
21:40 Also, on ArcGIS.com, you'll find a lot of add-ins through ArcGIS Online.
21:45 You can create groups and collaborate on these things and give access to the world...
21:49 ...or just give access to these things to people in your own group or in your own organization.
21:54 You can share not only these tools but maps and applications as well. You saw that a little bit yesterday, so I won't go into that...
22:00 ...too much, but also...let me see here.
22:05 [Inaudible audience question]
22:14 You have to write a separate add-in. They're using different SDs...different SDKs.
22:17 The question is, Can you write an add-in that works both in [ArcGIS] Desktop and in [ArcGIS] Explorer?
22:27 Let me see; what was I going to do? Oh, yeah. Let me go to blogs. Okay. And if I go to ArcGIS Explorer blog...
22:37 If you go to the ArcGIS Explorer blog, they actually wrote a blog post that details all of the ArcGIS Explorer sessions for users...
22:44 ...but also for developers that are going to be here this week.
22:47 So take a look at that.
22:48 And if you're interested in ArcGIS Explorer as a free option for deploying GIS throughout your organization, go for it.
22:56 Alright. The next is geoprocessing.
22:59 Geoprocessing, of course, is...goes...takes map visualization and goes even further.
23:04 It really is the place to interrogate your data, to create new data, to manage your data.
23:08 This...geoprocessing is really what gives GIS its muscle.
23:14 And at...at version 9, now at 10 also, we've included Python scripting, so there's a Python interactive window.
23:22 In this case, here's a video from the Resource Center that...
23:28 Here's a video from the Resource Center where Liz Flanary from the geoprocessing team talks you...
23:34 ...talks you through an introduction to the Python interactive window and shows how you can use it to actually drive ArcMap.
23:41 You can use it to do some more advanced interrogation. She's writing some Python code to do a selection on the map.
23:49 And there's...there's a set of those out there, and there's also some other help on...on the Resource Center as well.
23:54 And not only do you have that interactive window, but you can save your scripts as .py files, or as Python files...
24:00 ...and attach those files to tools on the toolbar.
24:02 So much in the same way I said you can use an add...you can build an add-in with Visual Studio and put it on the toolbar...
24:08 ...you can also write Python scripts and put...and make those tools in your toolbox as well.
24:15 Geodatabase is a deep and complex topic...
24:18 ...but for developers, it's very important to know that there are a lot of options for you.
24:22 A lot of the applications you're going to build aren't just to do geoprocessing and visualization...
24:26 ...but also give your users the ability to edit data, to add data, to create new datasets.
24:34 There's really no way for me to skim this other than to say if you haven't used the geodatabase before...
24:39 ...there's a part 1 and a part 2 for essentials and then there is a... I highly recommend this one.
24:47 At our Developer Summit in March, there was a preconference seminar, three-hour preconference seminar...
24:53 ...that was basically a programmer's guide, a developer's guide to the geodatabase.
24:58 It's three hours long; it's made by the members of the...the geodatabase development team, and I highly recommend that.
25:05 That'll...that'll...that's the best way to kind of kick-start you off there.
25:10 So that's basically all the stuff that as I skim the surface that we have on the [ArcGIS] Desktop side.
25:16 I want to turn it over to Andy now. He can talk about [ArcGIS] Server and Client Server, mobile and...and Web applications.
25:22 And then I'll take it back on the end and talk about developer resources. Andy?
25:35 There we go. Can you guys hear me okay? I see a hand way back there. Is it a quick question?
25:42 Otherwise, I'll ask you to wait till the end.
25:44 [Inaudible audience question]
25:47 Oh, sure. Certainly. The question was, Can we go to the Web site or write it down. Another quick question?
25:53 [Inaudible audience question]
26:02 The question was related to the times for the Geodatabase Essentials. Part 1?
26:07 [Inaudible audience question]
26:12 Okay. Yeah, there could be. The question is, there may be a discrepancy between the times that I'm giving...
26:18 I was going off of the online schedule. You're looking at the printed one? Okay. Yeah.
26:23 If...I would...I would say go off... Double-check with the online schedule, 'cause if there's last-minute changes...
26:32 ...they're going to be visible more in the online schedule than on the...on the...
26:35 Well, of course they're not going to be able to be changed on the printed materials, but...
26:39 But I...I would suggest you double-check these times and then check the room and...and make sure that'll be there...
26:43 ...to make sure you get to the session that you want to be at.
26:47 And which...Which Web site were you looking for? This, the video one?
26:52 [Audience participation] Yes.
26:53 Okay. Yeah, I made a short URL out of that 'cause the URL was really, really long.
26:57 So it's...it's esriurl.com, which is our in-house shortener, and then it's just slash devgdb, developer geodatabase.
27:09 But if...if...if you misplace that URL, if you just go to the Resource Center and Geodatabase, and go into the video section...
27:16 ...you'll probably find it in there. It's in there somewhere so...
27:19 [Inaudible audience question]
27:28 The answer to that is yes. You can watch it, the video, in the embedded player as an FLV...
27:35 ...but every one of these videos has a...has a big orange download button on the bottom.
27:38 You can download a WMV local and watch it local on your local machine later. Good question. Thanks for pointing that out.
27:49 Arc...I'm going to talk about ArcGIS Server. And it really is an end-to-end system.
27:55 I'm going to give you an overview and a hundred thousand foot level of the architecture from a developer perspective.
28:01 And I'm going to look at some of the GIS services and the APIs that you can consume these services through...
28:07 ...and I'm going to just liberally sprinkle some demos in there to keep your interest.
28:13 One of the really important things about ArcGIS Server is to remember just how many clients ArcGIS Server can work with.
28:20 Jim was talking about [ArcGIS] Desktop; that's a client of ArcGIS Server. ArcGIS Explorer is also a client.
28:26 And just about any Web-enabled client that you can think of, if it can talk Internet protocols, it can work with ArcGIS Server.
28:36 So just to get your brain cells going here, I'm going to jump into just a few demos that I'm going to show you...
28:42 ...and then I'm going to tie that back into the presentation. You may have seen some of these demos earlier, maybe not.
28:49 First demo that I wanted to show you. This is a USGS natural hazards events map.
28:58 Mainly I just wanted to show you that there's lots of different layers that you can...that you can turn off and turn on in this application.
29:05 It's the power of the API that's letting you build these applications very quickly.
29:11 The next application is an application that was built with our Silverlight API...
29:16 ...and this application ties in a whole bunch of different types of geoservices.
29:19 We have Flickr, we have geoprocessing here, we have Twitter and weather...
29:25 ...and all sorts of other processes that are going on into the background.
29:30 This is using the Visual Studio 2010 templates that are available with the ArcGIS Silverlight API SDK download.
29:39 Again, I'm just trying to give you a flavor of some of the types of things that you can do.
29:42 This is built with the Flex Viewer; very beautifully done cartographically.
29:47 It's pulling... The...the arrows that you can see on...there on the bottom, this is a map of the Gulf Coast.
29:53 And that's just live data that's dynamically being pulled in for the...the water flows in the Gulf of Mexico.
30:09 So what's behind the scenes here?
30:11 There's really four things that you need to know as a developer when you're building against ArcGIS Server.
30:16 As Jim was talking about, you have your data, which is stored in a geodatabase for ArcGIS Server.
30:23 That data is published in ArcGIS Server as GIS services...
30:28 ...and then some of my examples, the most common one you're going to see is mapping services.
30:32 I mentioned geoprocessing services.
30:36 The way that you're consuming those in your applications is through a variety of Web services such as REST and SOAP...
30:43 ...and using various protocols such as JSON or XML.
30:47 We've made your job easier; you don't have to deal with the raw, low-level APIs if you don't want to.
30:53 And we do have REST APIs and we do have SOAP APIs.
31:04 And I'll go into those in just a little bit more detail in just a minute.
31:11 I mentioned GIS services.
31:15 Just about any requirement that you can have that's going to come across your desk as a developer...
31:20 ...there's probably a GIS service that has already been built that can do that for you.
31:25 It stands to reason that there's many of them out there.
31:28 If you think there's a requirement on your desk, and you're not sure...
31:31 ...you can always go to the Resource Centers and look.
31:34 This is just a sampling of what's available to you.
31:37 I mentioned geoprocessing; there's KML-based services, OGC services; and many more.
31:44 When you look at the PowerPoint presentation, I...
31:47 I've included the link here so you can go to that. And if you need the link later, I can certainly give it to you.
31:52 It's esriurl.com/services, and it gives you the highlights of all the services that are available with ArcGIS Server.
32:01 So what is a GIS service? It's very simple.
32:04 A GIS service is going to let you publish that data so that people can display, edit, or manipulate it.
32:14 It...GIS services almost always have some sort of an endpoint that you're going to be able to access it from any one of our APIs.
32:22 And that's really all there is to a GIS service.
32:29 Show you real quickly what it looks like.
32:35 This is a GIS services... This is a services endpoint, and what we're looking at here is the ArcGIS Services Directory.
32:42 For any service that you publish, almost always, if you're using the default settings on ArcGIS Server...
32:49 ...you can go to ArcGIS/REST/services, and in that directory, you'll see if your service was published successfully...
32:57 ...and you'll have a description of that service.
33:03 Looking pretty good so far, right?
33:09 The next logical progression. Okay, we talked about our data, we have our GIS services, maybe we have...
33:16 ...we're wondering how do I get this information into my application.
33:19 Well, I mentioned the Web services.
33:22 And we have four primary ways that you can get your information into your applications.
33:27 We have REST, which is a URL-based API; it looks like just the URL in your browser.
33:34 We have SOAP, which used to stand for Simple Object Access Protocol.
33:39 In comparison to REST, which can be JSON or XML or a number of other different formats...
33:45 ...the nice thing about SOAP is, it's pretty much protocol agnostic...
33:50 ...which is really good for enterprise deployments if you have to traverse through supertight firewalls or proxies.
33:57 There's lots of challenges if you're doing that with REST and HTTP; SOAP might help you out a little bit there.
34:03 OGC. We have interfaces for WMS, WFS, and WCS.
34:09 Don't really have to know what those are right now...
34:11 ...but those are protocols that are standardized for the Open Geospatial Consortium...
34:15 ...where you can get your data into the application.
34:19 And lastly, AMF. AMF is Action Message Format. It's a bimary...binary format that works with our Flex API.
34:28 What it does is it lets you talk from the Flex client to a back-end server such as LiveCycle Data Services or BlazeDS.
34:37 And if you don't know what those are, those are just back-end storage products that allow you to store information in Adobe Flex.
34:49 Let's look a little bit at the REST API.
34:52 The REST API, you saw a lot of Web demos during the plenary. The REST API, as you're going forward, if you're doing...
34:58 ...especially if you're doing rapid application prototyping, it's going to be your friend.
35:03 I do want to stress that you need to understand the workflow on how this information becomes the REST API.
35:11 And this is just a high-level abstraction, and I'm going to show you a real quick demo at the very end on how this works.
35:17 So you're going to publish your layer file, your MSD or your MXD, to ArcGIS Server.
35:23 That information's going to be stored in the database.
35:26 You're going to grab that REST endpoint from your Web server and integrate it into your application.
35:34 I guarantee you that there's going to be some point when you're developing and you're going to build your sample application...
35:40 ...and you're going to say, hey, I thought I did everything correctly, but the map's not showing up.
35:44 Or...or a layer's not showing up properly, or my symbology isn't correct.
35:49 Understanding this workflow at a very high level is going to be key to you solving those problems.
35:59 Alright. So I showed you a service endpoint.
36:04 Now what we're going to do is we're just going to do a...I'm just...
36:07 At the very bottom, you'll see supported operations of your REST endpoint...
36:12 ... and if our Internet connection cooperates, which it's not...
36:17 What you can do is you can click on this...this link.
36:22 And if that link works, it'll give you a REST-based URL that shows you a command that launched.
36:30 And if you get an image back, you know that your REST endpoint is working...
36:34 ...or, in this case, your Internet connection is...is working or not.
36:44 That's the challenge of doing these demos when everybody else is using the Internet pipe.
37:03 It's...it's a much smaller footprint, so when that...
37:06 ...that...the library comes across the Internet, it's much smaller than the normal one that you're using for Web applications.
37:13 Lot of people ask us, well, which one do I pick? There's lots to choose from.
37:17 Depends on what your skill sets are for your organization.
37:30 If you're a Java shop, you're probably going to be looking at Adobe Flex because it's built on top of Java.
37:35 And if you're a .NET shop, you're most likely going to be comfortable with the patterns and workflows of a .NET environment...
37:42 ...for Microsoft Silverlight or WPF.
37:46 So I'm just going to take you through a very quick tour of what some of these features mean.
37:54 The easiest place to start if you're looking for a quick place to jump-start and get a flavor for how these APIs work...
38:03 ...'cause it has a much lower barrier for entry in terms of getting these applications started.
38:08 One of the newest features in ArcGIS 10, which is pretty cool, is feature layers which...feature layers.
38:18 Feature layers. The nice thing about feature layers from a...from a developer perspective, you have a very, very compact syntax...
38:26 ...so that the pattern that you're using to draw stuff on the map is very simple.
38:31 So this one line of code here where it says "feature layer" and you have out field...
38:38 I'm just specifying draw me everything. ...is very simple.
38:42 So what we have is a cached basemap as imagery...
38:45 ...but what I wanted to show you is that one line of code is letting you draw this hydro...
38:51 ...hydrography operational graphic layer. I can't speak this morning.
38:56 But primarily the key takeaway is a very compact syntax.
39:00 There's also samples that you can copy directly into your browser and launch or load right on your local IIS machine.
39:08 The next thing I'm going to show you is time.
39:11 Time is a...is very cool because in addition to the geographic information that you're plugging into your system...
39:17 ...you can also add time-based elements.
39:23 So you can see here, we have some time sliders.
39:25 All of the APIs have standardized tools where you can just drop a time slider into your application...
39:31 ...very easily and plug this temporal data into your applications.
39:38 Pretty cool so far, right?
39:42 Last but not least, editing.
39:49 You now have the power of editing built directly into your Web client applications.
39:54 So I can change shapes, add shapes, points, lines, and polygons, directly into my Web applications.
40:02 This gives you a very powerful example for any analyst that you're building applications for...
40:10 ...for manipulating data in ways that you couldn't possibly do it before.
40:13 And all this stuff is built into the Web APIs, and all these samples are available in the resource centers.
40:27 I just touched on a...three of the key capabilities, but there's much, much more...
40:32 ...and I highly encourage you to go to the resource centers and check out a lot of the functionality that's there...
40:38 ...especially the object model.
40:40 Geoprocessing, time awareness; I mentioned those. Geometries, graphic layers, symbology.
40:47 The purpose of these Web APIs is it's saving you a tremendous amount of time...
40:51 ...in the cycles that you're going to have to go through to build your applications.
40:55 The applications that we can build today in hours or days used to take weeks or months with the tools that we have in the...
41:02 These advancements have really, really made our job so much easier.
41:07 Just a very quick dive into what's going on behind the scenes.
41:11 When you saw these applications, from a programmatic standpoint, just keep in mind that what the API is helping you do...
41:18 ...is logically order the information that you're visualizing.
41:23 The base layer, which is going to set the extents for everything on top of it, such as the operational layers...
41:28 ...in this case is a tax parcel application where I have imagery as the base layer, so that's setting my projection and my extent.
41:37 On top of that, I have the operational layer that's pulling in the polygons and metadata for tax parcels.
41:43 If I wanted to, it's very easy to extend that API to pull in any other information into the operational layer that I might want.
41:57 So if you already know the patterns and workflows for those languages...
42:00 ...it's very easy for you to plug that information into the mapping application.
42:08 Okay, maybe you're saying, oh, that's great, but I...I really want to get a quick start on these applications.
42:15 We have the answer just for you.
42:16 We have a number of out-of-the-box solutions can get you quick started, especially if your stakeholders are saying...
42:22 ...hey, I want to see something today, or I want to see something at the end of the week.
42:26 We have a viewer for Flex; you may have seen it demoed in the plenary.
42:30 We've had over 26,000 downloads of this...this product.
42:34 You can also look at all these...source for the application is open and you can do whatever you want with it.
42:40 It's a dependency injection model that comes with prebuilt widgets.
42:44 Basically, this is just a great way to get kick-started.
42:48 We also have Visual Studio 2010 Silverlight templates that I mentioned earlier with the Live on Everest application.
42:54 That comes with the SDK when you install it in Visual Studio 2010.
42:59 It won't install in Visio...Visual Studio 2008. I already tried, so you don't need to bother trying it.
43:05 We also have quick starts for mapping with SharePoint, if you're doing SharePoint development.
43:13 Switching gears just a little bit to the mobile SDKs, we do have three different mobile offerings.
43:21 The ArcGIS Mobile SDK in particular is a Microsoft .NET deployment.
43:26 It's developed specially for Microsoft Windows and Microsoft CE.
43:33 That smaller format for these...for the Windows Mobile phone necessitates a different type of development pattern.
43:42 Mobile is a client of ArcGIS Server, and although it has a smaller subset than what's available on the Web APIs...
43:50 ...it has a very comprehensive SDK in itself.
43:54 One thing to keep in mind, if you're...if you think you're going to be doing mobile development...
43:58 ...is when you publish your service, and I'll show you a demo of that in just a minute...
44:03 ...make sure that you check Mobile Data Service.
44:06 One important differentiation is this particular SDK is SOAP based...
44:11 ...but remember I told you that there's some advantages to SOAP.
44:13 Even though it's XML based, it's protocol agnostic...
44:17 ...so it's much better for enterprise deployments where you're traversing firewalls and proxies.
44:23 The other thing to remember about the ArcGIS Mobile SDK is that there is a local database...
44:29 ...so that this is good for both connected and disconnected deployments.
44:35 An example of a disconnected deployment is if the person with that particular device is in an area where there's no cell phone coverage.
44:42 We also have ArcGIS for iPhone; brand-new offering, very exciting.
44:47 You can look at this, you can search for ArcGIS for iOS on iTunes, and you...it's also available on the App Store.
44:57 Couple of developer things to remember about iOS and our API.
45:02 It is REST based, so it's different than the [ArcGIS] Mobile SDK, which was SOAP based.
45:07 It is native Objective-C, so if you're used to higher-level programming languages such as our Web APIs...
45:13 ...this may take you back to the old days where you're doing garbage collection and pointers...
45:18 ...and those types of things that you may or may not have forgotten about.
45:21 Last but not least, if you're planning on doing this on Windows and you have a...a Windows laptop...
45:26 ...you do need a Mac in order to develop with that API.
45:33 Last but not least, ArcPad is our oldest mobile...mobile offering.
45:39 It is perfect and designed for disconnected usage where there is no Internet connection.
45:45 It's based on the Windows Mobile platform and it's .NET, and the way that you configure it is through XML.
45:52 There's a number of ArcPad offerings if you're interested in developing with ArcPad.
45:56 There's an introductory session if you just want to get an idea of what it does...
46:00 ...and if you're a developer looking at customizing it, there's sessions on Tuesdays and Thursdays.
46:10 So for my grand finale, what I'm going to show you is from A to Z, very quickly...
46:15 ...what I mean by publishing this information to ArcGIS Server and then consuming it in a Web app.
46:22 So what I did is...find where I am here.
46:29 I went to ArcGIS.com and I searched for world physical map, and on World Physical Map...
46:36 I know it's very hard to see, but right here, there's an MXD.
46:39 And I'm not actually going to do this because the Internet connection here is a little bit flaky.
46:43 What I did is I double-clicked on that MXD and it opened up in [ArcGIS] Desktop.
46:49 Now that I have it in [ArcGIS] Desktop, and you can see here I have my map; got a map, see it right here.
46:56 What I did is I saved it to [ArcGIS] Desktop and then I'm going to go ahead and open Catalog.
47:01 Catalog lets me manage my ArcGIS Server very easily. And you can see here that I save...see right here.
47:11 That I save right there.
47:14 I save this map to [ArcGIS] Desktop, and what I'm going to do is I'm going to right-click and I'm going to say...
47:19 ...okay, let's publish that to ArcGIS Server.
47:22 Now I'm dramatically speeding this up; I've already made sure that [ArcGIS] Server's on my system and I'm connected to it.
47:28 What I would do is I would just go ahead and say Yes. Let's go ahead and publish that.
47:33 And if it works, what's going to happen is down here, it's going to show up in Catalog...
47:39 ...and I'm going to go OK. I'm almost there; I think this was successful.
47:45 Now remember when I said you've got these REST endpoints.
47:50 The first thing you're going to do once you've published this...this service, and I'm publishing a map service.
47:56 Remember our GIS services? I'm going to go to
48:03 Sure enough, it's there, but I'm not done yet.
48:06 What I really want to do, if it's going to cooperate, and it worked this time... Yea, it worked!
48:12 See along the top of the address bar there?
48:15 This is my REST...my raw REST-based command, and it worked, because I got an image.
48:20 I know that I'm almost done.
48:23 So what I do is I can take this URL for the endpoint, that one right there in the address bar...
48:38 ...and I plugged my endpoint into it.
48:41 So you can see here that I've highlighted.
48:44 There's my endpoint; I've specified it as a dynamic service layer, and then I ran it and it worked.
48:51 So voilà! There you have it from A to Z; that's what you're going to do when you're developing these applications...
48:57 ...you're going to publish them in [ArcGIS] Desktop, you're going to consume them in your applications.
49:02 So Jim. I'm going to pass it back to you.
49:06 Thanks, Andy. One, two...can you hear me? Okay. Alright, let's go back.
49:17 Alright. So that's...that's one of the neat things to point out is with these developer options, one of the things Andy said was...
49:25 Like I said, you can use these SDKs and APIs and code them from scratch...
49:30 ...or you can use templates or applications that we provide to kind of give you a kick-start.
49:34 The Web APIs are the same way. I mean, the APIs are there; you can use them any way you want technically.
49:41 But we also have these sample viewers that you can use as proof of concept.
49:46 So that gives you the ability to spin something up real fast that your users can use...
49:50 ...while at the same time you're designing and building something that you really want to end up at.
49:55 So you can kind of take a...a phased approach.
49:58 Also while Andy was talking, I double-checked. Thanks for that. I think I transcribed them...them improperly.
50:04 The Geodatabase Essentials part 1, like I said, is now, but the next offering is on Friday.
50:10 And then the part 2 of the essentials is on Thursday in room 3.
50:15 Okay. So those are the products; those are the technologies. What about the resources?
50:20 How do...what is available to help me be successful?
50:24 Well, first, when in doubt of where to start, start at resources.arcgis.com. This...
50:31 We have lots of documentation and lots of samples and lots of tutorials.
50:35 This site is designed to give you a focused, filtered view into certain areas of our resource system...
50:43 ...so that you don't have to hunt and peck around to find things.
50:47 Okay. So let me give you a quick tour real quick of the resource center.
50:54 You have, you know, quick links to the blogs and to the forums; you have quick links to get to Tech Support.
51:00 But then we have these resource centers that are divided by products, functions, industry-based communities, and solution products.
51:07 Let's go into, let's just say, geoprocessing.
51:10 All of the resource centers are designed similarly...
51:13 ...in that you have kind of an introduction that you'll read maybe once and then that's it.
51:18 But the key here is the left nav...menu links on the left-hand side.
51:22 I can give a quick filtered view right into the help system that drills right into geoprocessing.
51:30 What is geoprocessing, the conceptual stuff, the technical stuff, the developer stuff.
51:34 I can click on the blog to go, instead of to our set of blogs, directly to the geoprocessing blog.
51:40 This is stood up and maintained by our geoprocessing development team.
51:44 This is their podium to talk to you and with you about things that are new.
51:49 So I would suggest...subscribing to that...
51:52 ...or subscribing to the blog of your choice from the team of your choice that best fits what you're doing.
51:59 We have about 60 discussion forums, but if I'm in geoprocessing and I click Forums, it's pretty simple.
52:04 It drills right into the geoprocessing forum.
52:07 I can ask questions of my choice and talk directly with other users around the world and also the development team.
52:15 There's a sharing gallery. If you create script tools and models, if you create applications and add-ins...
52:21 ...if you create templates, if you want you can share them here with other users or you can...
52:26 ...more importantly, search here to see if something already exists close to what you need, as I mentioned before.
52:33 The videos I mentioned before. We also have a new site called an Ideas site.
52:38 This is a place where you can give us your ideas and let the rest of the user community comment on them...
52:45 ...discuss them, vote on them. And...and as you can see, you can add an idea, but then when you log in...
52:53 ...you can also demote and promote, giving or taking away points, if you think that this is something that...that should be prioritized.
53:00 Esri staff and particularly product management read this stuff all the time, and they're seeing what the community really wants.
53:09 And this way, we can reply...
53:10 ...we can respond with our technologies to what most people need rather than to what the loudest people want.
53:18 So, you know, we want to make sure we prioritize our work to stuff that's going to have the...be most beneficial.
53:24 And next to each title, a lot of times you'll also see an icon that says Under Consideration or Implemented...
53:32 ...and these are ideas that we're already working on or...
53:35 ...or ideas that have already been built and put into the product since that idea came to us.
53:40 So it's not just a vent area where you can scream into a box; okay, thank you very much.
53:44 No, I mean, we're actually using these ideas to make ArcGIS better.
53:52 And there you go on that. Let me see.
53:56 Okay. Then we have ArcGIS.com. Particularly right now for developers...
54:01 This is particularly important for mobile applications and Web applications.
54:06 ...are...is...is...you can share and search and find them through ArcGIS Online here.
54:12 If I go to the gallery, as a developer, I can find maps that I can put into my applications.
54:18 You don't have to have your own map data. You can put your map data on top.
54:22 These can be basemaps or sharable, collaborative maps that you're doing with your organization or with the world.
54:29 If you click on Web Apps, you can filter them by highest rated, most recent.
54:38 ...and you can use those applications, and some of them have source code with them also.
54:50 One second. We jumped ahead here.
55:03 Okay. So there's the Resource Center, there's ArcGIS Online through ArcGIS.com.
55:11 How do you get your hands on the software?
55:13 Well, you don't need to buy the big production licenses of ArcGIS Server or ArcGIS Desktop.
55:19 We have a product just for you developers. EDN.
55:22 Anyone in this room an EDN subscriber right now? Okay, some of you.
55:26 It's a subscription model where we give you basically all of the ArcGIS stack.
55:33 [ArcGIS] Desktop is an optional add-on, but that's discounted as well.
55:35 For a very, very low price, it's...it's just a few percentage points over the production...I'm not selling or marketing.
55:41 But if you're a developer, this is a...this is developer licenses over our entire stack that you can use...
55:48 ...to play with, to prototype, to design, to...to build, to test, and you're doing all of this with very inexpensive developer licenses.
55:57 And in essence what you're doing really is you're deferring your production license costs until you're actually ready to deploy.
56:04 And after you're deploying, you as the developer are also still not using and eating production licenses.
56:11 You have your own software, you have your own license, you can put...you yourself, it's linked to you.
56:16 You can put it on as many machines as you want that you use, and it's...it's...it's...
56:21 If you're doing development work with...with Esri technology, this is a great subscription model.
56:27 There's the edn.esri.com gives you quick links to social media, to...quick links to manage your subscription, quick links to the team.
56:37 We at Esri are also trying to...constantly improving the ways that we train you.
56:41 If you go to the training Web site, you'll find a lot of courses that you can take, and our focus lately has been on...
56:50 ...more options for organizations and folks that have limited budgets for training and for travel.
56:57 We have more options that are inexpensive. We have more options where you don't have to travel at all.
57:02 We're doing more with Web-based training, with online training, also live training seminars.
57:07 Here's one that Rob Burke did. It's a free, one-hour live webcast training seminar on the ArcGIS Explorer SDK.
57:18 He went...goes through it for an hour and not only is it live webcast, it's recorded. If you missed it you can watch it later.
57:25 But if you're there when it's happening live, there's also a live text interactive Q&A with Rob...
57:31 ...and whoever else at Esri is in the room at the same time.
57:34 So, you know, he's going through the training and you're just watching it from your desk through your browser.
57:41 If you're at the end of your rope with all of the self-help tools, you can also just go to support.esri.com...
57:48 ...and we'll attach you to our Tech Support.
57:52 Now we have an area of our Tech Support called the SDK unit.
57:56 These are developers; these aren't the "click the Identify tool" type of tech support people.
58:02 These are developers, these are C++ programmers, Java developers that...
58:06 ...that spend at least half their time developing applications...
58:09 ...and the other half of the time assigned to you to help you with your issues.
58:15 Forums are good because you get the view of the community, but going to Support is really good...
58:20 ...because then you're guaranteed to be assigned to someone, and this is recorded and accountable...
58:25 ...and they have to stick with you until there's some type of resolution that...that...that we can find.
58:30 You know, whatever best resolution we can come up with.
58:33 So it's a very accountable system where you're working one-on-one with a developer and when...
58:37 ...and that's a part of your maintenance with Esri software.
58:41 If you want us to do more of the work for you, we have Professional Services.
58:46 We work on a time and materials basis or on a specific deliverables basis where you can bring in...
58:53 ...consultants in for design, for architecture, or even just for coding. "I need you to code this module."
58:58 "I want a programmer for a week that can help us through some specific issues."
59:04 You don't just have to use Esri for that. We have a global network of a few thousand partners around the world.
59:12 And if you go to the Partners site, you can find an...an Esri partner near you who may be able to...
59:17 ...who you may be able to contract with for some specific services or training.
59:23 How many of you have been to the DevSummit conference in Palm Springs? One, two, three, four...
59:30 This is the premier Esri and geospatial developers conference. It's a few days long and this is deep dive on everything.
59:40 This is not for beginners or the faint of heart...
59:43 ...although we do have some preconference seminars that help experienced developers that are new to GIS get on board.
59:50 But this is the place to go to really be a...it's a real productivity event.
59:54 From meeting the engineers and developers, talking with them one-on-one and...
59:58 ...and taking a deep dive into all of this stuff that Andy and I are just kind of skimming the surface.
1:00:03 This is every March, and it's in Palm Springs.
1:00:09 At the DevSummit, we record all of the sessions.
1:00:12 In fact, at the last DevSummit, we recorded over 100 technical sessions...
1:00:17 ...and we put them all for free up onto the Resource Center.
1:00:21 So you can search for them, you can query for them, you can go in the Resource Center by topic and find them.
1:00:27 And it's...it's...if you cannot get to Palm Springs in March, this is the second-best thing; you see all the same stuff.
1:00:35 We have a brand-new event called the Dev Meet Up. We're holding these at specific selected cities around the U.S.
1:00:44 We did our first one a few weeks ago in New York. We're going to be doing Baltimore, Philly, and D.C./northern Virginia soon.
1:00:51 L.A. County, Orange County soon. I think Florida's coming up and...and Denver.
1:00:57 And if...you know, if we get a few of those off the ground and the...and the community really likes those...
1:01:02 ...then we're going to start stretching out into Canada, into Europe, and...and...and we'll do what we can.
1:01:06 This is an after-business-hours, three-hour event. Esri sponsors it, we do all the admin and logistics, but the content is yours.
1:01:17 You...you select a...a presenter and you have a one-hour-long lightning session where you can get, you know...
1:01:23 ...8 or 10 or 12 people in there to do lightning sessions.
1:01:26 There's a social before, a social after, gives you a real good chance to meet people in your area that are...
1:01:32 ...that you might not have known that are doing development work.
1:01:34 Also, great community building event. And, the beer, you know, we pay for the beer and the food.
1:01:40 So, I mean, come on. Come on out.
1:01:44 So watch for that on the...on the Resource Center. We'll announce that as...as we take that road show to you.
1:01:51 Social media. Great way for people to connect. I know it's kind of trendy, but there are some...
1:01:57 ...you can get some value out of it. We have an Esri Developer Network Facebook site.
1:02:01 If you're not following #esriUC here at the conference, you really should. It's lots of great conversations...
1:02:08 ...#devsummit when that conference is going on.
1:02:11 LinkedIn is a great way for geospatial developers to professionally connect with others...
1:02:16 ... build networks, build connections, get out there and connect with us.
1:02:20 We also have a LinkedIn EDN site. You don't have to be an EDN subscriber.
1:02:25 You can just use that to find and connect with other developers that are using the same tools you are.
1:02:32 Hundreds of videos on YouTube; some of them are kind of behind the scenes.
1:02:36 We'll just...you know, Andy and I just take our camera all around Esri and say...
1:02:40 ...Hey, talk to us right now about this tool that you're building.
1:02:43 Or, What do you want people to know about printing at version 10?
1:02:47 Or, How can I put printing in...into an Explore...an [ArcGIS] Engine application?
1:02:53 So we do some tutorials, we do some meet the teams, and...and also presentations as well.
1:03:01 We also have a developer blog, wiki.gis.com. We started this last year...no. We started it earlier this year.
1:03:10 And we already have hundreds of contributors and thousands of pages and tens of thousands of views...
1:03:15 ...and our goal is not just Esri, but our goal is to build the world...the...the global repository of GIS knowledge.
1:03:24 And at some point, this will be turned over to the community, but...but Esri is starting it.
1:03:30 This one's not ours, but I really wanted to point it out, 'cause we're all pretty excited about this.
1:03:34 Is Stack Exchange. Someone proposed a geographic information systems stack exchange.
1:03:42 Has anyone used Stack Exchange or Stack Overflow? A place where you can ask questions; it's a good Q&A site.
1:03:47 The community can vote on the answers, vote on which one's best.
1:03:50 It's a great way to drill right into...to good questions and to good answers. I recommend that.
1:03:57 This...this one's also not ours, but I wanted to point it out 'cause they're doing a lot of great work, is the GIS Forum.
1:04:03 You can join that.
1:04:04 They have forums and...and...and sharing sites you can connect with other developers that are doing what you're doing.
1:04:10 And then there is the conference that you're at. I mean, this is a great resource. 01:04:14
1:04:16 The developer track is...we got more than 70 sessions; look them up.
1:04:21 We have product islands, meet the engineers, meet the developers.
1:04:24 Andy and I are at the Desktop Developer Island. We have a demo theater. Tech Support Island for specifics.
1:04:30 There's a lot of...lot of good stuff there. I want to show you one more thing, though, if I can.
1:04:36 I just got an e-mail this morning from the geoprocessing team, and they wanted to make sure I pointed this out...
1:04:43 ...because it's not in the printed agenda.
1:04:46 And because I talked about geoprocessing, I wanted to make sure I included this too.
1:04:50 This is not in the printed agenda; it's today. It's in room 8 at one-thirty.
1:04:56 And if you want to get started with Python scripting for map automation, this is the session to go to.
1:05:02 It's also offered again on Friday, so I wanted to make sure I took a moment to...to point that out.
1:05:08 And it appears that we've got...oh, right on time. We've got about 10 minutes for questions. Thank you for your attention.
1:05:17 Yes, ma'am.
1:05:18 [Inaudible audience question]
1:05:20 It's...yeah, it's...it's not in the agenda for Friday either. Friday...okay, yeah. Let me put it like that so that you can see it.
1:05:27 It's Tuesday at one-thirty and then Friday at nine. Thanks for having me scroll that. Yes, sir?
1:05:33 [Inaudible audience question]
1:05:42 Okay. Question is, Visual Studio 2008 version versus 2010...
1:05:48 Second? Yeah, go ahead.
1:05:50 ...as it relates to ArcGIS 10. Okay.
1:05:57 The question related to ArcGIS 10 in Visual Studio.
1:06:00 It...it really depends on which one of our APIs you want to use.
1:06:05 If you want to use ArcGIS 10 and the Silverlight API, you're going to be better off using Visual Studio 2010...
1:06:13 ...and all the features and functionalities that are enabled with it because that build was compiled to a newer version of .NET.
1:06:22 .NET 4 for Visual Studio 2010.
1:06:25 If you're currently using Visual Studio 2008 and .NET 3.5...
1:06:30 ...then some of the features that are available with .NET 4 and Visual Studio 2010 may not be enabled when you install it.
1:06:39 And that's primarily the thing to keep in mind is things may or may not work.
1:06:44 The best...if you're going to the newer version, it's best to stick with what the dev team is recommending for that.
1:06:50 And currently for ArcGIS 10 and .NET, they're recommending Visual Studio 2010 and .NET 4.
1:06:58 [Inaudible audience question]
1:07:06 Correct. The question was, Does Visual Studio 2008 just support VB .NET?
1:07:12 No, it's C# also.
1:07:14 Oh, yes, correct. Yeah.
1:07:17 [Inaudible audience question]
1:07:21 Oh, yeah. VB 6 to VB .NET. That...that was actually my transition too. I started in VB 5...VB 4, VB 5 way back.
1:07:30 I...I would recommend the sooner you get the C#, the more flexibility you're going to have.
1:07:34 But yeah, just for quick prototyping, you can use VB...you can use the VB part of it or...or C#.
1:07:40 Most...a lot of the samples that we publish are in C#, but I think we have a lot of VB samples as well. Okay.
1:07:45 [Inaudible audience question]
1:07:51 Visual Studio, you can get the Express... The question was, Is Visual Studio a free download?
1:07:58 [Inaudible audience question]
1:08:00 Yeah. The...the Express is, but the Professional edition or the higher editions, you...you've got to buy those from Microsoft.
1:08:06 [Inaudible audience question]
1:08:12 Well, you're not going to be able to use VB 6 with ArcGIS 10.
1:08:16 [Inaudible audience question]
1:08:21 Will...will...oh, yeah. It will work, but you're not going to be able to develop new, okay, with...with 10. At...that...
1:08:29 [Inaudible audience question]
1:08:38 Okay. I...that's a good question. Let me...let me hit the...I've never used the Express to know what the limitations are.
1:08:47 But you know, the next session that's in this room...
1:08:49 ...in fact, I think that the presenters are going to be coming up here in a couple minutes to set up.
1:08:53 So after the session, why don't you come up and we'll ask them too, 'cause I don't have much experience with the Express edition.
1:08:59 Okay, thanks. Any other questions?
1:09:03 [Inaudible audience question]
1:09:11 File geodatabase open API. I don't have an update on that, of when that's going to be available. Do you, Andy?
1:09:17 Nope. I don't have an update either.
1:09:18 I know it's something that they have been working on and still are working on.
1:09:23 The question is about the Open File Geodatabase API.
1:09:26 There's a lot of developers around the world that are very eager to get their hands on that...
1:09:31 ...because that allows you to read and write and create file geodatabases without...you know, just in...
1:09:40 Well, I use the word open loosely. I'm not sure it's...if it fits everyone's definition of open, but you're...
1:09:46 ...the point is you're going to be able to read and write file geodatabases without any Esri technology...
1:09:51 ...without ArcGIS Desktop, with ArcGIS Server.
1:09:54 And...and...and I think it's going to be a C API or maybe even with a dot...you know, a .NET API.
1:10:00 But I don't have an update on that.
1:10:02 But I would recommend that you get with either on the Geodatabase Island in the showcase area...
1:10:09 ...or go to one of the geodatabase sessions and...and...and ask those folks.
1:10:14 I know they're working on it, but they may have an up-to-date, up-to-today update as to where they are on that. Good. Yes?
1:10:23 [Inaudible audience question]
1:10:35 Okay. Very good question. EDN subscription just gives you the...the software with the developer license.
1:10:46 ...the ArcGIS Explorer SDK, all of the Web mapping SDKs, the iPhone stuff.
1:10:52 You don't need EDN for that. All that stuff is just available.
1:10:55 If you have ArcGIS Desktop already or ArcGIS Server already...
1:11:00 ...they also come with all of the ArcObjects that you need without EDN also.
1:11:05 So EDN is simply a way...it's...it's...
1:11:08 EDN, the software and SDKs that come with EDN are really redundant to every one...everything else.
1:11:14 And you're thinking, Well, if they're redundant, why?
1:11:16 Well, because it's simply...it's...it's everything that's in our other products...
1:11:20 ...but it's just your kit for your development use in a very inexpensive way.
1:11:25 [Inaudible audience question]
1:11:26 Oh, the support with EDN, if you're an EDN subscriber, you're not automatically entitled to tech support.
1:11:33 There's an add-on that you can purchase. I think it's $2,000 for 10 incidents, but those never expire.
1:11:42 But on the other hand, if you're an organization that just has EDN, then that's...you may want that.
1:11:49 But if you have EDN and you also have production licenses of Esri software, then you don't need the EDN support either...
1:11:56 ...'cause you already get support by having those production licenses.
1:12:00 [Inaudible audience question]
1:12:02 Yes. Okay, what's a production license? Let me give you a great example. ArcGIS Server.
1:12:08 ArcGIS Server, you can buy a production license, and I don't have the pricing, but it's five figures somewhere.
1:12:14 And you put that on a server or multiple servers with multiple core processes...
1:12:19 ...and you can actually serve functions and data in production to the world.
1:12:24 That's a production license of ArcGIS Server.
1:12:27 When you subscribe to EDN, you also get ArcGIS Server software; the same exact software.
1:12:34 It's not hobbled in any way.
1:12:35 It's the same stuff, but you're only licensed to use it on your development machine for development purposes.
1:12:42 Yeah, you can't sell it to clients and you can't use it to serve stuff out to the world.
1:12:47 It's really just a developer license versus a production license.
1:12:51 So the software's exactly the same; it's just what you can do with it is different.
1:12:55 So glad you brought that up, 'cause I was not clear about that. Thanks. Yes.
1:12:59 [Inaudible audience question]
1:13:08 Very good question. What do I do with add-ins?
1:13:10 If you develop an add-in, and that add-in is going to be used by someone who has a desktop license...
1:13:17 ...then that...there's no deployment cost to that at all. That's... You develop for free and you distribute for free.
1:13:24 That also goes for the ArcGIS Explorer add-ins.
1:13:27 So really the only desktop model that I can think of that has any type of extra deployment cost is ArcGIS Engine.
1:13:38 So you're using Visual Studio, you use [ArcGIS] Engine components, you compile a Visual Studio app into an EXE...
1:13:44 ...into a deployment package, for every machine you deploy that onto, there's a deployment fee that comes back to Esri.
1:13:50 But that's really just [ArcGIS] Engine. Does not apply to [ArcGIS] Desktop, nor does it apply to [ArcGIS] Explorer.
1:13:55 So great question. Thanks for bringing that up. Yes?
1:13:58 [Inaudible audience question]
1:14:20 Good question. She's using VBA with ArcGIS Desktop. How we doing on time?
1:14:26 We got a few more minutes.
1:14:27 Okay, good, 'cause that's a great question.
1:14:28 She's been doing...you've been doing it for a while, right? Yeah. She's been doing VBA scripting.
1:14:33 For those of you who remember, at version 8 and version 9, we had the VBA scripting environment...
1:14:37 ...actually it's in 10 also, which is getting to my answer. Yeah.
1:14:42 Has the VBA Script Editor and you can create VBA scripts and macros and build tools using VBA right in [ArcGIS] Desktop.
1:14:49 And that was a neat way to...to build customizations.
1:14:52 At 10, VBA still exists, but it's a separate license for free. It's a separate download, and it's a separate install.
1:15:01 We really kind of have to get off of VBA because Microsoft has left it in the dust a while ago.
1:15:08 So if you're at 10 and you have VBA scripts, you can still use them.
1:15:12 You just have to download, do the license separate, do the install separate; you're good to go.
1:15:17 You want to build new scripts, that's fine. But the writing's been on the wall for a while of moving.
1:15:21 Python is an option to do a lot of things, but it's not everything. It's great for geoprocessing...
1:15:26 ...great for map automation, but there are...there are some things which...too long to get into now.
1:15:32 The answer for you...
1:15:35 ...probably my best recommendation would be to start spinning up on...on Visual Studio and develop add-ins.
1:15:44 Because the...the API is very coarse grained.
1:15:49 You don't have to get into the sea of a thousand classes and controls to do what you got to do.
1:15:54 You could do maybe 80 percent of...of...of...of what you could do with ArcObjects you could do with add-ins.
1:16:00 And the...and then, you know, compiling that as an Esri add-in and distributing that on a local...
1:16:06 ...on a network share on a local machine is very easy. It approaches the ease of VBA. Not quite, but...but there.
1:16:13 So I think what you're going to see is kind of a fork in the road with VBA.
1:16:17 Python is going to be able to take care of a lot of it...
1:16:19 ...and Py-...and the exposure of Python with what you can do is going to get better and better.
1:16:24 But using Visual Studio with add-ins is...is what I would explore doing next. 01:16:28
1:16:33 [Inaudible audience question]
1:16:36 It's like the last question.
1:16:37 Say again? Last question. Yes.
1:16:39 [Inaudible audience question]
1:16:45 No. Add-ins...add-ins can do dialogs, can have...
1:16:48 ...can have, you know, interactive type controls in the add-ins. Yeah. Okay?
1:16:55 Thank you.
10:10:41 There are a lot of these SDKs that you can download without having an EDN subscription...
© Esri 2013 http://www.esri.com