Here is (and also below) a short lecture (In Hebrew) I gave during the Agile Practitioners 2012 conference.
The lecture summarizes the lessons we learned at PicScout (also here) while introducing more and more automation to our QA team.
On our tenth Software Craftsmanship meeting I was very excited to host Corey Haines.
Corey flew to Israel on Tuesday just to conduct 2 code retreats on Wednesday and Thursday so obviously he was a bit tired when we gathered for the meeting. Corey gave a short talk, concentrating on reminding us what is the value for the business that we should provide.
Here it is:
After the talk we broke into pairs in order to hand interpreter a Piet language. Piet is a stack based language whose programs are bitmaps that look like an abstract art. In our exercise we needed...
I am very happy to announce a few very interesting events, coming at the end of this month:
Code Retreat with Corey Haines:
Corey Haines is a Journeyman who went for an year of pair-programming tour.Corey is highly involved with the Software Craftsmanship movement and is a frequent speaker on various conferences on the matters of code quality, skills and professionalism.
We will host 2 code retreats events on January the 25th and January the 26th (These are the same events, so please register only to one of them).The details and the registration can be found here: Code Retreat - Take I,...
Our ninth #SCISR meeting took place on this monday.
I really enjoyed the mingling, the discussions and the energy in the air. This time we had an open panel with Ran Tavory, Elad Sofer and Lior Schejter talking about their experiences in Software Development. I will post a detailed post about the meeting, but for now you can find below the recording of the session.
Software Craftsmanship in Israel Group Meeting #9 (Hebrew) by urilavi
It's hard to become a professional. It's even harder to become a professional Software Engineer.
Last week, during a small management conference I bumped into an old friend of mine, who I didn't see for a couple of years. Being a leader of a software engineering group, he was frustrated and worried:
"I have a group of 20 people, working hard to meet harsh deadlines. The project has just started, but most of the software engineers are already not pleased. There are junior developers that consider themselves as senior developers, there are senior developers that consider themselves as team leaders and...
Here is a short presentation I did a while ago on a Code Review process.
I am sure, there are a lot of different ways to do code review, but the following served me well in the past.
One important note to bare in mind is that a Code Review cannot take more than a few hours.
People get tired easily; It's difficult to read somebody else's logic (code) and even more: to understand and to pinpoint the problems.
Therefore the Code Review process should be effective and highly cohesive as much as possible; I like the following metrics:
Summary: Ask a Software Engineer...
For our second Software Craftsmanship Coding Dojo, I have prepared a "Short Roman Numeral" Kata.
In essence, a Short Roman Numeral is a number between 0 to 3999 that has a ToString() method which returns its roman presentation.
The rules of roman presentation construction can be found here.
After the meeting, I took some time in order to record the Code Kata.
As you probably know it is extremely difficult to produce a well synchronized recording.
Hence, after a few sleepless nights I have finished the recording with great satisfaction, only to discover (thank you my "dear" friend) that I made a typo during...
Wow, this month was a tough one: Lots of new opportunities to explore, presentations and lectures to give and of course the day to day work to deliver :).
You have probably seen several blogs and summaries of our first Software Craftsmanship group meeting, so I won't go into details.
Below are the recorded session along with he presentation slides.
I have shorten the session and extracted some key notes that were discussed:
Why Software Craftsmanship is needed?
What is Software Craftsmanship?
The skeleton of our Software Craftsmanship Group meetings
Readable Code - Newspaper Paradigm
Code Kata - Prime Factors Kata written in TDD style (C#)
I am pleased to announce that we are planning to have our fist “Software Craftsmanship in Israel” group meeting on Wednesday, May 26th. Who should attend?Everybody who cares about Software Development as a Professional.You are welcome to pass this announcement onto anyone you think may be interested. Does the meeting require any knowledge of a specific technology?NO. NONE. ZIPPO. The sole purpose of “Software Craftsmanship” is to improve our skills in Software Engineering and Development and it doesn’t require any particular technological knowledge.The examples, tutorials and hands-on exercises may be done using .NET, Java, Python, Ruby and whatever technology you would...
One of the key aspects of a Software Craftsmanship is constant practice.
Kata (from Martial Arts) is one form of such practice. The notion of a Code Kata was first introduced by Dave Thomas and can be viewed as:
Practice of the same methods, solutions and activities to a perfection.
Practice of the same problem, tackling it each time from a different angle or with a different solution.
Solving a known problem multiple times utilizing the same methods, enhances the understanding of the specific steps; It especially enhances the understanding of unit tests, refactoring steps or "Design" approaches. Moreover, striving to do better...