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.

Patterns for infrastructure-as-a-code & Visualizing codebases

May 04, 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. 

Andrey Adamovich, Software Architect at Aestas IT, is a software craftsman with many years of experience in different lifecycle phases of software creation. At I T.A.K.E Unconference 2016, he will share more patterns for infrastructure-as-a-code and visualizing codebases.

 

i-take-unconference-speaker.008

 

 

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

 

  • Leaving my first workplace, where I have worked for 5 years
  • Becoming an active public speaker
  • Co-organizing local communities and conferences
  • Developing open-source libraries
  • Writing a book

 

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

Visualizing codebases: Seeing big picture in a big code base with simple tools
Patterns for infrastructure as code: Give some hints on how to improve quality of “infrastructure-as-code”

 

#3. What else would you like to share with participants

Developer | Entrepreneur | Open-source Enthusiast | IoT Player | DevOps Believer | Visualization Lover

 

logo ITAKE 2016

Want to join Andrey and many more software crafters from around Europe?

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

 

Brutal Building Constraints

Apr 06, 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 Kofler is a software developer since 17 years and still enthusiastic about writing code. At I T.A.K.E Unconference, he will share more about Brutal Coding Constraints.

 

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

1. The biggest thing I did that changed me was a Journeyman Tour. For three months I visited different companies in Vienna and paired with their developers. See here for more information. (Three Month Journeyman Tour)
2. This included a lot of pair programming with strangers. I like pair programming and make use of it to learn from others. (Pair Programming)
3. I did (and still do) a lot of Code Katas to practice and experiment with code, patterns, and design. (Code Katas)
4. Try to continuously improve.
5. Read technical books.

 

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


Yes, my session, the Brutal Coding Constraints, is a real challenge. It challenges our perception of Object Orientation and aims to deepen our understanding.

 

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


* Michael Feathers – The Deep Synergy Between Testability and Good Design
* Bryan Liles – TATFT – Test All the F…in Time
* J.B. Rainsberger – The Worlds Best Introduction to TDD

 

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

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

Journey to Agilandia

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.

 

Liviu-Stefanita Baiu, Senior Business Analyst and Analysis Discipline Lead, has worked as a full-time Business Analyst for the last 5 years, in a couple of companies, in an Agile environment. He will share at #itakeunconf real-life samples of the techniques and tools and how they helped get along in Agilandia.

 

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

 

Some of the most important turning points in my professional life are related to the people – my family and people I’ve met and work with along the way.
√ The set of values I learned from my family is the basement for all I am today, and I will name only a few – fairness, transparency, and loyalty helped me get through various situations I encountered.
√ Along with the above values – assuming responsibility for the things I’ve done allowed me to become trusted and receive honest feedback about my activity. Getting the right feedback (positive or negative – we all have successes and fails) and learning from it – this is something of value for me, and I try not to repeat the mistakes I’ve made along the way.
√ I like to read and I was encouraged to do so – this got me to pay attention to details and try to see beyond words and facade.
√ Making a career switch, thirteen years ago when I joined Transart, was a turning point. And the things I learned there for almost seven years, allowed me to naturally evolve to become a Business Analyst.
√ The colleagues and superiors I had, in my previous employments, contributed something to my evolution – their appreciation, as well as their disapproval, and always their advice.

 

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

 

My session is nothing about panacea, rather a proposition for the participants to use a set of tools, techniques, and attitude to tackle the complexity of software projects in an Agile environment. Some of them tools will help them understand the product vision, and other can be used for passing it on to the teams they work with. The match between them and each participant’s work environment as well as the value they bring in everyday work is a decision that relies solely on each and everyone from the audience. This toolkit worked for me, it may work for others.

 

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

I play GO (or wieki) – an ancient Chinese strategy game – unfortunately less often, I enjoy reading Fantasy and Sci-Fi literature, but one of the books I enjoyed reading is a military treaty – Sun Tzu’s Art of War, and one of my favorite authors is Mario Vargas Llosa, from a professional perspective Patrick Lencioni – The Advantage was an inspiration. And to conclude – the best source of information is the team you work with, they will show you what you need to learn so you can work together.

 

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

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

Leave a Reply