Domino Guru - Welcome PageChris Toohey | Domino Guru

HomeWeblogPublishingsExamples & DownloadsResourcesSitemapAbout Click-to-Share! Login
Contact Information

Chris Toohey

  • Email: ctoohey@dominoguru.com
  • BleedYelow.com: Chris Toohey
  • Skype: ChrisToohey
  • Gizmo: ChrisToohey
  • Yahoo!: ChrsToohey
  • Google: ChristopherToohey
    (ctoohey@dominoguru.com)
  • AIM: ChrisToohey
  • Twitter: ChrisToohey
  • Facebook: ChrisToohey
  • LinkedIn: Chris Toohey
  • Videos:youtube.com/christoohey
    vimeo.com/christoohey
  • Podcast Information
    http://www.yellowcast.net
    YellowCast @ Twitter
  • RSS: Syndicate This Site!
  • Guru Tag: DG Banner Logo

Like what you see? Help feed-the-beast by donating to the site and its humbly thankful author!

My Twitpic Updates
My Twitter Updates
    Publishings
    Domino Development and Data Store Architecture 06/06/2008
    Domino Development
    RIM's Blackberry Connections Client - First Impressions (Part 2) 05/19/2008
    My Gear
    RIM's Blackberry Connections Client - First Impressions 05/19/2008
    My Gear
    Remove my name from the Domino Directory!! 02/05/2008
    Lotus Notes
    Quick and Dirty Mail Application Document Importing 01/24/2008
    Methods and Strategies
    Publishings Archive
    Examples & Downloads
    SOTU - Remote Console Command Utility v0.3 01/06/2009
    Examples and Downloads
    Adding Admin-defined Color-coding to Lotus Notes View rows via Color Profile Documents 01/05/2009
    Examples and Downloads
    Showtime: Blackberry Enterprise Server Push Utility for the Lotus Notes Client - Release v0.1 11/13/2008
    Examples and Downloads
    MixMaster v0.1 - Remote NotesItem Manager 10/06/2008
    Examples and Downloads
    No-View NotesDocument Lookups, UNID Logic, and Environment Variables - Example Application and Video Tutorial 09/16/2008
    Examples and Downloads
    E & D Archive
    Resources
    PlanetLotus.org [ Community ] Alan Lepofsky's Notes Tips [ Community ] Chris' The Business Controls Caddy [ Community ] Petr Stanicek [pixy] [ CSS ] JoeLitton.net [ Community ] Resources Archive
    Site Resources

    RSS Site Content
    Syndicate This Site!
    DG Banner Logo
    Advertisements

    Latest Weblog

    Lotus Notes Domino CMS - RenderKit Teaser Video

    07/01/2009 12:15:51 AM | Chris Toohey | Saylorsburg, PA

    I've put together a simple little teaser video that shows off the RenderKit architecture for the Lotus Notes Domino CMS I'm currently working on and plan to use to host not only this site, but also a few pro-bono websites I'm putting together.

    Once complete, I plan on publishing the Lotus Notes Domino CMS to OpenNTF.org, so if you have any comments, questions, and suggestions, please feel free to comment in this post!

    Permalink | Projects | Digg This! | Comments (6)

    CMS: do I ask for a PRE/POST Body for each renderkit?

    06/28/2009 08:33:16 PM | Chris Toohey | Saylorsburg, PA

    One of the projects that I'm working on requires the creation of a Lotus Notes Domino-based content management system. With this Lotus Notes Domino CMS, I plan on not only running the two project websites in question but also this site (www.dominoguru.com). All sites require some basic content management with a mind to incremental updates once the website "design" is finalized.

    It's with that in mind that I'm using (what I'm referring to as) renderkits for the markup blocks within the application.

    There are 2 main types of actual content NotesDocuments in my CMS at this time: documents and events.

    Each of these NotesDocument types contain actual data, while the other types of NotesDocuments simply tell the CMS what to do with the data.

    content NotesDocuments are used to create static blocks of content - such as the inclusion of Google Friend Connect or the PlanetLotus.org Blog Widget, which will be unique-keyed and can be used throughout the website.

    The renderkits allow you to define a unique key, selection criteria, formula template, and count attributes - all of which will be used to create evaluated subsets of documents and events content markup.

    CMS RenderKit Form UI

    An Agent runs against all active renderkits, using the search criteria to grab a NotesDocumentCollection against the CMS, and - using the Formula as a "template", does a simple Mail Merge-like meld of the NotesDocumentCollection content into the desired format... which is then saved en masse into the Body NotesItem for that given renderkit.

    Pretty standard stuff as far as a CMS goes... but I had a simple question: should I allow for the definition of pre and post Body NotesItems in the renderkit; allowing the prefix and suffixing of content in the Body NotesItem?

    My knee-jerk reaction was sure, why not!... but the more and more I think about it I'm not too sure.

    See, for the intended usage scenarios, I will be using a Page NotesDocument to marry the content and the renderkit into the intended delivered content. I can define prefix and suffix information in the page as needed without worry.

    Of course I imagine that there's no harm in adding it really... but that's where I turn to you:

    And feel free to give your thoughts beyond the poll in the comments of this post (and thanks!).

    Permalink | Projects | Digg This! | Comments (1)

    The beginnings of my 'untitled' Project Management and Tasking project

    06/25/2009 02:59:44 PM | Chris Toohey | Bethlehem, PA

    One of the latest projects that I'm working on is something that I absolutely need: a simple yet effective Project Management and Tasking application.

    I've decided to try to make this process as public as possible in an effort to drive away all of my readership to show you an example of ground-up development for new projects.

    For example, I've posted the following two snapshots of my notepad entries based on customer meetings that I've had to gather requirements which establish a phase 1 and phase 2 run of napkin development for said project (shown respectively):

    Project Management and Tasking application - Napkin Development: Phase 1

    Project Management and Tasking application - Napkin Development: Phase 2

    Yeah... you really can't see much. But it's not the particular content that I really wanted to share but the overall process.

    Thankfully, the customer is all for my sharing this project with the overall community (minus their specific extended-functionality requests, of course), and provided I can get this completed in a timely manner I'll coordinate with the OpenNTF groups and get this online for a download.

    I plan on starting development on this project after this weekend, where I'm wrapping up one post-due project and my Domino Java Ajax Proxy wiki article (and example application download)... so stay tuned!

    ... ok, I'll share a few basic features and functionality that I'm looking to add:

    I want to create a fluid multi-client UX, which means using the UI that I played around with a few weeks back to mirror the Facebook UX in a Lotus Notes Client application. That being said, I'm writing this for the Lotus Notes Client, Wap/Mobile browser clients, and eventually a Web Browser client. Silly order you may say, but the fat client and mobile clients were the big requirements for this one... as the Web Browser client is really something that's a nice to have.

    As for the functionality in the application itself, each Project will act as a single NotesDocument, which each Task a Response NotesDocument. A Task can have a dependant Task, which will allow you to properly weigh assignee workload across all projects as well as pinpoint potential delivery delays.

    Each Task will also act as a milestone within the overall Project, so each Task is weighted against an overall 100% completion rate with completed milestone percentages rolling up to the Parent Project NotesDocument. ... hopefully that makes sense!

    So anything else that you'd like to see in this application? Time provided, I'd love to get some click-to-export functionality that will allow you to take the content into Excel, Symphony, Open Office, or even Microsoft Project.

    Permalink | Projects | Digg This! | Comments (8)

    My opinion on the current OpenNTF exchange

    06/23/2009 07:18:41 PM | Chris Toohey | Saylorsburg, PA

    I haven't mentioned my opinion on the OpenNTF.org committees and other current initiatives... because (as a contributor and a project chef) I have yet to contribute in the publically-available forum nor did I participate in the open conference call wherein the steering committee had begged for (and continues to beg for) contributor and project chef feedback.

    See, I didn't want to weigh in here on my blog due to the fact that the steering committee has made it a priority to establish feedback avenues where we could all share our thoughts, ideas, concerns, and frustrations.

    I felt that taking the discussion out of those arenas and silo-ing it in my blog would do nothing to help the cause, but act to instead simply drive traffic to my site... and would quite frankly come across as self-centered and elitist.

    I would instead recommend that you check out the OpenNTF Forum that's been setup to handle these discussions and share your opinions therein. And I would suggest that if you wish to bring to the attention the current ongoings with the community, that your blog post point your readership to the forum.

    That way, you're not only helping the cause - or at the very least giving it a fair chance to be understood - but also giving your readership the opportunity to contribute their thoughts, ideas, concerns, and frustrations.

    That is... unless you're not into giving your readers all of the facts in your blog posts and wouldn't want them to form their own opinions.

    Permalink | Community | Digg This! | Comments (4)

    Why I like WebOS (and can't wait for the Palm Pre on ATT)

    06/19/2009 10:28:22 AM | Chris Toohey | Bethlehem, PA

    I'm a developer. At my core, I'm a web application developer. I know enough Java to get myself into trouble, sure, and I can handle most any language with minimal ramp-up time required... but I absolutely know HTML, CSS, and JavaScript.

    WebOS - at it's core - is a Linux-based OS that runs WebKit, meaning that the UI components for the WebOS devices are HTML, CSS, and JavaScript!

    Palm reportedly chose to architect the WebOS to allow web application developers a zero-grade ramp-up time on developing custom applications and tweaking existing applications for the device OS.

    Ever try to create a Hello World application for a Blackberry having no prior experience with Web Services, Java, etc.? How about Windows Mobile?! And while the iPhone certainly has it's adoption numbers and application developers, unless you jailbreak your phone you can't customize the device (nor load custom applications not downloaded from the Apple AppStore.

    Android shows some real promise in this arena as well... but while it's an Open Source OS and I don't foresee anything from Google moving into obscurity, it's just not quite there yet.

    So back to the WebOS. It's an OS that leverages my existing knowledgebase. I don't need to learn something knew to get the thing to work... and while I'm up for growing as an individual and learning new things to improve myself - who the hell has the time anymore?!

    I want to be able to hit the ground running, make tweaks as needed, and get the device to do what I want it to do when I want it to do it... and from what I'm hearing WebOS is the platform that will allow me to do it.

    For the Palm Pre itself as a device, the reviews I've heard are all saying that it's a solid device for first generation hardware, and the reported issues I've heard were more WebOS things that can be fixed with firmware updates.

    Sprint currently has an exclusivity deal for the Palm Pre through 2009, which means we're potentially only 6 months out to a Palm Pre jumping networks and making it's way to Verizon and (High One willing) AT&T!

    Within 6 months, I'm banking on the WebOS being properly vetted by the Sprint adopters, any and all hardware issues brought to light, and a post-holidays launch across networks of a slick device that sports an operating system that I can really sink my teeth into (without reading too many online tutorials).

    So what are your thoughts? Have your own wishlist device? Have opinions on which mobile device OS you prefer (and prefer to write applications for)? Fire away in the comments section!

    Permalink | Device Lust | Digg This! | Comments (1)

    Facebook: Vanity URLs, Blackberry Client Update, and Fan Pages

    06/16/2009 03:41:03 PM | Chris Toohey | Bethlehem, PA

    Friday night/Saturday morning Facebook - the most heavily adopted and active social networking community online (at least since the last time I checked) - finally offered vanity URLs. I jumped at the chance to grab http://www.facebook.com/christoohey. Thus I've updated my contact information which can be seen on the right-hand column of the DominoGuru.com website. If you haven't done so already, grab your own vanity URL (and while your there, feel free to Friend Request me).

    In the past few months, I honestly find myself spending more time on Facebook than I do on this website or across the other various social networking sites. This is due in part to it's flexibility and near-constant evolution as well as the limitations within my own weblog template.

    Speaking of evolution, Facebook v1.6 for Blackberry just hit the Blackberry AppWorld. I'm installing it now and hoping that this release bridges the UX gap between previous releases and those on - for example - the iPhone Facebook client.

    I'll play around with it later today and let you know whether it's worth upgrading/installing.

    Something that is worth checking out right now is the Fan Page for PlanetLotus.org.

    The thing about this particular Fan Page is that it's a solid stroke to bring the subject matter expertise and amazing content that's generated from within the little yellow bubble to a community that primarily may not know of the Lotus Online Community.

    From the Fan Page, Yancy is pulling in the PlanetLotus.org content feed. This will allow us to quickly and easily click-and-share content that addresses our own needs as well as those that do not actively engage the blogs, podcasts, news items, and other amazing content that's aggregated at PlanetLotus.org.

    So go grab your vanity URL, fan page PlanetLotus.org, and for the love of all things holy can you stop sending me Yoville requests?! ;-)

    Permalink | Community | Digg This! | Comments (1)

    developerWorks Author Contribution Program, Domino Wiki, and my latest article

    06/12/2009 03:30:31 PM | Chris Toohey | Bethlehem, PA

    My latest article and example utility - the Lotus Domino Java AJAX Proxy - will be published hopefully sometime this month as a wiki publication on the Lotus Domino Designer Wiki.

    There it should find a much larger readership and hopefully become a more useful solution for those developers beyond the yellow bubble of our Lotus Online Community.

    My publishing the article in the wiki instead of directly onto this site is only - I'll admit - partially due to the fact that I think it will get more eyes-on and evolve beyond v1.0 than if I were to publish it here. See, I get something out of publishing to the wiki.

    After a quick exchange with Amanda Bauman ( abauman@us.ibm.com ) - where we discussed the article topic, the specific versions of Lotus technology used, etc. - I had pre-registered my to-be-written article for submission to the IBM developerWorks Author Achievement Recognition Program! I am currently an IBM developerWorks Contributing Author, but working my way to the IBM developerWorks Professional Author designation.

    So - to recap - I'll publish the Lotus Domino Java AJAX Proxy article on the Lotus Domino Designer Wiki, gain points towards a new developerWorks Author designation, gain readership and further my exposure in the greater global IBM community.... all for the same effort that it would take me to publish it on my own site. Well, on my own site minus the benefit of it being seen outside of the Lotus Online Community, which often has the you're preaching to the choir result.

    If you have ideas on articles, run a blog/website and about to write a new article, or just want to contribute to the wikis that little nugget of how-to information that helps get you through the day, contact Amanda Bauman and see if you can't be greedy like me!

    Permalink | Community | Digg This! | Comments (1)

    IBM Lotus Technical Information Education Community Meeting - June 2009

    06/12/2009 02:07:28 PM | Chris Toohey | Bethlehem, PA

    Meeting Agenda

    • Community updates - hear the latest community news
    • Member spotlights - two contributors share their stories
    • Special Topics:
      • IBM Press - learn how to become an IBM Press author
      • IBM Custom Content Assembler demonstration - see a new tool that allows you to assemble only the technical content YOU want to see!

    For more information about our community, visit our blog, Facebook page, community page in Lotus Greenhouse, or Twitter page.

    Audio replays are made available following each meeting.

    For more information about this meeting - including conference call-in numbers, etc. - please view the posting at the LTIE Team Blog.

    Using the Domino iCalendar Demo application that I've put together, you can add either Conference Call-in option that best meets your schedule:

    1. Option 1: June 23rd, 2009 - 10:00AM-11:00AM EST
    2. Option 1: June 23rd, 2009 - 08:00PM-09:00PM EST

    Permalink | Community | Digg This! | Comments (0)

    Domino URL Schemas for Domino CRUD API READ States

    06/04/2009 12:59:41 PM | Chris Toohey | Bethlehem, PA

    I posted a question yesterday across the various social networks (Facebook, MySpace, Twitter, LinkedIn, BrightKite, etc.) asking the following:

    Do you prefer db/view/doc or db/doc?open&UNID=X architecture for the front-end of the Domino CRUD API & web development?


    ... and I got some amazing feedback. Before I go into the feedback on the idea - which I'll admit 140 characters didn't quite do justice - I'll elaborate.

    The ThinkerEvery Domino Web Application Developer has used the db/view/notesdocument URL Schema for accessing a NotesDocument in a Domino-based NotesDatabase. That's the standard usage scenario. It's what we have all been taught. It's how Domino RAD drives us to develop.

    But I'm curious... is there a better way? Specifically, does the db/Page_or_Form?open&UNID=X URL Schema, when combined with @URLQueryString and @GetDocField, lend to a better NotesDocument and NotesData access scenario?

    No, I haven't done benchmark testing yet on this, but avoiding a View Design Element that does nothing at times but add bloat to a NotesDatabase - to me - is just one of the many potential benefits to this approach.

    Now, a few things that people brought up and that I think definitely should be mentioned:

    1. This can impact/break URL Walking
      Simply put, you can't delete the NotesDocument and expect to see the View.

    2. Most Domino Web Application Usage Experiences warrant Views
      ... so why not just use the View.

    3. This can impact URL Permalinking
      Basing the URL up a NotesDocument UNID is easy, but it breaks any permalinking functionality, which can cause problems for bookmarking content or Search Engine Optimization.

    Now, I have an address for each of these items:

    1. This really depends on the expected usage experience. Do I want to return - potentially - a listing of all content if I navigate away from a specific content entry (NotesDocument)? Depending on the application, I might not want to. As for this "breaking", you can handle a missing UNID and where to redirect in that event in the design architecture.

    2. Again, depends on what you need the application to do. For an application like Email, this meta-viewing of entries makes sense. For an application like a requisition, helpdesk, or jobs database, I don't think you'd want to return the customer back to a listing of all entries.

      As far as rendering a NotesDocumentCollection in the UI, some could argue that unless there is a continuous update on View Entry contents, using a View can be unnecessary overhead. For example, if I were to render an entire "View Index" into a single NotesDocument as JSON and return those contents, I'm getting the exact functionality I would require without that overhead... but I'm getting ahead of myself here.

    3. This... this I'm working on.

    For that last one, consider a technique that I've mentioned in the past (Nathan T. Freeman's Andrew's Allusion (or Creating Primary Keys in NSFs)), where with db/Page_or_Form?open&UNID=X, X is something like index.html. The content - when created - is assigned a plain-text UNID by the customer (ie., index.html). Post submission, the NotesDocument UNID is set to @ReplaceSubString(@Password(UNID); "(":")":":";""). This hash - for those curious - would result in a completely valid UNID (3A8A735F029991B9844D181AE297DDDE).

    But I'm again getting ahead of myself.

    Back to the original question: which method works best? I personally think that - once you have a handle on the UNID, @GetDocUNID would return a NotesDocument much faster than lookup via NotesView. Why? Well, consider this:

    When you access a NotesDocument by it's UNID from the Web Browser Client via the db/view/UNID URL schema, the view simply becomes a placeholder, and is quite frankly ignored. Next time you see a Domino Web Application that uses this UNID URL schema, replace the view with either a 0 (zero) or thisviewdoesnotexist. Both will result in the NotesDocument being rendered. The View however is considered for things like Form Formula etc., as long as you don't use a zero or a non-existing element name.

    I dunno, that sounds more dangerous to me than breaking the URL Walking and could potentially be another feather in the cap for the db/Page_or_Form?open&UNID=X URL Schema.

    But like I said, I've yet to do any real benchmarking on this to see which is indeed faster or weigh the true benefits of one approach over another. For that, I'll open up the comments. Weigh in and let us know what you're thinking. If we get enough interest, I'll update the Understanding the Domino CRUD API Example Database to use both techniques.

    Permalink | Domino Web Development | Digg This! | Comments (2)

    Lotus Technical Information and Community Kickoff a success!

    05/26/2009 11:43:07 AM | Chris Toohey | Bethlehem, PA

    Option 1 of our Community Kickoff meeting today went without a hitch! We defined the objectives of the initiative, showcased not only the IBM Lotus Notes Domino Wiki but also the previewed the XPages-based Wiki template that will soon hit developerWorks, and established what Lotus Advocates already knew: this IBM initiative is about using the technology and collaborative tools in and beyond our products portfolio to establish and maintain connections with customers, subject matter experts, business partners, and IBM key players.

    Joyce Davis, the Community and Program Manager, has published today's presentation online in case you missed the meeting (or, like some were stuck in your car during the call!):

    Lotus Technical Information and Education Community Kickoff
    View more Keynote presentations from Joyce Davis.

    If you missed this morning's conference call and presentation, there's always Option 2, which takes place tonight at 8PM Eastern (click-thru the link for all conference information).

    And if you haven't done so yet, check out Lotus Greenhouse, which will act as the home for this community initiative, which you can find here (Lotus Greenhouse Login Required).

    Once you've signed up, feel free to connect to me via their public Sametime server at sametime.lotus.com, where you'll be able to connect to other community members as well!

    Permalink | Community | Digg This! | Comments (0)

    Weblog Archives
    Powered by DG!

    The content of this site carries no warranty.
    All design and content © dominoguru.com 2003-2009 unless otherwise noted.
    ( designed and developed by Chris Toohey unless otherwise noted )