Programming contest @I T.A.K.E Unconference

May 05, 2017 by Madalina Botez in  Announcements

As for every I TAKE Unconference edition, we want to give a chance to the software crafters from the audience to showcase their skills and learn more in the process. And because we appreciate passion, we offer a prize to those who convince a jury of well-known international developers that they are the most skilled in the room.

This contest is not meant to be easy. It will require you to practice beforehand, so please read the instructions carefully.

It will also require you to register before the event.

Mechanics

  • IMPORTANT: Register to the contest latest one day before I TAKE Unconference by sending an email to steliana.moraru@mozaicworks.com 
  • On the first day of the event, after lunch, you have max 15′ to do a performing kata in front of the jury.
  • The winner will be announced at the end of the second day

Constraints

To simplify the jury’s decision, the performing kata has to conform to the following constraints:

  • Only the following programming languages are accepted: Java, C, C++, C#, Python, Visual Basic .NET, PHP, Javascript, Swift or Ruby
  • Only solo contestants are accepted. Sorry, no pair programming this time
  • The kata has to showcase refactoring skills.
  • The kata has to last max. 15′

How we will judge

The jury will judge your refactoring skills.

The ideal kata looks like this – you will get maximum point if you:

  • clearly state the smells you see in the code
  • pick one of the smells
  • clearly state your plan to fix the smell
  • fix it in small, safe steps
  • run tests after each step to prove you didn’t break anything
  • commit after each step with a clear message explaining why you made the change
  • fix as many smells as possible within the time constraint

You will loose points if you:

  • make big or unsafe changes to the code
  • break the behaviour after changing the code
  • don’t improve the code a lot
  • don’t improve the design by the end of the kata (hint: we judge design using SOLID principles and the four elements of simple design)

Recommendations

To help you, we’ve thought out what we would do if we participated to such a contest. Here’s what we recommend.

1) Use one of the following codebases for the kata:

2)  Practice beforehand on the structure we presented for the ideal kata. Ideally find someone to practice with.

3) Watch other people refactoring. YouTube has many videos on the topic, including using the recommended code bases.

Glossary

A programming kata is a repeatable exercise used to practice specific skills.
Performing kata means doing a kata in front of an audience.
Refactoring means changing the internal structure of the code without changing its behaviour.

Documentation for software developers

Apr 10, 2017

Enjoy the following series of interviews with the speakers, top-notch software crafters from across Europe, joining  I T.A.K.E Unconference, Bucharest, 11-12 May. Discover the lessons learned and what drives them to challenge the known path in their field.

Peter Hilton is a software developer, writer, speaker, trainer, and musician. Peter’s professional interests are business process management, web application development, functional design, agile software development, and documentation. He will present at #itakeunconf a session about documentation for software developers. 

 

#1. Please share with us 5 things you did that helped you grow & become the professional you are today

The things that helped me grow the most were starting to do something that I later developed a lot further: travel, presenting, writing, management, and coding. These influences on my professional development were taking overseas assignments and later moving permanently to another country, presenting to colleagues and later at conferences, writing a tech blog and later a published book, leading a team and later taking on a management role. As for coding, the most important thing was to never-never give it up and always have something new to learn.

#2. What challenges will the participants find solutions to during your session at I T.A.K.E Unconference 2017?

My workshop will help participants address the hardest challenge in software documentation: learning how to take the first step from no documentation at all to the minimum viable documentation. The hard part is understanding what you can do, without wasting time on too much documentation.

#3. Recommend for the participants 3 sources you find inspiration from and would help them better understand you

iMy passion is figuring how to explain software and make it maintainable. I was originally inspired to learn more about this after reading Steve McConnel’s book Code Complete, as well as many other books about software development. I discuss my favourite aspect of making code understandable in my Software Engineering Radio interview on naming things.

I’ve always found talking to other people the best way to develop and refine my own ideas. This inevitably lead to conference presentations, for which my greatest influence is Kevlin Henney’s presentations.

Perhaps my greatest inspiration is the real world, which I enjoy exploring. My favourite way to learn about a new city and immerse myself in it is to explore its cafes, which I started doing on business trips and overseas assignments when I had a hotel room instead of a home to stay in. Writing cafe reviews on my own web site, before the likes of TripAdvisor was invented, was also how I started to explore writing. Today, there’s still probably as much writing about cafes as about programming on my own blog.

 

 

Want to join Peter and ~300 software crafters from around Europe?

Register now for I T.A.K.E Unconference 2017!

Show your coding skills while competing with peers like you

May 14, 2015
Do you know how to test systems? Can you point coding issues? Are you open to learning from other people? And, best of all, can you safely clean up existing code and improve its design? These are all core developer skills nowadays, and you’ll greatly benefit from mastering them. Here’s just one more opportunity to do so during I T.A.K.E. Unconference – The Programming Contest. We think you’re going to enjoy it.

 

Take a set of challenges that will put your skills to the test, overcome them and get the most points to win the contest. Oh, we almost forgot: those getting the most points win gadgets like a drone or an iPad. They are still small rewards compared to the learning, but we’re sure they help :).

 

drone-at-itake

How the Programming Contest works?

Well, this is simple. We try to automate the process as much as possible. For the moment the instructions are as simple as:
  • Register for THE contest on May 28
  • Solve the challenges
  • Submit the solutions until May 29, 2 pm
Really cool: you can use ANY of the following programming languages: Java, C#, PHP, C++.

Who will review your code?

The Jury is built of Software Craftsman Fellows from Europe – names soon to be announced. They will grade each challenge you took. There will be just a few challenges, and taking all of them may lead you to the highest score. So the more you solve the closer to win.

Compete with passionate coders at I T.A.K.E. Unconference

Join the crew, compete with developers like you, gain recognition and take the drone home, offered by Mozaic Works. Or the iPad offered by Accenture.
Don’t miss the Programming Contest as well as many other hands-on sessions at I T.A.K.E. Unconference happening in Bucharest on 28-29 May 2015.

competition_quote

Mocks are mocking at you?

Apr 13, 2016

Enjoy the following series of interviews with the speakers, top-notch software crafters from across Europe, joining  I T.A.K.E Unconference, Bucharest, 19-20 May. Discover the lessons learned and what drives them to challenge the known path in their field. 

 

Andreas Leidig, Developer & Agile Mentor MsgGillardon AG, and Robin Danziger, Software Developer, will join I T.A.K.E Unconference 2016 as speakers. They will share in their talk more about mocks and prototypical library for solving this problem in JavaScript: chadojs.                                                                                                   

 

i-take-unconference-speaker.005

i-take-unconference-speaker.006

 

#1. SHARE TOP 5 THINGS YOU DID THAT HELPED YOU GROW & BECOME THE PROFESSIONAL YOU ARE TODAY

Robin:

  • Regular participant and speaker at conferences & local user groups
  • Coaching teams and organizing internal meetups about software development
  • Working with different teams and companies (I’m a freelancer)
  • Ask professionals how they would solve a problem
  • Try to read the whole internet 😉

Andreas:

  • Initiating a conference (SoCraTes)
  • Visiting and speaking at conferences
  • Listening and questioning my own views
  • Working with different teams (during my previous job)
  • Thinking outside the box

 

#2. What challenges will the participants find solutions to during your session at I T.A.K.E Unconference 2016?

Participants will learn about the possible pitfalls and gaps when using mock objects blindly. They will understand that this may lead to decreased safety for refactoring and this weakend trust initiates the need for creating more and more integration tests.
They will see the underlying principles and learn about ways and techniques to escape this trap.

 

3. What else would you like to share with participants

Robin:
I like to talk about different software development approaches. How can we use and maintain software tests from specifications and end-to-end-tests to unit-tests. And I would like to know how other teams share their knowledge and improve the collaboration inside the team.

Andreas:
Don’t be shy. Open your ears and eyes. Listen and ask.

 

logo ITAKE 2016

Want to join Andreas & Robin and many more software crafters from around Europe?

Join I T.A.K.E Unconference 2016!

Leave a Reply