What do student summer practice, Summer Camp workshop rating, and client rich web app have in common?

by Ivo Lukač -

Having a habit of trying to hit more birds with one stone, I always try to find a combination of tasks that has multiple benefits for the company. As we wanted to give some practice to students and that an online rating system for the Summer Camp would be nice to have,  decision was a no-brainer. To make things a bit harder the solution should behave more like a web app: loaded once and using REST calls for rating.

Rating of sessions

First 2 years of the Camp we used paper to get workshop rates form the participants. It is important to track the perceived quality of the workshops to always improve. The process was not really good as the rating was done only at the end of the last day. With online solution the process would be much better:

  • participants could give ratings during the event (they could also adjust or update the rates already given)
  • results are transparently shown in a graph, it's easy to pick the winner

To provide an incentive to participants to rate, prize draw is performed based on rates (the more you rate, better the chances are to get the prize).

The web app

6 students (2 groups of 3) were working on the first version of the app for 2 weeks during the summer. 3 more students did some additional work after the camp, also for 2 weeks. None knew Symfony, some of them had some prior basic knowledge of HTML, PHP and Javascript. They have build the web app with our help and guidance using:

  • Symfony (MVC, Forms, Doctrine)
  • Javacript (JQuery, Handlebars)
  • HTML5, CSS3 (Bootstrap3)

The code is on github:

Check it out, but don't expect beautiful coding tough :) its really a novice work.

During the course of the project we always emphasised how important was to improve the app on all levels. On the server side it was important to ensure that we make the REST calls as fast as possible to maximise the concurrency level. On the client side to make the app fast for the user and to be as simple as possible for usage. In the end the user had only to enter his email to authenticate, select the day and click on a rate (from 1 to 5) for the workshop he participated in. Additionally he could open a bar graph to immediately see average results.

An admin panel was also implemented to add user emails, manage workshops, enable/disable ratings and make the final draw.

Students

As mentioned we had 9 students working on the project in total. Although their experience was very limited  and some of them are still undergrads, they were all very eager to learn. That was boosted even more when they realized that we were going to use the app for real, that pushed them to give more than 100%. Seems like these kind of practice sessions are needed in our schooling system. Personally I was impressed and a bit surprised what they had achieved in just 2 weeks. Of course, the code they have written is not very pretty and it's also not rocket science, still, they made something that worked. Very well, actually :)

Here is their side of the story:

Matija: "Currently I am studying at University of Zagreb Faculty of Electrical Engineering and Computing. One day I got email from Ivo Lukac asking me if I want to get summer internship in his firm Netgen. I thought that’s a great opportunity so I said yes. After being selected I was put in team with two other great students. Our project was to create web application for mobile phones where you’d vote for live presentations and give them rating. After presentations are over winner is being selected. I’ve learned a lot about web technologies, working in team and organising project. Netgen is great firm with awesome people who are willing to help at any time. Only thing that I am sorry about is that I won’t be able to participate in Summer Camp. This has been a great experience and I would definitely recommend it to all students."

10562512_10154339628875207_3592529019227759198_o

Matko: "It shall be glorious summer! That was the only thought in my mind after the finals back in June. I'm an  undergraduate on Faculty of Electrical Engineering and Computing at the University of Zagreb. I love my faculty and have learned quite a bit but it just didn't seem enough so I started a search for internships during summer. I sent some applications, and finally got a call from Netgen. I get to work in my designated profession with people of same interests but much greater knowledge and experience than myself – sounds fun. The first day I realised that Netgen team is absolutely fantastic, my coworkers who were also on the internship were great, and the atmosphere, oh the atmosphere. Something amazing, when the team is working it's working, no fooling around, and when it's time for lunch and break everyone just give in, they really made me feel like I belong. We worked on an interesting, real life usable, web application for live voting that can be used for summer-camps, conferences and more. I knew little of JavaScript, PHP and web technology in general when I came here two weeks ago, now after the project is over I can say I learned a bunch of new stuff, and the best part is I learned most of it from my fellow student on internship Matija. This internship showed me what it means to work, and that working isn't so bad as long as you love what you do and have an amazing team around you. In the end I was right, this is a  glorious summer."

Josipa: "Hm let me see...I came in Netgen as a beginner with no previous experience. I can’t say that I am expert now but great team from Netgen make an effort to teach me and introduce me to their little world of design, programming...they introduce me with bootstrap excellent framework which made my steps more easier, they show me process of making good project. And most important thing they have learned us how to work as a team."

Borna: "Internship at Netgen was a brilliant opportunity to learn and get some practical experience through working on real life project. What made Intern at Netgen so special was relaxed and friendly atmosphere; there was no question too dull to ask and older developers were always willing to help. Moreover, Netgen-ians all together make quite cheerful fellowship which makes whole job less stressful and makes you actually (almost) look forward to Mondays!"

Zvonimir"Internship at Netgen was an exquisite experience for me. I had a chance to work on a real project and to learn among developers and designers who were very helpful and great teachers. And the best of all, Netgen gave me a great opportunity to participate in PHP summer camp in Rovinj, Croatia where I could learn from experts from all around the world. Not only did I learn a lot, but I've met some great people and made new friendships.

Kristijan: "With almost zero starting knowledge about PHP and Symfony framework and with a lot of helpful conversation of Netgen team (and interventions when needed), we have managed to finish up this 'look like' simple and (hopefully) functional application. Except it was fun, I consider this 2 weeks a very valuable experience."

Marko"In a motivating and stress-free atmosphere you are encouraged to work on your own. On the other hand, if you find yourself stuck on something, everybody is willing to help. It was a pleasure to work with people that are that relaxed and friendly. I learned a lot, worked with technologies I never worked before and enjoyed the whole experience."

Josip"During my course at Netgen, I've learned about various programming languages, teamwork and some basics of the company's work. But more importantly, I've met people who work there and finally got to see how my future job will look like (more or less). The atmosphere was great and I am hoping we will stay in touch or maybe even work together. The experience I've gained at Netgen is very useful and will definitely help me with my future work."

Matija: "I would like to say thanks to Netgen crew for giving us a chance to experience and learn new things in a very friendly environment. And without any doubt I recommend this summer practice to anyone interested in web development. You won't regret it!"

Anyway, we found a great value in this kind of initiative so we will probably repeat a similar summer practice next year. Stay tuned if you are a student :)

Comments

This site uses cookies. Some of these cookies are essential, while others help us improve your experience by providing insights into how the site is being used.

For more detailed information on the cookies we use, please check our Privacy Policy.

  • Necessary cookies enable core functionality. The website cannot function properly without these cookies, and can only be disabled by changing your browser preferences.