Posts by malcolm

Jenkins World 2017 – Day 2

September 1st, 2017 Posted by Cloudbees No Comment yet

Tim, Graham and I are back with our wrap up of Day 2 of Jenkins World 2017. We’ve all had a lot more sleep than yesterday’s so hopefully it’s not as rambling…although Graham does have a moment in there ūüėČ

This was the final day of Jenkins World and at the closing keynote they confirmed that the recordings of all the sessions will be available soon. We’ll post a link as soon as they go up.

Oh, and I totally forgot to mention the awesome session on DevOptics Deliver that Karan Malhi, the DevOptics Deliver PM gave. Definitely worth watching on the replays, as he goes deeper into what problems they are trying to solve, gives a longer demo and also gives some insight into how it is implemented.

Jenkins World 2017 – Day 1 Wrap-up

August 31st, 2017 Posted by Cloudbees No Comment yet

A few of the team and I have travelled to the San Francisco for Jenkins World and after a long day 1 of the conference, we recorded a quick wrap-up of some of our highlights.

We’re seriously suffering from jetlag and too much coffee, but if you weren’t able to make it to Jenkins World this year, hopefully this will give you a taste of some of the announcements and sessions.

I believe the sessions are being recorded, so at some stage they should come online.

Check back tomorrow for a Day 2 Wrap-up.

Parallel (mis)Adventures

August 18th, 2017 Posted by Embarcadero 4 comments

In one of our customer projects, we had an Android app that was receiving broadcasts on a background thread (I’ll call this the Receiver thread). On receipt of a message, the Receiver thread¬†needed to do some processing on that message and then update the main thread (the UI thread).

The initial solution to this was pretty simple, call TThread.Synchronize from the Receiver thread, passing in an anonymous method that updates the UI Thread.

Testing this on Windows worked fine, however running it on Android revealed a problem. (more…)

Changing your RAD Studio Serial without Reinstalling

August 11th, 2017 Posted by Embarcadero No Comment yet

It was only today that I got around to updating the VM I use for demos to RAD Studio 10.2.1. Unlike the VM’s I use for customer projects, this one¬†is using my MVP License. I installed 10.2.1 no problems, but upon running I got the following error message:

An Update Subscription for Embarcadero Delphi 10.2 is required which has expired prior to this release

 

After a moment of confusion, I realised I might have used my old Berlin MVP license during the install, so the error message is probably correct.

This is easy enough to fix, but I’ve had a few customers ask me about this so I thought I’d grab some screenshots and write up how to replace serials in a RAD Studio install.

(more…)

RAD Studio 10.2.1 Released

August 9th, 2017 Posted by Embarcadero, News No Comment yet

Embarcadero have released an update to 10.2 Tokyo today. The official details are here, but it includes:

  • Linux performance improvements
  • Windows 10 Creator support in both Delphi and C++Builder
  • Support for the latest iOS and XCode
  • FireDAC Driver database support updates for MS SQL, Interbase and others
  • Further Android architectural improvements
  • Plus more than 140 customer-reported bug fixes.

There is a full list of new features and fixes here.

Links for the ISO download are here, and the Web Installer is here. Note that with the recent changes to how the Web Installer works, I actually find it a faster total install. Remember to retain your component settings when uninstalling 10.2, or use the Settings Migration Tool to export them and import them into 10.2.1

Personally,¬†I’ve been using 10.2.1 for the Android changes over the last few days and I can tell you the experience is much improved, both for Android and in general. Definitely worth the install.

Embarcadero Enterprise Connector for Salesforce : First Impressions

August 1st, 2017 Posted by Embarcadero 1 comment

You might have seen the recent Beta announcement from Embarcadero for the Enterprise Connectors. I’ve been doing some work with a few of them lately, so wanted to give you an overview of my experiences, starting with the Salesforce driver.

If you’re not aware, the Enterprise Conenctors are a whole bunch of FireDAC drivers that allow you to interact with a wide range of backend systems as if they were relational databases. There are more than 80 systems supported, including Salesforce, Xero, QuickBooks, Magento, ServiceNow amongst others. The theory is¬†that given most RAD Studio developers are very comfortable interacting with a database, ¬†if you can make something look like a database, it should be easier to use.

Nice theory, but I was keen to see how well it worked. I’ve done a fair bit of development¬†with Salesforce, including using the API, so I figured I’d try that driver out first.

A few things to note:

  • The Enterprise Connectors work with 10.2 Tokyo.
  • The beta versions of all the drivers are available in GetIt, so you can try them out really easily.
  • They are FireDAC drivers, but they work happily with FireDAC in Professional (despite the Enterprise Connectors name)

First up, connecting to salesforce is very easy. You have a bunch of options for how you connect (see the documentation here) but I went with the simple username, password and Security Token option. These are all available as parameters in the FireDAC Connection wizard, as well as properties in the component. (more…)

Logging in Android

July 6th, 2017 Posted by Embarcadero, Mobile 4 comments

RAD Studio’s ability to do remote debugging of Android apps on device is fantastic for tracking down issues. However sometimes you have issues where the debugger can’t help. Case in point is one of the projects we were doing for a customer recently. The Android portion included a Service, which needed to be auto-started when the Android device booted. It worked fine if it was started manually, but auto-starting at boot resulted in a ¬†crash. We couldn’t use the RAD Studio debugger as it was all over so quickly at boot time.¬†Fortunately we were already logging messages out to the Android logs from within our app, so we were able to track down the problem. How?

Let’s go through the two necessary pieces:

  • Logging a Message
  • Viewing¬†the Android log

(more…)

My Declarative Pipelines Presentation from Sydney Jenkins Meetup

June 28th, 2017 Posted by Cloudbees, DevOps No Comment yet

Code Partners hosted the Sydney Jenkins Meetup again this month, and this time it was my turn to present.

I’ve been exploring the new Declarative Pipeline support recently for one of our projects so I wanted to give everyone an overview, how they differ from Scripted Pipelines, and share some of the shortcuts I’d found for building and debugging them.

(more…)

Hey RAD Studio 10.2 Tokyo, where’s my adb.exe?

June 28th, 2017 Posted by Embarcadero, Mobile No Comment yet

The RAD Studio installer has been significantly improved over recent releases. One of the newer features is the ability to quickly add and remove Supported Platforms to your installation from within the IDE (see the Tools | Manage Platforms menu in the IDE). The same utility also lets you install other items, like bundled 3rd party tools, other language support and also the Android SDK.

 

However, if you do all of those things, you might be a little puzzled as to why it looks like the Android SDK Tools have not been installed. For example, if you go looking for adb.exe you won’t find it. Search the whole hard drive, it’s just not there. (more…)

Declarative Pipelines at Jenkins Meetup in June

June 8th, 2017 Posted by Cloudbees, DevOps, Events, News No Comment yet

We’re once again hosting the Jenkins Meetup, ¬†at our offices in Sydney and also streaming online, on June 21st at 6:30pm. I’ll be presenting an introduction to Declarative Pipelines. Here’s the blurb from the Meetup page:

Declarative Pipelines are one of the newer features introduced to Jenkins, which allow you to write Pipelines-as-Code without having to use Groovy. 

In this demo-based session, Malcolm Groves will introduce Declarative Pipelines, covering the syntax and sections, before building up more stages and steps, adding error handling, branching, and more. 

He’ll also demonstrate some of the additional tools you can use to shorten the development and testing of your Pipelines. No prior Pipeline knowledge required!

If you’re in Sydney, come along for a chat and some pizza. If you’re not in Sydney, we’ll be streaming it online.

(more…)