Displaying activities 26 - 50 of 61 in total
August 22, 2018
Team Barcelona Duo (Exercism)  — at August 22, 2018 22:09 UTC
Deciphering Rails and a Slack Tutorial
We've spent the past two days deciphering Rails mailers documentation so we could fix the bug that has been assigned to us. We could understand them, but we were struggle to apply that knowledge to the codebase. We couldn't figure out what part of the mysterious configurations interacted with the database. At our meeting with Jeremy he gave us the most amazing walk-through of an important section of the code. His explanation of MVC, routes and the database included analogies featuring buildings, t-shirts, hospitals and haircuts! It was so visual that we could envision the codebase in a way that makes sense to us.
We would have been happy had the conversation ended there, as we had learned a lot, but there was more. We were assigned our very own feature to develop for the platform!! We are so thrilled and excited about this new challenge.
Reflections on mentors
We talk a lot about how happy we are with our coaches and mentors. We get a lot of support and are forming professional relationships and friendships that will last beyond RGSoC. In a more general sense we are lucky to be surrounded by people who know how to mentor and how to coach. Today we are going to talk a bit about our experience being mentored.
A good mentor meets you where you are and gives you guidance and support in a way that makes sense to you. Today we experienced that with Jeremy. He told us enough to get us unstuck, and explained things in a way that made sense to us. And he didn't tell us the answer, so we will be able to feel the thrill of resolving the issue. He impressed us, again, with his ability to teach through Slack.
A good mentor also knows when to push someone. We got a bit of that too. He advised us to dive into the Ruby track of Exercism and take advantage of the resources available such as the walk-through Katrina made on TDD and his getting started video. He also encouraged to start tackling problems not only through pair programming, but also individually, to get a better sense of our individual strengths and weaknesses.
Perhaps the most important thing, he (strongly) advised us to dive into the codebase and break things to see how they work. A few weeks ago we made a few tentative experiments changing text and headers. At the time we didn't know how to run tests; now we do. Plus, with our knowledge of git we know we can always revert any changes we make. We are looking forward to breaking things tomorrow.
- Getting tips from our supervisor Sophia
- Listening to another great podcast by our mentor Katrina Owens
August 21, 2018
Team Barcelona Duo (Exercism)  — at August 21, 2018 21:21 UTC
We spent the day learning about Rails routing and controllers. We came to the conclusion that if you can't figure out what something is, ask yourself 'Could it be a gem?' It was a good lesson learned. We focused on separate learning tasks today and tomorrow we will teach each other, since we learn best by teaching.
Today we reflected a bit on how far we have come. It wasn't too long ago that we thought that looking up details about a language or framework was 'cheating', because real programmers 'knew' all the answers. When we accepted that it was okay, we sought answers in Stack Overflow and other online Q&A sites. Now, we have shifted towards reading the documentation. It is a small, but important shift in our relationship to programming and sources of information.
- Amalia surprised Lori with a baby drone. Flying lessons start on Friday.
- The local festival has ended so Amalia can finally get a full night's rest.
- Lori is going to pair program with Salva (a ThoughtWorker) tomorrow.
- Amalia surprised Lori with a baby drone. Flying lessons start on Friday.
August 20, 2018
Team Barcelona Duo (Exercism)  — at August 20, 2018 14:19 UTC
The One Thing We Know for Sure: We Love Our Job
We hit a milestone today: we faced an issue that we didn't know how to solve and we declined immediate intervention from our mentors and coaches. We decided we wanted to struggle with it a bit, because the joy comes from the struggle. It is a milestone because we believe we can figure it out or at least take steps towards solving it. We started by walking through the codebase to find the area that we think we will need to change to fix the problem. We didn't figure out how to solve it, but we were able to break it down into smaller parts and sketch out a possible solution. We next identified our technical shortcomings. That is, what would we need to know how to resolve the issue. We realised that we need to know how Rails mailers work and how to trace links in Haml files. Knowing this, we mapped out a plan to learn these skills and scheduled a meeting with Klaus, one of our coaches, for the end of the day in case we ran into anything that we didn't understand. We felt confident enough to decline (postpone?) intervention from our mentor Jeremy as we wanted to struggle a bit before we got any help.
Rails Girls promised us that we would have the best summer ever, and it's true. We struggle with git and code and issues. We have missed beach days, parties and Wimbledon. But we have hardly noticed because we have been so immersed in living out our dreams of being software developers. It's hard to believe that it will end, but we are approaching the last month of RGSoC. We want to ensure that we get the most out of our remaining time here so we have scheduled a meetings Jeremy, one of our mentors, to plan the last 5 weeks. He supports our desire to grow and learn . Together we will develop a plan that will provide us with opportunities to learn and grow through a combination of bug fixes and and by creating a feature.
We are also talking with our coaches as we try and figure out our next steps. David offered advice to continue working on Exercism (of course!) and possibly other open source projects. Maikha encouraged us to think of what we want and work towards making it happen.
August 16, 2018
Team Barcelona Duo (Exercism)  — at August 16, 2018 15:16 UTC
During our daily stand up we reviewed what we learned about testing so far, and identified concepts that we need to understand in order to write good tests. Amalia realized that she still lacks a good understanding of classes, and the four pillars of object-oriented programming: abstraction, encapsulation, polymorphism, and inheritance. A fundamental understanding of classes and inheritance is necessary to understand how to properly model and write tests. She spent the day reviewing classes and getting a better understanding of OOP.
Lori spent the day yesterday working through a practice problem that our coach Javi created for us so that we can learn about classes, object-oriented modeling, and testing. She continued to work on this problem set, along with some ruby Koans. She also had a session with Javi to review her solution. Overall, the past two days have been filled with learning a lot of new concepts.
In terms of output, the last two days have been slow, but in terms of learning, they have been important milestones. A week ago we did not understand what object-oriented design was. The concept is still not 100% clear, but we know that it's very important in order to properly model our programs, created classes, and write sound tests for our code. The other really important thing is that we are learning how to identify good sources for learning. While we won't be able to cover everything during the summer, we are creating a list of concepts we will need to understand, and we are understanding why we need to learn these concepts and how they fit in the development process. This will give us a great base to continue our learning.
August 14, 2018
Team Barcelona Duo (Exercism)  — at August 14, 2018 15:14 UTC
During our standup this morning, we shared with our coach Maikha what we did to finally understand our Git workflow. She suggested that it would be great to give a short lightning talk on how to contribute to an open source project so that other people at Thoughtworks can learn about Exercism, and from what we are doing this summer. We also discussed unit testing and TDD with Maikha. The rest of the day was spent learning about different types of expectation statements and practicing writing unit tests.
Testing and TDD are quite large topics, but we are slowly understanding more fragments and different parts are starting to make sense. It's empowering to realize that through practice and patience we can learn anything, including testing and TDD. It's not something that is impossible to master. Getting comfortable with not understanding something on the first day has been an incredible lesson. Each day we have the opportunity to add nuance and layers to our understanding. Eventually, after several attempts and many failures, things click and make sense. Trusting that things will one day make sense with enough practice and patience is a lesson that we will carry with us for the rest of our careers.
August 13, 2018
Team Barcelona Duo (Exercism)  — at August 13, 2018 17:20 UTC
We started our day with our daily standup. We used this time to review what we learned about testing and to discuss what we wanted to accomplish during the day. We realized that while we understood the process to create a PR, we still did not understand how to sync our fork and local copy with the Exercism upstream. We decided to spend some time trying to figure this out so that moving forward we have a clear idea of our git workflow.
One thing that was helpful was to draw out the pieces of the problem that we do understand. We saw our coach Maikha do this last week, and found that it is a very useful way to break a problem down into smaller pieces so that you can see the gaps. We did some research on stack overflow and once we had a better understanding of the problem we were having with our git workflow, we reviewed our thought process with our mentor Jeremy. The session with Jeremy was super helpful. He walked us through two ways of syncing the local repo and our fork with the upstream and explained when you would use each scenario.
After the session with Jeremy we were able to put what we learned into practice and finished up the remaining tasks that were pending on issue # 3966.
We also spent some time installing some libraries we need in order to analyze the mentor comments. Our goal for this week is to start cleaning up the data so that we can begin the analysis.
The highlight of the day happened at the end of the day when Lori and I explained to each other what we learned about the git process. By explaining the process to one another, we realized that we understood each piece of our git workflow. It is so rewarding to see how the fragments of what we learn are finally clicking and making sense.
August 10, 2018
Team Barcelona Duo (Exercism)  — at August 10, 2018 21:25 UTC
Ramping up on testing
Today we spent the day working through an exercise created by our coach Javi. The idea is to design a class with data and method names and create tests for it before writing the actual code. This is the basis of test driven development. The idea being that you should work through the logic before you start coding to ensure that you don't create code for best case scenarios ignoring cases that are not covered by the logic of your code.
We complemented our study time working through some exercises on Exercism and looking at the tests in the Exercism code base. Next week we will try to implement what we have learned.
August 09, 2018
Team Barcelona Duo (Exercism)  — at August 9, 2018 14:30 UTC
Yesterday we finished our first Sprint, so this morning we had a retrospective followed by a team meeting to plan our next one. We were joined by our coaches Klaus and David. We all agreed that certain things are going really well. For one, we've mastered communication, conflict can lead to growth as long as a safe space has been created where everyone feels they can speak honestly and openly about their feelings. Second, while we didn't achieve as much as we expected in terms of closing issues, we learned much more than we expected. Third, to accomplish more we need to better size each issue and better to prepare for our kickoff.
We ended our retro with some action items. First, we will spend more time preparing for our kickoff. That is, we want to explore each issue we have been assigned, identify any questions or confusion about it which will better enable us to better understand the scope and depth of each issue and schedule any training sessions with our coaches. We will also be able to review our proposed solution with our mentors before we began our sprint. Also, to improve our pair programming we will shadow our coaches and see how they pair program to get a better view of how different teams function. Finally, we decided that we need to better access how many issues we can reasonably take on during a sprint. For our first sprint we chose three issues to work on and we were not able to complete them. For our next sprint, since it is over a shorter week (we have a mid-week holiday in Spain) we will be more pragmatic.
August 08, 2018
Team Barcelona Duo (Exercism)  — at August 8, 2018 21:43 UTC
Refactoring code and processes
Today we read a lot of code. Since our sprint was ending today we spent a part of the morning preparing for our next issue. It is an exciting one since it will allow us to get our heads around writing tests. To prepare we had a coaching session on writing tests and TDD philosophy with our coach Nacho. We also managed to go through parts of the codebase with him. Our questions are becoming more precise and direct as we can now identify what we don't understand.
Mid-morning we got a kind message from Jeremy telling us that our PR had failed some integration tests so we spent some time reviewing our work and following the trail to find our errors. It was a great day's work, not measure in tasks accomplished but in the growth of our understanding. Tomorrow will be even more exciting as our delay in updating the PR has led to a merge conflict. It's hard to believe that this is inspiring us. While we know it will be a challenge, we will learn so much in the process.
Emily introduced us to a set of online exercises for practicing Ruby. We've decided on a three-prong approach: pair programming, working alone as homework and code review of each other's work the next day. We are going to experiment with this format over the next two weeks and assess it's effectiveness.
We learned some important lessons today. One, the way we have set up our workflow is not the best way to do it. Back then, we didn't understand enough about Git and GitHub for teams so we forked then cloned then pushed our changes to our GitHub accounts and then made a pull requests. In other words, we had created a very convoluted workflow which created more work for us and a more than a bit of confusion as we were always commits ahead and behind the upstream. While cherry-picking is fixes the problem (and adds a bit of git playtime), there are better ways.
Finally, we took a long walk at the end of the day to check-in with each other. We realized that each of us assimilates information in different manners and this was producing a bit of confusion for both of us when we had our coaching sessions. After identifying that we have different learning styles we created a plan that will enable both of us to benefit fully from our sessions.
Highlights of the day
git checkout -b experimentsEnough said.
- Elena (a ThoughtWorker not affiliated with our project) agreeing to moderate our Retrospective
- Being comfortable asking for help from other members of the Exercism team
- Realizing that everyday we feel more and more like we are a part of the Exercism team
August 07, 2018
Team Barcelona Duo (Exercism)  — at August 7, 2018 22:11 UTC
It takes a village to make a developer
Reflections on our first month
We used to think that if you hadn't written your first line of code before puberty you could never become a developer. Now we know that through hard work, curiosity, a strong desire to learn and the right support team, anyone can learn the skills needed to become a developer.
We have been very fortunate on our coding journey to have a wonderful support team. There are our local coaches (David, Emily, Javi, Jorge, Klaus, Miakha, and Nacho); there are our mentors (Katrina and Jeremy) and the other members of the Exercism team (Carlos and Nicole); our host company ThoughtWorks and all of the ThoughtWorkers who stop by our workstation each day with advice, jokes and words of encouragement. Each have been an integral part in our development and growth over the past month. None of this would have been possible without our village of coaches, mentors and the amazing people that make up the ThoughWorks community. Words seem insufficient to express our gratitude and joy at having each one of you on this journey with us.
- Waking up to an awesome message from our mentor Katrina ❤️
- Slack lessons from our mentor Jeremy (a rock star teacher ❤️)
- Learning how to add commits to an existing PR
- Learning the difference between running tests in
:chromeand later integrating it into our bug fixing
- Flying a drone at the Lunch and Learn
August 06, 2018
Team Barcelona Duo (Exercism)  — at August 6, 2018 19:44 UTC
Pair Programming Rocks!!
Per our norm we started the morning with our daily stand-up updating our coaches on the progress we made on Friday and sharing with them our plans for the day. After, we had a tutoring session with our coach Emily and she gave us an overview of TDD and then left us to read the codebase to try and understand the tests they had written. Even with our limited knowledge of Rails testing, we were astonished that the code was starting to make sense!
After an hour we moved on to our second task of the day, finishing up one of the issues assigned to us. We only have two more days in our sprint, so we wanted to finish this issue and move on to the more complicated one that follows. Then it happened. When we tried to push our changes we got the dreaded merge conflict. Our palms began to sweat and we thought 'Oh no, not again.' But then we stopped, took a deep breath and dived in. We managed (with a hint from our coach Klaus and the help of the internet) to solve the problems and make the PR . It was the first time that we had solved a major problem on our own.
Before the summer we thought that pair programming meant one person codes while the other looks over her shoulder, silently judging the quality of her code. Now we know better. The beauty of pair programming is that you think out loud while trying to write code. It forces one to form an idea and to articulate it to another person, get instant feedback and suggestions. In the end, the code is better and you have learned from each other, allowing both of you to become better programmers in the process.
Best thing that happened today
- We used
grepto search through the codebase to find some text.
- We solved a problem
- We taught some ThoughtWorkers the Barcelona Duo hand shake
- We used
August 03, 2018
Team Barcelona Duo (Exercism)  — at August 3, 2018 19:31 UTC
You think you understand git, until you don’t
After our stand up we met with our coach David to review git. We had several problems yesterday trying to merge some changes that we made. After the lesson that we had with David, the git process became clearer. We now have a better understanding of working with git and GitHub, and how to create branches for every feature we create. We also understand the problems that can arise when commiting to master, and how we need to
git pull --rebase origin masterbefore we push our changes.
Our coaches reassured us that git and GitHub take time to master, and that there will be more issues that we run into during our career. Our favorite quote of the day came from our coach Javi, who told us, "you think you understand git, until you don't". ☺️
If anybody is struggling with understanding git branching, our coach Javi shared this great tutorial that is very useful.
After our git lesson, we reviewed the other issues that we have in our backlog for the current sprint. David helped think about how we need to approach each issue, and also helped us plan out lessons that we will need in order to complete the issues.
In the afternoon, we had a very thorough lesson from our mentor Jeremy on rebasing, grep, and the general workflow that we need to follow for our PRs. Jeremy is a great teacher. He gave a fantastic visual analogy to think about rebasing as a Jenga tower. This was very helpful, and we were very grateful that he took the time to make sure we are learning as much as possible.
This has been a great week. We are looking forward to implementing what we learned today next week.
August 02, 2018
Team Barcelona Duo (Exercism)  — at August 2, 2018 18:10 UTC
We wanted to thank our coach Maikha and our hosting company Thoughtworks for loaning a mac laptop to Lori. 💻The codebase was extremely difficult to install on her windows computer and after several frustrating attempts, we decided to switch to a mac. Since the laptop didn't have anything installed, we spent the morning pairing and getting Lori's environment set up. The change to a mac took some time to get used to, but pairing on the set up was very helpful. In the afternoon our coach David helped Lori install the codebase. It was a huge relief to finally have the codebase on both of our machines.
We finished off the afternoon working on issue #3966 and ran into some issues with Git. We had a session with our coach David and Emily to resolve the issues and decided to continue tomorrow. Tomorrow will be a fresh new start, and we are looking forward to understanding more of the Git process.
August 01, 2018
Team Barcelona Duo (Exercism)  — at August 1, 2018 20:21 UTC
Our sprint begins
We started the day off with a breakfast meeting with our coach Emily. After spending all of last night trying to set up the codebase on her machine, Lori was ready to give up. Thanks to Emily’s encouragement, we decided to give it one more try tomorrow. Hopefully with David’s help we will manage to get the codebase on Lori's machine working.
We then set up our working environment so that we could properly pair program. Our first experience with pair programming was very positive. Pairing with somebody is a great way to share knowledge and work through issues. We learned so much from each other.
At some point, we were very stuck and could not merge the changes that we made. We tried several things, and after several attempts we decided to ask for help. We then had an awesome session on GIT with our coach Ignacio and were able to rebase our commits and clean up our directory.
We learned the following new commands.
git pull -r
git checkout - b <branch_name>
We wish you could have seen the amazement in our eyes when Ignacio mentioned
In the afternoon we had a wonderful session with our coach David. We reviewed the git commands we learned in the morning in order to make sure we understood the process. David has also been teaching us how to write clear commit messages so that our issues can later be referenced by others. Writing proper commit messages might seem like a small detail, but when many people are working on a codebase, things need to be properly documented.
We ended the day with an amazing Rails lesson from our coach Klaus. He has such a gentle way of asking questions to guide the learning process. By going over different elements in the codebase we learned how Rails apps are constructed. One of our favorite concepts that we learned was abstraction. We were very glad that Klaus taught us this concept because it helped clarify for example, how controllers, models and the database interact with one another.
We knew that we were going to learn a lot this summer, but it is turning out to be one of the best summers of our lives. We are so lucky to be surrounded and supported by such an amazing group of people. Thank you so much to all of you! 💗
July 31, 2018
Team Barcelona Duo (Exercism)  — at July 31, 2018 16:15 UTC
We started the morning off by merging some mentor bios and messaging a few mentors that we could not merge because of errors that needed to be fixed. Lori started installing the codebase on Ubuntu for Windows, but ran into quite a few errors. Amalia started to look at issue #3966 and fixed a few of the headings that were not in sentence case. This issue was great for getting acquainted with the structure of the codebase.
After lunch, we had a session with Maikha, to review the different aspects of Agile methodologies: such as retrospectives, sprints, time boxing, sizing, epics, stories. We also learned about SCRUM and how it differs from Agile. After our session, we groomed our backlog, prioritized the issues, and set up our first sprint. We will begin our first sprint tomorrow. We ended the day with our first pair programming session and we also had a call with our supervisor Sophia.
Fun but not coding related:
Our coach Maikha is full of wisdom. You don't learn as much from your success as you do from failure. Sometimes failure can be great because it can provide valuable data and lessons to learn from. It's great to apply both in coding and in life.
July 30, 2018
Team Barcelona Duo (Exercism)  — at July 30, 2018 16:34 UTC
Lori is back from Euro Python. It was great to have the team reunited again. After our stand-up, we spent time looking through issues we felt we could contribute to. We then had a meeting with Jeremy and Nicole, our mentors from Exercism and our coaches in order to set goals and align priorities. The meeting was extremely helpful. We were able to come up with a list of issues that we can help resolve and we also discussed having a kickoff for each issue so that we let Jeremy know the methodology we will use to solve the problem and make sure we are all on the same page. We added all of the issues to our backlog on trello and spent the afternoon with David, one of our coaches looking through each of the issues and sizing them. In the end we decided to start with this issue because we think it will be a good way to get acquainted with all of the views in the codebase. The next step is to learn how to set up our issues into sprints, and begin working. It should be a very fun week.
We realized that Rails is not made for Windows. It has been frustrating trying to install the codebase in a Windows enviroment. In the end, we will use a virtual machine and hopefully the codebase will be installed on both of our machines soon. This should be a very good week.
July 27, 2018
Team Barcelona Duo (Exercism)  — at July 27, 2018 22:00 UTC
I downloaded the exercism codebase and set it up. This time it took 20 minutes instead of two days, which I am super proud of. Even though it's a small thing, I can see that I have progressed because I was able to understand some of the problems that I was facing and solve them. I then spent the day reviewing more rails and trying to understand some of the exercism codebase. While there is a lot of things and files that I do not understand in the codebase, I was able to understand a few files, and I was able to see what the pieces did. This was massive progress because the last time I looked at the codebase it was completely alien to me. In the afternoon my head was going to explode from cramming rails so I started to read through the GitHub issues and the questions mentors had on slack. I tried to see if there were features we could develop. I ended the day with Emily explaining what an integration pipe line looks like. She also showed me how she does TDD in Python. Integration pipelines look complicated to set up, but conceptually they are awesome.
Today was the last day of EuroPython. My two favorite talks of the day was one on automating testing with GitHub and Travis and writing error messages. The testing talk was timely as our project uses these technologies and I was able to get more insight how one can integrate automated testing in the development process.
The talk on error messages surprised me in that what seems like common sense now, hadn't occurred to me before: a programmer should consider her audience when writing error messages. That is, error messages should be instructive and not only identify what has triggered the error but also point the coder towards a solution (for a great example consider the BeautifulSoup library). Often we are stuck on obscure error messages and this talk gave some great tips on how one can write better messages. I had a chance to talk with the speaker after and he pointed me towards a great video from a previous Python conference that explained Python tracebacks.
My newest tech obsession is with decorators so I went to yet another talk on them. It was quite advanced. I didn't understand all of it, but after I wrote my first function decorator, so I guess I am making progress. The speaker was kind enough to give me his card for further communication should I like more help.
After the conference ended, I had coffee with two data science masters students. We talked about content analysis and possible future collaborations.
In the end, I exchanged email addresses and phone numbers with the new friends that I made. I am so happy that I went to EuroPython. It was an amazing experience where I felt like I was accepted into the Python community. I can't wait for next year!
July 26, 2018
Team Barcelona Duo (Exercism)  — at July 26, 2018 20:44 UTC
A day of learning and surprises
Today was another day focused on learning. During the morning stand-up one of our coaches explained more about breaking our project goals down in a way that would be amenable to creating sprints. We then spent the rest of the day learning some of the skills we would need in the next stage of our project.
In Barcelona Amalia concentrated on brushing up on Rails. She is planning on building a prototype to help her identify the things she will need sessions on with the coaches next week.
Pythonistas are nice people
I spent my second day in EuroPython. Overall, I was surprised by the generosity of the speakers. Everyone I asked was patient and forthcoming. Walking up to people and asking 'how do you use python?' started many interesting conversations and perhaps even some friendships.
I also attended three talks on text processing. One of the speakers even helped me understand how to break down the problem that we are facing with our content analysis of mentor data.
Another great talk went back to the basics -- Python iterators. I was excited to hear the speaker because we had talked the night before (at the social event for women and non-binary coders) and had exchanged emails. She had offered me advice on how to become more fluent in a language (read more code than you write). She even guided me towards a module that would be more instructive than the one I was planning on studying.
From her twitter bio I knew she had written a book on Python and was chair of PSF, but until her introduction at her talk I didn't know that PSF refers to the Python Software Foundation. I am humbled by her attention and left wondering if perhaps I should google people before I talk to them.
July 25, 2018
Team Barcelona Duo (Exercism)  — at July 25, 2018 23:41 UTC
We started our day with our daily stand-up. It was a video meeting as Lori is at a conference. Amalia continued working on Ruby and Ruby on Rails to prepare for our upcoming Rails sessions. The focus today was on hashes and refactoring.
As for Lori, her first day strategy at EuroPython was talk to as many people as possible and without the google preview, the reason being if you know someone is 'a someone' it makes it difficult to approach them. She attended four sessions and ended the day with a women's networking event. In between she interviewed different recruiters about their company culture, their hiring practices and what infrastructure they have to support their junior developers.
Bravest thing she did: Taking the microphone and asking a question in front of a full audience.
Best ice-breaker when approaching a group: "Hello, I'm Lori."
Best thing about being a woman at a tech conference? Never having to wait in line to use the rest rooms.
The only question remaining, does she dare give a lightning talk on Friday?
July 24, 2018
Team Barcelona Duo (Exercism)  — at July 24, 2018 21:56 UTC
For today and the remainder of this week Team Barcelona Duo, are working separately Amalia, in Barcelona and Lori in Edinburgh . Today, day one was a bit odd, as we have spent 20 of 24 days of this month together, including a 4 day apartment share in Brighton. It will be interesting and we will get a chance to collaborate remotely on our learning journey document that we mentioned yesterday, Amalia drafted the doc and Lori commented on it. Amalia also continued working on merging PR, sent Lori pictures of her empty desk, and interacted with exercism mentors on Slack. And finally she worked on Ruby.
For Lori it's a chance to reconnect with her first love -- Python, at the EuroPython Conference. Much of the day was spent travelling, signing up for conference breakfasts and dinners designated for women and non-binary community and making a detail study of the talks and speakers. It's the nerd equivalent of a candy store: decorators, integration testing, sentiment analysis and more! Details of the conference will be forthcoming in a separate blog post.
July 23, 2018
Team Barcelona Duo (Exercism)  — at July 23, 2018 20:46 UTC
Today we had our retrospective! For those of you who don't know what a retrospective is (eh, us, a few hours ago), it is a meeting where you talk about what you have done well, what you can improve on, and finish with some action points. We began with a 'safety check' where each team member ranked their feelings on 1 - 5 on how comfortable they felt before the meeting, the rational being that if a team member feelings fell below 3, it was best to postpone the meeting for another time. We had a bunch of fives, a 4.2 and one 3 (low, due to upcoming travel and not project related), and so we began.
Not surprisingly we all agreed that many things had gone well during our first month: administrative (setting up a Trello board and Slack channel), educational (including particular learning sessions), communication (instituting daily stand-ups with coaches, in-person and remote, attending) , and technical (PRs, understanding the codebase). What surprised us was the number of times the word trust was mentioned. It was clear that having trust between teammates, with our coaches and with our mentors was something that was very important to us, and in this we have succeeded.
We trust, respect and adore our coaches and always remind ourselves of how lucky we are. Aside from their technical skills (a given) they model a type of behavior and communication that we try and emulate in our interactions with each other and with everyone we encounter on a daily bases.
The trust has developed over the big little things like David teasing Lori about the errors she'll make in Ruby (mutable strings!!!) because of her Python background; the encouraging message Nacho sent during our trip to Brighton; the diagrams Javi makes when explaining something; Emily and Jorge the staying until 9pm to teach us about inception; the "Hmmm, have you considered..." gentle way Maihka pushes us to expand our viewpoints. It was also the social time we spent with our mentors that built trust as well, such as when Jeremy coached Amalia on climbing or the 7am coffee Lori had with Katrina. We are grateful to the team we have.
The Action Plan
In the retrospective we learned that we haven't clearly created our learning road map, so our coaches haven't always known how they can help us. Moreover, some of our coaches weren't sure if they were helpful enough. This is a problem and we are tasked with creating a document outlining what we think we need and working with them to set up a learning pipeline. We spent some time after the meeting brainstorming on ways we can align our personal goals with our contribution to the exercism project and will forward the plan to our coaches and schedule the next sprint accordingly. Basically, we know where we want to be in 2 months, and by clearly communicating this, our coaches will be able to help us get there.
So we'll end with a thank you to our beloved coaches and mentors David, Emilly, Javi, Jorge, Maihka, Nacho, Klaus, Jeremy and Katrina. We have a long way to go to be coding ninjas like you are, but having you on our team makes us believe in the possibilities.
Favorite things we learned today
- How to do a retrospective
- Getting our heads around procs
July 20, 2018
Team Barcelona Duo (Exercism)  — at July 20, 2018 15:39 UTC
We started the day off by reviewing questions that we had about Ruby with our coach Javier. After this meeting, he gave us a small problem to solve so that we could practice making classes in Ruby and also so that we can get an understanding of gaps in our knowledge that we still need to fill. We spent the morning drawing out what the problem would look like in real life, and made an attempt at making all of the classes we would need. Right after lunch we sat with Javi and reviewed our solutions with him. We were overcomplicating things, and adding functionality that was not necessary and learned the term YAGNI from Javi.
YAGNI (short for you aren't going to need it) is a principle in extreme programming that states that a programmer should not add functionality until it is deemed necessary. A very useful lesson that can be applied outside of programming as well.
Javi gave us additional suggestions and we made a second attempt before finally reviewing the problem again with Javi. To round off the week we also attended a discussion on social justice at Thoughtworks. :)
July 19, 2018
Team Barcelona Duo (Exercism)  — at July 19, 2018 15:40 UTC
Don't compare yourself to others, run your own race
One of the things we are proud of is how easy it is to merge a pull request. Last week we were terrified to push the merge pull request button, now we eat them for breakfast. :)
We still have so many things to learn, but we are enjoying every single moment of the day. When we go home at night, our brains are full, but we are satisfied and happy. The culture at Thoughtworks and the support we get from our mentors have created an environment where we can thrive and learn. It's not clear how long it will take us to learn enough, or even what is enough, but what is clear, is that we enjoy this. That's the most important thing.
Today we spent the day learning Ruby in the morning. In the afternoon, we had a great session with David on setting up a MySQL database. We ran into some problems setting up the servers on both mac and windows environments, but we now have them running, and we can look at our data.
July 18, 2018
Team Barcelona Duo (Exercism)  — at July 18, 2018 15:28 UTC
The joy of learning
We have a session on Rails with our coach Javier this upcoming Friday. As a result, we spent the day preparing for the session by learning Ruby. Lori found that unlike Python, in Ruby strings are mutable. It blew her mind and she realized the importance of learning additional languages and looks forward to the day when she can learn her first functional language. Tomorrow we have a session with our coach David in the morning to review the data we received from Katrina and Jeremy. We are looking forward to learning more Ruby and SQL .
Non-coding, but important:
We now theoretically understand why ping-pong tables are necessary in the workplace. After spending the day learning, a game of ping-pong was a refreshing break.
July 17, 2018
Team Barcelona Duo (Exercism)  — at July 17, 2018 15:57 UTC
Ruby and Rails: Let the fun begin!
After speaking with David we made the decision to learn Ruby and Rails. While we don't yet know if we will be able to build a prototype for improving the mentor experience, knowing Ruby and Rails will give us the flexibility to become familiar with the Exercism code base, and perhaps figure out a way to integrate what we build.
We dedicated the majority of the day learning and reviewing material that still is not clear. We spent the day reviewing pull requests and came to a good understanding of how they work. In the next few weeks, we will solidify what we learned through a lot of deliberate practice. But for the moment, it does feel good to have a clearer schema of how pull request work.
We scheduled a lesson on Rails with our coach Javi for this Friday and spent the day preparing by learning Ruby. We received the data from Katrina and are looking forward to rolling up our sleeves.