FPYN

Frontline Partners with Youth Network (FPYN) is a network of people working directly with youth across sectors and the GTA. It emerged in December 2005, when a group of frontline workers came together to support each other in dealing with the effects of gun violence. Since then, the network has continued to grow as an expression of the heartfelt need among frontline workers to connect with each other – there are over 1200 people signed up for our newsletter. At the core of our network is a bold, real, innovative, and dedicated group of people working from an anti-oppression framework directly with youth. Our network strives to continuously recognize the link between systemic oppression and the violence that initially brought us together in all that we do.

Our mission is to connect frontline workers to heal, learn and work for change. FPYN ensures that frontline workers, as community healers and builders, are able to access systems support and training, reflection and advocacy, and information/resource sharing. The network has also developed and will continue to develop resources specific to responding to the grief and trauma frontline workers face on a regular basis. FPYN continues to evolve and develop through supporting the energy, interests and passion of frontline workers to heal ourselves and to make systemic changes. If you would like to connect or for more information, email fpynadmin@gmail.com and check out our website at www.fpyn.ca.

Project Description

Notes for Developers

This project description outlines what a fully implemented system would look like. Interested in this project but don't have the capacity to build the full system? Here are a couple of ideas:

  • Make use of existing open source solutions that do similar functions such as time tracking, calendars, scheduling, reporting, and modify/add to them as required.
  • Build an interesting (and non-trivial) part of this system. Contact the project coordinator to discuss project ideas. Also note that there is some flexibility in the requirements to add more/fewer features.

 

Big Picture

In some ways this system will sound like a time tracking system, of which there are many options available. Unlike most time tracking systems, however, the goal is not to check that people are working some required amount of time, nor is it intended to be used for billing purposes. In fact, one person's time may add up to more than 7.5 hours per day because some time would be counted against multiple categories. Instead, the goal is to flexibly analyze time from different lenses. This is partly to understand and improve how time is used internally, for example being able to ask questions like “How much time to we spend trying to get new sources of funding?”. It is also to be able to develop better relationships with funders through more comprehensive reporting, for example by being able to quantify how much time really went into achieving an objective the funder asked for.

Key Features


1) Track & tag time

Users can enter time for any day (past, present, future).

When entering time, users enter:

  • How long (X hours, Y minutes) with option to enter “start” and “end” times and calculate amount of time automatically
  • Description of activity (e.g. “Team meeting to discuss new funding sources”)
  • Notes (optional) – open field for making notes about the activity


For each block of time entered, users also tag time according to categories. The categories are very important because that is how analysis is done.

Categories:
There are two levels of categories. At the top level, there are big bucket categories. There can be a fixed number of big bucket categories (about 10) or the option to add as many as you want. The organization's administrators for the system has the control to set what they want the top level categories to be, e.g. “Funding”, “Type of Activity”, and then these categories would not change.

Under each big bucket category there are an unlimited number of subcategories. Some are preset by the administrators to create consistency, and some can be added at any time by users. For example, under the “Type of Activity” category there could be “meeting,” “phone” and “email” as preset categories, and when entering time a user can also add “webinar” if that category did not exist yet. Choosing subcategories could look like this:

Sample dropdown box for categories

It is essential that users be able to select multiple subcategories, from the same big bucket category or multiple or both, including the ones they create. For example the “team meeting to discuss new funding sources” (say it was a phone meeting) could be tagged as “meeting” and “phone” under “Type of Activity” and also “new sources” under “Funding.”

Automatically adding time:
The system should be able to import events from a calendar and create a block of time in the system automatically. The key system to import from is Google Calendar; this could be extended to other tools such as Microsoft Outlook and iCalendar. The day, time period and description of activity (the event title) would be used to create the entry. Ideally the system would also try to tag the entry based on keywords in the event information.  As with all entries, the user must be able to edit the entry (including which categories are tagged) and delete it if they want.

2) Analyze data


The main value of the system is to be able to analyze the time entered through different perspectives. This includes:

  • one or more people (users)
  • one or more categories or subcategories
  • flexible time period


The main metric is number of hours, secondary units are number (e.g. How many phone calls did I make this month?) or percentage (e.g. What percentage of my time do I spend on fundraising? Or What percentage of our fundraising effort was spent on grant X?).

Ideally reports would have the option of different views (table, pie chart).

3) Admin


The system is accessed through logging in to a web interface, so there needs to be basic management of users for each organization using the system.
Administrators in an organization can define the big bucket categories and the preset subcategories. They can also add/edit/remove users. Removing a user should not delete their data – many organizations have high turnover (especially of volunteers).
Ideally, administrators would also be able to rename/merge/replace categories.

Ideally, the system would have an offline option for people who don't have internet access while they are working.

Technology Guidelines:

  • it should use Azure (so FPYN is not responsible for hosting)
  • can use any well known web development language e.g. PHP, Java, Ruby
  • interface should use AJAX, with Javascript tools/libraries of your choice. The capability to create simple, attractive graphs/charts should be included or a separate solution can be chosen.
  • an open source database such as MySQL is preferred
  • should sync with Google Calendar via the Calendar Data API or CalDAV

General guidelines: all technology used must be widely known (i.e. it should be easy to find a developer familiar with the technology) and well supported. As well, strong preference is given to mature, free, open source tools.