Holiday homework

by Andrea Maioli on 07/27/2017

We’re into the hottest part of the summer and vacation is fast approaching. For many, vacation is a time for some well-earned rest and relaxation, but programming buffs often seize the chance to look into something new at their leisure.

To make things easier, we’ve put together a series of design patterns for Instant Developer Cloud. In addition to the mobile-design-patterns we presented two weeks ago, today we also have:

  • db-design-patterns: a series of examples for using a relational database in the cloud. It includes the design of a relational schema, the various ways to write queries, and retrieving results from JavaScript. Transaction management and modification of data in tables is also provided.
  • doc-design-patterns: shows how to manage the application using an ORM (Object Relational Mapping) approach. Using documents and collections, there is a strict structure for accessing and modifying data, and it’s much simpler to manage complex operations on the back end and on the device. Also, we didn’t overlook the interaction between documents and Web APIs that is so popular today.
  • datamap-design-patterns: this is one of the most interesting examples because it deals with displaying the application data. Between the infinite, virtual, nested, and recursive lists there was also time to make a digital wheel of fortune. You can click here to see a preview of the application.
  • sync-design-patterns: an actual work bench for testing the synchronization system between a local app and the cloud. You can explore the secrets behind exchanging messages, document synchronization, and remote calls.

I don’t know if you noticed, but the five design patterns we’ve provided cover the full development cycle for an application:

  1. Database design and access to data.
  2. Back end development with an ORM approach.
  3. Front end development using visual element libraries.
  4. Pairing front and back ends using datamaps.
  5. Syncing the local app and the cloud.

To get the most from the examples, we recommend opening them in the IDE, launching the application preview, and testing the various functionalities. Then return to the IDE and in the various views that interest you, have a look at the code that implements them.

As always, I look forward to your feedback, and if any interesting examples come to mind, send me an email and we will happily add it.

Enjoy your vacation!


In recent months I’ve had the pleasure of helping create a number of mobile apps using Instant Developer Cloud. It has been an intense and satisfying period, and one of the best gifts was being able to understand how to improve the documentation system for the platform.

In fact, when people begin working with Instant Developer Cloud they immediately ask, “Where is the documentation? What can I look at to learn how to use it?”

There are already a number of options available:

  1. The introductory tutorials based on chatbots: these are helpful for understanding the fundamental concepts for the IDE and the framework.
  2. A few complete example applications that show functioning apps.
  3. Online documentation of the libraries with examples of code so you can learn detailed information about the various methods available.

What else do we need? What I’ve seen is that the complete example applications are too complicated to be analyzed quickly and adapted to one’s personal needs. That’s why I decided to create a new series of example projects that contain the most common design patterns.

We made the first one in June to show the basic structures of the user interface for responsive mobile apps. Starting today, you can open the mobile-design-patterns project that contains the most common cases in very simple form.

What will you find there? Here are a few examples:

  1. The basic elements of a page.
  2. Navigating among pages including sending bidirectional parameters.
  3. How to create pages based on tabs.
  4. A model of a responsive grid.
  5. Lots of different list types.
  6. The most common widgets and popups.

Scattered here and there in the code you can also find examples of using REST Web APIs, how to read a file from disk, how to download resources from the internet, and more.

To use a pattern, just open the example project, select the view that interests you, open it in HTML view with F4, and then copy the code to your project using the same procedure. If you’d rather see the application working directly in the browser, just click here.

I’d like to hear what you think of this kind of documentation. And if you like it, I have in mind five or six other groups of design patterns to publish over the next few weeks.

Let us know!


In one of my recent articles, I shared with you an experience I had involving the publication and testing of the mobile app Who’s Next?. Since the results of that experiment were very interesting, I decided to conduct another one, which I’m presenting to you today to spark a new discussion.

The context here is creating another app for fans of Role Playing Games, but this time I wanted to make a significant change in which phase of the work I shared. The first experiment provided very interesting results, but some of the new functions to be included required a significant amount of improvement work, because they affected many application entities. This made me think, “what if I were able to get feedback before beginning the implementation?”. That’s why this time I started sharing at a much earlier point in the work: the analysis.

Remember the User Profile, User Stories and Business Model documents that Andrea talked to you about a while ago? I created a summarized version in a single document, and I turned to the same Facebook group where I had shared Who’s Next? to launch a discussion about the analysis of an application rather than about an app that was already ready. The results were really interesting.

I got confirmation that the app was perceived as useful and interesting to most of the target users. Before beginning any development work.

The discussion led to some suggestions that completed my analysis. This was really interesting, because in this phase it’s much easier to take in comments, integrate new functions, or even discard those that don’t actually turn out to be that important. It was as if I was strengthened by the people who took part in the discussion, and I achieved results that my friends who helped me and I wouldn’t even have imagined.

Completing the analysis also led to a clearer picture of the effort required to create the app, and allowed us to take stock from the beginning of all the functions to be implemented. In recent weeks I’ve started the actual development, and as we’ve proceeded I’ve changed the initial structure of the project very little, moving very quickly toward the first version.

I had multiple people available to participate in the alpha testing, all users in the target, whose goal is to have a tool that truly helps them when they play. This is a powerful motivation, the best there is.

In the end, even the summary form of the analysis document proved to be important. In fact in the past, I had already had occasion to share the extended documents with friends, but there’s no avoiding it: a concise and effective form of communicating is necessary if you want truly useful feedback.

For my part, the social approach has been confirmed as a helpful tool to try. The important thing is to identify the correct group to share with. This may actually be the most difficult part, but if we start by identifying the target users and the interests they share, the nature of social media itself should come to our aid.

If you’d like to discuss this subject further, get in touch: I’d be happy to share the analysis document with you along with some thoughts on how it was created.


Today I’m writing to share an interesting experience I had with the publication and testing of a mobile app. It’s a utility for people who, like me, are passionate about Role Playing Games.

It all started when a friend asked me to create an Excel spreadsheet for him to simplify management of a rule, a task that usually forces the game coordinator to write over and over again on a sheet of paper that quickly becomes both illegible and inconvenient. As often happens with those of us in IT, I got a little carried away, and I made an app with Instant Developer Cloud that I called Who’s Next?.

For the analysis I took Andrea’s advice, creating three documents: the User Profile, the User Stories, and the Business Model. For the UI, I used the Ionic2 component to get a nice interface quickly, and I have to say I’m pleased with the result.

At that point, I had an app ready. I had a clear idea of the target it’s meant for, and it seemed like a bit of a waste not to keep going. I thought I’d launch an experiment and make it public to see what would happen.

I decided on a social approach, so I put a few posts on Facebook groups of target users in Italy, since initially the application was only in Italian. Users with common interests gather in groups on all social networks – it’s in the nature of these networks – and it wasn’t difficult to find an interesting one. I presented it as an idea, asking if people might give me feedback, suggestions, or even tell me if they didn’t consider the app necessary.

The result was very interesting.

Presenting it this way wasn’t viewed as an advertisement, and quite a few people downloaded it: about 120 in the first two days. The people who got involved proved to be much more interested in giving credence to a group post rather than an ad.

Reports on bugs were offered in a spirit of collaboration, and didn’t in fact lead people to uninstall. Instead, interest in the application was piqued, and people were inclined to wait for a new fixed version.

I got positive feedback that the app is useful for target users, something that was certainly not a given.

The many comments even contained suggestions for new features that my friends who helped me with the early tests and I hadn’t even thought of, and which actually turned out to be very important for players – “if it did this too, I’d definitely use it.”.

Now I’ve translated it into English, producing a multi-language version, and I intend to proceed the same way with it, potentially reaching 20,000 users around the world. Still free.

What do you think? Is this an approach we could attempt consistently? What pros and cons do you see in this dynamic?

And oh, if you’d like to take a look at the app, you’ll find it here.


Presenting Instant Developer Foundation 16.0


Easter is nearly here, and as Andrea announced a few weeks ago, the new release Instant Developer Foundation 16.0 is ready for you. We’ve introduced many new features and important improvements, and I have to say that I’m really pleased with the work done in this version. Regarding the User Interface for apps made with […]

Read the full article →

Drag & Drop Interactions


In the user experience in web and mobile applications, drag&drop is used frequently to interact with a given object, to create relationships between one object and another, or to upload a file. Basically, drag&drop has become part of the user experience that we all expect. That’s why recently Andrea suggested to me that we integrate […]

Read the full article →

Instant Developer Cloud triples the speed on iOS


The advantages of hybrid mobile applications are well known: they’re cross-platform, pretty simple to program if you know the Web technologies, and have lots of plugins for accessing the native part of the device. However, there’s also a weak point: performance. It’s not so much for calculations as for managing the user interface. Achieving a […]

Read the full article →

Instant Developer? Child’s play


Is it really so simple to use? Is it really worth using it? Can you really get enviable results with little effort? These are some of the questions that someone who hasn’t yet used Instant Developer Cloud might legitimately ask. To answer them, I want to tell you briefly about my experience. My name’s Davide, […]

Read the full article →

From mockup to development: it’s easy with tutorials


When wrapping up the series of articles dedicated to app design, I promised you that I’d also get into the next phase, meaning actual development. So here I am, ready to keep my promise. Developing an app is always a complex task, even in the case of a shopping list like ToBuy. The starting point […]

Read the full article →

Instant Developer Foundation 2017


In keeping with our tradition, at the beginning of every year we want to let you know the path Instant Developer is pursuing for the year, and once again there’s a lot to tell. Let’s start with news on the way. There are two releases on the calendar: version 16.0 is slated for the first […]

Read the full article →