Quiero crear un programa para administrar bienes inmuebles, ¿qué idioma debo elegir?

Colaborativo significa que tiene que estar orientado a la web. Básicamente, los lenguajes de programación que necesitará son:

* HTML
* SQL
* Algunos idiomas procesales en los que escribir la mayor parte del código.

Dado que solo tiene un poco de experiencia en programación, me mantendría alejado de C ++. Su experiencia en PHP sugiere que PHP es probablemente su mejor respuesta. Deberá configurar un servidor PHP en alguna parte; es fácil encontrar una empresa de alojamiento web y obtener un sitio web. La mayoría de ellos tienen servidores PHP que puede usar, por lo que realmente no tiene mucha configuración que hacer.

El resto del problema es principalmente uno de definir cuidadosamente exactamente lo que quieres. Sugiero escribir una serie de “escenarios de usuario”: qué quiere hacer un usuario y cómo interactúa con su aplicación. Dibuja bocetos de las pantallas y simula a mano las interacciones.

Antes de hacer todo esto, debe buscar una aplicación que ya haya hecho mucho de esto por usted. Dado su estado verde auto admitido, programar este sitio de una manera en la que pueda confiar para que no se rompa o pierda sus datos puede llevarle mucho más tiempo de lo que piensa. Si insiste en que las necesidades de su aplicación son únicas, es bastante fácil encontrar PHP experimentado (u otros desarrolladores web) para que lo haga de una manera que produzca un resultado útil en un período de tiempo modesto.

Creo que te servirán Django (Python) o Ruby on Rails (Ruby). Aprenda primero los idiomas respectivos (no necesita ser un experto, solo tenga una idea de cómo se hacen las cosas), luego aprenda los marcos. Para decidir cuál elegir, solo mire algunos ejemplos en sus sitios web y vea cuál le gusta más: son bastante equivalentes, pero creo que RoR es un poco más popular.

Ofrecen una forma de definir su base de datos como una colección de clases, lo que significa que no necesita trabajar con SQL usted mismo, y ofrecen todo tipo de widgets y formularios estándar para mostrar e ingresar / cargar datos. Aprenda más de los idiomas (Python / Ruby) mientras crea su aplicación.

Para el alojamiento puede usar Heroku o muchos otros proveedores de alojamiento en la nube (Google App Engine tiene soporte para Python / JRuby, Heroku es compatible con Python y Ruby).

Entonces necesitas una aplicación web. Para esto puedes probar:

Front End: combinación de HTML / CSS / Javascript (hay muchos marcos que puede usar como Node.js, Angular.js, etc., encuentre la información en Quora).
Back End: puede usar Python o Ruby.
Base de datos: la gente normalmente usa MySQL, creo que es suficiente para una aplicación como esta.

Es mucho trabajo para una persona, especialmente si todavía tiene que aprender. Pero puedes hacerlo si eres dedicado y paciente.

La ruta más fácil sería usar Python y el framework web2py. Puede poner en funcionamiento una aplicación web de manera bastante rápida y sencilla. Lo bueno de web2py es que, desde el primer momento, proporciona todo lo que necesita, incluida la base de datos, el servidor web, el editor, etc. Se incluyen baterías.

Uso web2py siempre que necesito poner un sitio web de forma rápida y sin dolor.