Tag Archives: Python

Sara Safavi: “At heart, that’s what we are: stubborn, persistent, get-this-done types”

Sara Safavi
Sara Safavi

Sara Safavi is a “software developer with a geohabit” in Austin, TX. She spent many years in the GIS trenches before eventually transitioning to full-time developer at Rackspace. She also moonlights as a geospatial consultant, specializing in clients looking for cost-effective, “real-world” solutions hybridizing open source technologies with existing platforms. Outside of work, Sara organizes two local community groups: Austin Open Source GIS & PyLadiesATX. She’s also frequently found teaching workshops — primarily Python and/or GIS-centric ones — and evangelizing all the open source geo-things.

Find her on twitter @sarasomewhere. She’ll also be at FOSS4G-NA this year — look for the crazy hair and say “hi!”.

Sara was interviewed for GeoHipster by Jonah Adkins (@jonahadkins).

Q: This quote from your “About” page almost perfectly describes most interviewed geohipsters:

“…interested in open data & open source software, and working near the intersection of programming & GIS is where I’m happiest…”

How did this passion for “open” evolve for you?

A: When I first got access to a computer, I was lucky enough to be told: “Do what you want on this machine, learn about it, play with it, and if you break it I’ll fix it.” That put me at ease and let me experiment. It also gave me a sense of control and ownership: computers for me were never some scary unknown that came with a vague sense of this-is-not-for-you. When I later got involved with open source communities, I found a similar combination of freedom and safety net that enabled independent learning. Those communities tended to be built around shared interests and goals, and everyone shared enthusiasm for the same things. Plus, I really loved that I actually got to talk to the people who were making things and get involved in finding solutions to shared problems. Eventually I started to help other people with some of the things I had learned — not in a really huge way, but it was still such an empowering experience that I really latched on to Linux and open source software.

A lot of my early experience with GIS was using proprietary software which had bugs and limitations which regular users couldn’t really do anything about, while outside of work I was using a lot of open source tools which were just so nice to use.  I realized that the proprietary tools everyone took for granted were often more of a hindrance than a help. Although open source tools may be harder to discover, proprietary tools tend not to be geared to extension or giving power to the user, so the end result is frequently reduced productivity with greatly limited flexibility. Add in the matter of open source software having, by definition, vastly broader accessibility, and it was really no longer a question for me.

Essentially I like the combination of the empowering support that you can find in the “open” communities with the flexibility and just plain utility of open source software. We share solutions and data because we’re all in this together. Likewise, a lot of the outside-of-work things I do now involve building communities that try to allow others to find the same kind of support, and feel enabled to learn new things.

Q: I met you last year at the Esri UC where you organized a great Open Source Lunch & Learn. You also organize Austin Open Source GIS and PyLadies ATX. How important is networking to professionals in tech fields?

A: When I hear the word “networking”, I think of that check-out-my-cool-business-card, let’s-make-5-minutes-of-awkward-conversation-then-maybe-never-speak-again thing we do at big conferences and business events. It’s probably a necessary function. As an industry we all basically agree that this kind of face time is what we use to build our professional networks. And something, something, jobs, right?

But what I try to make happen with the things I’m involved in, and the groups I organize, is something different. What I’m really, really passionate about is this idea of bringing enthusiasts together, creating comfortable and safe spaces for learning, and opportunities to grow collectively. That kind of networking is what really makes me happy: connecting people who want to learn something, try something out, toss around ideas — do something new. And because my experience and interests are so closely tied to both programming and GIS, most of what I do regarding community building is within the mutual orbit of those two worlds.

In PyLadiesATX, and also Austin Open Source GIS, I want so strongly to promote the idea that “tech”, and specifically that which exists within the scary bubble of “writing code”, is fundamentally accessible to every single interested person. Culturally, we’ve constructed a lot of barriers to engagement on this: where we’re coming from as individuals may vary, but too many of us carry this idea that programming is perpetually for someone other than ourselves. Especially in the geospatial community, we’ve spent so long constructing our narrative around this idea that we do GIS, they write code. Our community still clings to the idea that Spatial Is Special, but the reality is that lines between “us” and “them” are not nearly as distinct as we’d like to think. So bringing these two worlds — the coders and the geospatialists — closer together is something I’m always talking about. At PyTexas last year I did a talk on “GIS for Python People”… and at next month’s FOSS4G-NA I’m going to be giving the counterpart to that, “Python for GIS People”. I just won’t shut up about it! 🙂

So this is what I enjoy most. But what I’m always wanting to ask people is, what makes you excited? What are you so enthusiastic about that you can’t help but tell everyone about whenever you can? I promise you there is someone else with at least a tangentially related passion around here. Find your tribe! Find that group of people that can say “Wow, cool!” about the same things that make you say “Wow, cool!”. That’s where growth happens — and that’s where it’s most fun to be, too.

Oh, and I’m so glad you enjoyed the Open Source Lunch & Learn last year. One of the things I loved about that event was the fact that there, in the middle of the Esri UC, for one hour we weren’t just trading business cards and looking for the next job opportunity or new shiny thing to buy. Instead we were a tribe of folks excited about the same ideas, showing off cool things we’d built, sharing the same spirit of open — and that was awesome. That’s the kind of “networking” I’m interested in, and what I want to create more of.

Q: You are currently a developer at Rackspace. You’ve been a GIS admin, analyst, and a consultant. What’s been your favorite project thus far?

A: I’m the kind of person who can’t tell you my favorite movie, favorite book, or favorite food on any given day… so I’m going to cop out here and tell you about the kind of project I like best. Sorry. 🙂

I love working on projects that, big or small, simply make things better for a particular audience or user. That’s really, really unspecific, I know! But if the project I’m working on doesn’t have an end goal of getting a user to grin and say “Whoa, thanks!”, then frankly that project’s probably boring. One of my earliest Python+GIS projects was just a lot of geoprocessing glue-code that took what was once a multi-hour manual process and turned it into a streamlined 10-15 minute automatic job. That was awesome, because there were a small but happy handful of folks (myself included!) on the receiving end. And more recently, whenever I’m building a web map or app, that moment when the people I’m working for first see their data and ideas go “live” is always great.

Then again, I also love seeing the horrible, messy, Goldberg-machine travesties that should never see the light of day, but nonetheless exist because of whatever nonsensical constraints they were given. These things that absolutely solve a pain point and defy logic by just working within the artificial constructs that forced their creation, but just are… comically bad, because for example you’re not actually allowed to install any additional software on the system that will run this tool. I’m talking about nasty things like PowerShell-Python-SharePoint monstrosities that we don’t talk about in polite company. Those are awesome too, for different reasons.

Q: Looking at your talks page, and having been present at some before, you cover a wide range of technologies. What tips would you give for keeping up with many different tools at once? Is there an emerging tool you are excited about?

A: It’s funny, all I think is how there are so many technologies that I don’t know or use regularly! I think the subset of tools that I work with regularly (both dev-tools and geo-tools) are constrained to a specific domain: web-stuff, primarily, and all things related to getting maps, tools, and applications to a distributed audience. But outside of that, there’s plenty that I would love to learn more about, if I just had the time.

On emerging tools — the geospatial universe is so huge and diverse, that I know there is a ton happening right now that I’m not specifically aware of. We have so many sub-sections that are just completely hidden from view if you’re not directly involved in their area of focus. Pick a niche, and there is probably some awesome tool being developed right now by an anonymous GIS-something person who probably doesn’t even consider themselves a “developer”, but nonetheless knows exactly what they need to fix their domain-specific problem, and are just working to get this done now. And it’s most likely great, a perfect solution to an ongoing saddle burr. Raise your hand if this is you! You’re probably not the only one with a hand up. Because at heart, that’s what we are: stubborn, persistent, get-this-done types, who happen to share an insatiable curiosity about knowing how things connect — and we’re all just doing the best we can to answer the question of “where”, with whatever resources are at hand.

With that long-winded disclaimer said, here’s what’s on my radar today:

CartoDB. They’re not really ‘emerging’, but since this past Fall they’ve really started taking off (i.e., I can now mention them in non-geonerd conversation and still get nods of recognition). What I love about them is how easy they make it for non-mappers to become mappers, and for non-developers to make a web map. I’m all about sparking interest and lighting fires where once there were none! Someone recently asked me for help making a web map (because I’m that developer-person, and web maps are hard, right?) and it was so cool getting to show them how easy it was to take a spatial layer they’d created and near-instantly make it publicly available as a web map.

Another not-totally-new technology, but since they’re still deep in beta I think they count as “emerging”: GeoGig. Git for geospatial data. For those of you not familiar, this is about building “version control” around your spatial data: tracking historical changes to files over time. This is something that traditionally has only been used by programmers on their code, but absolutely should be something GIS professionals use on our data too. I can’t wait for this to be the new normal in our industry.

And everyone’s saying it, but TurfJS is going to be a game-changer. My opinion’s especially influenced by my past life as a gov/mil GIS-something, and how much of that time I spent fighting the non-local nature of certain web GIS tools (and the “you can’t install that!” nature of everything else). An open source client library like TurfJS is going to be absolutely huge for a lot of people.

Q: Cartographer to developer — your favorite map(s)?

A: Oh no, another “I can’t pick a favorite” answer!

Here’s a by-no-means-complete list of some of my favorites:

  • Basically all of the work done by Andrew Hill in conjunction with CartoDB. He makes some gorgeous maps on that platform (like the directional river flow map) and pretty much all of them remind me why I don’t try to be a cartographer.
  • The “Nobody Lives Here” map by Nik that took the internet by storm last year. Yet another of those “this is why I’m not a cartographer” maps, the idea is deceptively simple and the result is just so cool.
  • NOAA’s GOES imagery. As a weather geek who spent years living on the Gulf Coast (hurricane country), I’ve spent way too many hours engrossed in the NHC’s satellite loops. For that matter, I have a soft spot for hand-drawn hurricane tracking maps, of which I’ve made my share.
  • Basically any map example used in the fantastic “How To Lie With Maps”. There’s a chapter that walks through cartographic tactics used by Cold-War-era Soviet mappers, and it’s just incredibly interesting to read.

Q: You live in the hipster capital of the U.S. — Austin, Texas — and you’re in Geo. I think that technically makes you more geohipster than all of us. What does the term mean to you?

A: Oh good, at least I get to be some kind of hipster! I’m pretty sure I’m not whatever kind of hipster we’re the capital of here (or wait, does it make me a hipster to say that? Now I’m confused…).

I’m not really sure what “geohipster” means, but I guess part of the movement is that it can be open to individual interpretation. One thing I’ve noticed is that the people who claim the label are all pretty interesting folks, who tend to be the outside-the-box thinkers. There’s a bit of a spirit of nonconformity in the community that seems closely tied to learning, using, or building new things. Not just focusing on the next big thing (though we have that, too) but really talking about what might make the world better (whether it’s a tool to make someone’s job easier, or crowdsourcing maps to improve emergency response). Being willing to go against the flow and try something different is something I see in common among the geohipster crowd.

So, if being “that chick with the weird hair that talks a little smack about Esri and wants everyone to learn to code” makes me a geohipster, then it’s a badge I’ll proudly wear. Thanks!

James Fee: “If you have spare time this weekend, learn dat”

James Fee
James Fee

James Fee is the creator of Planet Geospatial, which has helped build a community around geospatial blogs. He has also keynoted conferences including the Safe Software FME UC, URISA, BAAMA and many more. You can follow him on Twitter, view his presentations on GitHub, and connect with him on Facebook and LinkedIn.

James was interviewed for GeoHipster by Mike Dolbow and Atanas Entchev.

MD: I get the sense that your GIS career has had a few unusual twists and turns. Can you tell us how it all started, and what the biggest surprise has been?

JF: It started with a small job for the City of Mesa, AZ working on the mid-decade census. A Sun SPARC workstation was dropped off and I was the only one who wanted to read the Arc/INFO manuals. So I just started with the “A” commands and worked down to the “Z” commands. Good thing I needed ADDITEM first than WORKSPACE. The biggest surprise has been how easy it is for GIS to adapt to changing technologies. Honestly we are doing the same things we did 25 years ago but quicker and cheaper with less bodies around to get it done. I don’t do GIS in the same way I did it in the early 90s. I don’t even call myself a GIS practitioner. But I do the same basic commands I did with Arc/INFO back in the day, just with JavaScript and PostGIS.

AE: I see a trend in recent years where a number of prominent geogeeks now do “more database, less GIS”. Why do you think that is? Is there money in GIS?

JF:  GIS has always been databases. The difference now is not be so special about it. Why do we need SDE when PostGIS/SQL Server and Oracle can do the same work? Why do we need a special proprietary GIS file format when SQLite, PostGIS and even CSV get the job done easier? That doesn’t mean the skills to run such operations are simple, just the tools are more robust, cross-platform, and easier to learn. Databases are the key to solving spatial problems and they don’t need to be tied to some special GIS silo. Even Esri sees that. I doubt there is money is GIS on its own. We all see that. The money is in spatial and solving problems in those applications and databases that are necessarily spatial by default.

AE: You are one of the earliest geo bloggers, and one of the most opinionated. Have you experienced any adverse effects from your blogging?

JF: If I have I don’t recall. Blogging has opened up thousands of doors for my growth and sanity. I’ve never been told to take something down and I don’t think I’ve ever done so.

MD: I’ve never had the patience to keep a blog updated, but I certainly appreciate the value. Have you ever looked back at old posts like this one and marvel at how much things have changed? Or do you spend more time pursuing current topics like Metadata Madness (which I couldn’t agree more on)?

JF: I started blogging because I was fed up with SDE and Oracle Spatial. I found PostGIS and wanted to learn more. Blogging seemed the very 2005 thing to do. Things have changed for sure but many of the same projects and players are still around doing what they do best. I don’t really go back and look at my old blog posts except when I’m googling a subject and something I wrote is the best result. The old circular reference never fails when you’re in a hurry. I always look forward rather than reflect on debating the need of open-sourcing Avenue.

AE: Last week you announced the end of Planet Geospatial and Spatially Adjusted, and moving all your blogging to Tumblr. Does this signal the end of long-form blogging for you? Do you think long-form blogging is dying?

JF: I moved to Tumblr because it is easier to share and write on the iPhone and iPad. I’m so over “rolling my own” solution with blogging. Twitter and Facebook have taken over for blogs. It’s more democratic these days. Rather than wait for a blogger to write a subject and make a comment, you can just write 140 characters and let the community run with it. I don’t think Tumblr limits me from long-form blogging. It just allows me to share things quicker than WordPress or Jekyll ever did. After over 2,200 blog posts and 10,000+ comments, change is inevitable.

MD: Over the last few years you’ve hosted “Hangouts with James Fee”. Your “10 Years of Steve Coast” hangout lasted almost an hour in August. What inspired you to pursue this kind of format? Is it easier to host a hangout than it is to write an opinion piece?

JF: It’s fun to hear the conversations. We always say that when we’re having beers talking about how much we love the shapefile. It just seemed natural to have such a hangout and the team at WeoGeo did much to get it done. It’s easier to have a hangout of course, there doesn’t go much prep into it. Some things need to be written down though and that’s where the blog still has its point. Generally these hangouts could last hours if we didn’t put up a hour time limit. I wish I had time to get more done, they’re a blast and it’s never hard to find someone to join in.

AE: Is dat the next big thing? Why/why not?

JF: dat is great for working with large datasets. One can stream any format into any format. It’s an ETL but it is so much more than that. I like it because its CLI is so easy to use. So much data resides in huge data stores that are hard to access and use. I envision dat being that key that opens them up and allows me to get at the data in the tools I like to use. I feel like it is the key to open government data moving forward. If you have spare time this weekend, learn dat.

AE: I admire your passion for baseball, even though I don’t understand the sport. Any chance a Euro transplant such as myself can learn to appreciate baseball?

JF: Sure, baseball is all about statistics. That’s why I think spatial geeks love it so much. Every play, every movement of each player, every pitch, every swing is tracked and loaded into a database. It’s such a social sport too. Grab a beer, your friends, and head to a ballpark for a great evening. That and the Giants are World Series Champions again!

MD: Speaking of your fandom, it appears you are a Giants fan for baseball, a Lakers fan for basketball, and and Arizona State fan for football. This is confusing even for a New-Englander-turned-Minnesotan. Can you explain your allegiances?

JF: So there is no simple answer. I’m from Southern California so I grew up a Los Angeles Lakers, Los Angeles Rams and California Angels fan. I disliked the Dodgers because they were everything the Angels were not. Thus I rooted for the Giants just to annoy Dodger fans. The Rams moved away and I swore off the NFL but at the same time I went to college at Arizona State University (thus college football replaced the NFL). Before Phoenix had a baseball team, it was the Triple A Phoenix Firebirds affiliate for the San Francisco Giants so I just started rooting for them. Then after graduation I moved up to San Francisco and the Giants replaced the Angels officially. Of course it made it hard to root for the 2002 World Series but I was pulling for the Giants. Thus it’s Giants in baseball, ASU for all NCAA sports, and the Lakers for basketball (though there isn’t any reason to pay attention this year).

AE: Thank you for the interview. Any parting words for the GeoHipster readers?

JF: Open data is a buzzword but it’s the wave of the future. Projects like dat are going to be critical for any project moving forward. Learn these tools (dat, PostGIS, Python, JavaScript) and you’ll be successful for the next decade.

Amy Smith: “One of the things I love about Maptime is that it’s open to all skill levels and backgrounds”

Amy Smith
Amy Smith

Amy Smith is a Geospatial Data and Technology Specialist with Fehr & Peers in San Francisco. She’s had some great opportunities working with geographic information systems in a variety of fields, including environmental studies, satellite imagery analysis, water resources, and transportation planning. Amy currently spends her days working with an amazing group of people focused on improving transportation in our communities. In her free time she enjoys exploring the hills of San Francisco.

Amy was interviewed for GeoHipster by Christina Boggs.

Q: A few years back we used to work together but I don’t actually remember how you got into GIS. You have a master’s in it right?

 A: I do! I have a Master’s in Geography and Regional Studies. I got into GIS through a chance encounter with a geography professor whom I passed in a hallway on campus. Somehow we started talking about geography. I was undeclared at the time. I was trying to decide between GIS and intro to computer science for a general requirement. He told me a bit about GIS and geography, and that really won me over. Who knows, I could have been a computer scientist if I hadn’t met him!

Q: You didn’t leave computers entirely though, you’re pretty slick with code… In fact, you’re a great promoter of Python. Which came first – GIS or coding?

A: My first programming/scripting language was Matlab. I learned it while I was working on my master’s studying space-based synthetic aperture radar data in the Florida Everglades. Through learning Matlab, I learned the basics of programming logic. When I started using desktop GIS every day for work, it got me thinking about ways I could be using programming for spatial analysis, which led me down the path to Python. Since then, I use it almost every day, and not just for spatial analysis.

Q: What other tasks do you use Python for?

A: Lately I’ve been using it to prepare transit data for travel demand models. Since many of the inputs of the models are text-based, Python lends itself well to these types of tasks. It can also come in handy for automating things you’d rather not do manually. For example, I had an Excel spreadsheet with multiple worksheets that needed to be saved as individual CSVs. Instead of exporting them one by one, I wrote a script to iterate through each worksheet and save it as a CSV. Kind of a mundane example, but it’s this type of thing that I think can save lots of time at the end of the day.

Q: Speaking of time, you did a transportation study and saved time by scripting some node-based analysis of road segments to bicycle accident occurrences. I saw your talk at the ESRI UC where you talked about becoming one of the points. Do you know if that study has been reviewed by any of the traffic safety folks out in your area, has it helped any?

A: That was one of the first projects where I got a chance to develop a custom script tool for ArcGIS. The tool uses a roadway network and collision data to pinpoint high incident collision areas that might need attention. The tool was applied most recently by Placer County here in California to run a collision analysis of their entire county-maintained roadway network, which used to be a manual review process. They used some of the results to apply for grants and received several grants funding highway safety projects. Another benefit of the tool is that the county can continue to use it with new data in their safety programs.

Q: You’ve taught workshops on Python and even done some online workshops. Do you have any more in the future, or are you branching out to something different?

A: I’m planning some internal Python training here at Fehr & Peers for our planners and engineers who’d like to learn more about it. I’m always happy to talk with others about Python, so I hope there are more opportunities out there for workshops. I’m still learning too, so I’m always on the lookout for workshops and meetups others are hosting. In terms of branching out, I’ve recently been diving into JavaScript. There’s a library I’ve been learning about called D3 that has some great spatial as well as non-spatial capabilities. I’m still in the “stumbling through it” phase, but luckily there’s a great user community online and here in the Bay area that’s eager to share knowledge.

Q: A few months back you attended my first #maptimeSF with me; now that you’ve moved out to San Francisco I see you get to go to #maptimeSF more often. For someone who is thinking about attending their first Maptime, how do you think it helped you as an advanced GISer?

A: Maptime is a meetup that’s happening in many cities around the world where folks can get together, learn about maps, make maps, talk about maps, or maybe just hang out with friends. One of the things I love about Maptime is that it’s open to all skill levels and backgrounds. People are encouraged to ask questions and learn from each other. It’s a very welcoming environment. I’ve learned a lot about how others outside of my industry are using geospatial data and technologies. It’s also encouraging to see a thriving interest and enthusiasm for maps.

Q: Hearing about your work in transportation is really interesting. The water side still misses you. What are you up to at Fehr & Peers? Any interesting projects you can share with us?

A: I have so many great memories from my time with the Department of Water Resources in West Sacramento — it’s where I really started to get my feet wet (pun intended) with Python! It’s also where I learned to drive a boat. I definitely miss the field work collecting bathymetry data in the Sacramento-San Joaquin delta (picture below for proof), and of course the people too!

Amy Smith collecting bathymetry data in the Sacramento-San Joaquin delta
Amy Smith collecting bathymetry data in the Sacramento-San Joaquin delta

 One of the great things about GIS is that it’s applicable in many different industries. Transportation planning has a lot of great uses for GIS too. One of the more recent projects I worked on focused on improving cyclist and pedestrian access to transit stations. The project had a large data organization component that involved gathering available spatial data and organizing it in a consistent way so that we could use it in a series of network analyses. We looked at some of the ways that a well-connected network might help improve access to transit, making it easier for people to walk and bike to stations. I’m currently working on a project, also transit-related, that involves improving transit in an area that doesn’t have a lot of existing transit. It can be a challenge to anticipate how new facilities will affect travel in an area if you don’t have many observations on how people are currently using transit. In this case, we’re identifying places that have developed transit networks and that share similar characteristics with the study area that’s considering improving or expanding their transit system. Both of these projects are very much rooted in spatial analysis, but also require local knowledge. Another fun part of my job is getting to know new areas and talking with people to learn about qualities specific to their region that might not be obvious from just looking at the data.

Q: If people are looking to check out some of your cool stuff, where can you be found online?

A: I tweet about spatial topics, transportation, and my endless appetite for spinach @wolfmapper.

Q: Geohipster Amy Smith is awesome! How do you feel about being part of spreading the geohipster gospel?

A: I’m a big fan of GeoHipster! I was trying to disguise myself a bit by using a seriffed font, but I think you found me out anyway. 🙂

Q: Speaking of transportation, I’ve got to wrap this interview up so I can cycle to work. Is there anything else you would like to share with #geohipster readers?

A: I recently learned about a spatial data format called topoJSON that’s one of my new favorite things. I found out about it at a recent Maptime on D3 and have been reading more about it on Mike Bostock’s wiki. Also, I’ll be helping host a webinar on transit planning with Code for America next month. Tune in if you’re interested!

Happy cycling!