Monday 22 June 2009

Oh Joy .. here comes July :-( or "The Joy Of Flags"

I am sat here in my front room watching some chaps who don't live on the estate hang flags on the lamp posts. This is because it is only a couple of weeks until that annual orgy of all things "orange" and "protestant" gets under way.

This year there are a lot less flags, mainly due to the fact that when the wee toerags whose appear to communicate in monosyllabic grunts, groin scratching and positioning of a Burberry/Rangers FC baseball cap at varying angles upon their echoingly empty heads, came to the door and asked "wannagiveussomemoneyfurdeflagseh?" I, like many of my neighbours when we had taken a moment or two to decrypt this strange request replied "Ah no". This could be because folks are a bit strapped for cash this year or it could be that being surrounded by 100's of flags all flapping in the ever present Norn Iron wind roughly level with your bedroom window was just a bit intrusive. "Tradition" or not, sleep deprivation can be a right royal pain in the arse.

Now it has to be said we have a plethora of flags and for some it is a requirement equivalent with breathing that they fly every fecking one from every lamp post in the province.

At the top of the heap the Union Jack, the flag of the "United Kingdom of Great Britain and Northern Ireland" to give it the full rather boring name.. this one
Then you have the "Government of Northern Ireland Flag" which is the sort of official flag of the six counties
Then you have the "Alternate Northern Ireland Flag" Which has no crown and a wee union jack in the top corner. This is perceived to be a UDA (Ulster Defence association - an illegal paramilitary/terrorist/drug dealing group)

Then you have the flag of the Orange order, a protestant religious organisation famed for it's bowler hats, sashes and it's unofficial war cry of "Fuck the Pope" (i am being crass here, however on the 12th july when certain songs are played at the BIG parade you will hear this with a monotonous regularity and on walls in Belfast you will see FTP scrawled on walls and it is not the work some underground group of TCP/IP graffitioso)


Then there is the King Billy Flag .. another sort of Orange order flag



Not to be left out the UVF (Ulster Volunteer Force - Another illegal paramilitary,terrorist organisation) and the YCV (Young Citizen Volunteers - Much the same as the UVF but without the moustaches)

And here are more.. including Dutch flags (King Billy was Dutch) Scottish flags and even Israeli flags (The Meyer & Cohen Hassidic Loyal Rising Sons of William temperance and Ohi Vey Battalion perhaps??) Anyway there are lots and lots and lots of flags on BOTH sides and as they fly in estates all over the north each flutter picks at the scabs of a 1000 insults both real and imagined.

So here I sit watching a plethora of flags flutter in the stiff breeze and there in the background several of young Ulster Protestantism's finest are singing along to the not terribly well played battle flute. "We are... We are... We are the billy boys! We are up to our necks in Fenian blood, surrender or you die" whilst necking a bottle of Buckfast tonic .. well after all it is traditional so it must be right... isn't it?

Thursday 18 June 2009

The "YEC " scientific method

I recently had a run in with some anti-Darwin YEC (Young Earth Creationists) I am a card carrying "Grumpy Old Atheist Fart" and as I get older my capacity to put up with the tawdry dribbling of the wilful ignorant gets less and less.

In a perfect proof of Godwin's Rule of Nazi Analogies i was sent this

"However, the Western nations have not learned the lessons of the horrific wars and genocides this century. Evolution is today entrenched in our universities even more than it was in Nazi Germany. "

and a sentence later not satisfied with reductio ad hitlerum, Darwin is up to his evil ways again 150 years after his death.

.. our report of the Columbine High School massacre documents the on-going effects of evolutionary thinking in the young

This load of advanced gobshitery set me to thinking and I believe I can now reveal that YEC's have adapted the standard Scientific Method the orginal one goes like this

1. Observation and description of a phenomenon or group of phenomena.

2. Formulation of an hypothesis to explain the phenomena. In physics, the hypothesis often takes the form of a causal mechanism or a mathematical relation.

3. Use of the hypothesis to predict the existence of other phenomena, or to predict quantitatively the results of new observations.

4. Performance of experimental tests of the predictions by several independent experimenters and properly performed experiments.

And this has evolved (ooops sorry strike that) stayed the same into the YEC METHOD which goes like this

1. Observe the scientists observing Phenomena, look grumpy, pray a bit, blame Darwin for the Holocaust.

2. Start mining "The Sunday Sport" and "The National Enquirer" for phenomena that could be useful later on. "Aircraft buried under 1000 years of ice" is a good one.
The startling news that the Piltdown Man was a fake is another. Stop looking grumpy and try looking saintly for a while, grow a Moses-esque beard, pray some more, twiddle thumbs and wait for a scientist to publish something you don't like. Blame Darwin for Columbine, Pol Pot,the third world debt and the disappearance of Orange Smarties.

3. Have a good long pray, fleece some true believers of a few more quid, wonder why scientists bother with all this work since they are wrong all the time ... blame Satan ... Jesus tells you that Darwin IS Satan and he hid his horns using genetic manipulation.

4. Form a "ministry", start a web site, make a documentary about how Darwin IS actually Satan . Prove beyond doubt that Darwin's Beard is a portent of the end of times. Form a hypothesis that affirms that the Man and, consequently, the Earth, is in the centre of the creation, prove hypothesis using bible verses ,repeal Copernican celestial model because Copernicus was a Catholic and very probably a relative of Darwin and therefore the second cousin twice removed of "the beast" .. underline this by showing their beards were VERY similar.

5. Ban Science for being always wrong, co-opt the Orange Order as the NEW Protestant Inquisition, burn Richard Dawkins at the stake even if he does recant.

Friday 12 June 2009

Shock Horror Coding Pencil High level Probe - I am speaking at UKLUG

Well it had to come sometime. ILUG, UKLUG, DNUG, Lotusphere all have a long and rich history of excellent speakers covering topics of interest with alacrity, elegance, wit and vigour. Well for an hour during UKLUG on the 8th or 9th of October that is all due to change, for tis on one of those days I will take the stage to deliver with my compadre in arms "Will" Bill Buchan an hours worth of fun filled romping around the world of RIAs.

So if you are coming to UKLUG in October , please stop by and heckle, we may be providing things to throw and Bill and I promise to make it more difficult by moving around a lot and filling the silence with geek chat delivered in a variety of strange accents at great speed. (Subtitles will be provided)

We will be expecting a certain amount of audience participation and if you are planning to attend you should start practising the following catchphrases now ...

"OOOOOOOH My life!"

"FECK! ARSE! DRINK! GURLS!"

"Could'nt find his arse with both hands and a Tom Tom"

"Flex? With this waistline I should cocco!"

"Warren ... I'm really an admin...honestly....please let me out"

You can find out more about what is going on here on the UKLUG SITE if you haven't made you mind up yet I would advise you to get your skates on as the books are is very nearly full which is testimony to the fact that the rest of the speakers are way way better than me!

Panda Bear - a Boon for Quickr Users from SNAPPS

There are dozens of links to this already, however just in case you don't follow the Notes Yellow Blogs.. This is just out from those awfully nice people at SNAPPS
Panda Bear which is a nice alternative to the "Quickr Connectors" supplied with Quickr and because it is an ADOBE Air App, much less
intrusive when installed on your PC.

I was lucky enough to have been using it for a while now, the folks at SNAPPS called it "testing" .. but I managed not to break it, which for me is strange and for Panda Bear a ringing endorsement of it's stability and fragility.

If you have a mainly file share Quickr Installation and need a quick and easy method of getting files into and out of your Quickr Places, Panda bear is the tool for you.

Take a trip over to the SNAPPS site and check out and A+ Gold Star cracking app!

Notes Client Tip - Dragging and Dropping documents into a calendar

I was asked today the following question,
Why can't we drag a customer from a customer list onto our Customer Visit Calendar and make an appointment with them that way?
Good question. We already have that functionality on the web interface. Popup a customer list, select the customer or customers from the list and drag them to the day you want to schedule the visit and it auto creates the document for that customer on the day you dragged the document(s) onto.

I sucked my pencil for a bit, scratched various bits of my anatomy that would not be misconstrued by my colleagues as offensive and hummed and ahhed. I pinged Julian Robichaux and bounced the idea off him. Can I drag docs which are not calendar docs from an embedded view on a page (or form) onto calendar view embedded on the same form and create a document or documents based on the QueryDragDrop event of the calendar based on the documents that I had dropped.

Julian confirmed my initial thoughts that this was a non-runner because when a view is embedded you can't seem to access the drag drop events - BUMMER! So I then mentioned a word not mentioned in polite society much these days and to give Julian credit it didn't finch or berate me in any way. "What about Framesets?" I said

After a bit of futtering about we discovered that yes you could accecss the Drag and Drop events from FrameA to FrameB and Joy of Joys the CurrentView in the UIWorkspace FrameB's QueryDragDrop event was the view from FrameA! _ YIPEE!

I took my leave of Julian with much thanking and promises of beer and proceeded to have a bit of a debug to see what I could do.

I created a wee test NSF with two forms CUSTOMER and CALENT
Followed by a View of just the CUSTOMER forms and a Calendar view of the CALENT forms
A Frameset was created and in the LHS frame I popped CUSTOMER view and in the RHS frame CALENT calendar view.

On the CALENT view's QueryDragDrop I entered some code and had a ferret about in
what was an what was not passed, this is what I found out.

If you grab one doc from the CUSTOMER view and drop it over the calendar, then there are no documents in the UIView.Documents collection, there is a CaretNoteID that links to the dragging document in the UIView.

If you select more than one document from the CUSTOMER view and drag it over the Calendar then the UIView.documents collection contains the documents you selected.
If you actually select (the wee tick in the gutter) one document the UIView.documents will contain that one document, but you cannot count on users doing that.

Sub Querydragdrop(Source As Notesuiview, Continue As Variant)

Dim ThisSession As New NotesSession
Dim ThisDB As notesdatabase
Dim ThisUI As New NotesUIWorkspace
Dim ThisUIV As NotesUIView
Dim ThisDC As notesdocumentcollection
Dim OldDoc As NotesDocument
Dim NewDoc As NotesDocument

Set ThisDB = ThisSession.CurrentDatabase
Set ThisUIV = ThisUI.CurrentView
' *** Test to see if the view I am dragging from is the calendar or the customer list
If ThisUIV.ViewName <> "Calendar" Then
Set ThisDC = ThisUIV.Documents
'*** Well you must have dragged SOMETHING to fire the event so get it from
'*** from the CaretNoteId
If ThisDC.Count = 0 Then
Set OldDoc = ThisDB.getDocumentById(ThisUIV.CaretNoteID)
Set NewDoc = New NotesDocument(ThisDB)
NewDoc.Form = "CalEnt"
NewDoc.Customer = OldDoc.Customer(0)
NewDoc.City = OldDoc.City(0)
NewDoc.Date = Source.CalendarDateTime
NewDoc.Time =Format(Now,"hh:mm")
NewDoc.Status = "Planned"
Call NewDoc.Save(True,False)
Else
Set OldDoc = ThisDC.GetFirstDocument
Do While Not (OldDoc Is Nothing)
Set NewDoc = New NotesDocument(ThisDB)
NewDoc.Form = "CalEnt"
NewDoc.Customer = OldDoc.Customer(0)
NewDoc.City = OldDoc.City(0)
NewDoc.Date = Source.CalendarDateTime
NewDoc.Time =Format(Now,"hh:mm")
NewDoc.Status = "Planned"
Call NewDoc.Save(True,False)
Set OldDoc = ThisDC.GetNextDocument(OldDoc)
Loop
End If
Else
'*** This is the calendar and I am moving docs around inside it
Set ThisDC = ThisUIV.Documents
If ThisDC.Count = 0 Then Exit Sub
Set OldDoc = ThisDC.GetFirstDocument()
Do While Not (OldDoc Is Nothing)
OldDoc.Date = Source.CalendarDateTime
Call OldDoc.Save(True,False)
Set OldDoc = ThisDC.GetNextDocument(OldDoc)
Loop
End If
Call ThisUI.ReloadWindow()

End Sub


This code allows the user to drag a customer (with or without tick selction) or customers from the customer list in the left hand frame onto the calendar and create a calendar entry for that customer on the dropped on date. The user can also safely drag and drop calendar entries around inside the calendar.

Useful and cool. :-)

I have popped the NSF up here so if you are interested in seeing it in action you can have a go.

Enjoy ...

Monday 8 June 2009

Be sure to tell your Flash Drives you love them



In September 1956 IBM launched the 305 RAMAC, the first computer with a hard disk drive and that beauty is it The HDD weighed over a ton and stored 5 MB of data.
So send some love to your 32gb Memory stick right now!

International "NotesBeer'n'Tweetup" Invite Hong Kong

I am off on my travels again this month, and I will be in Hong Kong (well Kowloon to be exact) from the 25th June until the 3rd July. So if any local Notesgeeks or allied trades from the Hong Kong/Kowloon area want to get together for a few beers and a bit of a laugh during that time leave a comment here or drop me an email to mcdonaghs[at]utvinternet[dot]com and we can arrange something.

Thursday 4 June 2009

An Alternate way of embedding a configurable Video player in an NSF

I recently came across a nice open source video player that is dead easy to build into your Notes Applications. The player is called FLOWPLAYER and has been released under a GPL license. There are commercial and multi-domain versions which you have to pay for, but the base app is free to build into your apps.

You can download it here and once you have the zip file unzipped you have two SWFs and an example directory. I embedded it in my app like this.

01. I embedded FlowPlayer-3.1.1.swf into the RESOURCES / FILES section of the nsf

02. I embedded FlowPlayer.controls-3.1.1.swf into the RESOURCES / FILES Section of the nsf

03. I embedded the Flowplayer-3.1.1.min.js inot the RESOURCES / FILES section of the nsf

04. I added the flowplayer-3.1.1.min.js as an external JS file to the form I wanted the player to be on

05. I added a RT field into which a Video file could be attached

06. I added this code to the form
<a href="'http://www.unseenuni.com:81/flowplay.nsf/new/[ComputedText1]/$File/[ComputedText2]?openelement' style='display:block;width:400px;height:300px' id='player'></a>

<script language="'javascript'"> flowplayer("player","http://www.unseenuni.com:81/flowplay.nsf/fp311.swf?openfileresource")</script></pre>


[ComputedText1] = @documentUniqueID and
[ComputedText2] = @attachmentnames

07. I created the form .. attached an MP4 opened it in the browser and it worked like a charm and looked like this



So if you have a need for a very clean, easy to use adaptable player for free (we like for free) then you can't go far wrong with Flowplayer ... check it out here

Disqus for Domi-No-Yes-Maybe