On 29 November 2012, we organized our first public Coding Dojo.
As far as we are concerned, the experience was a success and we most definitely plan to do more of these in a near future.
We had to use a very simple Kata (FizzBuzz) because the dojo was organized during one of our free Agile Mëtteg session, over lunch time. This format is a little constraining because it does not provide enough time for a longer and more interesting kata.
Also, some of the attendees had little knowledge about TDD, whereas some were using TDD on a daily base. Because we did not want to leave anyone behind, we did a session where the attendees would volunteer to come to a computer that was plugged to a projector, make the last breaking test pass and implement the next one. The advantage of this format is that the session was very interactive. The disadvantage is that some, who are more advanced in TDD, might have felt underchallenged.
We probably need to think of a different format for the future, with more pair programming. Something more hands-on and lasting longer.
What do you think ? Would you be ready to spend 3 hours (one afternoon) pair programming katas in a dojo ? If yes, would you be ready to pay a small fee for this kind of session ?
Yesterday, I found myself puzzled by one of Windows 7 weidnesses.
I wanted to reset the credentials used to connect to a wireless network at a customer’s. A user/password had already been entered for the wireless profile and Windows was automatically connecting using these credentials. I wanted to change those credentials.
After a bit of googling, I tried a first solution
- Open Network and Sharing Center
- Open Manage Wireless Networks
- Right click the given wireless network
- Choose Properties
- Select the Security tab
Once on that screen, the proposed solution was to uncheck the Remember my credentials for this connection each time I’m logged on then click Ok, then reopen the screen and recheck the box.
That did not work. Windows kept reconnecting without prompting for credentials, even after rebooting.
As strange as it seems, I could not find a simpler solution that this one.
- Browse to C:\ProgramData\Microsoft\Wlansvc\Profiles\Interfaces\
- Find in the directories named after Guids identifying your NICs the one XML file corresponding to your wireless network profile (also named after a Guid)
- The name of the profile and the SSID of the network are available in the XML file itself
- Backup this file just in case, and remove it from the directory
- Reboot your machine so Windows completely forgets about these credentials (they are apparently cached in memory)
That did the trick for me. When I restarted my machine and tried to reconnect on the wireless network and I was prompted for new credentials.
Hopefully Windows 8 will offer a more straightforward way to do something that simple.
According to Wikipedia, DevOps is
an emerging set of principles, methods and practices for communication, collaboration and integration between software development (application/software engineering) and IT operations (systems administration/infrastructure) professionals.It has developed in response to the emerging understanding of the interdependence and importance of both the development and operations disciplines in meeting an organization’s goal of rapidly producing software products and services.
In this post, I will explain how I have come to realize that I have been doing DevOps for some time without really noticing.
Setting up the stage
I have been working as a consultant within the Diams iQ project team at Dennemeyer for about 4 years now. The product is an Intellectual Property management system. This project is a long running Agile project and with time, our development process has evolved a lot.
We started as a (almost by the book) Scrum project with one team, one product backlog, one sprint backlog and so forth. Then we tried to split one bigger team into two smaller teams to gain some velocity and work in parallel on different areas of the product. It turned out we did not gain so much, therefore we merged the teams back into one. Let’s just say that we have embraced the Agile principle of inspect and adapt, and evolved our process a lot… and there are some very good reasons for that.
One of the specificities of this project is that the product is both used internally by Dennemeyer people, and also made available to Dennemeyer customers. Because of this, the product has been designed to be highly customizable and we had to involve more people into our development process, including internal stakeholders, customer representatives, technical people from Dennemeyer and IT operations at the customers. Continue reading
In this post we learn about four business myths that have been out there for years and are apparently so resilient that most companies still believe they are true.
- Multitasking is critical in a world of infinite demand
- A little bit of anxiety helps us perform better
- Creativity is genetically inherited, and it’s impossible to teach
- The best way to get more work done is to work longer hours
Anyone who has been working in the Agile world for some time should know that these four statements are very wrong. Take a look at the values Agile promotes and you’ll understand.
First, an Agile team that performs well will have people working on one task at a time, finishing it and moving to the next.
Second, an Agile team will reduce the risk of anxiety by welcoming change and delivering frequently, working closely with the customer.
Then, the creativity of an Agile team is improved by the fact that anyone can pick the task one is working on, sometimes pairing, and sharing planning, architectural and design work.
And last, an Agile team will work at a sustainable pace, avoiding extra hours.
Would it be possible that Agile was actually ahead of its time ?