Judging by the number of times I've been e-mailed, pinged, and Tweeted about this, Nathan and Jimmy have gotten a fair bit of attention to their Bones.  Bones, you say?  Check this out:



As Nathan explains, this is a Notes 8 composite application, and what a wow! application it is:

It's inside a Notes client, but you don't see much of the Notes interface because we're hiding it.  There's some plugin.xml tuning you can do to mask certain pieces of Notes if you're properly motivated.

No, I'm not kidding.  It really is a Notes client.  That's a composite app called "smoke.nsf."  ("Smoke" as in smoke-test, not smoke and mirrors.)

We're using the Eclipse SWT controls almost exclusively.  Most of the Expeditor APIs weren't discoverable enough for us to use.  JFace wasn't helpful because those are all native OS controls, and we specifically need controls that have nothing to do with the underlying OS.  Even a lot of SWT wasn't adequate for us to do what we needed.  Later revisions than the one in the video (yes, there are later builds) don't even use the standard text rendering.  I wrote an elaborate approach to rendering anti-aliased text against a gradient background in Eclipse.
Industry-specific solutions are a great way to get attention.  One of my upline execs was sending around this YouTube link all day long, to people in IBM's healthcare industry unit.  I'd love to hear about more such industry-focused Notes solutions in the market.

Link: Nathan Freeman: Cats, bags, and YouTube >

Post a Comment

  1. 1  Devin Olson http://www.devinolson.net |

    I think one of the reasons it (the video) is so popular is that it shows the product.

    (sorry Ed, couldn't resist) ;-)

  1. 2  Patrick Picard  |

    This is very timely with Obama's push for electronized healthcare. They'll be raking in the bucks on this puppy!

    +1 @1 :D

  1. 3  Henry Ferlauto http://www.geniusinside.com |

    Absolutely brilliant! Hats off to Jimmy & Co. How long did it take you guys to develop this?

    @1 - A wonderful statement of the obvious.

    Nathan - At Lotusphere, if you ever come to our booth, please do not be offended if we ask for your car keys first. :)

  1. 4  Lance Spellman http://workflowstudios.com |

    I'm really happy to see this out there. I've been preaching for 2 years what the Expeditor/Eclipse undercarriage of the Notes client REALLY means. It means you can do fantastic apps like this. Finally somebody's had a motivation and ability to pull it together and show it off in a 1st class way.

    This will hopefully give all Notes customers some a-ha moments and provoke more of the same kind of work.

    Nice work Nathan and co.!

  1. 5  Mike Robinson http://www.invcs.com |

    Very impressive. Honestly didn't know you could do that. We're so busy that we don't have time to truly pick up the composite app/ECP stuff. The times we tried, the examples and docs just never sync'd up with what was happening in the client. It's going to be just one of those lock yourself in a room for a weekend and plow through it. Much like asp.net was when it first arrived.

    Good app guys hope you sell the heck out of it.

  1. 6  Erik Brooks  |

    @5 - Good analogy with asp.net. Keep in mind that Lotus 911 (as a Design Partner) also gets pre-release code months before even a public beta is released. Nathan himself said that XPages weren't that big a deal when they were finally shown at LotusSphere 2009... then later he said that they were, he was just jaded because he had been working in them for so long.

  1. 7  Nathan T. Freeman http://nathan.lotus911.com |

    @All - Thanks for the kind words. Hopefully you can tell from the (completely unscripted but heavily edited) video that a lot of personal passion and energy went into it.

    @6 - LOL. That's true, but there's no prerelease stuff involved here. Having done Carousel in 2007 was a good background for this effort, but even that was written on a Notes 8 client that was in public beta.

    Actually, if there was any single advantage that we had over the typical Notes developer in this case, it was the ability to ping IBM engineers on the Bleedyellow Sametime server, and get responses in seconds. THAT saved us days, for sure. It might be accurate to say that Bleedyellow paid for itself that way.

    The success we've had thus far has really been because we have great developers working diligently on the project, support without pressure from management, and a couple of guys with strong backgrounds in medical systems. All that and the fact that we simply refused to allow "can't" into our vocabulary.

    The funny thing is: I'm very appreciative of the reaction from the Yellowverse, but I'm also quite surprised. If you're a Foundations reseller, then this is a cool vertical app for you to pitch to doctors. But for other Domino shops, I'm really amazed you guys care! :-) This is so far out of the arena that I'd expect to impact you. I'm really blown away by the responses. Thanks again, everyone!

  1. 8  Chris Warner  |

    @7 Hey, some of us are actually certified admins/builders of EMRs *and* Domino Developers :-) Seriously though, nice work!

  1. 9  Ed Maloney  |

    What this really shows is not that Notes can build some extraordinary applications (that's always been true), but that IBM needs 10 more Nathans!

  1. 10  Keith Brooks http://www.vanessabrooks.com |

    It's so popular because of Jimmy.

    Seriously cool app, even if it was a mock up and not for real 100%, have no doubt Nathan would get it done.

    It's a great app, so how's the one coming along for the auto mechanics?

  1. 11  Erik Brooks  |

    @7 - Hehe... I must admit I was quite taken back when you said "Xpages just aren't that big a deal" (paraphrasing a bit here)... I was glad to see you reverse your stance on that.

    Are you honestly saying that you didn't intend for this to be a viral video? (This is where you say "STOP! SHHHH!!! PAY NO ATTENTION TO THE MAN BEHIND THE CURTAIN!!!!")

    If so, I'm shocked -- this is a *perfect* case-in-point for the "show the product" Lotus marketing arguments you've been making for the past few years!

    I'll start the poll now...

    This has ~2300 views:

    { Link }

    I give your video 3 days to crush that.

  1. 12  Nathan T. Freeman http://nathan.lotus911.com |

    @11 - Well, there's still some aspects of Xpages that are barriers. The inability to consume Lotusscript libraries is a huge one. But yes, there's definitely a lot of good stuff there, and I'm definitely a convert.

    As for our intentions... well, I'd be a fool to claim otherwise NOW, wouldn't I?

    I honestly have no idea how many people will see it. YouTube has reported 315 all day, and I'm certain it's more than that by now. But what the real number is, I have no clue.

  1. 13  Darren http://www.dadams.co.uk |

    Great application, but let's not forget that making videos like that isn't easy either. I say that as a veteran of hundreds of takes and cameramen trying to stay patient.

  1. 14  Henning Heinz  |

    As much as I admire the work of Lotus 911 here. In my opinion the current Domino Designer only is of little help to build something like this. I would even go so far that how Notes works today it would probably have been easier to use something else (for example pure Eclipse with an SQL backend like DB/2 or maybe even Couch Db). So even more respect for the hard work being done and perhaps with Notes moving forward this is the right way to go. The challenge for IBM will be to look at this and take it as a benchmark on how future Notes applications should look and work.

    Generally speaking this video has been the best in years to show the potential of Lotus Notes (or the Eclipse framework). I haven't been able to watch the video with sound yet but I am curious why this has not been developed as a web application.

  1. 15  Erik Brooks  |

    @14 - If for no other reason, the Notes client's security model will be far tighter than what the web would ever be.

    I think the real Notes' strengths as seen here are the backend. Lotus Foundations, combined with Notes security, replication, encryption, etc. make this a nice self-contained package.

    You could use pure Eclipse, with an SQL backend, custom synchronization code, custom security, encryption modules, etc. etc... or you could just use Notes.

    Oh, and don't forget all the other good stuff Foundations comes with -- it could be perfect for a small doctor's office.

    Now if the Obama administration DOES want to leverage this, and it gets popular acceptance amongst healthcare firms, and Big Brother wants to do some serious data mining on all that aggregate data potentially billions of records... NSF ain't gonna cut it there. They'd need to export/link to some much more scalable db.

    One thing I want to know is: since plugin.xml was modified, does that mean that officially Lotus Support wouldn't support this app?

  1. 16  Nathan T. Freeman http://nathan.lotus911.com |

    @13 - Thanks for that observation. The source video was shot in 3 hours last Friday afternoon in our backoffice studio. It was edited on a Mac that night and the following morning by the long-haired hippie you see at the beginning of the video, and uploaded on Sunday afternoon.

    The biggest effort in all that? Getting the HD version to compress to H.264. That took 10 hours. Jimmy says he might actually buy one of those ridiculous Mac Quads next time we do this. :-)

    @14 - Domino Designer wasn't involved in this effort except in the most simplistic way (we do have forms & views, but for the sake of backend modeling, not UI.) 99% of the work was done in Eclipse 3.4.1 with the Expeditor 6.2 toolkit and Notes 8.5.0.

    The prescription part of the system actually DOES use an RDBMS backend instead of Notes. We've designed it to consume JDBC sources just as readily as NSF sources (and local text and image file sources, for that matter.)

    There is no question that the flexibility and breadth of OSGi bundles on the Eclipse platform helped enormously.

    However, I wouldn't want to write our actual treatment information back to anything but NSF. We don't have to worry about identity management. We don't have to worry about federation. We don't have to worry about backup. We don't have to worry about scalability. We don't have to worry about reliability. We don't have to worry about distribution for maintenance cycles. We don't have to worry about encrypted storage. We don't have to worry about encrypted communications.

    We can work with records that are as fine-grained as "blood pressure systolic in a supine position reading 130mmHg" or as cumbersome as a 300MB DICOMM file of a contrasted spinal MRI.

    For all of that, NSF *just works.*

    If that means we occasionally have to manually code a columnar JOIN by looping through some values in Java, I'll do it with a great big smile on my face.

    Oh, and why is it not a web application? Do you think we could design that shuttle wheel list scroller (we call that control a "BigList" by the way) to work via JavaScript and AJAX? Ummmm... no thank you. It's hard enough to get it working when we're writing the RCP equivalent of Assembler by doing pixel-level transforms on graphics primitives to squeeze adequate performance out. We wouldn't even be able to do all those gradient buttons with rounded corners on the web, much less the anti-aliased centered text overlays. What would we do instead? Image slices?

    I'd gouge out my eyes first.

    HTML paradigms aren't ready for touch screens yet. Even sexy iPhone sites aren't ready for this yet. (Can you imagine searching through 40,000 ICD9 diagnoses, or 120,000 prescribable drugs on an iPhone? *page*... *page*... *page*...)

    @15 - I think it's fair to say that we're not counting on Lotus for direct technical support in this case.

  1. 17  Erik Brooks  |

    @16 - Thanks for pointing that out about the "BigList"... I thought about it but got distracted and forgot to type it into my post.

    That control would be a JOKE on the web. Unless you went with Flash... ugh.

  1. 18  Henning Heinz  |

    Nathan, thank you for taking the time to answer my questions. Very informative. For the web part. I do not question your decision to use Eclipse. I often deal with customers that want everything in the browser. I asked because I want to become better in these discussions. It was not my intention to propose the web browser as the superior platform.

  1. 19  Nathan T. Freeman http://nathan.lotus911.com |

    @18 - I didn't interpret it that way. :-) It really is a fair question; I just like to be dramatic in the answer, because we hear it from a lot of people.

  1. 20  Charles Robinson http://www.cubert.net |

    @16 - "We don't have to worry about distribution for maintenance cycles."

    I'm not too familiar with deploying Eclipse ... things ... (or, obviously, Eclipse terminology in general) so please bear with me. Are you saying you intend to package this as a widget and deploy updates through Domino 8.5? If that's the general concept this is even more impressive.

    And you, dramatic? I'm shocked!

  1. 21  Kevin Mort http://www.theglobalmind.com |

    Wow. That's all that needs to be said really.

    The reason I think we're all pretty excited is that we're seeing some serious innovation here, and it's using the base of what we already have to do it.

    Given some of the things I am working on now, I see some real opportunities for this.

  1. 22  Nathan T. Freeman http://nathan.lotus911.com |

    @11 - I guess you were right. Two days from your statement, and it's at 2900+.

    @20 - Yes. It's an Eclipse plugin, and can be installed & distributed through all the policy-managed capabilities provided by Domino. We really just need to put updates in the Catalog. (As an interesting aside, we could put OTHER things in the Catalog, couldn't we? Anyone interested in writing apps for the Bones platform?)

  1. 23  Michael de Haas  |

    As Kevin @21 said, can only echo the W O W! Oh, except, @Nathan, you're being the nice guy??? I hope not, tell me its just played at being the nice guy ;_) Seriously though, thanks Nathan for sharing the enthusiasm and technical side - now if my doc had one of those I might just go more often ;_) Headline "Doctors' visits escallate as seriously cool new app and technology becomes popular ... ssshhh, don't tell anyone that IBM was involved, maybe Nathan and Jimmy, but not IBM!!!!!

  1. 24  Ed Brill http://www.edbrill.com |

    Disgusting -- some loser flagged this video as 18+ on Youtube, and now you need to be registered to view it. Nate, I hope you are connected enough to undo this. @Everyone else, it's worth it. Go log in.

  1. 25  Nathan T. Freeman http://nathan.lotus911.com |

    @24 - Alas, YouTube does not offer a means of disputing the "mature" flag. However, the good news is that no age check it required for the embedded version. So the embedded version here, or at { Link } doesn't ask you if you're 18.

    I've inquired on YouTube's standard help mechanism. Some part of me is thinking about raising a real ruckus about it. Maybe your reaction will inspire. ;-)

  1. 26  Marty Buckley  |

    @24 Ed, it may have received the +18 rating because of the drug Nathan unfortunately picked (not being a doctor) was Famvir, check famvir.com. Not one for the kiddies =:0 Oh and Fantastic app and demo Nathan.