» Publishers, Monetize your RSS feeds with FeedShow: More infos (Show/Hide Ads)
Today we released two premium services for SlideShare. (see venturebeat, techcrunch, om malik, and our blog). One product (LeadShare) helps you use your documents on SlideShare to collect contact information from potential customers. The other (AdShare) helps you get more targeted traffic to your documents. We've been working on this for six months now, so I'm really happy that we can finally talk about it! Here's a quick overview of what we've built, and why I think it's cool.
LeadShare
This service lets you put a "contact me" form on and around your document on SlidSshare. It appears next to the document, on download, inside the document, and inside any embeds of the document: so basically everywhere. ;-> We let you collect not just contact information (like address, phone number, etc) but arbitrary survey questions (e.g. "What size company do you work for", or "When do you plan on buying a new CRM system"). If you're a business and already have documents on SlideShare, you can turn this feature on and immediately start adding new potential customers to your sales funnel. Pricing starts at $1 per lead, and goes up as high as $22/lead if every single option is enabled (you probably won't need every option though).
Here's the cool thing: we're inverting the standard process of "tell me your name, rank, serial number, and underwear size and I'll let you read my promotional business literature". I think that process is broken, and isn't a friendly way to begin a relationship with a potential customer. With LeadShare, you share your document and THEN ask for contact information. People only fill out the form if they legitimately WANT to get in touch with you. This fosters trust, leads to higher lead quality, and gives you access to a much broader audience of potential customers (because your documents can be found using search engines, and can be shared viraly using platforms like twitter and facebook). I think it's a more open and friendly way to do b2b marketing.
AdShare
The other service we've built helps you get more views for your documents on SlideShare. We use the text of your document to promote it against similar documents in a special "promoted" area on the document page. Sometimes it can be hard to get noticed on SlideShare. AdShare will help you get more views from the kind of people that are likely to be interested in your content.
Here's why I think this is an interesting new form of advertising. 1)It's a very high level of engagement. On average people spend 3 minutes looking at a document on slideshare. When was the last time you spent 3 minutes looking at an ad?
2)It's very highly leveraged. You're not just buying a single view, you're buying social and search engine traction for your content. Popular traffic becomes more popular on SlideShare as people bookmark it and forward it and blog about it, so if you give your documents a "boost" by promoting them they're likely to be embedded, bookmarked, tweeted, and search indexed, leading to continual "free" views. Of course, if your content sucks this is unlikely to happen. Like every form of advertising, the quality of the creative matters. ;->
AdShare costs only .25 per document view (.35 per document if it is geo-targeted). And if you're using LeadShare, you can use AdShare to drive more targeted views to your lead-generating documents. Whoa!
I'm sure you can tell how excited I am about us launching these new services. Please take them for a spin and let me know what you think. Is this a useful way to connect with your customers? What features should we ad? What do you think of our pricing model? The comments area below is where you can have your say.
Here's a short video that Yahoo developer network made about the new SlideShare app.
The cool thing for me about the app was that the first version was made with no management input at all! A couple of developers just decided that slideshare needed a mobile app, so they showed up at Yahoo hack day and built it (and won first prize!).
I was interviewed by Erick Mott from Lyris (a marketing software company with a very cool SAAS offering) during the Web 2.0 Expo conference last month. Here's the video.
The blog article (can be found here).
Over the last couple of months I've been trying to set up my television for watching video content online. Like many people, I don't feel I like I get enough value from my cable TV subscription to justify the cost (85$ a month in my case). All I want is to watch the same movies that are available in my local DVD store (or on netflix), and I'm more than willing to pay the same price (4$ or so per movie).
The results have been disappointing to say the least.
My HDTV is hooked up to a mac mini, and I've been experimenting with Amazon Video on demand, itunes, and Netflix. I have a logitech wireless keyboard with a built in touchpad. All in all It's a pretty sweet setup, and the technology works just fine.
Here's the problem. On Itunes and Amazon, some videos are available for rent, while others are only available for purchase. This makes the process of shopping for a movie to watch tonight almost impossible. Even though lists of movies available for rent can be found, the second you start browsing, searching, and clicking on related content, you end up finding co-mingling the movies that need to be purchased with them movies that you can rent..
The result of this is that about half the time, you find a movie you want to watch tonight, and only THEN you find out that the only way to watch it is to buy a digital copy for the same price (or more) than you would pay for the DVD (clearly a ridiculous proposition: does anyone ever do this?). Neither platform has any way to exclusively view movies that are actually for rent, and this is basically a fatal flaw.
Meanwhile, Netflix has a different model for streaming rentals: they let you stream as many films as you want, but only from a very limited subset of their catalog. Unfortunately, the inventory they have available for streaming doesn't include a lot of new releases (fair enough for all-you can eat pricing), and the interface doesn't provide strong ways to search or browse while only looking at content that is available for streaming. So while the pricing model is different, the experience is broken the same way as Amazon and Itunes: the interface presents me with a large selection of digital objects to choose from, many of which are not available for streaming over the internet. This makes selecting a movie to watch extremely difficult.
Comcast, as shitty as it is, doesn't show me movies and then tell me that I can't rent them. So despite the fact that apple, amazon, and netflix have products that are in many ways is orders-of-magnitude better, they fail due to this one fact.
The whole thing looks stupid enough that it CAN'T be a simple design blunder. Amazon, Netflix, and Apple have some of the best best designers, engineers, and product people in the business. It smells like a licensing fiasco to me. After reading Marc Cuban's excellent
A la carting of video will lead to disaster, I understand why TV people are loath to license their content a la cart. But why movies? Streaming at a per-rental rate is identical to renting a DVD, except it's more accountable so the studios can presumably negotiate a nice per-stream rate. What is the blocker here, and can someone in Hollywood please have lunch with someone else in Hollywood and resolve this? Sweet Jebus, we want to pay you money, but if I have to wait another year for this I'm finally going to learn how to use bittorrent, and then you people will *really* be in trouble. ;->
Amazon today announced a plan that makes EC2 boxes a bit cheaper to rent for customers who use the box 24/7. It's called a "Reserved Instance", and it basically means you pay a certain amount up front in exchange for a large discount for either one or three years.
Is this a good deal? As always, it depends. Let's assume that you actually use a certain base number of servers from amazon 24/7 (like we do at slideshare). Ignoring bandwidth costs, a small instance costs $.10/hr * 24 hrs *365 days = 876$/year (or 73$/month).
With the one-year plan you'd pay 325$ up front, and ($.03/hr *24 hrs * 365 days), which ads up to 325 + 263 = $587, or a 32% savings. Your monthly cost ends up at 49$/ month.
Things get better on the three year plan. Here you pay $500 in exchange for the right to the .03/hr pricing for three years. Your total cost ends up being $500+ ($.03/hr *24 hrs * 365 days * 3 years), which is $1289 for three years, a 52% savings. Your monthly cost comes down to $35 / month.
So this seems like a good deal, but there's some caveats. You have to pick what size instance you are going to prepay for: if you prepay for a small and it turns out you need a medium, there is no recourse. Also, you are having to pay money up front, which is definitely a negative (one of the great properties of AWS is the "pay by the drink" model which lets you pay for services AFTER you use them rather than before. This is obviously great for your cash-flow). Finally, reserved instances are not available for Windows servers yet, only for Linux ones.
A 52% discount is nothing to sneeze at, so if you're sure you're going to be using a particular machine type 24/7, it makes sense to take advantage of this program. A smart way to do it might be to move one machine over, and then pay for subsequent reserved instances over time with the savings. This way you can avoid committing too much money up front (which is never a good idea, especially in a recession).
We just released something really cool! It's a.plugin for PowerPoint that lets you do pretty much anything that you can do on the website ... from within PowerPoint.
As Keanu would say, whoa. Using PowerPoint to browse a site for sharing PowerPoint. Very meta.
We call it the "SlideShare Ribbon". The best part IMHO is that you can search for PowerPoint files and download them directly from slideshare into PowerPoint. Also, uploading is really convenient, so if you're working on a presentation, once it's ready you just click one button and it will upload in the background.
The best BEST part, though, is something we really should have built into SlideShare (don't worry, it's coming soon). It's a console that shows you how many views, comments, and favorites each of your presentations has received. If you're using SlideShare to market your business, this is a really handy way to see, in one screen, exactly how many people you've been able to reach.
Major props to the Microsoft crew over in Seattle ... they were incredibly helpful to us over the course of this project.
Dave McClure, Ted Rheingold, Jeff Veen, Andrew Chen, and many more cool startup folk will be speaking at the Startonomics conference, on October 2nd. I'm burnt-out on conferences, but this looks really good. See ya there, readers!
OK, the demos of chrome look pretty cool. But why aren't they releasing a version for the mac?
Hmm ... is it possibly the same reason that Google STILL (after 3 years) hasn't released a Gtalk client for the mac? Does Google see Apple as it's biggest potential competitor for the operating system throne?
I'm betting that Chrome for the mac will be a long time in coming, if it ever ships at all. Hoping to be proved wrong though!
I'm testing out google website optimizer on this blog ... hence the funny avatar photos on the top right.
The idea of website optimizer is pretty simple:
1) Configure a couple of alternatives to the current page (in this case, two alternate images)
2) Specify a conversion goal (in this case a click to my bio page)
3) Let google randomly replace the original html with the specified alternatives
So far the cartoon of me is in the lead, followed by the picture of me pointing at a giant projection of the google maps interface. The black-and-white photo of me in a suit is not popular at all.
This may seem like a trivial exercise (do I really care how many people read my bio?), but if you imagine doing this on a page that fulfills real business goals (like a checkout process) you start to see the possibilities.
So anyone who works with Rails even a little bit knows that it is single-threaded. A given mongrel can only process one http request at a time. The solution is to run a large number (or "pack") of mongrels, and load-balance your incoming requests across the pack of mongrels.
This works fine (it's what every even moderately big rails site does), but it has one serious problem. If one of your pages are slow, then requests will "back up" behind the mongrel that is processing the slow request. You'd think you can solve the problem using load balancing (we use the NGINX fair plugin in order to get the smartest load balancing possible). But there's a point where better load balancing simply won't solve your problems. For example, let's say my average request takes 250ms to respond. If I'm serving a request that is going to take a whopping 5 seconds to respond, there's no way for the load balancer to know that something is fishy for at least 250ms. This guarantees that a certain number of requests are going to "back up" behind the slow request.
It's all well and good to say you should profile your code and fix pages that are slow. But for a big web app like SlideShare, there are LOTS of pages. We work hard on making the important pages fast, but we don't necessarily always have the time to profile every page. And if we do happen to have some slow pages, those pages don't just respond slowly: they cause OTHER pages (the ones that are "backed up" behind the slow request) to respond slowly as well. So even an OCCASIONAL slow page will cause a reasonably large number of slow responses.
The solution that we're currently working on is to route our "important" pages to different mongrels than our less important / slower pages. This should make it so that a slow page doesn't cause other (fast) pages to slow down as well. But this is extra complexity in our system, and is a bit tricky to do for pages that don't have an easy-to-recognize url "signature".
I'm a bit surprised I don't hear more chatter about this problem: it seems to me like the single biggest bottleneck to building a huge rails site. What are other big Rails sites doing to deal with this problem? Is there an easy solution that I've missed? As always, feel free to post suggestions in the comments!
Tonight there's a Ruby meetup at the SF offices of SlideShare. There's pizza and beer, and plenty of parking in the scary-looking-but safe alley behind our office! Here's the list of presenters:
Raul Parolari will touch on metaprogramming details - "class_inheritable_accessor: unknown heroes of Rails startup".
Class variables and class instance variables have pros and cons (that programmers have discussed for ever since the beginning of time). Sometimes we would wish for a variable that had their qualities, but not their defects; wishful thinking, right? not in the Rails world! where they exist baptized as 'class_inheritable_accessor' (which by the way plays an important role at startup). This short talk discusses the 3 types of variables, and how the new one works (yes, another metaprogramming Ruby trick, at the service of the "Rails magic").
Bala Paranj will talk about Design Patterns in Ruby
Paul Graham said "When I see patterns in my programs, I consider it a sign of trouble. The shape of a program should reflect only the problem it needs to solve. Any other regularity in the code is a sign, to me at least, that I'm using abstractions that aren't powerful enough? often that I'm generating by hand the expansions of some macro that I need to write."
In this presentation we will see how some of the GOF patterns can be implemented using powerful features of Ruby in a simpler fashion.
We're now in hour 4 of an S3 outage that is effecting the entire startup ecosystem. SlideShare is down, as is MuxTape, SmugMug, and almost every other site you can think of. Fingers crossed that they resolve this soon! Here's the current status from AWS:
9:05 AM PDT We are currently experiencing elevated error rates with S3. We are investigating.
9:26 AM PDT We're investigating an issue affecting requests. We'll continue to post updates here.
9:48 AM PDT Just wanted to provide an update that we are currently pursuing several paths of corrective action.
10:12 AM PDT We are continuing to pursue corrective action.
10:32 AM PDT A quick update that we believe this is an issue with the communication between several Amazon S3 internal components. We do not have an ETA at this time but will continue to keep you updated.
11:01 AM PDT We're currently in the process of testing a potential solution.
11:22 AM PDT Testing is still in progress. We're working very hard to restore service to our customers.
11:45 AM PDT We are still in the process of testing a series of configuration changes aimed at bringing the service back online.
12:05 PM PDT We have now restored communication between a small subset of hosts. We are working on restoring internal communication across the rest of the fleet. Once communication is fully restored, then we will work to restore request processing.
12:25 PM PDT We have restored communication between additional hosts and are continuing this work across the rest of the fleet. Thank you for your continued patience.
Garr Reynolds, the man behind the amazing PresentationZen blog, will be speaking at the SF offices of SlideShare this Friday, June 6th (upcoming.org listing here). Garr is a great speaker, and has thought really deeply about presentation design from the perspective of Japanese design practices. If you care about presentations, you should subscribe to his blog (his book is also really good). And if you're in SF or nearby, you should drop by the SlideShare offices to see him in person this Friday!
Update: Nancy Duarte, who was the designer behind Al Gore's famous "The Inconvenient Truth" presentation, will also be speaking. AFAIK, this is the only PowerPoint presentation to date that has been made into a movie, so it should be interesting to hear her perspective on things.
I'm on a panel today at TIECon in Santa Clara called Is Cloud Computing the Right Approach For Your Business. The other panalists are Don MacAskill from photo-sharing site smugmug, James Lindenbaum from web-based ruby IDE Heroku, Kirill Sheynkman from cloud computing services provider elastra, and Sebastian Stadil from Intalio and the well-named silicon valley AWS users groups (AWEsome).
Here's the description:
Our session theme for the Cloud Computing Luncheon is “Is Cloud Computing the right approach for scaling your business?”. Whether you’re launching a consumer internet startup or building an enterprise software-as-a-service application, making sure your application performs great and scales to the exponential growth that your business will see after launch is absolutely critical. No one wants TechCrunch to call them out for outages or a big customer to cancel an order because of slow performance. In addition, building the IT expertise and infrastructure to scale your application can be costly and complex. Enter the Internet giants - Amazon and Google today and potentially Microsoft and others in the future. Their business is all about large-scale infrastructure. Should you trust the lifeblood of your company to them or should you do-it-yourself in a traditional hosted or managed fashion? In this exclusive session, startup CTOs will present case studies on their experiences with cloud-based approaches versus traditional hosting. We’ll follow that up with interactive round-table discussions on various cloud offerings (storage, computing, database, etc.).
The SF Javascript meetup is a brand-new institution ... only on it's second meeting. But BOY has it started with a bang! Last time Douglas freakin' Crockford (inventor of json and jslint) presented!
Now it's time for the second meeting, and I'm proud to say that SlideShare will be hosting the event.
If you are a Javascript nerd and based in SF, then you should totally go to this, since the last one was totally awesome. But sign up fast ... it was posted today and is already over half full.
The techcrunch article lays out the details. We are really happy with how things worked out! Many thanks to everybody out there who played a part in making it happen.
We could have made a press release, of course, but press releases are kinda boring. So we made a meet henry style presentation instead.
"Meet Henry" is a presentation style that evolved on slideshare, and is a great way to describe the value of any good or service (through a simple, predictable narrative arc). In our case, we used Dave McClure (who's an angel AND an advisor) as our "Henry".
We're really grateful to our community for taking us this far. We love you guys and all the cool stuff you do, and can't wait to see what you upload next! We promise to work really hard to make the SlideShare experience as useful and pleasurable as possible.
As I wrote in my last post, we've been going through the process of adding a content delivery network (PantherExpress) to SlideShare. Since there isn't a lot of information on the net about how to use a CDN to accelerate content that is hosted on S3, I thought I'd publish it here.
The way you integrate with any CDN is pretty much the same.
1) Create a subdomain (e.g. static.slideshare.net) for your domain.
2) Point that subdomain to your CDN (e.g. 132.pantherexpress.com) using a CNAME entry in your DNS.
3) Configure the CDN to know that the "origin server" they should use is your amazon S3 bucket.
4) When the CDN gets a live request for a piece of content, it serves the content if it has it in it's cache. Otherwise, it fetches the content from the origin server and then serves it.
This is great if you're starting out. But what if you've already launched? You NEED to be able to try out your CDN integration, and then quickly back it out if it isn't working. There's two ways to go here.
1) If you've thought ahead, you've named your s3 bucket after your subdomain (e.g. static.slideshare.net) then you can point your CNAME entry to to bucket. To switch to your CDN, change the CNAME entry. If there're a problem, switch back. The switch will take however long your "time to live" is set to in DNS.
2) OTOH, you probably WEREN'T forward thinking enough to name your s3 bucket after your subdomain. In this case (the normal case), you have to make sure your webapp is written so that you can quickly change the location where it expects to find external content. We didn't do that (we had hard-coded the s3 bucket url into the code), so we had to externalize that into a property file that could be easily edited.
So far we've accelerated our thumbnails, our javascript / css / navigation images, and all our content players. Still to come is the actual content (the slides themselves). Measured page load time for page loads on media-heavy pages have dropped from 10 seconds to 4 seconds. I'm hopeful that we can use the CDN to accelerate our slides as well.
One thing I've been working on in the last month is accelerating the serving of SlideShare content using a "content delivery network" (or CDN). You use a CDN so your content can be cached in RAM, in a place that is geographically near your customers, instead of on disk, in a place that is far away from your customer. This makes a BIG difference in terms of page load time. There isn't much on the net about hooking a CDN up to Amazon S3, so here's what I learned:
Frankly, the process of shopping for a CDN vendor is *really* annoying, especially for someone who has become used to buying these cloud-based services like S3 that are priced openly and on the basis of usage. The process is very "enterprise procurement": lots of high-pressure salesmen trying to get you to sign two-year contracts, and with no price transparency. One way to win is to get them to bid against each other. But the whole thing feels like an unnecessary amount of work.
Fortunately, we found a company that had transparent pricing that seemed fair to us, and that wasn't about locking us into a long-term contract: PantherExpress! Their pricing is standardized, is per-gigabyte, and gets cheaper the more you use it. Given that Amazon doesn't provide a CDN, this is the next best thing for serving up content fast. It costs $.28/GB for the first 8 TB/month, $.24/GB for the next 8 TB, and so on. More expensive by Amazon, but a decent price for global content delivery.
Hooking PantherExpress up to S3 was pretty easy, and I imagine the same procedure would work with other CDNs. I'll cover that in my next post.
I'm really pleased to announce a new member of the SlideShare advisory board. Edward Tufte, author of such seminal works as "The Visual Display of Quantitative Information", has agreed to join the SlideShare team.
Tufte's work on presentation design is obviously especially relevant to us. His critique of current approaches to presentations (The cognitive style of PowerPoint) was a major driver of the new styles of presentation that have cropped up in the last few years.
This will result in some changes to the SlideShare experience as you currently know it. Most importantly, we're implementing some filters that will block the most egregious examples of PowerPoint abuse from our system. You can read the official announcement for the whole story.
SlideShare is down and has been down for the last several hours. Our dedicated hosting provider (ServePath) is experiencing catastrophic network problems. For a while we were able to keep the site live by pointing our DNS to specific servers that were available on the network: this strategy is no longer working (the paths that still work on the network are changing as ServePath technicians try to fix the problem).
My sincere apologies to all SlideShare users. We'll be taking stock once this outage is resolved, and we'll evaluate what to do long-term at that point. Right now there's not much we can do besides wait for the network to get back online.
UPDATE: as of 7:45, we seem to be back in business! Doing the happy dance (and checking the servers every 5 minutes to make sure we can still get to them).








