Your Bus Is NOT Here! But We’re Working On It…

But myself and fellow hacker & Geoloqi Crew put something together to figure out where the bus is. Nothing super fancy, but the idea is solid. We wanted to get a simple mobile application put together that would identify where it is, what the closest bus stop is, and pull up the next arriving bus(es) for that stop. We were throwing in a few other ideas, such as pulling up specific stops based on your favorites or even specific buses at that route based on your preferred routes.

Pat (@patrickarlt) & I (@adron) started out by pulling in the GTFS data from TriMet. I setup a basic import to turn all the stop locations in the GTFS data into a Place within a layer within Geoloqi. Pat setup a URL that could be used to call down the latest X arriving buses. Then we combined forces figuring out how to efficiently get all of the 7000+ bus stops into Geoloqi. That proved a little bit more of an issue than we thought. Not a huge issue, but one that got Kyle (@kyledrake) and Aaron (@aaronpk) Coding some fast batch solutions to get it all into Geoloqi while Pat & I handled the application.

On Sunday we’re lined up to get the application into a MVP (Minimally Viable Product) state. We’re hoping to be able to maybe even use it tomorrow in at least a simple way. From that point forward we’ll hopefully move past the MVP into other functionality! 🙂

Another thing to note, is that with our basic implementation we’re using GTFS data. This is a data format that is standardized and used by many of the agencies around the country. So technically any transit agency, as long as they have a way to return their route arrivals, can be setup to use our application we’re building. Some of the other GTFS data can be retrieved here;

To check out more, hit up Google’s page on GTFS data sources:  http://code.google.com/p/googletransitdatafeed/wiki/PublicFeeds

Day one of the hackathon has been seriously kick ass! I’ve had a blast and heard some great ideas, seen some great code, even working demo results, and seen amazing skills applied all around! At this juncture, I’m exhausted, got a little more to code, and ready for day 2 of hacking!

A Morning Bus Ride, Just One Reason the Northwest Kicks Ass!

Only in Seattle (or Portland, San Francisco, or Vancouver) can I board a bus and actually sit down and see another person writing code. Not just any code either, but serious stuff. Utilizing js w/ memoization, closures, etc. Not just somebody smashing code into a computer, but someone writing something that would prospectively be performant and useful. Oh dear, what else do I see? Tests! Unit tests! Yes, not only someone writing code, but somebody that I’d hire to actually work with.

The northwest seriously kicks ass!  Cheers!

Geoloqi, CivicApps, and TriMet API/SDKs

I’m heading off on yet another coding adventure this coming weekend. I can never get enough hackathons, startup weekends, and such. The energy, creativity, and learning is unbeatable at these types of events. This adventure will be mashing up a plethora of APIs (SDKs) and other capabilities to build something cool against. What it may be, what it will be, I’ve no idea yet. But here’s a quick summary of the companies & entities involved.

First a quick review of Geoloqi and what CivicApps are, the key sponsors and organizers of the event.

Geoloqi – Development

Description: Geoloqi is a private, real-time mobile and web platform for securely sharing location data. We’re a company that believes in doing more with location, and creating useful services for people and businesses.

CivicApps
Description: The aim is social change. The path is regional collaboration. The focus is local.

Technology is changing our relationship with government. Not so long ago government made decisions with little public input. Those days are gone. Today, information technology has redefined the structure and authority of government. The problems our communities face are beyond the capacity of government to resolve alone. Cooperation, collaboration and openness are no longer questions of opportunity; they are essential means of conducting our community’s business effectively. Every citizen can be an active participant in reshaping their world. WE are the government.

The CivicApps.org site aims to encourage every citizen to be an active participant by putting the data in their hands. The CivicApps.org site was developed to source, profile, and accelerate innovative ideas using Web and mobile technologies. The aim is social change. The path is regional collaboration. The focus is local.
Beyond these two organizations there are a host of others that are putting forth support through either the hackathon or the CivicApps Efforts.

Here’s a list of the entities involved in the CivicApps Project, click on the respective image to learn more about each one. All of these, in some way, form, or manner have contributed data or otherwise to the CivicApps Data.

An elected regional government, Metro helps you make the region an extraordinary place to live, work and play. Metro serves more than 1.5 million residents in Clackamas, Multnomah and Washington counties and the 25 cities in the Portland region. Some of the related data & maps they provide are covered here.

Our belief is that mass transit ridership can increase dramatically through improved customer service.

We’ll help by:

Empowering passengers with information about waiting time.
Providing Transit Authorities and operators with a robust, reliable, and cost-effective way to manage fleets and communicate directly with passengers.
Reducing the uncertainty associated with public transportation.

TriMet provides bus, light rail and commuter rail service in the Portland metro area. Our transportation options connect people with their community, while easing traffic congestion and reducing air pollution—making our region a better place to live. TriMet’s developer resources are available here.

…and others:

   
     

Stay tuned and I’ll have more on the hackathon and my project. Cheers!

Me on TDD/BDD/Pairing and Jason Fried’s TED Talk and “why work isn’t done in the office…”

This talk is so right, but could it be so wrong at the same time?

Just watch this, that’s all I have to say. Jason is so right about this topic. Here’s a few quotes to convince you.

  • I’m going to talk about work, and why people can’t seem to get things done at work…
  • If you ask people the question, “where do you go when you really need to get something done?” you typically get three different types of answers; one is a kind of a place, a location or a room, another is a moving object, a third is a time…
  • The Train”  <  – That one caught my fancy, if you’ve ever talked to me about transit you know that one caught me…  🙂
  • What you almost never hear people say is “the office”
  • Managers and bosses will tell you the distractions at work are things like Facebook, Youtube…”  “…and they’ll go so far as to ban it…”  “…what is this China?!”
  • The real problem in the modern office is the M & Ms”   <  –  Oh hell yeah, so very true.
  • Manager’s jobs are really to interrupt people…” “…they don’t really do work so they have to interrupt you.
  • You would never see a spontaneous meeting of employees, no, managers do that…

To summarize, do telecommuting right, and it will absolutely blow away anything that is ever accomplished “at the office“.

Oh my Adron, you’re such a hypocrite! You are always talking about TDD and BDD and Pair Programming and teams being together and…

YES! You have a point, so let me throw this prospective hypocriticalness of mine away and prevent any concern that I’ve missed a logical connection. I assure you, I haven’t.  🙂

I do support people working remotely. I also love to have a team close together with high communication (and here’s the catch) that is focused on the problem. This is what Jason is talking about! People generally don’t stay focused in cross-cut teams, with this focus and that focus and then throw managers on top of that. The next thing you have the dreaded M & Ms dramatically decrease any chance of work getting done.

If a team can be left to their work, especially if they have clear problems to attack, to pair on, to write tests against and to implement this is the precise example of why to work together. However, I’ve also seen successful, very successful teams working together remotely. Jason & the 37signal’s crew have done that before! They’re a prime example of it.

But How Does Remote Work, Work?

You have to be disciplined, you have to have check in points, but take 2-4 hours at a chunk and do work! Use e-mail and instant messaging as Jason points out. These are the keys to successfully getting things done! Where I currently work, we actually get this type of allowance. We even do remote pairing (albeit rarely, but it has been done)!  It can work, and it can work very well. However we often break away and have time chunked where we don’t talk, but instead leap forward in our efforts to get work done. Sometimes we pair, sometimes we don’t, it generally depends on if we’re writing code or just getting configs and databases put together to write code against. No reason to pair on a configuration file!  😉

So really, the key isn’t to be physically collocated, or that you have to be remote to each other. The key is to have communication, high levels of communication, but at the right moments in time! The communication must be focused and to the point. It much bring information that is needed, not long drawn out meetings of vacuous boredom and emptiness. The work is done when someone, or a pair, can focus on the problem at hand and find the solution to that problem – alone or with their pair. These are the keys to getting real work done!

Thanks TED Talks for getting me all fired up this morning!  🙂

Ruby on Rails Hittin’ The Big Time, A Friday PSA

How do you know that Ruby on Rails has already hit the big time?  Not that it needs anymore proof that it is absolutely one of the MAJOR platforms available right now…

  1. Recruiters now regularly come to user groups & offer to “buy the beer” afterwards.
  2. The split of job searches on sites now easily come up with dozens upon dozens of Ruby on Rails Jobs.
  3. Enterprise & Other Managers are commonly asking what the “Ruby on Rails Dev Base” looks like.  In other words, they want to know who and how many people they can hire.
Anyway that you look, you’ll see Ruby on Rails making inroads at a company near you! Keep your eyes peeled, and if you aren’t polyglot now, you might want to start thinking about it.
Cheers!  Happy disruptive markets to you!  😀