Short domino web site urls

As Ben pointed out yesterday, my love of substitution rules picked up off Mark in order to give lovely short urls to my website, meant that the comments section of blogsphere broke (not blogspheres fault), but I still love them so here’s a lightning fast guide to using them, and how not to suck at it

So here we have a basic use of substitution rules, the first line means that when you go to the root of the site, it redirects to your nsf (so you don’t have to stipulate it in the site config), also the path and .nsf don’t appear in your urls, the next 2 lines are in there are in there so that the preview and insert quick images from blogsphere work as it seemed to need them or it would not display properly (shrug, I know its poor of me and I know I should fix any issues I might have and pass them straight back, if they prove to be genuine bugs rather than me being a twit).

So next we have a problem that the code REALLY wants to connect to the actual path of the server i.e., and the first line is redirecting everything to root, ah! you think, ill just put a substitution rule in so that when we just ignore that specific URL, see the extra line below.

but dang it!!!, it does not work and the server console says “/apps/blog.nsf/apps/blog.nsf/basic?openform cant find design note”, this is because i have forgotten to read the flippin manual!!, as the domino admin guide states


“The incoming and replacement patterns in substitution rules must each specify at least one wildcard. If you do not explicitly include a wildcard somewhere in a pattern, the HTTP task automatically appends “/*” to the pattern when it stores the rule in its internal table. “


Soooo, just bung the “/*” on the end of you “/” rule, and hey presto it works


those quicker than me on the uptake will have realised that we can use substitution rules to move things like images and other resources out of a database with out having to go thought all that boring recoding e.g.



oh, after each change to make your substitution rules take effect straight away do “tell http refresh” on the server console


hope that helps


Oh, yes i know i put this up on a Wednesday but i will at the London Lotus Beer tomorrow night, so doubt i will be in a fit state to blog later

Old Comments

Randal Oulton(27/02/2011 01:10:59 GMT)

Okay I did a fudge on the home page for now with a meta refresh (ugh); and got google site search working again.

Well worth the effort, lovely short beautiful URLs that search engines will love.

Have a look, { Link }

Mark Myers(05/03/2011 19:02:57 GMT)

hi hi Randal,

thanks for the feedback, could you tell me what else it breaks

personally i don’t use default website document in websites i write (feels like hard coding) that’s why i have the rule pointing to “/” and deal with it at a design level

I have not used goggle search on website as I happily have domino FT, but agree that the urls should cater too it

Randal Oulton(26/02/2011 15:57:59 GMT)

Hey Mark,

this breaks a lot of things, like default home page in the web site document, google site search, etc.

I’m currently trying to figure out workarounds; if / when I come up with any, I’ll report back to save other people going “ack!!!”

The Server Names of Evil

Cruety to users should be part of all administrators sworn duty, the heaving multitude must realise this, that their plight is hopeless, to accept their fate and simply e-mail you their souls (or upload it to the collaboration server if its large, but NOT under any circumstances to fill up the file servers with multiple copies of it!!)

To reinforce this, the names of the servers they use on a daily basis should not only remind them of the dark gods (according to the prophet H.P. Lovecraft), but be bloody hard to spell,

Therefore I present suitably names servers who’s function is an aspect of their unholy names sake, may their naming bring insanity unto all who use them
-“whose name no lips dare speak aloud” (File/Print Server 1)
-“A vast, swirling monstrosity of impossible size” (File/Print Server 2)
-“The All-in-One and the One-in-All,The Lurker at the Threshold” (Collaboration Server 1)
-“a great shining ball of energy” (Collaboration Server 2)
-“The Black Goat of the Woods with a Thousand Young” (Db server 1)
-“The Feeder, Horror from the Hills” (Db server 2)
-“The Crawling Chaos, Messenger to Azathoth” (Mail server 1)
-“The Bringer of Pestilence” (Mail server 2)
-“The Bearer of the Cup of the Blood of the Ancients” (web server 1)
-“The Thing which Should Not Be” (web server 2)
-“The Great Priest” (VPN/Reverse Proxy Server)
-“The Burrower Beneath” (Proxy Server)
-“Matriarch of Swarms” (Chat Server)
-“The Spider God, Spinner in Darkness” (DNS/DHCP 1)
-“Dark Silent One” (DNS/DHCP 2)
-“God of the Cold White Silence” (Application Server 1)
-“The Defiler” (Application Server 2)
-“The Toad-God” (Application Server 3)


Old Comments

Devin Olson(22/02/2011 15:16:01 GMT)

LOL – Funny you should post this now. I just watched
{ Link }
over the weekend. Laughed myself silly.

Mark Myers(22/02/2011 15:58:01 GMT)

@Devin Cool

Days of lessons -lesson 2- Adobe Air and AV

Lesson 2 in my fortnight of not much fun, is to do with adobe AIR and file copying:

Problem: a download manager written for a client is hanging/erroring on making a duplicate of a recently downloaded file.

Now I did not get this problem on my dev machine, nor on my Linux box, or other Virtual machines, the error was our old fav #3128 found at runtime error messages and as the error suggest was caused by a combination of greedy AV process and churning HDD (actually the client machine was swapping due to low mem)

Sadly my initial hope to do it as Asynchronous action so as to not do nasty pauses by using a 1 off timer

SecondTimer = new Timer(500, 1);
SecondTimer.addEventListener(TimerEvent.TIMER, doSecondCopy );

this did not work because if there was a tiny file in the download sequence, the you could end up trying to copy the second file before the first one had been finished with by the AV, and due to the flow of the application a move to full Asynchronous behaviour was not practical.

so I ended up doing the old horror of inserting a pause in the app in flex/flash/air this is done like this

import flash.utils.getTimer;

var now:int = 0;
var start:int = getTimer();
while (start+500>now) {
now = getTimer();

for a 0.5 second pause

yes I know its bad, but it works, and I think its less ugly than multiple retrying after multiple tests for I/O errors. (ick)

days of lessons -lesson 1- AWS instances

Since returning from LS11 I have been simply swamped with work, but it has been very trying work, and I have made quite a few mistakes, thankfully these have been turned into lessons, the first one is to do with Amazon Web Services.

Now AWS is a very good service, but they do assume that you are not a prat (in my case its not a valid assumption), do NOT make any assumptions with them, take everything they say at face value, so “Terminate” does not mean “force a shutdown” it means TERMINATE

The evil Ben Poole has been sending me links since I terminated LDC’s primary instance (but as he had bang up to date replicas of the Db’s we were working on, I can hardly complain), the most useful of them are this one and this one

but in summary:

1) YOU may treat an instance as mealy a virtual server, but amazon don’t, they treat it more like a temporary session on their system, and will delete it instantly on the bases of one button click (plus conformation)
3) Turn on instance protection (found under the instance management menu in the AWs web console)
4) The nice little “Volume” (or drive) that is automatically created when you make a instance, only lasts as long as the instances life, if you terminate the instance it will delete (while you watch and cry), assigned proper extra ones
5) As soon as you are happy with you instances set-ups, build AMI (templates) of it and take snap shots of your volumes (in addition to backups)

nuff said

New Mini Anime Series- Nyanpire , Morita san wa Mukuchi

Both these anime are under 4 mins in length, and done in a very basic nearly ‘flash’ level of animation, so I’m lumping them together

Morita-san wa Mukuchi
A very quiet girl is asked at school for her class notes… (yes I know but was only just over 2 mins long)

An abandoned kitten is turned into a vampire, and now must seek blood….(quite funny with a music video tacked onto the end)

Disclaimer: These are mini reviews of anime’s that are fresh out in Japan and are not licensed in the UK, buy them once they have been licensed or at the very least buy the merchandise, remember if the anime makers make a loss, THEY WILL STOP MAKING ANIME!!

Lotusphere round up

Like most people I think a basic brain dump is the order of the day for lotusphere 2011

It was the hardest lotusphere I have been to work wise, I did not get half of what I was due to finish….er..finished.

Lotus idol, a fantastic opportunity for me and a bonus for LDC, one I was grateful to have been given, though personally I think the session proposed by Peter Presnell would have given more to the community.

Numbers up on last year, but hardly any time wasting, even at parties, there was much heads together stuff, card exchanging, serious conversation and plan making

Bill Buchan has been much maligned over the years and is a very easy room mate once you get over the fact he only needs about 2 hours sleep per night (party till 4.30am, up at about 7.00am)

I spent some time with the Nokia boys and admired both the hardware of the new phone and the idea if combining the power of C++ with what looked to me like a graphical library that feels strangely like flash animation (tweening and what not), however I found my self discarding it in the face of android and iphone, later on I expressed this opinion and the expressions of vague disgust on the faces of a couple of colleges forced me to re-evaluate the stance (yet another reason to work in a community), but is this how people think when they compare notes and other platforms? you take the shiny popular one? bearing that in mind I think the largest challenge for lotus in the future will be not technology base, but the re-branding and coping with the poor lotus brand perception without ditching what I personally have found to be the best tech community.

The LDC T-shirts went down well, will have to maintain the same standard next year

think that’s it, everything else has been said by everybody else

Old Comments

Mark Myers(06/02/2011 11:46:06 GMT)

@nathan, our pleasure, as i mentioned to a few of your colleges it was great that after GBS made such an investment in this LS that numbers were up and people were much more positive than last year, a good sign, a good omen for the future

Nathan T Freeman(06/02/2011 02:07:59 GMT)

For the record, the LDC shirts were OUTSTANDING. Thank you so much for mine!

Keith Brooks(06/02/2011 03:14:40 GMT)

Dang, I didn’t get one.
Sorry I missed your idol session, no one told me you won it.

Mark Myers(06/02/2011 11:52:53 GMT)

@keith no worries, well get you one