Discussing, Learning, and Using Delphi and related technologies to create Great Applications!
procedure Meeting;
const
  MeetingTitle = 'Delphi XE5 - Second Look';
  MeetingMonth = 2014.02 ;
  { tags: #2014 }
begin
  WriteLn('''
We’ll explore Delphi XE5 a little more this evening and have a general chat on all things programming! One idea is to explore some of the new VCL enhancements as noted in David I’s blog. Does anyone have experience using Delphi’s Live Bindings? I’d like to see how that compares with some of the XAML/WPF stuff I’ve been dealing with. PRESENTER David Cornelius is a full-time Delphi developer and has been programming since the 1980s.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'RAD Studio XE5 - First Looks';
  MeetingMonth = 2014.01 ;
  { tags: #Doug Ausmus #Gene Juhos #2014 }
begin
  WriteLn('''
Two of our regular attendees have upgraded to Embarcadero’s latest version of Delphi and in fact, the whole RAD Studio suite. This month, we’ll crack open the packages and take a look with them. Doug Ausmus will show us his version of a “Hello World” which involves calling an external DLL to talk through a USB port to electronic circuit boards and watching LEDs blink. Gene Juhos will show us what all we get when we start a new Android app from one of the several built-in mobile app templates.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'One Application, Many Different Development Environments - Part II';
  MeetingMonth = 2013.11 ;
  { tags: #2013 }
begin
  WriteLn('''
Oxygene for WPF and WinRT In September, we took a look at a simple application and how it was written using several different programming environments. We started with what we’re all familiar with, Delphi for Win32, moved to C# for WinForms which had a different language and IDE, but used similar window controls, then kept the language the same and built the app in C# using WPF, and finally used Oxygene, a Visual Studio plug-in compiler with the Pascal syntax.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'Delphi XE5 Tour!';
  MeetingMonth = 2013.10 ;
  { tags: #Delphi Release #2013 }
begin
  WriteLn('''
Embarcadero’s Delphi XE5 Tour! The evening event has been CANCELLED! Instead, you are invited to Ruth’s Chris Steak House in Portland at noon. Because there were two events on this date and far many more people registered with Embarcadero for the noon event than the evening event, Embarcadero has eliminated the evening one. There will not be any meeting at the Fanno Creek Brew Pub in December. At this technical and interactive session, attendees will:
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'One Application, Many Different Development Environments - Part I';
  MeetingMonth = 2013.09 ;
  { tags: #Chris Newcombe #2013 }
begin
  WriteLn('''
Delphi, C#, Oxygene, and JavaScript Since programming languages were invented, people have tried to use one code base to get an application to run on multiple platforms. Whether it meant building custom compilers or interpreters for each platform (BASIC, C, JavaScript, Python), or writing an API layer for each device that talks to a generic module (Java, .NET), the goal has been to reduce the time it takes to develop a product while having it work for as wide a market as possible.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'Introduction to Arduino';
  MeetingMonth = 2013.05 ;
  { tags: #Arduino #Doug Ausmus #2013 }
begin
  WriteLn('''
“Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It’s intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments.” Sounds like fun? There are several of us Delphi developers that are interested in this technology and one of our members has offered to share his passion for electronics, give us a hands-on demo, help us get started playing with this technology, and teach us a little of what you can do with it.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'In Persuit of Development Clairvoyance';
  MeetingMonth = 2013.04 ;
  { tags: #web #2013 }
begin
  WriteLn('''
As web technologies become more robust and the interfaces more rich and user-friendly and as a plethora of computing devices in every size and price range fill our lives, there is a race in the industry to become a major vendor of development tools to build applications for these various computing platforms. It seems that everyone is touting theirs as the one solution you need to cover all devices, minimize development effort, and provide the best experience for the users of your software.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'FireDAC';
  MeetingMonth = 2013.03 ;
  { tags: #2013 }
begin
  WriteLn('''
On February 5, Embarcadero announced the purchase of a popular third party data access component library named AnyDAC. They have rebranded the library FireDAC for consistency with their new FireMonkey brand, although FireDAC doesn’t rely on FireMonkey in any way. FireDAC ships with the Enterprise, Ultimate and Architect SKUs and may be purchased by Pro users as a component pack. In the end, this appears to be a replacement of the dbExpress stack that Embarcadero has previously developed internally.
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;

procedure Meeting;
const
  MeetingTitle = 'OnDrawCell';
  MeetingMonth = 2013.02 ;
  { tags: #2013 }
begin
  WriteLn('''
One of the advantages of using modern development environments such as Delphi is to hide the complexities of displaying controls on a form. Simply place a button or a grid or a label on your form and it looks and behaves like a button or a grid or a label should without any special work. But what if you need to do something that is not covered by the standard set of properties?
  ''');
  MeetingDetails(MeetingTitle, MeetingMonth);
end;