Replies

That depends on your definition of "REST API on the IRIS side".  That IRIS provides the HTTP interface?  and/or the code that does the work of the API is within IRIS and therefore ObjectScript?  As far as QEWD is concerned, IRIS is simply a persistent JSON store with no other role (though you still can invoke ObjectScript methods and access classes if you want), so a REST API is implemented in JavaScript and handled by Node.js/QEWD.  

So, provided IRIS is used as the back-end database for the data persistence of the APIs, the competition allows the use of any other technologies in front of it?  eg QEWD/Node.js + browser UI?

These competitions appear to demand the use of Cache ObjectScript rather than any other language.  Is this correct?  And if so, why can't other languages be used instead?

These APIs appear to be synchronous, and therefore will not be usable in a standard production Node.js environment where all concurrent users coexist in the same physical process.

This is precisely the reason why QEWD was created - ie to allow the safe use of synchronous APIs, but, then again, if you use QEWD, you won't need or use the APIs described here

They aren't products as such, more repositories that focus on particular aspects of / components within QEWD, to help people get up and running with them.  They are linked from the main QEWD repository, which, in turn, is linked to your Open Exchange. 

QEWD is already listed, Evgeny. 

Take a look at QEWD:

This is a good place to start: https://github.com/robtweed/qewd-baseline
There are instructions on how to try it out with IRIS, but Cache is also supported (all versions)

Both REST APIs and interactive browser-base applications (and Native Mobile apps also) can be quickly and easily developed.  Security is built-in and it's all Open Source.

QEWD main repository: https://github.com/robtweed/qewd

See also QEWD-JSdb: https://github.com/robtweed/qewd-jsdb

An update: the QEWD-baseline repository now also includes a fully-detailed tutorial on creating interactive, WebSocket-based browser applications

If you want a very rapid way to develop your IRIS applications using WebSockets, and where all your logic is written in JavaScript, and where your IRIS data is accessed as QEWD-JSdb multi-model persistent objects, this is the place to look.

For more info see:

https://github.com/robtweed/qewd-baseline
and specifically:

https://github.com/robtweed/qewd-baseline/blob/master/INTERACTIVE.md
 

By the way, the same techniques can be applied to Native Mobile application development

I guess I'd summarise the "so what?" about QEWD-JSdb as follows:

 The "conventional" approach to database thinking is that your data is "over there" somewhere in some strange and alien technology called a "database", which also forces a particular type of data model on you and via APIs or protocols you have to learn.  It tends to result in two types of developers: application developers who know a language, eg Node.js/JavaScript and build application logic,; and database developers who understand the black arts of data management but don't get their hands dirty with application development.

The key concept in QEWD-JSdb is that the underlying IRIS database is accessed as JavaScript Objects that happen to be on disk rather than in-memory, and can be modelled how I, the developer, wants to handle it - which may differ depending on how I want to deal with the same data. There's no "database", just JavaScript objects that happen to persist in IRIS by means that I neither know nor care about.  

That kind of concept may ring a bell with some older IRIS developers, but to a modern audience it's potentially mind-bending, radical stuff.  Perhaps so, but QEWD-JSdb now makes it possible in a modern Node.js / JavaScript setting.

I suspect, also, for many developers new to IRIS, it will demonstrate ways of using its underlying physical storage that they never realised were possible.

If that's piqued your interest and you have 5 minutes spare, that's literally all it will take to have it up and running and ready to play with.  The browser-based viewer application will give you a real-time view of the IRIS database items you're playing with and how they change as you use QEWD-JSdb, so it's all "instant gratification!" and lots of (hopefully jaw-dropping) fun. 

Just the thing for long, dark winter evenings by the fire-side :-)