. . .

marcsg.com - bash

marc@marcsg.com:~$ whoami

Desde siempre me ha apasionado la tecnología, en especial la informática. Con el paso del tiempo he explorado varios campos hasta especializarme en ellos. En poco tiempo soy capaz de adaptarme y adquirir los conocimientos necesarios a las situaciones que se me presenten.

Habilidades

Proyectos personales


ocaservice

OOCAService o OCAS es una empresa ficticia para el trabajo de fin del grado superior ASIX/ASIR. Es una plataforma web desde la que se pueden gestionar contenedores Linux (LXC), similar a servicios que ofrece AWS, Microsoft Azure o Google Cloud.


La aplicación web ha sido desarrollada con PHP puro (Junto a la API de Google Authenticator y Código QR), bases de datos MySQL y todo el sistema montado en varios servidores en modo clúster, en una red local montada de manera que fuera lo más eficiente posible a la hora de mover información

Los 3 pilares del proyecto son:

  • Seguridad
  • Facilidad
  • Flexibilidad

Seguridad

La seguridad informática es un campo con muy buena teoría y muy poca práctica a la hora de llevar un proyecto a producción (Cómo inyecciones SQL, almacenar datos importantes en texto plano, no permitir añadir factores de doble autenticación, etc.) y es algo que se ha de aplicar. Por lo que ofrecemos las siguientes medidas de seguridad:

  • Factor de doble autenticación (2FA): Hemos usado la API para php de google Authenticator para generar los códigos que se usan para validar inicios de sesión.
  • Envío de información por SSL: Hemos usado certificados (al ser un proyecto, han sido autofirmados) para el envío de información, asímismo usando https, haciendo que cualquier tipo de información viajara de manera segura.
  • Regulación de contraseñas: Hemos validado que las contraseñas que introducían los usuarios fueran de mínimo 8 carácteres, y mínimo una letra mayúscula y un número.

Facilidad

Los usuarios han de tener una buena experiencia al usar nuestra aplicación, por lo que diseñar la interfaz de manera que sea amigable para el usuario ha sido una de nuestras prioridades.

Hemos seguido unas cuantas guías de UX design en las que se comentaba:

  • Qué fuente usar, tamaño de letra
  • Velocidad de animaciones (hover, click, etc)
  • Tamaño de los elementos del sitio
  • Qué y cómo mostrar al usuario la información

Flexibilidad

Yendo más a lo técnico, hemos querido que los usuarios hagan uso de sus contenedores y puedan tener una alta flexibilidad. Una de las opciones de los LXC es que se pueden modificar sus especificaciones en “caliente”, por lo que los usuarios pueden modificar sus sistemas (que están corriendo los servicios que hayan instalado) según las necesidades del momento.

uwutravel

UwUtravel es un proyecto web desarrollado en PHP. En un principio iba a ser una página en la que simplemente los usuarios se pudieran registrar y reservar viajes, pero acabó siendo un CMS con un sitio de administrador incluido. El CRUD que tiene es bastante completo, aunque le faltan algunas funciones que se querían incorporar en un principio, cómo login con redes sociales o un metodo de pago, entre otras que por la fecha de entrega no dió tiempo.

Demo

User: demo
Pass: demo

SimpleNotes

SimpleNotes es una aplicación web, desarrollada en el popular framework Laravel (PHP) y con el framework CSS MaterializeCSS.
Su objetivo es el de facilitar la toma de notas con un editor simple y sencillo. Tiene la opción de instalarse como PWA con un navegador que tenga el motor web de Google Chrome.

Los usuarios pueden usarla sin necesidad de una cuenta para una nota rápida y efímera (es decir, al cerrar o al actualizar la página, la nota se borra), o bien usarla con una cuenta, con posibilidad de 2FA para mayor seguridad, las notas son encriptadas y almacenadas en una base de datos para proteger la privacidad de los usuarios

Demo

User: demo@demo.demo
Pass: demo

statusd

Statusd es una aplicación web desarrollada con Express (JS).
El objetivo es facilitar un microservicio desde el que poder comprobar qué servicios están operativos.

Cada instalación de statusd es totalmente independiente a la demo.

Demo
GitHub