FacturaScripts se rediseña para el 2018

El año pasado les hablamos de las bondades de FacturaScripts: facturación y contabilidad con software libre, un ERP y CRM con un potencial increíble que destacaba por su fácil uso y la velocidad con que se pueda adaptar e implementar en cualquier tipo de negocio, hoy por hoy FacturaScripts sigue creciendo, trayendo a sus usuarios nuevas características y ampliando su soporte. Este crecimiento acelerado ha traído consigo la necesidad de mejorar el software desde su corazón para que sea más escalable en el tiempo y para que este encaminado con las tecnologías actuales, es por esto que su creador Carlos García (NeoRazorX) nos cuenta de primera mano como ha estado Rediseñando FacturaScripts para 2018.

Rediseñando FacturaScripts para 2018 por NeoRazorX

Durante el verano, con más de 60.000 descargas, 12.000 instalaciones que actualizan mensualmente, 4.000 usuarios registrados en la web y 90 plugins, nos encontramos ante un breve periodo de calma que queríamos aprovechar para solucionar algunos problemas de diseño del núcleo de FacturaScripts: problemas de dependencias, imposibilidad de heredar entre controladores o vistas, y una gigantesca masa de código, fruto de estos años de desarrollo.

Era el momento de replantearlo todo. Aprender de los errores y de los aciertos, y construir unos nuevos cimientos para los próximos años. De lo contrario moriríamos de éxito, puesto que añadir nuevas características requería cada vez más esfuerzo.

Bajo estas premisas comenzamos un prototipo de núcleo con composer y algunos de los componentes de symfony. Composer nos permite añadir y gestionar dependencias en PHP muy fácilmente, y beneficiarnos de la carga automática de las clases necesarias. De symfony elegimos httpfoundation, para gestionar cómodamente la entrada y salida de datos, translator para convertir a FacturaScripts en multi-idioma, event-dispatcher para gestionar eventos, y twig, un motor de plantillas con herencia que nos ha enamorado.

Sobre estos cimientos comenzamos a construir 3 tipos de controladores extendidos: ListControllers, para listados, EditControllers, para modelos simples, y PanelControllers, para modelos más complejos que tienen relaciones con otros modelos. Por ejemplo, clientes, que al editar un cliente también quieres ver sus direcciones, cuentas bancarias, facturas recientes, etc…

Las interfaces de FacturaScripts ya eran intuitivas, y una de las partes más valoradas por los usuarios, lo que nos lastraba era el código. Los controladores extendidos son algo que necesitábamos desde hace tiempo para reutilizar código y poder añadir nuevas características de forma mucho más sencilla.

Si eres desarrollador, a menudo te habrás encontrado en la situación de creer que tu código es maravilloso, y unos meses después darte cuenta de lo malo que es. Es normal. Afortunadamente ahora existen herramientas y servicios, como scrutinizer-ci, que te permiten obtener una valoración más objetiva de tu código, además de señalar errores comunes y ofrecer consejos.

Antes de comenzar con el prototipo decidimos revisar nuestro código con scrutinizer-ci, obteniendo una puntuación de 5.4, siendo la clase fs_controller la gran responsable, aunque no la única. Y con pocas posibilidades de mejorar el diseño sin romper la compatibilidad. Más motivos para comenzar con un nuevo núcleo.

Hoy, la nota de FacturaScripts 2018 es de 8.66, teniendo sobresaliente en la inmensa mayoría de las clases y sus métodos.

Un mejor diseño nos ha permitido añadir nuevas opciones a todos los formularios, como la exportación a PDF o Excel en cualquier página o listado, y el megabuscador, que ahorrará mucho tiempo a todos los usuarios.

Ya sólo queda terminar algunas tareas y comenzar con la beta y la actualización de plugins. Os mantendremos informados ;-).

Comentarios sobre FacturaScripts 2018

Si algo nos agrada es ver que herramientas de código abierto y que además son destinadas al crecimiento empresarial tengan éxito, es un trabajo duro que muchas veces pasa por debajo de la mesa, estoy seguro que este no es el caso porque la satisfacción de los usuarios que hoy usan esta herramienta es muy alta.

El crecimiento en la complejidad y las funcionalidades de herramientas como está conlleva un reto técnico bastante grande, muchas veces las aplicaciones no están preparadas para crecer tanto o simplemente sus desarrolladores se enfocan en mantener viejas estructuras que no están alineadas con las nuevas tecnologías, creo que un punto muy favorable de FacturaScripts es esa claridad con que miran su software y esa humildad para saber cuando se deben hacer los cambios.

Con esta nueva versión, FacturaScripts además de ser más eficiente traerá nuevas funcionalidades que están muy relacionada a las necesidades de las organizaciones actuales, creemos que esta también será una exitosa versión y que los usuarios de este poderoso ERP podrán hacer crecer sus negocios de mejor manera.


Sé el primero en comentar

Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.