Archive

Posts Tagged ‘release’

Internship: Dynamic Carpooling

October 2nd, 2009 bodom_lx No comments

I’ve just started an internship for my University. I’m working at the Fondazione Bruno Kessler, a research organization of the Autonomous Province of Trento that promotes research in the areas of science, technology, and humanities. In particular, I’m at the Center for Information Technology – Irst, in the SoNET explorative unit.
My research activity will last until the end of January and hopefully continue during the second semester, if the collaboration will be fruitful enough for a thesis.
The internship activities will focus on Dynamic Carpooling. I’m going to use my blog and the new category /carpooling-research to publish updates about the status of my research. We are going to purchase a domain that will also contain the outcomes of the research activities, available to the general public.
Here is a quick overview of the contents of my internship:

1. Dynamic Ridesharing Reviews

  • Review of existing papers
  • Review of existing web and mobile applications
  • Review of protocols
  • Research about the motivations of failure/success of existing realities

2. Release of Prototypes

  • API definition for Dynamic Carpooling
  • Implementation of a web application for Dynamic Carpooling
  • Implementation of a mobile application for Dynamic Carpooling
  • Possible integration with FBK systems

Related posts

Pomotux

September 28th, 2009 bodom_lx No comments

Summary

Pomotux is  a C++ activity manager for the Pomodoro Technique created by Francesco Cirillo, a member of the XPlabs crew. The program focuses on the basic features of the technique. It does not focus on advanced techniques, such as the prediction of the number of pomodoros needed for an activity.

About the Pomodoro Technique

The Pomodoro Technique is a time management method that can be used for any kind of task. For many people, time is an enemy. The anxiety triggered by “the ticking clock”, especially when a deadline is involved, leads to ineffective work and study habits which in turn lead to procrastination. The aim of the Pomodoro Technique is to use time as a valuable ally in accomplishing what we want to do in the way we want to do it, and to enable us to continually improve the way we work or study.

The Technique is heavily explained on a 60+ pages book published on the website. Please visit the official website for more explanations.

A running Pomodoro

A running Pomodoro

Get Pomotux

Pomotux has been developed for the Software Engineering Project course at the Free University Of Bolzano by Daniel Graziotin, Riccardo Buttarelli and Massimiliano Pergher. We decided to release it under the GPL 3 license and host the code on Google Code. Everybody is free to contribute and join the project.

Pomotux is hosted on: http://code.google.com/p/pomotux/

Source code is available on: http://code.google.com/p/pomotux/downloads/list

The wiki contains more information and installation instruction, and a better description of the of the system implementation and Software Engineering outcomes

Activity Inventory Sheet

Activity Inventory Sheet

Technology Overview
The System has been developed using

  • C++ programming language (coding standard)
  • QT framework (4.5)
  • SQLite Database library
  • LiteSQL Object Relational Mapper framework

Useful tools used during development:

  • CXXTEST Testing Framework
  • CPPCHECK code analyzer
  • Artistic Style code formatter

Project Status
The project succesfully passed the exam with a maximum degree. It has been developed under Gnu/Linux and has only been tested under Gnu/Linux (various distributions). It should be cross-platform. The only component that brakes cross-platform is LiteSQL, that should work on any *NIX system but not Windows. We are looking for testers and people to port it under Max Os X (and possibly) under Windows

Related posts

Announcing BD-review, a free platform for music reviews written using JavaEE

July 29th, 2009 bodom_lx No comments

BD-review is a dynamic website to allow people to review releases (albums, demos, EPs, singles) of (young, unsigned) music bands. The project is the outcome of the Internet Technologies course at the Faculty of Computer Science of the Free University of Bolzano. The requirements of the project were to build a website using a small subset of JavaEE technologies, without the use of web-frameworks.

A screenshot of a Review

A screenshot of a Review

The project is not really meant for production use. It was made as a strong, working and correct base for studying JavaEE academically. It should be useful for every student (also non-student) willing to have an overview on JSP and study it. The code is well-written, uses MVC, and the whole project is documented in detail in a 20+ pages report.

Read more on the project page, download the sources and play with it! Please let me know about your experience with BD-review code.

Related posts

BD-review

July 29th, 2009 bodom_lx No comments

BD-review is a dynamic website to allow people to review releases (albums, demos, EPs, singles) of (young, unsigned) music bands. The project is the outcome of the Internet Technologies course at the Faculty of Computer Science of the Free University of Bolzano.  The requirements of the project were to build a website using a small subset of JavaEE technologies, without the use of web-frameworks.

Therefore, this project is not really meant for production use. It was made as a strong, working and correct base for studying JavaEE academically. It should be useful for every student (also non-student) willing to have an overview on JSP and study it. The code is well-written, uses MVC, and the whole project is documented in detail in a 20+ pages report.

A screenshot of a Review

A screenshot of a Review

I encourage to read the PDF report of the project. It contains detailed information about the analysis and design phases, as well as the architecture description, screenshots, problems found etc. Please read also the README file. It contains configuration instructions.

There is a running demo located on the evaluation server of the course, but I think it will be removed soon.

Quick Jump:

Vision

Requirements Implemented

Technologies Overview

Download

License

Vision

The aim of the project is to build a dynamic website to allow people to review releases (albums, demos, EPs, singles) of (young, unsigned) music bands. Users will be able to signal interesting materials and review them, while other users will be able to comment the reviews, too.
This web 2.0-oriented application should allow unknown talented musicians to achieve a higher notoriety but also to improve their productions.

Screenshot of the personal user page

Screenshot of the personal user page

Requirements Implemented

I report here the requirements of the course, all implemented by BD-review:
What BD-review implements is:

  • User Management
    • List existing users of the system
    • Creation of a new user
    • Deletion of the existing user
  • List and modify access rights of the users
    • check boxes with some capabilities (min 3)
  • User registration and login to the system
  • Items management
    • Users add, edit or remove items
    • Users comments or reviews items
    • Administrator can manage the comments (edit,remove, add)
  • Personalization
    • Salutation for a returning user
    • List resources that are new from the last visit
    • Customization of the layout for a class of users.
  • Techniques – MUST be used
    • Static HTML
    • CSS: all the look and feel must be in CSS files
    • Javascript: check input and manage menus
    • Servlet: Reading (parameters and headers) and writing headers and resulting page
    • Servlet: Session management with cookies and session object
    • Servlet: Redirect the client
    • Servlet: Forward to another page or servlet
    • JSP: Expressions, scriptlets and declarations Beans
    • DBMS access trough JDBC
    • Integration of JSP and Servlets (forward and include) using MVC pattern.

In addition, BD-review implements two Filters and plays with Regular Expressions.

Technologies Overview

  • J2EE technologies (JSP, Servlets and JavaBeans)
  • Database support (PostgreSQL 8.3) through JDBC 4
  • XHTML Strict 1.0 + Cascading Style Sheets 2.1 for presentation
  • Apache Commons for conversion and Bean population routines
  • Some utility methods found on Books and Internet (their provenience is cited in the sourcecode)
  • Javascript for confirmation system and form validation
  • Regular Expressions
  • TinyMCE rich WYSIWYG HTML editor
Screenshot: modifying a Review

Screenshot: modifying a Review

Download

PDF report of the project
Complete Source Code and Documentation (as Netbeans Project)

The Future

There will not be future developments for the project. It was not a real-life project but I will be very proud if you find it an useful example for learning JSP. You can also use it as a basis for developing a real project (also a University Project). You can do anything you want with BD-review, but please respect the license. I would be happy if you send me an email about your experience in using BD-review.

License

BD-review is released under The Gnu Affero GPL version 3! This is different from the license of the contents of the blog

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program. If not, see < http ://www.gnu.org/licenses/ >.

Related posts

Unipoli

June 11th, 2009 bodom_lx No comments

Unipoli is a simple simulation of the very popular board game Monopoly by Hasbro. Unipoli is the Java outcome of the Programming Project course I followed in Academic Year 2007 – 2008.

I don’t know for how long the official project page will stay on Unibz servers, therefore I’m keeping this page on task3.

Project Members

  • Riccardo Buttarelli
  • Daniel Graziotin
  • Martin Leitgeb
  • Massimiliano Pergher

Mission Statement

This document was the first step made in facing the project:
The project will provide a simple simulation of the very popular board game Monopoly. Unipoli will allow a multiplayer experience (up to 8 human players) on the same machine but not over a network.
We will implement the classical Standard (Atlantic City version) Monopoly game board layout, produced by Charles Darrow, and later by Parker Brothers.
However, by virtue of being a virtual implementation of the real game, Unipoli will overtake some aspects of the real Monopoly game, giving to the players unique visual experiences. As example, we will highlight owned lands with the color associated to their owners. When a player decides to sell a property, the board will be obscured, leaving the lands owned by the player well visible.
Like in the original game, the purpose is to dominate the competition against the opponents, and be the last to survive. Due to time problems, we will not implement all the rules and game features. For example, hotels will not be included in our game version.

The GUI will consist of two main components:

  • A 2D top view of the game-board, that will occupy about the 80% of the window.
  • A sidebar containing information on players and the dice.

Players will be able to buy lands and build houses in case of monopoly. The opponents have to pay rents if a land is owned. There will be both factories and railroads.
Our game implementation will also feature the so-called Chance Cards.
There wonʼt be the possibility to play as the Bank. Money will just be considered as a number which increases and decreases. Therefore, a graphical representation of paper money is not scheduled.

Screenshots

Unipoli - Board Overview

Unipoli - Board Overview


Unipoli: user choices

Unipoli: user choices

Documentation

Source code and Javadoc

Binaries

License

Unipoli is released under the GPL v. 3

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see <http ://www.gnu.org/licenses/>.

Related posts

What is taking me busy – Pomotux!

May 12th, 2009 bodom_lx No comments

I’m currently pressed by my University life, that’s because I don’t post often.
There are 3 big projects for this semester: a C compiler, a dynamic website using Java Servlets and JSP and the most interesting one: a C++ program for Software Engineering Project course.
I’m working with other two collegues on a task manager for people using the Pomodoro Technique by Francesco Cirillo.
The project is called Pomotux and is under development following strong software engineering methodologies (Scrum@Xp). Pomotux is under construction since 2 months and uses technologies such as SQLite to store and play with tasks. The interesting fact regarding our data structure choice is that we are also using a framework for obtaining ORM, called LiteSQL.

LiteSQL is a C++ library that integrates C++ objects tightly to relational database and thus provides an object persistence layer

LiteSQL is still young and immature but powerful enough for our scope. We are also happy to provide feedback to their developers, that are ready to help us. They even wrote a patch for us!
Pomotux is reaching an unexpected stability. Unexpected because it is written by 3 young people that come from a light Java experience and saw C++ 3 months ago. It works under Linux and its graphical interface uses QT 4.5.0. It should work on any *NIX variant that meets dependencies, but also under Windows with some light modifications.
It will support just the basic features of the technique (unfortunately we don’t have the time to fully work on it) but it’s ready for expansions such as team support and statistics.
We will be happy to release the sources as soon as we finish the course, hoping that people will find it useful and that some serious programmers take it and make it the perfect tool for Pomodorians :) I will also contact the author of the Pomodoro Technique when we release it.

Related posts