Skip to content

Latest commit

 

History

History
69 lines (37 loc) · 5.26 KB

PRINCIPLES.md

File metadata and controls

69 lines (37 loc) · 5.26 KB

UCF TAC Principles v1.0

What We're Looking For

We are looking for high-quality projects that improve all aspects of the general practice of "Urban Commputing" for all software development. We want to drive the adoption, and utilization of urban computing technology, but make this available to everyone.

Foundation Goals

Copied from the charter document as the starting point:

  1. believes in the power of Urban Computing to empower developers and teams in accelerating open source and community development that improves mobility, safety, road infrastructure, traffic congestion and energy consumption in connected cities;
  2. believes in the open source solutions collectively addressing the whole software delivery lifecycle;
  3. believes in the power of Urban Computing to empower developers and teams and to produce high quality software to bridge the divide between engineering, visualization, and traditional transportation systems analysis;
  4. believes in the open source solutions collectively addressing tools for developers building autonomous vehicles to smart infrastructure;
  5. fosters and sustains the ecosystem of open-source, vendor neutral projects through collaborations and interoperability; and
  6. advocates this idea and encourages collaborations among practitioners to share and improve their practices.

Technical Vision of Urban Computing

The TAC's mission is to enable developers, data scientists, visualization specialists and engineers to improve urban environments, human life quality, and city operation systems.build connected urban infrastructure. We do this through an open governance model that encourages participation and technical contribution, and by providing a framework for long term stewardship by companies and individuals invested in open urban computing’s success.

Ubiquitous: Unobtrusive and Ubiquitous Sensing Technologies

Analytics-ready: Promote and achieve Advanced Data Management and Analytics Models

Visualization: Develop and Enhance Novel Visualization Methods

Machine Learning: Develop and Enhance Spacio-Temporal Machine Learning Techniques

Scalable: City-Scale Simulation of Urban Systems, and Environments

Software That Enables Such Urban Computing

To help “practitioners to share and improve their practices,” the TAC upholds these values, and we seek projects that share them:

Pragmatic: The most important attribute of a project is how useful it is to actual practitioners. Purity in design and implementation comes second to solving real-world problems for them.

Maintainable: The software we write today needs to grow and change over time. We prefer solutions that save us time in the long run vs tactical savings that build technical debt.

Portable: The choices we make for Urban Computing today may not make sense tomorrow. Users should be empowered to change their decisions with minimal friction.

Platform/stack agnostic: Urban Computing applies to all pertinent technology, not just practitioners on a particular platform or stack. We have an overall goal to help them advance, promote and adopt Urban Computing technology even on "legacy" stacks will help modernization process go even faster.

Overall ecosystem fit: Urban Computing is a broad space and no "one tool" can solve everything for everyone. Projects should fit into the broader ecosystem - whether through plugin-style extensibility, explicit interface exposure/usage, or something else.

Communities That Produce Such Software

In order to “foster and sustain the ecosystem of open-source, vendor neutral projects through collaborations and interoperability,” the TAC values these characteristics in the communities that produce the projects, and we seek communities that share these values:

Governance: Transparent governance with a clear path for new contributors to become maintainers, and for maintainers to become project leaders.

Collaboration: A community that is willing to interact with and listen to other projects and people with different thoughts, skill sets, specialities, senorities, and backgrounds, and let those influence the direction.

Openness: A community that is open, transparent, accessible, and operates independently of specific partisan interests. A community that accepts all contributors based on the merit of their contributions. A community whose decisions are transparent.

Fairness: A community that seeks to avoid undue influence, bad behaviours, and/or “pay-to-play” decision-making.

Greater Whole

The whole should be greater than the sum of all parts. A successful UCF should provide be a single place to look for best practices, guidance and documentation as well as tooling and projects. Practitioners looking to improve their delivery practices should have to look no further than the resources provided by the UCF, regardless of their software stack, platform or industry.

Benefits: The UCF should not be a "grab-bag" of projects, and projects do not need to be hosted in the UCF to interoperate with projects that are in the UCF. Projects in the UCF should either provide a unique benefit to the UCF or uniquely benefit from being in it.

Revision History

  • Version 1.0: {YYYY-mm-dd}
    • Approved by TAC on {YYYY-mm-dd}