Showcasing: Left Brain Media
by Arnaud on February 18, 2013 2 commentsLeft Brain Media has developed an iOS app using LiveCode that is so good I just have to share it with you.
HIV and Your Heart was co-developed by the American Heart Association and the American Academy of HIV Medicine. “HIV and Your Heart exists to help people living with HIV make positive changes in life for better heart health and overall wellness” they say.
Having HIV increases your risk for heart disease. This informative app has over 90 minutes of positive, uplifting videos, from personal stories to advice from leading physicians, to help those living with HIV enjoy a long and healthy life. You can interact with the app’s planning tool to set wellness goals and the built in tracking tool lets you follow the steps you need to take to reach those goals.
One of my favourite features of the app is how the user can chose to share the information via facebook, twitter or youtube and engage with others interested in or affected by HIV/AIDS. Alternatively, the app has a full suite of confidentiality features; the desktop icon is just labelled ‘Your Heart’ and users can password protect the information if the wish to.
“This is a perfect example of how mobile apps are becoming part of everyday life.” says LiveCode Product Manager, Benjamin Beaumont.
Mobile computing is one of the best ways for communities to share experiences, knowledge and ideas; the American Heart Association and the American Academy for HIV Medicine have done a brilliant job doing just that with this wonderfully instructive and interactive app. LiveCode are proud of the small part we have played in its development.
HIV and Your Heart is a free app available to download from iTunes now.
Do you have a made with LiveCode app you’re proud of? Send it to us so that we can blog about it!
Showcasing: Blue Mango Learning Systems
by Arnaud on February 15, 2013 No commentsLiveCode revolutionized development with its easy to use English-like language and rapid, compile-free workflow. Now one of RunRev’s long-standing customers is bringing that same fast, easy and effective approach to how you communicate online.
Since 2003 Blue Mango Learning Systems have used LiveCode to build great visual communication tools, which in turn help their clients create and deliver fantastic documentation. (The RunRev lessons portal, for example, is built using Blue Mango’s flagship product ScreenSteps and ScreenSteps Live and our customers have always been extremely happy with its performance.)
But effective visual communication is not just for documentation. Using pictures in your daily communications means you spend less time explaining things. Clarify is Blue Mango’s product that saves you time by organizing, clarifying and focusing your communications.
How Clarify Works
Capture images
Capture screenshots, import graphics or add photos. Capture multiple images to create clear communications.
Turn them into communications
Add annotations and text to your images.
Annotations include:
– Arrows
– Rectangles
– Oval
– Highlight
– Sequence tools
– Text annotations
– Blur
Share online or via email
It is easy to share your communications online via clarify-it.com (a free sharing service offered by Blue Mango), Dropbox, Evernote, or by email.
Built with LiveCode
We are really proud that Clarify was built using LiveCode. Both RunRev and Blue Mango share a philosophy. Blue Mango tells us that to communicate well we must:
– Be organized
– Be brief
– Be clear
Well, the same has always been true for programming and developing apps.
Stay Organized
LiveCode’s clear process of ‘cards’ and ‘stacks’ keeps your programming organized and structured.
Learn more about Cards and Stacks here
Be Brief
Supercharge your workflow. Make changes in real time. With LiveCode your application is always running, so any changes you make are seen live. This lets you create Apps and adapt to changing requirements in record time.
The Traditional Development Cycle. With each debugging
you need to run the cycle again – slowing down your development.
With LiveCode’s compile free cycle your chnages happen
in real time. No more waiting, no more delays.
Be Clear
Writing in LiveCode is not like using other languages. We use an English-like programming language so unlike other tools there is no arcane symbols, no difficult short hand, no complex syntax.
Your code is readable and understandable – even months after you’re written it.
Why choose LiveCode?
I asked Trevor DeVore, Clarify Developer and Blue Mango Director of Technology, why LiveCode was the perfect tool to use when developing programmes of this kind. The reason, he told me, is becuase LiveCode is so versatile.
“Clarify has been released for both Mac and Windows. I need to be able to share as much code as possible between the two platforms if I’m going to be able to provide a quality product for our customers at release as well as going forward. Being able to use 98% of the code on both platforms without modification makes this feasible.
In addition, the ability to instantly test Clarify on Mac and Windows during development without any need to compile allows me to quickly iterate over features and fix bugs.”
– Trevor DeVore, Blue Mango Learning Systems
Clarify is available now for purchase on the Mac App Store. Check out this great LiveCode-built app!
How to Teach Programming to Students Today
by Arnaud on February 14, 2013 No comments
There’s a hot discussion taking place about how to get young students interested in programming. Not just interested, but loving it! Teachers and administrators have been battling this challenge for years, but the fact is that engaging students early in technical areas such as Computer Studies is difficult to impossible, beyond perhaps one or two engineering obsessed students in the school.
However, with the number of IT related jobs growing by the thousands every year, and the tremendous need for mobile app developers for the long term, it is more important than ever to make Computer Studies as fundamental in K-12 curriculum as math, language, or science. While it may sound impossible to get children to grasp the relevance of web and desktop development early on, the abundance of mobile apps and games have created new opportunities for educators.
Children are drawing, playing games, and watching videos on their parents’ mobile phones before learning their ABCs. They begin to show interest in tinkering with devices in grade school. (Remember being the only one in your family who could program the TV remote when you were a kid?) Many students want to create, build and fix anything they can get their hands on, but immediate gratification and relevance to their lives are critical factors for getting and keeping them engaged. And a little fun thrown in helps a bunch.
Students as young as 10 are grasping the fundamentals of technology development, and teaching these young tinkerers to create simple games and mobile apps is helping breath new life into Computer Science curriculum. At the core of much of this newfound passion for programming is LiveCode. The easy to use platform makes it simple for educators to learn the language, and, for the first time, students just get it!
In response to the growing success of LiveCode in education, we have created a RunRev Education Microsite. The site offers case studies, course materials for all grade levels, teacher training materials, forums and support, and free trials – everything educators needs to get started with LiveCode.
Take a look at Gracemount High School’s informative white paper and please share your own stories as well!
Showcasing: EuroTalk
by Arnaud on February 13, 2013 No commentsLanguage learning specialists EuroTalk are experts in their field with 20 years of publishing experience and over 10 million customers. EuroTalk uses LiveCode during the authoring process for many of their titles, and has been working for a number of years in Malawi together with the Scottish Government looking at different solutions for delivering education to primary schools.
These are rural schools with no electricity and very large class sizes, and often the teachers have very few resources. All classes at standard 1 and 2 have at least 250 children and this particularly school we’re blogging about has 5000 children. Some nearby primary schools have 18 to 20 thousand children.
A LiveCode created app, the Chichewa Learning App has been a great help to the children and provides the key words needed and a fast, scientific way of remembering them. Described by users as:
“Fun intelligent interactive learning games. Worth the money.”
“Unlike many other apps, this one makes learning fun and doesn’t get boring.”
HOW IT WORKS
This interactive product is the result of extensive research into how the brain learns fastest. It uses:
– Images: to stimulate both halves of the brains, visual as well as logical;
– Fun quizzes: because we remember best what we’re interested in;
– Speech, recording and playback: to perfect your accent by comparing with native speakers;
– A point scoring system: that gives feedback on progress and rewards success.
Here are a few pictures of the children who don’t speak much English but took to the Chichewa Learning App almost instantly.
And this girl typed her name into the device and was so proud to see it on the unit menu.
“If we can use tools like LiveCode to
develop and iterate quickly, and use
handheld devices to deliver, I think
we are on the verge of a revolution in
terms of delivering education.”
Read on to find out more about EuroTalk and their successful Maths app for children ages 3 – 5!
Reporting back from Bett 2013
by Arnaud on February 7, 2013 No commentsBett was held at the Custom House in London Excel this year and was a veritable feast of the great and the good. With over 35,000 attendees expected I spoke to people from many parts of the world. The DLR was so overloaded with people attending that at one point the service was stopped at Canning Station and everyone had to walk to Custom House.
With all the news coverage about how vital it is for teenage students to learn how to code, I was surprised by the lack of relevant coding platforms at Bett 2013. This year the show seemed to be very well patronised by data and analytics – gathering data, measuring data and reporting on data. Whilst that is all good and well, how are teenagers going to learn to code? The app market continues to prosper, students are tech savvy, have increasingly sophisticated technology in their pockets and the importance of knowing how to code has never been greater.
It must surely be both a challenging and rewarding time to be a teacher. Today old school meets new school in the classroom and the potential for amazing results is just waiting to happen. All that is needed is some creative thinking from the top down as well as the bottom up and the ability to let go of the past and embrace the new.
Stephen Heppell, was inspirational with his approach to new ways of learning. Stephen’s approach is to teach students how to learn then trust them to determine what works best for them in terms of classroom environment and use of technology. It was great to see the ease with which lots of youngsters used Scratch on his stand at Bett. Coding is close to Stephens’s heart and when LiveCode’s ancestor, HyperCard, came to market in the late 80’s Stephen created a HyperCard stack with which it was launched. Stephen is a breath of fresh air in the Digital World of learning and his approach has a proven track record of success.
Dell had a Formula 1 racing car on their stand sitting next to a racing simulator which was hugely
popular. The new Windows 8 Dell Tablet is ideal for using apps build on LiveCode by students and many students and teachers who tried it out for themselves, thought so too.
Everyone fell in love with the very human Nao Android Robot it will be interesting to watch how this evolves to be used as a teaching tool. The Active Robots folk were keen to try out LiveCode to see if it could drive the Nao so watch this space it may just happen
Looking forward to Bett 2014!
ComputerWeekly – Can open source save STEM (Science-Technology-Engineering-Mathematics) graduate figures?
by Jana Doughty on January 31, 2013 No commentsSecuring Your Data on iOS
by Arnaud on January 25, 2013 No commentsby Mark Smith
Mark Smith manages the data repository at the Manitoba Centre for Health Policy and conducts health research. In his spare time he codes medical and other kinds of applications using LiveCode.
______________________________________________________________________________________________
If you have sensitive information that needs to be secured on an iOS platform then you may find the following discussion useful. Such was the case for a hospital application I was developing that required the collection of personal health information. Not surprisingly the client was only willing to consider a mobile option if the information could be securely stored and managed on the device as well as off. And, unfortunately, storage on the device was the only option since the hospital had neither 3G nor wireless available (which would have allowed a mobile client/server solution).
Securing data on iOS is not as easy as it sounds. If you provide no more protection than a simple 4-digit numeric passcode, then this can easily be defeated. There are desktop applications that can be downloaded that can brute-force discover any 4-digit numeric code in under 20 minutes. Things get a little better if you use a more complex passcode and you can enforce the requirement of a complex passcode by creating a configuration profile for your device (more on that in a bit).
So I was really pleased to see that RunRev had implemented support for the hardware based encryption that is built into iOS through the Data Protection API in version 5.5 of Livecode. As noted in the LiveCode documentation, there are four options available for the iphoneSetFileDataProtection command:
- none – No protection
- complete – The file is not accessible, for reading or writing, while the device is locked.
- complete unless open – The file is fully protected when the device is locked, unless it was already open.
- complete until first user authentication – The file is fully protected until the user unlocks the device for the first time.
You should also be aware that this additional level of security is enabled by having a user passcode installed on the device. No passcode, no protection. That is the critical first step in enabling all of the above options. Also, the documentation leaves lots of questions as to what state a file will be in during the course of its life, and certainly what state it will be in when it leaves the device. To answer some of these questions I constructed a few tests. You may find the results surprising.
To begin with I created an SQlite database file and added a few records. I set the file protection level on this file to “complete” and then I locked the device.
Next I used Xcode to transfer the file to my desktop. I was expecting to see an encrypted file but was surprised to see a blank one. Well, from a security perspective blank is good. No brute force attempts to decrypt it are possible. (Note: I have gotten different results using different versions of Xcode. Some return no file at all when the file is protected and the device is locked).
Then I unlocked the device and again transferred the file using Xcode, and as the documentation suggests, this file was completely readable. This is fine if you think no one can spy on your device while it’s unlocked, but what happens if the file is inadvertently backed up to iTunes or iCloud while the device is unlocked? Is the file protected in that case?
Well, in the case of iTunes the answer is “No”. The file is completely readable regardless of whether the device is locked or unlocked when the backup is made. Now, I was expecting the file to be readable when backed up from an unlocked device, but I was not expecting it to be readable when backed up from a locked device as well.
I suspect what is going on is that Apple treats a backup to a known trustworthy device the same as unlocking the device. You may recall when you first attempted to backup your device Apple asked you to enter the passcode. It probably stored it somewhere, and whenever the file is backed up again it uses that copy to decrypt the backup files.
In the case of backing up to iCloud, the Apple documentation says that all files backed up to iCloud are encrypted but my understanding is that the encryption is done with keys that are stored on the server side, so there is still a very small risk that someone hacking into Apple’s servers could discover both the keys and the files. However, given the sheer volume of backups that Apple maintains, there is some protection from the anonymity of being in such a large crowd.
So what have we learned? First, the iphoneSetFileDataProtection “complete” option appears to work to encrypt and secure the file when it is not being accessed. It is likely that the file is adequately protected until an authorized user (one who knows your passcode) requests access to the file. Second, it is not protected at all when backed up to iTunes. If that situation concerns you (or you don’t want the file backed up to iCloud), you have several options:
- Set the don’t backup flag on the file
- Put the file in a location that iTunes won’t back up
- Set iTunes to create encrypted backups (this is the only option for iCloud)
- Turn off iCloud backups
- Encrypt the file yourself
To set the file so it won’t be backed up use the iphoneSetDoNotBackupFile command with thedoNotBackup Boolean option (where true = do not backup):
To put the file in a location that iTunes won’t back up use either the /Library/Caches directory or the /Library/tmp directory. However, both of these locations can have files periodically removed by iOS to free up space, so they do not provide a solution for long term storage. The Apple recommended strategy is to mark the files as “do not backup”.
To create encrypted backups using iTunes, select the devices tab in iTunes and select your device. Then check the “Encrypt local backup option”. While you are there, you can also turn off iCloud backups by unchecking the “iCloud” option. Also, on your iOS device, using the “Settings” app you can disable iCloud backups under the iCloud/Storage and Backup option.
Of course there are other options as well. One is offered by Monte Goulding with his mergAES external for Livecode. I bought a copy of this to try out and I must say it has worked remarkably well for encrypting and decrypting the file on the fly on the iPad as well as ensuring that once the file leaves the iPad it remains encrypted (an added bonus frankly!). There is also an option in mergAES to encrypt the file in a format that is compatible with Livecode’s decryption routines (you need to use the OpenSSL format in mergAES).
Click image to zoom
Just don’t expect iphoneSetFileDataProtection to solve all of your security concerns unless you are only interested in protecting your files while they are “at rest” and you use a complex password on the device. If you really want the data to be secure you will probably have to double encrypt the file using something like mergAES. That way, if someone is really determined to get at your data they will find that after circumventing the first hurdle (your passcode) they are still left with a securely encrypted file.
Of course there is lots more to iOS file and application security than what I’ve covered here. Recently I ran across a new publication by Apple that appears to cover the iOS security issues in much more detail than has previously been reported (it’s 20 pages in length). As of Dec 8th, 2012 you could find the document here.
(NOTE: as of January 4, 2013 this document is no longer available or is encrypted. If anyone wants a copy please request in the comment box below).
Finally, if you are handing out iOS devices, you may want to consider enforcing the use of a complex passcode as well as other security settings. You can do this by creating a configuration profile for the device. I don’t have the space here to go into this in any detail but luckily Apple has a tool you can use (the iPhone Configuration Utility) that will work on any iOS device and it has excellent documentation.
Click image to zoom
The Configuration Utility is available here.
The only solution I can think of that would be better is to have encryption built right in to the SQlite library (there is such a package, but it is not licensed by Runrev. If you think you would use this you might want to send RunRev a note sometime to let them know). Well, that’s it for me. As you travel down your “mobile” path in life may your data always be secure.
Recent Comments