Wednesday, April 15, 2015

Berlin and Amsterdam Next Week and XE8 Tour Starting

Starting my "XE8 trips" by visiting two European cities next week. Many XE8 events coming soon to a city near you.

Starting my "XE8 trips" by visiting two European cities next week. Later London, Japan, and China.

Berlin: Apps World

I'll be in Berlin next week to attend the www.apps-world.net/germany/ conference. I'm speaking on Wednesday the 22nd on a round-table, or panel, on "New platforms and technologies for app development", which is part of the Development track (www.apps-world.net/germany/agenda/tracks/developer-zone). Embarcadero will have a booth and I'll be around on the taht day and part of the 23rd (see www.apps-world.net/germany/partners/silver-sponsors/1981/ for the Embarcadero booth information).

Amsterdam: Delphi Developer Days

On Thursday I'll fly to Amsterdam and spend the evening and the following day, the 24th, at Delphi Developer Days with Cary Jensen and Ray Konopka, see www.delphideveloperdays.com/amsterdam.html. I'll give a keynote on the 24th and I'm available for an informal "chat with the Delphi PM" session on Thursday evening.

XE8 Tour Starting

While these two are special events, focused on specific audiences, Embarcadero is kicking off a multi-continent XE8 tour, visiting dozens of countries. An XE8 events is coming soon to a city near you. The current schedule is at  www.embarcadero.com/landing-pages/launch-tour . Expect changes and further cities to be added.

Special Event in London

Out of this tour, there is a very special event taht will go beyond the standard session. The "Delphi Spring Community Conference" is in London on May 6th, I'll give a keynote on the product, but there will be many other Embarcadero and guest speakers. More information (and signup) at forms.embarcadero.com/EM15Q2GBSpringDelphiCommunityConference. Details of the program to come (and I'll make sure I blog again).

Coming to Japan and China

Among the XE8 tour and events, I'll be hitting for the first time the far east mid May (Japan and China). I'll follow up on this. Some info on the Tokio and Osaka developer camps should be (not that I can read it, but I can clearly see I'm in) at www.embarcadero.com/jp/developer-camp-japan/program. Of course, I'll blog more later on.

 





Tuesday, April 14, 2015

Delphi Blogs of the Week #28 (It's XE8)

Almost another month has gone by, with the release of Delphi XE8 (and RAD Studio XE8) last week. Here is another round of links.

Almost another month has gone by, with the release of Delphi XE8 (and RAD Studio XE8) last week. Here is another round of links.

XE8 Release

I've already blogged about the announcement, don't want to repeat those links, just go to blog.marcocantu.com/blog/2015-april-radstudioxe8-released.html. Or you can read Nick's summary at www.codingindelphi.com/blog/flotsam-and-jetsam-100/

This one I missed in my post: Bugs fixed in XE8 at edn.embarcadero.com/article/44358

Press Releases and Articles

InfoWorld article: "Embarcadero moves RAD Studio beyond Windows" at www.infoworld.com/article/2907212/development-tools/embarcadero-moves-rad-studio-beyond-windows.html

The Register (Time Anderson) on "Embarcadero’s cross-platform XE8 RAD Studio targets iOS 8, IoT" at www.theregister.co.uk/2015/04/08/embarcaderos_crossplatform_xe8_rad_studio_targets_ios_8_internet_of_things/

Even if not strictly related with XE8, this is a press release from our Japan office, done along with a large (or I should say very large?) company moving back to RAD Studio after using Visual Studio for some time: www.embarcadero.com/press-releases/tkc-corporation-adopts-delphi-xe-series-to-develop-its-next-generation-taxation-and-accounting-systems. Great business reasoning on why RAD Studio helps them deliver software to their customers.

I wrote a rather general (not XE8 specific) article, or guest blog post, on the alternative approaches for "Enterprise Mobile Development" for the AppsWorld blog at www.apps-world.net/blog/2015/04/08/mobile-development-strategies-enterprise-applications/. I'll be at their conference in Berlin next week.

XE8 Technical Blog Posts

Stephen Ball on "What to do with Beacons before you code" at delphiaball.co.uk/2015/04/10/what-to-do-with-beacons-before-you-code/

Sarina has an actual proximity awareness app build step by step at community.embarcadero.com/index.php/blogs/entry/building-proximity-aware-application-with-rad-studio-xe8

I blogged about new VCL features and TFields optimizations at blog.marcocantu.com/blog/2015-april-new-xe8-vcl-developers.html

Malcolm explains how to revert back the toolbar color (http://www.malcolmgroves.com/blog/?p=1804), but not sure why you need that.

Yaroslav (who works for the RAD Studio R&D Team) has two fantastic blog posts on FireMonkey internal "control control-model" implementation at yaroslavbrovin.ru/new-approach-of-development-of-firemonkey-control-control-model-presentation-part-1-en/ and yaroslavbrovin.ru/new-approach-of-development-of-firemonkey-control-control-model-presentation-part-2-tedit-with-autocomplete-en/. Worth reading with care, even more if you are interested in FireMonkey components development.

Roman explains some of the work on TurboPack components and GetIt at http://blog.kassebaum.eu/?p=402

InterBase ChangeViews support in XE8 is covered by Stephen at delphiaball.co.uk/2015/04/09/database-updates-in-rad-studio-xe8/

And an XE7 HotFix

For iOS deployment, we have also the hotfix for XE7, "iOS 8.1.3/8.2 Deployment Beta Hotfix for XE7". Actually two. One is for professional (cc.embarcadero.com/item/30190) and one for Enterprise and above (cc.embarcadero.com/item/30189).

As part of the new update subscription plan, we don't expect this to be the last fix for XE7, even after Xe8 is released. But following fixes will be made available only to developers on the Update Subscription.

And A Book

I know really nothing about this book, but nice to see another one on FireMonkey for Windows and OS X in Kindle format at www.amazon.com/dp/B00VPC7V86. I'll probably get a copy and read it, and let you know.

 

Friday, April 10, 2015

What's New in Delphi XE8 for VCL developers

With many new features introduced in Delphi (and C++Builder) XE8, some developers have the impression there is little in it for Windows VCL developers, not interested in mobile. In fact, there is a plethora of new features in XE8, even if you don't care about mobile and FireMonkey.

With many new features introduced in Delphi (and C++Builder) XE8, some developers have the impression there is little in it for Windows VCL developers, not interested in mobile. In fact, there is a plethora of new features in XE8, even if you don't care about mobile and FireMonkey. Here is an incomplete summary.

Developer Productivity in the IDE

A significant area of enhancement in XE8 (for all developers) comes from the productivity features added to the editor and the IDE, along with significant improvements in existing subsystems (like unit testing and version control). Here is a short summary:

  • GetIt package manager for seamless installation of components
  • DUnitX support
  • Version Insight support for Mercurial, and improved support for Git and Subversion
  • IDE configuration migration tool
  • Faster CHM help
  • Start here page redesign
  • Project statistics information
  • Clipboard history
  • Multi-paste support
  • Stack bookmarks
  • Smart keys
  • Parenthesis matching
  • Code structural highlight
  • Castalia refactorings
  • Editor selection expansion
  • Flow controls highlighting
  • Code navigation toolbar
  • Smart symbol search
  • Code analysis to track quality

AppAnalytics

By combining this easy to use component (drop it, add your application ID and it works), an easy signup process on appanalytics.embarcadero.com/ (use your existing EDN credentials), and even a free basic tier (applications startup counts), you can start tracking your users analytics in only a few minutes. This is very easy to use, and a pay-as-you-go service (official pricing coming soon).

Core RTL New Features

There are many new RTL features that VCL developers can start using right away, as they fully work on Windows. There are many enhancements in AppTethering (including support for custom encryption), Bluetooth and Bluetooth LE support you can leverage. But there is also a brand new HTTP client library, that lets you create HTTPS clients with no need to redistribute the OpenSLL library. And this also enhances the REST client library.

You can also now easily add the Box2D physics engine to your VCL applications, take advantage of the parallel library (if you are not already on XE7), and leverage many other new RTL features added over recent years, including significant optimizations.

Faster TFields

One specific optimization that it is worth noticing, compared to XE7, is in the way TField objects of a TDatSet (or any descendant dataset) copy their data to and from the active record buffer. The net effect is a 10% to 25 increase in most existing database applications for the "data copy" operations. As a sample, I've created an application that basically duplicates records from one ClientDataSet to another one, in memory, and have obtained a significant faster execution in XE8. See below the image with the XE7 and XE8 timing (in milliseconds) and the source code of the demo:

 

VCL and RTL Fixes and Quality Improvements

There are also many fixes and improvements to core VCL and RTL features, including the cleanup of a few long standing issues related with font scaling in the VCL. For a list of bugs reported by customers and fixed in XE8 refer to edn.embarcadero.com/article/44358. In the list there are over 30 VCL specific improvements, plus RTL and compiler ones.

New RTL and VCL units

Finally, like I've done other times, I want to list the new RTL/Windows units added in XE8, compared to XE7. Here are the new units that a Windows/VCL developer can leverage:

  • System.Analytics (interfaces)
  • System.Hash (THashMD5, THashSHA1, THashBobJenkins)
  • System.Win.InternetExplorer (new name for SHDocVw)
  • System.Net.HttpClient (THTTPClient, IHTTPRequest, THTTPRequest, IHTTPResponse, THTTPResponse, 
  • System.Net.HttpClient.Win (Windows platform implementation)
  • System.Net.HttpClientComponent (TNetHTTPClient and TNetHTTPRequest components)
  • System.Net.Mime (TMultiPartFormData)
  • System.Net.Socket.pas
  • System.Net.URLClient.pas
  • System.NetConsts.pas
  • WinAPI.WinHTTP

Conclusion

As you can see, it is not just a marketing claim saying that XE8 is a great release for VCL developers. There is a lot of substance to this claim, and there are many reasons to upgrade to XE8 even if you are not into mobile development. But this will also offer you a great chance to (finally?) get into mobile development!

 

 

Tuesday, April 7, 2015

RAD Studio XE8, Delphi XE8, and C++Builder XE8 released today

Today Embarcadero technologies released RAD Studio XE8, Delphi XE8, and C++Builder XE8. Another great step forward for Windows/VCL and multi-device/FireMonkey developers.

Today Embarcadero Technologies released RAD Studio XE8, Delphi XE8, and C++Builder XE8 (press release at www.embarcadero.com/press-releases/major-new-release-rad-studio-xe8). Another great step forward for Windows/VCL and multi-device/FireMonkey developers. Product pages:

As you can see in the main banner images, a core theme is connectivity, with improvements in AppTethering (between VCL and mobile), BlueTooth support, and now also Beacons support in the box. But connectivity is also a driver for the new HTTP client library (also for VCL) based on platform HTTP and HTTPS support (no OpenSSL required), connecting to the GetIt repository to add packages to the IDE, track applications usage by connecting them to the AppAnalytics service, connecting to mobile devices using Push Notifications in EMS, and connecting with Teradata database servers in FireDAC.

Of course, this is only a subset of the new features, with the new iOS 64-bit platform now available, including support for Apple Universal Applications (single app with both 32bit and 64bit binaries), and that is for both Delphi and C++. iOS 64-bit support is highly backwards compatible with existing FireMonkey mobile source code, much more than if you are using Xcode or Xamarin.

There are many new features in the IDE, including developers productivity enhancements, the already mentioned GetIt package manager, a new less cluttered Welcome page, the multi-device preview, direct support for DUnitX and Mercurial version control system... I could continue, with all of the FireMonkey features (from the MapView component to desktop browser component), but you can visit the web site for lots of short product videos, highlighting the features, and you can also refer to the Feature Matrix, which is now a single document shared among the three products www.embarcadero.com/products/rad-studio/rad-studio-feature-matrix.pdf (PDF).

For learning more, wait for your maintenance download (because you are moving to update subscription, aren't you?), download a trial (just follow the links in the respective product pages) or sign up to the RAD Preview RAD XE8 Launch webinar in Thursday at forms.embarcadero.com/WindowsAndBeyond_AnnouncingRADStudio. I'll be online with the other RAD Studio product managers, talk to you at the webinar... 

PS. I'll also visit quite a few countries and events to talk about XE8 in person, stay tuned for the details and also for way more technical information about the product in the coming days and weeks.





Friday, April 3, 2015

RAD Studio First Look Webinar on April 9

Next week, the RAD Studio PM team will host an online webinar to preview the next version of RAD Studio, Delphi, and C++Builder.

Next week, the RAD Studio PM team (myself included) will host an online webinar to preview the next version of RAD Studio, Delphi, and C++Builder. 

The title is: " Windows and Beyond: See What's Coming in RAD Studio, Delphi and C++Builder " and the webinar is schedules to be live 3 times during the day, as most Embarcadero international webinars these days. The focus, according to the announcement, is on the following areas:

  • See new innovations in multi-device, multi-form development
  • Build 64-bit and Universal apps for iOS
  • Add IoT solutions, like proximity awareness to your existing applications
  • Extend and mobilize your Windows-based business
  • Be more productive than ever in the IDE

However, you'll also be able to learn more on technologies already introduced in recent skill sprints, like beacons support, push notifications in EMS, and Box2D interfaces. Sign up for the free event at:

forms.embarcadero.com/WindowsAndBeyond_AnnouncingRADStudio

 

Friday, March 20, 2015

Preview of Push Notifications in Enterprise Mobility Services

On Tuesday I gave a Skill Sprint webinar introducing one of the coming features of EMS in the next version of RAD Studio, direct support for sending Push Notifications to mobile apps.

On Tuesday I gave a Skill Sprint webinar introducing one of the coming features of EMS (Enterprise Mobility Services) in the next version of RAD Studio, that is, direct support for sending Push Notifications to mobile apps. 

This is a feature Google calls "Google Cloud Messaging for Android" (or CGM) as you can see at developer.android.com/google/gcm/index.html and Apple calls Apple Push Notification Service (APN) as you can see at developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html.

In both cases, the idea is that a client appliation running on a mobile device can authorize receiving a notification from a server (via Google and Apple services). This notification can reach the running application, which can than execute specific code. If the application is not running, the notification is added to the notification center/list and selecting it will open the application, again passing it the proper data (so that the application can display information specific to the notification it received).

While I'm pretty sure you might have seen this used for games and social applications, this feature can add great value to line of business applications, where the user can be alerted of anything important to him while on the road. Given the notification is asynchronous in nature, this should work even in cases the device connectivity is limited and not stable.

For all of the information of the future RAD Studio implementation (that will be available via Enterprise Mobility Services), you can see the video replay below. The session explains the scenario, but also shows actual code snippets, including the 2 lines of code (plus 2 components) you'll need to add to a VCL application to initiate a notification to some or all of the devices connected to the same EMS service.

Feel free to ask any question.. safe for when the technology will ship.

 

Wednesday, March 18, 2015

Updated March 2015 Draft of Object Pascal Handbook

A new draft of my (coming) language book is available for free to registered users of Delphi or RAD Studio XE7 (and part of the bonus pack if you buy before the end of March).

A new draft of my (coming) language book is available for free to registered users of Delphi XE7 or RAD Studio XE7 at cc.embarcadero.com/item/30018. If you don't have XE7, you can by it and will find th PDF of my book as part of the bonus pack (if you buy before the end of March, at least). See www.embarcadero.com/radoffer for details.

More information about the book (not updated) is at www.marcocantu.com/objectpascalhandbook/. The new draft of the book has several new chapters, for a total of 457 pages. Here is the list of the chapters, with new one in this draft marked in bold:

  • Chapter 1: Coding in Pascal
  • Chapter 2: Variables and Data Types
  • Chapter 3: Language Statements
  • Chapter 4: Procedures and Functions
  • Chapter 5: Arrays and Records
  • Chapter 6: All About Strings
  • Chapter 7: Objects
  • Chapter 8: Inheritance
  • Chapter 9: Handling Exceptions
  • Chapter 10: Properties and Events
  • Chapter 11: Interfaces 
  • Chapter 12: Manipulating Classes
  • Chapter 14: Generics
  • Chapter 15: Anonymous Methods
  • Chapter 16: Reflection and Attributes
  • Appendix A: The Evolution of Object Pascal
  • Appendix B: Glossary of Terms

If you don't have XE7, you can wait until I finish the book and publish it in print and as a paid PDF. There are still 3 chapters missing on memory management, TObject class, and some core RTL. Hope I'll have time in the next couple of months.





Wednesday, March 11, 2015

Delphi Blogs of the Week #27 (It's Coming)

Lots of news this past week, with the roadmap and initial previews of the next release of Delphi, C++Builder and RAD Studio.

Lots of news this past week, with the roadmap and initial previews of the next release of Delphi, C++Builder and RAD Studio.

It's Coming

Some More 20 Years

Some Technical News

That's all for this week. Stay tuned for more news on the next release of Delphi.

 

Monday, March 2, 2015

RAD Studio 2015 Roadmap

Embarcadero has officially published the RAD Studio, Delphi and C++ Builder roadmap for 2015, including a number of new features and technologies.

Embarcadero Dev tools PM team (myself included) has officially published the RAD Studio, Delphi and C++ Builder roadmap for 2015, including a number of new features and technologies. To read it, head to:

community.embarcadero.com/index.php/blogs/entry/rad-studio-2015-roadmap

I'm quite happy of the current planning for the year, with a lot of effort around developer productivity and a push to support Windows 10 in full, new mobile feature (and 64bit iOS, of course), Internet of Things support, and much, much more. There are quite a few smaller features I'm really fond of, from native platform HTTP and HTTPS support to the new IDE library manager. More information coming soon, starting with information about the next release.

PS: A great time to update to XE7 and get the next release with it, with a couple of the current offers (upgrade amnesty with one year update subscription, or free time-limited support with a regular update subscription or license), see www.embarcadero.com/radoffer.

Saturday, February 28, 2015

Three Selected Delphi Week Videos

As I mentioned in yesterday's links collection, there is a YouTube channel with Delphi Week videos. Here are the three I prefer.

As I mentioned in yesterday's links collection, there is a YouTube channel with Delphi Week videos. Here are the three I prefer. for completely different reasons.

Insights in Delphi's Future From Allen

This long conversation with Allen Bauer has a lot of ideas, hints, and insights on where Delphi might be going in the near future, plus a lot on developer boards, IoT, compilers, history, and much more. Totally recommended.

 

My Fun Side Session

Well, this one I picked in a totally partisan move, because I did it. It is another round of my classic FunSide classic session. There is a lot on how to write components and IDE tools, plus some totally nonsense demos, from TNothing onwards.

 

Jim's Code Monkey, Code to the Music

As I mentioned, this is the part of this year's Delphi Week we will remember, for sure. If you haven't seen it, it is a must!