Thursday, August 18, 2016

30 Years of Citizen Developers

More than three decades ago, the Rapid Application Development platform known as Magic burst upon the scene and became immediately popular as the PC revolution was in full force. Thousands of citizen developers known as “magicians” working on DOS machines created applications quickly and easily accessing ISAM databases and displaying results on green screen monitors. By the mid-1990s, Magic had gone cross-platform and enterprise and global. Its citizen developers had grown-up and were winning all the international development competitions. Suddenly, big businesses started using Magic too and the RAD tool phenomenon of the PC became a mainstay for creating serious business applications that served millions of users and handled billions of dollars in transactions on enterprise servers.

Magic extended its citizen developer approach to application integration as well. Starting in 2003, business analysts could now use “Magic” to connect third-party applications behind the scenes. This RAD approach to application integration began saving companies millions of dollars as they streamlined business processes, unified information and reduced processing errors without hiring a team of point-to-point integration programmers to make it happen.

It is with more than a little amusement then that the Magic community observes the introduction of new “low code” platforms and "click not code" solutions designed to solve a problem that has been largely solved for decades by what has always been known as a “no code” platform. Gartner has invented a new term, “citizen developer” to describe app developers who are basically users that create apps using enterprise approved app platforms.

For enterprise IT departments considering introduction of low code platforms, a good hard look at a no code platform might provide some reassurance in the form of a proven alternative. The Magic xpa Application Platform and the Magic xpi Integration Platform of today are marvels in terms of their ability to simplify the complexity of underlying environments. Using no code visual interfaces and table driven app creation techniques, a citizen developer can make software and integrate software thanks to several common virtues:

Metadata Driven Development. Why write code to manipulate data when you can instead implement visual business logic directly that creates metadata instructions that can be run as an application? It’s called Magic for a reason: because something special happens behind the curtain; you never see the hard work. You just ask for what you want: “Abracadabra.”

Reusability and the Right Degree of Granularity. Call them objects, components, models, templates, subroutines or services, software that can called and reused by other software is virtuous by reason of its efficiency. Magic’s platforms provide deliver reusability as a core characteristic of their internal architectures and design studio experiences. Apps and integration flows are easily built by leveraging granular objects, components, models and so on. The beauty of the platform is that the granularity of the objects is not so fine as to require constant assembly or so course as to be constrained in their flexibility. With just the right sized building blocks, you can create anything without the effort of coding from scratch.

Event-Driven Architecture. A revolution has occurred in the IT world from an old batch-oriented approach to processing to new event-driven architectures with real-time or near real-time asynchronous processing and simultaneous support for long running processes. In a service-oriented world, the Magic platforms deliver responsive, event-driven environments that allow business applications to respond immediately to requests and changes.

In-Memory Computing. Both Magic xpa and Magic xpi leverage in memory computing techniques through the use of an In-Memory Data Grid. Leveraging virtual spaces of shared memory and processing an active-active clustering occurs whereby performance and operational integrity are fully optimized. Parallelism and redundancy results in elastic scalability and high availability.

These metadata-driven, reusable, event-driven, in-memory application and integration platforms are producing mission critical apps and supporting business critical integration processes. A virtuous platform in the hands of citizen developers can be a beautiful thing. With more than 30 years of expanding use, constant improvement and real-world bullet-proofing, Magic now provides the most advanced application and integration platforms for citizen developers. Why low code when you can no code?

Tuesday, May 24, 2016

Citizen Developers and the Runtime Form Designer in Magic xpa 3.1

One of my favorite new features in Magic xpa Application Platform 3.1 is that you can now make changes to the form during Runtime mode. In the past, forms were designed by developers and determined the screens seen by the end user. This is still true, but a developer interested in democratizing their application can enable the runtime form designer so that users have control in a way that makes them a kind of "citizen developer". It requires no special effort in Magic xpa by the developer because the runtime form designer features are built into the platform. Magic xpa deployment allows the user to get a highly personalized screen that uses their personal forms rather than the generic ones identified by the users. 

The Runtime Form Designer provides the citizen developer with the following end user runtime functionality:
End users gain the ability to move controls on the screen by dragging and dropping them or by using the
keyboard. You can even move controls from one tab to another.
The end user can even resize, hide (and restore) controls as well as change some of the controls’ properties, such as Color and Font. The changes can be saved for each individual user or in a central location so that they can be accessed by other similar users.

In order to create the Runtime Form Designer that the developer still had some overall control but didn't have to get bogged down in programming for the forms in runtime mode, the number of new functions in Magic xpa are kept to a minimum. Basically the developer has to make four decisions. Do I want to enable the Runtime Form Designer? Do I want users to be able to hide, unhide and delete controls? Do I want users to be able to share form designs and if so where? And how do I want to enable the user to clear the persistency of the controls?

To deal with these decisions, the Magic xpa application developer now has access to the following three new elements that are provided to use the Runtime Form Designer:

  • The OpenFormDesigner event in Magic xpa opens the Runtime Form Designer. This event has an optional parameter, Admin mode, to define whether the end user can delete controls or see hidden controls.
  • The ControlsPersistencyPath environment setting – This setting governs the location of the files generated by the Runtime Form Designer.
  • ControlsPersistencyClear function – Clears the persistency of the controls.
Click here to download the Magic xpa APplication Platform 3.1 Single User Edition

Tuesday, January 12, 2016

The Magic Blog: Vote for Magic in the 2016 DeveloperWeek Awards!

The Magic Blog: Vote for Magic in the 2016 DeveloperWeek Awards!: DeveloperWeek  - the largest DevTech event series in San Francisco - is running its annual crowd-sourced awards program to identify the best developer tools.

Your votes will help to grow the Magic community and support the tools you know and love. Thanks for taking a moment to make our Magic community stronger!

Friday, December 11, 2015

Elements of An SLA Agreement

Charting a Service-Level Agreement (SLA) is an important part of establishing quality standards for use of Information Technology in business processes. Realistically, the IT department set standards to acquire or provide basic services at or above the levels defined in the SLA. You need to gauge the importance of the business process and its components to your customers and users. With this understanding you need to make certain that services are maintained at or above the expected level, not simply by setting expectations but by taking measures to ensure delivery.

Things can go wrong. That means that in order to meet or exceed the expectations in your SLA, your going to need error recovery and alternate business processes established for exceptions management. Don't simply copy the service delivery procedures of another IT department, design the service delivery processes to match your resources and requirements. Make certain there is an even-handed way to handle incoming service tickets, projects and problems in a way that applies priority and urgency appropriately.

To make an SLA work effectively, make sure there is a system of rewards in place for good service as well as incentives for technical and non-technical parties to work together. Utilize multi-channel communications and preferred methods for communicating service issues. Solve problems digitally and automatically whenever possible. Use your information technology staff as service ombudsman to make certain that issues that arise  receive the proper attention and in a timely manner. Make certain they have whatever they need in order to support delivery on your SLAs.

Wednesday, October 14, 2015

Magic xpa Now Includes Windows 10 Support

For those who have been following the minor version releases of Magic xpa Application Platform 3.0, we are now up to Magic xpa 3.0a. The big news with the latest minor release is that Magic xpa 3.0a now officially supports Windows 10Magic xpa was tested and is compatible to work with Windows 10. The support document for Magic xpa lists the operating systems on which a Magic xpa application can run, the databases it can access, the supported Web servers for running Web applications, the supported middleware for messaging functionality, and the supported frameworks and protocols for advanced integration capabilities. When referring to the Microsoft® 32/64 bit Windows operating system, all platforms supported by Microsoft® are also supported by Magic xpa. The list describes the platforms that are actually tested during the QC process and Windows 10 has been specifically tested.

A few other improvements were squeezed into the Magic xpa 3.0a minor revision. An array size’s calculated value has been increased. First off, the default calculated value of the data source’s array size was increased in order to improve performance. In addition, a new environment setting, Cache size for array fetching(kb), was added to the Preferences tab in order to define the cache size to be used when fetching records. Performance improvements have been achieved in the Space Gateway. The performance of several different aspects of the Space gateway were improved. These are transparent to the developer and user. Support for array fetching has been added in the Space Gateway. 
In the Space gateway, records are now fetched by the array size defined for the data source in the Data Sources repository or the Data Source properties. This functionality reduces network calls and improves performance. It is now possible to access a batch task as a selection program. It wasn't included in the initial 3.0 release and is primarily offered for backward compatibility.

While Microsoft might not be making much on sales of Windows 10, the adoption rate is huge, with 75 million activations in less than a month (that's 6.6% of all PCs). This is a fast rate of adoption, especially by Windows 8 standards, and according to NetMarketShare, Windows 10 (which was released in July) has enjoyed a faster adoption rate than previous versions including Windows 7.

Magic xpa 3.0 is a great Windows 10 development tool. Use Magic xpa Application Platform to build highly secure, scalable and interoperable applications for Windows 10 and cross-platform operating systems for desktop client, rich internet application / rich client, Web client or mobile clients.

For additional benefits of developing data-centric business and enterprise applications for Windows 10 on the Magic xpa application platform visit the Magic website. 

Thursday, June 25, 2015

Customer Experience vs User Experience

Well, the government has spoken and there is a difference between user experience and customer experience after all.

"User Experience (UX) deals with people interacting with your product and the experience they receive from that interaction. UX is measured with metrics like: success rate, error rate, abandonment rate, time to complete task, and (since we deal in digital) clicks to completion.

Customer Experience (CX), in contrast, encompasses all the interactions a person has with your brand. It might be measured in: overall experience, likelihood to continue use, and likelihood to recommend to others. In essence, UX is part of a broader CX, but CX contains some aspects outside of a product that UX does not."

At our recent Magic Software Users Conference 2015, Eric Overfield of PixelMill presented on the subject of user experience. Eric brought an experienced perspective that has seen design trends come and go. His discussion on “The Thumb Zone” was particularly interesting to a number of Magic developers who quite frankly admitted that they were still designing for mobile with a “mouse and keyboard” mindset.

As discussed in the usabilla blog, left handed and right handed thumb zones are a mirror of one another. In some ways, the thumb zone is problematic because it falls smack dab in the middle of the screen where the eye naturally wants to see content, not icons. There is a natural conflict between designing for the center of interest vs the thumb zone. For this reason, I believe a good design will often allow primary content to fill the center of the screen after an icon in the thumb zone has been selected. The icons that remain relevant may then need to be positioned in the “stretch” zone of the thumb so as to allow the eye to settle in on content that uses the center of the screen.

Good mobile design is essential to mobile customer experiences that help transform business processes in a positive way. Whether software is a part of your business or software is your business, designing apps that engage customers and enhance customer experiences are essential to business process success.

Wednesday, June 17, 2015

Magic User Conference

The Magic Software Users Conference 2015 held in Huntington Beach, California, USA from May 31- June 3, 2015 was a great opportunity to learn about Magic Software technology, network with other Magic users and enjoy a great Southern California Beach Resort destination.

The conference began Sunday Night with a "Spice IT Up" themed Latin America welcome reception for Magic Software Users from 11 countries. This gathering time allowed longtime members of the Magic community to catch up and to meet the many new customers who were participating this year as well.

Monday's general sessions were very well received with a Roadmap Presentation by Ami Ries, VP R&D and QC for Magic Software Enterprises, Ltd. He was joined by Magic xpa Product Manager Eyal Rozenberg who unveiled "the Power of 3" in the newly released version of Magic xpa 3.0. With the general availability of Magic xpa 3.0 on May 12, the conference was perfectly timed to bring fresh capabilities and new information to developers. Not the least among the new features in Magic xpa 3.0 is the In-Memory Data Grid and In Memory Messaging Layer. Ami Ries also led a high level session on In Memory Computing that was relevant for both Magic xpi and Magic xpa users. The conference general sessions included an excellent presentation on User Experience and GUI Design Standards by Eric Overfield of Pixelmill. Numerous conference attendees commented on how much they appreciated having an outside expert on GUI design participate in the conference. The group also heard from David Schwartz, President of ABI on the topic "Magic and My Success." His presentation highlighted the development and evolution of the ABI Mastermind system which supports more than a million employees working at venues across the United States and Canada and supporting more than half of all major league hockey, basketball, baseball and football stadiums and arenas.

Tuesday's sessions took place in four tracks: Application Development, Enterprise Mobility, Enterprise Integration and a CIO and Executive Forum track.  The themes started on the first day continued into the tracks with more in-depth in-memory computing sessions in the Magic xpi and Magic xpa tracks. An in-depth GUI design standards workshop also was conducted with Eric Overfield of PixelMill and Magic developer Vova Haimov.

Other highlights included Bobby Culbertson of Superior Industries discussing integration with the platform used by and sessions on JSON integration and PDF generation using Magic xpi Integration Platform's XSLT adapter.

Developer Experience was also on the agenda with a great introduction to the use of Visual Studio form editor in Magic xpa 3.0 by Product Manager Eyal Rozenberg. Magic developers took full advantage of the opportunities for 1:1 meetings with Magic employees and one another, all scheduled by the helpful Magic staff at the registration desk.

Ideas are already being gathered for next year's conference. Please contact Glenn Johnson at to propose a speaking session or provide any other input for 2016.