Wed, 10 Feb 2010
Baus.net Podcast 2
Baus.net Podcast 2
First off, I have to apologize for the spottiness of the baus.net uptime. I'm having problems with twistd after switching my site over Linode. I don't think twistd's event driven I/O model is working well with pyblosxom.
I finished my second podcast that I recorded on my iPhone yesterday. It is keeping with the theme to do what is important.
My general premise here is that working and running companies is important, and it is wrong to discount capitalism as evil.
Here's a couple links that I mentioned in my podcast:
Randy Pausch Time Management Talk from 2007
Notes from Ryan Carson's BoS talk
Sat, 02 Jan 2010
Baus.net Podcast 1
Baus.net Podcast 1
I just finished my first podcast in the theme of becoming a "content production machine." It is pretty rough, but you have to start somewhere.
Here's a couple links that I mentioned in my podcast:
Randy Pausch Time Management Talk from 2007
Randy Pausch Time Management Talk from 1998
Dharmesh on Inbound Marketing
Resolutions for 2010: Become a content production machine. Do what is important.
New Year's is one my favorite holidays as it comes with the least responsibility of all the major holidays. There is nothing
to do except have a good time. No turkeys to cook or presents to buy.
K keeps a scrap book of mementos and looking back, even with all
the economic craziness, 2009 was a good year. We traveled, went to a lot
of shows, got some work done, and our families saw good health. Last spring, when the market melted down,
I thought I would be out of a job. Fortunately that didn't happen, and
in many ways our team came together which made us even more effective.
I'm optimistic about 2010. Although the U.S. has some systemic
problems that we haven't come to terms with, our fundamentals are
right. In times of crisis, it is best to embrace the fundamentals.
I appreciate the customary self critique of resolutions. A resolution
doesn't need to be self deprecating, but a recognition that no matter how well
things are going, there is room improve. My resolutions this
year are a bit odd (sure I need to lose 15lbs, but that isn't anything
new). My resolutions are to become a content production
machine, and do what is important.
Become a content production machine
It sounds kind of strange to aspire to become a content production machine, but I wrote last year that I had started
to take the internet for granted. I acted as if there will always be another day
to express my opinions, but if history is a guide, that
might not always be the case. I have more
power of expression at my finger tips than in the entire history of mankind. That's not
something to take lightly, as there are many places were the internet
is already tightly control and freedom of expression limited. I am
very fortunate to live in a country with a strong foundation in
freedom of expression.
Also the ability to create content is increasing quickly. Writing is
just the beginning. Video and (and to a certain extent) audio is going to be
increasingly
huge in the next couple years. It takes a lot of energy to write. I'm busy, I'm tired, I don't have the mental energy to
write, but why limit myself to writing? It could very well be easier
to just record my thoughts in a audio cast or video log. I definitely
think doing something is better than nothing.
Do what is important
One of my biggest influences from 2009 was the late
Randy Pausch. I
was a late comer to Randy Pausch's work, but I've never heard anyone put the meaning of life
in such concise terms. If there is one lesson I've learned from Randy,
it is, "Do what is important."
While Pausch deservedly became famous for his
Last Lecture, I've
found his talks on
time management to be even more pragmatic and possibly valuable.
When I'm driving (which I do a lot)I tend to put a familiar album on repeat and roll
around the events of the day.
This year I kept hearing Randy's voice in my head, "Do what's important. Do what's important."
I'm bad at this. I do shit that isn't important all the time. Here's
an example. With Randy's guidance, I did do something semi-important
on my to-do list: I got my old Porsche out of the
garage. That is something I failed to do for nearly 2 years as I
became overwhelmed by the work it required. But getting the car on the
road was important because everyday when I came home and saw it in the garage
it sapped a little energy from me because in the back of mind I thought, "I need to get that
Porsche out of the garage." It kept me from doing other more important
things.
While the Porsche isn't important, getting it out of the garage was because it represented just another thing
to do. But then I did something that wasn't important. I obsessed
about the stupid thing. How much is this going to cost? How much is it
worth? Is the suspension pan going to rust out? Is it going to need a
valve job? Those are valid questions, but they aren't important.
And this is why I haven't reached Pausch's zen state of
productivity. In retrospect, I should have done the important thing
(get the Porsche out of the garage), and then moved on to the next
important thing. But that's hard, and it is the reason Randy Pausch
was Randy Pausch,
and I'm not. Completing one important task threw me off course
of my next task.
Even in his dying days, Pausch didn't claim that his work, and the
fun he had doing it, wasn't important. It is clear that Randy put his family above all
else, but he had a lot of pride in what he accomplished in his career.
He said he made dreams come true, and he did. If I saw one thing last year that absolutely blew my mind as an engineer it is was
the game by two of his former students,
World of Goo. The entire game,
including design, animation, musical score, and programming was done by two people with virtually no budget. It is
a benchmark of what can be accomplished with a small team, and the
interdisciplinary skill set it took to build it is mind boggling.
Fascination, passion, and the freedom to dream is what
drives our society forward. The U.S. has a strong work ethic, but I
don't believe work should be viewed as universally unenjoyable, because if virtue
is found in doing unenjoyable work, the small things that make our
working lives better will be not be considered valuable, even when the
true costs are very small.
So this year I resolve to do what is important, but the hard part is
understanding what is really important.
Tue, 24 Nov 2009
Baus.net upgraded
I just finished a significant upgrade to baus.net. I
regrettably let the site atrophy to the point where I wasn't
sure how it is was running. Baus.net felt like a messy desk. While I could get other work
done, it kept nagging me every time I looked at it. While I haven't made any aesthetic changes yet,
I did complete the following tasks:
- Download pyblosxom blog code to my Mac and get running in WingIDE.
- Get Subversion plugin that hosts my entries running on Mac.
- Make some code updates to take advantage of the Python Subversion API changes.
- Get pyblosxom core running under WSGI on twisted.
- Research re-enabling comments (decided to make it another project).
- Move static content to S3.
- Move image hosting to Flickr.
- Centralize code and content into a singly rooted Subversion repo.
- Load javascript libraries from Google.
- Upgrade from statcounter to Google analytics.
- Create CentOS VM on VMWare Fusion to stage deployment.
- Configure nginx to proxy to twisted and feedburner for my feeds.
- Upgrade memcached and libevent.
- Centralize logging for all services.
- Document the installation process.
- Write startup script.
- Provision new Linux VM from Linode.
- Perform installation on Linode.
- Update DNS to point to new installation.
This project ending up costing tens of hours of my personal time, and there was a point
that I was ready to scrap the whole thing and move to WordPress.
But I'm glad I finished the project. I use baus.net to try out technologies in a pseudo production environment,
and having my own personal content in total disarray didn't sit well with me.
I also realized that my previous experiments with using Subversion to store my blog content had a direct impact
on a project we are working on which uses Subversion as the back-end of a content management
system. I had confidence that it would work after running baus.net this way for years.
I take pride
that in my free time I've created a system from end to end including system administration, Python development, and
some basic CSS/HTML hacking, which includes a pretty novel use of Subversion. That might sound silly for something
as small as baus.net, but I think there is something to be
said about building an entire system no matter how small. As a project manager responsible not
just administration or software, but whole systems, at some point I have to walk the walk to maintain credibility.
If all I do is go from one meeting to the next projecting ROI,
discussing synergies, and saying
absolutely have I added
any real value?
Fri, 13 Nov 2009
Joel: What should we do when things don't go according to plan?
After the
Business of Software conference, I was reading over my notes
when I saw on Twitter that
Jason Calcanis was hosting his
TWiST show at the
BoS venue and was going to interview Matt
Mullenweg of WordPress along with Joel,
so I tuned into the webcast.
After Joel took the stage with Jason and Matt they started joking about how
Matt, at 25, had done more that day than the rest of us will do in our lifetime,
and Joel said something rather unexpected. He stated that he was "wrong" about the
direction of one if his early products, CityDesk, which was a desktop content
publishing/blogging system which Joel used to publish his own blog (and apparently
still does).
After reading Joel for years, and having been a former CityDesk user, I was
a bit shocked to hear this as
CityDesk has been
quietly swept under the carpet. The last official "News" item about
the product was an announcement about Vista support from 2006.
About a year ago in his blog forum he basically admitted that
CityDesk
had been unofficially end-of-lifed, which lead to the following
comment by Mark Major:
...I used to visit the Fog Creek site twice a week - for !a year! after the last CityDesk version in 2003. Thinks me: "Any day now, any day now." "It's cool already, it's gonna be *so* cool when they fix that little complication with my article loops."
Such a shame that CityDesk ate the CEO's children, causing massive
abandonment of the project, subsidence of world peace, etc. Now all
we CityDesk users can do is stare at the glamorous office pictures and
wish one of the much revered 'twenty power outlets at each desk'
programmers gets tasked with a revamp for us.
Inspired by
Rands BoS talk on improv, or "talking shit" as he would say,
as
Jason started taking questions for Joel and Matt from Twitter, I fired off
the following tweet which he read on the show:
Warhol's future has come and gone. On the internet everybody is famous
not for 15 minutes, but 15 secs, and I just blew mine. It's all down hill from here.
If there is one
writer I look up to as the standard bearer in the software industry its
Joel (ok
JWZ is pretty damn good too). He defined personal branding and
what
Dharmesh now calls
inbound marketing while never talking
about branding and talking very little about marketing. He just did it.
In
a post from earlier this month Joel describes Kathy
Sierra's brilliant concept that your job as a software developer is to
help your users to become awesome. To take it one step further, the job of any
company is to help their customers be awesome. Then the focus of
Fog Creek is clear to Joel: "It's all about helping software developers be awesome
at making software."
Joel, in a rare moment of self depreciation says the following:
"Our focus on helping developers explains why one of our early products, CityDesk,
flopped: it had nothing to do with software developers."
But that doesn't tell the whole story. When CityDesk was
developed Fog Creek didn't have a focus on developers. There
was JoS sure, but there were no developer products. The focus came with
the success
of FogBugz.
If CityDesk would have taken off, he'd be writing
"Our focus on helping bloggers and content creators explains why one of early
products, FogBugz flopped: it had nothing to do with content creators."
Joel, you are going to be eating your words in two years. Why? Because
StackExchange is going
blow the pants off of everything else you've ever done, and it is going
to have nothing to do with developers, and everything to do with people
on answering questions about their pet
ferret.
After
DevDays, I became convinced that
Fog Creek is on the verge of
hockey
sticking. Fog Creek will become
StackExchange (BTW, could I put a couple dollars on that?).
The reason is that no matter how good you are at building developer tools
like FogBugz, it is a tiny market compared to the main stream
potential of StackExchange.
Imagine for a minute if Google would of come out with code search before their web
search and declared themselves a "developer company." Then a year
latter released their web search which immediately increased their market 1000x. That
focus on developers would seem pretty irrelevant wouldn't it? That's what
is about to happen at Fog Creek.
The reason why CityDesk wasn't a run away success wasn't because it was a bad product or that Joel couldn't market it or
that it wasn't developer product. It just wasn't the right product at that time. CityDesk was content management
system when the world was embracing blogging. It was a desktop app
when web apps were just starting to come into favor.
If you don't mind Joel, let me offer you a bit of advice; I've
been taking yours for years. You should write a entry titled:
"City Desk: A postmortem. What to do when things don't go according to plan."
In this article you should clarify the current status of City Desk,
describe how you were "wrong" (your words, not mine) and how the experience
made Fog Bugz a better product and Fog Creek a better company.
This is important because you, and others with whom you are associated (such as
speakers at the Business of Software), have inspired people to change the way they do business. You are
not just a product manager or software CEO. You are a community organizer with
significant influence. Some of us will buy our developers two monitors. Others will make software
less complicated, yet powerful. Some will make big bets on new products,
and others will quit their jobs to pursue their dreams of being an indie
software developer. And many of us are going to fall down and skin our
knees, and it is going to hurt, and we are going to need your advice about what to do
next. I believe the fear of failing or at least looking stupid
is biggest hindrance to changing business processes or lifestyle, so
there couldn't be a more important topic.
So Joel, If you are serious at helping developers become more awesome, you
are going to have to address the difficult topic of failure, or
what to do when things don't go according to plan, because they
never do.