Entries by David McGahey

Mapping Structured Data with Enhanced Node Functions

We’ve reported previously on support for node functions that simplify mapping structured data by eliminating need to copy-paste a function multiple times into a mapping. Repeating the same function unnecessarily clutters the mapping layout and makes the data mapping more difficult to understand or revise. MapForce also includes additional filters are available for defining node […]

Refactoring Mobile Apps

The best ideas for new features and other improvements to existing software apps often come from enthusiastic users. Implementing new features creates opportunities for refactoring mobile apps. After several years using the MobileTogether Solar Data Tracking app to monitor the performance of a rooftop solar system, my friend Casey had a suggestion. The app displayed […]

AI-based Database Image Classification with Altova MapForce

One of the most common examples of AI in our everyday lives is facial recognition. Facial recognition is the process of identifying or verifying a person’s identity based on their face. Facial recognition is used in many applications, such as unlocking our phones with FaceID, tagging our friends on social media platforms like Facebook, and […]

Validating and Debugging Data Transformations

Software developers and other data professionals often need to transform data from one format to another. These transformations can be simple one-to-one conversions or may require more complex manipulation. For instance, relationships must be generated when importing flat CSV files into a database, or source data may need to be split for the target, as […]

Getting Started with Altova RecordsManager

RecordsManager is a new tool from Altova to build business database solutions in record time using a powerful visual design interface. RecordsManager is a free, pre-built MobileTogether solution that is automatically available when you install MobileTogether Designer. The pre-built solution includes sample data sets, and the MobileTogether Simulator previews execution of the database solution right […]

Automatically Convert EDI to XML

Electronic Data Interchange (EDI) has proven to be a durable business-to-business communication technology in use today with history dating to the 1960s and even earlier. Efficient EDI data encoding reduced transaction payload size and improved data transfer speeds at a time when messages were sent over teletype at speeds equivalent to a 300 baud modem. […]

How to Compare CSV Files or Compare a CSV File to a Database Table

CSV files are a quick and convenient way to record structured data in a generic format. Because CSV files are so easy to create, multiple similar versions of very large CSV files can quickly proliferate. Often it becomes necessary to compare CSV files to find the desired version. In an ETL scenario, a data analyst […]

Analyze JSON Data with Filters, Formulas, and Charts

Software developers and other data professionals often need to examine new data instances before designing processes for efficient production. As JSON becomes a more popular format for data exchange, the tradeoff for smaller data payloads can be loss of clarity of the underlying data structure. XMLSpy has supported viewing, modeling, and editing JSON files since […]

Mobile App Themes Improve User Satisfaction

Mobile app themes improve user satisfaction by letting each user customize the app appearance with personal preferences. One way to implement multiple themes in apps that report and visualize data is to offer users a choice of color palettes for charts and graphs. MobileTogether uses a combination of drag-and-drop UI design, the powerful Action Tree […]

Transforming and Converting Protobuf

MapForce supports mapping protocol buffers (Protobuf) to and from other structured data formats as mapping sources or targets. In the constant quest for more efficient ways to transfer, manipulate, and manage large structured data sets, Google has created a language- and platform-neutral data format similar to XML, but smaller, faster, and simpler than even JSON […]

Excel Data Mapping to Update Existing Documents

Excel began life as a simple spreadsheet tool. Over time, support for rich text styling options, built-in charts, and copy and paste formatting features has led many enterprises to create reports in Excel documents. This can cause difficulty when data changes and existing documents need to be manually updated for distribution to a wide audience […]

Data Mapping NoSQL Databases

NoSQL databases are non-tabular databases that store data differently than traditional databases made up of relational tables. Two of the most popular NoSQL databases, MongoDB and Apache CouchDB, store data as collections of BSON (binary JSON) and JSON documents. These databases leverage flexible JSON schemas and scale easily with large amounts of data and high […]

Maintaining Low Code Apps

Low code software tools can speed mobile application development by freeing developers from routine coding tasks and encouraging focus on high level app requirements. However, some developers, project managers, and even entire enterprises remain wary of low code tools. These stakeholders are afraid testing and maintaining low-code apps will be more difficult and costly over […]

Mobile App Development: Follow Up on a User Story

My friend Casey used the Solar Tool mobile app created with Altova MobileTogether to track rooftop solar production for a full year now and reports some surprising results. We first wrote about Casey’s user story in the spring, when she anticipated higher solar power production as hours of sunlight increased. Casey expected the billing cycle […]

Mobile App Development: A User Story

Ahh spring! Birds singing, flowers blooming, and the sun rises earlier and sets later. All that extra daylight gives solar power generation systems more hours to make electricity. As the summer solstice approaches, solar generation systems enter their most productive time of year. Owners of rooftop solar systems can be passionate about tracking their productivity. […]

API Data Mapping

Web service data integration with MapForce is a popular and proven strategy to capture timely information for analysis or generation of user-friendly reports. In an earlier post we demonstrated API data mapping in 5-day weather forecasts for busy cargo shipping ports by reading Web service data in JSON format and mapping to richly formatted Excel […]

Data Mapping with XSLT3 Math Functions

XSLT3 adds trigonometry and other advanced math functions, new formatting functions, functions to collect environment variables, and more, extending XSLT and XSLT2 XML transformation standards. Data analysts and other data professionals can apply XSLT3 functions to solve XML data mapping and integration challenges that require complex mathematical computations. Let’s look at some MapForce examples of […]

Developing and Debugging User Functions in Mobile Apps

Recently I came across this note in a senior developer’s code review of a colleague’s work: “Slightly revised the user function to work correctly when languages other than English are used.” This was a surprising comment–the code is the code and it shouldn’t make a difference what language the developer or the end user speaks! […]

Create Mobile Apps that Automatically Support Dark Theme

Android and Apple mobile devices support a display option called Dark Theme, which you can think of as  almost a negative image of the normal screen display. In Dark Theme white is black, black is white, and color intensity in general is adjusted. Dark Theme reduces power requirements, which can extend runtime for a battery […]

Data Mapping Binary Objects – Part 2

Binary objects – BLOBs — can be cumbersome to manage in databases. In an earlier post we described a MapForce data mapping to insert binary objects into a database with generated metadata to identify the BLOBs later. The companion challenge in data mapping binary objects is to extract binary data and save it in a […]

Data Mapping Binary Objects

Binary objects are difficult to manage in databases. They are large, their content is not human readable, and they can contain bytes of data easily misinterpreted as control characters. Even the data type name for binary large objects – BLOB – reflects most database managers’ dislike of them. Before relational databases, the definition of a […]

Examine, Edit, and Validate .x3d Files

The .x3d file format is an ISO/IEC xml-based standard for representing 3d images. Also known as X3D, .x3d files originated as a way to represent 3D images for computer graphics. Over time applications grew from virtual reality (VRML), to CAD design, architectural rendering, 3D printing, medical and anatomical imaging, representation of molecular chemical structures, human […]

Mobile App Debugging

MobileTogether is a tool for building highly complex, elegant, cross-platform solutions. Developers need mobile app debugging tools to troubleshoot during development and understand app behavior. The MobileTogether Designer offers full-featured debugging of app execution flow inside action trees and debugging of XPath/XQuery functions. These features are provided in two mobile app debugging views integrated into […]

Design Templates for Mobile Apps

In an earlier post we wrote about using software design templates for mobile apps to facilitate design reuse and make it easy to build efficient, flexible options for various app requirements. We described an example of a Control Template designed to present multiple levels of hierarchical data based on user selection at runtime. Our example […]

Programming Techniques for Mobile Development

MobileTogether is an easy to use, low-code app development framework that lets you create sophisticated apps for all platforms from a single design. Low-code doesn’t mean no code. A database specialist might start with a few SQL queries and use the MobileTogether drag and drop interface to create an app with elegant tables and graphs […]

Web Service Data Integration

In a previous post we wrote that every data integration and reporting task needs to start with a clear understanding of the source data. Using grid view in XMLSpy, the industry-leading XML and JSON editor, we analyzed JSON data for 5-day weather forecasts retrieved from a Web service. Continuing with our earlier scenario, we’ll use […]

Data Mapping JSON Lines

The JSON data format continues to evolve as an open standard as it is creatively applied to new data interchange requirements. JSON Lines, defined at http://jsonlines.org/, is a convenient text format for storing structured data where each record is a single line and a valid JSON object. JSON Lines handles tabular data and clearly identifies […]

Software Design Templates in Mobile Development Projects

Software design templates streamline mobile app development by eliminating implementation of repetitive components. Creating a design template also simplifies revisions and upgrades when a change to the template can roll through an entire project. MobileTogether supports software design templates for user controls in cross-platform mobile apps to facilitate design reuse and make it easy to […]

Transitioning Data Mapping Projects from Development through Testing and Production

Data mapping projects often mirror software development efforts with distinct phases for design, testing, and deployment. This is especially true for ETL (Extract Transform Load) projects when repeated data mapping execution is required as new data becomes available, and the stakes increase higher with large data sets. The Altova MissionKit and Server Software products provide […]

Build Custom Maps in Mobile Apps

In an earlier post we described how to integrate maps into cross-platform mobile apps with each end-user device’s native map application. Our example app generated a map with pins locating major airports in the United States. Illustrations showed maps generated by the same app on an Android phone, an iPhone, and Windows desktop. What if […]

UML Modeling for C++ with UModel

C++ is one of the most powerful and efficient programming languages available, the de facto choice for high-performance computing, server applications, and complex architectures that demand the most powerful language constructs. The Unified Modeling Language™ (UML®) is the standard to design, visualize, and document models of software systems implemented in C++ and other source code […]

Handle HTTP Errors During Automated Data Integration

Data analysts and other professionals often need to generate real-time data through automated execution of data mappings that request Web services and save the results. During automated execution it’s important to gracefully handle any unexpected HTTP error rather than terminate the integration task. In an earlier post we discussed conditional processing of a REST Web […]

Integrate Maps into Mobile Apps

Developers can create highly-customized location-based apps by leveraging geolocation functionality in mobile devices. Now MobileTogether, the cross-platform, low-code mobile development tool from Altova, supports deep integration of maps into applications for all popular mobile platforms. Developers can integrate maps into mobile apps, add dedicated markers, and define custom actions based on user clicks on the […]

Web Service Error Handling in Mobile Apps

Mobile phones bring a world of information to our fingertips, but functionality of even the best-designed mobile apps can be impacted by Web service errors that occur when communicating with external servers. Intermittent cell phone service in remote locations can also degrade app performance when looking up data. MobileTogether, the low-code, cross-platform mobile app development […]

Handling HTTP Errors in Web Service Data Mappings

Data integration projects that include information from external Web services may be vulnerable to HTTP errors when retrieving remote data. When data mappings run under automated control it’s especially important to detect and report errors even if errors only occur very rarely. A MapForce data mapping can include Web service calls and output the result […]

Database Mapping with Database Exception Handling

Critical business processes depend on reliable data and database administrators and other data analysts want to be confident in the integrity of information stored in database tables. During automated ETL (Extract Transform Load) operations or other database import tasks, invalid data might be encountered that jeopardizes success of the procedure. Altova MapForce includes database exception […]

Database Tracing to Log Changes Made by a Data Mapping Project

Database administrators and other data professionals often want to maintain a record of changes in critical databases, especially when updates are made by automated scripts or other operations. Database tracing lets administrators track critical changes or anomalies, and help recover from errors. Altova MapForce supports database tracing for all popular relational databases to log the […]

Automatic Link Detection for Mobile Apps

Integration between a mobile app and the vast information resources of world wide web makes the user experience more convenient and responsive, especially when targeted web content may be frequently updated. The latest release of MobileTogether, Altova’s low-code, cross-platform mobile development framework, includes support for automatic link detection of URLs and email addresses in labels. […]

Automate Word Document Comparison in Busy Enterprises

Many enterprises and business situations leverage Microsoft Word documents in standardized formats, with variations in content in subsequent versions. Think of contracts or other legal documents, status reports, test results, lists of rules, and many others. These documents may even be generated through automated processes. Manually identifying and reporting changes between versions would be a […]

Images, Icons, and Tool Buttons in Mobile Apps

We have written previously about Integrating APIs and Mobile Apps to create a rich and entertaining user experience. Since publishing our previous post, we continued to enhance the GPS demo app with additional API support to get current weather conditions and scheduled events nearby. One challenge with offering all this functionality on a small mobile […]

Integrating APIs and Mobile Apps

Busy mobile users on the go prefer apps that are convenient and efficient. MobileTogether provides developers with features to seamlessly integrate APIs and mobile apps to combine mobile device functionality with up-to-date information from external sources. This empowers developers to create custom cross-platform native apps that provide a rich and entertaining end-user experience. Public APIs […]

Early Software Testing Validates Design

“Test early and often,” is a strategy from agile software engineering that has evolved to become a mandate for software developers in every field. Early software testing is especially important for developers working on cross-platform apps, who must support mobile devices with varying physical characteristics and operating system functionalities. MobileTogether includes features to incorporate early […]

Node Functions Simplify Mapping Hierarchical Data Structures

MapForce node functions simplify mapping hierarchical data such as XML nodes or CSV, JSON, EDI, or database fields by permitting users to define a data processing function at the node level and apply it recursively to all descendant items. Similarly, default values can also be assigned to nodes and automatically applied to descendants. Defaults and […]

Automate Diff Report Generation

DiffDog Server makes it easy to automate high-volume comparisons and generate diff reports comparing files, directories, and URLs. This high-performance server software is available for Windows, Linux, and MacOS X machines. Developers have long relied on DiffDog for comparing XML, text, and binary files, as well as directories and URLs. Now, the power of DiffDog […]

Inform Users with Sound Effects in Mobile Apps

Sound effects in mobile apps can reinforce functionality and make an app more fun to use. MobileTogether makes it easy and convenient for mobile developers to add a standard set of sounds to user interface actions across all mobile platforms. For instance, developers might want to add sound effects to signify the success or failure […]

Mobile App Calendar Integration with MobileTogether

MobileTogether gives developers holistic access to the rich feature sets of mobile devices for cross-platform deployment of native apps for Android, iOS (iPhone, iPad), Windows 8 & 10, Windows Phone 10, and HTML5  browsers for other users. MobileTogether apps created from a single design can seamlessly access mobile device camera, messaging, GPS, audio, email features, […]

Efficient MobileTogether Services on Backend Servers for Mobile Apps

MobileTogether Server Advanced Edition services on backend servers for mobile apps execute independently of any app running on a mobile device, based on a variety of triggers. MobileTogether services can provide background functionality to mobile apps or perform automated standalone actions without requiring any end user to interact with a mobile app. For instance, a […]

Multi-Language Localization for Mobile Apps

MobileTogether includes support to seamlessly localize mobile apps in multiple languages. This empowers developers to build one version of a mobile app that works across many languages as well as across multiple platforms. Developers can include translations in a single MobileTogether app design for all text phrases required, and when any end-user runs the app, […]

SQL Queries with Parameters: Support for SQL Templates in DatabaseSpy

SQL queries with parameters, also known as SQL templates, are a flexible and efficient solution for repetitive data reporting requirements, for instance allowing users to easily execute complex join statements with multiple sets of values. DatabaseSpy, the multi-database query, design, and editing tool from Altova, includes robust support for developing, executing, and refining complex SQL […]