In Saudi Arabia, everyone learns to program.

Mobile device programming is now a required part of the High School curriculum.

Saudi Arabia has added computer programming to its High School curriculum. Starting this year, all High School students will take a course in creating apps for mobile devices.

teacherAbout 450,000 students will learn programming each year. The vast majority of them have smart devices: iPhones, Android phones, tablet and iPods. Like everywhere, their devices are prized possessions, in use all the time.

The software package used is NSB/AppStudio, from NS BASIC Corporation. It allows students to easily create apps using a visual interface. Programming is in JavaScript or BASIC. Allowing the students to create apps for their own smart devices makes programming a much more relevant and interesting subject.

“The Saudi government has shown great foresight in teaching its students to program.” said George Henne, President of NS BASIC Corporation. “We strongly support education and believe that learning to program should be a core competency for all students. Saudi Arabia is now in the forefront of countries educating their students.”

Training is already underway, with the first class scheduled to complete in January 2015. The Ministry developed its own curriculum in Arabic for the course. The AppStudio IDE was enhanced to provide Arabic language and right-to-left text support.

Locking screen orientation on Android

Chrome 28 and higher now supports setting the orientation in your app. Simply do the following:

 screen.orientation.lock("landscape")
 screen.orientation.lock("portrait")

The screen will then shift to the orientation you specify and ignore the actual orientation of the device.

This only works on Chrome. If you try to execute this code on an iPhone, it will get an error and the orientation will not be affected. To improve the code above so it runs without errors, do the following:

If screen.orientation <> undefined Then
  screen.orientation.lock("landscape")
End If

The screen orientation still won’t change on an iPhone, but at least there won’t be an error!

nsbapp.com now requires AppStudio 4.2.6!

We’ve just uploaded 4.2.6 to the servers. In it, we overhauled how we deploy to nsbapp.com. It’s much faster and smoother now. However, to do this, we had to make changes to how the server works.

Older versions of AppStudio WILL NOT BE ABLE TO DEPLOY to nsbapp.com any more!

Please download 4.2.6 and start using it.

Here is what is new:

  1. Deploy: Deploy to nsbapp.com is now much faster.
  2. Deploy: Deploy to nsbapp.com now shows download QR code.
  3. Deploy: Deploy to nsbapp.com now has option to show all your projects (registered users).
  4. Deploy: New dialog box on completion.
  5. Library: AddToHomeScreen 3.1: improved Android Chrome support
  6. Controls: Grid clicks when scrolling improved on some platforms.
  7. Controls: Select now shows square and round corners properly.

Using the PhoneGap CLI

iconTo date, we’ve encouraged our users to use PhoneGap Build to make their native apps. It’s quick, easy to use and meets the needs of most users. PhoneGap Build is a wrapper built on top of the open source Cordova engine. PhoneGap CLI lets you work directly with Cordova, which has a few advantages:

  • Build takes place on your local machine – no uploading to a service
  • Free – PhoneGap CLI is open source.
  • No limit on number of projects
  • Use the latest plugins: Sometime developers have newer versions of their plugin that are not in PhoneGap Build yet.
  • Use PlugIns which are not in PhoneGap Build at all.
  • Use custom PlugIns you have developed yourself.

But there are a few downsides too:
Continue reading “Using the PhoneGap CLI”

Using serverStorage to save your data

ServerStorage is an easy new way to save data in your AppStudio App. It works just like localStorage, but instead of saving the data locally on your device, it saves to the server.

This opens up many new possibilities: Companies could upload and download data, teachers could publish information for students, games could share scores or moves. It could even be used as a backup in the cloud.
Continue reading “Using serverStorage to save your data”

AppStudio 4.2.5 Released!

AppStudio 4.2.5 is ready. This release has an easy way to save data on the server, PhoneGap CLI support, and introduces Google Glass as a platform.

  1. Language: New serverStorage object: makes it easy to store data on the server.
  2. Deploy: PhoneGap CLI support added.
  3. Deploy: Google Glass support added.
  4. Code Window: Disable block comments in free form blocks.
  5. Controls: Error hiding Panel fixed.
  6. Deploy: Fix extraheaders line ending. Existing apps need to open property and hit OK.
  7. Deploy: versionCode added to default PhoneGap configxml.
  8. Design Screen: Fix non numeric left and top.
  9. Design Screen: Vertical drag now sets horizontal % correctly.
  10. IDE: Better message for Other files without an external file.
  11. Library: jQuery Mobile: Upgraded to 1.4.5. Fixes for iOS 8.
  12. Library: Updated iScroll to 1.5.3 and minified.
  13. Preferences: Moved PhoneGap options to a new tab.
  14. Runtime: Change close character to %times; in dialogs.
  15. Runtime: isEmpty() function improved. (Thanks, Tomas!)
  16. Runtime: PlaySound now fails gracefully in IE11.
  17. Runtime: Set NSBCurrentForm before global code executes.
  18. Samples: Dropbox samples updated.
  19. Samples: New serverStorage and StudentsServerStorage samples added.
  20. Samples: Google Glass sample added.

AppStudio 4.2.4 released!

AppStudio 4.2.4 is ready. This release has support for iPhone 6 and 6 Plus splash screens, plus a number of updates and fixes.

  1. Code Window: K no longer quotes text on some German systems.
  2. Controls: Panel.close function added.
  3. Controls: Panel auto sizes form when opened.
  4. Controls: Panel.previousForm adds reference to calling form.
  5. Deploy: Obsolete demos cannot use nsbapp.com.
  6. Deploy: Splashscreens for iPhone 6, iPhone 6 Plus added.
  7. Design Screen: Grid overlay is no longer wiped out by background color.
  8. Documentation: Localization and wiki files updated.
  9. PhoneGap: remove obsolete reference to feature properties.
  10. Runtime: PlaySound incompatibility with Safari fixed.
  11. Samples: New PhoneGapVidCap sampled added. (Thanks, Julio!)