Now blogging at diego's weblog. See you over there!

microsoft gets it

I think it's about time we dropped the "Microsoft doesn't get web 2.0" meme. Scoble today has a post responding to Kaliya in which she says that to Microsoft we're just "customers". Please. Everyone tries to do what is best for both their customers and company. MySpace may "invite dudes to contribute" but trust me, News Corp. doesn't give a damn if they are called "customers" or "enablers" or "contributors". Microsoft still has some vestiges of its predatory behavior in the past (particularly on pricing of most software that hangs to stratospheric monopoly heights, ever notice that Office and Windows are the only two Microsoft products that are not at lower prices than before? Look at the stuff where MS has competition.) But on the other hand they'd probably be sued by shareholders if they lowered earnings "for no reason". Anyway, that's not really at issue here.

Look at Bill Gates at Mix06, talking to Tim O'Reilly and Mike Arrington. Look at Windows Live, and the stuff they're doing with gadgets. Look at the integration in Vista. Look at Channel 9. Look at On10.net -- whatever that's about, it's certainly not the Microsoft of old. Look at what Microsofties are discussing in blogs, from Ray Ozzie, to Scoble (of course :)), to Dare, to Mini-Microsoft, to hundreds of others (Quiz: Assumming you don't work for Google, how many high-profile Google bloggers can you name vs how many from MS? I'm not saying it's good or bad, btw, really, to each his own, I'm just pointing out the difference in, um, "engagement"). Look at Ray Ozzie's LiveClipboard stuff, which from what I've seen underwhelmed many but it just blew me away. This didn't look like a Microsoft demo at all! It looked like the demo of some dingy startup, three guys just kicking cool stuff around! Is it small, perhaps a bit of a trifle given Microsoft's resources? Maybe. But damn! There it is: A screencast, done on Flash, and running all on FireFox, using standard Internet formats. Three years ago, you'd probably had to endure some insane ActiveX plugin and a demo of how IE and Office could do stuff together using COM or some such.

If anything, that's what tells me that Microsoft as an entity gets that it must adapt, and it gets where it should go, and it's trying, really, really hard. They've opened up the floodgates to some degree -- Microsofties are doing a lot of stuff that may not be necessarily "sanctioned" or perfectly aligned with the different BU requirements of Windows or Office. This was done by necessity rather than out of some high-minded pursuit of "innovation," but that's ok, that's how these things work.

Microsoft may not be out of the woods yet with respect to the threat that web 2.0 (and, let's not forget Google) represent to their "traditional" business. But let's give credit where it's due. They're moving.

And they didn't need an "Internet Tidal Wave" memo to get them going. So hats off to them!

PS: Btw, let's not get hung up on whether web 2.0 is hype or not. Is there some hype in there? Sure. Is there something real behind it? Yep. Does it accurately describe a market space? At this point, yes. Ok. Good. :)

Categories: technology
Posted by diego on March 20, 2006 at 6:27 PM

plugging the dns recursion hole

Via this Slashdot article I was reminded about a vulnerability in DNS configs that allow recursion and therefore let the server act as an open relay that could be used in a DDoS attack. I verified my DNS using DNS Report and this matched what I saw in my config files -- my DNS server was open. Rogers had a post last week on the topic which outlined the steps he took and served as a quick guide, and along with this page of the BIND9 manual I had the whole plugged in a few minutes, confirmed by the DNS Report tool. Phew!

Categories: soft.dev, technology
Posted by diego on March 19, 2006 at 11:47 AM

that warm, fuzzy feeling

Late night browsing, I found this article (via Dare) from last year written by Google's Adam Bosworth: Learning from the web lots of good ideas, but here's the kicker at the end:

It is time that the database vendors stepped up to the plate and started to support a native RSS 2.0/Atom protocol and wire format; a simple way to ask very general queries; a way to model data that encompasses trees and arbitrary graphs in ways that humans think about them; far more fluid schemas that don’t require complex joins to model variations on a theme about anything from products to people to places; and built-in linear scaling so that the database salespeople can tell their customers, in good conscience, for this class of queries you can scale arbitrarily with regard to throughput and extremely well even with regard to latency, as long as you limit yourself to the following types of queries.
The one database that supports all that and more?

Yep, that's right: The Ning Content Store. Let's see:

  • Support Atom protocol and wire format? Check!
  • A simple way to ask very general queries? Check! (Just try writing an app, or using any of the apps, and query both your app's data and any other public content in the system)
  • a way to model data that encompasses trees and arbitrary graphs in ways that humans think about them? Check! Well, almost actually. But there's lots of simple ways to navigate the Ning Store hierarchy, even for the app hierarchy.
  • Far more fluid schemas that don’t require complex joins to model variations on a theme about anything from products to people to places? Check!
  • Built-in linear scaling? Check!

We're not a database vendor, true. But then again, perhaps it was a pipe dream on Adam's part to think that the first one to do this would not be a web company.

Cool eh?

Categories: ning
Posted by diego on March 18, 2006 at 9:12 PM

evernote

evernote.png

One app I've been trying out for a few days now is EverNote. It's truly, really well done. It does what it's supposed to do, and it does it well. Great UI, including some cool UI concepts like their accelerating scrollbar. I've also tried OneNote, but I've been underwhelmed. Too much complexity really, for a simple task like taking notes. EverNote also has good integration with browsers, including a plugin for FireFox 1.5. If you need a good piece of note-taking software, look no further. Highly recommended.

Update: Russ tries out EverNote but is confused by the non-standard UI. Good point, I forgot to mention my take on this. EverNote does use a different UI than we're used to, and it definitely has a bit of a learning curve. My opinion, however, is that our current UI paradigms are broken. They just don't work. So we will need to change into new ones, and given that pretty much anything new and more efficient will involve some sort of shift and relearning. I think EverNote pushes the envelope enough to make things better but not so much that you have to spend hours learning what to do. That's my 2c at least. :)

Categories: technology
Posted by diego on March 17, 2006 at 9:40 PM

happy st. patrick's day!


It's still the 17th here in the West Coast, and I'm reminded of things that happened to me while in Ireland. You know, stuff like this. One thing that's cool about St. Paddy's in Dublin is the sheer size of the festivities. In recent years, about one million people congregated in the center of the city for a really cool fireworks show. Of that million, I seem to remember that about half were tourists from various spots of the world, the rest of Ireland, etc. For a city of half a million plus people, that's definitely quite an influx over a few days. :) Anyway, here I am, raising my virtual pint of Guinness. Hope everyone had a good day!

Categories: personal
Posted by diego on March 17, 2006 at 9:35 PM

the unit

theunit.png

Just saw the first episode, "First Responders," of CBS's The Unit, created by David Mamet and Shawn Ryan (creator of the still astonishingly good "The Shield").

It was really something.

Favorite quote of the first episode: "You, you and you: panic. The rest of you come with me."

Highly recommended!

Categories: art.media
Posted by diego on March 12, 2006 at 5:47 PM

a google homepage module for ning bookmarks

As a followup to my previous post on an IG module for ning photos, here's another for Ning bookmarks.
My friend Dylan, who works on IG pointed out in a comment (very politely even if he didn't have to :-)) that neither document.getElementById() or XmlHttpRequest replacements are required. So who to believe eh? The dude who spent an hour looking at the thing one Friday at 11 pm (i.e., me)? Or the person who built the thing? Well! As a blogger, I *know* it should be me!! hehehe. I guess that the disclaimer Google should add is "Don't try this at midnight after an 18-hour workday and then think it's our fault. Go to sleep and check back in the morning." :)

Seriously though, I apologize for the mistake, nothing more frustrating than seeing bad information being spread (I've amended the original post and linked to this one). I was thinking about why I made that mistake though, aside from being a bit tired perhaps. And I think I know why, having written a second module now: it's the caching system that really confuses me quite a lot. You make one mistake in the file, try to test it, and the previous version loads or doesn't depending on unknown circumstances. Then suppose you pass a wrong parameter to an NXSL call -- the JS console or Venkman both lead you into the Google JS code, which is all compacted into meaningless statements. You get errors like, for example "a is not an object" which isn't particularly useful. So debugging a module becomes a fairly painstaking process of load, reload, add and re-add. At least when you are a n00b using the IG framework, like I am.

Now, I know for experience that these things are hard to do, so my suggestion (assumming it's not done already somewhere, but I honestly can't find it--and I'm sure that if it isn't they're already thinking about that, so this just counts as a +1) is for the doc to suggest some way to create a sandbox for developing that gives better debugging info or provide more clear instructions on how to do reloads when things don't work. And that development modules start off without creating a cached copy, instead of the other way around (thus caching what is quite possibly a module that doesn't work).

Anyway, moving on... nothing to see here! And thanks Dylan for setting me straight. :)

Categories: ning
Posted by diego on March 11, 2006 at 2:26 PM

filebox: a quick way to share files

fileboxitbutton.png

Many many times I want to quickly send a file to someone for them to look at, and I can never remember the names of the services that let you do this. But there's Ning! :)

So my 1-hour hack for tonight was to create filebox.ning.com, which allows you to upload files and then share the link with others, and it's deleted after a few days. Basically I cloned Brian's filedrop, modified some things in the code, made the uploads private, added messaging, and made it a little easier on the eye. The power of Ning at work. :)

Categories: ning, soft.dev, technology
Posted by diego on March 11, 2006 at 12:20 AM

if you don't get ning...

... or you think you're missing something, spend a few minutes and watch the screencast of Yoz's and David's great presentation at etech 06. Some of it is a bit on the technical side, particularly as they get to the Atom API demo in the second half, but that's the nature of the etech audience.

As I watched, I just felt incredibly proud for what we've built in the last year or so. And the fun is just beginning... :)

Categories: ning
Posted by diego on March 10, 2006 at 12:25 AM

new at ning: the ning atom api

logodeveloper_290x40.gif + atom-logo75px.gif

Our representatives at Etech 06 (Martin, David, Yoz and Brian) have just finished their presentation and announced our newly released Atom support, including what is probably the first non-weblog centric implementation and support for the Atom Publishing Protocol!! Here's one of the first summaries posted of the talk (by Dan Hon).

The whole content store is now AtomAPI-accessible. Cool eh?

Martin reports it was standing room, and people got really into it when the Atom stuff was announced. Awesome! We expect really cool stuff to come from this--the API is pretty fast and efficient.

Here's a ning app with a summary of the talk, including an upcoming screencast download.

Weeeee!

Categories: ning
Posted by diego on March 9, 2006 at 12:42 PM

a google homepage module for ning photos

I spent a couple of hours last friday tinkering with the Google Personal Homepage (Apparenlty called "ig" or perhaps "iGoogle"? Am I the last one to notice this? Probably). How hard was it to create a module for in that would pull in data from a Ning app? The answer: not hard at all.

So what to do? I decided to write a simple module that would do a nice AJAXy slideshow of public photos posted to Ning Photos. Step one was creating the actual slideshow and making it work as a separate page, and here it is. Step two was taking that behavior and wrapping it in a way that IG would understand, and here is that.

From the POV of Ning development, there wasn't really much to at all. The IG modules were easy to write as well. Something did make me scratch my head for a while: Google is actually flowing content through their servers, and making some heavy mods to the Javascript functions that you can call. The Google Homepage API dev guide is actually pretty clear and straightforward, except for one tiny tiny detail: There's a section on "Writing Robust Modules" that discusses a couple of key things: first, you can't use document.getElementById(), you need to use Google's _get() instead. Similarly, you can't use XML HTTP request calls (typical AJAX stuff) -- you need to use Google's own content fetching thingies (_IG_FetchContent and the NSXL API). All of which is cool, except the docs don't say "you MUST use these functions", at best the docs say you should. My natural tendency (and that of most other devs as I figure it) would be to go and just use what we know unless you explicitly say no. And it took me a while to give up using standard Javascript calls and try Google's at which point everything worked nicely (the heavy caching they're doing of stuff didn't help a lot). My only comment then would be to add a big red box at the beginning of the docs that say "If you want to do X Y and Z use these functions instead of the common JS functions, otherwise your module won't work." Just a doc thing, but it would surely help. (see my follow up post here for more on this topic).

Anyway, it was a cool experiment. I'm thinking about other uses for it, probably a bookmarks module would be the most appropriate one to try next, since it's pretty useful IMO.

ps: if you want to try the module, you need to use the link for it and use the developer module to include it, since it's not yet "published" in Google's list of available modules.

ps 2: of course, all the sources for how the module and the photo view slideshow with fadeout works are accessible from within Ning, both for viewing and for cloned apps. :)

Categories: ning
Posted by diego on March 8, 2006 at 10:08 PM

windows vista: me likey!

vista.jpg
For about a week now I've been using Windows Vista (CTP, Build 5308) in my machine at the office--at home I am still running XP-- which we got through MSDN. The CTP is of the "Windows Ultimate" flavor which includes Pro+Media Center+Tablet PC functionality. Nice. I dared to install it at the office because if that machine couldn't handle it, I wasn't sure which one could (Dual Core P4, GeForce 6800, 3 gig of RAM... you get the idea). It's an early beta (they're probably still six to nine months away from release) but it's pretty stable save for a few wrinkles here and there and the occassional slowdown. But I'm getting ahead of myself.

The installation process is really, really good. Pop in the DVD, click "install" and wait for a couple of hours. In my case, I did that as I left the office one night (yep, perhaps I'm a bit kamikaze that way) and when I got back the next morning, the machine was botted on Vista. That was it. No clicks, no questions, it just worked.

Once I booted the first thing I loaded was IE 7. I wanted to see how well it worked. Boy, was I impressed. Network transfers were super-fast. We huddled around it and wondered if IE was doing something funky, but whatever was going on also extended to FireFox, which loaded webpages at least 50% faster than before. I use FasterFox, so I know I wasn't dreaming. We compared the speed of loading the same pages on similarly configured machines (both Linux, Mac and Win) and Vista blew them all away. Sometimes twice as fast. WOW. I guess that the rewritten TCP/IP stack does make a difference after all.

There were a couple of problems with the install. First, I had Norton Antivirus running and it just can't be uninstalled for some reason. I can't stop it from getting in the middle of other processes, such as downloads either, and I haven't had the time to look for a solution. Probably a registry setting. At any rate, it's very annoying. The really annoying feature is the new user security they put in, essentially downgrading user privileges so you have to "sudo" for some operations. What's frustrating is that my user is an Administrator, there is apparently some hidden Administrator user that I don't have the password for, and there are folders that I can't delete. Period. I can't even look into them. That is just plainly idiotic. It's MY machine. Give me all the warnings you want, but let me access my own files damn it! I could bet that NAV is getting confused with that too, since it plugs in at a pretty low level. Other minor problems: the video driver Windows installed on its own was old -- but getting the update for Vista from nVidia fixed that. Then Powerarchiver wouldn't work at all, but WinZip did just fine. Oh, another tiny thing: when I shut the PC down, it bluescreens for just a second. I'd bet it's Norton again. But it doesn't affect anything. So it's fine. :)

Those wrinkles aside, the experience has been pretty good. Vista is fast and stable. Search has suddenly become useful. I can now search Outlook messages from the OS (and open them) faster than from within Outlook, and I didn't have to install or configure anything. Good one.

The hardware requirements are pretty steep at this point to run it properly, but I think those will come down as it gets optimized. As I understand it, build 5308 is the first one that is close to being "feature complete," so there still must be a ways to go in the optimization front.

Let's see, other cool things. The new sidebar (a copy of Konfabulator) is cool, and there's a fairly web2.0-ish site that deals with "gadgets" that apply (the site, not the gadgets) to both Windows Vista and Windows Live. The famous "Flip 3D" view is pretty cool and even (gasp!) useful. But, I searched aaaall over the place to see how to use it, and everyone talked about how cool it was but NO SITE said how. So here it goes: Windows Key + Tab. Alt-Tab is the regular switch, but with "live views" of the windows scaled down. WinKey+Tab is the Flip 3D thing. There. I said it. The secret's out (hold on for a million comments telling me where the obvious place to look was). :) You'll need a spiffy video card to use it, but it will work well if your system can handle it.

So far then? Aside from the ludicrously bad file permissions thing, I am very impressed by vista -- in fact, I'm sold. No WinFS, true, and it took a hell of a lot longer than it should have, but Vista is definitely going to be a good upgrade from XP I think (damn, I sound like Scoble!). Anyway.

As the Firefly characters would say: "Shiny." :)

Categories: technology
Posted by diego on March 8, 2006 at 9:36 PM

ning bookmarks - now with opml feeds

As a follow up to my addition of RSS to the Ning Bookmarks app, I've just made a quick update to add OPML feeds, or "reading lists", with the blue icon next to the title. For example, here are my bookmarks in OPML. James wanted to do some interesting stuff with OPML (see the comments of the previous post), and even though this doesn't get him all the way towards seeing a full-on tag-based hierarchy, you can subscribe to RSS or OPML feeds based on certain tags (Example: OPML for tag 'ajax', and here's the source page).

I have a few posts coming up: Personal Google Homepage modules on Ning, Flash (oh lordy), and I install Windows Vista and I am impressed (!). Stay tuned. :)

Categories: ning
Posted by diego on March 4, 2006 at 11:47 AM

Copyright © Diego Doval 2002-2011.