Which are your company’s core values?
Do you feel safe?
When I first learned about pure functions I tried to map the concept to a core piece of logic on our product. It was hard, and I spent some days figuring it out. The test functionality is an invoice finalizer. We first had all that logic on the fat models, and then we refactored it to interactors and it was a huge improvement. Even so, all the gateway logic and such, seamed like an unnecessary burden. This functionality, in ruby, is something like:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
Interesting view on leadership.
- Where are you looking to anticipate change?
- What is the diversity measure of your network?
- Are you courageous enough to abandon the past?
Happiness matters. In this talk we are presented with Github’s vision for happiness in the workplace. It’s hard to achieve a lot of those steps, specially when we have managers and we don’t see eye to eye. But that won’t stop me from trying.
Remember the Godfather movies? I bet you’ve seen them before. (If you haven’t, stop reading right now and go watch them. Just kidding.)
There are 3 Godfather movies: Part I, Part II and Part III. Let’s just focus on Part I and Part II. Which one did you like the most? Part I? It’s a classic, great movie. Do you think Part II is better? I know some people who do. It’s also awesome. Both are great movies, there’s no question about that.
The same happens with these two life changing books: REWORK and REMOTE. Both of them are so good it’s hard to say which one is better.
These books have completely changed the way I work and how I manage to keep a healthy work-life balance.
Let me just give you an idea of what they talk about. Then, go read them and change your life forever.
Pratical Object-Oriented Design in Ruby by Sandi Metz
This is one of my favorite Ruby books ever. It is very well written and a joy to read. I highly recommend this book.
So, why is software design so important?
When starting a new software application you have certain requirements. You analise these requirements, build your software and it works. As time goes by, those requirements will change and you will need to refactor your code. If you have a good design architecture, with loosely coupled classes, refactoring your code to meet the new requirements is easy. Otherwise, it will be very painful to make changes.
Some time ago our team started to write code differently. Inspired by Architecture: The Lost Years, we started using interactors and presenters, greatly improving our code base. We also started writting rails-free unit tests. It’s good to know that we are not alone on this process. The Objects on Rails book shows a step by step process to build this kind of code.