Category Archives: Yleinen

GoNow

CONCEPT DESCRIPTION:

Our problem was to get people stuck in the world of the Internet out of their homes to participate in various activities. We also tried to alleviate the growing fragmentation of modern society by creating a platform to help people connect with their neighbours in the local area.

gonow_logo

The specific target group is internet-active introverts, however, we tried to design the system in such a way as to attract people of all sorts. The idea is to create an app that everyone could use, and the initial marketing would be towards “the extroverts” in the local geographic area, as they could then effectively spread the app to their more introverted peers. We thought it would also be helpful to get local organizations, for example youth activity centers like Happi, involved in the creation of larger-scale events and spreading of the app. For them the value of the app would be as a method of effectively announcing events for potentially interested target groups.

 

The main purpose of the app is to function as a platform for easy creation and discovery of nearby small-scale events. The idea is to make it as easy as possible for people to find interesting activities on the one hand and to find people to join their own activities on the other hand. If a game of basketball lacks a few members, one could simply send a call for participants in the app and get some random interested players from the vicinity to join.

What is the special value of this app compared to competing services like Foursquare and Eventbrite? First of all, our focus is on micro-scale events and activities organized by people for the people; the competing apps are more focused on large organizations. On the other hand, one could certainly use existing platforms such as Facebook or WhatsApp to create micro-announcements, but these would be limited to one’s friends. Our app seeks to connect people in the local area regardless of their prior acquaintance. Lastly, our app is more effective than mere posters or other public announcements, as a centralized online platform makes it simple to find interested people, as well as for them to discover your event.

Screencap1

PROTOTYPING:

We started work by producing a minimal paper prototype that guided the later production of the mock-up app. The purpose of this paper prototype for us was mainly to act as a channel of communication between the main innovators and the developers, and to help clarify our ideas of what we actually wanted to produce.

 

The paper prototypes turned out to be a tremendous help with the initial communication issues. Once we learned to speak a common language, and had some concrete drawings of what we were talking about, we worked together surprisingly well, but until then it was almost as if we were from different planets entirely.

 

Still, we eventually produced a mock-up application which will be described below.

Screencap2

 

TECHNICAL DESCRIPTION:

High-level architecture:

The “app” is for now implemented as a web-service; we plan to create an android wrapper app later on. The back-end is written in Java, and based on the Spring framework. The sites are dynamically generated with data from a JPA repository using Thymeleaf. We plan to eventually publish the beta version of the app on the Heroku platform. Right now we are in the pre-alpha stage.

 

Development tools:

  • Java + NetBeans IDE
  • Spring Framework
  • Thymeleaf
  • HTML5 front-end (Notepad++, GEdit)
  • Tomcat Server
  • Photoshop (?)
  • Git + GitHub
  • Slack

 

Stage of implementation:

Pre-Alpha. We got login, registration, logout, event creation and saving as well as user and event profiles working. Event deletion is partly working.

 

Satisfaction with choice of architecture:

At first, we tried to code everything from scratch, which led to incomprehensible initial configuration issues. We ended up wasting an entire day just trying to get the server-side code functioning at all. The front-end development continued meanwhile. Luckily we managed to find one of our team members’ old project that we could use as a working template to build upon during Sunday. After that, the coding was a breeze.

 

In the end we are happy with our choice of architecture due to the fact that the program was our own handiwork and is thus easy to extend in the future. While everything we did have time to implement may have been possible with existing frameworks such as WordPress or Joomla, we could have later run into issues with some of the planned features had we taken the easy route now. We do have plans to at least discuss developing this idea further, so having future proof code is definitely a plus.

 

Repository:

https://github.com/GloKnow/GloKnow

 

License:

GNU GPLv3, at least for now.

 

TEAM MEMBERS:

Jami Valorinta (Server-side programmer, innovator)

Ville-Matti Tanninen (Server-side programmer)

Jussi Paakkunainen (Front-end developer, artist)

Thuy Trang Dao (Project manager, writer)

Zahidul Khan (Original app idea, paper prototype)

SparkApp !

Spark Logo transparent

Concept Description :

The aim of SomeJam was to use the means of digital technology to build up concrete ways enhancing the wellbeing of youth. We created a web application, named Sparkapp, which would generate a random activity for the user to try. SparkApp helps people to take part in surprise events. Users can customize event notifications on the basis of price range, duration, adrenaline level, physical activity level, time window, do-good (charity) activities etc.

The app was mainly designed for people between 12 to 65 years of age. We were aiming to focus on the Greater Helsinki area in the first development stage

(https://fi.surveymonkey.com/r/X6QSVXN) and got 63 survey responses from our friends. Result of our survey was as follows

  • 74% claim they like trying out new things
  • 92% think new experiences are important
  • Still 71% say, they could improve at trying new things more often

As we can see from results, the majority claimed that with a little nudge, they would get more active and do new things. So here we come in to provide that nudge !

We believe SparkApp can benefit its users in various ways :

  • As it is said an empty mind is devil’s workshop, SparkApp helps it users by engaging them in constructive hobbies.
  • Learn new things.
  • Overcome social phobia
  • Become creative and positive
  • With this app, it is possible to take part in charitable activities and hence enjoy the fun for helping others

Apart from bunch of benefits discussed above, SparkApp provides special values by opening up new horizons of random constructive activities which user may not have tried before. This may also help users to realize their hidden talents which they otherwise thought was not meant for them.

 

 

Prototyping :

12 3

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

We have uploaded our working paper prototype at https://popapp.in/w/projects/56ec75a2323e0635475d2c3e/preview/56ed4cdf1c9f3a857ad0b99e

After we clarified the main functions and features that SparkApp would provide, we built a paper prototype which included the user interface according to each function and feature which could be found at paper prototype link above.

The paper prototype helped us to visualize the application and makes it easier to deliver the idea to developers as well as audiences. When designing the paper prototype, we found that it would be more convenient for the user to customize event notifications by using double-end sliders for scales, such as “adrenaline level” (from fully relaxed to Indiana Jones) and “physical activity level” (from easy going to athletic hardcore).

We also made a video in which the main concept and the process of the application was explained. Video also contains story of Steve, who was bored by his daily life and wanted to try something new and how SparkApp could help him in overcoming his boredom and engage him in something constructive . Please check out our video 

Technical description:

    • Development tools used:
    • Stage of implementation:
      • Lots of back-end logic implemented. Front end HTML/CSS was also produced and integrated with the back end, but it was not good enough for submission. We integrated the system with Facebook, making login with FaceBook possible, and collected local events’ metadata from external sources.
    • Are you satisfied with the architectural choices your group made for the software? If yes, why? If no, what would you have done differently
      • Yes. Our Architecture remained at such a simple level since only mostly back-end logic was focused on. Everyone agreed on the development process in a beautiful harmony.
    • Repository

Team members :

Group

 

Group2

 

Group3

    • Axel Wallin (programmer, innovator, designer)
    • Evan Miller (programmer)
    • Mikko Rinta-Homi (programmer)
    • Annette Mili Kemppi (programmer, innovator, designer)
    • Shubham Kapoor (programmer)
    • Yan He (programmer)
    • Evgeny Kamardin (visual artist)
    • Batman (emotional support)

During the weekend we spent in Somejam2016, we were able to collaborate, gain unique development experience and Win an electrifying hackathon environment. Our project idea was well praised by judges but lack of front end developer and technical practicalities (For ex. We could only access Facebook users personal data after a week developer has registered himself to FB)  limited our practical practical demonstrations. If given new opportunities to showcase our project we would try to overcome these limitations and also include a nice front end developer in our team

Antti-Social Network

Team members:

  • Martin Radev – Programmer
  • Nidia Obscura – Innovator/Analyst
  • Fiyinfoluwa  Soyoye – Programmer
  • Angel Gallegos – Programmer

Screenshot from 2016-03-29 12:55:13

Concept description:

We came up with a solution to solve the problem of youth distraction by specific social media sites. We looked at statistics on the usage of social media by young adults and  we discovered that people under the age of 30 use social media for up to 4 hours a day and teenagers use these media for an astounding 9 hours a day.

While this was disturbing enough, we realized that it wasn’t the main problem. The main problem was that 13-year-olds can check Facebook alone up to 100 times in a single day. This implied that youth check social media so often that they never really focus on a specific task such as studying or even having fun with their friends.

Our target was the youth who were getting so easily distracted and unfocused because of such destructive habits, including ourselves. Actually, the idea came up after talking about our own personal problems with the nowadays technology.

We aimed to solve the problem by creating an web app that could easily be installed on a web browser and track the usage of the most commonly abused social media. From our own personal experience, we knew that most people don’t realize that they use Facebook or Twitter as much as they do.

The special value of the app was that we didn’t try to limit people’s access and usage of social media. Instead, we provided them with concise and clear data on their personal usages. We believe that limiting people will only lead to them trying to beat our system and ultimately uninstalling the app. By simply providing them with helpful knowledge, they can take this knowledge and change their own habits, improve their lives and have more meaningful interactions with the world.

 

PrototypingScreenshot from 2016-03-29 12:55:45

Our prototype was a complete chrome app paired with a functioning server and a website that displayed personal usage data.

When designing our prototype, we came up with a use case called Antti. Antti is a 19-year-old boy who was having trouble getting good grades in his first year of university because he could not focus.

He would spend hours studying but realize that it was all a waste. By using our app, he quickly noticed that when studying, he checked Facebook every 6 minutes. With that realization, he was able to train himself to concentrate and ultimately do better at university.

Below, we have included pictures of the website that we designed and the graphs displaying real usage data.

Website homepage:

Screenshot from 2016-03-29 12:45:27

User statistics example:

Screenshot from 2016-03-29 12:47:15

Technical description:

In our implementation we decided to split the work into three main parts: Creating a browser extension for logging the user behaviour, a server that collects all users data for further processing and a web interface that shows the user their user statistics and habits.

The browser extension logs the web domains visited by the user, device or browser used, and the timestamp of the time he started and finished using it. At this point of the implementation, the extension was only implemented for Firefox but planned to be implemented also in Chrome browser and in the future even on Android so the app covers the main devices used by young people.

On the server side, we created a dummy server in heroku that received the logs extracted by the extension and store them into a database. The server was available to any user at the end of the hackathon but it was missing a login implementation, therefore, it only was able to create statistics for one user.

Once we collected and created some dummy readings from the user, we process them and show them into a bar and pie charts for the user. The user visits his main page where the user is supposed to select a timeframe he/she is interested to know about. For instance, it can be a day, a week or a month. Once selected, the server collects the related registries for the timeframe and create the charts. The bar chart shows the main domain activities during the timeframe, for instance, in a day it shows the domains where the users spend their time the most during every two hours. The pie chart shows the domains where the user spent the most in the given timeframe.
On the data processing, we only were able to implement simple time analysis but it was expected to include more complex analysis. Such analysis includes the times you are using the most some domains, the mean intervals between each visit, for how long you visit them, etc. Once included, it would allow the user to infer why such behaviours and why during those times. Also, it would allow us to give some feedback if the user is expecting to get rid of some bad habits. For instance, if he wants to reduce the time he spend in “Facebook”, it would be possible to show him/her the progress on this task.

Screenshot from 2016-03-29 12:56:40

The tools used were:

  • Heroku
  • Flask
  • Python
  • Javascript
  • ChartJS

The implementation we tried to use tools that we were familiar with but we did not know in detail. That is, our purpose was to learn something at the same time we were creating our solution. For example, the initial plans include using libraries from python we know but, we did not know how to use it on a web-server. We decided to use flask framework since we have heard about it but not use it in detail. We also decided to use Heroku since we needed to have available the server from any device and deploying our implementation to Heroku allowed us to do it. At the same time, we initially expected to create the extension for Chrome but since it seemed easier to do it in Firefox, we went that way.

Technically, the most important decisions were defining the scope of the project due to time limitations. For instance, we expected to implement it in a web-browser and android but, we decided to have it working at least on the web browser before moving on to a mobile device. Also, we started creating a login page for allowing different users to have their statistics but, spending much time on it would be useless since it was only a prototype.

Hobby bot

logo11

Hobby bot slides

OLYMPUS DIGITAL CAMERA
The winning group. Members from left to right Pirjo (Pipe), Mika, Lunni (Mika’s dog), Lilja and Rupsha

 

Hobby bot is the ultimate tool for finding hobbies. Everyone can profit from it; those who already have hobbies but no one to practice them with, those who have no hobbies at all and those who don’t even realize that their free time activities can be considered as hobbies.

How does it work?

  1. Create an account

When creating an account, you’ll get to answer easy questions about your preferences. You may also link your social media accounts. The data collected will be used to customize your hobby list.

Screenshot - 290316 - 12:14:08 Screenshot - 290316 - 12:14:26 Screenshot - 290316 - 12:14:39

  2. Browse hobbies

Screenshot - 290316 - 12:18:28 Screenshot - 290316 - 12:18:42

Once you’ve the system up and running, you can browse hobbies using the amazing slider. One end is your comfort zone, which shows you only hobbies that are prefect matches for you, the other end of the slider is something totally new, which shows you hobbies that are least suitable for you… And everything in between! This makes it possible for you to stick with the stuff you like or try out new things.

When you do find a hobby you’re interested in, you are presented a doodle like calendar in which you can tick the times that are suitable for you. Once enough people have selected suitable times, Hobby bot works its magic and reserves automatically the most suitable time and place at the near by youth center notifying the users to confirm their attendance.

  3. Add your own hobbies!

Screenshot - 290316 - 12:19:02

Sharing is caring and the old proverb goes also with hobbies. Why do your hobby alone? Add it to the system and let Hobby bot find other people interested in the same hobby. Whenever you add a hobby, you also need to tag it. These tags are actually important for the system as hobbies are recommended by them.

Tag system

We use a simple LDA to divide tags automatically into semantically coherent categories.

IMG_20160319_152729

These categories serve two purposes: firstly they are the core of the recommendation algorithm and secondly they double as a feedback method to the user helping them to learn more about themselves!

Untitled-1

This neat diagram let’s you discover the “skills” (tag categories) you practice and don’t practice through your hobbies.

Not convinced? Watch a real young person using the system!

 

Our focus at SomeJam

Having learned the most valuable lesson last year: don’t spend too much time on coding. We actually only used a little fraction of our time to make an HTML page showing the system’s front page. Apart from that we used mock ups.

Firstly, understanding well the problem domain was our main focus. We asked youngsters about how they found hobbies, what hobbies are and so on. We discovered that the word “hobby” was a rather tricky one, and that people didn’t consider things such as playing in the theater or drawing as hobbies at all. Also we found that kids find their hobbies through their friends…. But what if your friends don’t have any hobbies – or you don’t have any friends to begin with?

IMG_20160319_122700

We created different user profiles – simple stories of possible users and their motives. And put them all in a single mind map.

IMG_20160319_152557

We were also asked to list values the system adds to its users by our lovely mentors. We spent a good amount of time trying to figure it out.

gserver

Pipe, the youth worker of our group also provided us with valuable insights about the social context of Hobby bot.

20160320_143432

Pipe was so eager to use the app that she took the mock up prototypes to young people to test.

 

 

Volu venture

Näyttökuva 2015-03-17 kello 11.09.51

Introduction of the team members

Anne, youth work professional

Tiina, artist

Jarkko Lagus, programmer

Lari Saukkonen, programmer

Jyri Saukkonen, programmer

Concept introduction

Idea was to rebrand volunteering work (in Finland) and to make an app that connects volunteers and organisations in a meaningful way. We decided to make platform to aggregate the supply and demand of voluntary work and change the overall attitude about voluntary work in finnish culture.

Screen Shot 2015-03-15 at 15.38.41

 

3 important user stories

Leevi:

Lifestyle: skater, lives with parents, doesn’t care so much about school, dreams making it in the skating business.

Attitude: free soul, doesn’t know yet what he wants to do in life, lives in the moment

Gain from voluventure: explore different kind of work possibilities, likes to work with children and other teens

Could have potential in youth work in the future

Anni:

Lifestyle: vegeterian, into arts, has strong opinions issues in society etc. goes to kallio school of arts, into acting etc.

Attitude: determinate young person with lots of optimistic dreams

Gain from voluventure: can have impact on society through own actions, likes animals etc. so could help in rescuing animals and so on..

Mikko:

Lifestyle: parkour instructor and a professional stuntman, urban person who likes to participate in all kinds of charity events and happenings around the town

Attitude: Fearless opportunist who likes to try out new ideas.

Gain from voluventure: Can make, organize and participate in volunteer events.

What did we learn about the service design process?

We learned how important it is for a successful service design process to include the professionals from the specific area of expertise to be able to understand the underlying problem. When designing a platform for young people it is not enough to have the information and means how to technically produce the generic product but how to make it adapt the specific field of business.

What became your solution architecture?

MEAN-stack: MongoDB, Express, AngularJS, Node.js

Heroku

MEAN-stack and Heroku were already familiar with us so that was a natural solution for our project’s starting point. We didn’t have any major setbacks using the stack and we could operate it efficiently. Overall we recommend the MEAN-stack and Heroku for anyone already familiar with the technologies but if starting to learn them in a hackathon-like fast pace environment is not advised because they take some time to master.

What development tools did you use?

Hipster logo generator Amazing professional tool for all your graphical needs.(http://www.hipsterlogogenerator.com) Forget about photoshop and use this instead.

GIMP, photo editor

Webstorm, IDE

Sublime text, text editor

What advice would you give for a person planning to participate SomeJam 2016?

In our opinion SomeJam is more about innovation and prototyping than just hardcore coding in a dark room without communication. We think that for success it is essential for the group to have an open communication between software developers and other professionals.

Almost 50 Shades of Your City

1598547_345715608957842_7442990014404149848_o

Want to hang out but don’t know your city? Let us introduce you to “Almost 50 Shades of Your City”!

During the weekend we were lucky enough to participate in SomeJam 2015. An event where you are among great minds. We had 48 hours to implement an idea which should help people, specially the youth. Beside all the intensity to implement something useful in 48 hours we also had much fun and great food. It all started when the three of us couldn’t find any group in line with our interests which lead to forming a team ourselves.  Since we were all computer scientists, Martin Radev, Farbod Faghihi and Ankit Kariryaa,  we wanted to use advanced knowledge in computer science and not only a normal service.  Since we were interested in Location-based Services and Machine Learning concepts we came up with “Almost 50 Shades of Your City”.

11025281_345714965624573_6111801854069214185_o

There are times that one is lonely and cannot find their desired places to go and like minded groups and related events are not found easily. As a new student you want to know more about different regions in the city in order to find desired places to hang out or as a person who is moving to the city because of his or her new job you want to know which regions contain events in line with your interests. As an agency working for improving the city, you want to know which parts of the city are deprived of cultural, technological or social event, so that we can work on these areas and making such events available to a large population. So we decided to get all the information from the services that organizes event such as Eventbrite and Meetup to make people more familiar with their city. The idea was to find out that what kind of events are held at which regions of the city. We have an intelligent user interface that provide the user with different levels of abstraction relative to the area that the user is viewing in the Google Maps. So as the user zoom in or zoom out we would classify different regions on the map into corresponding type of event that is happening there. For this goal we use clustering methods such as K-Nearest-Neighbors.

So here you can see three different figures, each with a different level of detail. The first one shows the Europe which we can see that the dominant event is business. In the next figure we went further and you can see a view of Berlin which is interesting because we can see the we have three separate areas with different kind of events. It shows that in the south west we have technical events while in the center the dominant type of event is business and finally in the south east music events dominates the events in that area. You can go even further, in the third figure you can see one of the Berlin neighborhoods with lower level of abstraction.

level1

 

level2

 

level3

We divided the challenge into 3 sub tasks, Martin was responsible for gathering data about events around the world, Ankit was responsible for the clustering of the data  and Farbod took up the job of visualizing the data. We went through different event hosting sites and decided to use www.eventbrite.com as our first source of events and then expand further if time would allow. For clustering the data, we decided to use,  K-Nearest-Neighbors clustering algorithm, here class labels are determined by a majority vote in its K-Nearest-Neighbors. In this way we were able to determine the most popular event in a certain area. For visualization, Google Maps API was selected and marker were used to display the finding of the clustering method.

We implemented the back-end i.e. the web scraping technique and clustering in Java. The front-end was implemented in JavaScript. We used github.com for source code management. We are happy with our choices as it worked out very well in the end (Yes we were one of the winners! 😀 ). We really enjoyed participating this event and would like to greatly thank everyone responsible in organizing the event.

EmploYouth

Introduction
Our team started working on an idea that was originally developed in Nuorten Akatemia (the Youth Academy) to serve as a real life jamming project with only social media as a digital platform. As a team we took this idea further and decided to create a virtual communication platform for the youth and the employers, where they could design and create presencial events to support the digital connection.

Team members

dsc_0064

Ville Niemi – Programmer, Computer science student

Juho Leinonen – Programmer, 3rd year Computer Science student, wishing to make people’s lives better through technology. Almost learned the cup song, but not quite.

Nidia Obscura Acosta – Mathematics and Computer Science student. From Mexico. I love sleeping. Cup song mentor.

Qian Zhou – Computer science student from China. Student of the cup song.

Henrik Nygren – Programmer, Computer Science student. I did not learn the cup song.

Irma Savolainen – Project worker at the Youth Academy, media-assistant, totally did not learn the cup song 🙁

Kaisa Karvonen – I am person who likes to work in projects. Teacher assistant of the cup song.

Our concept
One in every five young people in Finland is unemployed despite young people being talented in areas such as IT and social media. Youth finds it hard to get immersed into the laboral sector because of their lack of experience and the high expectations from employers.

To solve this problem, we decided to create a platform to connect talented youth with future employers in their field of expertise.
This platform will include both online challenges and presencial events such as jams, job fairs, traineeships, guidance, workshops, seminars, etc.

Link to the prototype

Example Users
a

Summary of our learnings
The main idea and concept was visualized already by the end of Friday night. We sticked through the weekend with the same main idea, the only main change was the change of scope of our platform events and enterprises- from technology and social media, to any kind of field.

As programmers we learned design stuff from Irma (Joni’s picture<3), and great pitching skills from Nidia. We also learned that Finland is NOT the place for street polls. We learned how to get a prototype ready really quickly.

Software prototype

What became your solution architecture?
We use Ruby on Rails to build our website platform. It is an web development framework that designed for rapid application development. It also takes advantage of software engineering patterns such as convention over configuration (CoC), don’t repeat yourself (DRY), the active record pattern, and model–view–controller (MVC). Ruby on rails uses SQLite3 as a default database which we used in development, in production we used PostgreSQL.

We were very pleased with Ruby on Rails. Majority of our programmers are already familiar with Ruby on Rails and familiar with each other at university. Using Ruby on Rails was also fast way to build our platform, and we wouldn’t have done anything otherwise. We were especially pleased with all the premade libraries that were available for the platform.

Development tools
Ruby on Rails
Heroku to host our website
Travis for deploying the code
Atom for text editing
Git for source code management
Photoshop for editing pictures for website and mockups
Google drive for shared and group documents
Slack for delivering pictures for website and documents

Way of working
We divided on two main groups, the designers and the programmers. We took mainly all the decisions concerning the design together so we all had a clear idea of how the project was working. We didn’t really had problems communicating with each other and dividing was an efficient way of working because we had good connection and the communication worked well.

Add something else?
We rocked the cup song!

YouChat

oulu-1

What?

Somejam, a coding event where the task is to create an app that benefits youth in someway. In 48 hours our team was able to create a communication tool that would allow a young person to have a private chat with a youth worker or other person capable of helping. Our teams was quite large and consisted of (from left to right):

  • Programmer, designer, innovator – Henri Malkki
  • Programmer, solution architect Felix Lindholm
  • Programmer, designer – Jonne Huotari
  • Designer, programmer – Perttu Lähteenlahti
  • Programmer, designer – Zita Němečková
  • Programmer, designer – Yan He
  • Youth worker – Maija Pihlaja
  • Youth worker – Liisa Kurtti

Concept

Liisa told us about her goal to make important information for young people more easy to access because they usually get it from wrong or outdated sources like friends or family.At Friday night we talked about some kind of Emergency button that would let you call a youth worker at anytime you wanted. On Saturday we expanded it to chat platform that would be 24/7 available, easy to use and let you talk one on one with someone who have correct and up-to-date information that young person needs. We wanted to create trustworthy chat environment so we decided that someone who is there to give advice should provide their name, photo and some additional information about themselves. This way young people can know who they are talking to and they can trust them. There are many chats but none is open for long or provide any information about people you can talk to.

oulu-3Our goal was to create some basic prototype that Liisa could show to her employer so they can use to improve the chat in Netnappi in Oulu that they want to renew in near future.

Technical stuff

Fact was that some software company would make the app from scratch when it would be launched, so we focused on making working demo instead of a complete product. We used nodejs and socket.io to create the software, because they were fast to implement and easy to use. This helped us to focus on the usability and design.

Final solution architecture

JavaScript
HTML5, CSS3
Bootstrap
font-awesome
node.js
socket.io
Iframe-technology

Development tools

Sublime text
Vim
Pen and paper

We think that nodejs and socket.io were quite easy to get started with, but deep understanding can take some time of course. All other technologies were useful and we can recommend those too. We can also truly recommend using Sublime text and Vim for all the editing needs. We used Slack for communication and sharing links. To put shortly, Slack is IRC with GUI and file sharing. It was great because not everyone uses IRC.

oulu-2

Conclusion

The final product met our expectations and we were very happy about it. Overall the weekend was great experience for all of us and provided everyone of us some new. It was super fun to work as a team and create a working service concept prototype.

It is great that our work can hopefully benefit young people some day.

Rainbow badgers – Gamifying the youth

Rainbow badgers

Our team of five consisted of the following members: Mika Hämäläinen, Mikko Holm, Evgeny Tiutiunikov, Kristiina Rahikainen and Tiamo Laitakari.

Our service, Badger, is all about motivating young people to do volunteer work. At one end of the service, there are young people who don’t have any work experience to get a real job. And at the other end, we have people who need help. Our service brings these people together. Young people get work-like experience that builds up to their virtual CV in form of badges and points.

index

 

Some user stories:

– As a young person I want to have work experience to make it easier to get a real job

– As an old woman I want to read the Holy Bible to someone so that they’ll learn real values

– As a single mom I want help with the kids so that I can relax

chore_view

It was cool to innovate a new service that could possibly have a positive impact on people’s lives. The HCI part was also interesting.

Software prototype

badges_view

The initial mock-ups were done with Balsamiq, you can see them at our GitHub page https://github.com/mikahama/rainbow-badger .

Our architectural choice was pure HTML, CSS and JS – no servers. I’m not entirely satisfied because with an SQL database we could have done more in an easier way.

The tools we used were basically NetBeans for some, while others used SublimeText. Git and GitHub were common to us all.

A Life-lasting Experience: SomeJam 2014

Experiences from 2014 hackathon

 

A Great Weekend

The weekend started on Thursday (13th March 2014) by a series of talks by some young entrepreneurs at the Linus Torvalds auditorium (Exactum building, Kumpula campus of University of Helsinki). We learnt some key facts and points about lean startups and also characteristics and goals of prototypes.

The Joy Began

Next day (Friday), SomeJam hackathon officially began at the Happi Youth Center, with some initial speeches about the fundamentals and practicalities. Then we teamed up, and the organizers started to ignite the creativity rocket of participants by showing some objects and asking us to guess what it is, and how it can be used. Then we started to think about and come up with some ideas to solve the loneliness problem of youth. After some minutes of brainstorming in groups, all groups presented their ideas.

Finally, we had a freestyle opportunity to come up with some novel ideas and present them. First, I came up with a great novel idea (related to youth) and presented it, but since we only had 48 hours to build the prototype, I thought more time is needed to build a working prototype of my idea. Then I noticed another great idea proposed by Maninder Singh, and I joined the team. Then Lei Wang and another anonymous teammate joined our team.

The idea was to provide a service to lonely people and those who are new in a city, especially youth, to find and join events based on their interests, make new friends, and have fun. After joining the team, we started to discuss about the details, and we came to an agreement for the programming language and technologies we wanted to use. We chose the Grail framework because we all knew Java, and Grails was a great framework for Java programmers, because it is relatively easy to learn, developers can develop their solution quickly using scaffolding facilities, and it’s almost hassle-free. I already knew Spring framework and Maven, and it helped me to learn the new framework rapidly.

Welcome to The Dragon Team!

IMG_0822

Friday night, we started to brainstorm more and then collaborate to draw our initial model on a big piece of paper. We managed to come up with a model that satisfied our initial requirements. It’s worth to mention that this model might not be complete in the first iteration and can be improved over iteration (like in lean and agile processes), but we tried to consider and model the fundamental building blocks accurately.

We created a paper prototype demonstrating the features and functionality of our intended service. We also created a central repository on Github to facilitate our teamwork for implementing the service initially as a web-based service. Since the IntellijIDEA IDE offers out of the box support (code completion, server management, etc.) for Grails, we used that IDE for our project. After working till 4 AM on the backend and a part of frondend, we left Happi to have some rest at home.

1

On Saturday, we get together again at midday because we had to pitch and defend our idea and project in a tough jury meeting.

3

Fortunately, we managed to defend our idea, and of course we got some precious suggestion and advises that we considered for improving our service. After the meeting, we continued to work till late night.

Time to Wrap Up

1970810_220897911439613_1155523944_n

On Sunday, we got prepared to present our software product (working prototype), and I believe we did it pretty good. You can watch the footage on YouTube.

Eventually, the amazing weekend came to an end, but the inspiration did not. I learnt a lot in the first SomeJam.

1901185_220896958106375_112304442_n

The Guru!

I believe the following advices may come in handy:

1. Don’t miss this kind of events! When I got the email regarding this course, I thought I’m not going to participate because I was busy, but it turned out to be one of the best courses I have ever had.

2. It’s great to have some novel ideas to solve our problems, but since these kind of hackathons are quite short, bear this in mind that you must be able to implement a prototype in a short time. So don’t consider ideas that need a week or two to build even a prototype.

3. Although prototypes are there to quickly show the concept, but they should impress/persuade the investors/partners/business angles for investing in your idea. So take this into account before going to the pitching meeting.

4. If you didn’t face a good reaction/feedback from the potential investors, don’t be frustrated, the objective of a prototype is to assess if the idea is worth to put more effort in order to implement it. Instead, think about other novel ideas.

5. You can predict the reaction/feedback of your potential investor to some extent. Try to ask yourself:

– How are we going to have our first user/customer?

– How can we extend our user base, and how are we going to keep them motivated such that they continue to use our service?

– What value(s) does our service offer to users?

-Can we imagine of a Persona for our users?

– Is there any similar service out there? If yes, how does our service differ from those similar ones?

– Does the project need significant investment to set up? What about the maintenance costs?

– Can we generate a revenue stream?

I learnt all of these in this intensive event. Thus, in the end, I would like to express my gratitude to dear Hanna Mäenpää, dear Emilia Hjelm, dear Marcus Lundqvist, other organizers, and my teammates for creating this great experience.