¿Eres un desarrollador creativo? ¿Qué necesidades ha satisfecho al crear un sitio web o software?

La mayor necesidad que siempre tengo es encontrar buenas imágenes que pueda usar en mi sitio sin violar los derechos de autor de alguien. Así que tuve que aprender a crear el mío.

De acuerdo, hay muchos íconos gratuitos disponibles en Internet para botones y cosas simples, pero generalmente desea imágenes e imágenes adicionales en un sitio web. Entonces, lo que hice fue simple: aprendí a usar el software CGI y conseguí una cámara digital y comencé a incursionar con ambos para aprender algunos de los conceptos básicos.

La ventaja que tengo ahora es que no solo creo el back-end, el front-end y la capa de base de datos / negocios para mis proyectos, sino también la obra de arte. Si necesito, por ejemplo, un cajero detrás de un escritorio, creo esa imagen yo mismo. Si necesito una foto de un árbol, la tomo yo mismo. Y debido a esto, puedo crear sitios realmente interesantes sin depender de imágenes de terceros.

Incluso creo mi propio logotipo, si es necesario.


Sin embargo, hay más. Si estamos discutiendo soluciones creativas, tengo otro buen ejemplo de hace varios años.

Mi equipo y yo estábamos trabajando en una herramienta para asesores financieros y esta era básicamente una aplicación de escritorio que utilizaba una base de datos MS-Access para almacenar datos. Era una base de datos de un solo usuario, pero agregamos algo de lógica para que múltiples usuarios pudieran acceder a la misma base de datos, pero no al mismo cliente. Y funcionó bien, hasta que un cliente nos preguntó si podíamos admitir SQL Server.

Bueno, utilizamos ADO para conectarnos a la base de datos, por lo que reemplazar la cadena de conexión con una versión de SQL Server básicamente resolvió el problema. Escribí una herramienta simple que leería toda la estructura de la base de datos de Access y generaría una secuencia de comandos SQL adecuada para crear la misma base de datos en SQL Server. De esa manera, simplemente continuaríamos haciendo cambios estructurales en la base de datos de Access y usaríamos el SQL para generar bases de datos SQL coincidentes.

Las actualizaciones también se realizaron de una manera fácil, ya que simplemente respaldaríamos todos los datos en un archivo XML, reemplazaríamos la base de datos por una nueva y luego importaríamos todos los clientes nuevamente. ¡Trabajado como un encanto!

Pero luego se volvió más complicado. El cliente tenía varias docenas de oficinas y quería usar una sola base de datos de SQL Server para todas, sin embargo, a cada oficina solo se le permitía acceder a sus propios datos. Y teníamos menos de dos meses para hacerlo. Entonces, reescribir gran parte de la lógica fue un poco problemático. ¡Entonces se me ocurrió una alternativa interesante!

SQL Server admite el uso de esquemas de bases de datos para que cada grupo de tablas pueda estar en su propio esquema sin entrar en conflicto con ningún otro. Lo que hicimos fue simple. Creamos un nuevo esquema para cada oficina y dentro de ese esquema, creamos toda la estructura de la base de datos tal como estaba en la base de datos de Access. Las cuentas de usuario usarían de manera predeterminada su propio esquema de oficina, por lo que una vez que inicien sesión, usarán solo sus propios datos y no tendrán acceso a ningún otro dato.

Y, para el supervisor, creamos una vista para cada tabla en la base de datos que en realidad combinaría la tabla específica de todos los esquemas en una sola vista de solo lectura para que el supervisor pudiera iniciar sesión y recopilar datos directamente de las vistas.

Apenas tuvimos que cambiar el código de nuestro proyecto y todo lo que tuvimos que hacer fue crear una herramienta de administrador simple que pudiera administrar los diversos esquemas y recrear las vistas cuando se agregaba, borraba o modificaba una oficina. También agregaría, eliminaría o movería a los usuarios para que el cliente obtuviera lo que quería mientras nuestro código base no cambiara.

Bueno, necesitaba una página de inicio de sesión, pero eso fue todo …

¡Terminamos dos semanas antes de la fecha límite y tuvimos mucho tiempo para incluir otras funciones!

La mayoría de los desarrolladores son creativos en este sentido. La única diferencia es que la resolución creativa de problemas a menudo se limita a metodologías de programación, convenciones, estilos / métodos de lenguaje y más. Siempre hay más de una solución para cualquier problema. La creatividad llega cuando puedes innovar la solución.

A2A. No estoy seguro de la pregunta detrás de la pregunta: “¿Por qué preguntas esto?” Entonces mi respuesta probablemente no sea de mucha ayuda.

El desarrollo web, si no es un arte, es al menos un oficio, y todas las personas artesanales creen que son creativas. Ninguna persona puede responder “¿Eres creativo?” para ellos mismos, ese es un juicio que otras personas tendrán que hacer sobre su trabajo, algunos de los cuales pueden ser creativos y otros no.

Si está preguntando porque está buscando encontrar un desarrollador creativo, lo siento, estoy retirado.