Archive for the ‘Active Projects’ Category

So as opposed to creating a UI that holds database values. The database itself creates the UI based on its DTO – I’m a “self-proclaimed” genius. Or at least that’s what I told the group and they laughed.

We covered building a simple Mobile menu system (using jqmphp) and how to run it in WAMP. And discussed how to make it better parsing loops (reading DTOs from a service) as opposed to hard-coding everything. This parsing code needs to be written for the Store Front Mobile Project.

Basic Menu System

Basic Menu System

And went through some simple database stuff from W3Schools (try it)

Here is the code for the first menu system (shown above):

* Lively – Basic Menu System
* @package jqmPhp
* @filesource

* Include the jqmPhp class.
include ‘lib/jqmPhp.php’;

* Create a new jqmPhp object.
$j = new jqmPhp();

* Config ‘html’ and ‘head’ tag.
$j->head()->title(‘Basic Menu System’);

* Create and config a jqmPage object.
$p = new jqmPage(‘basicmenuesystem’);
$p->theme(‘b’)->title(‘Basic Menu System’);
$p->header()->theme(‘a’)->add(new jqmButton(”, array(new jqmAttribute(‘data-iconpos’, ‘notext’)), ”, ‘a’, ‘index.php#’, ”, ‘home’));
//Get the Button Added and Set Attributes
$p->header()->items()->get(1)->attribute(‘data-iconpos’, ‘notext’)->attribute(‘rel’, ‘external’);

* Create and config a new jqmListview object and add Basic Items.
$list1 = new jqmListview();
$list1->addDivider(‘Basic Menu System’, ”)->inset(true);
$list1->addBasic(‘Menu A’, ‘SubMenuA.php#’);
$list1->addBasic(‘Menu B’, ‘SubMenuB.php#’);
$list1->addBasic(‘Menu C’, ‘SubMenuC.php#’);


* Generate the HTML code.
echo $j;

Kent State  U asked me to teach another course for them. I’m so psyched, it’s on ISTQB Certification. Check out the outline below:

ISTQB Outline Fundamentals

1. Introduction

2. The Basics of Software Testing

  • Terms and Motivation
  • The Fundamental Test Process
  • The Psychology of Testing
  • General Principles of Testing

3. Testing in the Software Lifecycle

  •  The General V-Model
  • Component Test
  • Integration Test
  • System Test
  • Acceptance Test
  • Testing New Product Versions
  • Generic Types of Testing

4. Static Testing

  • Structured Group Examinations
  • Static Analysis

5. Dynamic Analysis – Test Design Techniques

  • Black Box Testing Techniques
  • White Box Testing Techniques
  • Intuitive and Experience Based Test Case Determination

6. Test Management

  • Test Organization
  • Test Planning
  • Cost and Economy Aspects
  • Definition of Test Strategy
  • Test Activity Management
  • Incident Management
  • Requirements to Configuration Management
  • Relevant Standards

7. Test Tools

  • Types of Test Tools
  • Selection and Introduction of Test Tools



We had a great meeting. Several projects are in the works and were dicussed:

  • Stuart’s Investment Strategy Game (Flex)
  • Ed, Ted, and Bill’s Mobile Coupon system (HTML5 and Flex)
  • Kyria is planning a Chinese Mandarin Site (HTML5)
  • David’s EPA contract (Flex and MATE)
  • I’ve got a new open source Flex piece (for Ed’s app)
  • Jonathan is working on a Ray Tracing (JavaScript) game and he demonstrated some of his 3D work
Basically, we are using HTML5 for our mobile delivery and Flex for our desktop applications. That’s why Ed’s project has both a HTML5 and Flex piece.

Here’s a few links we looked at today:


Javascript Gaming

Relational Database Basics

Chinese Roots

Yet another Mobile Template

Chamber of Commerce

Hebrew Alphabet Flyer

Posted: January 21, 2012 in Active Projects

Here’s a fun project. Made this flyer in Photoshop for my Hebrew connect group. It took longer than I would like to admit. But the alphabet portion is really useful – check it out!

If you want the Photoshop files – email me at and I will send them to you.

Just a little background: Greeks adapted the Hebrew letters and added vowels which was funneled through the Romans and became our Alphabet. Hebrew is an abjad language – a system where each symbol usually stands for a consonant. So there have been a few additions since Paleo-Hebrew.

Hebrew is the root alphabet to most languages in the world. However, it’s different in that its alphabet not only gives the sound of the words but also their definition. For example Aleph-Bet means strength of the tent, or FatherJehovah means nailed creator (יְהֹוָה). God’s personal name after the fall of man.

Got a question on this –

I got a question on the origin of languages…Each letter of Phoenician (which is almost identical to the Paleo-Hebrew) gave way to a new form in its daughter scripts. Left to right:Latin, Greek, Phoenician, Hebrew, Arabic. See the image. If you are an Orthodox Jew you will believe that the Hebrew Alphabet and Man were created in the same time frame. Or more specifically, God created the letters first את and used them to create the universe. No doubt Paleo-Hebrew came from Shem (one of Noah’s son). But then again it depends on your world view.

Moodle for Business

Posted: December 23, 2011 in Active Projects, UCF Dissertation

Moodle for Business

As Moodle has matured as a learning platform, many corporations have found they can both save money and enhance business processes by implementing Moodle to streamline interviews, training, and internal communication.

Moodle’s open source licensing also makes customization and integration easier and cheaper than proprietary systems. Moodle has built-in tools for integrating with backend authentication tools, such as Active Directory or OpenLDAP, enrollment plug-ins to take a data feed from an HR system to enroll people in courses, and a web services library to integrate with an organization’s other systems. Some organizations choose to go further, customizing individual modules to meet their unique needs. Others have added components for unique tracking and reporting, including development of a full data warehouse.

Moodle’s low cost and flexibility have encouraged widespread adoption in the corporate sectors, especially among smaller companies. According to the eLearning Guild 2008 Learning Management System survey, Moodle’s initial cost to acquire, install, and customize was $16.77 per learner. The initial cost per learner for SAP was $274.36, while Saba was $79.20, and Blackboard $39.06. In addition, Moodle’s open source licensing provides a considerable cost advantage against traditional closed source learning management

Moodle Communication

Out of the box, two-way communication in Moodle comes in three flavors:

  • Real-time, synchronous chat: Moodle’s very own built-in instant messaging system (such as MSN), allowing clients to talk to clients.
  • Forums: Just like old-fashioned message boards. You post a question or comment and later on someone posts a response.
  • Messaging: Don’t be confused by the name; the Moodle messaging service allows you to send a message to any other Moodle user. This is different from chat in that it’s more like e-mail messaging, than instant messaging.

In addition, corporations often use wikis to disseminate information.  The Moodle wiki module enables employees to collaborate on a group writing project, build a knowledge base, and discuss class topics. As a wiki is easy to use, interactive, and organized by date, it encourages collaboration among the participants. This makes it a powerful tool for creating group knowledge. The key difference between a forum and a wiki is that when users enter a forum, they see a thread devoted to a topic. Each entry is short. The users read through the thread, one entry at a time. The result is that the discussion becomes prominent. In a wiki, users see the end result of the writing.

Moodle Web Conferencing

Real-time web conferencing is a need that often arises in the corporate setting. Distributed workforces have increased the costs in time and money for arranging face-to-face training. Adding synchronous video and web conferencing to Moodle helps provide a deeper real time communication than just chat. Three well known Moodle integration modules for web conferencing are Adobe Connect, BigBlueButton, and Remote-Learner. Regardless of which one you choose it is important to implement training on these systems to ensure their success.

Moodle for Mobile

Developing responsibly in today’s market requires a mobile platform. Implementing Moodle for mobile can be done by using a plug-in such as Moodbile (which is in beta) or by writing your own HTML5/JavasScript  Moodle modules. Clearly writing your own modules gives a great deal of leverage over your applications but also requires a higher degree of competence in coding. Regardless of which way you go, you must test your programs on different mobile devices to ensure compatibility.

Moodle Integration

Moodle 2.0 introduced two new important integration features: repositories and e-portfolios.

The Repository integration allows admins to set up external content management systems and use them to complement Moodle’s own file management system. Using this integration you can now manage content outside of Moodle and publish it to the system once the document or other content is ready.

The Portfolio integration enables users to store their Moodle content in an external e-portfolio system to share with supervisors, clients, fellow employees, and others.

Just to list a few options: Alfresco is an open source content management system that integrates well with Moodle and can act as Moodle’s content repository. Mahara is an open source e-portfolio system which has been tightly integrated with Moodle 2.0. Google Docs is a cloud-based office suite which is available for free from Google. Corporations can sign up for a Google Enterprise account.

Moodle E-Learning

Education and industry approach e-learning in fundamentally different ways. While educators will typically use menu-driven out-of-the-box features to weave course material into the Moodle CMS, industry developers will create stand-alone courses that talk to the Moodle CMS using a middle tier language such as JavaScript, or PHP. This is the most efficient way of developing e-learning courses  since the courses are portable, can be developed independent of the CMS, and can be easily be ported to other CMS systems such as SABA. The reason why industry prefers this method is that it is most cost efficient. However, it does require a higher level of sophistication in programming skills which explains why educators shy away from this approach.

The average educator lacks the necessary programming skills required to create separate courses that use a middle tier language to talk to Moodle. However, templates can be created that assist educators in loading such courses.

 Moodle and Security

Moving your classes and resources online with a Learning Management System such as Moodle opens up a whole world of possibilities for teaching your employees, and streamlining learning. However, it also opens up a number of threats as your employees, private information, and resources become vulnerable to cyber-attacks. Proper safeguards must be put in place to keep the bad guys at bay.

For example, web robots can harvest e-mail addresses to send spam e-mails from accounts, which could have devastating effects. Moodle comes with a number of set roles and permissions which keep out the spam bots, using Moodle’s authentication features. Many times dangerous web attacks come from inside your system. You must monitor user activity to make sure that there are no threats from registered users. In addition, you must work with the tools that enable you to back up your settings in case of a crash.

Communication Proposal

The Corporate Communication System should include the following elements:

  • Document Repository
  • Forum
  • Instant Messaging (Optional)
  • Web Conferencing
  • Corporate Wiki

Each element will take about 10 hours of consulting time. In addition, time should be included for setting up proper security (20 hours), branding (5 hours), and creating a series of video tutorials (20 hours) to assist in coaching. In the long run, video tutorials will decrease the need for outside coaching as more people internal to the company become involved in the process.

 E-Learning Proposal

The e-learning proposal involves creating stand-alone courses that talk to the Moodle CMS. More specifically a course shell (or course template) should be produced. This gives designers the ability to load and create new courses without any­­ programming involved. Creating this framework will take 50 hours of work. Integrating the framework with Moodle will take another 20 hours of work. This course template should be created in HTML5 to facilitate mobile delivery.

Once the framework/template is created lower paid designers can be trained to create and load course content. Video training on how to create courses using the framework will take approximately 20 hours to produce, and 10 hours per month should be dedicated for course maintenance. Building such a framework will greatly reduce the cost and time required in creating/testing e-learning courses. Using video training will drastically reduce training cost as more people become involved in this project.

Note: Fifth Third bank successfully uses a similar approach in their e-learning development.

Well this meeting was all about games…we were in the final stages of wrapping up Stuart’s Financial game and discussed issues we were having. Finished the framework on Sunday! Hurray!!! PTL

Fixing amfphp server deploy channel error

1. Basically, we had an issue with amfphp not running on our server…just remove the  .htaccess file … so many people have this problem. To check  your amfphp once you’ve put it on your server,  go to and make sure your services are running…if they are, you are OK. When you run on production…remove the browser folder from amfphp so people don’t muck with your services.


2. Make sure you put amfphp in your server web root…this really makes it easier to reference as well. Here is an example of the MATE services-config file I used for our Flex deploy:

<?xml version=”1.0″ encoding=”utf-8″?>
<service id=”amfphp-flashremoting-service”

<destination id=”amfphp”>
<channel ref=”my-amfphp”/>
<channel-definition id=”my-amfphp”>
<endpoint uri=”/amfphp/gateway.php”

Amfpnp Error

3. amfphp 2 also had a php error I removed…it’s easy to find…just comment out the effected lines.

Besides that we wired up all the MATE and it ran beautifully…will be releasing a template version of my MATE amfphp/sqlite framework. The back-end is sqlite/remoting using php middle tier – it’s really fast!

Other Games

Kyria and Bill…started a chineese game

Jonathan and I…started an e-learning biking game

David…continued working on his card game/memory game and getting his android web app ready for distribution.

Note: If you are worried about using amfphp versus zendamf…don’t, the same guy wrote them both. However, zendamf is the official Adobe supported one…will release a version of it in the future.

I’m always blown away by the fact that you always get back more than you give. Stuart has been in livelyfbug since its beginning. His Flex is amazing, and he’s taking it to the schools with an online Math Literacy Campaign! Check out the video below…I’m so blessed.

If all I’ve done by starting livelyfbug was to help Stuart, it would be enough!