All posts by Stephen Ball

Stephen is a Charted IT Professional and the Associate Product Manager for InterBase at Embarcadero. He is also a Product Evangelist for RAD Studio, regularly speaking across EMEA. @DelphiABall

El Capitan and Delphi

Apple have released a new OS update yesterday called El Capitan.

As with most OS updates, things change, and this is no exception. Thankfully, when it comes to Delphi and C++ Builder running on El Capitan, its pretty straight forward, the only thing required is to update the PAServer. The update is available from Code Central http://cc.embarcadero.com/item/30398.

For a full blog post by Sarina DuPont on the changes, that also support iOS deployments to iOS7, iOS8 and iOS9 visit http://community.embarcadero.com/blogs/entry/paserver-hotfix-for-rad-studio-10-seattle-ios-9-and-os-x-el-capitan

 

See Whats Coming in Delphi and C++ Builder

WhatsNewInDelphi20150902

September 2nd is due to be a very important day in Delphi & C++ Builder history, if the recent news from Microsoft and what I have collated from the “whats coming” posts recently.

Register for the Delphi and C++ Builder “First look”

Spoiler alert!

If you only want to find out whats new when you’re on the “See whats coming in Delphi, RAD Studio and C++ Builder” webinar on the 2nd September, then don’t read further. You may learn

Continue reading See Whats Coming in Delphi and C++ Builder

InterBase officially supports Windows 10

In case you missed the big news last week, Windows 10 was released by Microsoft.

My early feel for Windows 10 is that its going to be a game changer for the Windows platform. – Its the first platform that includes free upgrades for customers as far back as Windows 7 and brings the best of the Windows 7 and Windows 8/8.1 UI together.

With many Microsoft customers moving up to Windows 10 for free the upgrade cycle is likely to be rapid, especially in home uses. (Business tends to take a little longer to react) Microsoft CEO Satya Nadella has been quoted as expecting 300+ million new PC licenses this year as well – all of this meaning a lot of windows 10 devices, a large amount of opportunity for developers and a lot of data.

Developers now need data storage working securely and responsibly on Windows 7, 8, 8.1 and 10 and also that can migrate between these platforms.

The InterBase team have been testing InterBase on Windows 10 for a number of months now and the great news is that the certification tests we run internally have all passed on the RTM version of Windows 10. This means the recent InterBase XE7 Update 4 will have Windows 10 officially added to the supports platforms list for both Windows 10 (32bit) and Windows 10 (64bit).

While Windows 10 is the big news this week, remember other operating systems are available 🙂 Beyond Windows, InterBase also supports Linux 32bit and 64bit, with Ubuntu added in XE7, Mac OS X, iOS and Android. For more about InterBase, please visit www.embarcadero.com/products/interbase

 

InterBase XE7 – Update 4

InterBase XE7 – Update 4

InterBase XE7 update 4 is now available for general release.

For notes on previous InterBase XE7 updates please select the links below

What’s new / updated in InterBase XE7 – Update 4?

In short. nothing new, just a few speed improvements and general fixes over update 3. Update 4:

  • Improve performance in a few specific query use cases,
  • Fixes a bug in IBConsole where databases may be created as dialect 1 rather than 3
  • Improves the partial backup feature.
  • Resolves a licensing lock issue on Windows 2012.

The resolved defects are documented on the InterBase XE7 DocWiki resolved defects page .

Downloading InterBase XE7 update 4

Embarcadero CodeCentral “Registered Users” can download the patch binaries (Server/Desktop/Developer/Trial) for Windows and Linux, and, ToGo Edition. You can find the downloads at http://cc.embarcadero.com/reg/interbase

For new users, the trial and developer editions are available for free at http://www.embarcadero.com/products/interbase/downloads

New Eddystone beacon format from Google

Google Eddystone™ beacon format

Give your users better location and proximity experiences by providing a strong context signal for their devices in the form of Bluetooth low energy (BLE) beacons with Eddystone™, the open beacon format from Google.

I found out today about a new Bluetooth LE beacon format that google have released called Eddystone.

This makes 3 formats for beacons along side AltBeacons and iBeacons.

The Eddystone format, like AltBeacons, is an open beacon format but allows the inclusion of additional data blobs with the beacon that can be updated once the beacons are deployed. A key part of this vision from Google is an integrated cloud based API’s that Google may well hope puts them at the centre of the growing beacon ecosystem.

Continue reading New Eddystone beacon format from Google

Using Azure Translator Services with Delphi

This content has been updated to reflect changes to the Microsoft API’s, including new Source Code. Read the latest and get the latest code from the updated blog post (linked above)

Often when building IoT applications there is benefit in linking to 3rd party services. e.g. Heating control systems may link to weather services to help detect external influences that may effect their operation. Typically these services are exposed via JSON and REST providing multi-platform access.

Microsoft Azure data services offer access to a wide range of datasets and services and in this blog post I will take you over my journey connecting to the Azure translator data service and achieving translation of text on Windows, Mac OS X, iOS and Android thanks to the REST components and helper classes in RAD Studio XE8.

About Microsoft Azure Translator Data

Microsoft Translator is a WEB API that enables Automatic Translation (Machine Translation) of text between any of the 50 supported languages

The Azure Translator data is used by Microsoft Office, Visual Studio, Bing and many more Microsoft products. It works over REST using a mix of JSON and XML to provide a number of services including translation and text to audio.

Continue reading Using Azure Translator Services with Delphi

Linking object/TValue to a control, VCL to FireMonkey

In this post, Tag properties and using Rtti.TValue data property as an alternative in FireMonkey / FMX.

Click / Select… now what?

One common challenge we face as developers is that the user clicks on something, we now need to find the object that is required to do the next task based on the item selected.

Sometimes this is from a dataset linked to the control and it may be taken care of for us, other times, we may need to find a specific object that then has the data we need.

Most of us have done it at some time….

Yes… that naughty little trick of using the tag property of a TComponent to store a pointer to an instance of an object that you want a quick way of reaching.

I remember doing this in a POS system where buttons that represented different stock items were linked to dynamically created screens. I also remember often using the TListView and thankfully, the TListViewItem in VCL had a Data property (of type Pointer) that you can set at runtime to an instance of an object. This was a little less naughty when moving to 64bit coding when Integer and Pointer all of a sudden became different sizes, (and if it wasn’t for some insight from the Delphi team to swap tag to NativeInt – lots of code would have broken).

The problem with a pointer property (or using a NativeInt to achieve the same goal) is that it leaves a lot of typecasting in your code, which never sat easy with me.

Continue reading Linking object/TValue to a control, VCL to FireMonkey