I'm supposed to create a GIS application for my MSc, and I was wondering what are the best free and (preferably) open source technologies for development? What programming language to use for the development of such an application?
Known choices are: Database: PostgreSQL (PostGIS) (suggest other)
Programming Language: PHP, Python, Java, ... (suggest other)
Frameworks: GeoDjango (if Python or Jython is used), (suggest other)
Client UI: JavaScript (OpenLayers), Flex, (suggest other)
Servers: Mapserver, Geoserver, Mapfish, (suggest other)
Other Considerations: Hibernate Spatial, support for mobile GIS, (suggest other)
afaik: the best choice for a web applications is to prepare your data with gvSIG (http://www.gvsig.org), host your data into postgresql/postgis (http://www.postgresql.org, http://postgis.refractions.net), publish a WMS/WFS service(s) with MapServer (http://mapserver.org/) and then show your data using openlayers (http://openlayers.org). This solutions works perfectly for my experiences. A nice approach is to use MapFish (http://trac.mapfish.org/trac/mapfish/wiki) a webgis framework that internally uses extjs and openlayers but simplify development.