Purposeful Code

1. Preface

This is my newest endeavor following WattMonkey.  It incorporates many of the underlying principles of previous effort.  These principles include 1. value to the community, 2. open source software architecture, 3. free to use, and 4. no device restrictions.

In addition, it is assumed that the Purposeful Code Project (PCP) is not a unique idea.  It’s assumed that many folks have already conceived something similar, but haven’t materialized anything.  Therefore, there is nothing to hide.  No NDA required for this.

Unlike WattMonkey, no lawyers, consultants, accountants, financiers or other folks wanting to sell services are desired in the first iteration.  If necessary, they’ll be brought in post-V1.

Finally, my approach to learning is to begin with zero preconceptions, zero knowledge.  This is similar to establishing a hypothesis in scientific experiments.  The next step is to challenge the idea and seek inputs that may change or enhance the concept.  Testing the idea occurs in conversations with people and late nights on the internets.

2. Concept

PCP is a simple web application that connects talented engineers, analysts, project managers, etc with purposeful coding projects.  Virtual tribes will form around single applications.  There is no commitment.  There is no pay.  The reward for participation and completion is attribution and acknowledgement.

If PCP produced application can be monetized, equity will be assigned based on % of participation in project.  PCP will negotiate a % for operational costs.

PCP will be non-profit.  There are many new companies doing social or earthly good for profit.  It is my belief that many of these projects would be more successful if there was no focus on revenue.

3. Problem

Both large and small companies have subdued millions of hard working IT professionals with lucrative salaries and abundant benefits.  PCP offers a risk free environment for developing applications without risking the day job.  To participate, nobody needs to give anything but after hours time.

4. Solution

An application that connects human resources to global issues.  These humans will form tribes.  The tribes will have a single leader, shared interests and a purpose.

5. Tribes

There are no restrictions to individual projects beyond what is required by project manager. The project manager will serve as tribe leader.  Tribes can be local in that members live in the same geography.  Tribes may be dispersed, in that members live around the world.  There should be no restrictions with regard to education, social economic status, ethnicity or other conditions beyond our human control.  In other words, everyone is invited to participate.

6. PCP Role in Tribe’s Success

PCP will allocate resources to assist in project success.  The primary contributions will be to democratically prioritize projects (all participants have 1 vote) and to assign project to capable leaders.  Each project will have a set amount of time with PCP leads.  The amount of time needed and the cadence of meetings will be defined by Project Lead.  Agenda of these meetings will be defined by both the Project Lead and PCP advocates.

PCP will also be responsible for operations.  PCP will cover costs related to hardware, software and human resources.  PCP will track projects from inception through success deployment and adoption.

There are no requirements expected of the development team post release.  If an engineer or developer would like to maintain the free version of the application voluntarily, they will be allowed to do so.

7. More Details on the Basic Requirements

Free.  Applications developed by PCP Community must be free to end users.  Once the application has deployed, PCP will manage versioning, bugs and requests for enhancement.

8. How it will Work

Description of application and how users will interact with PCP.  Library of projects.  Matching skills and interests to projects.  Back end contact management and project management systems.  Users of PCP front end application will see a. progress and simplified description of projects and personal information submitted to PCP.

9. Why it will Work

Folks want to participate in change.  This includes individuals with or without paying jobs

10. Post Deployment Assumptions

Opportunities to  …. monetization of PCP applications

Definitions

Participant:  Any individual who contributes more than 10 hours of successful contributions to PCP.

Project Lead:  An capable, friendly and trusted individual assigned to a purposeful project.  The Project Lead will determine goals, process, timeline and roles for project.  The Project Lead cannot individually dismiss volunteers.  In the event that a human problem arises during the project, PCP will work to mitigate and resolve with all involved.

    • J
    • November 9th, 2009

    Following is a conversation about this project that occurred on Austin’s door64.com:

    I guess my first question in reading this is why? What need in the community is this attempting to fill.

    From a strictly open source point of view, a lot of the projects goals are handled by Source Forge and other open source hosting sites.

    I don’t see anything compellingly different about PCP.

    Source Forge does not provide any of the management that apparently PCP is going to do, but I am not sure this is a benefit. For one thing, a really good way to kill a volunteer project is to assign incompatible volunteers to it. In a job, employees that don’t like each other get along in order to get a paycheck. In a volunteer organization, no such pressure will exist.

    It is hinted at in a couple of places, but I do not see where the PCP project will work with the community to find projects to work on. Maybe this is not the intention? I think it would be helpful if there where groups in the PCP whose task where to find projects. This frees me, a would be developer, from having to find a problem and it’s target audience. If this is part of the idea, then it needs to be emphasized more. (It is the difference between working for a charity that builds houses, and working for a charity that doesn’t really know what it is going to be doing. I can’t possibly build a house for someone, but I can work with an organization that does know. They build a house by giving individuals like me clear goals. By contrast an organization that does not know how to help, is probably still not going to know how to help after I arrive.)

    My Reply:

    My PCP post was knowingly rough, accidentally ambiguous. It’s a first draft with a few edits. Your response is what I was hoping for, requests to clarify.

    I am gonna try to answer your questions with a real example.

    Project Name: Mobile Solar Tool

    Concept: A simple tool, delivered through selected mobile operating systems (ie. RIM, Android, iPhone OS), that provides basic calculations and data to photovoltaic (solar) installation professionals.

    Basic Project Requirement: It needs to be available to someone who is working on a roof.

    Version 1 Goal: Tool will enable the following inputs and outputs
    INPUT: User enters zip code. Phone gathers user’s GPS data.
    OUTPUT: Solar Mobile Tool provides 1. geographical data (pressure, elevation, latitude, longitude), 2. solar insolation data for various solar installs (fixed, 1 axis, 2 axis, concentrating collectors), 3.average climatic conditions

    Reference Stuff (Tools that do something similar): 1. iPhone application “Solar Checker”, 2.

    Data Derivation: There is a single, standard, federal data source that provides output above (if user gives input).

    Now, back to your questions.

    Why? Your opening paragraphs asks “why” and “why not”. My interpretation is that you want to know how PCP differs from SourceForge.net. PCP will provide guidance and services to help teams develop purposeful applications that solve worldly problems. SourgeForce “provides free services that help people build cool stuff and share it with a global audience”.

    I understand you points in the 3rd paragraph. My understanding is based on experience. I have ruined volunteer projects. But my mistake was due to higher expectations and wrong assumptions. I asked too much. Regarding team cohesion or compatibility of individuals … I think this occurs for reasons other than money (I agree with your point though). I think teams stick together if there is a 1. courageous, trusted leader, 2. an obtainable goal or a bonding concept, 3. people that believe in 1 and 2. (I am under Godin’s “Tribes” influence). Many of the groups (teams, tribes, clubs, associations, etc) that I belong to don’t pay me for nothing. I think the best way to kill a meaningful endeavor is to force folks who wouldn’t otherwise be compatible, to work together around an idea that they don’t fully believe in.

    In response to your final point:

    1. PCP’s role, in part, is to identify, prioritize and define purposeful coding projects. I may have added this after you read the post. Regardless, you are right. Generally, PCP should account for a spectrum of talent. I think the operating principle is to let folks do what they are good at. Or, let the folks that love to write BRDs, write them. Let the folks who love to code solutions to well thought out ideas, code them. If someone wants to assist in the identification of projects, and they are adept in doing it, PCP oughtta be in a position to support. 2. Regarding the “house building” example. I advocate for clear Role definition in just about everything I do in life, from family to business. We contribute more abundantly when we know what we are supposed to do. When we don’t know our role, we slow stuff down.

    I plan to put my response to your questions on the wordpress blog. At a certain point, if the seed continues to grow, I plan to develop a flat (one dimensional, static, just html and forms) website that lists a few projects and seeks volunteers. If that takes, then …

  1. No trackbacks yet.