¿Cómo desarrollar Un software?
Desarrollar un programa
Haz una lluvia de ideas Escribe un documento de diseño. Crea un prototipo. Pruébalo una y otra vez. Pule el proyecto. Sube todos tus proyectos a GitHub. Distribuye el software.
. Un buen programa realiza tareas que hacen que la vida del usuario sea más sencilla. Observa todos los software disponibles para la tarea que quieres realizar y busca formas para mejorarlo. Un programa exitoso es aquel al cual los usuarios le pueden sacar provecho.  Examina las tareas diarias en tu computadora. ¿Hay alguna tarea que pueda realizarse de forma automática con algún programa? Escribe todas tus ideas. Aunque parezcan tontas al principio, con el tiempo pueden convertirse en ideas útiles o brillantes. Examina otros programas. ¿Qué hacen? ¿Cómo pueden mejorar? ¿Qué les falta? Responder esas preguntas te puede ayudar a obtener nuevas ideas que puedes desarrollar. Este documento puede delinear las funciones y lo que pretendes lograr con ese proyecto. Utiliza tu documento de diseño como referencia durante el proceso de desarrollo para mantenerte enfocado. Lee esta guía para obtener más detalles sobre cómo escribir el documento. Este es un programa básico que muestra la funcionalidad que intentas lograr. Un prototipo es un programa rápido y debe modificarse hasta encontrar un diseño que funciona. Por ejemplo, si vas a crear un calendario, tu prototipo puede ser un calendario básico (con las fechas correctas) y una forma de añadir eventos.  Tu prototipo cambiará constantemente durante el proceso de desarrollo conforme vas pensando en nuevas ideas para mejorar el programa o para solucionar problemas. El prototipo no debe estar bonito. De hecho, el arte y el diseño debe ser lo último en lo que te enfocas. Utilizando el ejemplo del calendario, tu prototipo puede contener solo texto. Los problemas son la pesadilla de todos los desarrolladores. Los errores en código y uso inesperados pueden causar todo tipo de problemas al producto terminado. Conforme continúas trabajando en tu proyecto, pruébalo lo más que puedas. Haz todo lo que puedas para hacer que falle y después evita que falle en el futuro. Pídeles a tus amigos y familiares que prueben el programa y te digan si encontraron algún error. Todas las reseñas que te den te ayudarán en el proceso de desarrollo.  Intenta escribir fechas erróneas si el programa trabaja con fechas. Las fechas pasadas o futuras (días muy lejanos) pueden causar reacciones extrañas con el programa. Introduce tipos erróneos de variables. Por ejemplo, si tienes una forma que le pide la edad al usuario, escribe una palabra para ver qué es lo que hace el programa. Si el programa tiene una interfaz gráfica, haz clic en todas partes. ¿Qué pasa cuando regresas a una pantalla anterior o haces clic en los botones en un orden incorrecto? Aunque está bien crear una especie de “borrador” para el prototipo y la fase de desarrollo, si quieres que otros lo usen, necesitas pulir el programa. Esto significa que tienes que asegurarte de que el menú sirva, que la interfaz del usuario (UI) esté limpia y fácil de usar, que no haya ni se muestren errores y que tenga un buen acabado y diseño.  El diseño de la UI y la funcionalidad del programa puede ser muy difícil y complejo. Existen personas que toda su carrera está enfocada al diseño de UI. Solo asegúrate de que el proyecto personal sea sencillo de usar y se vea bonito. Una UI profesional puede no ser posible sin un presupuesto y un equipo. Si tienes presupuesto, existen muchos diseñadores gráficos independientes que puedes contratar para que diseñen la UI. Si tienes un proyecto sólido que deseas crezca en grande, encuentra un buen diseñador de UI y hazlo parte de tu equipo. GitHub es una comunidad de fuente abierta que te permite compartir tu código con otras personas. Esto te permite recibir nuevas ideas sobre tu propio código y así ayudas a otras personas que están buscando las soluciones que tú ideaste. GitHub es una gran fuente de aprendizaje así como una gran forma de ir haciendo crecer tu portafolio. Una vez que tengas el producto final, puedes decidir si quieres o no distribuirlo. Existe una gran variedad de formas en las que puedes hacer esto dependiendo del tipo de software que hayas creado.  Una de las formas más comunes para que equipos pequeños o desarrolladores independientes distribuyan su software es a través de un sitio web personal. Asegúrate de que todas las funciones estén documentadas e incluye un par de capturas de pantalla y guías. Si vas a vender el software, asegúrate de tener un buen sistema de pago digital y un servidor para distribuir el software. Si vas a desarrollar el software para un dispositivo en específico o sistema operativo, existen varias tiendas digitales que puedes usar. Por ejemplo, si vas a hacer un software para dispositivos Android, puedes vender la aplicación a través de Google Play Store, de Amazon Appstore, o de tu página web personal.
Developing a Program