Noutați

How To Make Windows Apps Without Learning The Windows SDK

The beginning of the 21st century ushered in the start of the digital revolution. These were the years when the consumer technology industry saw a boom. While computers had existed for a few decades prior, this was the time when we were introduced to the concept of personal computers. These machines brought the power of processors and hardware to us for our everyday use, and one of their essential components was their operating system. Microsoft’s Windows was among the earliest operating systems that made it possible for the general public to use computers to carry out various tasks using a graphical point-and-click user interface, avoiding the perceived complexities of remembering text-based commands. It has consistently been the most popular operating system globally. You can judge its popularity from the fact that almost all new laptops and desktops come preloaded with it, and any new desktop application hoping for broad public appeal has to cater to Windows users. Apple’s Mac devices are popular too, of course, and Linux is a creditable third place, but market penetration of the Windows operating system still continues to dwarf them. Being the most preferred operating system on the planet, it is hardly surprising that having experience making applications for Windows as a developer is an almost mandatory skill. While it’s possible to create your Windows applications solely using the raw Microsoft SDK, rapid application development platforms like Delphi can potentially reduce the time and effort taken by a significant margin. Furthermore, such an alternative doesn’t have to mean compromising the quality of the application. This article goes over the Windows SDK, what it provides, and discusses other popular methods for developing robust Windows applications with Windows App Development Tools. What makes a successful Windows application? No matter what development platform you choose, it is crucial that you understand what your Windows application needs to perform and deliver the best. Due to Windows’ popularity, there are many applications available which target a specific purpose or use-case, but not all of them receive the same recognition. How can you help make your application the best of its bunch? Some of the main characteristics of chart-busting Windows applications that have a large and dedicated user base are as follows: Regular Update Cycle: Whatever your application may do, it is vital to keep it updated with newer features and upgrades. As Windows keeps updating every few years, your application needs to stay consistent with each update. Clean & Responsive UI: This may be one of the most crucial elements of a successful Windows application. To make your application’s UI a user favorite it needs to visually enhance the user’s comprehension of the program’s functionality and be as intuitive as possible. Least Interference With Windows’ Workings: Windows keeps an eye on all its applications and happenings through different security protocols like its firewall and established conventions on where and how to store or retrieve data . You need to ensure that your application adheres to conventions on storage and runtime behavior so that it behaves as expected and cooperates with the operating system to facilitate secure operation and data handling. By adhering to best practices you also help ensure you application doesn’t impinge on the performance and operation of other apps and functionality. Optimized Inner Workings: Your application needs to […]

Read More

20 Ways To Supercharge Your Apps With APIs

Learn more about 20 useful ways to boost your development on Windows when creating API-based apps. What is a RESTful API and why should I learn more about it? REST is a type of software architecture that was designed to ensure interoperability between different Internet computer systems. Basically the idea is that services that comply with REST architecture can more easily communicate with one another. REST does not enforce any rule regarding how it should be implemented at lower level, it just put high level design guidelines and leave you to think of your own implementation. What we do have is the definition of architectural constraints which make any web service – a true RESTful API. The goal of REST is to increase performance, scalability, simplicity, modifiability, visibility, portability, and reliability. This is achieved through following REST principles such as a client–server architecture, statelessness, cacheability, use of a layered system, support for code on demand, and using a uniform interface. The focus is to make sure that the REST architectural style emphasises the scalability of interactions between components, uniform interfaces, independent deployment of components, and the creation of a layered architecture to facilitate caching components to reduce user-perceived latency, enforce security, and encapsulate legacy systems. What is an API? According to Wikipedia, “An application programming interface is a connection between computers or between computer programs. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build or use such a connection or interface is called an API specification”. Imagine you arrive at the mall and you would like to order a burger. The kitchen is the part of the “system” that will prepare your order. What is missing is a link to communicate your order to the kitchen and deliver your food back as fast as possible. That’s where the person taking the order comes in, here representing by the API . The person taking the orders is the messenger – or API – that takes your request or order and tells the kitchen – the system – what to do. The person taking the order can only accept orders for items listed in the menu, and the menu in this case is the document or standard that describes what and how you can make your requests; Both you and the person making the orders know very well the menu structure and contents, meaning both server and client can communicate. Then the person takes your order, deliver it to the kitchen that prepares and send the response back to you; in this case, it is the food! Is there a real-life client-server API example? Yes, lets take a more is a real-life client-server API example. Lets say you want to build your our web, desktop or mobile application to search and present information about commercial flights. Just like the restaurant, you have a variety of options to choose from, including different airline companies, cities and airports, departure and return dates, as well as other variables. In order search and present this information, your application should interact with the airline’s servers to access their database. The airline companies would never allow you to directly access their databases and instead they provide a secure and structured gateway for you […]

Read More

You Need To Code Sign Now, Plus: Explore Microsoft Azure

TCoffee and Code is a weekly informal virtual meeting series on YouTube by Embarcadero Technologies. This virtual conversation series will gather different developers and programmers to discuss topics related to the industry. In this new session, Ian Barker will be joined by his fellow Embarcadero MVPs Holger Flick, Wagner Landgraf, and Jim Mckeeth as they discuss the importance of Code signing and explore Microsoft Azure Cloud. Why Is Code Signing So Important? One of the highlights of this TCoffee and Code session is the importance of code signing and how beneficial this process is for all software developers. Code Signing is generally the process of digitally signing codes (executables and scripts) to guarantee that the code of a program or software download has not been corrupted and tampered with. The conversation will discuss its implications and requirements and how code signing can help both publishers and customers. We will also learn how this process becomes an essential part of windows 10 apps development. Exploring Microsoft Azure Cloud The team also explore Azure Cloud by Microsoft and they discuss the pros and cons of using this cloud computing service. They also provide side-by-side comparisons between other cloud computing platforms like Amazon Web Services (AWS). In addition to that, they discuss other related topics including the storage of keys to Cloud’s secret repositories and more. Holger Flick also provides us with a brief tour of the TMS FNS Cloud pack and will explain some of its controls. To top it all, the video will also give us a sneak peek of the new RAD Studio 11 as well as the upcoming TCoffee and Code sessions that you should not miss. Feel free to watch the video below to learn more.    

Read More

The Story Of How Delphi Became A Real Game Changer For This Financial Software

In this new TCoffee and Code session, we a fact-packed conversation on how stock market trading drastically evolved over the years and how Delphi became a game-changer for real-time financial software development. In this video, hosts Ian Barker and Jim Mckeeth are joined by a long-time Delphi developer Jim Ferguson who professionally developed a Real-time Stock Market Software in 1992 with Turbo Pascal 6. Here, he shares all his experiences on how he managed to embrace the rapidly evolving technology especially in the field of windows program development, and how Delphi helped him overcome these challenges. How did Delphi change the game for Jim Ferguson? Jim Ferguson takes us down to memory lane as he shares his experiences on developing real-time stock market software. Here, he shares his humble beginnings and the challenges he faced in gathering stock market data during a time when the Internet was not yet a thing. The interview introduces us to the stock market industry and Jim walks us through the differences in the process at the time and the cost of collecting real-time stock market data compared to today. From radio signals to the earliest days of the Internet, we will see how Jim managed to embrace the evolution while he shares how Delphi (Pascal) made a huge impact on his very own Real-time Stock Market Software. How did the Transition to automated trading take place and what part did the Delphi Compiler play in that? From manual trading, we learn how Jim Ferguson and his team adapted their engine to automated trading. Jim also shares with us how he managed the risks of dealing with high-profile clients and traders in a fast-moving environment, the importance of unit testing, and his use of Delphi language to pull market data in real-time. To learn more about Jim’s Stock Market software development and how to make the most out of Delphi’s compiler, feel free to watch the interview below.

Read More

What You Need To Know About Databases, Data Access, and Object Relational Mapping in Delphi

TCoffee and Code is back with another interesting set of topics. As described by Ian Barker in this video, “TCoffee and Code is more than just a virtual meeting but more of a group learning experience for everyone involved“. Joining host Ian Barker in this two-hour-long session are his fellow Embarcadero MVPs Holger Flick, and Wagner Landgraf as well as Jim McKeeth to share everything we need to know about databases, data access, and object-relational mapping (ORM). What are the best practices for using databases and database access for Delphi? The session starts with a brief introduction to databases and also highlights the notable differences between RDBMS (Relational Database Management System) and NoSQL (a distributed database) as well as prominent samples of these aforementioned databases. Interestingly, we will also get to know more about different database access for Delphi and windows apps studio including the native ones such as FireDAC, dbExpress, ADO, and InterBase Express. The panel will also discuss third-party Delphi database access such as UniDAC, TMS RemoteDB, and many more. What is ORM and how can we use ORM in Delphi? Finally, we will also learn more about Object Relational Mapping (ORM) in Delphi particularly the use of TMS Aurelius and the application of its basic features. Discover why TMS Aurelius is described as a state-of-the-art ORM for Delphi, the notable advantages of this framework as well as its limitations. The session will also share with us some details about the REST Client Library and will give us an overview of the RAD Server Architecture and how to create a cross-platform ecosystem with FireMonkey. The video will also introduce us to the HeidiSQL tool and how it works well with MySQL and other relational databases. Feel free to watch this TCoffee and Code session below to learn more.

Read More

What You Need To Know About REST Servers, Load Balancers And Reverse Proxies

In this new TCoffee and Code Session, host Ian Barker was joined by his fellow Embarcadero MVPs Holger Flick, Wagner Landgraf, and Jim McKeeth to discuss a mouthful of topics from dealing with REST Servers to managing Multi-tiered applications and API designs. Joining Ian Barker in this virtual coffee meeting are his fellow Embarcadero MVPs Holger Flick, Gerhard Stoltz, and Wagner Landgraf to help us better understand everything about REST Servers, Multi-tiered Applications, Load Balancers, Reverse Proxies, and even Augmented Realities. What do you need to know about REST servers? The discussion will highlight a wide range of important topics and the panel will introduce us first to the things we need to know about REST Servers. Generally, REST or Representational State Transfer is a software architectural style that is created to provide guides or standards for web design and windows app development. Those web APIs that comply with REST constraints are informally known as RESTful systems. A RESTful web service is implemented using HTTP and the principles of REST. The panel will also discuss the use of Delphi’s DataSnap Technology that provides the ability to create Client-Server applications that communicate through the Internet, the local network, or the localhost. Both Delphi and C++ offer all the basic and advanced capabilities to consume any published Rest services. What is the difference between a load balancer and a reverse proxy? In connection with the client-server computing architecture, the panel will also guide us through the differences between the use of Load balancers and Reverse Proxy. While both Load Balancer and Reverse Proxy act as intermediaries in the communication between the clients and servers they still differ in functions and deployments. The team will also guide us about the notable advantages of using the NGINX Reverse Proxy Manager. The session will also highlight multi-tiered applications and API designs and will share with us a handful of tips and tricks of dealing with them. In addition to that, the panel will also briefly discuss the fascinating AR or Augmented Reality on Android phones. To learn more about these topics, feel free to watch the webinar below.

Read More

7 Reasons Why Low Code Is A Powerful Force In 2021

Today’s software is definitely at the pinnacle (so far) of a slope of increasing usefulness, complexity, and power which began decades ago in the 1970s and 1980s. Our modern programs can do things now which were unimaginable when the IBM PC first launched and even when the earliest versions of Windows and Macintosh wowed us with WYSIWYG displays. Now it’s common to have programs that casually incorporate advanced machine learning, massively interconnected data sources, and the ability to use peripherals such as fingerprint or face recognition and near-field payment systems. A lot of that has become so ubiquitous that we forget we are holding that Sci-fi-become-real modern way of life in the palm of our hands in the form of a mobile phone. This wonderworld of computer enhancement can add immense depth to what we humans can do, even in our regular daily lives. But functionality comes at a price: software complexity. Complex software demands better design patterns and architecture to avoid making it a hard job and an impossible one. It needs more time, which means more money. Also, there’s a learning curve that can thwart new developers who have no knowledge of good practices and design patterns. As a developer, employing low code techniques can give you a sound foundation and a huge jump-start for your project. Low code generates a substantial amount of your application’s functionality and user interface for you with a very small amount of work. With the use of the Windows Application Development tool, you can build on the sound structure and add additional custom functionality if necessary, filling out the features with a low amount of extra code of your own. What are the benefits of Low Code? Low code focuses your coding efforts on only the specialized and unique parts of your application rather than the ‘scaffolding’ code to actually make the app’s “boring bits” work in the first place. Use your existing talents to rapidly develop applications for your business. Use auto-generation, toolkits, wizards, and visual user interfaces to improve your productivity and provide a standardized, tried and tested look, feel and functionality. Great for agile software development – gets a minimum viable product ready really quickly. Low code means lower development time and that means decreased labor costs. Low code means fewer places for the bugs to hide! Better customer experiences by using existing familiar and consistent functionality and user experience which leverages professional code written by experts adding the wisdom and experience of additional professional developers to your own. How can I do low code in Delphi? Before we start, it’s worth pointing out that Delphi, by design, has always been a low-code solution. The “RAD” part of RAD Studio Delphi stands for “Rapid Application Development”. The component-based design of Delphi forms, the VCL, and Firemonkey FMX has always meant Delphi developers have always been writing far less code than alternative solutions. But there’s more waiting to help you be a low code powerhouse. The Firemonkey Low Code App Wizard is your new best friend. How can I use the RAD Studio Low Code Wizard to produce a fully-working low code program? To get started with the low code wizard in Delphi, first, you have to install the package from Getit. Open the package manager from Tools-> GetIt Package […]

Read More

What You Need To Know About Blockchain, Smart Contracts, and NFT

TCoffee and Code is back for another interesting session. While this webinar series usually centers around windows app development, this new session will discuss something that is extremely popular today. Joining Ian Barker for this virtual meeting are his fellow Embarcadero MVPs Jim McKeeth and Yilmaz Toru to tackle everything you need to know about Blockchain and NFTs. This conversation will introduce us to the world of cryptography including the use of cryptocurrencies like Bitcoin, the role of Blockchain, the use of Smart contracts, the emerging popularity of NFT games, and more. Interesting History about Bitcoin Bitcoin, as we all know, is the first ever decentralized cryptocurrency. It was first released as an open source in 2009 and the success of it resulted to the creation of other cryptocurrencies. Interestingly, Bitcoin was designed by a certain Satoshi Nakamoto who claimed to be a middle-age man but turned out to be non-existent. Everything You Need to know about Blockchain There were multiple attempts in the past to create digital money but most of them failed until the Bitcoin was launched. Interestingly, Bitcoin uses a specific type of database called Blockchain. Generally, it is a term utilized to represent distributed ledger technology (DLT) where transactions are recorded with an immutable cryptographic signature called hash. The panel will address all the Blockchain-related question in this video. Working with Smart Contracts In connection with Blockchain, this session will also discuss the purpose of smart contracts which are programs stored on a blockchain that allow us to convert traditional contracts into digital parallels. The team will also introduce us to Ethereum which is an open-source blockchain with Smart contract functionality. They will also show us how to connect and work with Ethereum using Delphi. Making Sense Out of NFT The panel will also discuss the emerging popularity of games that use Non-Fungible Tokens or NFT. Interestingly, these NFTs can be associated with easily-reproducible items such as photos, videos, audio, and other types of digital files as unique items and use blockchain to give the NFT a public proof of ownership. To know more about them, feel free to watch this TCoffee and Code Session below.

Read More

What Are Windows 11’s New Security Requirements And Changes?

TCoffee and Code is a weekly virtual meeting series launched by Embarcadero Technologies on their YouTube channel. The goal for this series is to gather different developers and programmers in an informal virtual session to discuss some of the most important and the latest news about Delphi and the software development industry. In this new TCoffee and Code session, Embarcadero MVPs Ian Barker, Jim McKeeth, and Holger Flick were gathered to share their own thoughts about the newly launched Microsoft Windows 11 operating system and some of our favorite Windows App Development Tools. Are there major changes in Windows 11? Windows 11 offers a vast number of important changes compared to its predecessor, especially with some of the new available windows tools for developers. There are notable major changes, especially in its current graphical user interface. For instance, the new Windows 11 comes with a centered taskbar and a simplified widget bar that requires users to adjust to its new layout. In this video, the panel will highlight one of the major security feature changes in Windows 11. One of the system requirements for the new operating system is the TPM or Trusted Platform Module (TPM 2.0). The presence of this module will not just improve platform security on a higher scale, but will also effectively prevent software piracy. However, it also means that users must have a newer computer to embrace Windows 11 at full capacity. What Windows 11 development tools are available? Aside from the newly added TPM requirement, the team will also discuss other notable changes in the system especially with some of the development tools. This includes the revamped Windows Subsystem. The new operating system now allows you to easily install WSL. This particular feature allows users to natively run Linux Graphical User Interface in the Windows system. It is also interesting to mention that Windows 11 now allows users to run Android applications. The panel will also highlight other important development tools for Windows 11 including some Accessibility changes, virtualization, and Windows 11’s Right to Repair support. We will also get to see how the newly released Rad Studio 11 runs in Windows 11 in this video. Feel free to watch this new TCoffee and Code session to learn more.

Read More

What You Need To Build Web Apps With Delphi And TMS WEB Core

In this latest TCoffee and Code session, Jim Mckeeth was joined by his fellow Embarcadero MVPs Ian Barker, Holger Flick, and Bruno Fierens to discuss another interesting topic about native windows development. This time, the panel discussed everything about web interfaces and how and what development tools you can use to natively run applications using web browsers with Delphi as the programming language – no JavaScript knowledge required. Learn how to create fully interactive web Applications using Delphi and TMS WEB core The panel tackle how it is possible to run applications natively using the web browser and how the method differs from native applications. The discussion also highlights the use of TMS WEB Core and where it differs from other web frameworks. Generally, TMS Web core is a web development tool that allows you to create web client applications from Delphi using RAD development methodology and a component-based framework. It will also highlight the pros and cons of using TMS WEB Core in creating web applications. They will also discuss the importance of using backend databases using frameworks like TMS XData, RAD Server, and more. What do you need to know about Electron and Miletus Frameworks? In connection with TMS WEB Core, the panel will also highlight the use of some of the popular frameworks among web developers. These include Electron and Miletus. Electron is a framework for creating native applications with web technologies like JavaScript, HTML, and CSS. Miletus, on the other hand, is also a framework that enables TMS WEB Applications to run as desktop applications and provides access to native features. The panel will provide a side-by-side comparison between the two. To learn more about Web interfaces and how to create applications with Delphi and TMS WEB Core, feel free to watch this two-hour-long TCoffee and Code session below.

Read More