Sign in
in
   
"It is the mark of an educated mind to be able to entertain a thought without accepting it."
-Aristotle

About Me

I am a co-founder of Notches, an early stage startup currently based in NYC. We are building a free, open reviews network that anyone can participate in and anyone can build on top of. You can find out more on our official blog.

Read more about my background.

Connect with me on...

Recent Readers

Flickr Photos

 

Browse by Tags

All Tags » Software Development (RSS)
  • Twitter's problems are the result of architecture, XMPP may be the answer

    The problem with scaling Twitter is not the choice of framework, but the choice of architecture. In other words, abandoning Ruby On Rails probably isn't going to solve all of their problems. At the same time, I'm not sure that decentralization is necessary and comes with its own set of challenges. The real problem is that the polling model of the Twitter API doesn't scale for real-time communications. As it is today, many Twitter clients will poll (by default) every 3-5 minutes to see if there was an update. Not only are they not really participating in real-time, they are generating an enormous number of requests that - even while each payload is small - generate a lot of overhead in aggregate just in checking and responding. As I've suggested in the past , a better solution would be to move the "real-time" API around the Jabber/XMPP client instead of HTTP. The good news is that Twitter already has an IM presence so it's easy enough for third-party clients...
  • Firefox 3 Beta 3

    I've been using the recently released Firefox 3 Beta 3 for a few days on my home machine. It's not quite ready for prime-time - I've found that in particular a lot of AJAX stuff, like on Twitter, doesn't work. Not sure if the implementation is just not finished, but that's a little concerning as a developer. There are two extensions I can't live without - del.icio.us and FireBug - and sure enough both are "incompatible". Luckily, it turns out you can make them load by turning off the compatibility check . I've been using them for a few days now with no crashes. Even though it hasn't been tuned yet, it definitely feels faster and lighter weight than Firefox 2 (which as we speak is using well over 400MB of RAM with 13 tabs open). If you want to try it out, I would recommend installing Firefox 3 side-by-side .
  • Facebook opens up with a JavaScript API

    Facebook just announced a new JavaScript Client Library that allows you to make Facebook API calls from any web site . In other words, you can start building Facebook applications are live outside of Facebook. I agree with Charlie that this move " makes membership in Facebook that much more valuable ", and is probably a direct response to the openness promised by OpenSocial . Duncan calls it a clever move , but if their goal is to truly build the social OS - or what Charlie calls a "social dial tone" - then it's a necessary move. Henry calls the strategy "brilliant" . This move seems another smart step toward a hybrid strategy: Allow app makers (and Facebook) to extend social-graph functionality to the web, gather more app users, and recruit more members--but retain full control over the social graph itself. This is precisely the approach we are taking with Notches. A "walled garden" is nice because you retain all control, but these days you need...
  • Creating a better 404

    Jeff Atwood rants about the typical 404 page , saying "the average internet user has no idea what 404 means or what to do about it. To them, it's yet another unintelligible error message from the computer. Most 404 pages are unvarnished geek-speak." Jeff lays out 5 ways to make the 404 error page better. Drop the 404 Yes, the HTTP response code is 404, but there's absolutely no reason that ever needs to be shown on the actual page. Error codes aren't helpful . A simple explanation of the problem in plain English is all that's required. Any 404 page that has the characters "404" on it, if not already an outright failure, is already well on its way to becoming one. Automatically notify you of the 404. Repeat after me: it is not the user's job to inform you about problems with your website . If you require the user to click a button to notify you about a 404, or if you require the user to fill out a broken link form, you have utterly failed your users...
  • Passion and its role in evaluating new product ideas

    Evan Williams has an absolutely wonderful post up about evaluating a new product idea . I think Marc is spot on - the "personally compelling" criteria is the one that stands out. Last on the list, but probably the first question I ask myself is: How important to me is it that this product exists in the world? If I were evaluating a startup, I'd ask this of the founders. . . . In theory, you can get around this with lots of user research. (It's pretty clear neither Slide nor Rockyou 's founders are creating widgets based on their own needs and desires.) But you're more likely to get it wrong that way. When I've gone sideways, it's when I wasn't listening to my gut on this issue. Specifically, Blogger and Twitter were personally compelling, while Odeo wasn't. Clearly, you're better suited to build a best-of-breed product if you're intimately familiar with the space and "scratching your own itch". But perhaps more importantly, I think...
  • Congrats to Faisal on his new role on the ADO.NET team

    My good buddy Faisal has moved from MSBuild to ADO.NET . Specifically, he's the Program Manager for LINQ to SQL and the Object Service for Entity Framework. He says you'll hear a lot more from him on these things, but of course if past history is any indication his blogging will be short lived :) Either way, I'm still waiting for him to convince me why I should LINQ instead of SubSonic . The only issue we're really having now with SubSonic is with the JOIN story, and they're supposedly prototyping stuff to address this in the next build.
  • Distinguishing between a platform and a destination

    Charlie says that "the whole idea that you have a main site is dead". I couldn't agree more - I strongly believe that platforms are the future of the Internet. One clarification I'd like to make in this whole discussion is Facebook is both a destination and a platform. It's important to understand that these are discrete things - something can be a platform without being a destination and vice versa. Clearly, Facebook offers a nice API for integrating your code into theirs, but this to me is not what makes Facebook a platform. MySpace, iGoogle, and a plethora of Web 2.0 portals allow you to "embed" your code - Facebook just allows you to do it more seamlessly. If anything, these are all simply platforms - or rather, vehicles - for traffic. Of course, as Charlie and myself and countless others have said, traffic does not give you a business model. On the other hand, Facebook is getting flak for not being open enough with their data . As Fred says, being open...
  • What exactly is an iPhone application?

    Scoble mentions 3 new iPhone apps today from Newsgator, Bloglines, and Google. It's interesting that companies keep saying they are doing "iPhone development", when really these are nothing more than sites skinned to look more natural on the iPhone. The iPhone is the only mobile phone that gets special versions made for it, which is especially curious to me considering one of its big selling points is the full-featured Safari and a better browsing experience in general. My initial take is that these companies are just trying to ride the coattails of the amazing iPhone marketing. Mashable says "NewsGator hasn’t been so hyped in recent months, and all I ever hear about is Google Reader." Is it just an easy press release when you have nothing else interesting to announce? Or do these special versions really make a difference? (I don't have an iPhone... so isn't an entirely rhetorical question).
  • There's no such thing as Web 2.0

    I've said before that I hate the term Web 2.0 but that it's more than a buzzword . Perhaps what I meant to say is what Marc Andreessen said: there's no such thing as Web 2.0 ( via Fred Wilson ) - thing being the key word there. The first Web 2.0 conference was held in the fall of 2004, and coincided with a large number of people in the tech industry (myself included) peeking our heads out from the fallout from the nuclear winter of 2001-2003 and realizing that the Web was not only not dead, it was thriving. From there, it was easy to conclude that "Web 2.0" was a thing , a noun, something to which you could refer to explain a new generation of Web services and Web companies. Many people have since pointed out that there is no clear definition of Web 2.0. Tim O'Reilly, whose organization created the conference (and the term), attempted to define Web 2.0 as follows: "Web 2.0 is the network as platform, spanning all connected devices; Web 2.0 applications are those that make the most of the...
  • Microsoft Silverlight

    A lot of people are very excited about Silverlight , the technology that was formerly known as WPF/E. Jesse says it will give Flash a real run for its money because of a better video story (emphasis in original). Unlike Flash, Silverlight (the new name) will support DRM, it supports the industry standard VC-1 codec used in HD-DVD and Blueray, and it can take advantage of the built-in media streaming capabilities of IIS. As for DRM support, I don't think that's of any real consequence. Jesse claims "companies that want to stream TV and movies over the web, will not consider any method that doesn't allow for DRM protection", but we're already seeing a trend away from DRM. That said, there are certainly things to get excited about, particularly the prospect of cross-platform CLR support and the ability to develop Flash-like applications with the power of the Visual Studio environment (and not having to learn a new scripting language at that). One thing worth noting is the fact that Flash is...
More Posts Next page »