Discussing, Learning, and Using Delphi and related technologies to create Great Applications!
procedure Meeting;
const
  MeetingTitle = 'December Meeting';
  MeetingMonth = 2021.11 ;
  { tags: #2021 }
begin
  WriteLn('''
We’ll meet in December at the same time and at the same place, but we’ll discuss moving our meeting location elsewhere because the live music that starts in the main room at 7:00 makes it difficult to hear each other. Join us for the last ODUG meeting of the year!
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'Book Release Event!';
  MeetingMonth = 2021.11 ;
  { tags: #2021 }
begin
  WriteLn('''
With the release of the book, Fearless Cross-Platform Development for Delphi occurring in late October, the author will be at the meeting in November to talk about the writing process, example projects, and what he learned. Join David Cornelius and one of his technical reviewers, Jonathan Eaton, as they discuss the book and celebrate it’s release. PRESENTER David Cornelius is a full-time Delphi developer and has been programming since the 1980s.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'Delphi 11 Alexandria';
  MeetingMonth = 2021.09 ;
  { tags: #Delphi Release #2021 }
begin
  WriteLn('''
The next major version of RAD Studio was released last week. We’ll take a look at Delphi 11 Alexandria and discuss what it means for you. PRESENTER David Cornelius is a full-time Delphi developer and has been programming since the 1980s.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'Delphi 10.4.2 CE and Radiant Shapes';
  MeetingMonth = 2021.07 ;
  { tags: #2021 }
begin
  WriteLn('''
A couple of things will likely be discussed at our meeting: Delphi’s new Community Edition based on Delphi 10.4.2 A quick look at Radiant Shapes and a discussion about other shape libraries. LOCATION We’re meeting in person at the old familiar place!
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'Keeping Pop-up Forms Where They Belong';
  MeetingMonth = 2021.06 ;
  { tags: #Homer Jones #2021 }
begin
  WriteLn('''
Have you ever locked yourself out of your program by not being able to get to a modal form that somehow got sent behind the main form? Have you struggled with the differences between the Owner and Parent of a form or tried to solve your z-ordering problem by simply setting the FormStyle to fsStayOnTop? This month, Homer Jones will help decipher all this and give you a great solution to these issues commonly fought when writing Delphi VCL programs having just solved these for his customers.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'May In-Person Social Event!';
  MeetingMonth = 2021.05 ;
  { tags: #2021 }
begin
  WriteLn('''
With most ODUG attendees vaccinated now, we are thrilled to be able to meet in person once again! One of our members has graciously offered their place for a back-yard social. This means there will be no formal technical topic and no online meeting in May.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'Testing';
  MeetingMonth = 2021.03 ;
  { tags: #Jonathan Eaton #2021 }
begin
  WriteLn('''
Various topics concerning testing will be discussed this month, including types of testing (e.g. Unit Testing or Integration Testing). Jonathan Eaton will highlight these differences, sharing strengths and weaknesses and when to use which types. David Cornelius will demonstrate the DUnit test framework in Delphi. Join us online and share your experience with us. PRESENTER Jonathan Eaton is a Delphi programmer, an author, and an ASQ certified software quality engineer. He spent about three years implementing and maintaining an FDA-compliant QM process for the software development of what the FDA would consider a “software component of a medical device”–in this case, a Delphi application, and later a website, that patients and clinicians could use to download and analyze patient data recorded by blood glucose meters and insulin pumps.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'Framed!';
  MeetingMonth = 2021.02 ;
  { tags: #Gene Juhos #2021 }
begin
  WriteLn('''
Frames in Delphi are a handy way of grouping controls together and then using them multiple places. You can attach code as well. This month, Gene Juhos will be demonstrating the uses and benefits of using frames in Delphi. Tune in to learn and share your experiences! PRESENTER Gene Juhos has been working with Delphi since version 3. Before that he used the Pascal language on the Apple Lisa. He started his programming career writing code for an IBM 3741.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'Inaugural Meeting';
  MeetingMonth = 2021.01 ;
  { tags: #Homer Jones #2021 }
begin
  WriteLn('''
Inauguration Day, 2021. A new leader takes the helm of the U.S. amid a challenging pandemic and political upheaval. But technology has not stopped evolving and in fact has advanced faster than usual this last year to embrace the tremendous increase of people working from home but still needing to collaborate. What’s in store for you this year? Homer Jones has added some error checking and an SMS feature to his Windows software hosted in the cloud.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'December Holiday Chat';
  MeetingMonth = 2020.12 ;
  { tags: #2020 }
begin
  WriteLn('''
We don’t usually meet in December but since there are so few holiday events which would normally take us out of our homes we have more time. Plus, many of us need an excuse to see others, if only to verify we’re not alone. So we’ll take an hour or two online during our normally scheduled third Wednesday and wish each other happy holidays and best wishes for a prosperous new year!
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'November Member Share';
  MeetingMonth = 2020.11 ;
  { tags: #2020 }
begin
  WriteLn('''
Thanksgiving is a time for thankfulness and sharing. For our November meeting, we’ll give each attendee an opportunity to share something they’ve done recently that might be interesting to the rest of the group and to mention something they’re thankful for. This has been a crazy year and the goal is we’ll encourage each other with cool technological feats or accomplishments. Hopefully, some of these activities will involve Delphi somehow but we’re going to leave it open.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'October Online!';
  MeetingMonth = 2020.10 ;
  { tags: #2020 }
begin
  WriteLn('''
With no end in sight to quarantine restrictions for indoor gatherings, we’re going to meet online in October. A link will be provided a week before the meeting, which will be back to our regular schedule: 6:00 PM the third Wednesday of the month. We won’t have a specific topic but will just have an open discussion of how this strange year has affected your business or career. We may also look at the new features of the latest version of Delphi, 10.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'MARCH MEETING CANCELED!';
  MeetingMonth = 2020.03 ;
  { tags: #2020 }
begin
  WriteLn('''
With the rapid spread of Corona virus, we will support the advice to limit interactions with others until the threat has abated. Furthermore, since all restaurants are closed for in-house dining, All future meetings are suspended until further notice.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'Sysmatics App Demo';
  MeetingMonth = 2020.02 ;
  { tags: #2020 }
begin
  WriteLn('''
Demo of applications by Sysmatics and how minimizing apps on the desktop do not work the same in Windows 10 as previous versions. PRESENTER Gene Juhos has been working with Delphi since version 3. Before that he used the Pascal language on the Apple Lisa. He started his programming career writing code for an IBM 3741. He’s written useful code in COBOL, FORTRAN, C, C++, Assembler, and CADOL. Currently, his business, Sysmatics, converts proprietary character based business applications to Delphi for several customers.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'Tech Predictions for Next Year';
  MeetingMonth = 2019.11 ;
  { tags: #2019 }
begin
  WriteLn('''
The November meeting is our last meeting of each calendar year. This year, we’ll get out our crystal ball and peer into the future of what 2020 will bring to the tech industry. Come add your thoughts to the mix! DISCLAIMER: The discussions will be purely speculation and the opinions of those present!
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'Tech Talk';
  MeetingMonth = 2019.10 ;
  { tags: #2019 }
begin
  WriteLn('''
No specific topic tonight–just Delphi developers getting together and sharing whatever non-political topics come to mind!
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'Web Frameworks';
  MeetingMonth = 2019.09 ;
  { tags: #Glenn Dufke #web #2019 }
begin
  WriteLn('''
In July, we had a Delphi MVP briefly cover a variety of topics, one of them was MARS Curiosity, the open source REST server framework written by Andrea Magni. This month, Glenn Dufke is back and will dive more deeply into that framework. Further back this year, we explored another open source web server project, DMVC Framework, written by Daniele Teti, and will bring this out as time allows to compare the two.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'Embarcadero MVP Visit';
  MeetingMonth = 2019.07 ;
  { tags: #2019 }
begin
  WriteLn('''
Glenn Dufke, an Embarcadero MVP, will be visiting Portland in July and would like to meet fellow Delphi developers around the world. While here, he offered to stop by our group and talk to us on the following topics: Briefly go through how to set up RAD Studio to build and compile for Android Things and what you can do with it; Current status of Delphi, the direction it’s currently taking and what’s to come–most importantly why we should keep using the product and the cool new solutions we can build (it’s not just for maintaining existing customer solutions); Finally we will look at how you can couple Delphi as a back-end with multiple front-ends for different platforms and still access your data; we will also look at how you can build a REST Server and Client with MARS Curiosity – the open source REST server framework written by Andrea Magni.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;