From the blog

How To Maximize Your Delphi Windows Program Development Productivity

We have seen a lot about Alister Christie from his LearnDelphi.tv website and YouTube Channel and as well as from his book “Code Faster in Delphi” that will teach us how to become productive in Delphi. Fast and efficient coding in Delphi is a great advantage in windows program development. In this session from the recently concluded DelphiCon, Alister Christie will share with us everything we need to know on how to maximize your Delphi Productivity from simple keyboard shortcuts to some techniques that are surprisingly effective. Learn how to maximize your Delphi productivity In this video, Alister will teach you some of the best practices to Code Faster in Delphi. Interestingly, one of the biggest improvements you can make to your productivity in Delphi is not related to Delphi at all, it’s how fast you can type. Being a programmer, you are going to do a lot of typing and even a small improvement in your typing speed can drastically boost how quickly you can code. Here, Alister will share some websites where you can test your typing and coding skills. He also mentioned that the type of keyboard you are using can also bring notable differences. Of course, this session will not be completed without some keyboard shortcuts that his book is known about. He will share with us some tricks about quick navigation, auto code completion, quick indentation, and more. In addition to that, Alister will share the benefits of using code templates. If you have standard bits of code that you write regularly then Code templates could be a way of producing this code programmatically. There are more tips and tricks to code faster in Delphi Another tip to maximize your Delphi productivity is the use of various tools including the multi-paste. It is a very handy tool for doing pasting and things like SQL or some strings that you want to embed in a string list. This could help you save more time. The Form Designer is another area of Delphi that has a mini productivity hack. A few simple tricks can save you a considerable amount of time in adjusting the form layout. Here, you can play around with the VCL form designer and Quick Edit Property that allows you to customize layouts, alignments, and other properties. Customizing the IDE is also an interesting trick in Delphi. Interestingly, the layout of the Delphi IDE can affect your performance. You can hide some buttons and bars that you seldom use for your project, you can rearrange panels so you can work on tools and areas more conveniently. Knowing Language Features and the Delphi Runtime Library or RTL can also help you save a considerable amount of time in coding. You should take advantage of these features both old and new to make you more productive and to save more time in coding. The session also concludes with a Q&A portion. If you want to learn more about how to become more productive in Delphi, feel free to watch the video below.

Read More

This Is How Operating Systems Affect Your Multi-Threaded Cross Platform Apps

In the early days of computing most regular application programs were single threaded. They often only ran exclusively on the machine’s CPU, or they did not run at all or ran slowly as they competed for machine resources with other apps. To answer the increasing demands on personal computers and to address the rapid rise of sophisticated applications, multi-threading operating systems became available. Generally, multi-threading is a way of telling your operating system that these are the different threads (chunks of instructions) that you want to run, potentially at the same time as one another. In this video, we will dive into the details of thread performance for single and multi-threaded programming not just in windows development but also for cross platform apps targeting systems like macOS, Android, iOS and IoT. How Delphi Behaves Differently on Different Operating Systems In this session from the recently concluded DelphiCon, Olaf Monien will demonstrate how Delphi and its compiler would behave differently in machines running or powered by the different operating systems. The focus will be given to the performance and what you as a developer need to be aware of when developing multi-threaded applications on the latest generation of CPUs. With all the new hardware that are out today, this is something a developer should be concerned about. Using a Threading Test Tool, we will be able to differentiate the performances delivered by three different operating systems when running single and multiple threads. The sample machines include a Windows 10 with an Intel Core i7 CPU, a Macbook Pro with an Intel Core i9, and a Macbook Air running in an ARM-based Apple M1 processor. All machines will be tested and all performances will be compared based on their outputs (primes/second) after running Single and Multiple threads. Olaf will also walk us through the process of creating the Threading Test tool in Delphi. To learn more, feel free to watch the video below Download a free trial of RAD Studio Delphi today and follow along with the video and examples.

Read More

This Is How You Can Create A Star Trek-like Dashboard UI Using Delphi And Skia

Are you a big Star Trek fan? If you are then this Delphi project might be a perfect fit for you. From the recently concluded DelphiCon, Embarcadero MVP Ian Barker shares a very interesting project where he attempts to recreate the LCARS user interface, a fictional computer operating system from the Star Trek franchise. Using Delphi, Ian reimagines the futuristic user interface with the help of Google’s Skia Graphics Library. In particular, he will be using the Skia4Delphi library, a simple yet powerful windows ui toolkit that comes with a great number of useful components. How to Create a Futuristic Data Dashboard Using Skia4Delphi Skia is an open-source 2D graphics library that provides common APIs that work across a variety of hardware and software platforms. It serves as the graphics engine for Google Chrome OS, Android, Flutter, Mozilla Firefox, Firefox OS, and more. This session, however, will highlight the Skia4Delphi which is a cross-platform 2D graphics API for Delphi platforms based on Google’s Skia Graphics Library. It provides a set of components that are open source and free-to-install and free-to-access. Some of the main components include the TSkLottieAnimation, TSkPaintBox, and TSkSvg In this project, Ian creates an imitation LCARS simulation using all the interesting components from the Skia4Delphi library. One of the notable advantages of using this library is that it gives you the ability to combine or merge different animations with transparency. Using the Lottie Animation component, for instance, allows you to easily overlay animations on top of each other. By gathering some well-fitting animation and merging them together, Ian managed to simulate a Star Trek-inspired data dashboard. These include some futuristic elements like radar, satellite, a Star Trek logo (SVG image), and even a Klingon font! The session also demonstrates the Skia4Delphi in action and explains all its basic functionalities. Here, you’ll see all the things you can work on in this library including a collection of shapes, texts, paths, effects, and Lottie Animation (as well as the use of Lottie Editor). The most interesting part of this project is that it is surprisingly easy to create and it doesn’t involve many lines of code at all. There is no single line of code that actually manipulates the animations. They all work automatically. To learn more about this amazing project using Delphi and Skia, feel free to watch the video below.

Read More

Learn How This Team Managed To Build A Delphi Web App In Less Than 5 Days

Building a fully functional app is not an easy task. The process is a bit tedious and there are many factors to consider making the project work. Interestingly, in this video from the recently concluded DelphiCon, we will learn how this team of developers managed to build a fully working Delphi app in less than five days! Here, Bruno Fierens will share his success story of how his team managed to create a TMS Web core Progressive Web Application (PWA) Client from the Delphi ide software that is backed by TMS XData REST API backends. Everyone knows Delphi is the most productive development solution for desktop and mobile applications, but what about the web? In this session, you will see how extremely productive and efficient Delphi is for creating full-stack, rich web applications. Building a Working Halloween Web App from Scratch This another successful Delphi story started when Bruno Fierens of TMS Software received an email from Atanas Popov who is the General Manager of Embarcadero. In this email, Atanas asked Bruno and his team if they could build a TMS Web core-powered web app that could be used for the company’s upcoming Halloween Costume contest. The concept is to build a web app where participants can submit their own photos online and be able to share them and collect votes from other members. The challenge, however, is that the app should be up and running within the week and they had to start from scratch. Good thing that there is already a concept and all the requirements have been laid out. From here, they ended up with a web app composed of five pages that users can navigate and explore. This is where the RADoween app came into life. The app is composed of the Main Screen where users can submit their entries (along with the drag and drop function), a Share Page, a Submission List Page, and an Admin Page. Bruno will also demonstrate the architecture behind the application on both the Server and Client sides. One of the things that you will quickly notice is the Form. Interestingly, the structure of the Form designer is totally different from what it looks like when you run the app on the browser. Generally, this is because they used an HTML Template for the form and all the design layout is done via HTML. To learn more about this so-called Thriller project by TMS Software and how they managed to build the RADoween app from scratch within a very short span of time, feel free to watch the video below. Download a free trial copy of RAD Studio Delphi today and follow along!

Read More

How To Convert Your VCL Database Software To Mobile & Cross Platform Apps

VCL has always been part of native windows development specifically for developing user interfaces for Microsoft applications. While this GUI framework comes with a huge library of visual components and a robust collection of 3rd party components, it only supports Windows-based development. The FireMonkey framework, on the other hand, is designed for building multi-device cross platform apps including all the supported platforms such as Windows, OS X (Mac), Android, and iOS. Interestingly, in this presentation from the recently concluded DelphiCon, Miguel Angel Moreno will show us how to transform your data centric VCL application to mobile and multi-platform using the FMX framework. What are the differences between VCL and FireMonkey cross platform apps? In this presentation, Miguel will initially highlight the main differences and similarities between the two aforementioned frameworks. Here, he will compare the structures of both the VCL Database application and the FMX database application. Interestingly, FireMonkey is somewhat similar to the VCL library in many aspects. For instance, they have some similar classes, components, controls, and functions but despite some superficial similarities with VCL, FMX still has numerous differences and some of which will be highlighted in this presentation. Here, we will learn all the important components of a VCL database application including the Database Engine, data source, and data navigator. How to successfully convert a VCL Database applications to multi-target cross platform apps with FireMonkey? This session will dive into many important details concerning VCL and FireMonkey database applications. We will learn how to access different database engines including Local databases, thick database clients (the traditional way to connect to corporate databases like Oracle, SQL server), and REST client which is the modern way that most applications are being developed nowadays, especially for mobile applications. Miguel will demonstrate the process of converting a traditional VCL application to a FireMonkey database application from creating a Multi-Device Application in Delphi to Live Bindings, and more. With the help of the Firemonkey multi-platform framework and RAD studio’s powerful database components, this non-trivial process becomes a child’s play! If you want to learn more about these database frameworks, feel free to watch the video below.

Read More

Everything You Need to Know About The New Delphi Custom Title Bar Property

The VCL or the Visual Component Library, as we all know, is still the best library for windows app development. While the FireMonkey framework provides wider options for developers, especially when designing or building cross-platform apps, VCL is already a well-established and mature framework that offers a huge library of visual components and a great collection of 3rd party components. In addition to that, the VCL frequently gets new components, features, and bug fixes. In this video, we will dive into some of its newly added components, specifically the CustomTitleBar property and the TTitleBarPanel control. How to create custom title bars in VCL apps From the recently concluded DelphiCon, Ray Konopka of Raize Software will introduce us to the newly added property of the VCL TForm class which is the CustomTitleBar as well as the new TTitleBarPanel control. This property allows you to customize a VCL form’s native title bar similar to Windows Explorer, Google Chrome, and other applications. In this particular video, Ray will demonstrate three samples where he tried to customize VCL title bars that mimic the styles similar to a Word Processor, a Web browser like Chrome, and a GIT GUI Client like SourceTree. The video will demonstrate the things we can possibly do with the Custom Title Bar properties. These include but are not limited to the ability to place VCL controls onto the title bar, the ability to show and hide Window icons and captions, the ability to custom paint over the title bar, and the ability to add additional buttons next to the standard system buttons. What does the TTitleBarPanel do? The session also illustrates how to effectively use the TTitleBarPanel component to significantly enhance an application’s main form. You can fully customize how the title bar is rendered by painting on the title bar and drawing anything on it. To do so, you must place a TTitleBarPanel on the form and set the CustomTitleBar.Control property to it. To show how flexible this component can be, Ray came up with three design challenges to mimic some of the well-known title bar designs. Here, he will introduce us to Phrase that imitates the style of a Word Processor; Bronze that mimics Google Chrome web browser; and CodeTree which is designed to look like SourceTree, a popular Git GUI client. To know more about Custom Title Bars in VCL, feel free to watch the video below. Why not download a free trial of RAD Studio Delphi IDE software and see how it can turbocharge your Windows app development?

Read More

Why You Should Know About The Cloud And Why It Matters

In this talk from the recently concluded DelphiCon, Dion Carlos Mai will share with us another important part of windows app development, the Cloud! The session will discuss everything we need to know about Cloud computing and why is it relevant in our current IT market and why does it really matter for a Delphi Developer. Why you need to know about The Cloud By definition of NIST (National Institute of Standards and Technology), Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources that can be rapidly provisioned and released with minimal management. It is said that Cloud will be the most focal investing technology of small and big companies for 2022. The demand for these cloud models is rapidly growing in recent years for many reasons. For instance, it effectively reduces infrastructure investment for developing and growing companies and is also notably less dependent on third-party knowledge. Why is The Cloud relevant? The most important aspect of the cloud is how it provides companies the flexibility when it comes to expenses. Instead of buying a relatively more expensive new hardware for a new server, a company can take advantage of Cloud and use the cloud management console to configure the amount they want to spend for the cloud service. While the most relevant aspect of the cloud is financial, it may also have technological advantages. What are the different Cloud architectures? This session will also highlight all the available Cloud architectures. Generally, Cloud offers many different service models and each model has its own set of benefits that could serve the needs of various businesses. These include IaaS (Infrastructure as a Service) which is considered to be the most expensive yet the simplest model of them all. Another model is PaaS (Platform as a Service) which allows you to use platforms that are already set and you just need to use the management console to configure everything. Which Cloud model suits you the best? SaaS (Software as a Service), on the other hand, gives you access to ready-to-use cloud-hosted application software. The session will also introduce us to other Cloud models including BaaS (Backend as a Service) that provides a complete back-end structure; CaaS (Container as a Service) that allows users to deploy their own container; DaaS (Data as a Service) that provides cloud as a data repository only; DaaS (Desktop as a Service) that provides remote access to our applications by app streaming; and FaaS (Function as a Service) which is described as the most disruptive and most cost-efficient cloud architecture. We will also learn more about various Architectural concepts such as Microservices and Serverless. To learn more about Cloud and all its service models, feel free to watch the video below.

Read More

Everything You Need To Know About Appercept’s AWS SDK for Delphi

It is safe to say that Cloud Computing is an absolute game-changer, especially in the IT industry. Generally, it is the delivery of all kinds of computing services from servers to databases, from applications to networking, storage, and more, over the internet to offer faster innovation, flexible resources, and economies of scale. Many companies are now embracing this innovation as part of their windows application development. Among all the cloud computing services in the market today, Amazon Web Services or AWS is currently the world’s most comprehensive and broadly adopted cloud platform. In this webinar led by Stephen Ball, Marco Cantu, and Richard Hatherall of Appercept, we will dive into Amazon Web Services, particularly with the AWS SDK library for Delphi. What is Amazon Web Services (AWS) and its Key Services? In this video, we will be looking at how we can use Amazon web services or AWS with Rad Studio 11. Prior to that, the webinar will briefly discuss the essence of cloud computing and why should you use such service rather than the traditional IT measures. One of the key essences of cloud computing is about making large-scale computing power accessible to anyone. Another notable advantage of this service is that it can cut costs and it enables companies to focus more on the core business instead of focusing on the obstacles that get thrown by IT infrastructure. We will also get a side-by-side comparison between cloud computing services and on-premise software in terms of various factors such as scalability, server storage, data security, data loss, and maintenance. We will also learn the differences between all major cloud deployment models such as IaaS, PaaS, and SaaS. Finally, we will also learn all the fundamental information about Amazon Web Services and all the key services that it offers. Generally, AWS provides on-demand cloud computing platforms and APIs and it also provides a variety of basic abstract technical infrastructure and distributed computing building blocks and tools. What is Appercept’s AWS SDK for Delphi The webinar will also share Amazon Web Services’ humble origin that started in March 2006. It is important to note that AWS pioneered the usage of virtualization to deliver IaaS at a cheaper and on-demand pricing basis. We will also dive into some of the key services offered by AWS including the Simple Storage Service (S3 Storage), Simple Notification Service (SNS), and Simple Queue Service (SQS). In connection to this, Appercept recently launched a new AWS client library exclusively for Delphi ~ the AWS SDK for Delphi. Currently in Preview Edition, this AWS SDK for Delphi offers support for a few AWS services. It offers direct mapping to the AWS APIs and a few of the aforementioned AWS key services like the S3 Storage, SNS, and solid support of user accounts and access permission. The library will soon be available on GetIt and will soon be included in the Enterprise and Architect editions of Delphi and RAD Studio. To know more about this AWS client library and Appercept’s future plans, feel free to watch the webinar below.    Download a free trial of Delphi and try out the examples in this video for yourself.

Read More

Learn How Tab Controls Can Ruin The Desktop User Experience

Achieving a great user experience is extremely important especially in windows application development to tell if the application managed to fulfill the user’s needs. From the user’s perspective, navigating and exploring an application can be done and managed more effectively through multiple tabs. Ever since their introduction, tab controls have been a staple in desktop applications. When incorporated properly, tab controls add tremendous value to the user experience. However, if not done right, this could possibly ruin everything. Interestingly, in this session from the recently concluded DelphiCon as well as from the Desktop First UX Summit, Ray Konopka of Raize Software will share everything we need to know about the dos and don’ts of managing and controlling tabs. Why are tabs so important and why are they popular? Ray will explain why tab controls are so popular and why they have become a staple in almost all desktop applications. One of the major reasons is that they are visually expressive as these tab controls managed to convey what they do and their purpose concretely. These tab controls are also spatially efficient and most of all, they are extremely easy to use. The session will also highlight how tab controls effectively help us manage content. For instance, tab controls provide quick access to alternate views. Another notable strength of tab control is that it gives users the ability to isolate related content, so they don’t have to look at everything. How to properly and efficiently manage tabs? While tab controls are proven to be effective and undeniably work well to improve user experience, there are still notable challenges when it comes to UX designs. One of which is how users handle a large number of tabs. Managing context is also critically important when it comes to tab controls but at the same time, it becomes a challenge too. The same thing goes with styling issues and mixing metaphors. The session also tackles the recommended optimal number of tabs a user can open to achieve the best experience. It will also teach us how to handle a large number of documents in a tabbed document model as well as the variety of methods available to properly and efficiently manage the tabs. The video will also share some ideal design guidelines for tabs and it will also introduce us to Konopka signature controls that are available in Rad Studio including the TRzPageControl and TRzTabControl components. To learn more about Tab Controls, feel free to watch the video below. Why not try the original low code app builder software by downloading a free trial of RAD Studio Delphi today?

Read More

How To Make Superb Python GUI apps using DelphiVCL

Python and Delphi are both powerful programming languages. Delphi, for instance, provides easy-to-use features compared to other languages which make it ideal for most windows application development. Not just it provides clear syntax, but it also offers an easy drag-and-drop system that enables users to build GUI software relatively much faster. Python, on the other hand, is another powerful and clear object-oriented programming language but it suffers when it comes to creating Python GUI apps. Whether you are a long-time Delphi user or a Pythonista, it doesn’t necessarily mean that you have to stick to one language as you can freely combine them both to build a more powerful coding environment. How to get started with DelphiVCL for Python There are powerful features and libraries in Python that are not present in Delphi and there are libraries in Delphi that are not featured in Python. We were recently introduced to the Python4Delphi library that provides a set of free components that wrap up the Python DLL into Delphi which makes it very easy to use python as a scripting language for Delphi applications. However, if you are a Pythonista who wants to embrace some of Delphi’s powerful components, there are powerful Python modules that allow you to build graphical user interfaces with Python using Delphi’s GUI libraries. In this webinar hosted by Embarcadero MVP Jim McKeeth, we will learn more about these newly released free Python modules that bring the power and flexibility of Delphi’s mature GUI frameworks to Python. Delphi is known for its two powerful GUI frameworks including the VCL which focuses on native Windows development and FireMonkey which offers cross-platform GUI app development. These Python modules include DelphiVCL4Python and DelphiFMX4Python. Interestingly, these modules are based on the open-source Python4Delphi, the same technology that powers PyScripter. How to use DelphiVCL4Python module in Python This particular session will focus more on the DelphiVCL module. Generally, the primary focus of this Python module is to provide free Python modules/bindings of Delphi’s GUI libraries to Python developers. The idea is that it gives you the ability to take the powerful, mature GUI frameworks of Delphi’s VCL and use them in Python. DelphiVCL for Python is a native Python module. It is available via PyPi or you can simply download the source via GitHub. It is natively compiled for Win32 and Win64 and should work on Microsoft Windows 8 or newer. Mckeeth also provides some basic samples including the “Hello DelphiVCL Python Script” that is included in Embarcadero’s DelphiVCL4Python GitHub repository. This sample can be opened and explored via PyScripter or any other Python editor. Another sample includes the Activity Indicator (also from the same GitHub repository) which allows you to load up and change Styles in Python. There’s also the Form Exporter that allows users to design their UI in Delphi IDE and export the form in Python. To learn more about these powerful Python modules, feel free to watch the webinar below.

Read More