Archive for November, 2005

Joel Spolsky’s Management Training Program

Joel Spolsky just released the first cut of books for his Software Management Training Program. There’s a good mix of product design books along with a lot of company specifc (Dell, Microsoft, Google, PayPal, Amazon, etc.) text. He’s also thrown in a good mix of general MBA texts (Getting to Yes, The Goal, etc.)

Here’s how I score out on the curriculum.

Books I have read (or at least own):

I would also add the following books to his list:

Of the remaining books, these interest me the most:

What would you add or remove?

CSS Tip: Assigning Multiple Classes to a Single Element

The 37signals team wrote up a nice trick on creating a default styling for an element using an element id and then customizing it using an element class.

Here’s one of their examples:

#Flash {
  text-align: left;
  border: 1px solid #ccc;
  font-size: 14px;
  margin: 0 7px 12px 0;
  padding: 5px 5px 5px 30px;
}

div#Flash.good {
  border-color: #9c9;
  color: #060;
  background: url(/images/alertgood_icon.gif) #E2F9E3 left no-repeat;
}

<div id="Flash" class="good">Oh yes, that's nice!</div>

This technique is nice when you have one specific element that needs decorating. Since element ids are unique within a document, you can apply the exact formatting you need to that one section. However, you need to define an explicit CSS block — div#Flash.good in this case — each time you wish to combine styles.

A similar approach is assigning multiple classes to the same element:

.Flash {
  text-align: left;
  border: 1px solid #ccc;
  font-size: 14px;
  margin: 0 7px 12px 0;
  padding: 5px 5px 5px 30px;
}

.good {
  border-color: #9c9;
  color: #060;
  background: url(/images/alertgood_icon.gif) #E2F9E3 left no-repeat;
}

<div class="Flash good">Oh yes, that's nice!</div>

Use this to compose more general styles. For example, if you want all error text to be red and bold, you could define a general error class. You can then use that style anywhere in the document with any other style without needing to update your CSS.

Nothing too earth shattering, but two good tools to have in your bag.

eBay Developer Challenge 2006

I’m tracking some nice mentions of our coding contest:

I am hiring: Help drive eBay Web Services

I am hiring a person to figure out how we should be exposing eBay using Web services and then creating the product proposals to implement the strategy. You also get to monitor everything else that’s going on at eBay and make sure it’s API-enabled in an platform savvy way.

If you’re interesting in participating in this thing popularly known as “Web 2.0,” then this is a killer opportunity. We serve up 2 billion (with a b) API calls a month, and we just made all calls free, so we’re talking serious scale and opportunity.

The ideal candidate has some strategy, programming, and product experience in her background. A little financial analysis wouldn’t hurt, either.

Here’s the official job description. That’s Requisition No. 7471BR at ebaycareers.com, in case the link doesn’t work. (Mac and Linux friends, please don’t flame me for the Win/IE bigoted job recruiting web site. I had to boot up my girlfriend’s Windows box to use the site when I applied, too.)

If you’re interested, e-mail me or apply directly and let the recruiter know you found out about the job through my blog. My work e-mail address is the first initial of my first name (a), followed by my entire last name (trachtenberg), at the ebay.com domain.

Opening up eBay one free API call at a time

I am extremely happy that today eBay made all of our API calls completely free of charge. You can get 10,000 API calls a month just by signing up, and when you pass a relatively painless evaluation, we’ll increase that limit to 1.5 million calls a day. Now that’s a call limit you can be proud of.

For a long time, eBay’s offered up our API for both commercial and non-commercial usage, but we’ve always hampered ourselves by charging for access. The fees were low enough for commercial companies to write applications, but in a world where information wants to be free, we’ve been pricing out all the people who want to play with our data to see what interesting things they can build, remix, and give away.

Breaking down those barriers has been one of my primary goals since I joined eBay last summer. We got partly there in June, and we’ve completed the journey today. Now all I need is to do my job and convince you to start writing eBay applications because I can’t use the pricing excuse with my boss anymore.

Fortunately, we are also launching a pretty sweet coding contest — eBay Developer Challenge 2006 — today. First place gets $5,000 plus a free trip to the O’Reilly Emerging Technology Conference. We will pay for plane and hotel, and O’Reilly has kicked in a ticket to the show. Runners up can get money, iPods, xBoxen, trips to eTech, etc.

There’s lots of really interesting applications waiting to be built that hook up to eBay. Since the eBay database is always changing: new items being added, existing items being bid on, old items being sold, the data is quite dynamic.

From my point of view, dynamic data -> dynamic applications -> useful applications -> happy users. And I like happy users.

See also: