Delphi Benelux 2016 Congress 26 mei 2016

Dit wordt weer iets bijzonders, in het Evoluon in Eindhoven.

Stephen Ball is er bij met Interbase en Visual Livebindings sessies. Als je nog vragen had over Interbase, Stephen is de expert. Paweł Głowacki laat alle nieuwe features zien van Delphi 10.1 Berlin en heeft hiervoor enkele fraaie demos geschreven. Bob Swart heeft twee leuke sessies; upgrade VCL naar Delphi 10.1 Berlin en database programming met FireDAC. Zelf heb een sessie over IoT Home Automation, waar ik de Vera Plus hub gebruik met Delphi. Deelnemers krijgen de nieuwe Fibaro Wall Plug software component om het Fibaro stopcontact die in NL makkelijk verkrijgbaar is aan te sturen. Verder een sessie over multi-tier met een RESTful API, waarin ik o.a. laat zien hoe je in Delphi een full compliant REST server kunt maken met GET/PUT/POST/DELETE. Als afsluiter een sessie over Bluetooth Beacons, waarbij ik enkele Raspberry Pi 3’s inzet als flexibele en remote controllable Beacons.

Meer info en inschrijven:
http://www.barnsten.com/nl/events/details?events_id=202

Wow, I’m MVP of the week!

Wow, I’m MVP of the week! A great big thank you to all you guys out there, this is really something.

Had a very nice podcast chat with Jim McKeeth on all things Delphi, that brought back some memories. It was great fun to do.

Delphi is just the greatest development tool, now even more than ever. What other development tool do you know that compiles your application with one framework and one source code to Windows, Mac, Android and iOS?

Delphi 10.1 Berlin

Delphi 10.1 Berlin has been released today!

This release has lots of useful new features, small and large. Such as asynchonous dialogs in Windows and OSX (ShowMessage is now async in OSX), support in the IDE for Android Smartwatch apps, support for Android 6.0, IoT devices, and much more.

FireUI Live Preview wil give you an actual preview of how your application will look when actually run on the target operating system. Not only very cool, but also very useful.

Also many small (and not so small) bugfixes. For instance in the way TTask internally handles WaitForAll. The bugfix there now correctly handles many small Tasks switching back and forth. Not something you are likely to encounter, but good to have fixed nonetheless. A thank you to Allen Bauer for fixing this.

For the full list of new things take a look at Whats New in Delphi 10.1 Berlin. We will also demonstrate these new features at the Delphi Benelux 2016 Congress on the 26th of May in the Evoluon in Eindhoven, where Pawel Glowacki, Bob Swart, Stephen Ball and Danny Wind will show you how to use all these new goodies.

PASCON 19 maart 2016

De volgende PASCON is alweer heel dichtbij, op zaterdag 19 maart. Het wordt een  uitdagende dag met begrijpelijke uitleg van complexe onderwerpen zoals Generics, Kunstmatige Intelligentie (David Dirkse) en Threading met de PPL (Danny Wind).

Over het stukje PPL (Parallel Programming Library)  kan ik wat meer vertellen; hier laat ik enkele eenvoudig toepasbare usage patterns zien die je direct kunt gebruiken in je eigen Delphi code om je code vlot en responsive te laten reageren. Onder andere een pattern voor Task Resource Handling, en Task Monitoring, maar ook netjes afhandelen van Task Canceling.

Meer info hier, en toegang is gratis:
http://www.delphigg.nl/DutchPascon/Pascon_PASCAL_MAART_2016.html

Delphi 10 Seattle training begin 2016

Nieuwsgierig geworden naar Delphi 10 Seattle en je wilt ermee beginnen? Dan is de Delphi 10 Seattle VCL Essentials training op 27, 28 en 29 januari misschien iets voor jou. In 3 dagen leer je als ontwikkelaar Delphi kennen en gebruiken.

Ben je al ervaren in Delphi met de VCL, maar wil je verder met multi-platform (OSX, iOS, Android) dan is de combinatie FireMonkey Power en Android App training op 17 en 18 februari misschien iets voor jou. Leer in 2 dagen het FireMonkey framework en Android app development kennen.

Op 3 maart in Edegem (België) top je dan je kennis af met het Delphi praktikum voor ervaren Delphi ontwikkelaars. Mobile app do’s en don’ts, een stukje parallel coding en de benodigde REST based servers als backend. Een complete set aan kennis voor Delphi developers.

En heb je nog Delphi projecten die je over wilt zetten naar Delphi 10 Seattle, dan is de Unicode en BDE Migratie training wellicht interessant. Hierin code snippets voor effectieve Unicode omzetting en introductie van tools voor de BDE Migratie. Deze training is gepland op 11 maart.

Details en inschrijving via: http://www.barnsten.com/nl/events/details?events_id=188

December Delphi maand

Volgende maand is het alweer december, dus sluit het jaar goed af met één of meer Delphi 10 Seattle workshops.

Op 1 december (Zwolle) en 3 december (Eindhoven) laten we samen met de ontwikkelaars die ze gemaakt hebben twee verschillende in Delphi gemaakte Apps zien. De ene is voor de iPad mini en zal worden gebruikt in het calamiteitenhospitaal voor snelle registratie van patientstatus, de andere is zowel Android als iOS en is voor de binnenvaart. Bij beide apps laten we de technische highlights zien met demos van hoe je dit zelf kunt maken, in Delphi 10 Seattle.

Op 15 december (Hoofddorp) geven Paweł Głowacki en ik een hands-on workshop in de nieuwe features van Delphi 10 Seattle, gecombineerd met oefeningen en code die je direct kunt gaan gebruiken in je bestaande VCL applicaties of voor je nieuwe mobiele apps. Dus pak je laptop en doe mee.

Meer details vindt je hier:
http://www.barnsten.com/nl/delphikennis

Bijna vergeten; we sluiten het jaar nostalgisch af op 29 december (Etten-Leur) met een migratie training voor het omzetten van bestaande Delphi software naar Delphi 10 Seattle, met ASCII -> Unicode, BDE -> FireDAC, en VCL Styling voor de look die de klant graag wil.

Android App disappearing on screen rotation

When you migrate an Android app written in Delphi XE8 to Delphi 10 Seattle it may just suddenly push itself to background when you rotate the screen.

The solution is simple; just let the Delphi 10 IDE re-generate the AndroidManifest.template.xml file, or modify the following line of code in the file:
XE8: android:configChanges=”orientation|keyboard|keyboardHidden”
10 Seattle: android:configChanges=”orientation|keyboard|keyboardHidden|screenSize”

Your Delphi 10 Seattle migrated Android App will now behave itself when rotating the screen. Problem solved!

If you are wondering about the how and why of this modification; the minimum SDK levels have changed between XE8 and 10 Seattle.
XE8: uses-sdk android:minSdkVersion=”9″
10 Seattle: uses-sdk android:minSdkVersion=”14″
and when we take a look here:
http://developer.android.com/guide/topics/manifest/activity-element.html#config you’ll note that if the API level for your App is higher than 12, rotating the screen will issue a restart of the activity, unless you set the screenSize configChanges parameter which will allow your App to handle a screenSize change, such as a rotation between portrait and landscape.

Delphi 10 Seattle Trainingen in November

Nieuwsgierig geworden naar Delphi 10 Seattle en je wilt ermee beginnen? Ga dan naar de Delphi 10 Seattle VCL Essentials training op 4, 5 en 6 november. Details en inschrijving via: http://www.barnsten.com/nl/events/details?events_id=169

Ben je al ervaren in Delphi, maar wil je verder met FireMonkey en Android App ontwikkeling, dan is de FIreMonkey/Android Power training iets voor jou, op 19 en 20 november. Details en inschrijving via: http://www.barnsten.com/nl/events/details?events_id=168

 

CodeRage X – Delphi Parallel Programming Deep Dive: Task Monitoring, Resource Locking, Thread Pool, Design Patterns and more!

Made by kantanna.nl

Made by kantanna.nl

Delphi Parallel Programming Library Deep Dive: Task Monitoring, Resource Locking, Thread Pool, Design Patterns and more! That is the full title of this session at CodeRage X. I hope you found this deeper look into some of the relevant parallel programming features such as TInterlocked, TMonitor and TThreadPool useful.

The replay of this session of CodeRage X has been made available by Embarcadero on YouTube here:
CodeRage X Delphi Parallel Programming Deep Dive

 

Source code for this session is available here:
CodeRageX_DelphiParallelProgrammingDeepDive_DannyWind

Remember: when you run into shared resources with multi-threaded programming; consider just making a copy of the data for each thread.

The entire CodeRage X Object Pascal playlist of videos is available here:
CodeRage X Object Pascal Track