Data Sharing

 

How to share/exchange data with ND1.

You can communicate ND1 data in three ways: email, upload to/download from our server, upload to/download from your server (“server” can be your computer). There’s also a concept of “Shared” data.


Data is shared on a folder-by-folder basis. Your point of entry to sharing is the Sharing dialog which you get by tapping the Sharing button, at the bottom of the data list in each folder.

 

(c) 2010 Naive Design. All rights reserved.

Email

To email, in the sharing dialog, just tap the Email button and fill in your information.

You’ll be emailing the folder in JSON format.


If you have any screenshots in your data, they will appear as base-64 encoded data URLs. You can use these on your receiving computer in a number of ways, the most obvious being to paste it into the address bar of a web browser. It will then display and you could proceed to print it, for example.


We’ll shortly be making this a lot nicer, via an option to send a folder (or the stack) as an HTML document, which will readily display.


JSON, however, has certain advantages too, incl. reversibility. You can edit the data you emailed, then place it on your custom upload URL server, and send it back to ND1.

Your User ID

When uploading and downloading, a ND1 User ID is used to identify your data (and make sure only you can access it). Your ND1 User ID is globally unique and associated with your copy the first time you do an upload.


You can inspect and even edit the User ID in the Settings app under ND1. Don’t attempt to replace it for something you make up. If you do so, ND1 will ignore it and give you a new one. The purpose of it being editable is that you can copy it from one device, and paste it on another.

This permits you to have the same identity across multiple devices on which you’re using ND1 (and forthcoming ND products), and share your own data across all devices. (From iPhone to iPad, say.)

Uploading and downloading

To upload and download your data, just press the respective button.

This will upload to and download from an ND server. You can use this as a backup method and for safe-guarding.


There’re two switches which you may use:


Visible to the Public has currently no effect beyond tagging your data as data you wish to share with other ND1 users. See next section. If you do not wish to share your data with others, make sure the Public switch is OFF, which is the default.


Custom Sharing URL enables the URL in the text field below the switch which points to your server, set up according to this. When successfully set up, this provides one-tap data sharing between ND1 and your computer. You want to do that, if you plan to write user functions or bigger programs on your computer, or are planning on importing data.

  If you have data that you would like to use in ND1, all you really have to do is convert it into correct JSON. It will then be automatically accessible to JavaScript code you write. For an example of a more complex structure (JavaScript objects), see the data in the Units folder (which you can email to yourself).

Public Uploading

If you add another 200 units to the Units system, write a cool solver function, have a nice collection of engineering formulas, or the like, maybe you feel to share it with others. We’re really hoping for lively collaboration among ND1 users, and for that we’re creating a system for public sharing.


Every folder has a Notes section, which we would ask you to use to state anything pertinent to the data you’re uploading. Specifically, if the data is not in the public domain, a copyright must be included.


We recommend the following pseudo-fields (shown with example data) in the note associated with the folder you’re sharing publicly:


@author Your Name

@copyright 2011 Your Name (or Company)

@version 1.0

@okToBundle yes (or no)

@announcement Text that you wish to communicate to people interested in downloading your data

                            This text can go over multiple lines

@description Anything you feel worth explaining in relation to your data.

                    For example, how to use it, etc.

@example Usage example, if applicable (one tag and content per example)


If you’re uploading data for which “unit tests” exist, please include them with names that prepend “test”.

For example, if you wrote a function “gamma” that computes the gamma function (we’d like that!), you would have a unit test in your folder named “testGamma” (or just “test”, if it’s your only test function) with definition:

0.5 gamma 0.886226925453 = ≫

The unit test should return true if the function result matches the expected result, or false, otherwise.

This test was written in RPL for simplicity. But you could just as well have written it in JavaScript:

function() { return (gamma(0.5) == 0.886226925453); }

(Remember, you can mix and match RPL and JavaScript.)

Unit tests will be automated and allow us (and you) to verify code is working as expected, and keeps working as expected (as changes to components are made, for example.)


When you flick the Visible to the Public switch and upload, your data becomes visible only to us.

If you set the okToBundle field in your note to yes, we’ll manually inspect your data and see if it can be bundled with someone else’s submission, or an existing folder.

(For example, if you uploaded equations used in engineering, and someone else did that too, we might bundle it in one consolidated folder. Likewise, additions to the Units system, would just be added to the built-in Units.)


When you’re ready to go public, make an announcement in the Shared Data forum on this website, and we’ll proceed to make your data available for downloading by everyone, following a quick test (and/or merging it with an existing folder, if permitted by you). If you’re adding to a folder and don’t feel this warrants on announcement, just send us a personal message through the forum system. Thank you!

Downloading shared data

Downloading shared folders is very easy: You browse the available folders under Downloadables in My Data, and tap the folder, you’d like to download.


If you upload a shared folder, it will upload under your User ID and be only visible to you. If you set the Visible to the Public switch, it doesn’t overwrite the original shared folder. The switch merely indicates that you want your version of that folder to be publicly available. Follow the steps in the previous section to communicate with us and get your data published.

pdf (3/06/11)http://naivedesign.com/docs/ND1_DataSharing.pdf