Skip to content

Applications

zverok edited this page Apr 17, 2016 · 1 revision

Things like Reality are good for "wow-effect" (526 stars on GitHub in a month! are we The New Rails?.. hardly so!), but whether the world really need it?

We hope, it does.

Here are some of possible applications (feel free to provide your ideas!).

Home automation and quick calculations

Like your Beijing friend says "let's talk tomorrow at 16:00 my time... and we also can invite Rodrigo from Rio?", and you are just like:

t = E('Beijing').tz_offset.local(2016, 4, 18, 16, 00)
# => 2016-04-18 16:00:00 +0800

t.localtime
# => 2016-04-18 11:00:00 +0300
# ^ ok, it would be 11 in Kharkiv, I'm ok with it!

E('Rio de Janeiro').tz_offset.convert(t)
# => 2016-04-18 05:00:00 -0300
# ^ Hmm, may be Rodrigo would not be that happy to speak to us?..

(NB: this example is simplified a bit, as Reality's TZOffset not aware of dailight saving time currently, so for being confident you'd rather use E('Beijing').coord.timezone.)

Growing in this direction, Reality will incorporate more and more of actual data (like currencies, weathers, transport schedules, actual holidays in different countries and so on.)

Teaching Ruby

Reality tries to provide ground for "quickly work with some interesting data". Despite the fact that Reality internally is not very simple for novice, but showing language basics and OO design is more fun when you can use some interesting data, not just some "read numbers from file and sum them".

Also, we hope that showing Reality will help to promote Ruby itself.

In this direction, Reality will try to became more and more robust and fast (including data caching), and embrace wider set of data areas and types, as well as more convenience methods for quick and understandable calculations.

Showcasing other libraries and projects

If you did some library for data visualisation, or some complicated UI component, or some new and effective algo? Many of scientific and graphical libraries are distributed with "demo/test datasets", but with Reality, they can just do things like Europe.countries.map{|c| [c.name, c.gdp]} and just have a data for demonstration.

Working in this direction, we plan to provide an ability to obtain small- and medium-sized datasets (instead of just one data objects) from different areas. Also, data caching would be useful for fast and reliabla showcases.

Data science

Teaching

Of course, data accessible through Reality is not always that full and precise. But, on the other hand, there are lot of the data in any area, and there will be more with each release. Also, in a short time Reality will be integrated with other scientific Ruby tools (like IRuby notebooks and statistical packages), and will provide a good starting point for young data scientist to "do somethings with some data and look at results".

Small- and medium-scale studies

Despite Reality is not that precise (as mentioned above), it still have a lot of quite useful data. So, we see a great potential for using it in studies prototyping, or as an auxiliary data source for enriching existing data.

Working in this direction, we plan to integrate into Reality larger and more precise datasets, so that, say, WorldBank data series will be available in a very few lines of intuitively understandable code. Another target is complicated data filters, like "venues concentration in the part of the city vs price of real estate".