Me gustaría crear un software gratuito solo por diversión, entonces, ¿dónde debería comenzar a crear una aplicación y alguna sugerencia sobre lo que podría hacer?

Puedes crear un juego gratuito o una utilidad para cualquier teléfono que tengas. Si tiene un teléfono Android, puede desarrollarlo en casi cualquier PC. Si se trata de un iPhone, es probable que desee una Mac para hacer su desarrollo. Para ambas plataformas, incluso puede probar y ejecutar la aplicación sin tener realmente el teléfono, gracias a los emuladores incorporados.

Hay excelentes tutoriales sobre cómo construir aplicaciones de Android e IOS (iphone). Trabaje en uno de esos tutoriales o cree y ejecute una aplicación de muestra (que ya incluye todo el código fuente). En cualquier caso, cambie los resultados un poco varias veces para ver qué hacen esos cambios y tener una idea de cómo funcionan el sistema y la aplicación.

Una vez que haya resuelto los conceptos básicos, saque un poco de papel y dibuje algunos bocetos de lo que le gustaría que haga su aplicación, por ejemplo, un boceto por pantalla. Puede echar un vistazo a aplicaciones similares para ver qué tipo de pantallas tienen. Comience con lo mínimo, puede agregar más más tarde. Esto a menudo se llama story boarding, puedes buscarlo.

Una vez que haya configurado los bocetos, muéstrelos a alguien que conozca que usa ese tipo de aplicación y vea si tiene sentido para ellos. Si lo hace, puede comenzar a codificarlo. Haz que ese mismo amigo lo pruebe una vez que hayas terminado, y pasa un tiempo probando la unidad. Luego puedes buscar publicar tu juego en Google Play, Kindle o Apple App Store.

Si desea averiguar en qué se va a meter o tiene aspiraciones de ganar dinero, asegúrese de leer los blogs y las publicaciones postmortems que la gente ha escrito sobre cómo escribir y comercializar sus propias aplicaciones. Es extremadamente informativo.

¡Buena suerte y diviertete!


Editar: veo más detalles del OP. Las cosas P2P son muy divertidas, pero también bastante difíciles de corregir. Si desea habilitar el uso compartido, debe hacerlo con cuidado para evitar problemas legales. La colaboración también es muy difícil de acertar. El software para PC / Mac en general requiere más trabajo que las aplicaciones más pequeñas para un dispositivo móvil IMO. Decida cuánto tiempo desea dedicar a su proyecto antes de poder lanzarlo, y la probabilidad de que obtenga un resultado funcional.

Para el contexto, trabajé en el SDK peer-to-peer de Microsoft, su avalancha / MSCD de protocolo de enjambre de archivos P2P y algunos otros proyectos similares. Mi doctorado incluyó trabajo entre pares.