Showing posts with label Magic xpa. Show all posts
Showing posts with label Magic xpa. Show all posts

Saturday, March 6, 2021

Hot Use Case: Mobile App Integration

 

Hot Use Case:

Mobile App Integration

Merit Service Solutions

Merit Service Solutions needed a mobile app to help direct snow removal providers to the parking lots that needed clearing. Clients like Walmart, Target and other major retailers needed fast deployment and "proof of delivery."

Merit Service Solutions used Magic xpi and Magic xpa to deploy a fully integrated mobile app. “We manage approximately 2000 customer sites and wanted a way to take advantage of today’s digital and mobile capabilities to streamline processes, and provide the best experience to our customers and our service providers. I am happy to report that Magic’s unique solution, combining both mobile and back-end integration under one technology stack, not only provided all the capabilities we demanded, it has also passed the test of an epic blizzard, enabling us to provide our customers with the timely services they expect, even under the most demanding circumstances.”

The app created included ability to find the lot to be serviced, log time, and record snow levels before and after service. This approach removed the guesswork in customer invoices and virtually eliminated  disputed invoices. 

Wednesday, May 24, 2017

Japan Understands the Value of Automation and Magic

Magic xpa Application Platform gained top market share in license sales in the Japanese market. According to the "Market Research for Next Generation Extra-Rapid Development Tools in 2017 (updated version)" report, published by MIC Research Institute Ltd., the Magic xpa Application Platform achieved a 39% share of the Japanese market in the sale of licenses in the category of execution engine type development tools.
Magic xpa's code-free application platform was highlighted as exceling in its service introduction, product functionality, development productivity, and cost performance. Other strengths that were emphasized were the product's reliability, stability, high level maintainability as well as its sales, development and support system for indirect sales partners. Read more here...

Friday, December 2, 2016

Writing Beacon Apps with Magic xpa

Beacon apps may be created for any number of reasons: streamlining access to physical devices and records; tracking things; tracking people; routing and navigation; and improved interaction with the Internet of Things (IoT). When creating mobile beacon apps with Magic xpa, the Magic developer can bring a number of benefits to an organization.

Beacons Make It Easier and More Secure to Access Things

Most of us are familiar with the manner in which Bluetooth technology can be leveraged to let you unlock your car without a key. Likewise, beacons can streamline access to everything from physical spaces to electronic records. A mobile app using beacons could eliminate extras like key cards and make proprietary systems and fobs unnecessary, saving the company and its employees time and money. Many of these business processes, are ideally suited to mobile apps running on Magic xpa. The mobile RIA interface in Magic xpa is more easily extensible across multiple devices meaning you only have to develop once for support of many different physical devices, operating systems and screen sizes.

Beacons Make It Easier to Keep Track of Things

Where’s my stuff? is a common question in business. What if you always knew where every piece of equipment was located without annoying codes to determine inventory? Beacons can be used to track valuable property for improved asset management. Magic mobile apps can be updated by the use of beacon technology and servers can also track locations of mobile app users based on beacon proximity. Mobile apps can also be used to locate, check-out and check-in assets. With Magic xpa’s automated database discovery, building tracking apps using beacons is greatly simplified.

In fact, with beacons, employees will spend less time tracking down the stuff they need to do their jobs. Location tracking apps are convenient for things like computers, but life-saving in places like hospitals where assets can not only be located but controlled remotely. It also enables companies to learn how assets are being used in order to plan more effectively, optimizing equipment purchasing, rental, utilization and attrition. Because Magic xpa can read in those pre-existing tables, building the app is fairly straightforward.

Beacons Make It Easier to Keep Track of People

Beacon apps can interact with customers and employees based on proximity to beacons. These beacons may also be mobile. For example, wheelchairs in an airport can be equipped with beacons. A mobile app can track not only where they are but also where the skycaps are. Based on where the skycaps and wheelchairs travel during the day, usage costs can be allocated to various airlines based on their actual use of pooled assets and people. Similarly, beacons enable employees to be aware of each other’s location. In a fire or disaster situation at a chemical factory, knowing which employees are near which beacon can literally become a matter of life and death. Of course, these would not be the first Magic xpa mobile apps that deal with location. Boston Medical Center uses Magic mobile apps all across its diverse campus comprised of dozens of buildings.

Beacons Make It Easier to Navigate

Navigation within a confined building environment such as an airport, library or hospital can be tricky. Wifi and cell dead zones run throughout. Bluetooth beacons can aid navigation in these tight spots. In-mall package delivery. Let’s say you’ve ordered a pair of glasses at your local Lens Crafters type store. Rather than wait for your glasses, you’d prefer to continue shopping in the mall. A valet app could be created that is able to send the valet right to your beacon location and deliver your new pair of glasses while you shop and without your having to return to the store. The app can then capture your signature as proof-of-delivery and store that information in the server for access in enterprise applications and databases.

Beacons Make it Easier to Control Your Environment

Beacons can help businesses become more efficient and secure, protecting and enabling employees, customers and assets without an army of manual resources. Beacons can help reduce heating and lighting usage when no one is present, place equipment in low power modes when mobile app users are not near the beacon, trigger online meeting programs when the key executive enters a meeting room, and activate and focus surveillance cameras when certain movements occur.


So How Do You Build Beacon Apps with Magic xpa? Magic xpi Integration Platform for JD Edwards and Magic xpa Application Platform offer mobile app development and integration capabilities needed for building and integrating beacon apps. While few companies have experience with beacon app integration using Magic xpa, all of the technical components are in place and it is basically just a matter of finding the business vision and use case that exploits these powerful capabilities. 

Tuesday, November 22, 2016

10 Reasons to Deploy Your Existing Applications as Rich Internet Applications with Magic xpa


10 Reasons to Deploy Your Existing Applications as Rich Internet Applications with Magic xpa

                                  Rich Internet Applications Extend Your Reach


With Magic xpa, Rich Internet Applications extend the reach of your business applications to locations anywhere on the Internet. Satellite offices, home offices, and your traveling workforce can simply connect to the Internet and access their applications.

           Rich Internet Applications Can Go Mobile


In addition to being able to access applications from desktop and notebook computers, Magic xpa RIA applications can be deployed on Windows Mobile devices, which opens up your business applications to your mobile workforce and field workforce in even more exciting ways.

          Rich Internet Applications Are Rich, As In Interactive


With a whole host of highly-interactive user interface controls built-in to Magic xpa, your applications have the kind of responsive up-to-date look and feel that users expect and need. This enhances the user experience leading to greater employee, trading partner and customer satisfaction.

Rich Internet Applications Are Rich, As In Media Intensive

In addition to all of the native graphical file formats supported from within a Magic xpa "form" or "sub-form", the Magic xpa RIA client can see all types of media types within a so-called "browser-frame." It allows you to display the kinds of rich media (pictures, sound, animation, video, etc.) that you are used to seeing in a web-browser without the overhead and anarchy of the browser itself. Which reminds us…

               Rich Internet Applications Are Browser-Free


Web browsers impose all kinds of interaction uncertainties and security concerns. The advantage of Magic xpa’s approach to RIA is that is browser-free. You don't have to worry about other windows popping-up, the back button, or security violations due to the end-users manipulation of the security settings on the browser or their appetite for cookies, exposure to viruses, adware and other risks.

 Rich Internet Applications Don't Require Terminal Servers (such as Citrix)


Since Magic xpa extends your reach across the Internet, you won't need layers of expensive third-party technology just to let your users see your applications. That saves money, reduces architectural complexity and simplifies installation.

Rich Internet Applications Can Be Built With Magic xpa Unified Development Paradigm


Magic xpa’s unified development paradigm means you don't have to develop complicated architecture for rich client and server interaction, you don't have to use two different tools and programming languages – one for the client and for the server – because Magic xpa Studio environment allows you to develop in a unified fashion for both client and server with automated management of technical and communication layers. That means all of the session contexts and caching are automated according to your application design. It's Magic, after all.

Rich Internet Applications Built on Magic xpa Can Access Local Client Resources


With Magic xpa,the applications you create can access local resources such as XML, databases, email and local files. In the real world of business, not all vital information sits on the server at a centralized data center. Sometimes you need information from the users' machine or access to things as simple as local printers or other I/O devices.

Rich Internet Applications Based on Magic xpa Are SaaS and Cloud Ready


Some companies want to be able to deploy the software applications they create to multiple users on a Software-as-a-Service model. SaaS models flourish with browser-free RIA like Magic xpa because of the heightened security and really all of the reasons mentioned above.  It's great to know that you can deploy your RIA applications today knowing that you can take advantage of SaaS models in the future.


Rich Internet Applications Built In Magic xpa Are Magic!

Calling a business application framework "Magic" conjures up different images in different people's minds. In the best sense, those familiar with Magic Software know that it isn't about hocus-pocus or risky shortcuts, the long tradition of application deployment using Magic, eDeveloper and now Magic xpa is about scalability, reliability, transactional integrity and an innate developers' productivity that extends from our foundation as a rapid-application development environment. It isn't just about working with what you know, it's about knowing it will work. Magic Software Enterprises stands behind Magic xpa Rich Internet Client deployment mode with full support, professional services and a strong community of developers and customers ready to ensure your success. 

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

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. 

Saturday, May 2, 2015

The Power of 3: A New Kind of Magic is Coming



For those who have followed Magic Software over the last 30 years, you might want to write down this date: May 12, 2015. Magic has always been known for providing a more efficient and smarter way of computing. But in a quiet campaign, labeled “The Power of 3” Magic has announced the release of its latest version of the application development platform upon which the company was founded. It’s Magic xpa Application Platform 3.0. A new kind of Magic is coming.

Not that there has been anything wrong with the old Magic. Magic developers have been winning development competitions and powering businesses for three decades. From 2009 to 2014, company revenues grew 265%. The old Magic was pretty good.

Magic xpa 3.0 is a game changer, however. Magic xpa 3.0represents a transformation in the Magic application platform in three significant ways:

  • by being the first in-memory rapid cross-platform application platform.
  • by empowering mobile business transformation more efficiently than ever, and
  • by leveraging the familiar development platform of Visual Studio .NET.


As the converging trends of mobile computing, cloud computing and social media collide, the volume of data managed by business applications is expanding exponentially. Moore’s law was having trouble keeping up with Big Data. With Magic xpa 3.0, every Magic application will be an in-memory application. With in-memory power, applications can handle up to millions of transactions per second while experiencing sub-millisecond latencies, high availability and 100% operational integrity.

Magic xpa 3.0 also delivers unprecedented mobile app development capabilities to Magic developers who can generate apps for iOS, Android, Windows, Linux, and even legacy environments like IBM i.
And with the release of Magic xpa 3.0, Magic developers will be working in Visual Studio .NET for the first time to build the presentation layer of their applications in the Visual Studio form editor.

Yes, a new kind of Magic is coming. May 12, 2015 will be a very good day.

To learn more about Magic xpa Application Platform, you are invited to attend the Magic Users Conference 2015 in Huntington Beach, California May 31, - June 3, 2015. The detailed agenda and registration link can be found here.


Thursday, April 9, 2015

Sending Your People to the Magic Software Users Conference 2015

There are more reasons than ever to attend the Magic Users Conference 2015. Here are a few suggestions that might help towards making the case to management for your participation. As soon as you get the go-ahead, be sure to register.



  • This is one-of-a-kind education experience. With education sessions in dedicated breakout tracks for Application DevelopmentEnterprise Mobility and Enterprise Integration you have access to more Magic education than in any other setting. Be sure to send at least one person from your organization for training in each track: App Development, Mobile Apps and Enterprise Integration.
  • You are an asset to your company. All assets require maintenance and enhancements. If instead of being a person, you were a piece of machinery, part of the corporate budget would go towards maintaining and upgrading you. You are an asset to the company. They should be investing the same percentage of budget towards maintaining and upgrading your skills as an IT manager or developer as they do for tangible corporate assets.
  • Offer to train others in what you learned when you return. You can pitch your trip to a conference as a way to bring back skills and knowledge to the rest of the organization. If you have any experience in training or teaching, you can use that as your justification to attend instead of other co-workers. Get extra copies of the tutorial notes from other sessions.
  • Trip report. Arguably one form of teaching others, the trip report is a write up of the sessions you attended, written for other folks in your group. The best trip reports make it easy for folks to dig up the right reference, or trigger people to come ask you questions. There’s rarely much value in 10 page trip report documents: no one reads them. Instead, a 2 or 3 page summary, with URLs and pointers to stuff for specific questions gets much more mileage.
  • Connect the value of the conference to business goals. If ease of use or customer satisfaction are company or division goals, sending folks to conferences on those subjects will help pull in more expertise and knowledge towards helping the business. This argument puts less of the focus on your professional goals, and more on the company.
  • Networking. One of the reasons to send people to conferences is to network with other businesses involved with Magic technology. We have an entire area set up for one-to-one meetings with Magic R&D, tech support, professional services, and business representatives. The Magic Software Users Conference networking opportunities are unbeatable; you are attending sessions broken down into specific tracks for the products you use and therefore are surrounded by individuals of great value to your network. Networking can aid in business development, problem solving, recruiting and innumerable other ways.
  • Professional development. If you have career discussions with you manager, tie your career goals and future development to specific kinds of training or growth opportunities that you need. This year at the Magic Software Users Conference, we have an entire professional development track of education that ties into your career directly. While this year’s session schedule is established, you can still volunteer to contribute to a session presentation on the agenda. 

Wednesday, July 16, 2014

A New Release for the Magic Application Platform



Ready for a Shiny New Magic App?

Magic Software has released Magic xpa 2.5, the new version of the application platform that readers of this blog have known and loved for a long, long time. In addition to the new version, a new Mobile Accelerator Framework has been unveiled.


The mobile accelerator framework includes capabilities for improved user experience design, an application panel for tile-based menus, a log-in screen generator, enhanced charting for mobile, Google maps integration for location based services, and an application audit trail utility.

As announced in today's press release: "The proven, code-free, metadata-based Magic xpa Application Platform provides an easy-to-use, highly-productive and cost-effective development and deployment environment that lets organizations and ISVs quickly create multi-channel mobile and desktop business apps. Mobile enhancements in the Magic xpa 2.5 release include:

Enriched User Experience: New form animation and color options, enhanced navigation features including native tab bars and navigation drawers, support for customized keyboards and additional native controls.

Greater Platform Extensibility: Streamlined integration between the Magic platform and native code lets developers add more native capabilities.

Improved Developer Productivity: Improved native integration environment makes developers more productive.
Push Notifications: Developers can add push notifications across iOS and Android devices.

Support of Additional Databases and Technologies: Compatible with latest database versions (e.g. Oracle 12) and technologies (e.g. message queuing services).

Magic is also introducing its Mobile Accelerator Framework that includes pre-built component-based development modules and best practices. The reusable components speed development and reduce resources required to create multi-platform mobile applications.

Magic Mobile Accelerator Framework contains standard components for a wide variety of important features, including: User Interface and Display, Navigation, Graphs and Charting, Location Services, Synchronization, Device and Application Auditing, and more. More information about Magic’s new Mobile Accelerator Framework can be found on the Magic website."

Tuesday, March 18, 2014

How-To Make the Case for the Magic Users Conference 2014 in Huntington Beach, California

These days it’s harder for folks to justify attending conferences. Here are a few suggestions that might help towards making the case. As soon as you get the go-ahead, be sure to register.


  • This is one-of-a-kind education experience. With education sessions in dedicated breakout tracks for Application Development, Enterprise Mobility and Enterprise Integration you have access to more Magic education than in any other setting. Be sure to send at least one person from your organization for training in each track.
  • You are an asset to your company. All assets require maintenance and enhancements. If instead of being a person, you were a piece of machinery, part of the corporate budget would go towards maintaining and upgrading you. You are an asset to the company. They should be investing the same percentage of budget towards maintaining and upgrading your skills as an IT manager or developer as they do for tangible corporate assets.
  • Offer to train others in what you learned when you return. You can pitch your trip to a conference as a way to bring back skills and knowledge to the rest of the organization. If you have any experience in training or teaching, you can use that as your justification to attend instead of other co-workers. Get extra copies of the tutorial notes from other sessions.
  • Trip report. Arguably one form of teaching others, the trip report is a write up of the sessions you attended, written for other folks in your group. The best trip reports make it easy for folks to dig up the right reference, or trigger people to come ask you questions. There’s rarely much value in 10 page trip report documents: no one reads them. Instead, a 2 or 3 page summary, with URLs and pointers to stuff for specific questions gets much more mileage.
  • Connect the value of the conference to business goals. If ease of use or customer satisfaction are company or division goals, sending folks to conferences on those subjects will help pull in more expertise and knowledge towards helping the business. This argument puts less of the focus on your professional goals, and more on the company.
  • Networking. One of the reasons to send people to conferences is to network with other businesses involved with Magic technology. The Magic Software Users Conference networking opportunities are unbeatable; you are attending sessions broken down into specific tracks for the products you use and therefore are surrounded by individuals of great value to your network. Networking can aid in business development, problem solving, recruiting and innumerable other ways.
  • Professional development. If you have career discussions with you manager, tie your career goals and future development to specific kinds of training or growth opportunities that you need. This year at the Magic Software Users Conference, we have an entire professional development track of education that ties into your career directly. While this year’s session schedule is established, you can still volunteer to contribute to a session presentation on the agenda. 

Wednesday, March 12, 2014

So you want to develop Mobile Apps with Magic xpa? Which app mode is best?

One of the great advantages of developing with Magic is the easy portability of your business logic to any client and server device supported by Magic’s future proof platform. When you decide to deploy on a mobile device, there are three primary options for developing your application so that it may be deployed on a mobile device. They are not all equal and careful consideration should be given, especially if you are considering an approach other than native. While these considerations have little to do with Magic, they do have a whole lot to do with the deployment mode itself. Since you may have to live with your decision for a long time. I suggest you think it through carefully and consult with Magic Professional Services for the best personal guidance. But in general, here are some key considerations:

Browser Apps. – A Browser app uses the mobile internet browser of the device. There are advantages to this method in that if you already have a browser application, it can be deployed readily. On the other hand, your application will not look like a native mobile application. You will also have limited, if any, access to the mobile device’s functionality, such as the camera. HTML5 browser apps use merge functionality and therefore the user interface development is not as automated with this approach. Main advantage: maximum portability. Primary disadvantages: Security, Cumbersome Development, limited third-party access to device features, unsettled protocol standards, non-native look and feel may seem strange to users.

Hybrid Apps. – The interface is a mixture of a native application, JavaScript and HTML5. As an example, you may be using a browser control to display a PDF or SharePoint Web Part but using routine Magic programming techniques to design the native UI features. In this case, you have also have full access to the local device features within the native portion of the app mashup but the browser control based portion is subject to the same limitations as browser apps. Advantage: Flexibility to use web features and extensibility of those features across devices. Disadvantages: Requires multiple skillsets, user interface may appear inconsistent, greater effort and planning required for building screens that mashup well. Advantages: Leverages the best of both worlds. With the right mix, an app can still have a native look and feel while using some non-native features. Best for apps that are mainly native but may need to leverage just one HTML5 frame or for apps that are fully HTML5 but need to meet the requirement of being deployed in a native container other than a browser.

Native Apps. – This is an app with a native mobile interface and full access to supported  device features such as camera, address book, GPS, etc. Native apps are generally regarded as more highly adopted by users. With Magic xpa, native apps are also the easiest to create and have the great advantage of being portable to all supported clients: BlackBerry, iOS, Android and Windows Phone. Advantage: Greater user satisfaction with true native look and feel, speed of development, multiple device and OS support. Disadvantages: For best results, a UI designer may recommend the additional effort of device specific designs. 

While your circumstances may dictate the choice of any of these mobile app types as being best for your situation, in general and when making the choice of mobile app deployment modes for Magic xpa mobile apps without pre-conditions it is recommended to develop native apps. 

Ready to learn more? Join us at the Magic Users Conference, June 2-4, 2014, in Huntington Beach, California, also known as Surf City USA

Monday, August 26, 2013

Reason # 20: We See Sharp So You Don’t Have to C#

20 Reasons to Migrate Magic eDeveloper, uniPaaS and Magic xpa to .NET by Upgrading Rather than Converting

I’ve said it before, at Magic “we see sharp so you don’t have to C#!” Others have said that by upgrading to Magic xpa, you “combine the wisdom of the past with the power of the future!” But let’s face it, these are just marketing slogans. Behind the slogan, however, is a truth born out of decades of effort by Magic and our customers in what can only be acknowledged as very smart technology. With Magic xpa you benefit from the combined wisdom of our community of users, our vision for the future and our long-term staying power and commitment to your support.

I’ve been asked: “What’s the best way to migrate a uniPaaS application to .NET?” By upgrading an older Magic application to Magic xpa, you will actually merge your knowledge, experience and everything you love in our platform with all the advantages of the .NET Framework and more. How can this be true? Because Magic xpa today is fully .NET based and yet it is not bound by the limitations of C# or ASP. Magic xpa should have been named magic.NET++. Then all would have been clearer.

Magic xpa provides full .NET Framework compliance and enables full integration with Microsoft and 3rd party .NET assemblies, controls and more. This brings a more attractive user interface with a modern look and feel. Our community vision has called us to make Magic xpa mobile-ready. That means you can now leverage the same development effort for all mobile operating systems (iOS, Android, BlackBerry, Windows Mobile) and devices (smartphones, tablets). The comprehensive aspect of our Enterprise Mobility Solution means we can also offer real-time back-end integration and mobility management services to our customers. And by upgrading, you help to make your existing applications future-proof because Magic xpa is constantly enhanced with new features and technologies to meet market demands and business requirements. Unlike code conversion companies that have no legitimate long-term strategy, Magic has a commitment to you and continues to provide all the support you need. Our large active developer community includes more than 3000 independent software vendors. We offer 24/7 global eService customer support, telephone support, maintenance, professional services, and unparalleled access to R&D.


For many of you reading this, your uniPaaS or eDeveloper application has served you well, but you’ve decided it’s time to upgrade. An upgrade allows you provide more features and functions leading to a better user experience. With the rise of smartphones, enterprise mobility, and BYOD, you really need to support mobile access for multiple devices and operating systems. An upgrade to Magic xpa will preserve your past investment. Upgrade to the latest version to Magic xpa and you will benefit from our mobile-ready application platform and continuous feature and technology enhancements that let you outperform the future.

But you need to beware of Other .NET Migration offers that leave you out of this community, close you off from this vision and abandon you with no real support.

Other vendors may offer .NET migration but beware, you will not be moving to a pure .NET engine, you will be locking yourself to their engine. It is simply impossible to do everything Magic does (as summarized in our twenty reasons) without proprietary or untested and unproven C# library extensions that go far beyond simple .NET. Ask yourself, what will happen when I need support? How will I migrate beyond this point? Code generators offer terminal migration and no vision for the future or commitment to platform improvements. Who will lookout for your future needs? And how will you handle the need to provide mobile enterprise apps and to add other new features and technologies?

With Magic you get the best of all worlds – full .NET compatibility, a comprehensive and cost-effective mobile-ready solution, and continuously enhanced features and technologies that enable you to best meet the demands of today and tomorrow. And I simply cannot understand the logic of moving backward to C#.

With all due respect to people who collect garbage for a living, I do not want to be a garbage collector. Moving from the Magic xpa application platform to a C# pile of code is like moving from a beautiful mansion to a garbage dump.

The frustration of programming in C# is that you spend so much of your time doing unpleasant things, like garbage collection,  that you are forced to spend less time on your real applications, more overtime evening and weekend hours working on non-productive code, or both. I don’t make this stuff up, folks. Microsoft’s “Conclusion” is very clear: “The .NET garbage collector provides a high-speed allocation service with good use of memory and no long-term fragmentation problems, however it is possible to do things that will give you much less than optimal performance.” In other words, stepping into a C# programming project means you are entering a highly risky world where you can easily spend excessive amounts of effort and end up with extremely poor performance.

C# is Microsoft’s archaic imitation of Java. We all know Java is an overly complex, bloated pile of code as well, but in C# Microsoft managed to release a language that is very poorly suited to today’s business challenges. Let’s be clear, C# is not a cross-platform mobile language. Depending on kluges like Mono, is a highly risky business strategy for creating mobile apps because the future of these approaches is highly uncertain. Mono recently had to get another $12 million to stay afloat and there is no indication that they have a strategy that will stabilize their rocky history.

C# is dependent on APIs in extension libraries. If you are only ever going to program for today’s requirements, this may be fine. But what happens when you need to run your applications somewhere new? Let’s be clear, C# is not a platform and it is not cross-platform. If you depend on API extension libraries, you are inviting yourself into a development dead-end.

Maintaining C# code is extremely difficult, especially when you are trying to work with someone else’s code. For example, a section of code can look exactly the same but behave differently depending on whether it is actually a class or a struct. I get nightmares just thinking about it.

An application platform provides a world of benefits and saves you from a world of hurt. At Magic, we see sharp so you don’t have to C#. 

For additional information on how an upgrade to Magic xpa is superior to Magic to .NET conversion please convert here.


Friday, August 23, 2013

Reason # 19: Enterprise Mobility Apps

20 Reasons to Migrate Magic eDeveloper, uniPaaS and Magic xpa to .NET by Upgrading Rather than Converting

Basically, anyone who would migrate their Magic application to C# would lose out on the built-in capabilities of the Magic application platform for server-side and client-side mobile apps.  The Magic RIA client for iOS™, Android™, BlackBerry® and Windows Mobile® is a native operating system (OS) application for any of these devices, implementing the Magic RIA client protocol. Using the Magic RIA client for the different mobile devices, developers can deploy highly interactive enterprise RIA applications on the various mobile devices. This is another critical reason not to migrate Magic eDeveloper, uniPaaS, or Magic xpato .NET in C# or ASP.
Magic xpa is indeed Mobile-ready and you leverage same development effort for all mobile operating systems (iOS, Android, BlackBerry, Windows Mobile) and devices (smartphones, tablets). All C# can do is act as a piecemeal backend server in an all too complex mobile kluge, whereas Magic xpa provides a comprehensive enterprise mobility solution including real-time back-end integration and mobility management services. Let’s look at the details.

Developing mobile RIA applications using Magic xpa requires the same skill set as developing desktop RIA applications. However, since the devices’ capabilities, user interface and expected user experience are significantly different from a desktop computer, there are obviously important differences that need to be taken into account when designing the application screens and planning the user interaction.

Devices differ in screen size, fonts, expected interaction device features (such as a camera and GPS), security related features and more. Consider, for example:

Screen size and orientation – Mobile devices have various resolutions and screen sizes in both landscape and portrait orientations.
Keyboard devices – Some mobile devices have a full QWERTY keyboard. In addition to a keyboard, some devices have a dedicated Menu key, an Esc key and a trackpad or trackball that are equivalent to the desktop keyboard arrow keys. The trackpad also provides a dedicated Fire action when pressed. Keyboard-only devices have a fixed screen orientation and cannot be rotated.
Touch devices – Some mobile devices have a touch screen or hover screen, some in addition to a full keyboard, and some without a keyboard. Touch devices support screen rotation and provide an on-screen virtual keyboard when a full keyboard is not available.
Windowing model – Mobile devices support a simple stacked window model. Each application can open multiple windows, but each new window is stacked on top of the previous windows and is inherently modal. As there is no mouse pointer, windows cannot be manipulated (moved or resized) by the end user. When an application is run, its main window (and subsequent stacked windows) occupies the entire device screen.
Form navigation using trackpad – Some mobile devices (such as BlackBerry) are optimized for keyboard navigation and input. Typically, the trackpad is used to navigate between fields on the form, while the Fire action is used to select values and perform actions. Unlike a desktop keyboard, there is no TAB key so there is no standard key to move to the Next Field or the Previous Field. All navigation between fields and inside a field (an Edit control), is done using the trackpad directional actions.
Form navigation using touch keyboard – Touch devices use an on-screen virtual keyboard. Some devices rely on tapping on form controls (fields) to navigate between the fields while others have Tab functionality in the virtual keyboard. The navigation inside a field (an Edit control), is done using a long press on the field content.
Context menu – The context menu is an important and central user interaction tool. Since the screen size is relatively small, it is common to perform most tasks using the context menu, instead of “wasting” screen space on buttons and on-screen menus.
Input modes – The Edit control is always in Insert mode. There is no equivalent Overwrite mode on the mobile devices.
Running in the background – The mobile devices’ OS is a multi-tasking OS, meaning that each application can run either in the foreground or in the background. The end user can see the running applications and switch between them. An application running in the background is not suspended and continues to run, but does not have access to the screen.
Offline mode  Magic xpa's new offline mode allows clients to continue working on their app even when the connection has been lost and restores the application states when the connection is restored.

C# has absolutely no capability for dealing with any of these challenges while Magic xpa has built-in support for smartphone and tablet features that allow you to build apps for multiple devices with ease.

For additional information on how an upgrade to Magic xpa is superior to Magic to .NET conversion please convert here.

Thursday, August 22, 2013

Reason # 18: Distributed Application Architecture

20 Reasons to Migrate Magic eDeveloper, uniPaaS and Magic xpa to .NET by Upgrading Rather than Converting

Magic xpa Application Platform utilizes a Distributed Application Architecture that offers a high level of choice between different computing environments. The interoperable nature of Distributed Application Architecture also means that Magic xpa applications have the ability to operate in multi-database, multi-platform, and multi-network data processing contexts. Using the simple interface common to all Magic xpa applications, every user, from any workstation, can access any type of local or remote database, execute queries, and update the data. As we shall see, Magic xpa Application Platform provides capabilities for distributed architecture, application partitioning, MDI, and secure communications out-of-the-box. When converting Magic eDeveloper, uniPaaS or Magic xpa to C#.NET, these advantages are lost.

In an environment where multiple computers are connected by a Local Area Network (LAN) or Wide Area Network (WAN), Magic xpa’s distributed application architectures automatically utilize a specific form of distributed processing.


Fortunately, when you install Magic xpa, you don't have to know how the distributed application architecture is set up, however you can adjust the settings if desired. The diagram below illustrates what is happening behind the scenes in Magic xpa's distributed application architecture.

The process begins when a client, such as a browser or Rich Client application, makes a request to the enterprise server. It does this via a requester, usually a Web server. Each client has its own requester.

The requester uses the broker to communicate with the Magic xpa enterprise servers. This is a Magic xpa Runtime engine (MgxpaRuntime.exe) functioning as an enterprise server. The broker scans its list of prioritized servers to find a server that is not busy and informs the requester which engine is available. If all the engines are busy, the event is added to the broker's request queue.

Once an engine has finished handling a request, the Runtime engine sends the request results directly to the client and notifies the broker that it is available to process the next client request. A check is made if there are pending requests in the queue which are for the same application as the one loaded in the Magic xpa engine. If there are pending requests, the broker extracts the requests with a higher priority and sends it to the engine.

The term application partitioning is used to describe the process of developing Magic xpa applications that distribute the application logic among two or more computers in a network. In the simplest case, the application can run on a single PC, as a remote service, and send task requests for execution to a server. In more advanced cases, the application logic can be distributed among several servers.
The first step in creating a partitioned application is choosing which components of the application run on the server system or systems. The criteria for making the choice are the components that would most benefit in performance and maintainability, if they were to run on the server. Note that the decision whether a program or task runs in the Requester Client or in the system need not necessarily be made when the application is designed, but the design must take this into consideration as only background-mode tasks are applicants for partitioning.

In Magic xpa, background enterprise servers and Online programs are multi-threaded. This gives you the ability to have parallel task execution in your projects.

Each thread accesses a different Runtime context, and does not interact with other threads. To work with multiple threads in Online programs, Magic xpa provides you with Multiple Document Interface (MDI) and Single Document Interface (SDI) functionality.

Communication between the Magic xpa client and the Web server (requester) is compressed while communication between non-Magic xpa clients (such as Web clients) and the Web server (requester) is not. The Magic xpa developer secures these communications using the https protocol. The https protocol (SSL\TLS) encrypts the communication between the client and the Web server and ensures that the server is a trusted one.

Communication between the requester, broker and engine is encrypted using Asymmetrical and Symmetrical encryption. No hard-coded keys are used and it is possible to define the Symmetric encryption mechanism and the key length.
For additional information on how an upgrade to Magic xpa is superior to Magic to .NET conversion please convert here.

Wednesday, August 21, 2013

Reason #17: Magic xpa has a Built-In Licensing Mechanism

20 Reasons to Migrate Magic eDeveloper, uniPaaS and Magic xpa to .NET by Upgrading Rather than Converting

One of the deficiencies of C# as it compares to Magic xpa is that it lacks any sort of licensing mechanism. Licensing is important for software publishers who want to use Magic xpa to create and protect commercial software. It also provides an added measure of security and risk prevention to corporate software users. Licensing mechanisms help to prevent unlicensed software usage and therefore reduce the risk that a company can be sued for copyright and other violations. When considering migration of Magic eDeveloper to C#.NET or ASP.NET or Java (or uniPaaS or Magic xpa), it is important to consider your need for licensing mechanisms.

 Magic xpa’s built-in license-metering mechanism uses your local area network (LAN) to communicate between Magic xpa instances running on different machines on the network. As part of our ongoing commitment to comply with the latest and highest industry standards, Magic introduced a new policy for the activation of our software licenses in 2012. The improved process, implements a highly secure, automated method of license protection, enabling you to better monitor the use of your licensed software.

You activate and receive your licenses after validating your Product Key on Magic’s License Activation Portal. The metering mechanism helps organizations avoid any unintentional violation of the license. The license-metering module ensures that no more than the allowed number of connections uses Magic xpa concurrently.

Magic xpa includes a license management scheme. The license management system comprises three main components: a License File, which stores all the license information for a specific site; the Magic xpa Engine, which uses data from the License File to allow or prevent user access to an installed Magic xpa product; a License Server, which provides license information to the Magic xpa engine, and also counts the active users of the installed product.

Magic xpa offers three license modes: no license, demo license and permanent license. The Magic xpa License File, when initially created, contains a default demo license. This demo license has no time limit but is limited in its functionality and cannot be used for the development and deployment of mission-critical applications. Permanent licenses have no time limit. When you load Magic xpa with no license, essentially without specifying a license name, the Single User Edition will run.

The single-user limitation is relevant for both the development of the application, as well as its deployment. Magic xpa Single User Edition provides almost the complete range of features found in the commercial edition of Magic xpa, excluding multi-user related features and capabilities.

Magic xpa also includes convenient mechanisms for counting licenses and running floating licenses. To count licenses, you can run MGSTATIONS.exe from the Magic xpa directory to verify the license count of a specified license on a network.

Magic xpa's default behavior is that you have to define the number of licenses that each server uses during the execution of a project. This number is checked across all the servers in a multi-project environment to ensure that it is within the license limitation. For example, if you have a license with 20 threads, and you have two projects running in a multi-project environment, you have to distribute the threads in advance. Project A might receive 15 threads, while Project B receives 5.

In a multi-project environment, each server runs a different project. This means that the capacity of each server (project) is a key issue, and the ability to share licenses (threads/users) is very important.

Magic xpa's floating license mechanism lets you make optimum use of these licenses in a multi-project environment, by sharing licenses between servers. Therefore, when a particular project is idle, other projects can utilize its licenses.

Because the Magic xpa broker controls the servers and their capacity, it needs to know the total number of licenses that are available for its servers. The broker adds up the total maximum threads and users belonging to each server. The broker uses this figure as the total number of available threads/users. If the broker sees that a particular server is not using its allocated number of threads/users, the floating license mechanism means that they can be used by other servers.

Using C# to manually license software is a fool’s errand. Using C# to bind in a third-party licensing scheme is also very expensive and time consuming. The advantage of the Magic xpa Application Platform is that licensing is built-in to the platform as a protection to both corporate end users and software developers.

For additional information on how an upgrade to Magic xpa is superior to Magic to .NET conversion please convert here.