Genii Weblog

Kathy Sierra has a great post called Can your teach someone to care? which talks about how to infect your people with the enthusiasm to really care about your customers. As she puts it

Passion is infectious, and so is caring. The brain usually can't help sliding toward the behaviors of those that brain is around. So if you want people to care, make sure the culture of your environment has hit a critical mass of caring.

As with most of Kathy's posts, this is well worth reading. I like to feel that we have a culture of caring at Genii Software, but it never hurts to be reminded and to think about it consciously.

I got a lot of positive feedback, and one probable customer, from my recent post Method of the Day: AppendHotspot, and I was wondering if people thought I should do more of those sorts of posts? If so, should I make little mini-sample dbs to go along with the posts? That obviously isn't going to happen on a daily basis, but I could probably do it every week or so.

Those who have noticed I haven't blogged in a bit may have wondered why. The sad truth is that my laptop was stolen just as my son and I were leaving Amsterdam, so I haven't had one. I had to borrow one for the conference, and scamble to make up the demos and samples which had been on the old laptop. Thanks to Notes encryption and replication and such wonders, there wasn't much worth worrying about in terms of valuable data on the laptop, but it has made it very hard to respond to people, fix problems, or blog. I am sorry for any inconvenience to any customers or potential customers, or even those who just were bored with my non-changing blog.

Rudi tells me that people are still signing up, and the EntwicklerCamp 2005 conference starts on Monday. I am excited, but a bit nercous, as I always am before these German conferences. German audiences are very polite and attentive, but there are few of the audible or visual clues that you are getting your message across and haven't lost anybody. That might be a bit nerve racking when I am talking about C API extensions, even if I think the content is pretty cool and the examples have turned out really well. Anyway, I'll let you know how it goes.

It may be just coincidence, but it feels like some days every person who calls or writes wants to hear about the same piece of Midas functionality. Today was something unexpected for me, since it is usually HTML generation or MIME e-mails or dynamic tables. Today, everybody wanted to know about the amazing AppendHotspot method.

Well, to be fair, nobody asked about the AppendHotspot method. Nope, not one. They just asked questions to which the AppendHotspot method was the answer.

So, what is this method, and why should you care? Part of the reason is that this is an "all purpose" method. You can add action hotspots, buttons, computed text, text popups, file download hotspots, mosueovers, etc. etc., all with the same method. Here is a brief sampling of the kinds or questions and answers (not just from today):

Q. Can I use create computed text on a page using Midas.A. Sure. Just use code such as:Call rtitem.ConnectPageBody(db.Server, db.FilePath, pagename)Set rtchunk = rtitem.DefineChunk("Everything")Call rtchunk.AppendHotspot("ComputedText", |@If(@ClientType="Web"; "I'm a web browser"; "I'm a Notes client")|)

Q. Can I add a button to an e-mail message I am sending that will reply to me when the user presses it?A. Sure. Just use code such as:Call rtitem.ConnectBackend(doc.Handle, "Body")Set rtchunk = rtitem.DefineChunk("Everything")Call rtchunk.AppendHotspot("Formula Button", |@MailSend("Joe Schmoe"; ""; ""; "I was pressed"; "Body")|, "", "Press me")

Q. Is it possible to insert a subform into a form using Midas?A. Sure. Just use code such as:Call rtitem.ConnectFormBody(db.Server, db.FilePath, formname)Set rtchunk = rtitem.DefineChunk("Inside Section 1")Call rtchunk.AppendHotspot("Subform Formula", |@If(@ClientType="Web"; "WebSub"; "NotesSub")|)

Q. Can I add a JavaScript action hotspot inside a table cell of an existing document?A. Sure. Just use code such as:Call rtitem.ConnectBackend(doc.Handle, "Body")Set rtchunk = rtitem.DefineChunk("Table 1; Row 3; Column 2")Call rtchunk.AppendHotspot("JavaScript Action", |alert('If I knew more JavaScript, this example would be better')|, "","JavaScript example to press")

Q. Is it possible to add a file upload onto a form using Midas?A. Sure. Just use code such as:Call rtitem.ConnectFormBody(db.Server, db.FilePath, formname)Call rtitem.Everything.AppendHotspot("File Upload", "", "")

I could go on, but I bet you catch the drift. Pretty slick method, eh? Really makes you want ot go look at the Midas Help and see what else you can find (or even just read up on AppendHotspot), doesn't it?