Communications · Social · Uncategorized

Using Google Sign-In for Firebase SDK on Android

In this article we will show you how to use Google’s Firebase SDK for sign-in on Android devices. While most login implementations launch a web browser to start an OAuth/2 flow even in Windows, iOS and Android apps, we will be demonstrating how to directly use the Google SignIn SDK in your app to present… Continue reading Using Google Sign-In for Firebase SDK on Android

Optimization · Tips & Tricks · Uncategorized

SIMD Assembly Optimization

We get close to the metal as we demonstrate how you can incorporate assembly optimized SIMD routines into your Delphi apps. This can be done by using inline assembly code for Intel platforms, or by creating and linking a static library for ARM platforms. Nowadays, with optimizing and vectorizing compilers, few people still hand-write assembly… Continue reading SIMD Assembly Optimization

Communications · Libraries · Uncategorized

Roll your own lightweight, scalable backend using ZeroMQ

ZeroMQ is high-speed, distributed messaging library for building scalable communication apps using smart patterns like pub-sub, push-pull, and router-dealer. In this article we will be demonstrating a Delphi version of the ZeroMQ Majordomo Protocol specification which is lightweight distributed communication framework for creating service daemons running on Windows and Linux (with Tokyo 10.2) and client… Continue reading Roll your own lightweight, scalable backend using ZeroMQ

Communications · Foundation · Libraries · Uncategorized

Binary Serialization with Google Protocol Buffers

Google’s Protocol Buffers are a flexible, compact and extensible mechanism for serializing structured data. We share our implementation that makes it easy to serialize Delphi records to a binary format that is 100% compatible with the Protocol Buffers specification. Want to go straight to the source? You can find it on GitHub in our GrijjyFoundation… Continue reading Binary Serialization with Google Protocol Buffers

Foundation · Uncategorized

Cross-platform timer queues for Windows and Linux

In this article we will show how to use timer queues to create fast, lightweight, multi-threaded OnTimer() events that work on Windows and Linux in a uniform method using our helper class TgoTimerQueue. We also discuss how they operate on Windows and Linux and show an example application using timer queues. For more information about… Continue reading Cross-platform timer queues for Windows and Linux

Communications · Foundation · Uncategorized

Scalable Linux sockets for the cloud, Part 3

In this article we will show how to use Delphi’s new Linux compiler to expand our HTTP and TCP client base classes to also run on Linux. On Windows we used IOCP to create a highly scalable client, and on Linux we will use EPOLL to also create a scalable client. We will extend the… Continue reading Scalable Linux sockets for the cloud, Part 3