Too many URLs fly by me in a given week. Sometimes I take the time to digest them, usually after the tab’s been open for a week or more. Lately I’ve been making more of an effort to really think about what I read, to take notes, and share what I’ve learned.

Here are things I’ve read lately, along with the bits I found the most interesting.

10 Business Models that Rocked 2010

PatientsLikeMe allows patients to share their medical history and experience, which means they can learn from others with similar conditions. If they allow their info to be sold, the site can sell to third-parties and make money. … readers subscribe and flattr splits subscription to content creators. You put a Flattr button on your content. And flattr readers can click it, which means you get a cut of how much they’ve put in.

Groupon takes 50% of the revenue from the deal they negotiate with merchants. With each deal, groupon guarantees a minimum number of uptakes.

Spotify … streaming music site paid for by ads. They’re trying to be more viral than pandora.

PayWithATweet. Customer can use promotion to pay for products.

HumbleBundle. Indie games at “pay what you want” prices. They list the prices others have paid for the games, and allow you to split your payment between the developer or charities.

In-app sales. Games for free, charge for extras. - Inventors pay $99 to submit an idea. Others can help refine and improve it. If people promise to buy, it’ll go into productions (suppliers are in the system somehow), proceeds get split between inventor, contributors, etc.

AirBnb - pairs rentors with rooms others have for rent. Not sure if it works for other goods.

Kickstarter - People seeking funding get exposure. Visitors can donate to causes on the site. Kickstarter takes 5%.

Azul’s Pauseless Garbage Collector

  • They created their own JVM and virtual machine to make it happen
  • They intercept all reads to an object and make sure that objects gets marked as “live”
  • They solved the hardest problem first: heap compaction (getting rid of old objects from memory, reorganizing to have more concurrent memory blocks available for future allocations)
  • The read trap also lets them lazily remap objects that may have been moved to a new page during heap compaction.

I assume that the “live” flag isn’t time sensitive, because you can’t assume that an object will be read within a month… it might not be. And I assume the JVM normally does something like reference counting so it knows when to free up objects that are no-longer referenced.

40 Things I Learned from Side Projects

At his company, they use side-projects as an excuse to learn new things. HTML5 was one of them.

Hehe, he says he switched from PHP to Ruby.

This really got him counting kilobytes and milliseconds:

Never heard of the dribbble API, but he tracks new projects using it here:

From his boss: “As a boss, I know that learning through experimentation and exploration makes my employees more valuable. As a worker, I know that if I’m going to have a job in this industry next year I’d better learn something new.”

Side projects haven’t kept us from doing business, they’ve kept us from doing “business as usual”.

What I Wish I Knew Before I Started My Company

You are not the customer … avoid building a narrow solution that only you and a handful of advanced operators at your level will know how to use. The trend of design toward simplicity and accessibility in software happened for a reason – simple sells, simple’s usable and simple scales

Get comfortable with firing … When things aren’t working out between a startup and an employee, it’s better for both of them to end the relationship. I shouldn’t have felt bad for letting people go – they’ve gone on to find better fits, and frankly, for as long as things were going sour, my reluctance to act likely held them back as much as it did the company.

Segment your metrics. Separating website traffic by “section” … If you don’t separate the blog from the whitepapers from the free tools from the contact, about or product tour sections, how will you know the value of spending time working on these areas?

Quality over Quantity: When I built SEOmoz’s subscription platform, I thought we needed one of everything. Rather than make one or two amazing products, I had us build 25 mediocre solutions. And rather than improve on a “pretty good” solution until it was magnificent, I’d move us on to the next “must-have” feature or tool. It took a long time to see the error of my ways. We’re finally catching up and producing remarkable stuff, but it was a hard-earned lesson.

Haters gonna hate … If you don’t have haters, you’re doing something wrong, or, you’re doing something that doesn’t matter

How Facebook Ships Code

Interesting take-aways:

  • Any engineer can modify any piece of FB code and check-in
  • Engineers get to choose problems they want to solve, and often UI stuff takes the back seat. Project Managers have to get engineers excited about their ideas. And engineers have to get designers excited enough to do UI designs.
  • When a change is released, the authors are required to be available (IRC or other) or face public shaming

What I Learned from Zuckerberg’s Mistakes

Developer-driven culsture means less oversight, so mistakes seem like malice.

“Misunderstandings and neglect create more confusion in this world than trickery and malice. At any rate, the last two are certainly much less frequent.”

  • Johann Wolfgang von Goethe, “The Sorrows of Young Werther,” 1774

What makes people click with each other?

I think about this way too often, especially since Facebook has connected me with people I used to hang out with, but probably wouldn’t go out of my way to see anymore. I’ve started writing more on the subject of old friends that keep holding on, but I’m not finished yet.

One interesting thing: it’s not the quality of similarities that helps people to click, but the quantity.