Try our new research platform with insights from 80,000+ expert users
Owner at a legal firm with 1-10 employees
Real User
Enables uncommonly fast development speed, bug-fix productivity, and connectivity to multiple databases
Pros and Cons
  • "Typically an experienced Magic developer can do the work of two to three experienced C#/.NET developers. Customers are amazed at how quickly most new features can be added and bug fixes implemented. I have worked for four employers - including myself - using Magic, and in most instances, bug fixes are addressed and deployed in under six hours."
  • "Speed of development and database connectivity (MS SQL, Oracle, DB2, Btrieve/Pervasive PSQL, ODBC, MySql, and SQLite)."
  • "The ability to use the same development environment for both Windows and Android applications. Magic xpa also supports iOS applications."
  • "The configuration of the xpa RIA mobile environment is complex and a discouragement to new developers. Also, Magic's documentation can be less than complete at times which leads to frustration for new developers. (I encourage new Magic developers to join the Magic Users Group)."
  • "The Android environment is missing a number of functions for file/folder manipulation, sending receiving text messages (SMS) and the menuing options are limited. For now, it is left to the developer to write his/her own Java functions to include in the APK."
  • "It is missing basic charting tools for bar/pie/series charts. It is left to the developer to acquire and deploy charting tools or the customer to purchase a third-party reporting tool to produce charts."
  • "I would like to see a spell checker included with optional language support. Currently, this has to be purchased from a third-party."

What is our primary use case?

Police records management and emergency nanagement.

The police application is an xpa 3.2 Windows client/server solution that uses Pervasive PSQL and utilizes remote desktop services for remote access.

The emergency management solution also uses the xpa 3.2 and Pervasive PSQL Windows client/server solution, along with an xpa 3.2 RIA mobile Android application for field reporting of road closures and utility damage.

How has it helped my organization?

Typically an experienced Magic developer can do the work of two to three experienced C#/.NET developers. Customers are amazed at how quickly most new features can be added and bug fixes implemented. I have worked for four employers - including myself - using Magic, and in most instances, bug fixes are addressed and deployed in under six hours.

When shops decide to move away from Magic to other environments, one of the thorniest issues they immediately confront is customer dissatisfaction with turnaround time on bugs. When talking to a prospective customer this is a huge advantage.

My company has always used Magic. It allows me to respond faster to customer needs than my competitors. Magic is built for data manipulation and is extremely efficient at it. My applications include their own reporting, auditing, and Help Desk features, written in Magic. There is no need for third-party reporting tools (except for charting), Help Desk solutions, or a DBA to query logs.

Years ago I was working on a law enforcement data sharing project and a police chief was skeptical that I could pull off everything promised since I was the sole developer. In an attempt to prove his point, he asked me to add a field to a data entry form and include an error check for a range of values. He was willing to break for lunch to give me time to complete the task. I asked him to pour himself a fresh cup of coffee and it would be done. By the time he sat down the requested changes had been implemented and were on the screen for his review. It turned out he had been asking his current vendor for similar changes for almost two years. He has been a customer since 2001. You will find this to be a common story among Magic developers.

What is most valuable?

  • Speed of development and database connectivity (MS SQL, Oracle, DB2, Btrieve/Pervasive PSQL, ODBC, MySql, and SQLite).  
  • The ability to use the same development environment for both Windows and Android applications. Magic xpa also supports iOS applications.

What needs improvement?

  • The configuration of the xpa RIA mobile environment is complex and a discouragement to new developers.
  • Magic's documentation can be less than complete at times which leads to frustration for new developers. (I encourage new Magic developers to join the Magic Users Group).
  • The Android environment is missing a number of functions for file/folder manipulation, sending receiving text messages (SMS) and the menuing options are limited. For now, it is left to the developer to write his/her own Java functions to include in the APK.
  • It is missing basic charting tools for bar/pie/series charts. It is left to the developer to acquire and deploy charting tools or the customer to purchase a third-party reporting tool to produce charts.
  • I would like to see a spell checker included with optional language support. Currently, this has to be purchased from a third-party.
  • There is also an issue with table control sorting of data that does not result in an additional database call.
  • The ability to display page up, page down, top and bottom buttons along the scroll bar would make my mouse-reliant customers happy.
Buyer's Guide
Magic xpa Application Platform
May 2025
Learn what your peers think about Magic xpa Application Platform. Get advice and tips from experienced pros sharing their opinions. Updated: May 2025.
856,873 professionals have used our research since 2012.

What do I think about the stability of the solution?

As with any development tool, some versions are better than others. I have never had a problem with application's stability, but I have also never deployed a .0 release.

What do I think about the scalability of the solution?

Scalability is not a Magic issue, it is dependent on the RDBMS.

How are customer service and support?

Tech support has become more responsive over the years. In most cases, they want an example of your code, which is reasonable, but not always practical. I wish they would be more willing to remote in and take a look at the problem.

Magic offers free training classes at their South California office. It would be helpful if they expanded the training of locations to the Mid-West, Northeast, and Southeast. Additional training facilities would encourage more developers to try it if they could get three days of free training. The best place for newcomers seeking advice or help is the Magic Users Group.

How was the initial setup?

The client/server configuration is straightforward. The RIA mobile setup and configuration of your development environment to generate an APK is challenging. RIA requires a web server be properly configured, which the installation handles fairly well, but not completely. If you decide to set up your web server after installing Magic, it is a manual operation. I recommend going through the experience of manually configuring the web server and broker (middleware between the web server and Magic runtime engine) to fully understand how all the constituent parts work together. It is invaluable for troubleshooting problems at a customer site.

Generating an Android APK that includes custom Java and company branding takes some time for a non-Android developer to master. It requires the Java SDK and Android Studio. When properly configured it works well, but it requires patience and determination to get there.

The Magic documentation has improved over the years, but can still be a bit fuzzy. MSE has started posting youtube "how to" videos which are helpful. I find the videos posted by users to be the most helpful. Magic also comes with a number of sample applications that demonstrate all the various features/functions. I highly recommend reviewing the sample applications.

What's my experience with pricing, setup cost, and licensing?

Magic is not the cheapest IDE out there. If you are considering Magic xpa, you should do a cost-benefit analysis to feel comfortable with your decision. The Magic sales staff is very helpful in providing pricing.

Which other solutions did I evaluate?

In 1994, Visual Basic and Power Builder were the other contenders. I went with Magic because of the number of development competitions it won at the time.

What other advice do I have?

I have been using Magic since 1994. I started with version 5.5 for a district attorney defendant-tracking system. Just two of us wrote an entire solution in six months, including data translation from a Sperry MAPPER system to Novell NetWare Btrieve. I have worked in versions 5.x, 8.x, 9.x, uniPaaS 1.8/1.9 and xpa 3.x.

The Magic community is relatively small and tight-knit. Perhaps the best resource available to any new Magic developer is the Magic Users Group on Groups.io. Members are incredibly generous with their time and willingness to share solutions. Group members organize an annual conference whose focus is purely technical.

Be patient and you will be rewarded. Magic is not a procedural language. It is designed to work with rows of data. If you understand how the Magic engine works, you will double your productivity within a couple of months.

Disclosure: My company does not have a business relationship with this vendor other than being a customer.
PeerSpot user
Senior Programmer at Benefit Solutions, Inc.
Real User
Enables us to change, fix, test, review, and deploy new code in hours instead of days
Pros and Cons
  • "Being able to make changes to existing programs to comply with last minute changes in requirements, and/or being able to fix, test, review, and deploy new code in a manner of hours instead of days, definitely gives us a huge advantage over our competitors and this is only possible thanks to Magic’s speed of programming."
  • "Magic’s unique approach to development ensures that the programmer stays focused on the objective of the program (i.e. display all customers in California), instead of the repetitive tasks that surround it (i.e. connect to database, open customers table, create the query to retrieve records within the specified criteria, fetch the result of the query, connect it to a data grid, etc.)."
  • "Magic’s Database Gateway allows the logic of the program to be isolated from the underlying database. This provides the flexibility not only to move existing programs to different database environments without the need to change the logic in the program but also allows the programmer access to different databases without the need to know how to "talk" to them."
  • "Without the need to compile code, the time spent in the development cycle is greatly reduced, allowing the programmer to test modifications to a program immediately after they have been saved."
  • "Magic has a tradition, when it adds new technologies/features to the Magic development tool, to provide either no documentation or documentation that does not provide an organized approach for bringing this new technology/feature to experienced Magic programmers."

What is our primary use case?

Magic xpa is the primary development tool for software that manages healthcare information for about 100,000 people. This information includes demographic data, employment history, coverages, enrolled plans, claims, payments, etc., and it is exchanged via a variety of media including paper forms, standard 832 files, and custom text files.

How has it helped my organization?

Being able to make changes to existing programs to comply with last minute changes in requirements, and/or being able to fix, test, review, and deploy new code in a manner of hours instead of days, definitely gives us a huge advantage over our competitors and this is only possible thanks to Magic’s speed of programming.

What is most valuable?

Three major features keep me working with Magic:

  1. Magic’s unique approach to development ensures that the programmer stays focused on the objective of the program (i.e. display all customers in California), instead of the repetitive tasks that surround it (i.e. connect to database, open customers table, create the query to retrieve records within the specified criteria, fetch the result of the query, connect it to a data grid, etc.).
  2. Magic’s Database Gateway allows the logic of the program to be isolated from the underlying database. This provides the flexibility not only to move existing programs to different database environments without the need to change the logic in the program but also allows the programmer access to different databases without the need to know how to "talk" to them.
  3. Without the need to compile code, the time spent in the development cycle is greatly reduced, allowing the programmer to test modifications to a program immediately after they have been saved.

What needs improvement?

Magic’s lack of documentation, in both the educational and technical fields, has been a thorn in my side since I can remember.

I worked for Magic at the US branch for several years as a consultant, as part of the tech support staff, and as the main instructor for both Magic xpa and Magic xpi.

I had to write my own study guide to be able to teach Magic v8.x, eDeveloper, uniPaaS and Magic xpa to people who were new to these tools. Magic’s own training material only consisted of either printed PowerPoint presentations inside a binder or a self-paced PDF document. The latter did not follow a clear programming methodology path or even instructions on what components to select during the first installation of the tool.

Magic has a tradition, when it adds new technologies/features to the Magic development tool, to provide either no documentation or documentation that does not provide an organized approach for bringing this new technology/feature to experienced Magic programmers.

I sometimes joke that while you could connect any two people on the planet through six degrees of separation, connecting any two Magic programmers would only need three degrees.

Most of the time new Magic programmers are the result of a company that already uses Magic as its programming platform hiring new developers because the old ones are retiring. At the annual Magic gathering, new faces are few and far between.

Magic has always struggled to bring new developers to its tools. The company has been working in the USA for more than 30 years and still cannot find a way to bring new people to its side of the fence.

For how long have I used the solution?

More than five years.

What other advice do I have?

I have been working with this tool continuously for the last 30 years. Since the good ol’ days of DOS and Magic v5.02, v5.5, v7.0, v8.0, eDeveloper, uniPaaS, and Magic xpa.

Disclosure: My company does not have a business relationship with this vendor other than being a customer.
PeerSpot user