The New Embarcadero MVP Feed

Delphi Social MediaWe just launched a MVP Blog Feed on the Community page. You can get to it at embt.co/mvp-feed. Eventually we will expand it to contain all the MVPs, Tech Partners and other Embarcadero Partners that may be of interest to the general public.

We are just getting warmed up!

So go bookmark it today and check back next week for more fun and excitement.

Posted in News | 4 Comments

The Craig Chapman IoT Episode

Talking with Craig Chapman about Internet of Things, high altitude balloons, Linux server configuration, enumerating data sets and 4K displays.

Links from today’s episode . . .

Microsoft’s Tweet about RAD Studio first IDE with Desktop Bridge support

[Soundcloud]

Posted in Audio podCast, devices, podcast | Leave a comment

#ILoveDelphi How About You?

#ILoveDelphiFebruary 14th is Delphi’s birthday (and some other holiday). What a great time to talk about how much we love Delphi.

I moved from Basic to Turbo Pascal back in the DOS days, and then started using Delphi with version 2. Since then I’ve used a number of other development tools, including Objective-C, Java, JavaScript, C# and others. Delphi has always been my favorite. It is the tool I turn to when I need to get something done quickly, and it is the bar which I use to measure every other development tool (and none of them measure up).

My son took a class in JavaScript through school. He was really frustrated with it, and wanted to give up programming. I told him I’d be happy to sit down with him again and teach him Delphi (I’d done it a few times in the past, but he lost interest). He reluctantly agreed. After a few minutes he was blown away. All the major frustrations he had from JavaScript was alleviated right away. Soon he created a mobile app that was useful and solved a problem for him in one of his games. He was telling his mom about how much better Delphi is than JavaScript when he said “No wonder everyone loves Delphi, it is the best!”

What about you, why do you love Delphi? Create a video, a blog post or whatever works for you, and share it with the hash tag #ILoveDelphi.

Posted in News, Request for feedback, Tools | 1 Comment

Cool Apps & Niagara Falls

Nick and Jim discuss cool mobile apps built with FireMonkey.

  • SoundJuke turns your smartphone into your personal jukebox at any public site. It uses a combination of these Embarcadero tools in building the app: Delphi for iOS and Android, Cloud API, Parallel Programming API, REST Client Library. If your customer likes what they hear, they’ll spend more time in your store. 
  • EarMaster turns your iPad into a private music training classroom. Powered by FireMonkey and TMS iCL plus it also uses SQLite, SSL, In-App purchases, XML and Indy components in the app. The IDE extensions CnPack and MMX were also very valuable. This video provides an excellent introduction. EarMaster is the Most Advanced App for Music Theory and Ear Training on iOS.
  • Pocketslip will eliminate those pesky paper receipts once and for all. Pocketslip it is powered by Delphi for iOS and Android, Cloud API, Parallel Programming API, REST Client Library and FireDAC. Fast and secure point-of-sale, integrated digital receipts for you and your customers. These videos will provide insight into Pocketslip.
  • Switchboard turns your iPhone into, well, a fully featured and networked phone system in the palm of your hand. It is for the iPhone only and uses Delphi for iOS, Cloud API, Parallel Programming API, and REST Client Library. This video will provide some details.
  • Alpemix is a remote desktop for increasing your productivity wherever you might happen to be in the world. It is a multi-platform system compatible with iOS, Windows Mac OS X and Android so you can be productive under all circumstances and is built on the Delphi platform. More detail is available here.
  • ValidIN is a mobile medical app that networks Croatian biomedical laboratories so that blood samples can be validated quickly and accurately. It is built on the Delphi platform for iOS and Android using FireDAC and DataSnap as well.
  • MindGlow is a powerful meditation tool you can use to induce your mind into states of peace in those times when stress might just be a bit too much. It uses Embarcadero Delphi and FireMonkey but also Apple’s Core Audio and Google’s Android AudioTrack. More and more, the research is showing that meditation has physical health benefits.  From reduced cortisol, to increase in HRV, meditation can and will improve your health.  To gain the most of these physical benefits, Delta sessions is critical.  Serious trainers and elite athletes know that recovery and rest is an essential component to pushing past physical limits and improving overall health. Delta meditation does this in spades!  MindGlow is a fascinating app. Learn more here.
Posted in Audio podCast, podcast | Leave a comment

Now with More C++Builder and David Millington

It this week’s episode we talk with C++Builder Product Manager David Millington about his role at Embarcadero along with other news and tech tips for the week.

Links relevant to the podcast today . . .

Stay tuned to my LiveCoding.TV channel if you want to catch me live in the near future.

Posted in Audio podCast, podcast | 1 Comment

Checkout the Embarcadero Competitions!

We’ve launched a new competitions section on the Embarcadero Community. This  will host competitions for you to show off your creativity and technical skills. It is kicking off with two competitions, the Delphi 10.2 T-Shirt Graphic Contest and the #FunWithDelphi: NASA API Mashup.

#FunWithDelphi: NASA API Mashup

#FunWithDelphi: NASA API MashupYou can have a little fun with Delphi in the new year by entering into our Fun With Delphi contest! Delphi makes it fast and easy to build REST clients using powerful built in components like TRESTClient and TRESTResponseDataSetAdapter. You can easily load up the JSON data retrieved from a REST API into in-memory components like TFDMemTable. Finally, you can use LiveBindings to visually display the data in your apps with very little code required.

We are excited to see what creative ways the Delphi community can come up with to utilize the REST libraries so we are announcing a contest where you can showcase your best REST client mashup using the NASA API.

Disclaimer: This contest is not sponsored or approved by NASA.

Delphi 10.2 T-Shirt Graphic Contest

Delphi 10.2 T-Shirt Graphic ContestThe next release of Delphi, C++Builder and RAD Studio is 10.2 Tokyo. While the release is still some time away, we can start having fun now. If you want to play with the technical bits, make sure you are on Update Subscription and join the beta. For a little fun we have a contest to create T-shirt designs. Break out your creativity and artistic skills.

Posted in News | Leave a comment

Rebooting the Podcast with Nick Hodges

Podcast @ Delphi.org

Podcast @ Delphi.org

It is official, I am rebooting the Podcast with Nick Hodges. Right now I am calling it the Podcast @ Delphi.org since my friend Richard helped me get this domain working again (did you notice it wasn’t working?)

Who knows what the future will hold, but for now you can expect weekly half hour episodes with both Nick and I discussing the news and technology of our community.

 

Posted in News | 2 Comments

FireMonkey vs. VCL

Frequently when I am talking about the VCL or FireMonkey I get some of these common questions:

  • Is VCL deprecated?
  • Which is better FMX or VCL?
  • If I am starting a new app today, should I use VCL or FMX?

FireMonkey vs. VCL

The first is easy to answer, the other two are a little harder. The VCL (or Visual Component Library) is NOT depreciated, nor will it be any time soon. As long as there is Windows and the Windows API, there will be VCL. Just recently in Marco’s Windows 10 Webinar he said “VCL is the best library for Windows desktop development and fully embraces Windows 10.

The VCL gets new components, features and bug fixes frequently, but maybe not as often as FireMonkey. The reason is the VCL is a mature framework, while FireMonkey has been going through a lot of growth the past few versions (although it has stabilized a lot recently, and is reaching a more mature status.)

So which is better, and which to use? There isn’t a straightforward answer, but instead I can tell you the advantages of each, and you can make an educated choice for your next project.

Visual Component Library (VCL)Visual Component Library (VCL)

The VCL was release with the first version of Delphi. It is mostly a thin wrapper over the Windows API controls, but also includes a lot of owner draw controls. It uses GDI, Windows Handles and Windows Messages. This makes it subject to the same behavior as 90% of the other windows applications out there. If you want to you can inject a VCL button from your app into another app, or sniff messages sent to a different app and redirect them into yours.

As I said earlier, the VCL is mature, and so is the 3rd party component space. There are thousands of high quality VCL components, controls and libraries out there. Probably the most notable are the grids. The VCL grids are the best in the industry, and for good reason, our technology partners were making grids for the VCL before any other platforms had the idea of 3rd party controls. So if you want the best grid on the planet, you will probably use the VCL (although the FireMonkey grids are gaining fast).

Because VCL is mostly a thin wrapper on the Windows API, VCL based applications are much smaller than FireMonkey applications. Anymore this usually isn’t a huge deal with fast download speeds and huge hard drive sizes. But if you need a really small lightweight application, then VCL might be a good choice.

Because VCL has been around a while, you may have some existing VCL code that you want to integrate into your application. You could use a utility like Mida converter to convert it to FireMonkey, or something like Monkey Mixer or TFireMonkeyContainer to mix FireMonkey with VCL.

Generally if I am building a simple grid intensive application that I know will only run on Windows, then I find myself using VCL. Or if I need to leverage a specific 3rd party control, or Windows API feature that requires Windows messages. This is less and less frequent though.

FireMonkey (FMX)FireMonkey Cross Platform Framework (FMX)

As FireMonkey is a newer framework you tend to see it covered more. A lot of people are still learning how to use it, and how to tackle cross platform development. The main advantage of FMX is that it is designed from the ground up to be a cross platform framework. It lets you design a single user interface that runs and looks great on Windows, iOS, macOS and Android. But that isn’t the only reason to use FireMonkey.

FireMonkey is based on the latest GPU frameworks: DirectX for Windows and OpenGL elsewhere. It supports both 3D and 2D rendering models, both of which are hardware accelerated. If you want to have some powerful graphic effects or 3D, then FireMonkey is probably going be your first choice. There are some really powerful 3D engines as well as some great graphics effects libraries for VCL, but FireMonkey has these ideas baked into it’s core.

FireMonkey is also a lot more flexible. You can embed any control in any other control with FireMonkey. This ability to build composite controls turns the smaller set of controls it includes into a much more robust set of controls. Also there are animations and effects that let you build fantastic, rich user interfaces with very little effort.

VCL has a respectable set of containers and alignments, but FireMonkey has many, many more, and again they are much more flexible. Another big difference is FireMonkey uses a single precision floating point number instead of an integer in laying out the controls. Much higher precision, but typically subpixel precision doesn’t buy you much. Where it does make a difference is when you scale on FireMonkey since it supports multiple pixel densities.

The most obvious reason to use FireMonkey is if you are currently planning to target multiplatform, or there is a possibility you might in the future (which is a pretty high likelihood). The other reasons are you want a more flexible UI or you plan to take advantage of 3D or other effects FireMonkey provides.

Conclusion

In summary VCL is amazing, and continues to get fixes and new features. It is a better user interface framework than any other out there, except maybe FireMonkey. So use VCL when you are only targeting Windows and don’t need the 3D, effects or flexibility of FireMonkey. Use FireMonkey when you are going multiplatform, or you new some of FireMonkey’s flexibility especially when working around graphics.

Both frameworks will be around for a while. As you use them both you will get a better feel for which to use in each situation. I’d love to hear your feedback about when you choose which framework.

Posted in design, FireMonkey, User Interface, VCL | 9 Comments

3 Webinar Replays: Windows 10, Cool Apps & Migration

Last week was a busy one with 3 major webinars. Those replays are all available now.

Cool Apps and Case Studies

Look at lessons learned from some cool apps developed with Delphi or C++Builder.

Windows 10 Features

Learn about the latest features for Windows 10 in 10.1 Berlin Update 1, specifically around the Windows 10 Centennial or Desktop Bridge. This is the shortest path for getting your native apps in the Windows 10 App Store.

Migrating Delphi and C++Builder Apps

On this webinar we learned how to migrate from older editions of Delphi and C++Builder with some stories of what to look for and how to update your code.

Posted in webinar | Leave a comment

MVP Spotlight: Holger Flick

Holgar FlickI wanted to spotlight a recent return to the Delphi community as an MVP: Dr. Holger Flick. He’s started blogging again and hasn’t slowed down producing good quality technical content.

Like many of us, Holger started programming with Turbo Pascal and GW Basic. For him it was at the age of 7 (with Basic) and switching to Delphi 2 at the age of 14. In 2003 he became very active in the forums and was a member of Team Indy. During that time he was blogging at “Holger’s Thoughts on Delphi,” and also wrote several articles in German and Dutch Delphi magazines.

Holger even spent some time freelancing for QA at Borland and CodeGear. Later for Embarcadero he reported bugs on the localization in German. He also freelanced on the Borland and CodeGear Developer Network. Eventually he earned a place on the Delphi 2005, 2006 and 2007 credits screen (Help > About press ALT key and type TEAM.)

Holgar regularly spoke at conferences on Model-Driven Application Development, ECO (Enterprise Core Objects), and ASP.NET (with Delphi for .NET naturally). I met Holger in person in San Jose at the Delphi Developer Conference in May of 2009, and again in Las Vegas at the Delphi Developer Solutions Conference in 2011.

Holger studied Computer Science at Technical University of Dortmund, Germany, and earned his Ph.D. in Engineering at Ruhr University Bochum, Germany. He then founded his own IT consulting company in 2011 before joining Korfmann Lufttechnik GmbH as head of IT. Now with his  company Flixments, LLC. and new brand Flix Engineering he is blogging about Delphi development again. As an Embarcadero MVP I’m sure his professional skills will be a huge benefit to the Delphi community and IT landscape in South West Florida in general.

Holger says it was hard to find a recent picture of him without sunglasses as they are pretty much required in Florida.

Join me in welcoming Holger back to the Delphi community as an MVP!

Posted in MVP, News | Leave a comment