El Àgora se cerró. Aquí un archivo de lo que fue Tuesday January 23, 2018.

Future development

chris

OCAx version 2 project proposal.

This proposal is based on knowledge acquired from developing, deploying and supporting OCAx1 (OCAx version 1)

This is a collaborative document.

OCAx1

OCAx is a combination of this basic set of functions.

  • Budget display with enriched budgetary information.
  • Static web pages. CMS type management.
  • One to many mailing list. (Newsletters)
  • File storage and sharing
  • Enquiry workflow.

OCAx is used by Citizens' Observatories

After some years of experience dealing with the software, users, and user needs, we can make some observations.

Detected missing features

  • Survey/questionnaires
    • Create multiple choice surveys
    • Display results
  • Agenda.
    • Local group calendar.
    • Subscribe to remote group calendars (fellowship ring).
  • Organigram.
    • List the hierarchy, responsibilities, patrimony.
  • machine-machine database querying.

OCAx1 Cons:

  • OCAx es monolitica.
  • El código no es modular.
  • Hace más dificil las contribución de código.
  • Todas las funcionalidades están incrustadas.
  • No hay opciones. Si te gusta todo el conjunto bien, sino...
  • El uso del software está preconcibido.
  • No es util para ciudadanos que podría inbteresarse un subconjunto de la funcionalidades.
  • Dificil incluir nuevas funcionalidades.
  • La interface está incrustrado en el nucleo.
    • Dificil modificar, tunear la interfaz.
    • Imposible crear nuevos estilos.

OCAx1 Pros:

  • Funciona
  • Easily installed in web hosting providers
  • Se entiendan los gráficos
  • Built-in activity log

OCAx2

Objectives

  • Create a multi purpose toolkit for organized citizens collectives.
  • Separate core from the interface
  • Separate core into modules.
  • Site admin should be able to choose the required features/modules.
  • OCAx is not a web, but an 'Information Resource'

Core

Core features

  • An Installer
  • Separate interface and core
  • Facilitate new interfaces
  • Facilitate machine-machine communications.
  • Provide libs to modules
    • http request/response
    • User session
    • emailing
    • system-wide etiquetas

Core modules

Software admins can choose a sub set of features/modules.

  • Modules will be independent from each other
  • Modules will provide a json restful (crud) API
  • Modules will generate HTML backend
  • Modules will generate HTML frontend
  • List of modules:
    • Data
    • Visualizations
    • Enquiries
    • Agenda
    • Survey
    • Newsletter
    • Organigram
    • CMS html pages
    • Archive system
    • Default web interface
  • OCAx2 core will provide
    • user session
    • OAuth2 server and client to automate logins between OCAx instances.
    • mail sending (define an api).

Data

OCAx1 cons:

  • Only budgetary data.

OCAx1 pros:

  • CSV used to import data. (transparent, independent format).
  • Data export function.

Objectives

  • Allow dynamic data sets.
  • Allow machine-machine data querying.

Study https://github.com/NuCivic/dkan

Visualizations

OCAx1 cons:

  • Graphs are hard coded.
  • New graphs cannot be created without modifying OCAx.
  • Graphs only display budgetary information. Impossible to display anything that isn't about money.

Objectives

  • Separarte graphs from the interface. (allow remote embedded).
  • Create a plugin system to manage different graph types.
  • Provide the means to easily create new independent visualizations.

Enquiries

OCAx1 cons:

  • All Enquiries can only be made to one (system-wide default) entity. Normally a town council.

User-case: 'Safe the Water' initiative will need to formulate enquiries to various different bodies.

OCAx1 pros:

  • Enquiries provide proof to information requests.
  • Equiries and Replies are public.

New design

Consider a flexible enquiry workflow system.
OCAx1 workflow is elaborate and might not fit all cases. Should make Team manager/member profiles optional.

Agenda

  • Agenda will speak CalDav
  • Default web interface subscribes to OCAx CalDav server(s)

Survey

  • Interface to create multi-choice questionnaires.
  • Iniciativa Legislativa Popular
  • Tools to view statistics.

Organigram

Observatories list the people in positions of power.
http://ayto.ocmburgos.org/p/concejales
http://

CMS html pages

  • Info/Doc pages
  • Blog pages
  • Flexible menu model. (how do we do that?)

Archive system

OCAx1 cons:

  • Only gererates HTML.

OCAx1 pros:

  • Easy to use.

Default web interface

Objectives

  • Provide a default interface but facilitate idependente interface design.
  • Default Interface:
    • Responsive: Smartphones, tablets, ..
omgs

Buenas, Chris.

Seguramente recordarás que hace mucho tiempo hice una propuesta de ocax2. Simplemente quisiera que aquel material y aquellas aportaciones no se perdieran a la hora de afrontar este cambio. Había un titanpad que ahora no encuentro con un buen desarrollo de características y funcionalidades.

Saludos.

chris

Hola Oscar,

Tampoco encuentro el titanpad. :frowning:
Chris.

omgs

Ya lo encontré:

https://auditciudadana.titanpad.com/desarrollo-ocax2

Saludos.

omgs

Buenas.

Ultimamente he estado trasteando con symfony, que implementa como características inherentes la separación de código y visulización, es muy modular y el código es bastante limpio. Me veo con fuerzas para hacer lo que yo tenía pensado desde hace un par de años de redistribución de tablas, al menos manteniendo las funcionalidades, y a partir de ahí, ir buscando mejoras. Las funcionalidades nuevas podemos tratarlas en este post, pero sin dejar de ponerlas en el titanpad (aunque habrá que migrarlo, espero que para entonces ya vayamos por otro lado). Por no liar, voy a seguir con una cuenta que tengo en github para alojar el proyecto "ocax2" y voy a estar los próximos días yendo poco a poco a ver qué cosas voy viendo. Ya me direis.

santimoreno

Hola,
¿podrías pasar el enlace al github para poder curiosear por si puedo aportar alguna cosa?

Saludos,
@santimoreno

omgs

Buenas. No lo he creado todavía, porque no hay nada todavía. En realidad, he creado un globo sonda por github, porque actualmente está en savannah, por si había algún problema.

chris

Creo que mejor https://about.gitlab.com/ que github porque github es software propietario.

Symfony y Yii son comparables. Mira por internet. Si puedes con uno, puedes con el otro.

¿Crees que los cambios que planteas justifican cambiar del framework ya que eso significa volver a escribir casi todo? Boletines, Archivo, Consulta, Descripciones, etc, etc.
OCAx(versión lo que sea) ha de incluir esa funcionalidad.

Salud.

omgs

Buenas, Chris. Me alegro de poner contar con tu opinión.

No sé a qué te refieres con "si puedes con uno, puedes con el otro". Tal como yo lo veo, tengo dos opciones: seguir tal como está o intentar meterle mano. Como puse en su día en el titanpad, ocax tiene unas deficiencias que impiden su escalabilidad a otros niveles, y para esos niveles donde hace falta una herramienta con las facultades visuales de ocax. Como me he familiarizado bastante con symfony, voy a intentar darle un tiento, a ver qué me sale. No voy a reescribir, sino a adaptar el código de las distintas clases, y creo que entre varios podríamos conseguirlo.

No quiero desmerecer absolutamente nada, pero hace bastantes meses miré y yii ya estaba por una versión mayor superior, y no parecía tampoco trivial la actualización. Además, nos aseguramos de que es compatible tanto con php 5.x como con php 7. Las traducciones son modulares, es decir, parte del framework. Incluso, y esto es una especulación, las librerías incorporadas de envío de correo podrían solventar ciertos problemas de SMTP. Puedo dedicar esta semana a ver qué complejidades encuentro. Sé que no va a ser fácil, pero quien algo quiere, algo le cuesta. También estoy dispuesto a algún taller online o como sea sobre cómo es la estructura. Bueno, ya seguimos, que es tarde.