claudiolassala

Claudio is a Principal Consultant at Improving Houston. He has been developing software for 25+ years. When not building software, consulting with clients, doing presentations, delivering training, or hanging out with his family, he can probably be found working on his music.

Homepage: https://claudiolassala.wordpress.com

Refactoring Test Code – Free Virtual Lunch and Learn

I’m giving my “Refactoring Test Code” talk as a Free Virtual Lunch and Learn this Friday, March 12, 12-1pm CDT, as part of the Improving Virtual Events. Register here!

Here’s the talk’s description:

Most developers hear about “Red->Green->Refactor” as part of the TDD process. Some never get to the “refactor” part. Some only refactor the “production” code, but not the test code, after all, that’s “just test code”. Tests become cluttered, hard to maintain, and are abandoned.

In this talk, let’s have a look at some ways to refactor “test” code (C#, JavaScript/TypeScript, unit/integration/end-to-end…), so that they become easier to read and even create opportunities for better collaboration with non-technical people.

Image by GraphicMama-team from Pixabay

Leave a comment

Virtual Brown Bag: February 2021 Summary

Time flies, but the weekly Virtual Brown Bag meetings stay strong. Many great conversations have been had in February.

  1. February 25th, 2021

    Troy Hunt’s “Everything you ever wanted to know” post about password reset feature, authentication systems and identity frameworks, JamStackAttack.com, Python

  2. February 18th, 2021

    Rocketbook, ReMarkable, writing cover letters for resume, working for free, junior vs senior devs, using LinkedIn.

  3. February 11th, 2021

    TypeScript: Why?, React Admin

  4. February 4th, 2021

    Form builders, TypeScript

Leave a comment

How to Lead When You’re NOT in Charge – Identity

We have just started a Book Club at Improving to discuss the book How to Lead When you’re NOT in Charge. I’ll be posting some of my main thoughts here as we cover two chapters per week.

“Great leaders leverage influence and relationships over title and position. Influence has always been, and will always be, the currency of leadership. Influence always outpaces authority.

Those bits got me thinking back to when I was 16 or so. For whatever reason, at least at the time, Brazilians used to use the “Dr.” prefix for the bosses (usually directors and such), regardless as to whether the person had a doctorate or not. That to me was a sign of title and authority over leadership (I’ll just say the person didn’t act as a leader).

“Once you become aware of something, you start seeing it everywhere”

 

That one comes up often. Keep an open mind, increase awareness, increase the potential of influencing others.

“Take responsibility to make great what you can make great. And let others do it in the areas that they can make great.” – Jim Collins

 

That bit makes me think of the disservice it is to not let others perform what they’re great at. For example, instead of doing something myself, even though I don’t know how to do it, just for the sake of saving some bucks, is a disservice to those who do that for a living.

“Leading without authority means you need to have a clear understanding of your identity – who you are as a leader, apart from any titles.”

That one had me thinking that many times I have not even put myself as a leader, but ended up being followed, mostly because people know what I stand for and look up to me for guidance.

In speaking of leaders and followers, I always think of one of my favorite TED talks, “How to start a movement, by Derek Sivers”.

“The most important ongoing conversation you have in your life is the one you have with yourself every day.”

This is another point that comes up in many places; this idea of “the story we tell ourselves”.

“The more you understand the makeup of your personality, the better you can understand how your identity shapes your thoughts, desires, and decisions, and the better you’ll be able to work with others.”

I’ve had conversations over the last couple of years that have helped me understand that thought better. There are traits I have that I wasn’t quite aware of, until someone else pointed it out to me. I then started being more deliberate about it; if it’s something people relate to, I might as well leverage it as a “super power”.

“Architecture of Identity: Past, People, Personality, Purpose, Priorities”

James Clear’s post on Identity-based Habits got me thinking a lot about this many years ago and I’ve been often reviewing my habits and how they line up with my desired identity.

“The clearer you are about who you are…
– The more consistent you’ll be with others
– The more confident you’ll be about what you do
– The less concerned you’ll be with the opinion of others
– The less confused you’ll be by your emotions”

I have worked with a number of clients as a consultant, where I didn’t have the authority to be a formal leader, and yet, consultants were expected to demonstrate informal leadership behavior.

And a point in the book that really hit home: “Think about Martin Luther King, Jr. What was his title again?

Leave a comment

Obviously, everybody knows that, of course!

Whenever we say things like “obviously” and “of course”, we risk shutting the doors of communication.

What may be obvious for us today, wasn’t so obvious when we didn’t know it. Once we’ve known it for a while, we take it for granted, and it becomes obvious to us, but it’s still NOT obvious to those who don’t know it.

People who hear “obviously, eveybody knows that” may feel stupid asking for clarification. I know I’ve refrained myself from asking questions because of that, having to take note and then do some research afterward, missing important information through the end of a meeting due to my temporary ignorance.

Crystal clear to some, blurry to others.

Different people learn at different pace. We see things through different lenses. The image in front of us maybe be opaque due to life’s experiences or inexperiences, opportunities or lack of. We travel different roads to enlightenment and hit different bumps along the way.

I can’t remember when and where I first heard of the issues with using those words, but ever since I did, I’ve been watching my words.

Leave a comment

Virtual Brown Bag: January 2021 Summary

The year has started with a full run of weekly Virtual Brown Bag meetings. See what we’ve been up to and join us when you like. Every Thursday, 12pm CDT!

January 28th, 2021

Networks, hardware, Cypress.io, E2E tests, TDD, BDD, Roam, Notion, Evernote.

January 21th, 2021

Challenges with WinForms project, Uno Platform for Xamarin, Accessibility, Skia, Comet.

January 14th, 2021

Coding test interviews, interview scripts, TripleByte.com assessments… and, Linux.

January 7th, 2021

JavaScript’s Symbol properties for secret data, Immer, Orgmode, AWS Certification

Leave a comment

New Talk – “Improving Code: Refactoring Test Code”

After a short hiatus, the Improving Code user group is back. The first talk of the year happens online next week, Feb 3, 6:30pm CDT. RSVP here, will ya?

Refactoring Test Code

Every developer hears about the TDD process as “Red->Green->Refactor”. Some never get to the “refactor” part. Some only refactor the “production” code, but not the test code, after all, that’s “just test code”. Tests become cluttered, hard to maintain, and are abandoned.

In this talk, let’s have a look at some ways to refactor “test” code (C#, JavaScript/TypeScript, unit/integration/end-to-end…).

Refactoring Test Code

Wednesday, Feb 3, 2021, 6:30 PM

Online event
,

1 Members Attending

Every developer hears about the TDD process as “Red->Green->Refactor”. Some never get to the “refactor” part. Some only refactor the “production” code, but not the test code, after all, that’s “just test code”. Tests become cluttered, hard to maintain, and are abandoned. In this talk, let’s have a look at some ways to refactor “test” code (C#, Ja…

Check out this Meetup →

Leave a comment

Favorite Books I’ve Read in 2020

Here are some of my favorites books read in 2020, in no particular order.

Sum: Forty Tales from the Afterlives

Derek Sivers has a great summary of that book. I’ve read the book around the same time when I finished watching The Good Place (which I loved!). Both the book and the series touch on topics I catch myself thinking about often.

The Phoenix Project / The Unicorn Project

I enjoyed both books a lot. I like the novel approach (inspired by The Goal, which is another book I like).

Badass: Making Users Awesome

I absolutely loved this book!! Watch this 2-minute long video. I’ve enjoyed this book so much that it’s one of the books I have on my list to re-read this year.

Total Recall / Losing My Virginity

Those are the autobiographies of Arnold Schwarzenegger and Richard Branson, respectively. Two remarkable individuals.

Hell Yeah or No / Your Music and People

If you’ve been following my blog, you’ve noticed I mention Derek Sivers quite often. I’ve been following his writings for several years and will continue to do so; he keeps putting out great stuff in a very simple, distilled manner.

The Obstacle is the Way

I’ve been hearing and reading people talk about stoicism a lot over the years, but never really sat down to look more into it, until last year. I’ve enjoyed The Obstacle is the Way, and even gifted a copy to a friend, with page markers on passages that I believe can help him accomplish the dream he’s chasing.

Image by Linus Schütz

Leave a comment

On Failure

An artist I look up to is Devin Townsend. He is an amazing singer, prolific songwriter, hilarious in his performance, and a great mind.

Months ago, I’ve run into the Devin Townsend Challenge video. From its description: “Get a unique insight into Devin Townsend’s creative process in this two-hour video where he records a completely new track from scratch.” I was intrigued and am glad I’ve watched the whole thing. It’s not everyday we get a chance to witness a brilliant mind at work.

Devin’s albums and concerts are always very polished. Everything looks and sounds flawless. This is one of my favorite songs and performances by him: Devin Townsend’s Kingdom

The most important thing I got out of his “challenge” was his transparency into his process. He didn’t try to make anything look or sound perfect. He showed how he fails many times until he finds what he’s looking for. He also shows how he uses certain building blocks that have worked well for him, which are part of his musical fingerprint, so new creations come out a little easier.

I then found this great article:

Devin Townsend’s Advice to Younger Musicians: “You Need to Learn How to Fail Efficiently”

The title of that article alone already makes me sit back and think about it.

How much effort goes into trying NOT to fail? That’s a waste of energy. We’re not likely to get it right the first time. And even if we do, what do we learn from it? I don’t know who said this, but it’s a good quote: “It’s only failure if you don’t learn from it”.

A few weeks ago I’ve put up a dartboard in the house. Say I walk up to it, throw the first dart, hoping to hit the bullseye, and it doesn’t come even close. I can get frustrated, say I suck, throw the 2nd dart, and do even worse. Or, I can throw the 1st dart accepting that I may not hit the bullseye, but being aware of things such as how I’m holding the dart, how I’m aiming, how much force I’m using to throw, the dart’s trajectory, etc. Then I see the result, and try it again, learning off the experience I’ve just had, coming up with a new plan (throw higher, softer, relax the arm, etc.) and then there’s a good chance the 2nd throw will go a little better. Rinse and repeat.

So, as Devin says, we need to learn how to fail efficiently, so we aren’t afraid of failing, and are better equipped to give our best and learn with the experience.

I love this quote from a TV show I’ve never watched:

“Dude, suckin’ at something is the first step to being sorta good at something.” – Jake, “Adventure Time”

We all have a tendency to see successful people and get frustrated when we can’t repeat their success. We compare our beginning to someone else’s middle. We don’t think of all the roads they tried to get to where they are. I think of Tim Ferriss’ The 4-Hour Workweek hugely successful book, and how it was rejected 25 times, before he finally got an offer from a publisher. 25 times! We are always afraid of failing one single time, let alone 25 times.

Here’s a great 5-minute talk on Why You Need to Fail, by Derek Sivers.

There are many things I want to do, many goals to pursue. I’ll add a task to each one as a reminder to ask myself “how can I fail efficiently?”.

Leave a comment

There Once Was a Magazine…

I have mentioned about the importance of technical communities for me. This month, I take a moment to reflect upon something I was doing related to communities 20 years ago: in January of 2001, the first issue of RapoZine was released!

Still living in Brazil at the time and participating in a community that craved for content in Portuguese for Visual FoxPro, I got together with two other members of the community to put out this little magazine. Leandro W. and I would each write half of the content, and Nilton P. would take care of the website where people could subscribe.

We’d print out the pages at whichever company we were working at the time, and mail it out to the subscribers. Simple and easy. Nothing fancy needed. The community was craving for content! For that first issue, we also enjoyed an article contributed by Ellen W., from CoDe Magazine.

In its first year, we had about 120+ subscribers.

It was a ton of work to get monthly content written and put out like that. That’s how I got started on technical writing.

The name RapoZine was a combination of “Raposa” (Fox in Portuguese) and “magazine”.

When the printing and mailing costs got too high, we eventually alternated into a digital version. The articles were created in HTML, compiled into a password-protected EXE file, and a download link was sent to the subscribers. I need to dig up some old backup files… I may still find some of those issues here.

With my plans to move to the US in 2002, I didn’t have time to keep the magazine running. Fortunately, the main worldwide FoxPro community at the time, the Universal Thread, which also had their own electronic magazine, UTMag, approached me to join forces, and we merged UTMag/RapoZine for the community. The magazine became free for all, and published in three languags: English, Portuguese, and Spanish! The Universal Thread had a great system to allow translators to collaborate and get the content out. I continued as a co-editor and coordinator for the translation team. About a year later, the Univeral Thread acquired RapoZine, and I stepped away to pursue other goals.

When I was reading Richard Branson’s autobiography last year, and learning about how he started his professional life with Student Magazine, it got me thinking back to RapoZine.

Leave a comment

2020: Annual Review

Time for my traditional Annual Review, which started back in 2015. While some people, understandably, have strong reasons to completely erase 2020 off their minds, I have worked hard to build great memories in the midst of everything that was going on.

So, let’s start from where my 2019: Annual Review ended. At the time, here are the things I said I was working towards:

  • Continue Growing Beyond the Track
  • SportBike Track Riding
  • Solid initiatives at Improving
  • Get better at Spanish

I can check all those boxes! Each one of those are covered below.

What went well in 2020?

Continue growing Beyond the Track: a beautiful, professional logo has been created. I’ve printed cards, which members of my community give out to other riders they meet at the track, strengthening our networking. A new banner has been made for us to fly it at the tracks. The community is growing closer together, great friendships are forming, more and more people are stepping up to help produce content for the monthly meetings (which have successfully continued as online events). Members of the community are making custom leather suits and having the BTT logo put on it. We train together, we grow together.

SportBike Track Riding: I had to adjust the path to achieve my riding goals, and it worked out great given the constraints. I’ve received coaching, and as it turns out, it seems like I’ve also been coaching.

Solid initiatives at Improving: the initiatives I’ve been involved with have been working out well and are growing, and I am very excited and energized to keep working at it.

Get better at Spanish: One of my goals was to give my first talk in Spanish. in June, I experienced synchronicity at its best, as Improving acquired iTexico, and we were joined by 300 professionals whose primary language is Spanish. I gave the talk in December.

Blog posts: I’ve set a new personal record in number of posts published in a single year in the 16 years since I’ve started this blog. Most important, several posts have triggered great conversations, recommendations, networking, thoughts that inspired new posts.

Music: I’ve set a new personal record in number of songs I’ve recorded and published in a year, by putting out two cover songs and three original songs.

Virtual Brown Bag: people have been asking me over the years if I’d be bringing the VBB back. My good old friend George was up for it, and we’ve been hosting the weekly VBBs since April!

Book Reading: I’ve cranked up my reading habits up a notch and set a new personal record of books read in a year. I’ve read some great ones, focused on building my book library, improved my book reading, read some great titles, and my slots for reading-time are something I look up to every day.

Improving’s handle of the situation: I am so happy to be a part of this company. Our leadership’s handle of such a tough situation has been top-notch and inspiring. The care for our people, not just our employees but also our families, the way we lean in to help our clients, the quick shift to continue offering value through weekly virtual events, the way we’ve reinvented ourselves to keep offering high-quality consulting and training. The list goes on and on.

What’s with all those personal records? Those were deliberate. As I mentioned at the beginning of this post, I have worked hard to make sure I’d have great memories to remember 2020 by. Whenever I go through challenges and hardships in the future, I can always come back to this post and remind myself that I have what I need in me to overcome adversities. I do have more highlights, but those are to be kept in my personal records.

What didn’t go so well?

No steady workout routine: much like in previous years, I haven’t been able to keep a steady workout routine. I did really well for several months having a great daily routine, but then I got out of it. I coming up with a plan to tackle that.

Cancellations due to the pandemic: there wasn’t a lot I could have done about this one. Fortunately, I believe I handled it well; the most important things were simply postponed.

Eating habits: both what and when I eat have suffered since the start of the pandemic. Fixing the when should be easy. Fixing the what, not so much for me.

What am I working toward?

Book reading: I plan to keep the same daily habits I’ve sustained since March, and adding a habit to review at least one previoulsy read book every month. I’m looking for lessons that have stuck with me, as well as those I haven’t quite grasped the first time through.

Sharpening technical skills: Most books I’ve been reading aren’t technical. For that end, I plan on going through at least one Pluralsight course every month.

Blogging: I plan on putting out at least one blog post every week, to any of my blogs (this one, the music one, or the Beyond the Track one).

Publishing my book: I want to see the book I’ve been working on published this year. Since this is my first book, it’s been a fun project, learning a lot of things, having frequent conversations with my co-author, and taking my writing skills to a new level.

Keep growing Beyond the Track: similarly to last year, I’ll continue actively working both on my riding skills, as well as growing my community, as well as the experiences I provide it.

Leave a comment