Articles by Steffen F. Pirsig

I Love Xbase++ (ILX)
The portal for Xbase++ developers worldwide
Steffen F. Pirsig
3 min read
Views
329
Xbase++ developers often use ISAM (Indexed Sequential Access Method) for data management because of its efficiency and straightforward approach to handling database operations. Moving to PostgreSQL, a robust SQL database, offers enhanced capabilities but requires an understanding of new...
Steffen F. Pirsig
3 min read
Views
420
Reaction score
1
For developers working with Xbase++ on Windows operating systems with more than 32 logical processors, this article is a must-read as it explains how the SetLogicalProcessor() function operates in general and specifically with more than 32 logical processors. This function is designed to manage...
Steffen F. Pirsig
3 min read
Views
538
Reaction score
1
Introduction to Software Modernization Today's modernization of legacy software systems has become a critical decision for any organization. The choice between software migration and re-implementation is a strategic one, each with distinct advantages and challenges. This discussion is...
Steffen F. Pirsig
4 min read
Views
764
Reaction score
1
In software development, a monolithic object or class refers to a design where a single class performs a variety of functions that could logically be separated. These classes for example handle data access (like database queries), business logic (application-specific rules), and sometimes even...
  • Featured
Steffen F. Pirsig
8 min read
Views
754
Prolog Using many small services, known as microservices, is a popular way to build applications. But, working with microservices can be very complicated. However, the complexity arises not from the Xbase++ business logic code - a domain in which an Xbase++ developer is highly proficient - but...
  • Featured
Steffen F. Pirsig
3 min read
Views
685
Reaction score
1
The re-implementation of existing legacy software systems often faces significant challenges, and understanding these can illuminate why such projects frequently fail. This little write-up is far from complete but tries to create awareness regarding these important and very often underrated...
  • Featured
Steffen F. Pirsig
4 min read
Views
1,048
Background Microservices architectures consist of loosely coupled, reusable, and specialized components that often operate independently. Microservices also use a high degree of cohesion, also known as bounded context. Bounded context refers to the relationship between a component and its data...
Steffen F. Pirsig
4 min read
Views
776
Reaction score
1
Background In the realm of software development, keeping a software product current, reliable, and robust requires a strategic approach. Alaska Software, the vendor of the programming language and development platform Xbase++, has adopted a strategy known as Continuous Delivery to maintain the...
Steffen F. Pirsig
4 min read
Views
1,118
Introduction Composition and inheritance are two major concepts in object-oriented programming (OOP) that allow for creating complex types. Inheritance is a mechanism where you can derive a class from another class for a hierarchy of classes that share a set of variables and methods. The...
Steffen F. Pirsig
3 min read
Views
343
Prolog In the realm of software development, it's imperative for companies to adopt versioning strategies that are both meaningful to developers and aligned with modern development methodologies. Alaska Software, as the vendor of the Xbase++ platform, has seamlessly integrated these...
Steffen F. Pirsig
3 min read
Views
884
Introduction Interfaces in Object-Oriented Programming (OOP) play a critical role in designing robust software. In the following we will try to explain the benefits of using interfaces and how to implement them in Xbase++. Generally, benefits of using interface are: Abstraction: Interfaces...
Steffen F. Pirsig
4 min read
Views
710
Background One of the largest differences in how data is managed between SQL and ISAM is how deleted records are handled. In short: ISAM: does mark a record as deleted. This way it is out of scope. To really get rid of the record you need to do a time consuming PACK operation. SQL: does really...
Steffen F. Pirsig
2 min read
Views
839
Background Since the ISAM emulating tables of the PostgreSQL DatabaseEngine are in fact regular SQL tables, it is possible to manipulate them using SQL statements. However, some SQL operations are problematic, as they may lead to inconsistent/incorrect ISAM behavior. In the following, we will...
  • Featured
Steffen F. Pirsig
2 min read
Views
751
Background As you may have already realized, a PostgreSQL server or any SQL server in general is a "relatively" complicated story. The reason for that is basically that the server with the planner tries to replace you as a human. In ISAM you have the data model in mind, also the requirements of...
Steffen F. Pirsig
3 min read
Views
1,533
Reaction score
2
Background The Xbase++ PostgreSQL DatabaseEngine provides two different access method to data. First, the ISAM emulating approach which works with dedicated SQL tables only. These SQL tables need to be created using ISAM commands like DbCreate/INDEX ON/OrdCreate or have been upsized from...
Steffen F. Pirsig
3 min read
Views
691
Very often applications support multiple tenants. A financial accounting solution used by a CPA is a typical example for that. However, there are other scenarios where the ability to switch between several tenants/customers is required. The following note gives an overview about the options with...