15.01.2015 Views

Journal of Research in Innovative Teaching - National University

Journal of Research in Innovative Teaching - National University

Journal of Research in Innovative Teaching - National University

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Ruby are objects that hold <strong>in</strong>formation about unexpected conditions. They conta<strong>in</strong> message<br />

str<strong>in</strong>gs and stack traces.<br />

Real Iterators<br />

Iterators are used to enumerate items <strong>in</strong> collections. Ruby has true or real iterators that work as a<br />

separate rout<strong>in</strong>e or a resumable execution context with a program counter and some local<br />

variables. Real iterators are flexible and much easier to use than regular iterator objects. They do<br />

not need to ma<strong>in</strong>ta<strong>in</strong> any <strong>in</strong>termediate states (Scott, 2006). A Ruby programmer would not need<br />

to worry about a loop counter or any boundary conditions when iterat<strong>in</strong>g through a collection<br />

us<strong>in</strong>g built-<strong>in</strong> iterator methods such as f<strong>in</strong>d, each, and collect (Matsumoto, 2001).<br />

Virtualization<br />

It is an established fact that many Information Technology (IT) students learn best through<br />

Hands-on-Learn<strong>in</strong>g (HOL). However, with the current trend for accelerated education and onl<strong>in</strong>e<br />

<strong>in</strong>struction; students are los<strong>in</strong>g the laboratory and HOL experiences (Romney, 2009).<br />

Virtualization can now be used to create Virtual Labs. Do<strong>in</strong>g so will not only restore the right for<br />

HOL to students but also capitalize on available technology to enhance the quality <strong>of</strong> accelerated<br />

education and its outcomes. Virtual labs were successfully used <strong>in</strong> the use case discussed <strong>in</strong> this<br />

paper.<br />

The idea <strong>of</strong> a Virtual Lab revolves around build<strong>in</strong>g a Virtual Mach<strong>in</strong>e (VM) image that<br />

can be distributed to students. Each student gets a VM that he or she can store on external<br />

storage and run from any computer. The distributed VM is ready to use with all required<br />

s<strong>of</strong>tware already <strong>in</strong>stalled and set up. In this <strong>in</strong>stance, each student has the problem to be solved<br />

<strong>in</strong> an already operational computer environment that belongs to him or her (Romney, 2009).<br />

System configuration on disparate laptops or workstations is elim<strong>in</strong>ated.<br />

In our use case, these virtual mach<strong>in</strong>es served as isolated development environments for<br />

students. If a student messes up a virtual mach<strong>in</strong>e, no other student is affected and no real PC<br />

needs to be fixed. The student can always start from a fresh clean VM image. Students are also<br />

advised to save backup VM images as they progress so they can easily return to a previous<br />

usable configuration, if needed. This advantage alone saves a lot <strong>of</strong> time and effort. There is no<br />

need to <strong>in</strong>volve IT support when students make mistakes, and there is m<strong>in</strong>imal effort to restore a<br />

virtual lab. We found that students are more confident when us<strong>in</strong>g virtual labs that allow them to<br />

experiment with no risk as they learn and try to solve the problem at hand.<br />

Desktop virtualization technology is now readily available <strong>in</strong> the marketplace. S<strong>of</strong>tware<br />

for build<strong>in</strong>g and runn<strong>in</strong>g virtual mach<strong>in</strong>es has been around for years and has reached pr<strong>of</strong>essional<br />

quality. Major s<strong>of</strong>tware companies provide free desktop virtualization products, such as Virtual<br />

PC from Micros<strong>of</strong>t, VirtualBox from Sun Microsystems, and VMware Player from VMware. In<br />

our use case, both Virtual PC and VirtualBox were used. VirtualBox is an open-source solution<br />

that supports Personal PC VM images and is available for MS W<strong>in</strong>dows, L<strong>in</strong>ux, Solaris, and OS<br />

X hosts.<br />

Grammar Implementation Use Case<br />

Agile Problem Driven Teach<strong>in</strong>g (APDT) ensures that students are better prepared for the<br />

workplace. The <strong>in</strong>volved agility components simulate the real-world problems that students will<br />

66

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!