Interaction design notes and links

Randomness


Any programming language has a function to generate random numbers, for ex.  rand ( int $min , int $max ) in PHP or  Math.round(x) in Javascript.

The numbers generate by these function are considere pseudo-random because they derives from a mathematical forumla or depend on time counting.

In specific applications like games and gambling or for security it is required to have reliable random numbers. Here the possibilities I found:

1. Fortuna is a cryptographically secure pseudorandom number generator, a JS implementatio can be found at http://sourceforge.net/projects/clipperzlib/

2. Random.org offers true random numbers to anyone on the Internet. The randomness comes from atmospheric noise.

3. The most reliable solution is an hardware generator such as Quantis, a physical random number generator exploiting an elementary quantum optics process.

 

This entry was posted in technical and tagged tools. Bookmark the permalink.

Picup App and file upload on IOS Safari

The other day I realized that Iphone and Ipad have the HTML <input type="file"> disabled. It means you can’t upload any file from your IOS device to a webserver through a web site or a webapp. I guess that’s one of the reasons why most online services need a proprietary app (ex. Facebook, WordPress, Flickr, etc.).

Picup offers a workaround to the file input issue, It offers an external upload service to be used on web sites. The problem is that the flow is not smooth at all:

  1. Users need to install Picup.
  2. When they click on the upload button on your web site (you need to write Picup code to replace the input button with a link to Picup app) the app opens.
  3. On the app a messy, not-customizable, interface asks to choose a file.
  4. The file is then uploaded to Picup server (I don’t like my users to upload files on a 3rd party server).
  5. When the upload is done users are sent back to Safari and they can proceed filing up your form.

Exluding Picup as a viable solution, the most elegant option is to develop a native app for Iphone and for Ipad, luckily phonegap allows web developers to easily write native apps,  adding the file upload feature seems quite easy.

IOS6 (expected in autumn 2012) is supposed to implement the file upload feature in Safari. Maybe Apple walled garden is loosing some stones.

Wget could save your web-developer life

From Wikipedia

GNU Wget is a computer program that retrieves content from web servers [...] It supports downloading via HTTP, HTTPS, and FTP protocols.

Its features include recursive download, conversion of links for offline viewing of local HTML, support for proxies, and much more. It appeared in 1996, coinciding with the boom of popularity of the Web, [...] Wget can be easily installed on any Unix-like system and has been ported to many environments, including Microsoft Windows, Mac OS X, OpenVMS, MorphOS and AmigaOS.

We are in an almost always connected era but still a software to download entire web sites can be useful in many situations, here are 2 examples.

If you need to show a wordpress based website during a presentation or public event it’s much safer to have it off-line. WordPress is not an easy CMS to be ported, it can take hours to port it from a server to a localhost. Using Wget you can easily export a fully functional static html version of the website in few minutes.

Another smart use of Wget I’ve seen is to make a native mobile app out of wordpress. WordPress can be a handy solution if you are working on a content-rich app like a products catalog. Using PhoneGap you can transform an html5 web app in a native applications for IOS, Android and many more. Use Wget to flatten WordPress into a static html website and author it into a native mobile app that doesn’t need Internet connection.

On LifeHacker I found a Wget tutorial from 2006.

 

 

Crowdsourcing language translations with Duolingo

Luis von Ahn is an associate professor in computer science at Carnegie Mellon University. He is the inventor of CAPTCHA and RECAPTCHA, CAPTCHA is a annoying method used on many websites to check if a form is filled by a human, it is based on the recognition of distorted letters. RECAPTCHA is a much more interesting project, it transforms CAPTCHA in a crowdsourced books digitalization project. Instead of computer generated letters, users are asked to decode distorted words coming from old books.

In TED talk “Luis von Ahn: Massive-scale online collaboration” the researcher presented duolingo his new crowdsourcing project. The goal is to let the crowd translate wikipedia pages. I found the web site very nice and professional, it’s easy to use and you can really learn some spanish, english or german with a step-by-step approach.

I already knew many interesting crowdsourcing projects, most of them are disguised as videogames, check Reality is Broken for some examples. What I found amazing in duolingo is the idea of giving away a program to learn languages in exchange of free translations and I love the way the 2 tasks are perfectly integrated.

Watch TED talk “Luis von Ahn: Massive-scale online collaboration

Try duolingo