Friday, May 15, 2009
Last night, I was honored to be the first speaker at the first Ignite DC. My talk was called "Undoing Your Social Training and Creative Inhibitions in Five Minutes". The gist of my talk is:"Our culture inculcates several behaviors that harm creative, entrepreneurial people: we're taught to avoid conflict and real, open honesty with one another, and we're taught to fear failure. This may work for creating a polite, civil society, but it doesn't serve the individual who is trying to make a difference. But there's hope! Improv theater actors have devised many techniques for overcoming these tendencies which enables them to create inventive stories extemporaneously. Mike will share ways to combat creative inhibitions gleaned from six years of teaching and performing improv theater."
The slides are below.Labels: creativity, Ignite, improv
Monday, May 11, 2009
At RailsConf last week I gave a talk called "It's Not Always Sunny in the Clouds" where I shared all of our lessons learned with OtherInbox and cloud computing. I tried my best to go beyond the hype and talk about our real world experiences. The slides are below, but here's the raw list of lessons:
- “Everything needs to be automated”
- Autoscaling is the easiest part
- Think carefully about credential management
- You really could use internal DNS
- It's maybe not that cheap
- Launching servers is not that fast
- You will become dependent on “glue” services
- You will depend on a distant faceless provider
- Use DVCS
- You will spend a lot of time on monitoring
- Your logs will runneth over
- Write lots of “in-process tests”
- Snapshots are slow
- Rails will be the least of your worries
- Cloud services involve subtle-yet-massive tradeoffs
- SQS guarantees delivery at least once
- Queue lengths inaccurate for <>
- SQS not necessarily FIFO
- So you may not want a cloud queue
- SimpleDB optimized for writes, not reads
- You must code defensively
- There are no good "cloud sandboxes"
- Pay attention to MySQL timeouts
- "User account management is -not- ideal."
- You are locked-in to your provider
- Relational DB may not be the best choice
- Is there a benefit?
- Changes the way you write code
- You can start right away
- Pretty awesome redundancy
Labels: cloud computing, gartner hype cycle, otherinbox, railsconf
Monday, April 27, 2009
On Saturday I gave an "Introduction to SproutCore" talk at
JSConf, the world's first all-JavaScript conference. It was a great conference and highly recommended. Videos will be posted over the next several weeks. For now, for those interested, my slides are below.
Labels: Javascript, jsconf, sproutcore
Friday, April 17, 2009
I'm teaching a three-hour tutorial at
RailsConf 2009 on SproutCore and Rails, called "Building Next Generation Web Apps with Rails and SproutCore". Since three hours isn't a whole lot of time, I wanted to post some things that students can do to prepare to get the most out of the training.
See you in Las Vegas!
Prerequisites
We'll use the
stable release of SproutCore (0.9.23) although I plan to address what's different about the 1.0 API which is currently in alpha testing. So to be able to work in the tutorial, you'll need recent versions of Ruby and RubyGems.
Follow these directions to install SproutCore.
Note that the SproutCore gem depends on merb-core (>= 0.9.9), erubis, rubigen, and mongrel.
Before the tutorial starts, you must be able to view localhost:4020. If that works, you know everything installed correctly.
This may go without saying, but you also need to have Rails 2.3.x installed. Specifically you should be able to load the Rails startup page on your development machine at http://localhost:3000/.
Recommended Reading
The most helpful wiki articles to read include:
Labels: railsconf, sproutcore
Wednesday, March 25, 2009
At SXSW Interactive I gave a talk called "Scaling Rails in the Cloud", about our experiences building
OtherInbox using Amazon Web Services. The organizers have just
posted an MP3 file of the audio of my talk, so now you can view the slides with accompanying audio.
Sunday, March 15, 2009
Yesterday at SXSW Interactive I gave a talk called "Scaling Rails in the Cloud", about our experiences building
OtherInbox using Amazon Web Services.
My slides are below. When I wrote this presentation, I really came to the realization that Rails has hardly ever been the problem for us, scaling-wise. The framework has served us very well; all of our problems have stemmed from we the developers not understanding our tools as well as we could have, or not thinking things through. So the actual Rails content is light, but that's because Rails fits right into a cloud environment and we didn't have to do anything special to make it work.
Labels: rails, scaling, sxsw
Monday, February 23, 2009
Last week I asked all of the software entrepreneurs I know in Maryland to fill out a quick survey about what they kinds of help they'd like to receive in building their companies. I asked this because I want propose a project to help my fellow entrepreneurs in Maryland, but I felt I should do more listening before I do any more talking.
I promised I would anonymously summarize the results of the survey, so here's what people had to say. Ten people of very different backgrounds responded. It's totally unscientific but I think it was a fairly diverse sample.What type of assistance would be most useful to you in starting or growing a software business in the greater Baltimore area?
- "...an organization, funded by the state or outside investments that acts as a seed funder for startups...an Angel-like organization that invests time/resources rather than capital. Local people with ideas for new software would submit proposals and the team would decide on the top 1-3 and develop a beta. So rather than having a group of investors involved, it would be a group of developers that invest their time in exchange for equity."
- "A mentor match-up service of some sort might be good. With our startup, we have basically had to teach ourselves everything because we didn't really have anyone to talk to who's already been through it."
- "I think the most needed type of assistance, in my opinion, is business/legal administration. Such things as incorporating a business, accounting, taxes, payroll, accepting credit cards for products/services, etc. I might have a great idea and working app, but then need to put in almost as much work to setup and manage the business side."""
- "A real calendar of tech events, with .ICS (so I can import into Google Calendar or Outlook or whatever I use), embeddable (just via GCal), RSS feed, twitter feed. Something where I can actually go and see a list of events hosted by Refresh, Bmore on Rails, etc...You'd think this problem was solved already, but apparently not."
- "...some forum / roundtable type of thing where people can just talk ideas would be neat too. Perhaps OpenCoffee, with some more structure, up in Baltimore somewhere. It would be nice if something like this varied in location, so that for example, it's not always down at the hive. Then again, there is arguably some benefit in having it at a standardized location."
- "Funding...Baltimore Angels is good, but they only meet every other month."
- "Exposure. Needs to be more talk about what local entrepreneurs are building...have to raise the profile of Baltimore for outside money. People have to hear about what is going on in Baltimore and see it as a hub of growth and activity, and look at startups in the area as worth investing in."
- "Support - I love the local Open Coffee...it's less than 5 people, and everyone is doing their own thing, so no one is afraid to be open and talk. It's been very helpful for me and I've found the atmosphere great."
- "Peer groups/advisors/coaching, all of which I have found in the area."
- "1) access to capital
2) talented technologists
3) universities that are engaged in the entrepreneurial world
4) service providers (lawyers, accountants, insurance agents, PR firms, recruiters, etc) who understand start-ups, and have appropriate business models
5) mechanisms which support the free flow of talent
6) a cheerleading environment where mentors are easily found and entrepreneurs benefit from the region's self-promotion
7) a culture which recognizes those who try -- even when they fail."
- "...my greatest challenge was in recruiting talent. Finding people who have actually marketed software, or developed commercial C++ applications was an enormous challenge!"
- "We are terribly underserved by the absence of an entrepreneurial culture at JHU. Perhaps, that's beginning to change, but it will take time to play out. I recently attended a discussion on the macroeconomic impact of entrepreneurialism at MIT; it's simply staggering!...Without the active engagement of our local universities, we'll never build a sufficient flow of new companies into our region."
What are your biggest challenges?
- "The biggest problem is tapping into true seed money. It seems that seed money for early stage startups is virtually non-existent. There are various Angel groups in the area and there is money to be invested, but rarely are the investors ever interested in being the first dollars spent by the company.
"Given this, it seems that a development based Angel group could help mitigate the high risk of true early stage companies such that more good ideas would get off the ground"
- "Again, never having done this before, our biggest challenge is knowing what it is we're supposed to even do or not do as a 'real' business."
- "One big problem with not knowing what to do, is not immediately knowing who can help you sort those things out. With regards to legal issues, we've already been through two big-name law firms that charged big $, but they had almost no experience with startups and were not able to guide us well at all."
- "I think my biggest challenge is once I have established business and working app (which is a challenge in itself), is marketing and getting the word out as well as creating a sustainable revenue model."
- "Knowing who to trust....and whose referrals to trust."
- "Finding talent. Dealing with taxes."
- "...finding leads is of course a big thing."
- "As for products, hashing through marketing and sales plans...Putting processes in place to fill a pipeline, getting the word out, building sales efforts, etc. And 'getting the word out' - and marketing and sales in general - is different for products for a niche vs. products for the online masses. Looking for money too is a challenge...but it seems like Baltimore Angels is trying to address that."
- "Money. Finding good people. Money"
Is there anything else you'd like to say?
- "Go Baltimore. All of this stuff is wicked exciting. I moved here because it was the closest city to home. I'm staying because Baltimore is poised to claim a huge stake in the future of big tech happenings."
- "I think some kind of Y Combinator in Baltimore would be great. The combination of funding, help creating a company, and ongoing support is what I would really need to create a successful software company. I also like the idea of having a group or association of small, local software companies that have weekly/monthly meetings to discuss and brainstorm and help each other out with their ideas and possibly code."
- "I think there is still a gap between the money and then entrepreneurs. It's a hard gap to bridge."
- "I've heard many times that there just aren't enough companies in Baltimore to justify more private equity. That's just not true! Moreover, there are micro communities emerging - such as with gaming or social media...Growing these communities brings more talent to the region, which leads to more successes."
- "...individuals are vitally important to an entrepreneurial success. When they come together, they create new companies. When they network, they're looking to challenge themselves, often by changing jobs. Changing jobs in Baltimore's tech world is difficult due to its relatively small size and lack of a networking forum. Making it easy for individuals to meet and network not only eases the free flow of talent (one of the things that makes Silicon Valley so successful), but causes people to want to continue their association with the networking forum that's proven helpful."
- (Several respondents graciously offered to help out or be included in any discussions, so I'll be sending some emails and things -- add a comment below if you are interested)
Labels: angel investing, baltimore, entrepreneurship, software, startups