Tuesday, April 26, 2011

Eucalyptus: we are almost there

It is quite some time I have reported our progress on using Eucalyptus for our image processing group. We are trying to design a frontend application with my MSc students. It controls Matlab experiments on a cluster of workstations in one of our classrooms. During the day the comps are used for education running WIN. We are switching to Eucalyptus at night. The RoR frontend application handles ACL management, collects Matlab scripts and pushes them to a queue (RabitMQ). It starts the EMIs, mounts NFS, launches the scripts. The images files are read and saved over NFS.  The logs, errors and status info are pushed to an output queue. The RoR app displays processes status and saves logs. The frontend app is running as a stand alone app on Mac today. We are still having little problems creating the right EMI with properly installed RoR. Most likely, we identified the problem and I hope, we will be able running scripts on multiple machines under Eucalyptus really soon.  Stay tuned I’ll let you know as soon as all runs.

Monday, April 25, 2011

Research proposal

I was busy preparing a proposal for the Czech Grant Agency research grant last weeks. With my team we have been brainstorming for quite some time about new directions in the Cloud computing research with no clear conclusion. (see previous blogs).

The benefit of a deadline is that you have to finish the job on time. This made us to put together finally a reasonable plan. The proposal has nine pages, therefore I am copying just the executive summary:

Problem
Every growing company needs to quickly design new applications supporting business processes. Lot of effort has been spent on the RAD tools for UI, but the back end RAD tools do not exist, slowing down the development.

Approach
Design a declarative resource management, configuring and provisioning the web SaaS applications 100% from the client side. Design REST APIs to match the business processes CRUD applications requirements and resources usage paradigms. In other words design tools with no programming required on the server.

Benefits
Back end RAD tools with declarative resource management will result in easier, faster development cycle and standardization of database REST APIs. The complete application code will be on the client side. These APIs combined with modern NoSQL decentralized, distributed databases will deliver large volume and high availability resource management for scalable multi-tenant applications.

Video from Misko's presentations

for those who missed Misko at the CTU, here are the videos (in Czech).

Sunday, April 3, 2011

Research proposal

I am writing my first research proposal and I need help. See the introduction below. If you have time, read it and comment, please. It is just an introduction and I will need to work on details, any suggestion or idea are also appreciated. If funded, I expect three PhD students and several MSc students will take part in the first year, later the group needs to grow ... Thanks for any comments and suggestions.

Here it is the first version:
Allow me to say few words introducing the situation and strategy. I have returned after 18 years in the industry to the department of Cybernetics at CTU, Prague to share my experience with students in education, in research and also help with successful commercialization of the research results. Last years I have worked in Google, Switzerland on the development of web applications. Before I have worked at T.J.Watson Research Center IBM in Yorktown, New York for 8 years, then I was manager of the IBM research and development group in Prague. I am submitting this proposal to seek research support. I am building a group of people, who have experience working in the industry and research. I want to focus on research in the Cloud Computing. The main idea is to research new innovative architectures, technologies and tools for the next generation of business applications and tools. 
The new emerging cloud computing programing paradigm is opening new challenges and opportunities for application design, development and deployment. The big promise is the availability of almost endless computational power and  memory. The challenges are new business models shifting the expenses to operation expenses. The big promise is reduction of the overall cost of deployment and maintenance. 
There are still many unsolved technical problems in the cloud computing. Our research target is to study approaches and tools to simplify the whole process of design and deployment of next generation business applications. We envision our research in three different directions: user interfaces, business logic and databases. 
The motivation is to enable experts from other fields then IT to design and deploy applications they need in everyday business. Other fields experts much better understand their needs and technologies then IT specialists programmers and therefore are in a better position to develop more useful application. On the other hand they do not have experience with computer science. They need help to develop stable and robust solutions. Our aim is to study the typical paradigms in the business applications, discover them and provide higher level tools to design and develop the required functionality. 
To make the things clear we are not going to research new technology for rendering UI, implementing business logic or designing new databases. We rather will research new ways how to simplify the usage of the established technologies introducing new programming patterns and tools. It is well known that for example the development of a complex UI for CRUD type of application can be quite complex and difficult to debug. It is also known that development of server logic with session status and large data processing can be very difficult to debug and maintain. The management and maintenance of current RDBM systems is very complicated. See just the size of the users manuals for Oracle or DB2 databases going easily to thousands of pages. Other direction of research is focused on resources, computers and memory for the next generation of business applications. Thousand and thousand of computers in the cloud enable businesses to think differently. For example the production planning, which typically requires say 5 computers doing the calculation for 20 hours, we can do the same in one hour with 100 computers or in six minutes with 1000 computers on the cloud and the cost will be the same or lower. 
From my experience in the industry I know that research is initiating changes and discovering new approaches and we would like to play this role in the Czech Republic. I would consider our research successful once the Czech IT companies will accept the results and build on top of them new innovative applications. I am planning to make the results of our research publicly available. The group will publish the results of the research in conferences, on the Internet and in scientific journals. I am ready to make the relevant code available in a form of open source. 
Last but not least, I have lot of friends in global IT companies around the world that will definitely serve as a source of information about the latest development and trends in current research and in the industry. I am sure they will contribute to our success, too.

Friday, April 1, 2011

Last week in eClub

We celebrate the first round of projects presentations in the eClub. Seven teams shared their ideas during our meeting last week. All presentations were in English with slideshow or accompanying web pages, check it out here Each presentation started quite a big discussion and many comments. Some of the discussions expanded to our forum. It is very rewarding to realize that we have students who think about commercializing their ideas. We will continue with further presentations and we are all looking forward for the final, competition. The best team will be selected and awarded with a three month stay in Silicon Valley incubator.