Pains in team communication and the legacy code today – we asked Hiroshi Shibata, Ruby expert and CPO (Chief Productivity Officer) @ GMO Pepabo, Inc. to answer a few questions concerning problems unique for the IT branch.

Hiroshi Shibata, an expert on Ruby language

Fot. Twitter.

Hiroshi Shibata is a member of the Ruby language core team. He is an administrator of ruby-lang.org and supports to develop the environment of Ruby language. He is also Chief Engineer in GMO Pepabo, Inc. His most interest things are “Productivity”. He believes, there’s business value in fun. His main concerns are how to solve pains like legacy code, slow tests and communication conflicts in team members. He was one of the speakers of Code Europe, one of the biggest IT conferences in Poland, that took place on 23rd of May in Wroclaw, Hala Stulecia

Małgorzata Burnecka: Hiroshi, I focused mainly on two points in your bio: legacy code and communication conflicts between team members. Starting with the latter one – you are the leader or co-leader in many huge projects. What are the 3 main pains in communication that you recognize?

Hiroshi Shibata: Firstly, discussions across departments including a back office. Secondly, discrepancies in opinion and priority order with product owners/executives.
And thirdly, bikeshed about coding style, development environment like the editor, language selection, etc.

Are there problems in communication that you diagnose as unique for the IT teams?

Yes. IT industrial need to build „software” to ship to market. But „software” is not an object in the real world. We have to work very hard to understand that there is no object.

What does „legacy code” mean today – how old is it today: counting in months, years or decades? And how fast is it changing?

Michael Feathers said „legacy code so concisely as, code without tests” in „Working Effectively with Legacy Code”. I partly agreed this definition. I think code written in yesterday is already „legacy code.” Because of software industry trends like market requirements, computing environments included cloud mobile/frontend changes very quickly. We should learn it changes every day for customer satisfaction.

What are the origins of the main problems you face with legacy code? Are they more connected to old software solutions, not maintained for too long? Or – is it about the hardware on which it’s on?

It origins is no strategy of IT governance. We need to take care for our customer against security incident. The legacy code causes security problems because it worked on the legacy operating system, language, middleware.

What is the main task of a programmer today: optimization of existing solutions to make them faster, more efficient etc., or: looking for innovations and exploring undiscovered fields?

Programmers main task are „Code Reading”. Code reading is needed for Optimiztion, Customization, Implementation today. We have a lot of code from GitHub with OSS license. And a big player like Microsoft, Google ship their code into GitHub. We should learn their knowledge as first.

Code Europe Wrocław

Code Europe took place in May in Hala Stulecia and was one of the biggest IT conferences in Poland. Fot. Michał Sawicz

Code Europe Wrocław

Fot. Michał Sawicz