Hello good (getGreetings currnetLocalTime)
This is a quick post with the notes that I took in Jax London 2011. Its just a summary of the main tools and ideas which I found more relevant.
Project Lambda: This project aims to support programming in a multicore environment by adding closures and related features to the Java language.
This project provides tools to the developers in order to control how to run the java code in multicore machines. Instead of delegating the multicore processing job to the hardware, the developer takes control of which code can be processed in parallel and which not. This project provides a new layer of abstraction when writing java code, with this abstraction the JVM have more information in order to process the code efficiently. The code is optimised by writing inline methods or Lambda expressions instead of writing loops which are difficult and expensive to process in a multicore environment. Those Lambda expressions are more concise, have better abstraction, have type inference, have method references and as a result are optimal to be executed in multicore machines.
Gpars project: This project brings to java world the tools for developing parallel high volume processing efficiently in mutlicore environments. As Lambda it is a high-level abstraction layer of programming that allows the JVM to optimize the code at runtime.
Cloud Foundary: Open source platform as a service. It is an open platform as a service, providing a choice of clouds, developer frameworks and application services. This platform provides ready to use solutions about frameworks integration, infrastructure architectures, services and tools. Developing on top of this platform the project gets all the benefits of a best practises infrastructure, for example the most important benefit is the power of scalability of a web application.
Stratos live: As Apache project it is an open sourced platform as a service. This solution can be a private or public infrastructure where to deploy web applications with all sorts of cloud services support like an application server, data services server, identity server, etc...
Heroku: Private platform as a service. Really easy to use platform, nice system to deploy and run web applications. With really good tutorials and examples. Its a nice solution for a cloud application with only one think to keep in mind, the application is slightly coupled to the platform. However, the platform dependency is quite clean and small. On the other hand provides a lot of tools and a really quick and efficient development style.
Server side JavaScript: The idea to run JS on the server side is interesting and could have a lot of potential. Here there is a good post about why to use JS on the server side. I found interesing these other projects. JAXER an Ajax server to develop full web apps or presentation layers. Build from the Mozilla browser engine. Node.js build from the Chrome browser engine. Adds an asynchronous solution focused to be optimized for a good scalability of concurrency connections.
Continuous delivery: From the always good talks of John Stevenson. Continuous delivery looks like the future of software development. It is not something new but something that for example Google has been doing since long time ago. It is simply to deliver value while developing, instead of waiting and delivering a bunch of results in scheduled releases.
This is not something easy to do, because it is required to have the proper infrastructure using the Agile techniques like TDD, CI, etc... For more details see the slides here.
The two main ideas of any kind of software project we can recommend to "market sooner, get something simpler" and "sustain the pace of innovation". Those tow ideas looks like the right starting point for any project. To get a quick position in the market and evolve fast to provide not just a good but the right solution.
That is all my quick summary, many thanks for reading this post !
(getGreetings localTimeZone goodbyeWord)
No comments:
Post a Comment