¿Alguna idea sobre cómo puedo superar este bloqueo mental y para garantizar que mi aplicación sea escalable?
El quid de la cuestión no es la escalabilidad. El quid de la cuestión es pensar que lo hará bien la primera vez .
Debes concentrarte en escribir código limpio. Porque el código limpio maximiza la conveniencia cuando (inevitablemente) tiene que cambiar algo en el futuro. Y ese es el verdadero objetivo que debes tener.
Lo que está tratando de hacer ahora es pensar en el código perfecto para escribir. Pero incluso si logras hacer eso, ¿quién dice que los requisitos no van a cambiar, o tal vez tomaste tus decisiones basándose en información incorrecta o falta de comunicación?
No puedes evitar cometer errores, incluso si no son tu culpa. Concéntrese en escribir código en el que sea fácil cambiar las cosas más tarde, en lugar de esperar escribir código que no necesitará cambiar en el futuro.
Habiéndome apegado al proyecto y al código que ya escribí,
Absolutamente simpatizo con este sentimiento. Pero apegarse al código que ha escrito es un problema.
Lo único que debería ser una constante es su deseo de resolver un problema específico . La forma de resolver ese problema es solo una preocupación secundaria.
Si mañana se lanza una nueva herramienta que reduce su base de código en un 80%, ¿le molestará que su código ya no se use; ¿o te alegrará que tu base de código se haya vuelto más pequeña y mucho más limpia / manejable?
Si es lo primero, tiene un problema: no está viendo la solución para el código . En otras palabras, te estás enfocando en el código y no estás viendo la imagen más grande (la solución que pretende proporcionar).
Tengo miedo de que todo el trabajo adicional que realice se anule en el futuro cercano, cuando la aplicación no se adapte bien a medida que crezca el negocio.
Ese es un problema diferente para un día diferente.
Primero, construyes algo que funciona. En segundo lugar , mejora el código para corregir cualquier falla que aún pueda mostrar. Lo que estás haciendo actualmente es retener la primera tarea por miedo a tener que hacer la segunda tarea.
¿Pero qué otra opción hay? No puedes decir el futuro . Si pasas tu tiempo pensando en las posibilidades futuras, terminarás adivinando de todos modos. Una suposición siempre es propensa a estar completamente equivocado.
En su lugar, compile la aplicación y pruebe que efectivamente existe un problema. Y una vez que el problema está claro, comienzas a abordarlo.
Para decirlo de otra manera: Henry Ford nunca construyó un automóvil que cumpla con los estándares / expectativas de 2018. Pero si no hubiera construido el Modelo T, un automóvil defectuoso para los estándares modernos, nadie habría comenzado a usar automóviles, no habría industria automotriz, y nadie habría tenido un automóvil que pudieran intentar mejorar.
He hecho que los empleadores cuestionen mi elección de no usar ningún marco web durante las entrevistas, lo que solo me ha hecho dudar aún más de mi trabajo anterior.
La parte importante aquí no es qué marco está utilizando (cualquier empleador que lo juzgue por eso no está haciendo su trabajo correctamente). La parte importante aquí es saber lo que estás haciendo y por qué lo estás haciendo .
Por ejemplo, podría estar evitando el marco existente específicamente porque desea aprender por qué un marco es útil al hacerlo de la manera difícil primero. O podrías estar tratando de hacer tu propio marco.
La única mala respuesta aquí es "No sé", ya que muestra la falta de tomar decisiones informadas. Esa es una bandera roja para un empleador.
Simplemente no conozco ningún framework web y no sé cuál comenzar a usar.
El mismo problema surge aquí. La solución no es pensar más, sino actuar:
- Deja de pensar en la respuesta perfecta .
- Elige un marco. A menos que tenga una preferencia, elija una aleatoria. Usa un tablero de dardos, tira un dado, lanza una moneda, elige una carta.
- Úsalo.
- ¿Te gustó usarlo? ¿Había algo que encontraras molesto?
- Busque cómo prevenir estos elementos malos. ¿Utilizaste mal el framework o es así como se supone que funciona?
- Una vez que sienta que tiene un control sobre el marco (independientemente de si le gusta o no), elija un nuevo marco y repita el ciclo.
Para leer más sobre esto, lea La mentalidad de hacer> la mentalidad de pensar . El autor lo explica mejor que yo.
pero la presión para terminar la aplicación está aumentando, y estoy considerando eliminar la aplicación por completo y comenzar de nuevo
A menos que la base de código actual sea un desastre absolutamente imposible de mantener; Estás tomando la decisión opuesta.
Los desarrolladores a menudo piensan que tirar las cosas sería la mejor opción. Es un sentimiento muy común. Pero rara vez es la elección correcta.
Tirar el código y comenzar desde cero es como quedarse atrapado en el tráfico camino al trabajo, preocupado por llegar tarde al trabajo (perder el plazo) y, en cambio, conducir a casa e intentar conducir por el mismo camino nuevamente. No tiene sentido Puede estar atrapado en el tráfico, pero aún está más cerca del trabajo que cuando estaba en casa.