Ryan Twomey
Web developer and entrepreneur in Woburn, MA.
Ugh
Too bad the formatting for that previous entry got all screwed up. Check out the link to really get a good idea for what’s going on. The explanation behind that graph is fascinating.
J is for JVM: Why the ‘J’ in JRuby?
From a post at the Engine Yard blog:
For starters, I’ll say that although Hotspot is a mystery, it does a generally great job at performance. The truth is that dynamic profiling is the path to excellent performance. HotSpot is much more clever than we are. It has the benefit of profile data from the running application to inform itself.
It also has the ability to de-optimize code. As strange as it sounds, this detail ends up being the catalyst to great performance. When Hotspot does an optimization it puts a cheap guard in front of the optimization to make sure the rationale for the optimization still holds true. If the guard ever fails then it de-optimizes back to a slow path. The reason why this rocks, is that Hotspot can then be super speculative with aggressive optimizations. If the informed bet pays off, it pays off huge. If it doesn’t pay off, it gets reset with additional knowledge for a future potential optimization and some extra cost for trying out the not-quite-right optimization.
Here’s a demonstration of Hotspot in action:
In this graph we’re running a mandelbrot generator many times and plotting the amount of time it takes to generate it each time. If you look at JRuby 1.4.0 on the right side JRuby isclearly smoking Ruby 1.8.7 and doing very well against 1.9.2preview2. If you look at the progression as JRuby starts, you can see that we start slower than 1.8.7 but rapidly pick up steam as Hotspot kicks in.
Very interesting to see the performance of using JRuby (i.e. the Java Virtual Machine with HotSpot) versus a straight Ruby run.
OH: blocking an IP range to stop spam is equiv to “We’ve gotten spam from the state of CA so we’ll block email from there”. @cwalcott
How to hire programmers
Great post on how to hire programmers, distilled into three distinct questions:
There are three questions you have when you’re hiring a programmer (or anyone, for that matter): Are they smart? Can they get stuff done? Can you work with them?
At Draconis, we pretty much follow exactly this formula. In the past, I’ve thought about asking brain-teaser-type questions, but always came back around to myself: if I were asked that question, would I think it’s a fair reflection of my abilities (regardless of whether I got it “right” or not)? The answer was invariably no.
I’ve often thought that HR people hiring programmers are tempted to force programmers into the same hiring mold of other jobs, like manufacturing: if they can do X task, then they can do Y job. Yet programming requires so much more thinking: ultimately, you’re solving problems rather than going through the mechanics of a job. The difference is vast.
In the past, I’ve scoffed at the (in)famous hiring questions of Microsoft and other large companies being used in startups. In a large operation, programmers can often be pigeonholed into single tasks where repeatable mechanics can be tested and measured (and where those brain-teaser questions might work). In startups and consulting companies, a programmer needs to be smart and versatile. There’s a world of difference, and I think this article sums up what works nicely to hire smart and versatile programmers.
Managed to get some of my shopping done today, all online.
Made it to Baltimore. Very long drive, but got enough sleep so feeling okay so far. The dog is loving the waterfront.
Finished reading The Time Machine by HG Wells the other day (had been a while). Such a great book. http://bit.ly/7CnxbU
Great perspective on the App Store approval debate: Apple is not evil. iPhone developers are stupid. http://bit.ly/8UKVo8
For fun, I made my Mac’s Dock smaller and now my monitor seems that much bigger.
The B&N eBook Reader for Mac is pretty lame. Doesn’t sync your Library and no way to sync what page you left off on between devices.
Been using the new Magic Mouse all day today. It’s generally very good, though a few stray gestures have snuck in. I’ll keep with it.
Getting an iCal server setup properly to authenticate users has been amazingly difficult. Not sure why.
Got my Magic Mouse yesterday, giving it a whirl now.
Exit Strategy
When I meet an entrepreneur for the first time I like having a conversation about the idea or see the product (or prototype) in action or even a “chalk talk” for those of us that are more visually inclined.
I’m generally not a fan of slides, especially if it’s an early stage company.
But if the founder wants to use slides then I usually go along. Founders should use whatever tools they feel most comfortable.
The one thing I am allergic to is when a founder includes a slide that says “Exit Strategy” and then has a few bullets that says “IPO or sell company to company a, b or c.”
Oy.
An early stage company should be thinking about how to create something great and how they want to get there. How to build value. Not think about exits.
Now most VCs that I know feel the same way about that dreaded slide. But there is a topic where I’ve seen disagreement amongst successful VCs related to the concept of exits when considering an early stage investment. Some VCs will think about who might be the potential buyers of the company.
They do this analysis upfront because most companies never go public. So they want to know if there could be multiple buyers of a company someday. If there aren’t any potential buyers then they it might impact the VCs decision.
I don’t see the world that way.
If you build a great company then you don’t have to worry about exits because you will have many options (e.g. public, get profitable & stay private, secondary offering, sell the company).
I believe there have been many exits where the actual buyer wouldn’t have been on any list at the time the initial venture investment.
This is just speculation on my part but at the time of the initial investment in the following companies who would have guessed the ultimate buyer:
-Flip Video (Cisco)
-Danger Research (Microsoft)
-Daily Candy (Comcast)
-Sling (Echostar)
-StumbleUpon (eBay)
The list goes on.
Yes, you can imagine the strategic rationale for those deals. But not on day 1 of the venture investment. The world just moves too fast to try and predict this stuff. And it’s not the most important question anyway.
We would all agree, the real question is whether a particular team & product can make something special.
Update: A few folks have reblogged this post and disagreed with me. To be clear, I never said exits aren’t important. I just don’t believe it should be something founders or VCs should think about at the start.
So many companies are purchased for such myriad reasons that it’s a waste of time to try and predict who would be interested in an early venture. Although it makes sense to run through the thought exercise of what companies seem like a reasonable fit, it makes no sense to base any meaningful decisions on this.






