Many people may believe software development is a very mechanical process, however it is anything but. Many decisions go into structuring, architecting and designing the components of software, and there are very little constraints to how you do it. As a result, often choices must be made on past experience, intuition and a general sense of whether it feels right.
There is a lot of useful software available, but sometimes the effort required to install and configure can outweigh the benefits. Web proxy servers can be useful for a number of reasons, not least of which is local caching of data to improve performance and reduce bandwidth consumption. Whilst web browsers may perform such data caching quite well, the browser is not the only application connecting to the Internet, and we can still realise benefits from running a local web proxy server.
Since having multiple computers at home from which I tinker with Java development (desktop, laptops, etc.), I have found it extremely useful to configure a Maven Mirror on my home server to consolidate artifact downloads from Maven Central and other snapshot repositories. This was achieved using Apache Archiva, but other tools such as Artifactory or Sonatype Nexus would be just as good (if not better). The only problem I found with this approach is that I had to ensure the server was running before doing any dev work.
When it comes to human-computer interaction (HCI), one of the major failings is that we are constrained by what we see. That is, we have difficulty conceiving of things existing beyond the boundaries of our visual feedback (or more commonly know as “out of sight, out of mind”). This is not necessarily a failing of the HCI discipline, but perhaps one of the human species, and our lack of attention to practicing the conceptualisation of things we cannot see.
There are many frameworks available for building Java or Groovy-based web applications, with the most popular Groovy options being Grails or Gaelyk for Google App Engine development. Fortunately however, a lot of the functionality required for building simple web applications is built into the Groovy library itself.