Well, hundreds is more accurate ;). Implementing PuSH is fairly lightweight 
once you get over the implementation details invariably omitted from a 
specification.

My original point, notwithstanding unqualified woefully undereducated job 
interviewees (they couldn't describe a simple GET?!), is that web developers 
often could care less about SMTP. I'm not immune - I'm doubtlessly ignorant of 
anything beyond the basics of SMTP. The vast majority would likely query 
"Email?" and hide under their desks. Web developers live in a HTTP world. We 
have enough HTTP tools from web servers to daemons to clients to multithreaded 
speed demons that we're spoiled with choice when putting together the building 
blocks of something like Pubsubhubbub. Those of us who are any good are even 
willing to bounce between PHP, Ruby and Python to find the best solutions (ever 
hear of a fast PHP web server? :P). Even better, adding PuSH to existing 
applications and solutions is extremely easy. I piggy backed it on top of an 
old PHP app a few weeks back in a few minutes - myself and Josh Fraser also 
have plugins for that Wordpress contraption
 that have been around for months now.

Can we do that with SMTP? We probably can. Can we do it with the same ease? I 
doubt it. I can honestly confess, I wouldn't know where to begin. I don't even 
think I've ever once been involved in a single discussion over SMTP as a 
solution to anything outside of email. I don't mean that as a put down - it's 
just not something web developers need to think about all that much. Many of us 
are idiots in the area ;).

The question on "superiority" was a technical one. I was only pointing out that 
the technical benefits of anything have a tendency to get ignored the more they 
depart from the world view of the people you need to adopt them. You could 
create a vastly superior solution, but for 95% of potential adopters out there, 
they'll simply pick whatever is the simplest and most expedient solution with 
the lowest implementation cost. Pubsubhubbub hits every single one of those 
buttons (so far). It is on the edge of being something that is a no-brainer to 
implement. All it needs is a little more by way of assembled libraries and a 
wee bit more mindshare.

Is there such a thing as the "No-Brainer Test"?

 Pádraic Brady

http://blog.astrumfutura.com
http://www.survivethedeepend.com
OpenID Europe Foundation Irish Representative





________________________________
From: Bob Wyman <[email protected]>
To: [email protected]
Sent: Fri, February 19, 2010 5:34:43 PM
Subject: Re: [pubsubhubbub] educate me

On Fri, Feb 19, 2010 at 11:19 AM, ara.t.howard <[email protected]> wrote:
> here is the result of running my 'lines of code'
> counter on ruby's built-in smtp library
Errr... Are you aware that Pádraic Brady, the one you wrote these words to, has 
written thousands of lines of code to make it possible for PHP-based PSHB 
implementations to be written in "just a few lines of code"? Someone else 
(actually many people) wrote the thousands of lines of code that your "few" 
lines of ruby rely on in order to provide a small, limited function SMTP 
library. But, that's not surprising. An important part of getting protocols 
used by people is to build the libraries that hide the complexity and detail of 
protocols so that drag-and-drop coders, script-kiddies and others can implement 
useful stuff without too much trouble. There will be "simple" ruby interfaces 
to PSHB one day, if there isn't one already. In any case, an LOC count for a 
library interface doesn't say anything useful about the underlying system.

> it takes about 20 more to add TLS support.
No. It takes thousands of lines of code to provide TLS support. The mere fact 
that you need not be aware of that code is irrelevant. Any useful protocol or 
capability will eventually be wrapped in a simple library interface allowing it 
to be used with minimal understanding on the part of casual coders. The fact 
that SMTP and TLS have already had such wrappers written speaks only to their 
age, not to whether they are the best protocols to handle any particular 
problem.

bob wyman


On Fri, Feb 19, 2010 at 11:19 AM, ara.t.howard <[email protected]> wrote:

On Fri, Feb 19, 2010 at 04:28, Pádraic Brady <[email protected]> wrote:
>>
>> With all the protocol comparisons, people have overlooked the obvious. Ask
>>> yourself a serious question, how many web developers (or even small app
>>> developers) actually have a clue about SMTP, NNTP or even (though slowly
>>> growing) XMPP? Compare that to HTTP. A developer's pet cat probably knows
>>> all about HTTP about now ;). Pubsubhubbub has the benefit of being so simple
>>> and obvious, that implementing it is exceptionally easier - irrespective of
>>> the technical advantages/disadvantages of other alternatives.
>
>a friend was recently hiring web developers: he asked each of them to
>>describe a simple GET request, start to finish.  1 our of 30 could
>>answer.  this was just last week here in boulder for a highly paid
>>gov't position.
>
>>the power of any computing system does not lie exclusively with being
>>understood - the main power lies in it's power to abstract difficult
>>problems.  ssh is a class example here - no one understands it and yet
>>all of us use it successfully every day.
>
>>if SMTP were like the c++ compiler standard and had taken 15 years to
>>complete you might have something, but the reality is that it was easy
>>enough and it's done.
>
>>here is the result of running my 'lines of code' counter on ruby's
>>built-in smtp library
>
>>cfp:1.8$ loc net/smtp.rb
>>260
>
>>it takes about 20 more to add TLS support.  that is simple enough.
>
>
>
>>--
>>-a
>>--
>>be kind whenever possible... it is always possible - h.h. the 14th dalai lama
>

Reply via email to