Boost PC performance: How more available memory can improve productivity
Â
Uklug2009 Hairy Bikers Cookbook
1. The Hairy Bikers Domino Cookbook
Presenter: Bill Buchan & Steve McDonagh
Company: hadsl & AVX
2. The Hairy Bikers ?
⢠âThe Hairy Bikersâ are two hairy
bikers who do cooking
âSimon King & Dave Myers
âHave a BBC Series
⢠Their web site is at:
âhttp://hairybikers.com
⢠Steve and I are both bikers
âAnd he can cook
⢠So we thought....
3. Programming is like Cooking
⢠Programming is like cooking
âYou get a recipe to help you start
âAs you get better, you can adapt it
âWeâll give you a short tutorial on each item
⢠But... You know all about Domino
Programming
4. This is not...
⢠This is NOT about Domino Programming
⢠This is about interfacing Domino to different systems
⢠Remember:
âA good corporate programmer does not develop
from scratch
âA good corporate developer is there to join up components in
order to deliver results
âSometimes, the components are outside Domino
âLike a hairy biker, we knock stuff out using the stuff we find
5. Remember:
⢠Whilst the business might love Domino
âOther parts of the business use different tools.
⢠Its part of our job to make it easy
âFor those other parts to see our data
âFor our applications to use other data
⢠Not only does that make us gods in our world
âIt makes us good corporate programmers to other teams
⢠Job Security....
6. So what we going to cover?
⢠The worlds simplest Lotus Notes Application
âA wee contact database
⢠Then we access it via a:
âWeb service
âAjax front end
âBlackBerry SmartPhone
âFlex Front End
â.Net Visual Basic Service
7. Weâre focusing on..
⢠Weâre focusing on
âThe pros and cons for each platform
âHacking Developing each solution
âDebugging each solution
⢠Weâre not really interested in the Domino application
- you know all about those
⢠Weâre not delivering production quality code here
âThats your homework
8. The Application is:
⢠The Application is:
âVery simple - single view and Form
âNo complex code, validation, error checking
⢠Remember,
âThe application isnt the point of this presentation
âThe point is how it interfaces with other systems
11. Serving Web Services to others...
⢠Ingredients:
âDomino 7.x or above
âLotusscript
âSoap UI (http://soapui.org)
âDomino Designer 7 or above
⢠Level: Simple
12. How to create a Web Service...
⢠Create a LotusScript-based web service in Domino
Designer
⢠Name the class which exposes your methods
⢠Save the class
⢠You can access the web service using:
âhttp://<server>/<database.nsf>/WebServiceName?WSDL
âIn any browser
⢠You can now test the web service using SoapUI
⢠Demo!
13. Ajax Applications
⢠Ingredients:
âDomino 5.x or above
âLotusscript
âDomino Designer 5 or above
⢠Level: Simple (if you know javascript)
14. How to create an Ajax application
⢠You need to choose a Ajax Framework:
âDojo is included in Domino and used within iNotes
⢠Attach them to the application
âSimplest is to embed in the application
⢠Write forms and views using Javascript for function
and CSS for display
⢠Test, test, test, and test again
âIn all browsers...
⢠Demo!
16. SoapUI and the Web Service
⢠This shows the âGetBuddyNamesâ Call.
âThe SOAP web service call on the left, results on the right
17. SoapUI and the Web Service
⢠This shows the âGetBuddyâ Call.
âThe SOAP web service call on the left, results on the right
18. Flex Applications
⢠Ingredients:
âAdobe Flex Builder v3 or above (adobe.com)
âLotusscript
âDomino Designer 7 or above
⢠Level: Medium (if you know java)
19. How to create a Flex application
⢠Open up Flex Builder
âDo the flex bits..
⢠Embed the SWF file in a page or form
âCopy+paste the launch code from Flex Builder to the page
⢠Demo!
20. Rich Internet Applications...
⢠Rich Internet Applications allow the developer
to have apps
A. that are connected
B. that are engaging
C. respect user adoption over
technical integration
21. My experience of using RIAâs
As a corporation we needed :
⢠Something that would give a unified corporate look and feel
⢠Something easily localised to 14 languages
⢠Something that looked and worked the same on all platforms
⢠Something easily deployable on all conceivable platforms
⢠Something that could âtalkâ to multiple data sources
⢠Something that could produce amazing results quickly
23. How to create an .net application
⢠Open up Visual Studio 2005 or 2008
⢠Create a âWindows Consoleâ application
⢠On the project explorer, create a web service
⢠Point it at our Domino web service
⢠Wire in some code...
24. How to create a .net application
⢠On Solution explorer, âAdd Service Referenceâ
⢠Point it at our Domino web service:
25. How to create a .net service
⢠In my case, I want
to create a .net v2
service, so click on
Advanced,
âThen click on âAdd
Web Referenceâ
26. How to create a .net service
⢠Enter a
web
reference
name
âThe click
on âAdd
Referenceâ
â
28. Windows Services
⢠If you want code that will run all the time consider
using a windows service:
âIt has a âsleep/wakeupâ protocol so it could poll for work on
a regular basis
âIf it detects work, it can then spawn worker threads to
execute this work.
âIts harder to install - I used MakeMSI to make the .MSI
installer for my windows services.
âIf you call an authenticated web service, where do you
store the username/password ?
⢠Clear text isnt good enough.
29. A Quick Gotcha!
⢠Applications built using
âVS2005 want to use .Net Framework 2.5
âVS2008 want to use .Net Framework 3.0 or 3.5
⢠Customers in general have NOT rolled out .Net
Framework v3 to their clients, nor their servers
⢠You can target these projects to use .Net
Framework v2.5 - this may make your deployment
easier
30. So to round up
⢠Be very good at Domino
⢠Be good at other things too
⢠Domino is not a walled garden
⢠Everything is a weapon