Hack your journey to software craftsmanship with martial arts practices

Apr 29, 2017 by Madalina Botez in  Software Craft

code-kata

“Whatever luck I had, I made. I was never a natural athlete, but I paid my dues in sweat and concentration and took the time necessary to learn Karate and become World Champion.” – Chuck Norris (American martial artist and actor. Also, the only man who has counted to infinity. Twice.)

 

 

Japanese concepts from martial arts become common practices in software craftsmanship. It is known that thousands of software developers aiming to become craftsmen are mastering their skills using them.

In fact, in the software industry developers are taught the theory and thrown straight into working on a project. The practice is done on the job, and mistakes occur. Applying the theory is not enough, greatness comes from practising. What makes a programmer to be great is the practice done beyond the software development current job. That’s why so many developers nowadays practice Code Kata.

Why would you do Code Kata?

In karate a kata is an exercise where you repeat a form many times, making small improvements each time. The intent behind code kata is similar. Each iteration is a short exercise (about 30′ to 1-hour duration). The point of the kata is not arriving at the right solution, but to learn some stuff along the way. The only goal is to practice.

Exercise your programming muscles in a way you enjoy and see the progress you make.

According to Code Kata, you need a good practice session and you have to make it fun: you need a bit of time without interruptions, and a single problem to solve in iterations; do as many iterations as it takes for you to improve, and be comfortable making mistakes.

What is Code Kata?

code kata is an exercise in programming which helps a programmer improve their skills through practice and repetition. The term is considered to be coined by Dave Thomas, co-author of the book The Pragmatic Programmer: From Journeyman to Master, in a bow to the Japanese concept of kata in the martial arts.

An example of Kata

Repeat solving the same problem (as the one below), until you know it by heart. You can be sure the next time it pops-up in production it will take you seconds to get it done.

Think of binary numbers: sequences of 0’s and 1’s. How many n-digit binary numbers are there that don’t have two adjacent 1 bits? For example, for three-digit numbers, five of the possible eight combinations meet the criteria: 000, 001, 010, 011, 100, 101, 110, 111. What is the number for sequences of length 4, 5, 10, n? Having worked out the pattern, there’s a second part to the question: can you prove why that relationship exists?

Practice Code Kata at I T.A.K.E. Unconference

On 11-12 May 2017 in Bucharest, there’s a Kata Lounge track waiting for you.
During the 2-day program, at any time, you can join this track to pick up a challenge and start the kata session. The challenge contains the problem (called kata), the time you have for your session, and the name of the person who will review your code. The reviewer will help you improve your coding skills.
Invest a bit of time in your coding-craft. Don’t miss the Kata Lounge as well as many other hands-on sessions at I T.A.K.E. Unconference.

Software craftswomen: Alexandra Marin

Mar 24, 2016

In celebration of Women’s Day, this March we salute yesterday & today women’s contribution to the development of the technology and IT fields. Follow #famousITwomen to find interesting stories. They might motivate and encourage you to do something out of the ordinary in your career. 

The importance of women in Science, Technology, Engineering & Math (STEM) has been gaining a momentum in the last years. At I T.A.K.E. Unconference, we value women’s contribution in IT and we believe their dedication to the software craft can be an inspiration for other practitioners.

Alexandra Marin, software craftswoman speaking at I T.A.K.E Unconference 2016, shared more with us about her professional journey and lessons learnt in the IT field.

If you want to find more inspirational stories, we invite you to read also about Franziska Sauerwein, software craftswoman speaking at I T.A.K.E Unconference, and Grace Hopper, programming pioneer. Screen Shot 2016-03-23 at 6.52.20 PM

 

#1. What’s your professional story?

Why did you choose to develop a career in this domain?

Dopamine junkie who loves cracking puzzles. Had my first computer in middle school and by high school had taught myself how to code. One CS degree and a few freelancing/volunteering gigs later landed my first real developer job in Germany. My traditional office career was short lived though. I decided to check for myself if freelancers really go hungry looking for work, as I had repeatedly been warned.

Turns out I enjoy taking responsibility for my own career and remote work came with unexpected benefits. Working with people and causes I truly find compelling, making and sticking to my own work schedule (amazing for dev productivity if done right) and coming into teams as an equal partner are all pretty great side effects.

 

#2. Share with us a lesson you’ve learned since you’ve been working in IT

Maybe counterintuitive, but time and again I’ve seen collaboration putting you ahead of the game. So, experience pair programming & code retreats, make open source contributions, be a speaker, offer mentorship or get a mentor. Building a network beats whiteboard practice any day of the week as far as job hunting goes.

 

#3. Whom do you admire as a women IT practitioner? Why?

I appreciate makers like Simone Giertz and Sara Chipps, creator of Jewelbots, for tackling hardware and robotics. I empathize with Julie-Ann Horvath, ex-GitHub, for a situation all too common for women in tech. Also worth following on Twitter: Iris Classon, Pinterest’s Tracy Chou, and not women per-se, but the @CallbackWomen & @PowerToFly initiatives.

 

Curious to meet Alexandra? Join her @ I T.A.K.E Unconference 2016!

Software craftswomen: Franziska Sauerwein

Mar 08, 2016

In celebration of Women’s Day, this March we salute yesterday & today women’s contribution to the development of the technology and IT fields. Follow #famousITwomen to find interesting stories. They might motivate and encourage you to do something out of the ordinary in your career. 

We’ve sat down with Franziska Sauwerwein, software craftswoman. Learn more about her professional journey and lessons learned in the IT field. She will speak at I T.A.K.E Unconference 2016.

#1. What’s your professional story?

Please share with us about your journey in the IT field.

Hey, my name is Franziska Sauerwein and I’m a Software Craftswoman. Puzzles have always amazed me and that’s how I got interested in Computer Science. After completing my degree I worked as a software developer and consultant for three years in Germany. I then moved to London to join Codurance in the summer of 2015.

 

My passions include Test Driven Development, Refactoring, XP techniques and high quality software development. I’m always trying to improve my skills and share knowledge. As an active member of the European Software Craftsmanship community I love to participate in unconferences and organise code retreats, hackathons, coding dojos as well as tech talks. I aim to use my skills and creativity to develop software that is reliable, easy to adapt and doing what it is supposed to do.

 

#2. What would be a lesson you’ve learned so far as practitioners in this field?

I learned that software development is much more about people than about sitting alone at a desk in a room and coding in isolation, which is great! I do enjoy coding at a high quality level but people have always fascinated me.

As developers, we have a profound influence on our society and people’s everyday lives. How we write software and what we write has an impact and with great power comes great responsibility. And how people act when developing software has a great influence on how that software turns out. For example, a team that does not have a good team culture or a lacking relationship with the business will most probably have code quality problems that stem from misunderstandings and lack of communication. And sometimes products are developed just from a developer’s perspective without the user’s needs in mind when the teams are too homogenous. This is something that should definitely be changed.

 

#3. Whom do you admire as a women IT practitioner? Why?

Please share with our audience about great women you think they make a difference in this domain.

There are so many women in IT that I admire. If I had to choose one, I’d point out Rachel Davies, an expert practitioner and coach of eXtreme Programming. If you search online for “Rachel Davies xp” (without quotes) you’ll find a lot of content, including videos of her inspiring talks. Talking to her has given me lots of insights and she keeps on inspiring me.

 

What women in IT inspire you? Let us know in a comment!
Curious to meet Franziska? Join her @ I T.A.K.E Unconference 2016!

Craft: Raising the Bar Starts with Yourself

Apr 23, 2020

After the well-received first online edition, I T.A.K.E. Unconference continues with the 8th edition on the 12th of May 2020, for Crafters.
Following our belief that #LearningNeverStops, we continue to bring together online international speakers and top-notch practitioners.

The theme chosen for the 8th edition is Craft: Raising the Bar Starts by Challenging Yourself and includes sessions on: 

  • design heuristics
  • deliberate practice
  • live coding 
  • real games used as learning tools at work
  • new coding exercises for your craft

How is this edition of I TAKE Unconference special?

  • Focus is placed upon new innovative approaches to deliberate practice, robust code and software development
  • Brings together international speakers and top-notch professionals from Europe, the USA and all over the world
  • The sessions include practical examples with the latest techniques applied in various environments, programming languages & technologies
  • Fast-paced, dynamic learning atmosphere
  • Overcoming travel challenges of this Spring

With a focus on practices and practicing, we invite you to explore together through remote live talks and live coding what software craft actually means: raising the bar.

Want to be part of this not-to-miss event? You are welcome to join our group of supporters and partners and bring innovation one step further. Just let us know and we can make it happen.

Let’s continue sharing knowledge by preserving the feeling of a community of peers who learn together, aiming to raise the bar by challenging oneself.

Leave a Reply