Wednesday, August 8, 2012

Moodle localization: to enrol or to enroll?

Ever wondered how would language localization affect a Moodle powered online educational site with more than 38,000 active users?

Moodle Trivia

We all know Moodle—the FLOSS CMS/LMS (a.k.a. e-learning software platform)—was first baked all the way in Australia. And you could see that Moodle was Australian at heart long before it grew to be the large international community that it is today.

One of these Australian fingerprints is the language it chooses to speak… err… spell.
The language pack installed and used by default by Moodle is English (en) and it prefers the British English spelling over the American English one.

Going international

No big deal, you might say. Well, the numbers can decide, so let's take a specific example: BigDataUniversity.com.

Big Data University—the online educational site about big data—has more than 38,000 users (at the time of writing). Registering, they follow free big data-related courses on subjects from Hadoop Fundamentals to Streams Computing or to Text Analytics.
Quite the vibrant, diverse community, and it's all powered by Moodle.

enrol - British English

One detail worth noting: more than 1 out of 4 users are from US. Now imagine the number of users that were eager to enroll in a course, only to find enrolment options… and how many emails reporting the enrol vs. enroll "misspelling" we got so far.

And this is not an isolated case. The Moodle forums are proof of how many users asked for an elegant way to change this spelling. This question is so popular, it even made it to the Moodle FAQ.

The elegant way to change enrol to enroll

The elegant solution is to change the default language pack used by Moodle:

  1. Install the English - United States (en_us) language pack in
    Settings » Site administration » Language » Language packs.
  2. Set the new language pack as the default language for the site via
    Settings » Site administration » Language » Language settings.

    Moodle: changing your preferred language
    Note that this change will only affect the new accounts, while existing users will retain their language setting. If they want to use American English, they can change it in
    Settings » My profile settings » Edit profile » Preferred language
  3. …and it works!
    enroll - American English

Sometimes it's the small details that will make your users happy.

Monday, July 30, 2012

Install and Configure S3cmd on Mac OS X

The big, big picture

I've been recently tinkering with the best practices for the backup and recovery of DB2 data servers. So I noticed that many people mainly focus on their backup strategy to ensure the safety and availability of the data. But the best backup strategy is not of much use if not leveraged by a strong recovery strategy. An efficient recovery strategy must enable you to quickly restore access to data after a software, hardware, or user failure.

So my goal is to turn the two DB2 servers powering BigDataUniversity.com into an example of DB2 best practices for backup and restore, by having:

  • an effective backup strategy
    • providing continuous availability during backup,
    • and, ideally, the ability to perform the backup process on the HADR Standby instead of Primary (hello, utopia!)
  • a rapid recovery strategy
    • including continuous availability during restore
  • and a strategy for backup retention.

s3cmd makes your life easy

Part of the optimization is persisting the backups on S3 and leveraging s3cmd to automate their deployment. Inside the Ubuntu powered Amazon instances, everything went smooth. But I first looked into ruby-s3cmd as soon as I wanted to experiment things from my Mac. The ruby gem felt more like bogging me down, so I went back to s3cmd, and simply installed it:

  1. first get s3cmd
  2. then switch to root just for the install: sudo python setup.py install
  3. at last, run s3cmd --configure to set up your AWS S3 credentials

…and enjoy!

Monday, June 18, 2012

Expand and Update your BigInsights

Roughly a year ago, you were reading about how MIT was harvesting big insights from big data, about discovering useful information by turning huge amounts of data into gists that are visually understandable. At that time, I was also in awe of IBM's Watson and how InfoSphere BigInsights is used to create a Smarter Planet.

But that was a year ago... Since then, many things happened.
On the Open Source side, the components integrated in the BigInsights platform experienced a consistent progress; take Hadoop for instance, who matured enough to reach version 1.0.
Meanwhile, InfoSphere BigInsights grew just as much: last Friday releasing BigInsights version 1.4. A nice tradition I wish other companies would copy from IBM is that the BigInsights v1.4 GA was simultaneous to its availability for deployment on public clouds: anyone can create their own Hadoop cluster (based on BigInsights v1.4) on the Cloud in less than 30 minutes.

BigInsights v1.4 available for deployment on public clouds
BigInsights v1.4 available for deployment on public clouds

The very same day, the 61 participants at the Big Data Developer Day hands-on labs used BigInsights v1.4 — delivered via Cloud instances.

***

The new version brings simple administration and management capabilities, rich developer tools, powerful analytic functions, up-to-date Apache Hadoop and associated projects, as well as many enterprise features and enhancements. The new capabilities are aimed to improving flexibility, consumability, and manageability.
Here are some updates I cherry-picked based on my interests and needs:

Update to open source component levels

Here are the new versions of the open source components shipped with BigInsights 1.4:

  • Hadoop 1.0.0
  • Flume 0.9.4
  • HBase 0.90.5
  • Hive 0.8.0
  • Oozie 2.3.1
  • Nutch 1.4
  • Pig 0.9.1
  • Zookeeper 3.3.4

Consumability and Usability

  • Text analytics development: Provide an enhanced user experience for developing text analytics applications, with improved navigation of result views, enhanced sorting and filtering, enhanced pattern discovery and progress reporting.
  • Developer tools: Better built-in support for text analytics, support for local mode map-reduce development, improved deployment of applications, and automatic creation of JDBC connections to Hive data sources.
  • BigSheets and web console: New chart customization features make it effortless to access and manipulate data the way you want. New sheets, macros, and readers make it possible to access more data and analyze it in new ways, giving you more control and improved browsing capabilities for HDFS and NFS files. The addition of new application input parameter types make applications even easier to run.

Flexibility

Version 1.4 of InfoSphere BigInsights brings support for Cloudera Distributions of Apache Hadoop (CDH). This allows enterprises to either run BigInsights with the IBM provided Apache Hadoop distribution or to deploy to a Cloudera CDH cluster. On the other hand, Cloudera CDH users can now take advantage of enterprise-class features such as text analytics, user-friendly data manipulation and exploration, and developer tools available in BigInsights.

***

If you want to join the Big Data Developer Day participants, you might want to get a
first-hand experience by either getting the free version — InfoSphere BigInsights Basic Edition or whet your appetite with the Hadoop and Big Data courses on BigDataUniversity.com.