PHP Demo Program


Ron Fredericks writes: I am LectureMaker’s video platform technologist. So I thought I would demonstrate some of my sample code in building a simple website demo.

The demo consists of three pages that feature the following code

  • PHP programming with OO and model-view-controller (MVC) architecture
  • SQL file to create a new table and load some sample user data
  • PHP sessions and OO MySQL Data Manager
  • Use of CSS style sheet and tags for web page layout and forms management
  • Use of JavaScript and jQuery functions and project library
  • A RESTful API allowing users to move data between the three pages

Visit the running project’s website here:
www.lecturemaker.com/test/HP_login.php

Download a copy of the project’s source code from GitHub:
https://github.com/RonFredericks/PHP_Demo_Project

Overview

Build a 2-3 page website with a single page view concept with JavaScript mvc and REST service. The concept of the site is to choose your background. After login the user can select a file to upload and that becomes the background image of the landing page. Page 1 is login with at least 3 different users who can login. Page 2 is landing page which will show the image uploaded and page 3 is upload the background image you like. Page 2 and 3 should have a logout button.

Overview of the Project

Overview of the Project

FAQ

What is OOP?
Object Oriented Programming, or OOP, invokes the use of classes to organize the data and structure of an application:

  • Objects: instances of a class
  • Inheritance: ability to pass characteristics and behaviors from a base class
  • Access Modifiers: ability to protect data and methods
  • Interfaces: a form of abstract class that acts as a model for creating a derived class
  • PHP 5 Built-in Classes: Standard PHP Library (SPL), mysqli, PDO, SQLite, XML support, relfection, Iterator interface, magic methods, objects passed by reference
  • Design Patterns: a reusable set of solutions that solve practical problems

What is MVC?
Model–View–Controller (MVC) is an architectural pattern used in software engineering:

  • Model handles database logic. Code in the model connects to the database and provides an abstraction layer.
  • Controller represents the business (application) logic i.e. all our ifs and else.
  • View provides the presentation logic i.e our HTML/XML/JSON code.

What is REST?
Representational state transfer (REST) is a predominant web API design model for distributed systems. PHP examples include:

  • Use FORM tag with GET or POST to send data to another web page.
  • Use cURL to set the URL, create array of POST data, set options such as return XML data, and make request.
  • Create a POST request by opening a TCP connection to the host using fsockopen(), then use fwrite() on the handler returned from fsockopen().

Continue reading

Technorati Tags: , , , , ,

Posted in PHP, Software Platforms | Tagged , , , , , | Leave a comment

Three Public Speaker Styles for Video


How does a person create online video for their business, product, or service? I define three styles that a presenter can use. The same methods can be used in a classroom to broadcast live teacher/student interaction, eLearning program, or by marketing teams putting on live events.

Record Your Message With Style

As co-founder of LectureMaker’s portable video studio, and a professional public speaker, I have come to recognize three different styles that work well in planning your next online video. In many practical circumstances more than one style may be used at the same time.

See the image below for an overview of the three styles:

  • Impromptu – speak using a well rehearsed mental framework to deliver fresh exciting content in a measured amount of time
  • Prepared – speak to a target audience using a technique already known to motivate a specific audience type in a measured amount of time
  • Trial and Error – speak without rehearsal, specific impromptu framework, or known technique, then edit the content in post production to meet an objective

LectureMaker's Video Production Service for Three Public Speaker Styles

LectureMaker’s Video Production Service for Three Public Speaker Styles (click image to enlarge)


Continue reading

Technorati Tags: , , , , , , , , ,

Posted in Corporate / Business, Lecture Secrets | Tagged , , , , , , , , , | 1 Comment

ETMOOC – second post – The 7 Stage Model for MOOC’s

Ron Fredericks writes: I will present my idea for a 7 layer service classification for MOOC’s (Massive Open Online Courses) and the new opportunities it might create. I propose that the responsibility assumed by the supporting web platform(s) would depend on what service layer of the network-student-teacher is being addressed.

Dividing MOOC’s into three types: Network, Task, and Content (see Lisa M Lane http://lisahistory.net/wordpress/2012/08/three-kinds-of-moocs/) is a useful description of the infrastructure behind these platforms. This breakdown does not supersede or conflict with dividing MOOC’s into two application types: Collaborative/Constructivist cMOOC’s and Information Dissemination (following edX style) xMOOC’s as a description of the educational process used in a MOOC (see Dave Cormier http://reflectionsandcontemplations.wordpress.com/2012/08/23/what-is-a-mooc-what-are-the-different-types-of-mooc-xmoocs-and-cmoocs/).

I believe we are going to eventually divide MOOC’s into perhaps 7 stages following an abstraction of the typical network hierarchies – such as the 7 layer OSI (Open System Interconnect) model: physical, data link, network, transport, session, presentation, and application. Here is an example of how multiple software products work together at multiple layers to produce an effective network…

Examples of a network stack based on the OSI 7 layer model.

Examples of a network stack based on the OSI 7 layer model.

Some of these layers may seem benign to a three-way web service provider-teacher-student educational process. For example: can a MOOC platform include data mining content so researchers can probe results of prior courses to quantitate learning efficacy or design new cognitive models. That data and the search API might be optimized at one of the layers in an OSI-like metaphor of no direct interest to the student-teacher relationship short term.

Another example might be to use one layer of a MOOC hierarchy for corporate/university sponsorship with reciprocal benefits such as identification of future employment or PhD candidacy without waiting for an elaborate certification process down the line. Yet another API for MOOC’s at a particular layer might be a technology transfer unit based on new ideas generated during a MOOC course with benefits enriching the participants involved.

I imagine there are many other examples based on the reality that there is more than one student and sometimes no specific one teacher and many web services loosely integrated into the MOOC platform with many global borders spanned. Each layer in a MOOC classification would allow participation from other service to meet these needs uniquely.

Yet through all this, I believe there are many ways to classify MOOC’s. It would be helpful to have a layer system from which to sub classify MOOC’s as in the three way definition at the infrastructure layer or the two way definition at the application layer, presented earlier.

The responsibility of the platform provider under my proposed multilayer (say 7) classification would be for each of them to support the API’s being created from the layer below, layer above, and other service offerings by other vendors at the same layer.

These are just my initial thoughts – but I hope to read more discussion around platform responsibilities and how this translates into more opportunity and reusable information on multiple layers.

For more information on the etmooc project: http://etmooc.org/

To discuss this further with other education professionals, consider joining my LinkedIn group: http://www.linkedin.com/groups/MOOC-Massive-Open-Online-Courses-4652870

Technorati Tags: , , ,

Posted in etmooc | Tagged , , , | 14 Comments