2009 Internship Reflection ITEC 4900 Student Internship Spring 2009 Kyle Veitch

advertisement
2009 Internship Reflection
ITEC 4900 Student Internship
Spring 2009
Kyle Veitch
This Paper details the ITEC Internship projects created by Kyle Veitch and
worked on during the spring 2009 semester. The first section discusses my expectations
and goals for the semester. The next section will detail the software used in creation and
support of the projects. The third section will discuss some of the challenges I had to
overcome and the surprises that I came across during my work on these projects. After
that I will discuss the results of the projects. Followed next by my conclusions on the
projects and the course. Lastly I will discuss what I would like to do in the future using
the skills I obtained during this course.
Introduction
When I signed up for the ITEC 4900 spring internship program I assumed that I
would be placed by the college into an internship position which would consist of some
form of help desk or lab technician job. I was pleasantly surprised to discover that
although the college had knowledge of available internship positions it was entirely up to
the student to secure them. My original idea of what the course would entail was entirely
wrong. Firstly, students were required to create and maintain a professional quality
resume. Students were also required to make their own connections with potential
internships and interview accordingly. The internship I eventually chose under Dr.
Jenkins allowed me the freedom to design and implement my own projects within the
scope of the internship position. My projects consisted on developing and editing video
tutorials for Dr. Jenkins JavaWIDE application. These tutorials were posted on both on
youtube.com and embedded into the JavaWIDE site.
Software
In order to create my tutorials I made use of multiple software applications.
Firstly in order to create the video for the tutorials I required a screen capture utility.
There are many pay-for options for screen capture utilities, however without a budget for
software my options were much more limited. In the end I chose a screen capture utility
called CamStudio. CamStudio is an open source screen capture project which is free for
use. While it is fairly easy to use, it is extremely limited in scope. Cam Studio allows for
screen capture on a wide range of resolutions and formats. The output of the program
can be saved as a .wma, .avi, or .mov. This was very useful during the production phase
of my tutorials.
For the editing of the tutorials I used a combination of Windows Movie Maker
and Apple IMovie. Both of these programs were chosen for their availability and their
ease of use. While Windows Movie Maker and Apple IMovie are much more limited
than professional video editing software such as Adobe Premier, they offer most of the
necessary editing option I needed for this project. I would definitely have liked to have
used a more advanced video editing suite, however many of them are extremely
expensive and therefore beyond my ability to maintain. However, with more advanced
software I could create much more advanced tutorials.
The last piece of software I use was Audacity. Audacity is an open source audio
editing program. I specifically used this program to bypass some of the limitations of
both Windows Movie Maker and Apple IMovie. Audacity is a fully open source project
with many extensions and plug-ins capable of increasing its capabilities.
Challenges and Surprises
I came across many frustrations and surprises during the course of this internship.
First off, as I had to capture the entire video for the tutorial in a single unedited sequence,
I ended up having to repeat capture sessions multiple times after making minor errors. In
time I learned to write a script for my actions and follow it. The script helped make each
session more organized and direct with less mistakes and hesitations. Another problem I
ran into was the capture software itself. As the movie files the software created were
uncompressed they would often be multiple gigabytes in length. These extremely large
files were cumbersome as I would often have to record multiple versions and transfer
them from my laptop which I used to capture the video to my desktop or to one of the
school computers. While experimenting with digital editing I came across many
problems as well. My first versions of the tutorials made use of subtitles that were set
directly against the background video footage. The subtitles were extremely hard to read.
Eventually I decided upon a method where a banner of solid color provided a backdrop to
the subtitles in order to add contrast. These banners however also caused a fair amount
of frustration as only a limited amount of text could fit on each banner. That meant that
many of my subtitles had to be shortened or broken into multiple segments in order to fit
on the banners. Another major problem I came across with both Windows Movie Maker
and Apple IMovie was the inability to layer multiple audio tracks to accompany one
video file. This meant that if I wanted to have a video that contained background music
and a narrative I must use another application to create a single audio file which includes
both audio tracks, one superimposed upon the other. This meant that I would not be able
to adjust the audio levels of each layer on the fly. This resulted in having to create extra
versions of the audio files multiple times in order to tweak the background audio and the
foreground narrative. My solution to this was to use Audacity for all my audio files and
import the audio tracks into the video editing software as needed.
Some surprises I encountered during the process were how quickly some of the
java programming skills I developed years ago began to return. I was extremely
surprised and pleased with how easy JavaWIDE itself was to use. The interface of the
program is quite intuitive and the wiki based development platform is very helpful for
reviewing your work and discovering how each program works. I very much enjoyed
working with Dr. Jenkins as he was very easy to work with and had very specific ideas
for how he wanted the videos done and what information would be contained in them.
Overall I felt that the video tutorial process went very smoothly and despite all the
hiccoughs there were very few setbacks (two weeks of jury duty not included).
Results
My final released versions of the tutorials are three separate episodes. The first
episode is an introduction to the javawide platform and a simple program. This tutorial
video takes the viewer step by step through the creation a “Hello World” program by the
use of short text banners and example video. In the first video special attention is made
to the JavaWIDE interface and introducing some of the basic tips and tricks of the
website and application. The video contains background music from the creative
commons repository. By the end of the first tutorial, users should be able to use the
JavaWIDE interface to compose a simple program and save that program to their
computer.
The second tutorial video focuses on the JavaWIDE game engine known as
FANG. IN the FANG engine tutorial viewers are guided through the process of creating
a simple game using text banners and a video demonstration. The tutorial also again
showcases some of the basic tips and tricks of the JavaWIDE interface. This movie also
contains background music from the Creative Commons repository. The video features
Opening titles and ending credits which contain information about where to go to find
information on JavaWIDE.
The third and final released video consists of a tutorial on more advanced features
newly implemented in the JavaWIDE application. This tutorial makes use of both banner
text and a spoken narrative to guide users through the creation of a simple game using the
newly refined JavaWIDE interface. This tutorial also focuses on the creation of javawide
user accounts and the recovery of previously saved code. This tutorial also shows many
of the more advanced features of the JavaWIDE IDE such as integration of the Java API,
code completion algorithms, auto importation of classes, and many other features. By the
end of this tutorial users should be able to create new programs and open previously
saved code as well as use some of the more advanced features of the JavaWIDE
application.
Part of my project aside from creating tutorials was to provide a method by which
others could view my work in order to further the JavaWIDE effort. To this end I created
a JavaWIDE Youtube channel in which all of the released versions of my tutorials will be
published. The channel currently contains all three of my final video releases however
there are plans for many more tutorials.
Conclusion
Knowing what I know now I would have done things very differently. Despite
the cost for better video capture and editing software, I think I would have found some
more advanced software to use. Both windows Movie Maker and Apple IMovie are
extremely limited in what they can do. I think now that investing in a more advance
video editing suite would have been a good choice for both my productivity and for the
final product. I think that many of the pitfalls I encountered could have been avoided
with a combination of better software and more forethought and planning on my part. I
also could have benefited from brushing up a bit more on my Java programming skills.
Knowing what I know now, I also would have made sure to encode my video under HD
video compliant formats so as to increase clarity on youtube.
Future Work
Now that I have a better understanding of how to use both the JavaWIDE
platform, my video capturing program, and the video editing software I would like to
create more JavaWIDE content in my spare time. Also I feel that new avenues can be
explored for getting JavaWIDE content into the eyes of potential users and investors. I
would like to explore posting links to JavaWIDE or various social networking and news
sites such as Digg.com, Slashdot.com, facebook.com, and many others. I think that with
more advanced videos and enough social networking that many people could come to
discover how great of an application JavaWIDE is. There is still much to show about
JavaWIDE that the tutorials I created do not. As javaWIDE continues to grow and evolve
many more tutorials will be needed to show off newer and better content. I would like to
remain a part of the JavaWIDE project and I hope that future interns have the opportunity
to as well.
Download