Noutați

7 Best Delphi Rules and Practices That You Should Live By

The recently concluded DelphiCon 2021 was indeed a success and the virtual event managed to gather some of the big and popular names in the Delphi community to provide insights about Delphi, windows program development, and more. One of them is Nick Hodges who has been part of the Delphi community since the very beginning. He is an original Delphi 1 beta tester and he used to work with Borland, CodeGear, and Embarcadero Technologies. He is also the author behind various eBooks like Coding in Delphi, More Coding in Delphi, and Dependency Injection in Delphi. With all the experience he had with Delphi, Nick is definitely one of the right people to share his insights about the best Delphi practices that every programmer should live by. What are the seven Delphi rules that you should live by? In this session, Nick Hodges will share his insights on his top seven best practices on using Delphi. First, Nick is encouraging programmers not to waste their time formatting their code. Formatting code is probably one of the most important things you can do as a developer but you should come up with an effective and less time-consuming formatting scheme to improve your productivity. He is also encouraging programmers to leverage and create Live Templates to consume less time in coding. Nick is also strongly suggesting everyone not to be an “On-Click” programmer by designing the business logic of your application outside of and apart from the user interface. Another Delphi practice that he strongly disapproves of is the use of the “with” statement. Aside from the fact that it makes debugging more difficult, using “with” can make bugs easy without even knowing it. Nick is also encouraging programmers to learn how to use Debuggers and to take advantage of their functions. He is also encouraging everyone to take advantage of the free add-ons that come with RAD Studio such as Parnassus Navigator, Konopka controls, and Parnassus bookmarks to name a few. Lastly, in connection with his recent book, he is advising programmers to use Dependency Injection, a technique or process of organizing your code in a decoupled fashion. The session also concludes with a Q&A portion to address some of the Delphi-related questions. Get a free copy of Delphi for yourself by downloading a free Delphi trial today!

Read More

Everything You Need To Know About Cryptocurrency, Blockchain, and Ethereum in Delphi

Blockchain and NFTs were already discussed in one of the past TCoffee and Code sessions in Embarcadero YouTube Channel. Interestingly, we will be introduced to them once again in this video with Jim McKeeth and Stefan van As. The recently concluded DelphiCon 2021 has covered a wide range of topics about Delphi, windows program development, various tips and tricks about coding, and many more. In this session, Jim McKeeth will walk us through the world of Cryptography and will give us an overview of cryptocurrency, blockchain, mining, smart contracts, NFTs, Delphereum, and many more.  What are the basics of cryptography? Jim McKeeth will provide us with all the basic information and things that we should know about cryptography. The session will also provide us with a quick overview of the different types of money through the “money flower” diagram. McKeeth will also discuss the differences between cash and cryptocurrency. We will also get a brief history of BitCoin, the first-ever decentralized cryptocurrency that was designed by a certain Satoshi Nakamoto but turned out to be non-existent. What is The Blockchain? What are smart contracts and NFTs? The session will also highlight blockchain and its crucial role in cryptocurrency systems for maintaining a secure and decentralized record of transactions. Blockchain is generally a term utilized to represent distributed ledger technology or DLT where transactions are recorded with an immutable cryptographic signature called a hash. In connection to Blockchain, we will also get a quick overview of how mining works as well as the use of Smart Contracts and the benefits of using the Proof-of-Stake mechanism for processing transactions and creating new blocks in a blockchain. In addition to this, the video will also introduce us to the emerging popularity of games that use Non-Fungible Tokens or NFTs as well as the IPFS or the InterPlanetary File System, a protocol and peer-to-peer network for storing and sharing data in a distributed file system. How does Delphereum feature in the future of Blockchain? The session will also highlight Ethereum which is an open-source blockchain with Smart contract functionality. In connection with this, McKeeth will give us details about Delphereum, a Delphi interface to the Ethereum blockchain that allows for the development of native dapps (decentralized applications). He will also share some insights about the things we should expect in the future of Blockchain. This includes the so-called Sharding, a multiphase upgrade to improve Ethereum scalability and capacity, and is expected to arrive this year. To know more about Blockchain, feel free to join Jim McKeeth in this one-hour-long session below. Do you want to follow along? Why not download a free trial of the latest version of Delphi today?

Read More

How To Make A Web Crawler App With Delphi and Python

Dion Carlos Mai of AquaSoft is back for another special talk about Delphi. After walking us through the process of dealing with JSON in Delphi from the recently concluded DelphiCon 2021, he will now guide us to build a web crawler using both Delphi and Python programming languages. Web crawling plays an integral part in windows app development, especially for applications that require real-time data. In this talk, we will learn how to get data from websites with Delphi integrated with Python, in one single application. How can I use Python in Delphi? Delphi and Python are both powerful programming languages. Each comes with its own unique feature. Just like what we have learned from the recent DelphiCon talk by David Millington, some languages are ideal for connecting user interfaces while other languages are being efficient for performance. Interestingly, developers can always embrace both worlds by combining two different languages in one application. In this video, Dion Carlos Mai will show us how to use Python in Delphi using the Python4Delphi component. Python4Delphi is the library that provides the integration between Python and Delphi. Along with the hands-on application, we will learn how to build a web crawling application using the aforementioned languages. The talk will also highlight the advantage of using a web crawler app. This method will not just allow you to get data from a website but also allows you to compare different data providers and also to validate your own published data. What are the pros and cons of this model? Dion will also list down all the pros and cons of using this model including how simple this model is compared to other complex solutions. The session will also conclude with a Q&A portion related to Python and Delphi. If you want to know more about how to build a web crawler using both Delphi and Python, feel free to watch the video below. Why not download a free trial copy of RAD Studio Delphi and try this example yourself today?

Read More

This Is How To Use C++ Builder to Extend the Reach of Delphi

Many people know that you can mix C++ and Delphi in one app, however, not everyone knows how to implement this technique. Whether you are planning to develop windows 10 apps, iOS, or Android applications, you might find great reasons why combining two different programming languages can be extremely beneficial. In this video from the recently concluded DelphiCon 2021, David Millington will share with us what C++ builder can offer to your Delphi app and how surprisingly easy this technique can be done. Why would you build an app out of two programming languages? A programming language is called a language for a reason. It is a way to communicate into express intent. Interestingly, the way that a language is designed makes some languages better for some purposes than others. Some languages are good at data processing while some are writing algorithms that are very easy to understand or to read. Some languages like Delphi are connecting to user interfaces and some are being efficient for performance. This means that you can choose the languages you use based on your intent. But the key is, you are not limited to one language and you can always mix and match languages based on your purpose. How to call C++ from Delphi? The key in calling between languages is binary compatibility. In this video, David will explain everything about this binary compatibility as well as the differences between Application Programming Interface (API) and Application Binary Interface (ABI). Here, we will learn how to call C++ from Delphi not just by writing C++ but also by using an open-source C++ library. Mixing the two aforementioned languages, Delphi and C++, lets you write most of your app in Delphi but bring in some C++ fast-compile performance or some of the vast number of C++ libraries that are available. The session will provide an actual demo showcasing an existing Delphi app and will guide us through the process of calling C++ from Delphi through a method and also by using an open-source C++ Library. Here, we will see the benefits of using C++ and how it can effectively optimize the performance by getting about 8 times speedup from the equivalent Delphi code. If you want to know how to use C++ Builder to extend the reach of your Delphi app, feel free to watch the video below. Download a free trial of RAD Studio Delphi today.

Read More

All You Need For An Automatic Telegram Invoice Bot App

There is a great number of instant messaging applications on the market today. One of the fastest-growing and increasingly popular apps is the Telegram app. Telegram is a freeware, cross-platform, cloud-based instant messaging application that provides end-to-end encrypted voice and video calls, chats, and several other features. It also comes with various developer tools that you can work with an ide software like Delphi. In this video from the recently conclude DelphiCon 2021, Alexander Syrykh will share with us everything about Telegram, how to work with the Telegram bot, and how to generate invoices using FastReport VCL and Delphi. Do you want to know everything there is to know about Telegram? With the increasing number of Messaging apps today including Facebook Messenger and WhatsApp, Alexander will share us the reasons why you should use Telegram. Aside from providing a stable messenger operation, Telegram has a fast-growing audience of monthly active users with an increase of 10% over the last 6 months. Also, it has a fast bot creation. Generally, bots are third-party applications that run inside the Telegram app. Here, users can interact with the bot by sending them messages, comments, and inline requests. Interestingly, Telegram allows users to create their own Bots. To do so, you need to write a message to the so-called Botfather which allows you to create new bot accounts and manage your existing bots. The concept behind how the Telegram bot works is pretty simple. In this video, we will learn how to work with Telegram Bot using either the Webhook or the Long Polling methods. How to do you write a Telegram Bot using the API in Delphi? The session will also highlight how to work with the Telegram Bot API using the Delphi programming language. To work with Telegram Bot API, there are libraries offered by different programming languages like Delphi. Since Delphi library is not yet on the list provided by telegram in its repository, Alexander will introduce us to the so-called fastTelega that serves a Delphi Library for Telegram. Here, you will learn how to create a bot menu with the help of a hands-on application. We will also learn how to generate invoices using the FastReport VCL (reporting and document creation VCL Library for Delphi, C++ Builder, and more). The video will walk us through the process of generating invoices in PDF format and how these invoices can be sent to the bot user. To learn more about Telegram bots, feel free to watch the video below. Do you want to try the tips in this video for yourself? Why not download a free trial of Delphi today?

Read More

Everything You Need To Know About FireDAC And Data Access In Delphi

In this video from the recently concluded DelphiCon 2021, Cary Jensen along with his fellow Delphi experts Olaf Monien and Jens Fudge will discuss everything about FireDAC. FireDAC is a powerful Universal Data Access library for windows application development and other devices, connected to enterprise databases. Compared to other database access components, FireDAC is a relatively more easy-to-use access layer that supports, abstracts, and simplifies data access, providing all the features needed to build real-world high-load applications. What are the advantages of using FireDAC compared to UniDAC? Compared to the previous DelphiCon 2021 talks, this session was done with a live panel that aimed to answer all queries about FireDAC in real-time. One of the highlights from this session is the notable comparisons between Delphi’s FireDAC and DevArt’s UniDAC. Generally, both aforementioned database framework comes with similar feature sets with minor differences. For instance, both frameworks allow developers to access multiple different database management systems (Interbase, SQLite, MySQL, SQL Server, Oracle, and more) but the third-party product by DevArt (UniDAC) requires users to pay. Nevertheless, both frameworks share the same core features. What are the most useful FireDAC tools, commands, and components? The live panel session will also tackle some notable FireDAC tools and components. This includes the benefits of using the so-called FDEventAlerter that offers a unified alerts API to keep all users updated on changes in the database. It will also highlight the benefits of using FD Connections as well as the FD Monitor, a great tool to automatically lock all queries and parameters executed on the database. The panel will also discuss and answer a query about how to execute SQL on a database as well as share their insights about the most effective strategies on how to manage large databases on a single-user desktop database without a server process running on the same machine. If you want to know more about FireDAC, feel free to watch this video below. You can follow along – download a free trial of Delphi today.

Read More

The Story Of A Huge Company’s Successful Migration From Delphi 7

In one of the early sessions of DelphiCon 2021, we learned the importance of the modernization of old IT systems. From here we have learned how modernization can improve the overall system performance and how this could help windows program development much easier and faster. Interestingly, in this session, Dion Mai of AquaSoft will share his story of how they managed to successfully migrate a company’s huge database system from an old Delphi 7 version to a newer Delphi Seattle version. What lesson can we learn from the successful migration story from Delphi 7 to Delphi Seattle? Unlike the migration talk provided by Oren Aviram who introduced us to Delphi Parser, a software that can be used for easy transition or quick migration from a Legacy IT system like Borland Delphi to a newer version of RAD Studio, this video will share us a very detailed process including the various phases of migration as well as the challenges they encountered in the process and how they were able to overcome those. The company is Linx Big Farma, a retail software with more than 20 years in the market that is focused on retail for drugstores. Today, Linx Big runs in more than 3 thousand customers with nearly 5 thousand stores using the system. Apparently, the software was previously running in an older version of Delphi (Borland Delphi 7 to be specific). As the company needs to adjust to a growing market, they need to upgrade their operating system to welcome new ideas and features to their customers. What are the phases of migrating from one version of Delphi to another? The project is relatively huge as it involves 65 Delphi projects, 194 modules, and 2 million lines of code. The completion of the project took 6 months with 22 in-house members with developers and 3 outsourced developers from AquaSoft. It went through various stages or phases of migration from analysis, execution, and validation. Dion will also share all the struggles, conflicts, and bugs they encountered during each phase. To learn more about their success story, feel free to watch the video below. Why not download a free trial of the latest version of RAD Studio Delphi today?

Read More

How to Develop Applications for the Raspberry Pi with Delphi 11

Imagine creating applications for a computer that is easily customizable, very affordable, and only the size of a deck of cards? Well, that’s the purpose of the Raspberry Pi! With the power of TMS WEB Core and TMS Miletus, you can create applications for this platform using Delphi 11. This session from the recent DelphiCon will show us a practical use case of how you can build applications for Raspberry Pi and access external devices to measure temperature and humidity. The session will also show us why TMS Web Core and TMS Miletus are considered to be some of the most important Windows tools for developers, especially for the app’s cross-platform functionality. Why You Should Develop Applications for Raspberry Pi Using Delphi Generally, you can now develop applications for the Raspberry Pi with a tiny little computer that is very much affordable with Delphi 11 without the need for additional hardware. Interestingly, you can do it from your Windows PC even if you do not have a Raspberry Pi by yourself. You will be able to generate the binary that can be executed on the Raspberry Pi. Holger Flick will also highlight all the notable strengths of Delphi and why is it ideal for this kind of project. Overall, Delphi is an object-oriented programming language known for making the development of database-driven Windows desktop applications easy because of its rapid application development approach It also features a huge third-party marker for additional visual and non-visual components like the TMS Software. Today, developing for only one platform is no longer sufficient. Aside from Windows, you also need to supply macOS solutions, Linux, and sometimes for the Raspberry Pi too. Good thing, with Delphi you can supply solutions to all these aforementioned platforms. Everything You Need to Know About TMS Web Core and TMS Miletus One of the notable development challenges is to provide a product that is compatible with multiple platforms. One of the solutions here is to use FireMonkey instead of VCL. TMS Software has framework-neutral controls which makes this much easier. Holger will share with us everything we need to know about TMS Web Core and TMS Miletus. The session also comes with a demonstration of the so-called BME 280 Module. The application measures temperature, humidity, and air pressure using sensors attached to the Raspberry Pi. It is designed to send its data to a web service that can be accessed from any device all over the world. Check the video below to learn more about TMS Software in Delphi

Read More

Everything You Need To Go Multi-Platform Using Delphi IDE Software

Nowadays, developing an app for a single platform is no longer sufficient. In order to welcome new ideas and features and also to widen your target market, you must come up with a product or software that can be accessed across multiple devices or platforms. It means that aside from Windows app development, an application must be compatible with other operating systems like macOS, Linux, Android, and iOS. You need to be using IDE software which can support creating apps suitable for multiple different operating system targets. This is what we are about to learn from this session by David Intersimone from the recently concluded DelphiCon. How can I create multi-platform Applications with Delphi, FireMonkey, and other technologies? This programming session will discuss and demonstrate using Delphi and FireMonkey to create multi-platform applications using technology news feeds, Google Cloud APIs, Air Quality REST calls, JSON, RSS, Atom, InterBase/IBLite, etc. Here, we will learn how to handle multiple sources of information, APIs, data formats, and real-world multi-platform specific tips and techniques along with a series of video demonstrations and hands-on applications. Interestingly, this presentation is based on some programming projects that David Intersimone has been doing for the last several months. He came to realized that there is a lot of forest fire incidents happening in various parts of the world especially in areas like California, Northwest, and the United States. He decided to develop an app that can provide details about air quality, humidity, and other related environmental information at any given time. He came across Purple Air, a manufacturer of air quality sensors, and discovered that the website provides a map and a way to get an HTML widget and API. From here, he decided to build his first Tablet PC Application. This is where the multi-platform exploration began. He took the widget information provided by Purple Air and put it inside of an HTML local file. The video will show us how he took advantage of Delphi and FMX as well as how he managed to handle multiple sources of information, INI files, APIs, and data formats. To learn more about how David managed to build this app from scratch, gather information from various sources up to its deployment, feel free to watch this video below. 

Read More

How To Control An Arduino Manipulator Robot with Delphi And Visuino

If you are into robotics, then this session is definitely a great fit for you. While robots are considered to be autonomous machines that can perform certain tasks based on the inputs taken by sensors, they are merely mechanical pieces until they are properly programmed using a powerful piece of ide software. This makes coding an integral part of their system. Interestingly, this session from the recently concluded DelphiCon, will show you how you can control visual programs in an Arduino Manipulator robot from a Delphi Application over Wi-Fi or Bluetooth. How can I program a Robot and control it from Delphi? The robot can be programmed both with Arduino IDE or with Visuino, the graphical development environment for Arduino, and is also by far the easiest way to program the robot. We can communicate with the robot from the Delphi application in multiple ways. The simplest way is using a serial port over USB. Alternatively, we can also use Bluetooth if we have Bluetooth Module on the shield. If we installed a Wi-Fi shield, we can also use Wi-Fi to communicate with the robot. Finally, we can replace the Arduino controller board with a different controller that has built-in Wi-Fi or Bluetooth. When working on a robot project, programmers are more likely to encounter a variety of challenges along the way. There are often shields using the same pins that can cause conflicts. Some shields are simply not compatible with each other and you just have to look for alternatives. There are also some electrical problems such as power noise causing the boards to reset as well as other challenges like mechanical problems, wrong communication, and wrong Delphi project settings.  How can we create an animated timeline and communicate with a robot? In this session, we will also learn how to use an animation timeline to control the robot. The timeline has channels controlling the service and it needs to have the right values to position the servos properly. The simplest way to achieve that is to manually position the robot controlling the servos with the potentiometers which will be demonstrated by Boian Mitov in this video. He will also demonstrate how to write a simple visual application for the robot and a small Delphi application to display and record the values. The video will also show us different ways to communicate with the robot over a Serial Port (Delphi), over Wi-Fi, and over Bluetooth. Feel free to watch the video below to learn more.    

Read More