Community Software Lab

Lowell, MA

We write, administer and maintain open source software to serve the undeserved.

We use and improve the skills of people with underused skills

We work to make hacker sub culture values (transparency, meritocracy and generosity) the values of the entire culture and bring about the post scarcity society.

Project Tangibles: 
We will prepare a white paper for distribution to the AIRs (Association of Information and Referal Systems) listserv, this white paper will describe the lessions we've learned and the tangible products we have created. If we should fail to meet our success critera (above) we will discuss our errors and the external factors that caused us to fail. (new!) LESSONS WE HOPE TO LEARN 1) It is possible to provide high quality information and referral services over the web at a much lower cost than is currently done through call centers. 2) A bottom-up, participatory, grass-roots approach to letting people know about community services is as effective or more effective than a centralized, top-down one. TANGIBLE PRODUCTS WE HOPE TO CREATE Software that other grassroots organizations can install Documentation on using the software and building support for it's use.

Supported Projects

Software Developer

Lee Goodrich

The VISTA will work to develop, an online database of resources to help those in poverty in the North Shore Port area.

add features
improve packaging
improve user friendliness
add infrastructure

An example of a new feature would be a report that lists the services that are not available in a given city.

We hope to have our software apt-get installable on Debian/Ubuntu Learning the Debian package system is a prerequisite for this goal

To achieve even better user friendliness, we do lots of usability testing. We watch people use our software, change things they are struggling with and re-test.

Infrastructure includes unit tests, integration tests, documentation, little utility scripts (like “clean”)

Fundraising & Outreach Coordinator

Carolyn Thompson

The Community Software Lab is in need of a Community Organizer to do fundraising and outreach for our organization. The current plan is to divide their time on structured tangible work like making networking phone calls and unstructured work like figuring out how to get more of the public using our sites. The VISTA will attend meetings of groups of agencies, demo our software, develop ways to increase viewership, attend public events like festivals, make followup networking phone calls to agency representatives after meetings, and contact agency & program contacts to get them to update or add entries to the database.

- Increase the number of organizations putting their records into our databases
- Increase the number of people searching for information on our sites
- Document a reproducible process for getting organizations to put their info on our sites.

Carolyn has brought in approximately $3,000 in undesignated donations, almost reaching her goal of $5000. Working with board members and other staff, Carolyn scheduled coffee or lunch meetings with past and potential supporters and asked them for money. Carolyn created a database of past and potential donors of more than 300 members. Carolyn also organized and ran a fundraising Tea that brought in approximately $1000. Considering our past best year for individual donations was about $700, this is quite a leap forward.

The Community Software lab now has the infrastructure for soliciting donations and for putting on fund-raising events. We also now have an organizational culture that values fundraising. To insure we can continue, our board and permanent staff have worked with Carolyn on fund-raising setup and implementation and pledged to continue when she leaves. Remaining work includes refining our presentation for different potential donors. We need to cultivate donors outside our existing network.

When Carolyn started we realized that her work should fit into a larger plan, a plan that we had not yet created. Carolyn has contributed to our business planning efforts and our draft/working business plan document. Carolyn has done planning work on an un-conference we are exploring putting on with another organization. Carolyn recruited somebody who is proving to be one of our better board members. Carolyn helped write two grants.

Donor Outreach

Eric Bryant

We provide free Internet hosting and low-cost custom web-based software development to non profit organizations. For instance, we provide free web and email services to 30 youth centers, homeless shelters, adult education centers, immigrant aid agencies, and disability advocacy groups. These agencies assist thousands of poor people every day.

We accomplish this mission with

* Free software (Linux, Perl, Apache, etc.)
* Below market salaries
* Volunteers
* Grants

The grant writer VISTA member will:

A) Make fundraising contacts and create fundraising processes

B) Develop and maintain relationships with funders

C) Establish ongoing donor database

D) Create calendar of grant deadlines

E) Write grants

The Community Software Lab (CSL) has never had a grant writing/fundraising position. Their director and staff members are volunteers. With 100,000 and the establishment of ongoing fundraising contacts and processes as the year-end goal, a grant writer will enable CSL to support the full-time salaries of its director and staff. This will dramatically enhance the services CSL provides to their clients.

Originally, Eric’s primary goal was to raise money writing grants. His secondary goals were to create a process for us to continue successful grant writing, to get a handle on our bookkeeping and accounting, particularly in regard to presenting our finances to funders. We had very limited success with the grant writing and other pressing needs. Eric shifted the focus of his work to supervising interns, expanding mvhub, doing paperwork for the government, creating a process to do that paperwork in the future and looking at non-grant writing funding opportunities.

We do have, however, a good start on a plan to get a better program. One of Eric’s clear successes was expanding into Lawrence. We were struggling here. In Lowell we know a lot of people. A quick reminder phone call was enough to get people to add their information This didn’t work in Lawrence where we knew few non-profit people. Eric broke the bottleneck. He asked people to fax us their brochures. He typed the brochures into our database and got people to confirm their records and got our stalled project moving. Before Eric arrived, our workers were contractors, volunteers or Americorps/VISTA members. We didn’t need a payroll system. Eric figured out the complexity of state and federal payroll taxes for our first employee.

It is testament to Eric’s abilities that he did what ordinarily requires a a software and a team of professionals to accomplish.”
- Dan MacNeil, supervisor

Community Outreach

John Miller

Goal 1: Increase Community groups served from 25 to 100
Goal 2: Increase & Improve UMASS Lowell / community anti-poverty community groups
Goal 3: Make it much easier for non techs to update and create web pages.
Goal 4: Create effective system for fund raising through grants
Goal 5: Increase number of effective volunteers from (3) per year to (5) by evaluating potential volunteers more carefully and providing more formal training to new volunteers.

John is a big part of our growth from 25 to 35 organizations.

Three program directors have told me almost exactly: “Without John, I wouldn’t have learned how to update my websie.”

Software Engineer

Marie Shvartsapel

Marie improved software we wrote to allow United Teen Equality to track interactions with their teens. Our 8 production servers need security patches installed regularly. Marie did weekly and emergency updates in December, January and February. Marie is also creating a database of service learning classes and is gathering requirements for a larger system.

Software Engineer

Chris Sacca

This project moved us from a system that involved either multiple passwords for a user to remember for our different services, or synchronizing files between machines. Under the new system, users have one password, there is only a single box housing all the user information, and data about users is easily associable with their account, allowing us to do organization-wide address books and the like.

After the LDAP Server, our email service was transferred off of the one box we were running all our services off of and moved to a much more powerful dedicated box. The new system involved keeping all the information about email accounts in the LDAP Server, the beginnings of a unified login page for all our services, and better Spam and virus filtering where Spam is quarantined online rather than sent to the user. Currently, our Spam filtering is about 99.18% efficient, with a false positive rate of 0.31%

Chris designed a handful of different Perl scripts to automate and / or facilitate the administration of our systems. These included a reworking of out account creation script to handle the new LDAP Server, various small backup and synchronization scripts, and scripts to make sure that current configuration files and the files in our backup were in sync.

Although we had checklists for setting our many systems up in the case that they failed and needed to be rebuilt, the instructions were complicated, and were not always compete. With this project, we attempted to put all the important configuration files into a backup system so that if a machine died, the configuration files could be replaced without rewriting them from scratch.

Implementation has just stared. Exchange Server is a powerful group collaboration and organization tool, but it is not aimed at small non-profits. It is non-free software and has high costs. The goal of this project is to take one of the open source alternatives to Exchange and implement it for one of our clients. The system will allow our client to use the full powers of their MS Outlook email client.

Chris is getting certified as a Debian GNU/Linux developer. As a Debian developer, Chris can add software we wrote to the Debian software repository. The hundreds of thousands of people using Debian GNU/Linux can then easily install our software.

Software Engineer

Kevin Loechner

1) Find, create, install, configure and maintain server based software.
2) Find, create and maintain server based documentation.
3) Test, code and document in support of open source projects.
4) Learn and teach software engineering and system administration.
5) Become familiar with the goals and needs of the organizations we serve.
6) Guide other workers (as needed)

Kevin Loechner has modified a pre-existing group calendaring program to be used by LTC as a community calendar.

April Cavalho and Kevin Leochner created a class evaluation database and piloted it with two of their Winter form classes.

Software Engineer

Charles McCallum

Chuck will be creating databases and preparing training modules.

Chuck is potentially the most talented software developer I’ve worked with. On technical merit he is at least the equal of Google and Cisco employes that I’ve worked with. He has accomplished more in his 6 months with us than many of his predecessors have accomplished in 2 years.

Software Engineer

Erich Jansen

We don’t need credentials, we need people like Erich who know exactly what is wrong with this code:

my @servers = split ( /[,\s]/, $sline) if ( $sline)

- Help create a new volunteer technical orientation
- Setup server dedicated to outgoing mail
- Allow 80% of email administration tasks to be self-service
- Improve Web-server security and usability
- Configure SPF (sender permitted framework)

Software Engineer

Kamala Kalluri

Ms Kallrui will be part of the group working to automate our processes so we can grow from serving 30 organizations to serving 100 or more organizations.

- Create or select customer relations management database
- Automate services provisioning
- Improve tech support processes
- Other related technical duties assigned

- Completed the downtime database
- Worked with several community groups to improve their websites
- Designed new business cards
- Participated in our presentation at the NTEN conference
- Updated our customer directory
- Developed application to measure server failures and failure causes
- Developed interface between teen center donor database and website to allow people to add themselves to the database
- Worked on installing and configuring photo gallery software on web server
- Installed and configured blog software, integrated it to website

Transmission Project