DasHub: A dashboard for Github Issues

DasHub is a lightweight (kanban-style) tool to make GitHub Issues more visible and manageable to teams using Github for issue tracking. 

The entire application is written in javascript using Ember.js

Source on Github



- Ember.js
- Ember App Kit (EAK)
- Github issues API
- Client-side basic auth
- Javascript
- Sass

Upcoming Planned features

Get at me… fur sure.


A web component for the Weather

A card-style weather HTML5 web component example using Polymer.js.

<Source on GitHub/>



- Meteocons: weather condition icon fonts 
- WeatherUnderground API
- HTML5 Geolocation api
- HTML5 localstorage
- Polymer.js


Photography makes us feel closer to the world than we really are.

Susan Sontag


Creativity is allowing yourself to make mistakes. Art is knowing which ones to keep.

Scott Adams


git reset —hard

&& git push —force



Front-end tools brought to you by Twitter

Twitter has ‘contributed’ a lot to the open web. Here are a few examples.

  • Flight.js - a lightweight, component-based JavaScript framework  (started ~Jan 2013)
  • Flight-generator - a Yeoman generator to Flight.js
  • Jasmine-Flight - a set of Jasmine helpers for testing your Flight.js app
  • Hogan.js - a mustache-based js template compiler 
  • RECESS - a CSS style hinter on top of LESS 
  • Bootstrap - although no longer maintained by Twitter, I had to mention this ubiquitoius CSS framework. 
  • Typeahead.js - a fast and fully-featured autocomplete library

And yes, there’s more back-end stuff too. See the full list of repos @ http://twitter.github.io/ 


Rise of the Static Site generators

  I’ve seen a serious uptick in new web publishing projects, over the last 6 months. I think a lot of web developers are pretty unsatisfied with the current approach to the creating content on the web. Stuff like Wordpress, Drupal, Tumblr, Movable Type, etc, all have there pain points, shortcomings, and serious baggage. 


So… we enter a “old but new” wave of how to publish to the web. Albeit, the new shiny platforms are built for developers, but keep an eye out for Jekyll-inspired static site platforms like Harp, Roots, Punch, DocPad & Wintersmith because they could be a strong indicator of what’s coming down the pike.

The common tools used across all these platforms seem to of course be the trendy ones: Javascript, Node.js, Express, Markdown, Jade, Stylus & Coffeescript.



Little problem this morning, going to work…



An Agile Approach

I’ve worked on a few Agile\Scrum projects since 2006 and just wanted to share some notes that I think might be helpful.

The Project roadmap

A roadmap is a high-level plan that describes how the product is likely to grow. The Artifacts (below) of the roadmap are not deliverables, since they have no value to the customer. It is key, that the roadmap be owned by the entire team. Therefore, everyone should contribute to creating and modifying these artifacts.


- User Story: a way to describe a piece of functionality that an end-user wants.

- Epic: A large story that most likely be broken down into multiple stories later on.

- Theme: simply a collection of user stories. However, user stories may belong to multiple themes.

- Spike: A technical issue that needs to be figured out or experimented with before tackling an Epic, Story, or Theme.


Planning meetings (every 2 or 3 iterations)

- Talk about MMFs (minimal marketable features)

- Prioritize into Themes & Epics

- Retrospectives: The team shares what has worked well and was hasn’t. The good, the bad & the ugly

Iteration meetings (weekly or bi-weekly)

- Re-evaluate the top priority items. This is the team’s chance to adjust direction.

- Create the user story drafts (as a team)

- Estimate user stories (difficulty scoring: 1-5)

*Agile also includes many of the Scrum and XP principles, but in the theme of being “Agile”, trying to stay lightweight with this post. 

The most important part is to continuously make adjustments until a process works well for the team. These terms and practices really just serve as an agreed upon language for the team. Which helps foster efficient communication for the team and also other stakeholders.

A great talk from James Shore on "The Art of Agile"


NIN #MadeInAmerica #Gif




Making the build fail right before a release.



N3rd Street as a Honey Pot (for tech talent)

As you may know, N3rd Street (in Old City, Philly) is a pretty attractive place for a budding developer/technologist. The surrounding area is also a pretty great place to live.


(source: alrightmike.com)

However, anyone that doesn’t have access to the area (like an Aussi I met at a conference in NY) will probably never realize such a place exists, even if I told them “you should consider Philly”.

So…I think there’s more that could be done (in an authentic way) to leverage this community as a way to introduce hackers, designers and tech people to Philadelphia. 

While there are some great resources like WeWorkInPhilly.comTechnical.ly/philly, & n3rd.st I’m not sure they’re focused enough to convince a recent grad in Iowa or Florida to give Philly a serious look. I think IndyHall is probably doing the best job advocating the area, but co-working is not an attractive option for everyone, especially if they are looking to relocate.

I’m no expert when it comes to recruitment, community or even marketing, but I see this as an opportunity to help Philly advocates (like me) to spread a compelling story and introduce more talent to the area. Plus, many startups seems to be experiencing this recruitment problem in Philly.

Would love your feedback or if I missed any big efforts on this topic. Thanks.


Creating custom commands in OSX Terminal

Here’s a simple example how to create a custom OSX Terminal command that launches Google Chrome and runs a Google Search from a command line argument. 


1. Run below in terminal, to create the function:

    google() { open /Applications/Google\ Chrome.app/ “http://www.google.com/search?q= $1”; }

2. Test by running:

    google “search term” 

3. Save the command to your .profile

    Open your .bash_profile or create a .profile file and add the command. More info on saving commands here.