Journal of Research in Innovative Teaching - National University
Journal of Research in Innovative Teaching - National University
Journal of Research in Innovative Teaching - National University
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