Introduction
Good day, residents of Habr. It so happened that I sometimes do training for the world of programmers. At the same time, I tried to record several Java tutorial videos for the smallest ones (
http://java.b0noi.com ), but even one third did not finish = (. It was decided not to go beyond the offline courses, but one of the problems I still had to decide. How to give students real development experience? I would also like not just team development experience, but also the fact that students could include in their resume something public and, at least a little, useful.
What I would like to see in the project with which the students work:
- Java itself with Java EE elements;
- maven;
- git / mercurial;
- continues integration system;
- DB interaction;
- Javascript;
Implementation

Of course, such a project can most likely be just a project under the Web. After thinking about the fact that you can quickly create and transfer to OpenSource, with further support, it was decided to make "one more" link reduction service. Moreover, in Ukraine there are not so many as in the world - several domains were registered:
l.co.ua and more national http: //ї.co.ua (this domain does not work yet).
The project itself is hosted on Jelastic'e, but for those who will make a push to the server, this information most likely will not be in demand. The outer part is written in JavaScript + BootStrap, and behind the scenes REST Server is written in Java (jersey). MongoDB was selected as the database.
')
So, in fact, the project is divided into 4 parts (there will be more =)):
- REST;
- A web interface that is nothing more than another client for REST;
- Database;
- Plug-ins for browsers (now so far made only for the Orthodox Safari);
A plugin (currently available only for Safari) can do this:

REST
Here is a short description of REST'a v. 0.2:
post
l.co.ua/rest/postUrl - post long url and get short id
l.co.ua/generateShort - post long url and get short id (DEPRICATED)
get
l.co.ua [id] - get redirect html to long url with id
l.co.ua/rest/statistic [id] - get statistic for id. Each field contains information about
Join
And today the project has
appeared on github and everyone can fork it without interference, contribute, and get a well-deserved mention on the authors page. I start next week, if everything goes as planned, I will start the refactor and optimization of the project with the listeners, as well as drawing up a detailed wiki in order to quickly join.
But, despite the mediocrity of the service of reducing links, there is also a very interesting idea about its monetization. But this until the story is silent.
Anti-trolling
A section for those who, instead of speaking, in essence, begin to change the topic. I understand perfectly well that it was possible to add something to the already existing hundreds of OpenSource projects and someone would say that this is a bicycle, but at the moment this is exactly what I need, since it is possible that version 2.0 will be written together with the audience completely from scratch, so the question of your project would still be. Plus for myself, I have long wanted to try something on jelastic, because before that I had only worked with Amazon EC2. There are many more reasons why I chose this option. Moreover, to make such a project is 2-4 hours.
UPD: link to githubUPD2: version of the language in the project - Java 7 (the idea of specifying the version of the language was correctly proposed by the Odis
habravisor )