IoT and the Smart Grids

In this blog I will discuss IoT and then Smart Grid revolution that is changing the way electricity is going to be supplied over the next few years. Why is this important? – To build connected devices and services that help businesses and homes drive a greener IT agenda, you need to understand the road ahead so you can benefit from the changes coming.

Introduction – IoT, the cloud and connected devices

The Internet of things (IoT) is changing the way devices are connected and used. Building on the top of modern cloud infrastructures such as Amazon, Docker etc it has become easier than ever to roll out, scale up and scale down your own connected services.

Embarcadero recently ran the 4 day IoT boot camp showing how to use the powerful RAD Server middle tier technology to automatically manage a network of connected devices made with Arduino that can be connected to via any modern programming language using REST.

Seeing emerging technologies for managing a wide network of devices certainly got a lot of developers egger to build their own connected solutions. But devices will need to connect to their local environment too to get the best value out of the Internet of things.

Protocols such as Zigbee and ZWave are at the heart of the future of the connected home. These protocols are easy accessed when building RAD Server Thing Points via the 50+ IoT components in RAD Studio. Click for more on Delphi and C++Builder and the Internet of Things.

How is IoT and the Smart Grid related?

Zigbee and ZWave are important protocols for the connected home. The future smart hubs in homes that will be connected to the electric meters will enable local devices to discover when is most cost effective to use electricity, e.g. enabling you to charge your Tesla car, or Power wall during time where electricity is in abundance and offered dynamically at a lower cost rate. Being able to judge demand and share and spread electricity usage to increase capacity is one way connected devices in IoT will interact with the Smart Grid via smart hubs.

I recently did a Roadmap for Smart Grids and last Friday I spent some time with Jim McKeeth and Nick Hodges talking about Smart Grids as a guest on their weekly pod cast.

Smart Grid Roadmap
Evolution Roadmap for Smart Grids

Above is a copy of the roadmap, and below, a special video version of the Podcast.


Love is in the air….

Yesterday, was Valentines day and marked the 22nd Birthday of Delphi, originally launched Feb 14th 1995.

All around the world, developers were tweeting and blogging about Delphi.  From product directorsHappy Birthday Delphi #ILoveDelphi

to 3rd party component vendors

Screen Shot 2017-02-15 at 10.33.39

an awesome amount was being shared – including this fun video from Craig Chapman


Blogs from Valentines #ILoveDelphi day

Here is a summary of some of the best blogs from the day from around the world.

Modernize Webinar

During the day I was hosting the replay of the popular webinar “Upgrade or become extinct”, and it was great to hear from 100’s of developers who are currently migrating and updating to the latest technologies.

Still after 22 year, Delphi is continuing to modernise and lead the market, Today, RAD Studio IDE is the only IDE to offer developers integrated .appx packaging for native applications on Windows 10 using the Windows Desktop Bridge, and with Linux just around the corner…. There is no better time to upgrade.

Subscription Model

One tweet during the day said how much they loved Delphi, but wished it was on a subscription model. – Well it kind of is!

Delphi, C++Builder or both together as RAD Studio all come with a years update (well slightly more for Enterprise and Architect in the current promotion running). At the end of the year, the annual subscription price is a fraction of the initial purchase.  Update Subscription is am awesome way to keep current and get everything that is coming….

Linux is Coming

IoT Boot Camp – Rapidly building a connected network of devices.

Arduino and RAD Server / IoT Boot Camp
Arduino and RAD Server / IoT Boot Camp

IoT Boot Camp – From Arduino to any programming language

On the 6th February Embarcadero is running a free developer IoT boot camp, specifically looking at making some cool IoT devices and then building a network of connected devices using ThingPoints™ with RAD Server™.

During the boot camp you will learn how to work and build IoT Devices using Arduino maker boards and integrate them (along with another 50+ IoT device that RAD Studio IDE includes components for) into a RESTful middle-tier that can be accessed via any leading development language easily.

  • Day 1 – Building an IoT device with Arduino
  • Day 2 – Programmatically controlling your IoT device
  • Day 3 – Building a centrally managed distributed IoT network
  • Day 4 – Connecting to the IoT network with multiple development languages

Options for coding along at home

While not necessary, you will get more out of the Boot Camp if you can follow along at home.

On day 1, you will go over the steps to make a IoT board using Visuino  (who have teamed up with the guys at Maker Fabs to create a hardware kit you can order in).

On day 2 you can connect to an IoT device component from the list of 50+ components available in the GetIt package Manager. (not on the latest RAD Studio? Download the trial to explore the options.)

On day 3 Connect to and use the IoT devices via REST as we establish the devices into a self managed network of IoT devices that allows device discovery – This will use RAD Server.

On day 4 you can see how to consume the REST Server from any leading programming language by using YAML and SwaggerUI via RAD Server.

Register & Download the trial

Register your free space on Boot Camp

  1. Register Now
  2. Download your free 30 day RAD Studio trial*

*Boot Camp will use RAD Studio 10.1.2 Berlin Enterprise.  You will need  Delphi, C++ or RAD Studio Enterprise license on you machine for boot camp. If you already have 10.1 Berlin Starter or Professional installed, you may want to use a VM to run the trial (or you can upgrade now – check out the latest offers that include FREE RAD Server licenses

New Year resolution – Modernise your Delphi Code

This year is the year to modernise….

Time seems to fly by and prioritising keeping code up to date on the latest versions is for some a struggle. 2016 has delivered a number of compelling reasons to make this year the year to keep your new years resolutions and finally modernise your C++Builder / Delphi code.

This blog post will offer a few good reasons to keep that resolution and places to start to help you modernise your existing code and gain value from it for years to come.

RAD Studio Development today

From Windows 3.1 to Windows 10 – Delphi and C++Builder (the siblings that live together in the RAD Studio IDE) have been powering software developers to easily wrap up the Windows API since the 1990’s.

Today – these same developers are modernising their existing code for mobile, macOS and the new Windows 10 Stores – earning more from their existing code investment. Additionally, existing client server applications are being modernised into powerful restful servers, in part to facilitate mobilisation, but also to rapidly transform existing profitable business logic into the hub of a modern technological architecture.

Windows 10

In August 2016 , Microsoft released the Windows 10 Anniversary update, which followed later in the year with the opening of the Windows 10 Store for applications packaged to use the Windows Desktop Bridge.

Windows 10 Desktop bridge support in 10.1 Berlin arrived in Update 2 (15th November 2016) and subsequently there has been a lot of interest around how developers can package existing Windows Applications for the Windows 10 Store directly from the RAD Studio IDE.

Microsoft have shared publicly via twitter and MSDN that RAD Studio is an approved 3rd Party Installer for packaging Desktop Bridge applications, something (at the time of writing) no other IDE on the market, including Visual Studio offers.

Visit the RAD Studio Windows 10 Desktop Bridge page for more information and overview and how to modernise videos.

RAD Server

With the RAD Studio roadmap pointing towards Linux compilation, migrating to a specialist middle-tier is a move likely to provide strong competitive advantage for developers this year.

RAD Server enables developers to quickly build new application back-ends or migrate existing Delphi or C++ client/server business logic to a modern services based architecture that is open, stateless, secure and scalable. RAD Server is easy to develop, deploy and operate making it ideally suited for ISVs and OEMs building re-deployable solutions.

Built in support that I previously covered for YAML makes it super flexible for sharing with other developers, regardless of the language they use.

One thing I do love about RAD Server are ThingPoints™ – the way you can expand an already deployed RAD Server with remote devices dynamically into a network of IoT devices is amazing and certainly one to watch out for more on in 2017!

If you haven’t read and watched it already, I suggest looking at this excellent migrating to RAD Server case study from Malcolm Groves at Code Partners.

Look at what the cool kids are doing!

Certainly, if you haven’t checked out the cool apps contest winners, its worth a look (or maybe even entering).

As many cool apps show, keeping your code modern and flexible helps save time and gets you to new markets faster. The modern VCL and FMX frameworks and their supporting cross platform “system.” libraries enable developers to take advantage of not just a single cross platform ready codebase, but are built on top of modern language features such as unicode, generics, RTTI & attributes, automatic reference counting and more.

Need to update or refresh your Delphi language skills? For those on the latest RAD Studio / Delphi / C++Builder with update subscription you can download Marco Cantu’s latest Object Pascal book for free! – Note during 2016, Embarcadero moved to the update subscription model with 10.1 Berlin bundling 1 years subscription – subsequently if you purchased 10.1 Berlin, you are on update subscription


Beyond DocWiki – e.g. on RAD Server there are number of useful resources and collection of resources below.

Modernise or Become Extinct

Webinar by (Jim Mckeeth and Nick Hodges) – Great watch, the first bit is a bit of a fireside chat, but once it gets going, awesome overview of a number of the topics covered here.

Migration and Upgrade Center

The Migration and Upgrade Center brings together all the best resources for you to

Migrating Delphi Case Studies – Webinar

I would also recommend this webinar replay for Migrating Delphi. The case studies and tools described reference back to the migration and upgrade center and if you prefer to watch than read… definitely one to use.

InterBase on Linux

Following Jim McKeeth’s recent Embarcadero community post about preparing for Delphi for Linux, I wanted to add a few notes about how you can use Linux today as part of your server architecture; and also point out how to get ready for Linux by using InterBase.

InterBase on Linux

InterBase Server is available for both Windows 32bit and 64bit along with Linux 32bit and 64bit Servers.  For Linux, InterBase is certified for a number of distributions including

  • RHEL 7
  • RHEL 6
  • SuSE 11.3
  • Ubuntu 14

You can keep up with the latest supported platforms at 

Getting Started – InterBase in Linux

Gabe Goldfield, posted a really useful article last year about installing and getting started with InterBase on Linux.

InterBase – Portable Database format

Because InterBase uses the same On Disk Structure (ODS) you can do your development on Windows along side your favourite IDE (Visual Studio, Eclipse, RAD Studio, Delphi, C++Builder etc) and then copy your application database directly onto a linux machine ready for use.

InterBase – Deeply Embedded on Linux

InterBase ToGo is not currently supported on Linux, however the recent InterBase roadmap includes mention of InterBase ToGo being made available for the Linux Platform in the near future. This will ensure InterBase can be deployed embedded with your application for smaller application usage, as well via the traditional Server Installer for larger scale deployment mentioned above.

More on InterBase

For more on InterBase, make sure you check out

InterBase Roadmap Update

Disclaimer: The information included in this roadmap does not constitute, and should not be construed as, a promise or commitment by Embarcadero to develop, market or deliver any particular product, feature or function. The timing and content of Embarcadero’s future product releases could differ materially from the expectations discussed here. Embarcadero reserves the right to change its product plans or roadmap at any time.


It’s been a busy couple of years since the last public roadmap. In that time, the patent pending Change Views feature has delivered some massive competitive advantage win stories to customers using InterBase XE7 and InterBase was nominated for and won the prestigious IoTA (Internet of Things Award) for “Most Innovative Use of Data”.

Following on from the previous public roadmap InterBase has been on the rise, and here we are sharing the current plans for the next release of InterBase in 2017.

Features and Technologies Delivered in InterBase XE7

The major features delivered in XE7 can be seen in the InterBase XE7 DocWilki

In summary:

  • Change Views
  • 64bit Linux Server added
  • Performance Improvements
  • 64bit Transaction ID’s – Allowing systems with the highest demand to run even longer
  • New ODS restore feature
  • OpenSSL upgrades
  • Enhanced Journal Archive Management
  • Service API’s for Online Dump and Journal Operations.

Features and Technologies Expected in InterBase BigBang

This week (15-Nov-2016) at CodeRage the hood was taken off a number of things that have been worked on in the labs for project BigBang. This project will ultimately become the next release of InterBase and includes:

  • A focus on SQL Features
    • Derived Tables
    • Common Table Expressions
    • Truncate Table – A fast way to delete data
    • Transaction Wait Time
    • Exclusive Isolation Levels
    • ISQL scripting enhancements
  • Faster core engine
  • Server-wide Performance Monitoring
  • New Platform Support
    • Latest Mobile & Desktop
    • InterBase ToGo on Linux

Ideas for the future.

InterBase releases are based on a specific On Disk Structure (ODS). The ODS helps manage new features and tells the InterBase engine what the database can do and what performance benefits it can take account of. This is one of the reasons is important to backup and restore when upgrading. – But what has this to do with the future?

Making mid-cycle ODS changes is something that we have been very reluctant to do with InterBase in the past because a change to the ODS will prevent you from using the database on an early version. E.g. if Update 2 had a newer ODS, then you would not be able to move back to Update 1 if you wished to.  With the changes added for managing ODS in the restore in XE7, we are now comfortable that if we need to, we could move up an ODS during a release cycle. This may pave the way to new features mid-release.

Ideas under review for the future include

  • Auditing
  • Scale Out / Load Balancing
  • Even Smarter, Faster Engine
  • More SQL features
  • Change Views 2.0
    • Change views working on Views
    • Option for Backup / Restore (rather than DataDump)
  • Enhanced Tooling (e.g. IBConsole)
  • Enhance Drivers for 3rd Party Tools (e.g. More ODBC, JDBC, ADO.Net enhancements)
  • Coded functions (enabling UDF capabilities with ToGo where platforms do not allow external libraries, e.g. iOS)


10.1 Berlin Update 2 – Anniversary Edition

What’s New in 10.1 Berlin Update 2?

Today sees the release of RAD Studio 10.1 Berlin Update 2 – Anniversary Edition. Here is a quick overview of what is new in 10.1 Berlin Anniversary Edition for Delphi, C++Builder and RAD Studio. Also check the links at the bottom for more online resources.

Package your existing VCL code today ready for the Windows Store!

By far the biggest thing in this release for me is the ability to package existing VCL applications ready for use in the Windows 10 Store. Embarcadero is leading the market in enabling developers to reach this massive market place. With the “bring it with you mantra” we take for granted, many other developers are looking on in envy as they see that RAD Studio / Delphi / C++Builder don’t have to start from scratch to get into the Windows Store! – Awesome!

Windows Store support is available thanks to the Windows 10 Anniversary Update that introduced the Windows Desktop Bridge. The Windows Desktop Bridge (previously know under its project name Centennial) enables developers to take existing applications based on the Windows API and package them as UWP applications (or appx packages) to be distributed directly to Windows users or to be distributed (and sold) via the Microsoft store.

Marco Cantu has already done a great blog post on Packaging and Reaching the Windows Store  with an existing Delphi Application, including links to what you need to do to get started.

Developer Productivity in 10.1 Berlin Update 2 – Anniversary Edition

One other very cool feature added in Update 2 is Quick Edits. Quick Edits increase developer productivity by speeding common tasks in the VCL Form Designer. You can easily build forms, add new components and change their properties, customise layout, connect data sets & sources, and more.

New VCL Calendar Control

If getting to millions of new customers via the Windows Desktop Bridge and Windows Store, and enhanced IDE productivity enhancements isn’t enough, then two new VCL controls come in to support those already created in 10 Seattle. This makes reaching the new UI of Windows 10 exceptionally easy, while maintaining backward compatibility to older versions of Windows!

New VCL and FMX Styles for Windows 10

Finally, there are new styles that are added in 10.1 Berlin Update 2 – Anniversary edition that enhance the look and feel of existing applications.

More on Anniversary Edition

For more details on Anniversary edition check out

InterBase ToGo Android Update

InterBase ToGo Update for Android

Following an update to OpenSSL to address some identified vulnerabilities, Google has stopped allowing submission of applications that contain certain versions of OpenSSL libraries.

While InterBase ToGo and IBLite are not affected by the vulnerabilities identified, the current build that is shipped with RAD Studio for Android is being stopped from deploying to the Play Store. To get around this issue, please download the latest build for InterBase ToGo and replace the .a file in your local deployment files.

While tested on 10.1 Berlin, this download should work for any RAD Studio customer who’s product shipped contained InterBase XE7 (XE7, XE8, 10.0 Seattle and 10.1 Berlin).

Download the latest Android InterBase ToGo from Code Central

Where to put the file?

The InterBase ToGo library for IBLite and InterBase ToGo is the same file. This is typically found at

  • C:\Users\Public\Documents\Embarcadero\Interbase\redist\InterBaseXE7\android

You may also need to check for

    • C:\Program Files (x86)\Embarcadero\Studio\18.0\lib\android\Debug\
    • C:\Program Files (x86)\Embarcadero\Studio\18.0\lib\android\Release\

DocWiki notes

A few more notes about the reported case on this are available on DocWiki

Programming with Delphi & InterBase