UK Meetup February 28, 2019


Our small group of ‘UK Users’ gathered once again at Hirumed Ltd, in Cricklade, Wiltshire, UK for another show and tell self-help session about XOJO Application development. It has fallen to me to do a small writeup for the day and the topics we covered to share with you. We were joined later in the day by Eric Gibbon presenting via video conference and Geoff Perlman took some time out of his schedule to also do a Q&A session for us prior to the close of our gathering. As before to those gathered if I have got anything wrong, I apologise in advance and feel free to correct me.

The programme for the day was a full one;

• Paula Roberts, Testing software overview
• David Cox, Encrypted Document Management System
• Bill Kearney, Web app for aircraft limitations
• Paul Budd, Modernising Legacy Apps with Web
• Paul Sharp, third party products and plugins
• Eric Gibbon (video call), creating .pdf documents using wkhtmltopdf
• Geoff Perlman (video call), Q&A

XOJO, as you would expect was at the forefront of the day but in addition, we also spent time discussing third party addons as well as additional tools to aid our development cycles.

Our host Paula Roberts started the day with an overview of their in house ‘Strategi3’ application testing software. Due to the nature of the products they develop in the highly regulated medical field all of what they do must be documented to the ‘nth’ degree to a mandated IEEE standard. Strategi3 allows the setup of automated testing scripts which can be run and monitored, with logging of all aspects of the run. Comments and notes can be added at all stages of process and comprehensive logs and documentation generated. There was a discussion around what others did for testing with most testing themselves, and others letting software lose on friends and colleagues to break. Alf, a colleague of Bill who had come along related the story of a former colleague whose view of testing was “Testing shows a complete lack of confidence in your software” which raised a laugh and was not a view we shared.

David Cox who had incidentally travelled the furthest for the day gave us an overview of some really nice web and desktop interfaces based around what he calls a ‘Floating Objects UI’, its OK to have lots of white space in a screen is the underlying concept. The interface had been developed and put to good use in his web and desktop based ‘Cubitz’ secure document management system which we were given a demonstration of. The product looks great on screen and if you are going to XDC in Miami David will be there so look for him and check it out yourself. The product uses a number of plugins, MBS encryption for AE256, MBS Curl for Amazon AWS access, Einhugur Aspects to name but a few. The system is compatible with a range of databases, cubesql, Postgres and MySQL and comes in business and enterprise versions (remotely hosted of self-hosted). David’s take on web applications was that page panels are your friend, swapping and showing them as required to provide the interface.

Bill Kearney was up next and revisited some aspects of his comprehensive aircraft management software that he touched upon the last time we met up. Bill focused on a number of web pages that provided access to the back end set up parameters in the system. This is far more complicated than you might think as each batch of the same aircraft can be different, and each carrier will have their own unique configuration and setup. This is a lot of data to manage. Bill adopts a slightly different approach to David with Bill preferring to create different web pages for each group of settings as opposed to using multiple page panels. A short discussion ensued on which was the best way, we came to no conclusive decision so over to you. Is one way better than another?

The whole topic of loading aircraft and calculating the flight envelope so the aircraft gets off the ground and stays in the air is fascinating and this product is comprehensive without a doubt. It was also clear that in the aviation industry passengers are quite often considered to be ‘walking freight’ and can cause their own difficulties by not sitting where they should on small aircraft.

After a very nice buffet lunch provided by our hosts it was my turn to talk and I expanded upon the steps I have taken to modernise a legacy MSACCESS database system that I mentioned at our last meeting. The original system cannot be replaced in its entirety for a number of reasons although it should be! The system written circa 1999 still runs well today and its testament to Microsoft that such backwards compatibility exists (can Apple boast this?) but I have no source code and no desire to fully rewrite the compiled front end. Using a web application in a browser has given a new lease of life to the system with better searching and analysis capability of the data without affecting the original underlying system. I spent some time talking about issues that I found with ACCESS, field naming and conventions of the ‘old system’ that had caused me issues and how I had to ‘reverse engineer; the inner workings to achieve the results and the tools I used to do this. The system is not complicated, its actually quite straightforward but the additional functionality of web has brought value and longevity to the existing system that we might not have otherwise had. The ODBC connectivity and office automation were two of the aspects of XOJO that originally attracted me to develop using it.

Paul Sharp was up next, and this was more a discussion area around our reliance on third party addons, the quality of them, the support provided as well as their longevity and ongoing annual cost keeping them up to date and how they co-exist alongside newer versions of XOJO. In addition, what other products were we each using regularly in addition to XOJO (see list at the end).

The consensus was that third party addons were a necessity, not least of all because XOJO could not be expected to cover every likely use scenario of its programming language. With many of us relying on them should there be some form of accreditation, validation and perhaps a guarantee system to confirm the described functionality actually existed and worked before the controls could be sold as ‘XOJO’ compatible. One particular case of a Windows WIA scanner driver library was causing Paul particular issues and led to this discussion. In cases of ‘try before you buy’ you could not fully try a product if you did not get the source until after purchase, although there was an acceptance of the reasons why, I assume mainly concerns over ‘piracy’. We would be interested in the wider views of the community on some of the issues this topic raised, around accreditation and guarantee for example. If you rely heavily on an addon and in turn your multi-million business does, then what happens if it disappears overnight? Source code may be the answer, but it may not always be available, and will this may limit and perhaps reduce the future addon market.

In good old British fashion, it was now time for a tea break following which we were joined by Eric Gibbon by video conference. Eric gave us a demonstration around creating multi-platform ‘pdf’ files using the free ‘wkhtmltopdf’ application. Using a combination of .css and html templates with ‘placeholder’ text Eric was able to produce some very comprehensive multi-page ‘pdf’ documents with embedded graphics, page numbering and data from within a database. There appears to be nothing that cannot be done with the system and I know it’s a topic that has been touched upon at a number of XOJO meetings I have been to. For those on a budget with a requirement to produce reports then you may want to visit the website and download yourself a copy. The templates can be created with any decent text editor with Eric himself using ‘BBEdit’. One tip, when using images linked to the html for producing the pdf files was to make the images as large as possible so that on large screens they displayed well, and on smaller screens shrinking them down had no loss of quality.

Part Two.

Geoff’s Q&A Session

Geoff Perlman joined us for a Q&A session which was really appreciated by those gathered. Highlights, which may create some talking points from this post are provided below and if I have got some wrong I apologise in advance and stand to be corrected.

• The move to Web 2.0 will use existing web frameworks controls (jquery etc.) rather than creating built in XOJO controls. One such control, a listbox control ‘Fuel UX Repeater’ was displayed as an example and at XDC we may see some web-based page and tab panel examples.
• Documentation is improving all of the time but its so vast, if anyone sees errors, or needs more information on a topic then use the feedback application to let XOJO know.
• 64 bit is complete across platforms from XOJO point of view.
• The changes to the IDE navigator have taken almost 18 months to resolve and move towards a listbox based navigator which will hopefully put in an appearance in 2019r1 (around March), possibly r2.
• Android is going well and XDC will show some UI aspects.
• API 2.0 expectation by the end of the year.
• Apple ‘Marzipan’ is still just rumoured but XOJO has shown over many years an ability to adapt and change as required.
• Project file format is going to remain the same for the time being, although in the future want to bring in some changes.
• Geoff still gets his hands dirty with a bit of programming having recently fixed and IDE bug he had come across.
• There have not been too many betas of late due to the fact that there has been much to do and only when product at a stage to make beta worthwhile is it released, dragging multiple controls in web is now more ‘zippy’. There will be betas before XDC.
• A good book you may want to read – Creative Selection by Ken Kocienda (ex of Apple Inc.)
• Ability to create plugins within XOJO pushed back a little and thought that a plugin market through XOJO with associated quality control (like apple does with Apps) may be a good idea.

We thanked Geoff for his time and that concluded another excellent day of talking XOJO.

During the day numerous useful addons and tools that can assist XOJO development were discussed and I have included the links below for interest.

http://www.artscene.co.uk/
https://www.hirumed.uk.com/
https://firebirdsql.org/ (multi user database)
https://www.monkeybreadsoftware.de/
https://www.pdfill.com/ (pdf form creation/filling)
https://www.helpndoc.com/ (help file creation)
https://www.navicat.com/en/
https://www.chilkatsoft.com/xojo.asp
https://wkhtmltopdf.org/ (pdf creation from HTML)
http://www.razorsql.com (ODBC database manager)
http://www.jrsoftware.org/isinfo.php (Innosetup)
https://www.dtksoft.com/ (barcode SDK)
https://www.barebones.com/products/bbedit/ (bbedit)
https://www.sqlabs.com/cubesql.php (cube sql)
https://ckeditor.com/ (ckeditor)

Being a plugin developer, I always become upset by similar comments on the forum. I respect the concerns but those who stay away from plugins or encrypted classes because of a bad experience can become an antidote for other developers to further develop and maintain code of plugins and will diminish creativity that also could affect usage of Xojo. Our full-fletched plugins come in two versions: the demo versions to try it out in Xojo debug mode and can be used in stand-alone (it then throws a nagging info window that can be dismissed) and the “pro” version that does not have the info window (we follow the same approach as Einhugur does). We haven’t considered providing the code, but if this becomes a necessity, then I would suggest an ability to have it available through Xojo and by Xojo. This would protect the source from accidental miss-use and minimizes piracy.

Geoff’s suggestion might be a good option for consideration and indicates similar concerns I have addressed above.

Seems I missed the announcement for the event as otherwise I may have flown to the UK for a visit…

But I hope to see you all in Cologne. Be sure to sign up soon for a good ticket price, or may I offer a group rate for you all?
Otherwise see you guys in Miami!

Me too and I said as much during my presentation.

I would have been interested in this event too! Do let me know if there’s a repeat performance.

I already offered them to send an email to MBS customers, so you would get one.