Meetings 2017
Agenda & Information for the Meetings held in 2017
See Downloads 2017 for the available files associated with the meetings.
Date: 15th November 2017
Agenda
Topics include:
- Talk: Utilising JSON to move small data sets from server to mobile and possibly back – Peter Edwards
The rest of REST !
Once upon a time getting or consuming data from third party sources was a difficult and precarious and usually came down to compatibility of databases or even “the will” to actually make something happen. Then came along various data sharing methods such as xml and soap – and while a good idea in principle there was no standard to work to so most data sharing methods were poor at best or simply bespoke solutions for individual clients. Today there are standards to work with and the world is a better place for it. Seems that we have a new things called end points and Json and oAuth and ….What is the value of REST – old hat or something else.
We will take a look at who is using REST and why. How we can quickly use rest data and how we ourselves can join the data revolution and create consumable data safely and relatively securely. And what have the boys at Embacadero come up with to help us ?
Just to underline something here – I’m not an expert in this area. I have however been exploring the various methods of dealing with a need to move a lot of data from server to device and back – on my travels I have discovered many ways to achieve this but as with all things, there are pros & cons in all. I have re-discovered the old adage: No Pain – No Gain. - Talk: Integrating Delphi & .NET code together – David Capps
How can we get our Delphi and .NET code to talk to each other? Whether we want to call an existing Delphi codebase from a C# application, or call a C# SDK from a Delphi application, there are many reasons we might want to transfer data between the two languages with a minimum of effort and manual coding. I’ll go into details about the various approaches we’ve tried and the capabilities, pros and cons of each method. - Nugget: Transaction amount allocation engine – Andrew Cutforth
A component for taking two large lists of amounts and allocating them together for best matches. E.g. As list of bills and a list of payments. Finding exact payments, totalling payments and finally partial payments.
Date: 10th October 2017
Agenda
Topics include:
- Talk: New “Expert Delphi” Book – Paweł Głowacki, Embarcadero (via Skype)
In this session Paweł Głowacki from Embarcadero will be presenting his newest “Expert Delphi” book. We will see how to become a developer superhero and gain amazing productivity powers to build stunning mobile apps with Delphi FireMonkey framework. During the presentation Paweł will be showing live demos from his book and will be happy to take any questions!If you are into the latest Delphi technologies, this session is for You!
More info about the book can be found at https://www.packtpub.com/application-development/expert-delphi. - Talk:GDPR (General Data Protection Regulation) Workshop – Peter Price, Information Security Consultant
GDPR comes into force in May 2018 to unify and strengthen the data privacy laws across Europe. If you are handling personal data you will need to make sure you comply with the new requirements as the fines that can be levied have increased markedly and liability now extends to data processors as well as controllers.
Peter will start the workshop with a review of the GDPR provisions followed by plenty of time for cases studies and Q&A to help you determine how you are affected. - Nugget: Converting Andrew Cutforths URI to Delphi (inter process comms etc) – Martin Hamilton
A DELPHI version of the URI driver
Time | Description | Speaker |
12:00 | Registration (with tea and coffee) | NOTE TIME CHANGE TO 12PM. |
12:00 | News/Questions | Pete Sykes |
12:30 | Break for Lunch/Catch Up | |
13:15 | GDPR (General Data Protection Regulation) Workshop | Peter Price |
14:45 | Break | |
15:00 | Converting Andrew Cutforths URI to Delphi (inter process comms etc) | Martin Hamilton |
15:30 | New “Expert Delphi” Book | Paweł Głowacki |
17:00 | Finish |
Date: 11th September 2017
Agenda
Topics include:
- Talk: Dev express components – Peter Edwards
- Talk: IDE tips and creative debugging techniques – Brian Long
- Nugget: Elastic Search, more on REST/JSON, and ‘HTML Editor Library’ – a cross-platform WYSIWYG editor for Delphi – Patrick Hort
Please see times below:
Time | Description | Speaker |
11:30 | Registration (with tea and coffee) | |
12:00 | News/Questions | Brian Long |
12:30 | Break for Lunch/Catch Up | |
13:15 | Dev express components | Peter Edwards |
14:45 | Break | |
15:00 | IDE tips and creative debugging techniques | Brian Long |
16:30 | Elastic Search, more on REST/JSON, and ‘HTML Editor Library’ – a cross-platform WYSIWYG editor for Delphi. | Patrick Hort |
17:00 | Finish |
Date: 12th July 2017
Agenda
Topics include:
- Talk: Functional Programming – A High-Level Overview – Will Watts
After many years spent jogging down the runway flapping its arms, FP is finally emerging as a practical approach to developing commercial software. Will presents a whistle-stop tour of the history, the languages, the techniques, some code and a few jokes. He undertakes to use the dread phrase ‘paradigm shift’ no more than 23 times. - Nugget: Accessing files over https: without the Indy SSL hassle – Neil Parrish
The Delphi Indy component TIdHTTP has a handy Get method to retrieve files from the internet, but out of the box this won’t handle https, only http. Rather than distribute the SSL files required you can use TDownloadURL to get around the problem, as long as you workaround the issues that has. - Nugget: SPF records for email servers and whitelisting with Microsoft and Google – Mark Jacobs
In this talk, Mark will show how to set up SPF and Google domain verification records for your email server. He will also show how to sign up for Microsoft’s JMRP and SNDS schemes, so that they “know” about you and your email intentions. He’ll show the kind of email you’ll receive when an email you have sent is junked by the recipient. - Nugget: FlexCel – Report Mode quick implementation – Martin Hamilton
Martin will demonstrate how easy FlexCel is to install into an application using Report Mode.
This is a follow-up nugget to the presentation by Neil Parrish in April.
Please see times below:
Time | Description | Speaker |
11:30 | Registration (with tea and coffee) | |
12:00 | News/Questions | Peter Sykes |
12:30 | Break for Lunch/Catch Up | |
13:15 | Functional Programming – High Level Overview | Will Watts |
14:45 | Break | |
15:00 | Accessing files over https: without the Indy SSL hassle | Neil Parrish |
15:30 | SPF records for email servers and whitelisting with MS and Google | Mark Jacobs |
16:15 | FlexCel – Report Mode quick implementation | Martin Hamilton |
17:00 | Finish |
Date: 13th June 2017
Agenda
Topics include:
- Talk: Case study – Application UI framework using .Net C#, WPF and MVVM – Andrew Cutforth
Andrew will show a case study of his Windows CRM system that has a very powerful UI with tabbed docking forms etc. This is written in .Net C# and uses WPF for the display coupled to an MVVM framework with his own entity framework on the back end - Talk/Demo: Android App – David Mew
Designing a UI for an Android App; using TStyleBook to “skin” an app, using TNetHTTPRequest/TNetHTTPClient to load resources, using threading and deploying to a phone - Nugget: DUnit – Dave Martel
Please see times below:
Time | Description | Speaker |
12:00 | News, Interactive discussion | Jason Chapman |
13:00 | Break for Lunch/Catch Up | |
13:15 | Application UI Framework | Andrew Cutforth |
14:45 | Break | |
15:00 | Android App | David Mew |
16:30 | DUnit | Dave Martel |
17:00 | Finish |
Date: 15th May 2017
Agenda
Topics include:
- Talk: Going back to Linux – Brian Long
The latest release of Delphi (10.2) adds Linux Server as a target platform. It’s been a long time since Kylix, so we’ll have a recap and remind ourselves how to do a few simple tasks from the Linux command-line and see what Delphi can do in terms of generating applications on this new target platform. - Nugget: Fooling the “Man in the Middle” – Mark Jacobs
When a user logs into a secure site with their correct credentials, the site will usually issue them a session ticket, and will usually do so using a cookie of some sort. I take a radically different approach to session tickets, and my approach has a valuable advantage over traditional techniques. In this talk, I will expound on my techniques, demonstrate how pretending to be somewhere else (using Opera’s free VPN) forces you to log in again, whereas on an Amazon login, it simply lets you continue with the session ticket currently issued, despite you having suddenly “teleported” to a different country! - Nugget: How to use the PDFTKBuilder utility to manipulate PDF files – Doug Woodrow
- Nugget: Embedding a Firemonkey form within a VCL application – Patrick Hort
I have recently been looking at doing some graphing and I don’t want to have to write it twice – once for VCL and once Firemonkey – and it seemed sensible to write it in Firemonkey because of the better graphics. Which then got me wondering about compiling the FM code into a VCL App. Which it turns out is possible, and I used the TFireMonkeyContainer component from Parnassus to achieve this.
Please see times below:
Time | Description | Speaker |
12:00 | News, Interactive discussion | Brian Long |
13:00 | Break for Lunch/Catch Up | |
13:15 | Going back to Linux | Brian Long |
14:45 | Break | |
15:00 | Fooling the “Man in the Middle” | Mark Jacobs |
15:45 | How to use the PDFTKBuilder utility to manipulate PDF files | Doug Woodrow |
16:15 | Embedding a Firemonkey form within a VCL application | Patrick Hort |
17:00 | Finish |
Date: 19th April 2017
Agenda
Topics include:
- Talk: Visual Studio 2017 & C# 7.0 – A look at some of the new language and IDE features – Peter Sykes
- Visual Studio 2017 and C# v7.0 went on general release on Tuesday 7th March. In this session Pete takes a tour through some of the new IDE and language features that the update offers.
- Talk: Creating a Windows Service in Delphi and installing it – Patrick Hort
- This will be a Delphi coding presentation showing how you go about creating, installing and managing a Windows Service. I will also demonstrate how to write messages to the Windows Registry, and how to create a DLL that can installed so that Windows Event View will display these messages properly. Depending on how much time is left, we can try to make the service actually do something!
- Nugget: TMS FlexCel – Excel without Excel for Delphi & .Net – Neil Parrish
- TMS describe FlexCel as a ‘Powerful, extensive & flexible component suite for native Excel report & file generation & manipulation’. It is available for Delphi and as fully managed Net library including mobile for both. The components work natively with the Excel file format so you don’t need Excel installed. This will be a quick look through FlexCel including how it has been used for a client, how you get started and some of the many features.
Please see times below(tbc):
Time | Description | Speaker |
11:30 | Registration (with tea and coffee) | |
12:00 | News/Questions | Peter Sykes |
13:00 | Break for Lunch/Catch Up | |
13:15 | Visual Studio 2017 | Peter Sykes |
14:45 | Break | |
15:00 | FlexCel | Neil Parrish |
15:45 | Creating a Windows Service in Delphi and installing it | Patrick Hort |
16:30 | Tokyo – Group Discussion | |
17:00 | Finish |
Date: 14th March 2017
Agenda
Topics so far include:
- Talk from Stephen Ball @ Embarcadero
- Talks from Peter Edwards;
- Express Spreadsheet & Importing data (Real World Examples) & Express Printing Component
- Introduce the Express Ribbon UI
- Introduce Skinning
- PDF Reader Component & Express Printing Component
- Express Spreadsheet & Importing data (Real World Examples) & Express Printing Component
- Nugget: Accessing files over https: without the Indy SSL hassle – Neil Parrish
- The Delphi Indy component TIdHTTP has a handy Get method to retrieve files from the internet, but out of the box this won’t handle https, only http. Rather than distribute the SSL files required you can use TDownloadURL to get around the problem, as long as you workaround the issues that has.
- Nugget: AJC Grep v2 – Andrew Cutforth
- Andrew will show you his latest AJC Software product which is a powerful search, replace and data extraction program. The session will consist of a demo of what the software can do and then delving into some of the code to see how it was done.
Please see times below(tbc):
Time | Description | Speaker |
11:30 | Registration (with tea and coffee) | |
12:00 | News/Questions | Jason Chapman |
13:00 | Break for Lunch/Catch Up | |
13:15 | Talk | Stephen Ball |
14:15 | Express Spreadsheet & Importing data (Real World Examples) & Express Printing Component | Peter Edwards |
14:45 | Break | |
15:00 | AJC Grep v2 | Andrew Cutforth |
16:00 | PDF Reader Component & Express Printing Component | Peter Edwards |
16:30 | Accessing files over https: without the Indy SSL hassle | Neil Parrish |
17:00 | Finish |
Date: 20th February 2017
Agenda
Topics so far include:
- TOGGL with some code – Jason Chapman
- Dropbox as a Windows service – Martin Hamilton
- Weak references in C# – Andrew Cutforth
- Weak references in C# are pointers to objects that allow the objects to still be garbage collected and will tell you if they have been garbage collected. There are many uses for these and Andrew will show you some, including tagging objects, an application internal messaging system, object caching system etc. You will learn about WeakReference and ConditionalWeakTable.
- AutoIt demo – Clive Henson
- Office 365 – Eric Thorniley
- Why we might want a shared mailbox.
- Difference between a shared mailbox and a normal mailbox in O365.
- Connecting to shared mailbox from Outlook:
- Normally connects when you connect to personal mailbox. Sent mails go into personal mailbox sent items. You have to manually select the shared account to send from, even if you are looking in the shared inbox.
- You can change the share so you have to make a manual connection – then it works more as you would expect. You have to set this up using powershell.
- Why you might want to share a normal mailbox rather than use a shared mailbox.
- Security gotcha with two factor login.
Please see times below(tbc):
Time | Description | Speaker |
11:30 | Registration (with tea and coffee) | |
12:00 | News/Questions | Brian Long |
13:00 | Dropbox as a Windows Service | Martin Hamilton |
13:30 | Break for Lunch/Catch Up | |
13:45 | Weak References in C# | Andrew Cutforth |
14:45 | Break | |
15:00 | AutoIt Demo | Clive Henson |
15:35 | Office 365 – Shared Mailboxes | Eric Thorniley |
16:10 | TOGGL with some code | Jason Chapman |
17:00 | Finish |
Date: 18th Jan 2017
Agenda
Topics so far include(tbc):
- Case Study: Superbikes – Delphi does TV – Neil Parrish
Take a trip to the bright lights of TV land looking at a Delphi application that sits between timing feeds and the TV graphics for the Britsish Superbikes coverage. Find out how it all works and hear about the challenges of recent changes including a new timing feed (JSON instead of plain text), switching over the graphics system interfaced with, graphics redesigns and new requirements. - Battle of the Remote Desktop
A session looking at the different types of remote control software that is being used within the group, including pro/cons of each type covered
- So far we have booked:
- ConnectWise \ ScreenConnect – Dave Ball
- WebEx – Clive Henson
- VPN/RDP/VNC – Jason Chapman & Pete Brownlow
- Splashtop – Martin Hamilton
- TeamViewer – Adam Brett
- Vidyo – Dave Martel
- TOGGL with some code – Jason Chapman
Please see times below(tbc):
Time | Description | Speaker |
11:30 | Registration (with tea and coffee) | |
12:00 | News/Questions | Pete Sykes |
13:00 | Break for Lunch/Catch Up | |
13:15 | Superbikes | Neil Parrish |
14:45 | Break | |
15:00 | Battle of Remote Desktop | Various |
16:30 | TOGGL with some code or A Month of GIT | Jason Chapman |
17:00 | Finish |