Slide 1 - University of Hartford's Academic Web Server

advertisement
Engaging Students in the Free
Open Source Movement Through
Civic Engagement
Trishan de Lanerolle, Ralph Morelli, Ingrid Russell*
Sarah Thayer, Rachel Foecking,
Myles Garvey*
Trinity College, *University of Hartford
October 3rd 2008
Agenda
• The Humanitarian FOSS Project
• “App Trac” and Software Development
• Humanitarian FOSS Summer Institute
• My Experiences with “App-Trac”
• My Experiences with “OpenMRS”
Slide: 2
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Humanitarian FOSS Project
Trishan de Lanerolle
Humanitarian FOSS Project
Trinity College
Educational Motivation
• David Patterson (ACM) Nov. 2005, (post Katrina): Let’s
help our neighbors!
• David Patterson (ACM) Mar. 2006:
Join the open-source movement!
• Our Question:
Will students building software for the community
help revitalize computing education?
Slide: 4
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
NSF/CPATH Grant
• CPATH: Revitalizing Undergraduate Computing
Education.
• Collaborators: Trinity, Conn, Wesleyan (TCW).
• Goal: Getting students involved in building open
source software to help society through:
– TCW video conference courses.
– Summer internship program 2008/9.
– National and regional workshops for faculty.
– National symposium on computing curriculum.
Slide: 5
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Educational Objectives
• Introducing new concepts and methodologies
• Attracting a new demographic
• Bringing Together Town and Gown
• Contributing to Society
• Portability and Sustainability
Slide: 6
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Portable/Sustainable Partnership
IT Corporations
• Host interns
• Fund and advertise
• Volunteer expertise
• Recruit students
Computing
Departments
• Teach computing
• Build FOSS
• Gain skills and
opportunities
Slide: 7
Humanitarian
Community
• Acquire software.
• Host interns
• Teach volunteerism
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Teaching Experiments
• 2006-2008
– 100+ students, 5 universities, 5 courses
2006
2007
Sahana
Group
Study(3)
AidMatrix
Summer
Institute
(5)
Application
programming
course (25)
2008
•CS 0
course(14)
•Software
Engineering
Group study
course(12)
(6)
•R. McDonald
Project(4)
•Software
Development
Course(20)
H-FOSS
summer
Institute
(13)
•Group study
(4)
•Group study
(4)
Slide: 8
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Beyond the lab…
Slide: 9
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Why Free and Open Source?
• Four Freedoms
– Freedom to run the program.
– Freedom to study how the program works.
– Freedom to redistribute copies so you can help your
neighbor.
– Freedom to improve the program, and release your
improvements to the public, so that the whole
community benefits.
“Free” as in “free speech” not “free beer”.
– Richard Stallman
Slide: 10
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
FOSS Values
•“Linux is a free … operating system originally
created … with the assistance of developers
around the world.”
•“Mozilla is … a global community and public benefit
organization dedicated to improving the Internet experience
for people everywhere. We work in the open through a
highly disciplined, transparent and cooperative
process…”
•“Apache projects are characterized by a collaborative,
consensus based development process… We consider
ourselves … a community of developers and users.”
Slide: 11
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Today: Openness Everywhere
“Software is just the beginning … open source is doing for mass
innovation what the assembly line did for mass production.
Get ready for the era when collaboration replaces the
corporation.” -- Thomas Goetz, Wired, 11/2003
Slide: 12
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Disaster Management
www.sahana.lk
• Sahana: A web-based IT system developed in
response to the 2004 Asian Tsunami.
• Deployments: Pakistan, Philippines, Indonesia,
Peru, China, India, NYC…
• Free Software Award for Social Benefit (2007)
• Trinity Connection: Trishan de Lanerolle, CS ‘04
• Our Contribution: Volunteer Management Module
– Volunteer registration, assignment, reporting, etc.
– Designed and built by Trinity students in collaboration
with industry and community experts.
Sahana means relief in Sinhalese
Slide: 13
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Our Volunteer Management Module
Slide: 14
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
OpenMRS - Medical Record System
• Medical record system for developing countries.
• Deployed: Rwanda, Kenya, South Africa.
• Developed by Partners in Health and the
Regenstrief Institute.
• Supported by World Health Organization, Center for
Disease Control, and other health organizations.
• Trinity Connections: Christian Allen, CS, ‘00 and
Giovanni Capalbo, ‘08.
• Our contribution: Touch-screen toolkit
Slide: 15
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Our Touchscreen Module
Slide: 16
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Other Examples
• “Our work is driven by a philosophy on software
freedom that aims to spread and bring the benefits of
software to all parts of the world.”
• Zulu for Humanity
• Martus is a secure software application designed to
gather, organize and back up human rights information
for social justice organizations
• Greek for witness.
Slide: 17
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Ronald McDonald House
•Developed RMH
Homebase, a webbased volunteer
scheduling and
database system for
the Ronald McDonald
House in Portland,
ME.
•Delivered the software on May 9, 2008 where it is
now in productive use.
•Installed a copy at Ronald McDonald House in
Savannah, GA on May 22, where it is also in
productive use.
Slide: 18
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Literacy Volunteers of Greater Hartford
• Track tutoring applications.
• Released on Sourceforge as free application for
anyone to download and use.
Slide: 19
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
“App Trac” and Software
Development
Ingrid Russell
Department of Computer Science
University of Hartford
Project Overview
• Literacy Volunteers of Greater Hartford (LVGH)
• Non-Profit organization that helps people with literacy
problems
• LVGH Issues
• Student Sign In
• Application Tracking
• Data Integration between Applications
Slide: 21
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Software Development Class
• Assigned to address LVGH’s problem via a project
• Ran parallel to Software Development Topics
• Class broken up into four development teams
• Each consisted of 3 - 4 students
• One team leader chosen for each team
Slide: 22
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Site/Client Visit
• Became Familiar with:
• Staff and daily operations in the lab
• The hardware and software on the machines
• The overall problem first-hand
• Outlined general ideas for the problem and how it
would be addressed
• Client Provided
• Sample Reports
• Database Outlines
• Sign off on Requirements
Slide: 23
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Requirements Document
• One requirements document per team
• Each requirement document included functionality, features,
and use cases
• All four documents were merged into one
Slide: 24
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Design/Implementation
• Students used merged requirements document
• Each team produced a design based on the modelview-controller (MVC) pattern
• One overall template design constructed from all the
teams’ designs
• All collaborated on how database would be designed
Slide: 25
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Design/Implementation (Cont…)
• Each team member was assigned a specific task
• Based on their background and strength
• Chosen by team leaders
• Broken up into
• Model Coders
• GUI Coders
• Database Coders
• Each team independently produced a different
implementation having the same functionality
promised by the requirements document.
Slide: 26
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Final Submissions
• Each implementation had its own strength
• Flexible in design and very module
• User-Friendly interface
• Login screen designed with ease in mind
• Caution about database as well as other problems kept in
mind
• Not all features completed, but most functionality working
• Each used as prototype for HFOSS Summer ’08 Project
Slide: 27
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Humanitarian FOSS Project
Summer Institute 2008
Sarah Thayer, Trinity College
Slide: 28
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Overview
• Who we are
• What we did
• Why we did it
• Why it’s important
Slide: 29
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Who We Are
• 4 Countries: U.S., Nepal, Bulgaria, Ecuador
• 5 Schools
–
–
–
–
–
Trinity College
Wesleyan University
Connecticut College
University of Connecticut
University of Hartford
• 13 interns
• 16 mentors from Boston, Chicago; Washington, D.C;
Buenos Aires, Argentina; Seattle; Colombo, Sri Lanka
• All levels of experience
Slide: 30
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Summer Projects
Slide: 31
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Summer Projects: Sahana, OpenMRS
• Developed Volunteer
Management and
Volunteer Credentialing
System.
•
• Structured Numeric
Support
• Image Import Module
Slide: 32
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Summer Projects: POSIT & ALPACA
• Portable Open Search
and Identification Tool
• phone-based tool for:
– search and rescue
missions
– scientific field work
– other custom applications
• built on the Google
Android platform.
Slide: 33
• InSTEDD: Teaching
machines to detect the
spread of disease as
soon as possible
• ALPACA Light Parsing
And Classifying
Application (ALPACA)
• a classifying tool
designed for use in
community-oriented
software as well as in
Academia.
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Summer Projects: AppTrac
• A web-based kiosk system
– monitors usage of literacy software to provide a good
evaluation for student needs
– provides an administrative tool for organizing users and
instructional periods
• Designed for Literacy Volunteers of Greater Hartford,
a nonprofit English-literacy organization
Slide: 34
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Why We Did It
• "Working in the field of Computer Science gives me the
opportunity to help people, which is one reason why I am so
interested in this field of study”
• “Because my main goal in life is to help disadvantaged persons,
and I was curious at how software development can factor into
that dream”
• “I was fascinated by the new challenge of organizing my thoughts
in a way that a machine could understand, and the satisfaction of
seeing the result in a fully functional program”
• “Open source development allows for experience that can
usually only be gained in the industry, and this experience is
hard to come by as an undergrad”
• "I've already learned more than I could've ever imagined”
Slide: 35
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Thoughts about the Institute
•
“All the development teams projected a warm home-like feeling, and
learning from others really brought a new perspective to the field of
Computer Science for me”
•
“The best part was how well we all got along and the flexibility of
working hours. I'm satisfied with the work we did. For a first shot at a
‘real’ application, I think we did a pretty OK job”
•
“I'm happy that I had the opportunity to expand my abilities as a
programmer”
•
“We all learned the basics of a flow of development, but at a much
faster pace. To actually work on a project that was going to be used
in the real world was quite motivating and inspiring, creating an
experience I had not found anywhere else”
Slide: 36
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Why It’s Important
• Computers are losing the appreciation for their original
function as tools (not toys)
• Use computers to help humanity
• Put more faith in computers and programmers
• Recruit more computer science students at the
undergraduate level
– Make CS more attractive
– Aim: to help the world (what better goal?)
Slide: 37
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Have a blast helping humanity!
2008 Summer Interns and Faculty
Sponsors, after the final
presentations
Thanks to:
- HFOSS
- NSF
- Mentors and advisors
Slide: 38
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
My Experiences with “App-Trac”
Myles D. Garvey
Department of Computer Science
University of Hartford
Overview
• Spring ’08 Experiences
• Summer ’08 Experiences
• Overall Experiences and Afterwards
Slide: 40
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Spring ’08
• Learning Through Lecture
•
•
•
•
Development Cycles
Requirement Documents, Use Cases
Design Techniques: UML Diagrams, MVC Architecture
Implementation
• How to base off Requirements Document
• Database set up and management
• Code of Ethics and Legal Issues
• Learning Through Practice
•
•
•
•
•
•
•
Slide: 41
Applying the theory to the practice
Working with a client
Deadlines
Team Work
Debugging
Testing
Unexpected Events
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Spring ’08: Afterwards
• Deeply inspired by the class
– Learning experience much different than before
• Passion to pursue continuation of App-Trac
Development
• Passion to learn more on Software Development
Slide: 42
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Summer ’08
•
Lessons Through Lecture
– First three weeks HFOSS had “lecture time”.
– Learned from tutorial based mini-projects
•
•
•
•
•
PHP
Java Server Pages (JSP)
The Spring Framework
Java 2 Enterprise Edition (J2EE)
MySQL
– Inspiration for independent reading
• Extreme research within JSP and the Spring Framework
• Further study in design concepts
•
Lessons Through Practice
–
–
–
–
–
–
Slide: 43
Meetings with Clients
Rapid Prototyping
Organization
Documentation
Final Presentation
Aiming for Deployment
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Overall Experiences
• Extreme amount of information and experience in a
short amount of time
– Capability to learn languages at a fast pace
•
•
•
•
•
Bonding and working with team members
Public Speaking and Presentation
Organization
Skills required for a real-world job
Many more found no where else!
Slide: 44
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Afterwards
• Skills acquired from both spring and summer
– Provided foundations that can be applied to other projects
– Served as a motivating catalyst for further pursuing Software
Development
• Now using skills in current projects
• Reassured confidence in myself and the field of
Computer Science
Slide: 45
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
My Experience with OpenMRS
Rachel Foecking
Department of Computer Science
Trinity College
OpenMRS
• OpenMRS is an electronic medical records system for
developing countries.
• It lets doctors record medical information about a
patient during an appointment.
• It is free and open source software
Slide: 47
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Image Import Module: Overview
• OpenMRS currently has no
support for medical images
• Various people are working
on giving OpenMRS the
ability to upload, edit, store,
and view images
• This module takes care of
uploading and editing
images within OpenMRS
Slide: 48
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Image Import Module :Goals
• Give a general way for users to
upload images in OpenMRS
and associate them with an
observation
• Allow users to crop and rotate
the image
• Provide a rudimentary way to
display the images
Slide: 49
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Image Import Module: Workflow
• The user specifies patient
information and picks an
image to upload
• The image file itself is
saved and a thumbnail is
created
• The user is then allowed to
crop or rotate the image
and edits are saved as XML
Slide: 50
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Image Import Module: Future
• Make the module more
general
• Add more options for image
editing
• Improve image viewer,
make larger images easier
to work with
• Figure out a better way to
store image metadata
Slide: 51
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Learning Experience
• Came into the program with a basic knowledge of Java
and HTML
• Learned more during the summer than the entire year
in classes
• Interactions with students at the various colleges we
worked with—Wesleyan, Connecticut College,
University of Hartford, University of Connecticut
Slide: 52
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Challenges Overcome
• Toughest challenge
was figuring out the
Spring framework
and how to develop
for OpenMRS
• Making a design
choice when you are
not a core developer
• Communication with
the developers
• Development
Environment (Slow
reload and deploy)
Slide: 53
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Looking Ahead: Community Building
Our Website: http://www.hfoss.org
Slide: 54
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
THANK YOU!
Questions?
www.hfoss.org
www.hfoss.org/symposium09
Apply for a 2009 Internship!!!
Slide: 55
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
What they say…
“Through HFOSS I’ve learned that Computer Science does not need
to be separated from the basic human needs, since a good piece
of free software can help save lives and resources”
“Most of the programs students write are just exercises that have
been solved many times…, I think students get a real satisfaction
out of working on something that potentially will have thousands of
users that they will never meet….”
“We’re trying to destroy the ‘computer science is just programming’
myth by bringing in not only real-world problems, but real world
organizations who are trying to solve these problems”
“ Open Source software development allows for low or no-cost highly
customizable software products that can be used to support many
causes who have limited financial means”
“Wow. I really got to look at how computer science can relate to
humanitarian efforts. I really loved delving into a world I’d barely
seen before: Open Source…”
Slide: 56
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Looking Ahead: Community Building
Our Website: http://www.hfoss.org
Slide: 57
The Humanitarian-FOSS Project © 2008
GHC 2008 Oct-03-08
Download