Legacy Code Workshop
|
1.0 |
Moderately |
From a technical manager's perspective, I appreciated the ensemble/mobbing practice. Oftentimes, engineers feel like they need to solve all their problems on their own, but the workshop helped us practice the art of learning from each other, which incidentally also thrusts project progress forward. I enjoyed it. |
I know of several team members who are either already using a test framework or exploring a test framework for their programming language of choice. This is to say, I feel we are better prepared to apply the concepts and techniques to our work. We have motivation and momentum, and have already scheduled a follow-up meeting for our class "graduates" to support each other on their journey of adopting this change. |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Moderately |
It really showed me how to use the tools.
|
|
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
|
It would have been better to identify one person to go through the steps on the projector, rather than jumping around. It was hard to follow if we got behind. |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
it went well but there was a learning curve. would have helped with more prep time. although we were able to write tests for the code and get them to pass. |
get everyone on the same page early on so everyone can follow along. Have one person drive that the class can watch and complete every step together. |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Moderately |
initially a slow start to get everything set up correctly, but in the end felt more confident with legacy code |
difficult to view instructor screen and own screen at the same time. two monitors would be helpful |
Yes |
Show
|
Legacy Code Workshop
|
1.5 |
Much better |
|
|
Yes |
Show
|
TDD Workshop (new code)
|
1.0 |
Much better |
It was emphasized that we should bring our own code. We ended up bringing some legacy code to be tested in TDD ways. We ended up not stubing our implementation enough to get meaningful tests running. However, we got a lot out of it and we know now where to start and what to do. |
|
Yes |
Show
|
TDD Workshop (new code)
|
2.0 |
A little |
|
|
Yes |
Show
|
Legacy Code Workshop
|
2.0 |
Much better |
We were able to Mob work through adding tests to our legacy code. The hands-on practice helped clarify the process. |
We needed to have a better idea on what portions of the code and areas of focus we wanted to dive into prior to starting the training. |
Yes |
Show
|
Legacy Code Workshop
|
2.0 |
Bring it on! |
The workshop was immensely captivating. Proving that it is possible to integrate TDD into our legacy code application was very fulfilling. |
In the afternoon, it could be useful to participate in activities that encourage more engagement. |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Bring it on! |
The workshop was insightful as it showed that even with a chunk of code that threw a lot of linker and build errors in the beginning, it did not take very long to get to the point of the first test passing/failing. The workshop also showed the usefulness of testing as the group noticed the code was doing something other than what they had expected/thought the code was doing, preventing a bug from entering production code! |
N/A |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
We had some setup issues in the beginning which turned out to be great in my opinion because it shows the potential problems we will face and the instructor was there to guide every step of the way. |
|
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
A little |
|
|
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Moderately |
It was quite interesting. I enjoyed learning about how apply TDD to our preexisting codebase (even if we don't follow through), plus the Docker debugging was very useful. |
Devoting the first day to working on Docker, perhaps. |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Much better |
It was very important to see how theory can be applied to our code. Time spent with James to setup to test environment was invaluable. We would have given up if it wasn't for the workshop. |
|
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Bring it on! |
It took a long time to get things working on Windows and I don't understand how it works. |
|
Yes |
Show
|
TDD Workshop (new code)
|
2.0 |
Bring it on! |
|
|
Yes |
Show
|
Legacy Code Workshop
|
2.0 |
Much better |
|
|
Yes |
Show
|
Legacy Code Workshop
|
2.0 |
Moderately |
|
|
Yes |
Show
|
Legacy Code Workshop
|
2.0 |
Moderately |
|
|
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
Integrating TDD framework in legacy code is a bit challenging. Workshop really built up in a way to easy the integration but for large code base its little time taking task. |
NA |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
Step-by-step handholding by James.
He took interest in solving our problem and getting us to the stage where we can run on our own |
Don't change anything
It was good exercise |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Moderately |
Learned to add fake files and modified the Makefile to refer to the fake files.
Learned to create TESTs for what functions we wanted to test. |
It's better for me if we can take exercise in a template project which contains most of the situation. |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Much better |
We watch first driver and instructor working on our function for the first three hour. Then took a break and changed driver.
Before break, it could be built. But when we got the whole file directory, it could not build. It took us a while to continue working on, though we were all use Win10, but the linux various, first driver was using WSL, I was using cygwin, second driver was using SAMBA connected to ubuntu.
When second driver solved all the complain of compiler and ran, it just failed as expectation. Then we found that failed point was a shared memory. So we had a homework to figure it out how to solve this. We didn't have enough time to write any test for our code. |
1. Have same setup on CPPUTEST.
There is a lot of option to setup cpputest environment, having same setup may have less trouble when changing driver. (shared the same server, or all use docker... etc)
2. Give some brief instruction to choose function
Before workshop, we had asked day1 participant about their experience, they gave us some advices to have a easier function. We thought we already choose a simple function, but still took a lot of time to solve independency. |
Yes |
Show
|
TDD Workshop (new code)
|
0.5 |
A little |
understand how to use TDD for real code. |
At first, we might no how to use TDD to our code. when we learned that we can have 2 or 3 groups to discuss instead of only one person operate. |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Much better |
It's a great experience! It's really hard to cut the dependency on legacy code, but the process is interesting. |
Having two sessions on different days, one for cutting the dependency on legacy code, and another one for writing test cases using TDD based on the code from the previous session. |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Much better |
It's really hard to remove dependency on legacy code |
suggest the code scope we could choose |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Bring it on! |
It is awesome. |
It is great and friendly for me to execute the TDD programing on-line. |
Yes |
Show
|
Legacy Code Workshop
|
1.5 |
Bring it on! |
|
|
Yes |
Show
|
Legacy Code Workshop
|
1.5 |
Bring it on! |
|
|
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Bring it on! |
Burkhard is a great person.
We can share our idea to him.
He can give us great feedback.
|
Le |
Yes |
Show
|
TDD Workshop (new code)
|
0.5 |
Much better |
It's good. |
talk more about the concept in vedio during the course. Students are lazy to prestudy.... |
Yes |
Show
|
TDD Workshop (new code)
|
0.5 |
Much better |
very good |
|
Yes |
Show
|
TDD Workshop (new code)
|
0.5 |
A little |
Good |
Know the difficulty of applying TDD. |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Bring it on! |
Good. Got new ideas on how to effectively test static variables and how to utilize logs as a means for testing. |
No Comments |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Bring it on! |
It was really helped to start TDD on our code. |
|
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Moderately |
Working with the trainer was pleasant. We set up a TDD environment and wrote the first test cases for supplied code. |
In our work we use a different environment, cmocka / valgrind.
You could still see how you work with cpputest.
|
Yes |
Show
|
TDD Workshop (new code)
|
2.0 |
Much better |
Clear open discussions, sympathic trainer. Trainings content well fitting |
For new code this concept will bring new ideas and another progress in development. For legacy code it seems quite difficulty to find a value without spending many time. Nevertheless I will try to use ist as much it is possible. |
Yes |
Show
|
TDD Workshop (new code)
|
1.5 |
Bring it on! |
|
|
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
We had a very good start thanks to good preparation in the company, specifically the pre-selection of a good case and GIT being set up properly. This made it much, much easier to switch 'drivers' (the person doing the coding). It was scary to get things working, but it ultimately was not rocket science, it's a step-by-step approach. This was a revelation to me, it seems a very repeatable process, and it's good to be guided through this by someone who has done this before. |
The tooling that helps with generating signatures might be better written in python (or even TDD+built C program?).. we had some trouble getting it working and we had to resort to manually fixing things, which was okay; it's better to understand *what* we are doing and *why* than to have thing generate automagically.
Since it's a learning experience for everyone involved, it might be good to keep sheets with the goals clearly formatted and the things to keep in mind, beforehand. This helps re-activate some knowledge and prime people for the task at hand. Repetition is always good in education. |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Moderately |
As I am new to this company and their source code, I found it little bit hard to follow along the course. Since I had to take in what Burkhard taught, and how the source code was supposed to work. But if I were familiar with the code I think it would have been much easier to follow along. |
|
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Moderately |
The instructor was a very good offering guidance during set-up and building the tests. It was a rally good experience to have after the course. |
I thought it was very good. |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Moderately |
|
|
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Bring it on! |
The course covers concepts that are fundamental for professional developers. TDD is one more tool in our toolbox that should be mastered by any real programmer.This course gave me a solid foundation to effectively apply it in my everyday job. I discovered some subtleties that are hard to capture when we read a book. |
Provide more case studies to help correlate attendees problems with real life examples. |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
Very nice experience working own familiar code and implementing TDD |
Not much in my point view. Good instructor. |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Moderately |
|
|
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
All good, thanks. |
Was fine for me. So no real need to change something ;-) |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Moderately |
Good workshop. Burkhard is very experienced and showed the steps how to run TDD on integrate legacy code; very impressive for me.
On the other hand: our already available cmocka test setup is (from the point of tooling!) very similar; tdd is mostly a different art of doing development.
When I created some GINA interfaces in the past, testcase development started when ~50% if the code was already available (the straight forward stuff) and therefore was mainly used for stability+ranging. |
This workshop depends from the used code example. It should more pointed to the fact, that a code which is known from most attendees is better to use. This should be done at the very beginning of the training, not in between the training days (as usual, there is always more than the training at the training days...), that attendees have a better chance to sync internally before. |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
Together with my colleagues we could start TDD with an existing component and implemented some first test cases. In the beginning, i was a bit skeptic for to get any success. But now we learnt, how to proceed. This is a very good starting knowledge to use TDD for our components. |
Currently i have no idea for improvements. Maybe later with the experience of successfully developed components with TDD. |
Yes |
Show
|
TDD Workshop (new code)
|
0.5 |
Much better |
I listened to how for one group their development of a new product could be switched to using TDD |
|
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Much better |
|
|
Yes |
Show
|
TDD Workshop (new code)
|
2.0 |
Much better |
|
|
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Much better |
|
|
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
A little |
not yet
The workshop will be in June |
not yet
The workshop will be in June |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Bring it on! |
I did not 100% understand what should be prepared for the workshop, so the start was a bit rocky. We quickly identified our dependencies and created stubs. James showed us some common patterns to solve typical testability issues in our code. We finished with a small set of working tests for actual production code on our master branch. |
A clearer TODO list for preparation would have helped me: What exactly do I need, what is optional. |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Much better |
Colleagues have done some initial work beforehand, so lots of the first time consuming blockers have already been solved. Therefore, it was fun to see the progress within the five training hours. |
I don't see anything. |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Much better |
I heard that other teams spent most of the time to make the code testable. But once you understood the principle of exploding fakes, there is no additional benefit to resolve another 50 dependencies. This is just boring work that has to be done.
I attended the workshop where Wilhelm prepared the code for our team. We could focus on the testing itself. We talked about testing patterns, test optimizations, path coverage. This was great. |
I think that each group should spend time to prepare their code before the workshop. Alternatively the selected code must be very very simple. |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Much better |
Hardworking colleage managed to resolve the exhausting include dependencies for us before, so we saved a lot of time and could focus on essentials during course |
There should be some general drawing, cheat sheet, overview of the approach during the workshop and finally to take as reminder. |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Much better |
It was very helpful for getting started to write good tests in our own project. |
A summary of the main learned issues at the end of the workshop would be nice. |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Much better |
Upfront it seems like there is no way to get into a sufficient testing structure. But James guided us with small hints or suggestions through this pain. This gave us another view on testing techniques for refactoring. In the end we identified several aspects to look at i our code. |
- |
Yes |
Show
|
Legacy Code Workshop
|
1.5 |
Much better |
|
Please quote me anonymous. |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Moderately |
|
|
Yes |
Show
|
Legacy Code Workshop
|
2.0 |
Bring it on! |
I learned a new way to developp ;) |
In our case, having more time between theorical and practical part could help...as we're very busy, it was difficult to provide relevant start point. |
Yes |
Show
|
TDD Workshop (new code)
|
1.0 |
Bring it on! |
Just trying to regenerate my certificate |
Just trying to regenerate my certificate |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
A little |
The workshop showed a few practical techniques to resolve code dependencies step by step, which was very instructive.
Still, I didn't like the workshop, because a discussion was constantly started that was hardly possible to follow for inexperienced in this subject. |
Smaller groups or proper moderation. |
No |
Show
|
TDD Workshop (new code)
|
2.0 |
Moderately |
I really enjoyed working with the environment that was provided in the workshop. It made testing the code changes much more fun and straightforward. |
|
Yes |
Show
|
TDD Workshop (new code)
|
1.5 |
Bring it on! |
Really enjoyed the course and felt that I've learnt so much; it will change the way I write code from now on. The course material and practical work were balanced well. James has a wealth of knowledge on the subject and it felt like we were learning from the best. |
n/a |
Yes |
Show
|
TDD Workshop (new code)
|
0.5 |
Much better |
. |
. |
Yes |
Show
|
TDD Workshop (new code)
|
2.0 |
Moderately |
It was a good introduction to TDD concepts. I was so far very unfamiliar with TDD. |
- |
Yes |
Show
|
TDD Workshop (new code)
|
1.5 |
Bring it on! |
Learned a new and more confident way of approaching writing code |
|
Yes |
Show
|
TDD Workshop (new code)
|
2.0 |
Bring it on! |
It was great, and mind blowing. I just get start on TDD and my mind still not get used to it. The online exercise is really helpful |
More feedback of exercise and some peer programming will be really helpful. |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
A little |
It was a bit difficult to follow. Perhaps this is the nature of the beast, but perhaps a friendlier example would have helped drive the point home better. The first time you see something, you'll probably only get about 10-15% of the concepts communicated. |
A friendlier example may have helped. |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Bring it on! |
We covered legacy code in the TDD class, but perhaps this workshop is a different thing. |
|
Yes |
Show
|
TDD Workshop (new code)
|
2.0 |
Moderately |
|
|
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Much better |
Learnt a bit about how to apply the techniques to existing codebase. |
|
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
I think it was really interesting, but it was a shame we spent so much time with the framework setup in windows. |
Maybe, it could be a good idea to notify the team one week before the course, saying the should prepare a PC with some tools and code. For instance, CppUTest in window with Cywing, cmake, etc. |
Yes |
Show
|
Legacy Code Workshop
|
1.5 |
Much better |
|
|
Yes |
Show
|
TDD Workshop (new code)
|
2.0 |
A little |
It was nice in general. I only have one note: the 3rd day we spent much time trying to test our legacy code. I saw that it is incredibly hard to resolve the dependencies and I feel that solving this would have been nice. I could not also pay much attention when James used a script to generate fakes. If you wish you can contact to me by e-mail. |
I think I will need some time to go over all this workshop again to see if I am able to use the tools provided. The TDD concept is clear to me, but I do not know yet about the exploding fakes and when you used a script to generate I do not know what exactly. It is not easy to try to apply the concepts as the explanation continues. If you wish you can contact to me by e-mail. |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Bring it on! |
Difficult and frustrating at the beginning, as it took several hours to set up the framework. Afterwards, very satisfying and instructive. |
Setting up the framework beforehand |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Much better |
|
It would be better to have the framework installed before the course, avoiding to waste time trying to starting it. |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
A little |
Poor. There was only one person trying to compile the code of our own but there were technical problems |
Maybe the tool could have been asked to be installed in advance so maybe a week earlier we could have try to be ready for getting as much as possible from the workshop. |
No |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
It has been a bit frustrating not being completely possible to test our code but wee have understood the idea. |
If we were told a week earlier what to install for the workshop it would have been better. |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
A little |
|
We had problems to set up the test harness, so I think it would be nice to have it installed in a VM. It would also be nice to have a guide to install this environment prior to the course. |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
A little |
|
|
No |
Show
|
Legacy Code Workshop
|
1.0 |
Moderately |
Half of the day was spent with one person's code being demo-ed. This took up too much time and I would have benefited more from a full day of trying it on my own and having the instructor available for questions. I spent most of the morning just getting the environment set up and getting a blank test to work, which would have likely gone faster if the instructor was able to answer my questions. We only had 2.5 hours to work on this (since there was more lecture after lunch). Not enough time of individual work to be called a workshop. |
Provide a shorter demo in the morning. Expect students to spend time getting the environment set up. I needed much more hands-on experience than I was able to do. |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Bring it on! |
The beginning of the day went through a classmate's project, but if I'm being honest, the classmate knew what was happening, how to address it, and was plugging away at it without much explanation. At a high level, I sort of got what he was doing, but looking from an application viewpoint, I didn't feel like I could take what he was doing as a how-to to help for when I might need to do that on my projects. The rest of the day was fine, as I was implementing my own testing framework items, and we already had a test hardness, so we made tests to handle the refactor we needed to do. |
Maybe the instructor could walk through a dedicated legacy code example in the morning, that hopefully can provide a how-to and general guidance principles. |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
Was a little confusing at times as I was distracted by other concerns, but overall I found it useful in understanding mocks (they are used internally here, but I hadnt written one before). |
Maybe sub groups rather than everyone working on the same code? |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Much better |
|
|
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
I wasn't completely sure at first about the workshop actually, because our software is already set-up to run tests on PC, so I wasn't sure of the benefits, and I wasn't sure what code to use.
But in the end, I think it was really useful to see how we can set-up a test on a very limited amount of code using the exploding fake script, and how we can get to test the code with very limited changes to the existing code (for instance by catching the log messages). |
|
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
I think the legacy code was not very useful in overall. We did two sessions, one in the morning and another short one in the afternoon. The first one was ok, but I have to say the people did not collaborate much, they did not have the correct mood/energy. The second session was even worst (lower energy/mood) and we indeed found problems with our code but I did not see any hand-on solutions, only suggestions. |
I think the instructor should "read" the room and try to lift the energy/mood of the people, so more people can collaborate and work together rather than being unprofessional and talk about politics or whatever. To be fair this should be done by the people organizing the workshop but this did not happen in our situation and the trainer will be the one blamed for it! |
No |
Show
|
Legacy Code Workshop
|
0.5 |
Much better |
It appears that unit testing legacy code can be very difficult without restructuring code. But I believe that with shown techniques it can be done. |
Not sure, maybe cyber-dojo exercise for it... |
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Bring it on! |
Good discussion on approach. Was interested in the stub generation tool and fake framework - very neat |
|
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
It was quite interesting and provides lots of ideas for how to handle legacy code |
It would benefits for some more real case examples. |
Yes |
Show
|
Legacy Code Workshop
|
2.0 |
Much better |
I didn't know anything about the workshop content, so everything was new to me.
It has been fairly difficult to follow all the details. But summarily I caught a lot of new ideas on designing approach that I really want to pratic them. |
I would like more pairing exescises |
Yes |
Show
|
Legacy Code Workshop
|
0.5 |
Much better |
was interesting, it get to the point about what port of the production code has to be refactored, how, why |
Having synthetic/artificial examples of legacy code |
Yes |
Show
|
Legacy Code Workshop
|
2.0 |
Moderately |
I struggled a bit due to missing some of the concepts being used, aside from that it was a good workshop |
sharing Pre requirements |
Yes |
Show
|
TDD Workshop (new code)
|
0.5 |
Much better |
It was good. New techniques related to refactoring and impact of simple desciplines was seen. It was good to see how to handle business challenges when dealing with legacy code. |
It's great as it is right now.. |
Yes |
Show
|
Legacy Code Workshop
|
2.0 |
Much better |
|
|
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
Fun and informative, but a bit too slow paced for me during mob programming. |
|
Yes |
Show
|
Legacy Code Workshop
|
1.0 |
Much better |
Very positive. |
|
Yes |
Show
|