Adam’s Nov 2022 Meeting Summary
- LDelphi, Linux, Daemons and Windows Sub-system for Linux (WSL) vs VMs for testing – Dave Martel
- Microsoft Licensing & Microsoft Accounts – James Daniel
- Issues with MTD Project, update – Ian Hamilton, Russell Weetch
- Open Mic for Mote /Fleck/Gobbit/Tools / Tricks / Ticks
Adam’s Summary
Last meeting of the year. No December meeting, possible beer-time informal Christmas meet-up on-line mentioned. The meeting included Jason announcing members who had made the largest number of presentations in the year. I think Rob Lamden and Richard Hatherall won with 3 each, so they are our stars of 2022.
Initial chats included quite a bit of grumbling about small snags and issues with Delphi 11.2, these mostly revolved around failure of useful coding tools like Code-Insight, but there were more worrying issues mentioned as well. Among these issues it is unclear which are the “fault” of things like “bad” third-party components, or developers having strange set-ups with regard to things like Library Paths, Search Paths etc.
Members using 11.2 did not seem a happy bunch, which gave Mark Jacobs a chance to say how happy he (still) is with BCB5, despite it being more than 20 years old.
Richard Hatherall mentioned Figma a “useful” on-line design tool, and Mastadon a new social network both slightly off topic, but interesting products I had barely heard of. Both worth checking out.
LDelphi, Linux, Daemons and Windows Sub-system for Linux (WSL) vs VMs for testing – Dave Martel
Dave writes Delphi Console Applications and outputs them to the Linux 64bit platform to produce daemons. This choice of output is restricted to the Enterprise SKU of Delphi.
Dave gave a good clear introduction to the nuts and bolts of setting up your IDE to create Daemons, and coding them. Daemons are used for tasks like large-scale, server-side bulk operations such as the creation of large numbers of files, or complex disk operations a programmer wants to automate.
Debugging daemons is done via PA Server in a similar way to debugging Mac-OS applications, except that daemons are “headless” (have no user-interface) and the programmer therefore has to rely on server-side tools to assess what their daemon is actually doing.
Dave uses PuTTy for this purpose, a linux application which shows a list of server process activity. Dave went into a lot of useful detail on daemons too much to cover in this summary, have a look at his session-recording if it is of interest.
Microsoft Licensing & Microsoft Accounts – James Daniel
As an Admin who has to manage a large number of Windows Machines, James has a lot of experience of the intricate complexities of managing Microsoft licenses. This is a non-trivial problem, particularly when upgrading machines, as the upgrade process can delete license-details from the upgraded machine essentially “losing” a businesses’ access to a license which they have paid for.
James gets around this problem by setting up Microsoft Accounts for each machine / license. Once an Account is created the license key is saved with the details of this account, and a machine can be upgraded within the context of this account. The account becomes a useful repository which can be used in other ways too.
This method of license management makes more arcane, but often required, actions such as upgrading a machine from Windows 7 to Windows 10 easier (or even just possible!)
https://Account.microsoft.com/account is the point of access to this process.
There are some wonderful gotchas though. Microsoft requires security validation when an account is set up, and uses an email address or mobile-phone number as credentials. However the site will complain if credentials are re-used, which is a serious annoyance for an Admin who has to set up dozens of machines and may not want them all to be set up to the most up-to-date version of Windows.
Issues with MTD Project, update – Ian Hamilton, Russell Weetch
This project remains the Developer Group’s only real shared-source-code github project, and Ian remains virtually the only person contributing to the code. Several members have used the project, although often just taking code and using it in their own implementations rather than joining the github. Other members are talking about starting to use the project, as alternatives cost money.
Russell spoke about issues and bugs with maintenance of a fairly complex code library as versions of Delphi have evolved and as the HM Government web-site API has also shifted and extended.
These types of issues are now the bread and butter of many software/coding requirements. Nothing is stable, and systems all constantly evolve, and it was useful to hear perspectives and issues they had both covered.
All members are grateful to Ian for his generosity in developing and open-sourcing these components.
Open Mic for Mote /Fleck/Gobbit/Tools / Tricks / Ticks
Flecks: A new innovation for the group. At the end of the session a selection of members were encouraged to make very, very short presentations.
Conrad spoke about his templating engine, which is another open-source project that members should engage with. It provides mechanisms to parse templates and generate complex data such as web-pages using them.
Robert Evans showed the lovely, simple IDE-Hack of customizing File-New so that it is much easier to create regularly used file-types such as data-modules, showed changes he makes to the Output Path in Project Options, and showed how he creates project groups reusing pas files between them for his own form of multi-target development.
Rob Lamden showed how Pointers to objects can sometimes become invalid (assigned to the “wrong” object) and ways to get around this.
Then we all broke up for beer.