Hi there, I’m Stan. A 22-year-old freshly graduated full-stack developer. But right here, at #oSoc16, I am the back-end developer (for the second year) of the Spitsgids team. A project that tries to predict how busy your train will be. That’s what I want to talk about in my blog post. Not about Spitsgids itself, but just about #oSoc projects and how they start from a small idea and turn into a valuable product.
When you think about it, an #oSoc project is exactly like a human. It starts really small and has no idea how it will evolve. After a period of 4 weeks (the period of an #oSoc project), it grows into a person that is able to survive by itself and conquer his place in the world by differentiating itself from other people.
The baby period
This is the beginning of a project. The only thing your team has at this point is the initial idea of a project (or you don’t even have that). In this stage, the team needs to brainstorm, get the ideas flowing and open as many possibilities as you can (open up your mind yo!). Every idea counts and can contribute to the product. In this period of the project, the team learns a lot about the project and the environment where it needs to survive in.
The toddler stage
In this stage, all the ideas (of the baby period) your team had, get filtered and reduces to the amount your team can handle during the 4 week long #oSoc period. The scope of the project gets more specific in this stage and from now on every team member should be able to give a decent pitch about the project (in case some people get fingergunned).
Another thing that happens at this stage, is the prioritizing of the ideas. The team should get to know the order they should implement the ideas. This part should also be discussed with the client because it’s actually their call on how important features are.
In primary school, the team should model their ideas. What in Christ’s sake is modelling? I can hear you thinking through that computer you’re in front of.
Modelling is the process of working out your ideas by talking, but mostly writing out things without doing any programming. The base structure of a feature is set by modelling it and that way the programmer who needs to implement that feature knows what he/she should do.
This is the stage of the pure programming. Here, the project gets created and the hard labour gets done. There might pop-up some extra questions during the programming about how to solve certain problems. It’s also possible that the scope changes because of a lack of time or not thinking through certain things enough. However, these things should be avoided as much as possible.
In this last stage, the project gets finalized. The programming should be finishing up, a release of the product should be created, the documentation should be written, the code should be put in the right places (Github, npm, Bower, Bitbucket, ..) and probably the project should also be deployed to a server.
Even more importantly, a marketing campaign should be created. Because without a marketing campaign, all the work you have done will only be used by some people. That’s not what you want, right? You want it to become big, you want as many people as possible to use your project. This can be done by writing a press release and sending it to the right people, creating merchandise for your product, creating a business plan and being able to pitch your project in front of an audience.
I hope you had fun reading this blog post and maybe learnt something from it. If you have any questions or you’re just interested in this blog post or what I do at #oSoc16, send me a tweet: Stan.