All Lessons

Lesson 1 - What are XPages and Getting Started

Subscriber LessonHelps you get set up with the sample databases and we start looking at how to build a new XPages application. (11:49)

more...

Lesson 2 - First Document Data Bindings

Subscriber LessonSets up the first document binding so that we can create new contact documents using an XPage. (20:39)

more...

Lesson 3 - Introduction to Themes

Subscriber Lessonstarts to set up the UI of the application using CSS and Themes. (9:05)

more...

Lesson 4 - Layout and OneUI

Subscriber Lessontakes the theme we implemented in the previous lesson and starts to make the application look like a "OneUI" app. (10:01)

more...

Lesson 5 - Repeats and Server Side Javascript

Subscriber LessonNow that we can create and view documents, we need a way of displaying lists (or views) of documents using repeat controls. We also investigate how to access file attachments using Server Side Javascript. (21:00)

more...

Lesson 6 - Navigation and Search

Subscriber Lessonnow that we have one view, we need to add more to make it easier to find data, and also the ability to search the database for contacts. (15:11)

more...

Lesson 7 - Repeating Repeats

Subscriber Lessonshows us how to display categories of data using repeat controls, using document collections and lists. (11:47)

more...

Lesson 8 - Dojo Charts

Subscriber Lessonfinally to add that chart bling we can make use of Dojo charts to add an animated, pretty looking pie chart with just a few lines of Javascript. (14:18)

more...

Lesson 9 - Working with documents in views

Subscriber Lessonshows how to select documents in a view in XPages using checkboxes or creating your own custom buttons for each row in the view. (12:01)

more...

Lesson 10 - Using Legacy LotusScript in your XPages

Subscriber Lessonworks through the various options with running your existing LotusScript or Java agents with an XPages application in Domino 8.5.1. (Watch out for a later episode on how this is improved in 8.5.2) (17:20)

more...

Lesson 11 - Using Java in your XPages

Subscriber Lessonshows that if you're a Java developer that you can make use of your existing Java code inside your new XPages applications. (10:26)

more...

Lesson 12 - Linking Combo Boxes Together

Subscriber Lessonshows how to link two combo boxes together using partial refreshes. (7:06)

more...

Lesson 13 - Dojo Dialogs

Subscriber LessonAddresses the commonly asked question of how to display data or fields in a dialog box in an XPage. (14:55)

more...

Lesson 14 - Working with fields in the client

Subscriber LessonTakes a first look at the syntaxt for referencing fields which are generated by your XPage in Javascript. (12:22)

more...

Lesson 15 - Adding Security to your XPages

Subscriber LessonCovers the commonly overlooked task of adding security to your XPage designs. (8:06)

more...

Lesson 16 - Logging and Error Handling

Subscriber LessonLogging is one of the things which is lacking in XPages, this episode covers the options which are available to you. (13:12)

more...

Lesson 17 - XPages as Agents

Subscriber LessonShows how you can use an XPage to mimic an agent and get huge performance and scalability improvements as a result. (9:26)

more...

Lesson 18 - Validation

Subscriber LessonShows an alternative way of implementing complex business logic in your application. (13:11)

more...

Lesson 19 - Localization

Subscriber LessonLooks at the surprisingly simple task of localizing your XPages applications. (10:31)

more...

Lesson 20 - URL Structure

Subscriber LessonDescribes the new URL structures which we need to get used to with XPages. (10:10)

more...

Lesson 21 - Scoped Variables

Subscriber LessonInvestigates the new scoped variables available to you to store data in memory on the server. (10:05)

more...

Lesson 22 - Custom Properties

Shows how custom controls can be made more re-usable. (11:16)

more...

Lesson 23 - Using MooTools in Server Side Javascript

Subscriber LessonServer side can be extended by other server side frameworks such as Mootools which add a whole load of pre-rolled functionality to your Javascript for very little effort. (9:38)

more...

Lesson 24 - Dojo Pager Widget

Subscriber LessonThere are hundreds of Dojo widgets distributed with your Domino server, this episode looks at how to implement just one of them. (11:43)

more...

Lesson 25 - Switching Site Skins Dynamically using Dojo, Themes and SSJS

Subscriber LessonThis episode shows that it's possible to implement quite complex UI skins based upon user selections. (12:01)

more...

Lesson 26 - Calling SSJS from CSJS

Subscriber LessonLearning how to integrate your server side and client side Javascript code together is an important skill in XPages development. (9:41)

more...

Lesson 27 - Using jQuery with XPages

Subscriber LessonjQuery is the most popular Javascript framework in the world, it's relatively easy to integrate into your XPages application if you want to. (12:01)

more...

Lesson 28 - Display two documents in different modes

Subscriber LessonA very quick lesson which shows how you can have two documents on the same XPage in different modes. (3:11)

more...

Lesson 29 - Radio Buttons and Checkboxes

Subscriber LessonAn important look at how to make use of radio and checkbox controls to work with list fields on your Notes document. (7:01)

more...

Lesson 30 - Animated Lists With Dojo

Subscriber LessonProving that you don't have to rely on Dojo widgets to add cool UI to your XPages app, you can write quite impressive functionality yourself using the base Dojo classes. (12:00)

more...

Lesson 31 - What's new in XPages with 8.5.2

Subscriber LessonDomino 8.5.2 was released in August 2010, we take a look at the new goodies available to the XPages developer (16:16)

more...

Lesson 32 - Data Tables

Subscriber LessonData Tables are a control that sit somewhere in between a View and a Repeat control, very useful in lots of siuations!

more...

Lesson 33 - Extension Library

Subscriber LessonIn September 2010, IBM released the Extension Library project to OpenNTF, see how it will help speed up your XPages development.

more...

Lesson 34 - Creating PDFs with XPages

Subscriber LessonUsing Server Side JavaScript and iText it's quite simple to create PDFs, this lesson shows you how.

more...

Lesson 35 - Accessing Data in other Databases

Subscriber LessonRunning your XPages in one database and your data in another is quite achievable, we show you how.

more...

Lesson 36 - Controlling Automatically Generated CSS

Subscriber LessonIf you want to override the standard CSS which is generated by the Domino Server this is the lesson for you.

more...

Lesson 37 - Keyboard Shortcuts

Subscriber LessonIf you want add more advanced keyboard interactions to your XPages apps then Dojo can help you.

more...

Lesson 38 - Roundtripping Rich Text

Subscriber LessonWe show you how to round trip rich text with a little more manual intervention using scoped variables.

more...

Lesson 39 - Installing and Using SubVersion in Domino Designers

Subscriber LessonYet more cool projects have been released to OpenNTF, including, finally, SVN integration for DDE. It's a little complex at the moment, but worth investigating.

more...

Lesson 40 - Properties Files

Subscriber LessonWe show you how to use properties files for static configuration in your XPages and also how to maintain them from the Notes client.

more...

Lesson 41 - Dojo Form Rating Widget

Subscriber LessonAnother user request lesson to demonstrate how to get the Dojo Form Rating widget working with XPages.

more...

Lesson 42 - Export To Excel

Subscriber LessonAnother user request lesson to demonstrate how to export data from your Domino database to Excel using XPages.

more...

Lesson 43 - Dojo Editable Grid

Subscriber LessonUsing the Extension Library and the Dojo Grid widget we show you how to implement and editable grid in your XPages application.

more...

Lesson 44 - Managed Beans

Subscriber LessonYou may have heard tell of Managed Beans in XPages, but just what are they and why would you want to use them. We show you how.

more...

Lesson 45 - Performance Profiling

Subscriber LessonWe show you how to check out the performance of your spangly new XPages app and track down those bottlenecks in your code.

more...

Lesson 46 - Doing Maths with Fields

Subscriber LessonThis was a good question from a user: should I do maths server side or client side? We show you the options.

more...

Lesson 47 - Manual Control of Partial Refreshes

Subscriber LessonWant to know how to update two different areas of the page yourself? Then this is the lesson for you.

more...

Lesson 48 - Drag and Drop

Subscriber LessonYet another look at a Dojo Widget, this time the Drag and Drop tool which is great for building configurable reports as we show here.

more...

Lesson 49 - REST API

Subscriber LessonThis week we look at implementing a REST API for your XPages application.

more...

Lesson 50 - Session Timeouts

Subscriber LessonAs well as authenticated sessions, we need to worry about in memory sessions, this lesson explains all

more...

Lesson 51 - Removing Dojo or CSS from your XPages

Subscriber LessonA quickie lesson which shows three different techniques for removing functionality from your XPages

more...

Lesson 52 - Navigation Rules

Subscriber LessonIf you want to add complex navigation depending upon user interaction with the application then maybe navigation rules can help

more...

Lesson 53 - Editing Multiple Documents

Subscriber LessonYou can bind your documents data bindings to panels inside a repeat control which allows you to display many documents in edit mode at the same time

more...

Lesson 54 - Debugging Java in XPages

Subscriber LessonWhen you write Java you can use Domino Designer to debug it line by line on the server. This lesson shows you how.

more...

Lesson 55 - Using JDBC

Subscriber LessonIf you have data in a relational database then getting access to it in your XPages is actually pretty easy, we show you how.

more...

Lesson 56 - CGI Variables

Subscriber LessonIn this lesson we look at how to access CGI Variables and what they can be used for.

more...

Lesson 57 - Tabbed Panels

Subscriber LessonThe default tabbed panels can cause some issues with validation. This lesson offers some alternative solutions.

more...

Lesson 58 - Local Server Console

Subscriber LessonIf you can't have a local development server installed then this lesson will be useful to show you how to get the web server console to display for debugging.

more...

Lesson 59 - Dojo Tree Widget

Subscriber LessonIf you want to implement a collapsible tree like interface for navigating files and folders, or in this case members of groups then this is the lesson for you.

more...

Lesson 60 - Dojo Mobile Controls

Subscriber LessonIn Domino 8.5.3 the Dojo Mobile Controls suddenly become useful, so in this monster 25 minute lesson I walk you through adding a mobile web interface to our contacts application.

more...

Lesson 61 - JDBC in 8.5.3

Subscriber LessonWith 8.5.3 and the new Extension Library, suddenly using JDBC data sources becomes a whole lot easier and more integrated into the development environment.

more...

Lesson 62 - What's new in 8.5.3

In this video I look at some of the new features which I think are the most useful and important in the recent release of Domino 8.5.3

more...

Lesson 63 - Using Github in Domino Designer

Subscriber LessonSetting up Subversion is easy in 8.5.3, well so is the more modern Git integration, this lesson shows how to use Git and the popular hosting site Github

more...

Lesson 64 - Using JSON Data in SSJS

Subscriber LessonUsing JSON is equally simple on the server side as on the client side, this lesson explores how to get the data and then how to work with it in combo boxes and repeat controls.

more...

Lesson 65 - Installing the Extension Library Using Update Sites

Subscriber LessonDeploying the Extension Library onto your server is no longer something which your administrator should be having kittens about. It's a very simple process and this video shows you how.

more...

Lesson 66 - Dynamic Views

Subscriber LessonThis lesson shows how to dynamically switch views without switching XPages or hiding and showing different sections of the page.

more...

Lesson 67 - Alternatives to Profile Documents

Subscriber LessonThis lesson looks at what your options are for configuring your application using documents or properties files.

more...

Lesson 68 - Dynamic Content Control

Subscriber LessonThis is a new control which is available in the Extension Library, this video looks at how to make use of it.

more...

Lesson 69 - Application Layout Control

Subscriber LessonGoing back to basics over the next few lessons we're going to re-create the contacts application using 8.5.3 and the Extension Library to see how much easier it is these days!

more...

Lesson 70 - Dojo Form Controls

Subscriber LessonUsing the more advanced Dojo Form controls we create the contact form and add validation, filtering select controls, and more.

more...

Lesson 71 - Dynamic Views and Navigators

Subscriber LessonAdding navigation to the application using the dynamic view and navigator controls from the Extension Library.

more...

Lesson 72 - Expression Language

Subscriber LessonJust what is Expression Language and how do you use it? Well this brief video explains it to you.

more...

Lesson 73 - Unit Testing With Jasmine

Subscriber LessonIf you want to move into Test Driven Development then Unit Testing is a must, this video looks at using Jasmine as one of your options.

more...

Lesson 74 - Infinite Scrolling

Subscriber LessonMaking use of Dojo, JSON and REST Services from the Extension Library we can quickly add infinite scrolling to an XPages application.

more...

Lesson 75 - GitHub redux

In a previous lesson we looked at using the version controls inside Domino Designer, but, to put it kindly these are "interesting" to use sometimes. So this lesson covers a more robust approach to version control using external tools and the "On Disk Project" approach.

more...

Lesson 76 - jQuery Mobile

Subscriber LessonIn this (longer than usual) video we look at implementing a jQuery Mobile interface onto our Contacts database for use on the iPad.

more...

Lesson 77 - Document Inheritance

Subscriber LessonThis short video show you a pattern of how to inherit values from one document onto another.

more...

Lesson 78 - Attributes and Tag names

Subscriber LessonUsing the attr and tag name properties on controls you can control with great detail the HTML which your XPages generate

more...

Lesson 79 - Introduction to Teamstudio Unplugged

Subscriber LessonOver the last few months I've been creating several applications for mobile devices using Teamstudio Unplugged. In this mini series of videos I walk through the process of building a new application using jQuery Mobile which will work in the browser and Unplugged. This first video looks at the basics of Unplugged and how to create the application framework.

more...

Lesson 80 - Creating views in Teamstudio Unplugged

Subscriber LessonContinuing the mini series about creating XPages applications for Teamstudio Unplugged using jQuery Mobile, in this video we look at creating the main views for the application.

more...

Lesson 81 - Documents in Teamstudio Unplugged

Subscriber LessonContinuing the mini series about using Teamstudio Unplugged and jQuery to create a mobile application in XPages in this video we look at displaying and editing of documents.

more...

Lesson 82 - Unplugged Responses and Searching

Subscriber LessonWrapping up the development of the Unplugged / jQuery Mobile by adding support for responses and searching and how that will work with different screen resolutions.

more...

Lesson 83 - Custom Validators

Subscriber LessonIn this video we look at how to implement Custom Validators and then also how to use Apache Commons to do the actual validation for us.

more...

Lesson 84 - What's new in 9.0?

In this short video I cover the top new features of 9 which make XPages development easier.

more...

Lesson 85 - Namespace URIs and Default Prefixes

Subscriber LessonWhat is the Namespace URI and why would you ever want to change it? This short video will tell all.

more...