Thursday, July 21, 2011

Eucalyptus is running

Finally we have managed to make our Eucalyptus private cloud running. The first matlab scripts processed thousands of pictures. It took us quite some time to make this happend. We had many problems with network and routers configuration, with NFS, disk overflows etc. All typical network computing problems, most of them solved by now. But we are happy we are producing useful results on computer which were so fare idling.
The current cloud setup is used for number crunching only, for image processing. Each experiment is described by a matlab script.  There is currently available only one machine image, which includes installed matlab. To start and control execution we have developed a SaaS application uploading and managing the experiments. It also works with AWS. We are running the application on the same box as the cloud server. It is written in R&R. The UI is designed for inexperienced users. The application messaging is build on top of the RabbitMQ. The input and output files are read and written to and from users subdirectories over NFS.
Further development is still needed to make the cloud much more efficient. We need to include some monitoring to control the usage of the cloud. We need to optimize memory, networking and speed of execution. We need to control user access etc.
We have successfully proved, that we have chosen the right solution. Our first test user managed to use the system almost immediately and produced useful results. The next step is to add another two user with no experience and collect all complaints, wishes, bugs etc. to continue in the development of the controlling application and make the whole system stable and robust.

Friday, July 15, 2011

CCC + Google

Vojta Jina is a Google employee, who is finishing his MSc in our Cloud Computing Center (CCC) at CTU. Vojta is big fan / promoter of JavaScript and Test Driven Development (TDD). At Google he works on an open source project AngularJS. AngularJS is a great platform for building web apps, written in JavaScript. In our center he works on a HelpDesk client application. We plan to publish the HelpDesk application as an open source example showing how to use AngularJS. Actually, we have larger plans with HelpDesk and I am planning to announce them soon.
I am supervising his thesis and I am really looking forward to start the real work. So far we have several times discussed the topic and Vojta is already doing the preparatory studies. The JavaScript development and especially AngularJS is heavily relying on TDD. Test function is a must for every new functionality. The code is repeatedly tested during the whole development cycle. TDD is the only way how to keep larger JavaScript applications under control. The problem is even larger, different browsers use different JavaScript interpreters, with different behavior. Therefore we need an engine testing all interpreters during the development. There are some testing engines with this capability to support the development, but they are not covering the whole problem flawlessly. Our vision is to design and implement new testing engine satisfying all developer's requirements. This is the grand idea of Vojta’s thesis. We are going to put the code to public domain and I'm looking forward to inform you about the progress.

Monday, July 11, 2011

Tonda + Tomas = 8

We are eight people in the Cloud Computing Center. Tomas and Tonda our students have joined us today and they are already enjoying the world of web applications. It is their first university year, but they are already experienced programmers. Their first design was a very successful robot, which they have build at a middle school.
Together we have started a development of a web-based application with a native client for Android.. The server site will run on Google App Engine. The client server communication will use REST API. Filipe has done the first preoperational or organizational step, he has designed a git server where the code is saved. The second step is to develop a very basic code for the server and client application and display some small piece of text on Android. We hope this will work on Friday. I will announce the application very soon
I am looking for students interested in iOS for Apple mobile devices.