Posts

Showing posts from November, 2024

Python In The Middle Of The Night Cos I Can't Sleep

Image
Python In The Middle Of The Night Cos I Can't Sleep When I was little, my dad used to take me to the woods to stargaze. We would look for Venus. Those were the most magical nights of my life. The place where we used to look for stars is now surrounded by wind farms. And I don't think it's a coincidence. Wind farms are the great, great, great love of my life. Renewable energy is the great love of my life. I have done everything to be in renewable energy. I have done everything to stay in renewable energy. When I lost my job in February, I didn't even miss a beat. I had to be dragged to the pub at the end of the day. I was online and applying. I taught myself beginner's Python in 10 days. I taught myself Django. Over the past 8 months I have given everything I can. I have given everything I can until I have nothing more to give. And then I have given some more. I have navigated recovery from a seizure disorder. I dare to say it's going bett...

Python While Listening To Every Cover of Khaled's "Aicha" in the World - Resource Management

Image
Python While Listening To Every Cover of Khaled's "Aicha" in the World - Resource Management Resource Management Computers need memory, storage and power. The resources of a computer need to be managed. Just like the resources of a Susanna - Susanna's need adequate amount of rest, exercise and nourishing food or else they will go insane (oops).  A context manager can help take care of a computer, just like a healthy, balanced lifestyle can help take care of a Susanna (oops). A context manager takes care of assigning and releasing resources.  Such as files and database connections. The With Statement The with statement in Python allows us to make sure that our files are properly closed after use. So what does a context manager have to do with resource management? The with statement allows us to skip opening and closing the file manually - okay so what I have known this for months? AH. I SEE. IT IS IMPOSSIBLE THAT WE WILL FORGET TO CLOSE OUR FILE...

Saturday Afternoon Python

Image
Saturday Afternoon Python Last night I went to the best dance class of my life. We danced for two hours which is the usual duration of such classes. But it was something else. There was something truly special about it. The fairy lights made the room so beautiful. And the playlist was absolutely magical. I would rather be chilling. I really would rather. But I need to get a bit of Python done. UserDict This lets us define our own type of dictionary. You can use it when you want to add extra behaviour to the dictionary. UserList This also allows to create our own version of a list. How interesting. I wonder what could that be? It says that it has a property called "data" that allows us to access list contents directly. Huh. Hmmmmmmm. We can also overwrite methods from the list class. When you create a new instance of a UserList, it uses an internal attribute called 'data' to hold the list of the actual items. Okay this is actually so cool - I wr...

“Something has changed within me”: Listening back to a problem solving call with my boss

Image
“Something has changed within me”: Listening back to a problem solving call with my boss Like in the song from Wicked… I am ready to fly 🕊️ I had a beautiful evening today. After smashing it out and producing some excellent frontend tickets, I found the time to meditate today. I even had time to dance! And I even spoke to my grandmother. But apart from those wonderful things I managed to find the time to listen back to my problem solving call from two days ago and it was so worth it. We approached a new problem together and I applied all of my new problem solving skills and he asked me some amazing questions. It was an absolute 10/10 problem solving session. There was loads said and loads done but the most helpful of all were the three above questions. Before I dive into that I just wanna say the result was a beautiful neat set of notes for the ticket. I mean I have never had that before. My notes were such chaos. But with these three questions alone I wrote a beautiful stunning set o...

Thursday Mornings With Python Part 9 - "I'd Sooner Die Defying Gravity"

Image
Thursday Mornings With Python Part 9 - "I'd Sooner Die Defying Gravity" Named Tuples. "Everyone deserves a chance to fly." So I am moving on quickly with these. I get them.  I won't spend too long writing them out. Thank you. I completed the lesson so let's move on. Default Dict I have heard of these before. Even used them. So what are they now? Default dicts help us to avoid key errors by having default missing values in dictionaries. This is amazing and so so cool as it allows us to avoid having too many errors! Thanks. We set the default value using lambda . I went through this and it made a lot of sense so I'm moving on very quickly. Ordered Dict This is to do with the fact that dicts are unordered. We can store a list of dicts themselves inside a list but then we have to do a lot of complicated accessing to access them (although I disagree with the course slightly here - the accessing is fine. I suppose it depends how long the list is - anything...

Thinking more about problem solving again on my lunch

Image
Thinking more about problem solving again on my lunch Again. I’m sorry. I just can’t stop. I have two giant A1 posters on my wall. They are sheets of paper I am filling up with problem solving tips. I need to buy some more blue tack too so I can add some more A1 sheets. Looking at my first 6 wall categories today, I felt that at least two of them needed consolidating. I instinctively knew which ones. So I copied those two across onto my other one. I feel closer now but I am still looking for a theme. Something needs to click and I am still looking for it. I now need to listen back to at least 3 more calls with my boss and counting and try to understand the problems and how we solved them in there. But I am getting so much better at it. I am getting so much better at that. At coming up with a list of steps on my own.  Based on the problem space. I finally have a framework. I no longer feel like I’m drowning. I’m ready. I can do this. I can do this. And I am ready to perform  Th...

"If you love the world you'll be interested in it and you'll want it to do well"

Image
"If you love the world you'll be interested in it and you'll want it to do well" This is another amazing quote from my friend the retired engineer, Dave. Another one of his was the title of my last post - "just do what feels right to make things better because you love it." Dave loves the world is curious about it and is the most outstanding engineer ever. Dave had a few more tips for me. Mentally I got too tired so I had to put them into one more blog post instead of squeezing them all into the last, I have to really take care of myself because I can get really overwhelmed. SO HERE GOES, HERE WE GO: Code is all interrelated. If you change the code then you might fix that chunk but then you might create another one or two problems further down the line. Change one thing at a time and then see what works. DEBUGGING Debug just to find out where the problem is and why and then try and hone in on just that little bit. Don't replace all the parts on the boile...

JUST DO WHAT FEELS RIGHT TO MAKE THINGS BETTER BECAUSE YOU LOVE IT

Image
JUST DO WHAT FEELS RIGHT TO MAKE THINGS BETTER BECAUSE YOU LOVE IT Working tonight has taken discipline I didn't know I had. And I did two MSc's in two years and taught myself to code and blah blah blah.  After a nice relaxing dance (yep I'm dancing, I've started dancing again, and it's the BEST) and a dinner which I regretted (I couldn't be bothered to cook), I CANNOT be bothered to think about problem-solving. BUT THEY ARE YET TO INVENT SOMETHING THAT COULD TAKE ME OUT. So here I am. Listening to the "Popcorn" song - the original EDM song - and I LOVE EDM - I like the version by the Megabyte Orchestra. Every version is different and there's a beautiful acoustic version here.  Listening back to my podcast with Dave Have an interest in how it works. Have an interest in how it works and why it's been done the way it's been done. MAYBE THINGS ARE NOT QUITE RIGHT. It could've been designed better. It could've been designed better. It c...

And All Who Find Us Will Know The Tune

Image
And All Who Find Us Will Know The Tune I would like to say a deep heartfelt thank you to my employers because last night I went for the most beautiful dinner of my life. It was right after I gave an impassioned speech to my boss too about my love of renewable energy. What a beautiful evening. Of course the need to improve is still ever present in my mind. I have my plans of course. We did another amazing call on problem solving today and I need to watch it back. And I had my big plans with my podcast this evening. And so I must go. I can’t go on and I must go on.  I am so tired and I can’t keep on upskilling like I have been. But I must go on. I can’t go on, but I must. I can’t go on. But I must go on. Thank you Because you can try your hardest. The absolute hardest that you’ve ever been trying in your life. But you can still need to try harder. Anyway thank you xxx and see you soon with more blog posts 😘 

And in the darkness, a torch we hold

Image
And in the darkness, a torch we hold This is just a very quick lunchtime blog post while I wait for my food to say that I’M NOT DONE. I’M NOT DONE. My boss and I did an amazing call on problem solving today before lunch. I’M NOT DONE.  I developed an amazing set of notes for myself and saw that I could very easily do that for myself. I’M NOT DONE. I will listen back to my podcast with Dave tonight twice and organise use it into notes. And then I will write five blog posts on it. And then I will listen back to my call from today. I’M NOT DONE. Anyone who thought that I was finished I’m sorry I’m sorry I don’t want to disappoint you but I’M NOT DONE. I’m sorry. Photo by a beautiful and wonderful Australian colleague And I will fit in a food shop as well because I have time to take care of myself and to be a badass pro super software engineer

Python on the Train: Collections, Deque

Image
Python on the Train: Collections, Deque Good morning! I'm on the train. It's a Tuesday - back to work. I had been planning on scrapping some of my extra problem solving work that I had planned to do. In favour of resting. And in favour of doing a bit more of the Python outside of hours. But now I realise that I can't. All of my extra little plans: Listening to my call with my boss along with code Potentially re-listening to my other call Doing more sessions and potentially re-listening to those Listening to my podcast with Dave Turning that into notes and blog posts Buying a few A2 sheets and turning them into overviews of all of my problem solving skills They need to be done somehow. But something else will have to go. Might pause LinkedIn for a bit or something. Hey we all know I can make these plans but they never work. The main thing is to rest. At least I have a long break over Christmas. I want to try and get some things done before then I made a wish on an eyelash  r...

I need to see a friend tonight or see the people in a bar

Image
I need to see a friend tonight or see the people in a bar This title is a quote from the song “In A Bar” by Tango with Lions. One of my favourite songs in the world. What a beautiful song. I fell in love with it seven years ago when I was on a deep healing journey. I wrote my last blog post about how I need to tone it down. So how am I going to tone it down. I need blog posts for when I learn Python. I need blog posts for when I need to learn something urgently for work. Like when I had to revise problem solving. I struggle with the huge long massive to do lists that get stuck inside my head. I use my blog I use LinkedIn and I use paper. But how can I tone it down and just do my job. That’s the dream right. I can’t keep on going. I can’t do as much as I have done this year. This year has been insanity. There has been almost no cooking involved. I stopped living normally. Working a 40 hour week is intense but this year I went off the rails I pulled off a miracle or at least I think I wi...

A song to say goodbye

Image
A song to say goodbye The post title is named after a song by an amazing band called Placebo, who went to my old school in Luxembourg.  My New Year’s resolution which I am not waiting until the new year for is to stop adding to my to do list. I am serious. I need to work and I have my problem solving tasks and I have my Python course - the rest of intermediate Python (two modules) and two advanced modules.  And then I need some chill. I will be continuing with my work of course. And then: I need to cook. I need to make my vegetable soups. I need to cook my healthy vegetables. I need to go out into nature every weekend and air my lungs. I need to rest and meditate and keep my room tidy and build relationships. I need to switch off above all. I need to let my brain switch off sometimes I need to have time to love the renewable energy…

Thinking about how I love hydroelectric dams

Image
Thinking about how I love hydroelectric dams “One single thread of gold tied me to you” Coming back from retreat is always hard but it’s definitely been easier this time than all the previous times.  The more I come back from retreats the more I realise that we never leave our retreats. The joy and the bliss is always there. Nevertheless here are some resources: I have a list of all of the recordings from the retreat. Although my teacher sadly got ill and had to miss some sessions/leave early, there are a still a good few sessions we actually recorded that I really liked and even some of the replacement sessions were amazing as well There were two Q and A questions I really liked too - mine and a friends  A book by my meditation teacher - I’m looking forward to reading it - a new one A book by him I have two copies of at home - I’d like to reread it My dad got me a beautiful book of prayers as an early Christmas present and I really look forward and hope to read those I have m...

Going deeper into renewable energy

Image
Going deeper into renewable energy When I go deeper into my love of the Absolute and deeper into my love of God and deeper into my love of renewable energy then I just want to do more. This time last year I embarked on a research project into software engineering in renewable energy and then AI in renewable energy. But this year I think I know what the best thing to do is. I think I need to keep on working on my problem solving skills.  Why? Because I think that the best way that I can continue to serve renewable energy right now is as a software engineer. And I want to raise the bar. I need to do better. I have more that I need to do. I can do better. And  I want to buy some A2 paper and make some notes of all of my ideas  I want to listen back to my recordings with my boss I want to make some more recordings with my boss I want to listen back to my podcast with Dave and it turn it into notes And turn those notes into a blog post

Notes from the other side of Heaven

Image
Notes from the other side of Heaven Of course this title is false. Heaven is within us at all times always. It is what we really are. But the retreat is over. And so as I enjoy one last long weekend with my family before coming back to work: I have lots of plans around problem solving. My friend engineer Dave and I recorded a mini podcast and I have lots of notes to write up and blog posts. And I still have to watch my main recording with my boss back and take notes. And I have a few more sessions coming up with my boss on this as well… thank you Because coming back is hard but there is so much I love to come back to I HAVE BEEN SO BLOWN AWAY WITH WHAT MY BOSS HAS DONE FOR ME OVER THE LAST COUPLE OF MONTHS I have so much to go with my problem solving skills but I am still so excited to… solve them

Problem Solving: Breaking Down Functions Into Smaller Functions And Writing Pseudocode: Reflecting on a call I haven’t watched back yet

Image
Problem Solving: Breaking Down Functions Into Smaller Functions And Writing Pseudocode: Reflecting on a call I haven’t watched back yet My boss and I did a recorded call on problem solving before my holiday; this one was specifically on solving a problem and on writing a function to solve the problem. Specifically it was about writing the pseudocode for a function to solve a problem. And then it would have been about writing the pseudocode for the three sub functions that would go inside of this main function or whatnot. Specifically; well first I want to say that I haven’t watched this back yet and I will not do so while I am on holiday. But I’m intimidated; the fact that it is a 45 minut call with follow along notes and lots of information seems to me that I will need a good 3-4 hour session on a Saturday morning one day to follow it back properly and take notes. But I want to try and go off of the back of what I remember and the few seconds I did watch back the other day. So my boss...

Thinking A Bit Further About The Business Case

Image
Thinking A Bit Further About The Business Case It’s 7 am. I’m waiting by the fire for my first meditation and for my tea to cool down. I wanted to touch a little bit further on business logic (luckily here passion is encouraged and nobody judges me for who I am). The piece of work that caused us to address problem solving properly although it was always an issue was a big revision of a PR. It was a revision of a feature request. I delivered the feature request correctly. But we wanted to do something more. So I redid it quickly but I redid it too fast and in doing that apparently didn’t think enough about the wider problem.  I trust my senior with my life so this is feedback I’m willing to take. I didn’t think enough about: What are we taking in? From a business perspective, what are we taking in? I am keeping it vague but it’s a list of users. Or rather a list of account features that then allow us to identify the users What are we putting out? Again keeping it vague - the functio...

Thinking About The Business Case First

Image
Thinking About The Business Case First Okay so I did not expect to be writing on my break and least of all at this time. But my brain just does its own thing! I also want to add that nothing I write in this blog matters. Absolutely nothing. What matters is what I do at work. What matters is how I perform. And these are all posts to help me to consolidate what I do and do it better. So here’s a quick 5 am thought: when doing problem solving. I am struggling to define problems. When I take a new ticket it’s not obvious what the problem is.  But what is completely obvious to me now is the first step. To think about it from the business perspective. For example: I was changing the way we do views the other day right? From functions to classes. But what would’ve helped me is thinking about the purposes that views serve in the first place. They are our endpoints right? They are what we need to hit to make our code happen. When changing the views I wish I had started off with: “I have som...

Comme si je n’existais pas, elle est passee a cote de moi, sans un regard, reine de Saba, j’ai dit Aicha prends tout est pour toi

Image
Comme si je n’existais pas, elle est passee a cote de moi, sans un regard, reine de Saba, j’ai dit Aicha prends tout est pour toi When I was a teenager a Touareg band came to visit my school. I jammed with them. Them singing Aicha together was the most beautiful musical performance I will ever see. How do you even follow that? I care so much about my work. I care so much about what I do. There’s something that just keeps me pushing and keeps me drilling because I care so much. I care so much about what it is that I do.  I have been told to “take those cares and transform them into demonstrating my performance.” 🎭 but sometimes I don’t always know how to do that directly. Right now my biggest concern is problem solving. I was told that I struggle with solving problems on a smaller scale but the thing is: I need to learn on the big scale: once I learn something on the big scale it is easier for me to translate it to the smaller one. It’s like if you wanted me to consistently run 5K ...

The Importance of Problem Solving in a Business Context

Image
The Importance of Problem Solving in a Business Context I am writing this one and then I am off. BYE. Okay so basically; I received some interesting feedback the other day that solving LeetCode style problems is not equivalent to solving problems in a business context. Let me explain. I have solved my fair share of LeetCode style problems in my time.  But contriving three functions to help the Elder Wizards find their spot at the dining table isn’t equal to understanding why we take in a JSON payload (or don’t), or to why we make third party calls, or to why we want to return a USEFUL JSON response in our business logic (!!!). I am happy to take this on board. I always prefer real business problems to fake coding problems. Always always always. Always. But why am I failing to demonstrate this enough? I guess I get lost in the code. I get overwhelmed by the code. I tell myself lies like “I’m not a technical person.” But these are lies of course. I think the code is going to be so ov...

Writing a Problem-Solving To Do List Again

Image
Writing a Problem-Solving To Do List Again After many many months the day of my holiday has finally arrived. Hooray! I am feeling much much better. I am going to have to take it easy but I am fine with that. I got told that it was “well-deserved”. Hooray! So before I go I would like to write up one more time what I think that my next steps are for improving my problem solving skills. Because more and more ideas just keep on coming into my head I need to ingrain a couple of ideas into my head. Think along the lines of my blog post last night “given input x, what are the steps necessary to return output y?” This needs to become second nature to me. Kind of like playing the piano - I don’t even have to think about it anymore. I just play  The other idea I have to ingrain in my head was around those three questions that changed my life. So:  What do I want this thing to do? What is it doing? What do I wanna TEST? Because your test is framed around what you want it to DO BECAUSE ON...

Salt Streams Out My Eyes And Into My Ears

Image
Salt Streams Out My Eyes And Into My Ears  I’m sorry. I just can’t stop writing blog posts. Maybe it’s because I’m going on holiday; I just feel as if I need to put all my thoughts out before then.  The good news is I’m feeling better; I think I’ll be able to go. This is amazing. But anyway; I have a story to tell. In February I lost my dream job. I wasn’t willing to compromise on either renewable energy or software engineering although people told me I would be mad to try and get both. So naturally I got both. However I didn’t quite realise the level I was being hired to; with the level jump and the backend and Python (I came from mostly frontend JavaScript, TypeScript and React) this year has been absolutely huge. Trust me what you have seen in the blog posts is NOTHING. Nothing compared to what I had to pull off behind the scenes. Nothing compared to the talks I had to have and the mountains and mountains of feedback I had to take on board. The journals I have filled out. T...

“What could’ve been, would’ve been, What should’ve been you”

Image
“What could’ve been, would’ve been, What should’ve been you” When I was a child my dad used to take me star spotting. If you walk across along that strip that we had to drive down to get there, the whole side is lined with wind farms. Absolutely everywhere. Everywhere the eye can see. Absolutely everywhere; everywhere that the eye can see. At the end of that strip there is a sub-station. And you drive past it and into it. Into the town where I was born. At the end of my road there is an offshore wind farm. It greets me every time I come home. Even in the dark the lights blink and they greet me. I do not come home in the light often enough. Even in the summer I came home in the dark every day.  When I do come home in the light though their beauty almost knocks me over. I almost keel over at their sight and at the beauty of them. When I go to the office I stand on the terrace and gaze out at them and only stop because I am late or too cold. When I go to Littlehampton or Worthing I se...

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

Image
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...

Thursday Mornings with Python, Part 8 - But It's A Wednesday

Image
Thursday Mornings with Python, Part 8 - But It's A Wednesday As I am going on annual leave tomorrow (good luck to me as I am still ill) I wanted to get one last Python session in so we've put it on a Wednesday. Hopefully I can get Sets done today.  This will be my last blog post in a while unless I get a flash of inspiration as I am going on retreat. I still have a couple of days to heal from the cough.  So it should all be alright. And I can take it super easy there. Introduction to Set Operations "A lot of the usefulness of a set container comes from the set operations." I had a brief introduction to one of these by my manager last week when I asked him for some real life examples of sets from the code. So cool! You can also combine these operations - WOW!!! You can perform complex logic. Set Unions This is like performing a merge.  This works on both sets and frozensets. (A reminder - a frozenset is a set that cannot be mutated - thanks. Mig...