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 » Programming (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...
  • The Enterprise, The iPhone, and the Role of Silverlight

    With its recent announcement to support ActiveSync on the iPhone , Apple is clearly going after the enterprise user. The problem, as Colin puts it, is that the decisions that consumers make decisions on a radically different set of criteria than organizations . Lack of Exchange support was surely holding back enterprise adoption, so that move was both obvious and inevitable. The fact that they are also supporting remote wipe is a bigger deal than most might realize too - security is a major concern for large enterprises, and for a long time Blackberry was the de facto device in large part because of this. (Windows Mobiles devices weren't allowed at my last job until the Remote Wipe feature was enabled). Fundamentally, I think we're moving to a model where enterprises are going to demand a certain baseline for devices to play in their garden. Features like over-the-air Exchange connectivity, remote wipe, and support for .NET, Java, and Flash are quickly becoming non-negotiable. It...
  • 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...
  • 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.
  • 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).
  • 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...
  • OpenID gaining momentum

    On the heels of Microsoft's announcement that it will support OpenID in CardSpace , AOL has become the latest major player to support OpenID . "Every AOL/AIM user now has at least one OpenID URI". This is big news. We made the decision to use OpenID as the sole authentication mechanism on a product we're building, and I'm increasingly happy with that decision. At best, we'll have no local accounts. At worst, we'll be an OpenID provider. It would be relatively trivial to expose ASP.NET membership as an OpenID provider (especially with the JanRain Server component). In fact, I'm somewhat surprised no one has done this already. If you're not familiar with OpenID, check out the brief introduction to OpenID .
  • SQL Server installation problems on Vista? (Failed to compile the Managed Object Format)

    I've been having issues installing SQL Server 2005 tools (i.e., Management Studio) on Vista. I know it works because I was able to get it installed on my tablet also running Vista - I just couldn't get it on my desktop. I thought it might be related to SQLEXPRESS installed as part of the VS.NET 2005 install, but that didn't seem to fix anything. As it turns out, this is related to a corrupt WMI repository - and the fix is quite easy. C:\Windows\system32>winmgmt /verifyrepository WMI repository is INCONSISTENT C:\Windows\system32>winmgmt /salvagerepository WMI repository salvage failed Error code: 0x8007041B Facility: Win32 Description: A stop control has been sent to a service that other running services are dependent on. C:\Windows\system32>winmgmt /salvagerepository WMI repository has been salvaged As you can see, I had to run it more than once - but it eventually fixed the problem. I clicked Retry and the install went through fine. Hope this saves time for anyone else running...
  • SubSonic

    We've been using SubSonic lately, which I first bookmarked from Scott's post . Essentially, the project is an implementation of the ActiveRecords pattern from Ruby on Rails in .NET. Or as the authors describe it, , "a toolset that helps a website build itself". I'm using it on a project I'm working on now and so far it's been very useful - though we haven't had to scale yet. We had to slightly adjust our data model to be more SubSonic-friendly, but it's pretty flexibile and even supports stored procedures if you're into that sort of thing (we are). It also "singularizes" the database tables - i.e., a Companies table becomes a Company object, and a Books table becomes a Book object. (Though it does strip the last 's' from Business.... I'm reminded of that old 1-800-MATT-RES commercial). Regardless of future experiences, I can wholeheartedly recommend it to build a DAL for prototyping.
  • Managing IP Issues with Software

    Black Duck's software sounds like an interesting product. As John explains it , protextIP "analyzes your source code, determines where every line of it came from, identifies and summarizes licensing issues affecting every scrap, and identifies areas of potential exposure." They also recently introduced exportIP, which "scans your code and comes back instantly with a list of areas affected by crypto compliance regs . . . [and] streamlines the process of filling out government notification documents." On a slight tangent - when we have well-defined licenses, we can respect licenses with little effort. Instead, we can rely on software to enforce any restrictions - so Scoble can continue his link blog without worrying . I see this as a superior model to DRM - under the assumption that the good guys will respect the published limitations if it doesn't take too much effort, and the bad guys are going to find ways to do what they want regardless of what technical measures are put into place. Let...
More Posts Next page »