Discussing, Learning, and Using Delphi and related technologies to create Great Applications!
procedure Meeting;
const
  MeetingTitle = 'Writing a Welcome Page Plug-in';
  MeetingMonth = 2023.04 ;
  { tags: #IDE Plug-in #2023 }
begin
  WriteLn('''
The Delphi IDE’s Welcome Page was completely revamped with Delphi 11 and it now supports custom plug-ins. There haven’t been very many written and there’s even less documentation about how to do it but I dug into the samples and figured out a few things. At tonight’s meeting, we’ll look at the three sample Welcome Page plug-ins that come with Delphi, show how to make simple modifications to get our feet wet, then show how we can copy one to turn it into something useful.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'From Go to Firemonkey';
  MeetingMonth = 2023.03 ;
  { tags: #Go Programming Language #2023 }
begin
  WriteLn('''
This month we’ll take a small console program written in Go, show and compare its equivalent as a Delphi console program, then write a simple Firemonkey application in Delphi based on the functionality. The concepts presented will include a brief overview of the Hugo web-building framework, the Markdown files it utilizes, the TOML file format, how using GitHub Actions can launch the web-building process on a local Linux computer, and finally an introduction to Firemonkey resulting in a simple desktop app that can run on Mac or Windows to update a personal website.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'February Meeting - Miscellaneous';
  MeetingMonth = 2023.02 ;
  { tags: #2023 }
begin
  WriteLn('''
February’s meeting will be somewhat unstructured. Someone mentioned wanting to learn more about the Delphi IDE so, we’ll look at the different parts of that and discuss how this powerful environment can enhance your productivity. This year’s DelphiCon is in progress so we’ll review some of the topics being discussed. We’ll also take a look at a small program in Go written to help automate parts of a website being built.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'January - Go!';
  MeetingMonth = 2023.01 ;
  { tags: #Go Programming Language #2023 }
begin
  WriteLn('''
Tonight, we’ll explore the Go programming language a little, comparing its structure and object-oriented features with Delphi. PRESENTER David Cornelius is a full-time Delphi developer and has been programming since the 1980s.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'November - EDI';
  MeetingMonth = 2022.11 ;
  { tags: #Jonathan Eaton #2022 }
begin
  WriteLn('''
This month’s presentation is on EDI, a Business-to-Business (B2B) data transfer protocol. Just about any industry you can think of uses EDI in some form or other. Generally, EDI “documents” (AKA “messages” AKA “transaction sets”) are transmitted from one business to another. For example, a subset of EDI, called HL7, can be used to transfer a patient’s lab test results from a medical laboratory to a doctor or a clinic. But it’s also used to transmit data from a device to a service; for example, to transfer readings from medical equipment such as blood glucose monitors or even treadmills (in a “wellness center”) to a service that stores the results in a database for later processing.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'October Meeting';
  MeetingMonth = 2022.10 ;
  { tags: #2022 }
begin
  WriteLn('''
There is no particular topic for this month’s meeting but I’ll have my laptop with several versions of Delphi and we can discuss whatever comes up–whether it’s related to programming or not. In any case, join us for pizza!
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'September - Delphi Debates';
  MeetingMonth = 2022.09 ;
  { tags: #2022 }
begin
  WriteLn('''
People develop strong opinions about things they do or believe and sometimes have a difficult time seeing another point of view. This certainly exists for politics and religion but is also strong in the technology sector. Whether you use Mac or Windows, Android or iPhone, C++ or Delphi, it’s not hard to find heated discussions about what is the best or “right” choice. Embarcadero is hosting a series of online discussions to weigh in on some of the hot topics in the Delphi programming language.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'Add Full Text Search to Your Delphi Web Apps';
  MeetingMonth = 2022.08 ;
  { tags: #Slides #2022 }
begin
  WriteLn('''
In August, we’ll be honored with a special guest, Ann Lynnworth, co-founder of HREF Tools who will talk to us about their full-text search component, Rubicon. We will meet online in August in order to host Ann who will be presenting to us remotely. Here’s an introduction to the topic: “Rubicon allows Delphi and C++Builder developers to add full-text search capabilities to their database applications, retaining control of data and indexing and providing both simple wild-card queries and complex search expressions.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'Skia4Delphi';
  MeetingMonth = 2022.06 ;
  { tags: #2022 }
begin
  WriteLn('''
Embarcadero has a contest going on right now for creating the most beautiful GUI with Skia for Delphi. Skia is a 2D graphics engine, sponsored by Google, that provides a common API across various hardware and software platforms, including all the major web browsers. A couple of smart guys in Brazil have created an open source library called, Skia4Delphi to make this API work in both VCL and Firemonkey applications. We’ll run their sample programs and perhaps even show some of our own creations at the June meeting.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;