Tattoo, Part 2: All I Know About Problem-Solving

Tattoo, Part 2: All I Know About Problem-Solving

THE ONLY SONG right now with enough LOVE, PASSION, DEDICATION AND CARE in it right now is "Tattoo" by Loreen.

"No, I don't care about the pain, I'll walk through fire and through rain, just to get closer to you, you stuck on me like a tattoo." This is exactly how I feel about this job. "NO, I DON'T CARE ABOUT THEM ALL." That is exactly how I feel about this job.

I care about it so much.

I care about it so so so much.

Here are my final few thoughts on problem solving before I go on leave

I'm going to take all of the stuff I've done in these blog posts.

And I'm going to take the stuff that I'm going to continue to do; synthesising these blog posts.

And doing more AMAZING sessions on problem solving at work. And watching that last recording.

And synthesising these nights. Re-organising them again and again.

Planning and breaking down into steps are an iterative process

My Senior said to me: while understanding the problem might be the first step, planning and breaking down are not so clear-cut. Maybe you need a larger overview of the problem first. But often it is only once you have broken something down into steps that you can plan. Right? It is not always so simple and so clear cut. But really it's about thinking.

It's about thinking about the bigger problem. 

It's about thinking "I think that if x is what I think it should be, then A should become B, C should become D."

"I think if X=Y is true, then E should become F, D should become G."

Ask myself:
  • What is the ask?
  • What the stuff is doing
  • How do I fix it 
Think about the wider use case.

How do I want it to work?

STEP OUT. LOOK AT IT AS A WHOLE. 

Sorry these are only just keywords.

But I am hoping that soon it will click and it will all make sense to me omg.
  • "DO I WANT THAT TO HAPPEN? SHOULD THAT HAPPEN?" It's about:
  • "WELL I KNOW THAT WE WANT X AND IT'S NOT DOING X."

Business Logic

WE NEED TO THINK ABOUT THE BUSINESS LOGIC. ULTIMATELY, WE NEED TO THINK ABOUT THE BUSINESS LOGIC. If I am an energy company and I want to bill customers then what do I need? I need a place for them to submit readings and I need a place for them to make payments to me and I need a way to generate bills and to send them to them.

And so with all of my problems that I solve I should be thinking about the business logic. I can even see that in my last ticket; I was working with views; WHY DO WE EVEN CARE ABOUT VIEWS? Oh yeah cos hitting these endpoints is literally what makes our stuff happen.

If I can see it in this way then these problems will be easier to solve - thank you. I also talked loads about how it was not a waste of time to problem-solve - it makes you faster - and it makes your PRs faster and smoother - and so it saves you Seniors' time as well. But ultimately it is going to make this job easier for me. 

And hopefully it will make me feel less like I'm drowning. Thank you so much.

A Few More Quotes That Stood Out To Me From My Review Lesson 

One

"FINDING WAYS TO TEST THE CODE - BASICALLY - WHEN YOU THINK ABOUT HOW YOU TEST IT AND WHAT YOU WANT IT TO DO - IT TENDS TO MAKE YOU RE-EVALUATE HOW YOU'VE WRITTEN THE CODE."

Two

  1. WHAT DO I WANT THIS TO DO?
  2. WHAT IS IT DOING?
  3. WHAT DO I WANNA TEST - BECAUSE YOUR TEST IS FRAMED AROUND WHAT YOU WANT IT TO DO

Three

  • GIVEN INPUT X, WHAT ARE THE STEPS NECESSARY TO RETURN OUTPUT Y?

Four

  • EVEN THOUGH YOU WANT TO DIVE IN, YOU HAVE TO TAKE A STEP BACK AND ASSES THE WHOLE SITUATION

Thanks

"NO I DON'T CARE ABOUT THEM ALL, COS ALL I WANT IS TO BE LOVED."

Beautiful photo from a fireworks display of two fireworks



Comments

Popular posts from this blog

Hello World

Yosemite

Where To Hide A Star