Understanding Development from a Day In the Life

November 23, 2009

Monday morning is the time when our teams interact the most about projects and the coming week.  I’ve decided to capture events typical of Monday to provide insight into our work developing products for clients.  I’ll do my best to include everything warts and all even if that means sharing something I would not normally share.  In support of full disclosure, I took sparse notes over a period of time and came back later to clean up the text and add commentary.  Here goes nothing!

Our high-tech revolution has plunged us into a state of continuous partial attention.

iBrain by Gary Small, M.D. and Gigi Vorgan

- A typical Monday starts by pulling my canoe out into the various communication streams.  Logging on to Skype is the watershed event.

- Skype is running.  Firefox is open with tabs for email, calendar, several Google docs, WordPress for this post and YouTube for a side project I am working on.

- I check in with my lead on Skype.  I have the same guy across a few of my projects.  This certainly streamlines the communication.  He’s in Costa Rica.  When I worked at Adobe, we used IM all the time as people worked on different floors and at different locations.

- I am acting as the product owner for one project and I clarify something about a feature we are implementing.

- On another project, our client provides detailed specifications and we review the documents to make sure we are in sync.  We are, which is good.

The new promise of collaboration is that with peer production we will harness human skill, ingenuity, and intelligence more efficiently and effectively than anything we have witnessed previously.

WIKINOMICS by Don Tapscott and Anthony D. Williams

- Our newest client jumps on Skype to validate the release, our testing and the schedule.  There is a lot to discuss so we move to a Skype call. He does a good job managing his business to create an active and valuable community.

- Another issue comes in about how a feature should work that requires some thought.  I ignore chats and emails for the next 30 minutes and open specifications in Google docs and mock-ups in Preview.  We clarify the issue.

- By late morning, the major communications have been completed.  Projects are moving forward and our teams seem to understand what needs to happen this week.  I am responsible for a couple of releases that are in full swing.

No matter how clever the idea or great the implementation, an invention typically lives or dies depending on how well it can be integrated into a larger social or technological context.

Juice by Evan I. Schwartz

- The marketing text for our Web site update is long overdue.  Some tasks on the docket this week are for corporate business.  But I decide to focus on that side project and YouTube.

- I started a project called ReachGivers.org to help charities and non-profits get their message out over the Internet.  ReachGivers.org uses Ruby on Rails and has Twitter integration.  I added a poor man’s blog a while back as well.  This week I want to add video support.  Side projects help me stay connected with technology.

Economics is above all a science of measurement.  It comprises an extraordinarily powerful and flexible set of tools that can reliably assess a thicket of information to determine the effect of any one factor, or even the whole effect.

Freakonomics by Steven D. Levitt and Stephen J. Dubner

- Off to Starbucks for a Mocha and a blueberry scone.  This happens so often that people know me by name there.  The Ethos water billboard reminds me I wanted to blog about that on ReachGivers.org after finishing the video work.

- My brain stumbles on some concepts for the marketing text and I jot down some ideas.

- I was working on a product a while back and was not that impressed with the end user documentation.  I sent a book proposal out to a technology book publisher, which turned into a series of titles, and I have been writing every since.  I love it, I really do.  I even enjoy working on marketing text and ads.

Execution is not a one-time event.  Nor is it a process where you check off goals as if your sixth-grade teacher were looking over your shoulder.

The Art of the Start by Guy Kawasaki.

- Shorty before noon we get a curve ball. Mid-cycle, our client needs to shift direction on a project to change the prioritization and the release date.  I’ll spend the next few days updating user stories and validating the new plan. Sometimes I feel like we’re actually better at hitting a curve ball.

- The Agile software process, which is intended for flexible development, actually advocates against this type of mid-cycle change.  Release cycles are purposely shorter so that a direction shift simply influences the next cycle.  For start-ups, next month can be years away.  We have to be more flexible.

- A site we monitor generates an alert right before I can escape for lunch.  I used to get a little rush on these mini-emergencies like working as an EMT. Now I am the ambulance driver who knows that most pick-ups are not at all like the show ER.  Still, up-time is important and so we resolve the issue as quickly as possible.

- It occurs to me that this post demonstrates why people Tweet.  Expressing myself effectively with 140 character didn’t work well for me.  I decide to try it again because I am enjoying creating this running dialog.

- We’re trying to send large Photoshop files with mock-ups.  Some days technology just seems to work against us.  We’re hitting proxy issues and time out issues.  Eventually we solve the problem and remind ourselves yet again we should standardize on an approach.  Problem is, email and Skype are so convenient and work well enough most of the time.  I guess this would be one of those warts.

Agile software development methods should be able to survive in an atmosphere of constant change and still emerge with success.

Agile Management for Software Engineering by David J. Anderson

- After 40 plus years of eating sandwiches, I still love a good sandwich.  The best sandwich in town is from the deli in Vallergus and the people at the cash register all know me by sight.

- I never get back to the post after lunch.  Clients and partners all eat at different times and issues were waiting for me when I got back.  That is definitely a typical Monday.

- I didn’t finish the marketing text either.  The text I came up with was not remarkable.  I made some small updates to our corporate site instead and also finished my changes on ReachGivers.org.  Perhaps I will think of something while winding down for the night.

- My iPhone sits by my bed.  With several releases in play, there is always a chance a developer is still working and will fire off a question.  Of course, I can’t just let the device sit there, now can I?  I pull my canoe back out into the stream and see what else I might have missed during dinner.


Ideas for Small Businesses to Go Green in 2009

January 15, 2009

We asked a group of executives if our company made an effort to be more green would that influence their decision to use our services. As individuals and as a company, we have been pro-environment for some time. We do our best to minimize waste and reduce our carbon foot print. Our efforts make us feel better, but have also increased productivity and reduced expenses through efficient use of resources. Why make a pot of coffee when you just want a cup, for example. How about a fresh cup of tea?

In posting our question, we were considering what impact being green could have on the revenue side of our business. As we had hoped, several executives indicated that they would look favorably on companies making a green effort. The responses were definitely encouraging. Considering our environmental impact is now even more of a factor than before. Making your company more attractive to customers, saving money at the same time, while contributing to a global cause, all sounds like a win-win-win to me.

We haven’t implemented everything we planned, but here are a few things we did to be more green:

Limited office space – We moved our office to San Francisco as part of our company growth. Instead of renting a large space with extra common areas, we procured a smaller space with room for people to work. We’ll rent larger conference rooms, which we need far less often, from a nearby company that offers meeting rooms and other amenities. This is a win-win-win for us (sound familiar). We’re keeping our fixed costs low, reducing our impact on the environment, and yet not reducing our ability to work collaboratively or meet with clients.

Virtual corporation – We fully support working at home. We use online software tools such as Google docs and a virtual PBX so that the working location of the employees does not impact productivity. We have agreed upon times when we’re in the office together. We reduced our commute with these decisions, and at the same time, increased productivity, improved our green-ness and improved employee satisfaction. Wait a minute, is that another win-win-win?

Email PDFs – We try to use as little paper as possible. Email and shared online documents cut our usage significantly. But then, contracts often require a dreaded signature. When a real signature is needed or when we must start with paper, we scan the final document into electronic form as a PDF so that the document can be emailed. For most recipients, an emailed PDF they can print is no different than a FAX. We bought an HP scanner which has a very convenient PDF button right on the top.

e-faxing – We use myfax but have heard eFax is good choice as well. You can send faxes via email attachment and incoming faxes come in as electronic documents. When combined with the previous point, you really can do most of your document handling sans paper. The recipient will still be printing on paper unless they are also using an e-fax solution. I guess we only have a win-win this time.

We’re not done yet, but we feel we have made a good start. We have some new contracts to sign with clients and partners. We’re going to look at using an electronic signature service such as EchoSign. One of our existing partners used the service with us and the process was straight forward. We need to review with our legal team how binding the signature is for legal matters.

We’re still using printed business cards. Maybe someday the infrared technology will be prevalent enough where we can just beam our details to a contact standing a few feet away. Our mobiles have this ability, but the recipient does not always.

In the end, we’re happy we made the effort. Being green feels good and is a strong motivator to re-evaluate business processes. We like obtaining more customers. Saving money in this economy is also good. We’ll see over the course of the year what impacts our actions have on our business

Feel free to let us know what else we could be doing!


Investing Strategies Work for Software Development

August 11, 2008

I had an epiphany the other day. I develop software similar to the way I invest. I decided to examine the similarities to see how my investment strategies work for software development.

Step 1: Selecting an investment

My gut reaction determines if I am interested in an idea. In the newsletters I get from The Motley Fool, I might skip on a recommendation for Best Buy (BBY) but take a good look at Game Stop (GME). Both are retail companies in the technology space. Both are good investments. One stock seemed like a better investment than the other. You should learn to trust your gut because your gut intuition comes from years of experience.

Step 2: Analysis

I do research next to validate my instincts. I am a conservative investor, I’ll admit it (thought not at all in politics!). I like investments where revenues are going up, where cash on the books is higher then debt, and where the price is reasonable given earnings. I am NOT looking to buy at the bottom. Instead, I want to hop on an investment that is comfortably heading in a sound direction. Most importantly, I do research on my investments to see how they measure up to these ideals.

In software, growing revenues is synonymous with a growing market. I am OK with not defining the market itself. For example, Google was not the first search engine company or free email provider yet it is the market leader now.

No debt means good practices in development. Deferred bugs, bad architecture and spaghetti code are all examples of debt that builds up in your product. You will need to pay that debt or sooner or later your product will start to fail and you lose customers.

Reasonable price, to me, is about working in a saturated market. For example, very few companies would consider launching a new desktop word processor or spreadsheet at this time given the dominance of Microsoft. If the market is too mature, the payoff is too far down the road and too hard to get.

Now let me ask you. Would you want to work on a product in a growing market building a well constructed application where the market leadership is still wide open? I would!

Step 3: Buzz

Software buzz increases the chance people will hear about your product and that is key to customer acquisition. I am looking for an investment. My money goes in and 5 years later is worth more than when I started (hopefully 10% compounded annually) . This happens when the value of what I have invested in increases. The more people want something, the more valuable it becomes.

In the end, I discovered that my strategy for success in my investments and my profession are very similar, and for good reason! I guess I shouldn’t have been surprised. Sound principals in investing work for software development and many other aspects of our lives.