Make or Break competition rules
Switch branches/tags
Nothing to show
Latest commit 7a27c2f Aug 1, 2017 @jpmcosta jpmcosta committed on GitHub Adds Make or Break homepage link
Failed to load latest commit information. Adds Make or Break homepage link Aug 1, 2017

Make or Break 2017 — Rules

Make or Break (MoB) is a hackathon in the city of Porto, Portugal, the spiritual successor to Porto Summer of Code, brought to you by the same team. Everyone can participate. It’s free, it’s fun, and there are prizes for the best projects.

Until the event begins, the rules are a work in progress. There won't be any major changes, but be sure to check back.

What is this?

MoB is a team-based hackathon where projects are not just presented but also tested by other participants, meaning that the event has two main phases:

  • Make: 48-hour run to build the best project possible
  • Break: teams showcase and let other participants test their finished projects

Participating teams must have between 2 and 4 elements. Each team shall build something that’s interesting for them and that they can showcase.

At the end of the hackathon, we’ll have a fair where participants will have the opportunity to experiment and vote for each other’s projects in 3 possible categories. At the end we’ll announce the three most voted project in each of the categories. The categories are:

  • Useful: things you could see yourself (or others) using
  • Funny: things that are entertaining, or generally make people laugh
  • Hardcore: things of enviable technical prowess

There are also satellite activities (like workshops, games, etc.). We hope participants have fun, socialize, and learn from building shiny things and from each other’s projects. It’s also a great opportunity to get to know about Porto and its tech scene.

Where is this?

MoB happens in the the city of Porto, Portugal. As in the last three events organized by the team at Porto Summer of Code, the venue will provide the participants with a shared working area, as well as chill-out and eating zones.

When is this?

MoB is a 3-day event. It starts on September 8th and ends on September 10th:

  • 08-09-2017: Hackathon opening
    • 09:30-13:00: Check-in
    • 14:00-14:30: Welcome
    • 14:30-23:59: Hacking time (Make)
  • 09-09-2017: Hackathon continued
    • 00:00-23:59: Hacking time (Make)
  • 10-09-2017: Hackathon finale
    • 00:00-14:00: Hacking time (Make)
    • 15:00-16:00: Fair registration and booth setup
    • 16:00-18:00: Fair and voting time (Break)
    • 18:00-20:00: Winners and closing ceremony

Workshops are to be added to the schedule as we reveal them, but they will need a separate application.


MoB is a free event and everyone can apply in a team of 2 to 4 elements.

It’s expected that each team will be actively building a software project to show off at the fair.

At the fair, all of the members of your team are expected to divide their time between showcasing their team’s work and voting for other projects.

Seating is limited, be sure to grab yours at

1-man teams

Without a team you are not able to apply to the event. However, you can still register to gain access to our Slack community and find a team before the event starts. If you’re having trouble, let somebody from the organization know in Slack, and we’ll help you out the best we can.

Excluding people from participating in the event is something that pains us greatly, and we didn’t make the decision lightly. The reasons why we don’t allow teams of 1 are:

  • You won’t have the best experience: this is the 4th event we organize, and we’ve already talked with enough lone rangers who expressed some regret about applying alone and wished they were enjoying the event to the fullest.
  • We are not certain if you are going to show up: motivation is not always at its peak, but a motivated team can boost an individual’s motivation. With every seat counting, our goal to is to minimize our no-show rate, and individual applications have a higher no-show rate.
  • Your project could be much better: with a limited amount of time there’s so much a single person can do or endure. In our 3 years of Porto Summer of Code, we have yet to a see a winning project with less than 3 elements. So, for the time being, we are betting on you to at least convince your best friend to join you in this unforgiving competition.
  • The number of projects does not scale well: with 250 participants, we want to make sure every projects gets the spotlight it deserves. However that’s already an impossible task, as there’s always the need to cut down the number of projects presenting to the public. This year, with a new (untested) fair format we have to be extra careful. We need to make sure the number of projects being showcased is adequate, to make sure every project can be properly displayed and experienced.

There are always exceptions to every rule. Unfortunately, with limited resources, we have to optimize our rules to enhance the odds of success, and make exceptions as we see fit.

If you are by yourself and you are unhappy that you could not participate, you are still welcome to join us at the showfloor from 8 to 10 of September just to tell us that. If there’s something that can change our minds for the next edition of Make or Break, we want to hear it!


Workshop will happen during the Make phase, and will have their own registration page. To apply, go to and register for the workshops in the 'Workshops' section (coming soon).

Event phases

MoB is split between two main phases: Make and Break.


Make is the hackathon, where people hack on things together, as a learning and collaboration experience, to try out things they normally wouldn’t work with.

Admissible team size

As referred earlier, we’ll only be accepting teams with 2 to 4 elements.

Code ownership and intellectual property

We want MoB to be an experience that’s both fun and edifying for everyone. We’re firm believers in the value of open software can bring to the table for achieving this end, and we’ll rally around it as much as we can.

The code (and any other produced artifacts) will belong to the participants. However, in the interest of keeping everything hackable and accessible, projects are required to be under an OSI approved license and unencumbered by any IP restrictions (like patents, among others). This way everyone can peek into any of the projects and learn from them, take them home to learn more, and even expand on them. Perhaps they’ll have something cool to discuss with you!

In the interest of keeping things leveled, we’re only allowing to incorporate free/libre open source software that’s publically available before the competition begins. We don’t have any issues with people using popular software packages, but we’d like to avoid that teams bring a whole project along when others couldn’t have done the same. If you have a non-trivial codebase you’d like to use on your hack, make sure it is publically available under an OSI approved license and unencumbered by any IP restrictions before the competition begins. This way everybody starts equally as far from finish line.

At the beginning of the fair, we’ll make a public fork of your repo. This ensures that we’ll have a copy that we can make available to everyone and that we can preserve it for posterity.


The organization will provide free hosting for team that could give it some use. Talk to the organization for more details.


Break is the “hack fair”, where teams demonstrate what they’ve built during the Make phase, and all the participants vote on each other’s work in the categories of the voter’s choosing. When the voting comes to an end, we’ll crunch the numbers, announce winners, and award prizes.

Registration and booth setup

A subset of the organization will go through each team to double checking their project submission and reminding participants of the voting requirements and process.

Mandatory voting

Every competing team member must vote in every category. Not voting may disqualify their entire team from winning any prizes.

If any team members are unable to be present or to vote, they must convene promptly with the organization as soon as possible, to find a way to avoid disqualification.


We’re going to have 3 categories:

  • Useful: you see yourself using it or it creates social value
  • Funny: silly/fun, does not have to be useful, it just has to make people laugh
  • Hardcore: technologically impressive achievements

When you cast a vote on somebody, you also choose the category. You can vote for a project in more than one category. The project owners might suggest categories to be voted on, but it’s completely up to the voter to follow that suggestion.


There will be prizes for the three winning team in each category. We still haven’t decided what they’ll be. Be sure to check back for more info at a later time!

Voting method

Each category has their own independent voting system. This means that voting in one category in no way influences the winners of the other categories. For each category, voters are allowed to vote in three projects, in order of preference. When the ballots close, we sort the projects by their ranking, where ranking can be determined by Schulze method.


At the end of the competition, we will publish the set of votes associated with anonymized identities. This will allow voters to verify that their vote is included in the list, and that the number of votes match the results. The anonymization process guarantees that each participant is able to verify that their votes are uniquely identified. The audit log is a text file with two sections. The first section contains a line for each participant, with their email in it, in alphabetical order. The second section, separated by an empty line from the previous one, contains a line for each participant, containing the anonymized_identifier_hex (which is hex(HMAC(nonce, email)), where nonce is assigned to you at registration time) and the list of projects they voted on, in decreasing order of preference. The second section is sorted in alphabetical order as well.

Sample audit log:


2f4a51d05ded4f7a2aecc3d59082ecb9 proj1 proj5 proj2
6017886db43c7102a5b7a030488a4242 proj4 proj3 proj3
93026da4be536ac8cd2d9331276640b8 proj1 proj3 proj6
7db7f4fc3575b404275b53f1383f5a69 proj2 proj4 proj5
c0092829631f39f6dc34cb506cf05b17 proj1 proj2 proj5
f8fafa57ef507152eff134a04f7ef2d7 proj5 proj1 proj2

Non-participant voting

During the event, we may want certain guests to have the ability to vote (sponsors, CMP collaborators, etc.). To make it easier for them to vote, without having to install apps or register on our website, we are planning on handing them a set of physical tokens that they can give to competing teams. Each token will have an unique identifier to avoid double counting.

Code of conduct

TL;DR: treat others as you would want to be treated.

One of the main goals of Make or Break is to create a fun and relaxing environment, where all the participants feel safe and sound, despite their gender, sexual orientation, ethnicity, nationality, or religion. In that sense, all the participants, organizers, guests, and visitors must follow a strict code of conduct of mutual respect, as described in:


The disrespect to any of the “Make or Break 2017 — Rules” by any element, team, or project may result in the disqualification of that element, or team. That decision is ruled by the organization on a case-by-case basis. The organization may amend or supplement the “Make or Break 2017 — Rules” from time to time in our sole discretion without prior notice. Changes are effective upon posting, and it is encouraged to frequently review the “Make or Break 2017 — Rules” online for any changes.