An incomplete list of skills engineers need beyond coding

Over the weekend I came across The Manager’s Path, written by Camille Fournier, through Addy Osmani’s post on LinkedIn. This is a valuable resource for both new and experienced managers seeking guidance and insights on navigating the challenging world of management. Fournier, a former CTO, draws from her own experiences and provides a comprehensive roadmap for individuals transitioning into managerial roles and those already in leadership positions.

One of the key strengths of The Manager’s Path is its holistic approach to management. Fournier takes into account the different stages of a manager’s career, starting from an individual contributor and progressing to technical lead, manager, director, and ultimately executive roles. By doing so, she acknowledges the unique challenges and skill sets required at each level, helping readers understand the transitions they will face and providing practical advice for success.

The book also delves into the various aspects of management, covering topics such as building and leading teams, effective communication, and managing stakeholders. Fournier emphasizes the importance of developing a management style that aligns with one’s values while remaining adaptable to different situations. She provides real-life examples and case studies to illustrate her points, making the content relatable and actionable.

One aspect that sets The Manager’s Path apart is Fournier’s focus on technical leadership. As a former CTO, she understands the dynamics of managing technical teams and addresses the unique challenges faced by managers in technical roles. She discusses the delicate balance between maintaining technical expertise and transitioning into a leadership role, offering practical tips on how to handle this transition successfully.

Furthermore, Fournier emphasizes the significance of continuous learning and personal growth as a manager. She encourages managers to seek feedback, invest in their own development, and build supportive networks. The book provides resources and recommendations for further reading, ensuring that readers have access to a wealth of knowledge beyond the pages of this book.

In conclusion, The Manager’s Path by Camille Fournier is a must-read for anyone aspiring to or currently in a managerial role. Fournier’s comprehensive approach, coupled with her practical insights and relatable examples, makes this book an invaluable guide for navigating the complexities of management. Whether you are a new manager or an experienced one looking to enhance your skills, this book offers a wealth of wisdom to help you thrive in your role.

Here are the 20 points I loved most from the book!

  1. How to run a meeting, and no, being the person who talks the most in the meeting is not the same thing as running it 
  2. How to write a design doc, take feedback, and drive it to resolution, in a reasonable period of time
  3. How to mentor an early-career teammate, a mid-career engineer, a new manager who needs technical advice
  4. How to indulge a senior manager who wants to talk about technical stuff that they don’t really understand, without rolling your eyes or making them feel stupid
  5. How to explain a technical concept behind closed doors to a senior person too embarrassed to openly admit that they don’t understand it
  6. How to get another engineer to do something for you by asking for help in a way that makes them feel appreciated
  7. How to get other engineers to listen to your ideas without making them feel threatened
  8. How to listen to other engineers’ ideas without feeling threatened
  9. How to give up your baby, that project that you built into something great, so you can do something else
  10. How to teach another engineer to care about that thing you really care about (operations, correctness, testing, code quality, performance, simplicity, etc)
  11. How to communicate project status to stakeholders
  12. How to convince management that they need to invest in a non-trivial technical project
  13. How to build software while delivering incremental value in the process
  14. How to craft a project proposal, socialize it, and get buy-in to execute it
  15. How to repeat yourself enough that people start to listen
  16. How to pick your battles
  17. How to help someone get promoted
  18. How to find interesting work on your own, instead of waiting for someone to bring it to you
  19. How to tell someone they’re wrong without making them feel ashamed
  20. How to take negative feedback gracefully

Radiant Resilience: Shining Bright Despite Intimidation

In our journey through life, we encounter various individuals who may feel intimidated by our presence, accomplishments, or unique qualities. This intimidation can stem from a range of reasons, such as envy, insecurity, or fear of being overshadowed. However, it is essential to recognize that we have the power to rise above these challenges and continue shining brightly. How do we shine even when others are intimidated by us? Here are a few things that can help us maintain our radiance in the face of adversity.

Self-Confidence
Self-confidence is the cornerstone of radiance and resilience. When others are intimidated by us, it often indicates that they recognize our strength, achievements, or potential. By cultivating self-confidence, we can acknowledge our worth and embrace our abilities without arrogance. Genuine self-assurance allows us to maintain our inner light, regardless of others’ reactions, and empowers us to navigate through intimidation with grace and poise.

Authenticity
Embracing our true selves is a powerful way to shine amidst intimidation. Remaining authentic in our words, actions, and choices enables us to connect with others on a genuine level, even if it unsettles them. Authenticity radiates from within, and when we stand firm in our beliefs and values, we inspire others to do the same. By refusing to dim our light to accommodate others’ discomfort, we foster an environment of acceptance and encourage others to embrace their own uniqueness.

Empathy and Kindness
While some people may respond to intimidation with defensiveness or aggression, choosing empathy and kindness can lead to a more constructive outcome. Recognizing that intimidation often arises from others’ insecurities or struggles allows us to respond with understanding rather than retaliation. By approaching the situation with empathy, we can help alleviate their fears and create an environment of support and compassion. Our ability to be kind despite intimidation showcases our inner strength and emotional maturity, thereby reinforcing our radiant spirit.

Focus on Personal Growth
When faced with intimidation, it is crucial to shift our focus from others’ reactions to our own personal growth. Rather than allowing intimidation to undermine our confidence, we can view it as an opportunity to further develop our skills and abilities. By dedicating ourselves to self-improvement, we continue to refine our talents and expand our knowledge, contributing to our shining aura. This growth-oriented mindset allows us to transcend the negativity of intimidation and transform it into motivation.

Surrounding Ourselves with Support
No one can shine brightly in isolation. Cultivating a supportive network of friends, mentors, and loved ones provides a solid foundation for us to overcome intimidation. Surrounding ourselves with people who celebrate our achievements, uplift us during challenging times, and provide constructive feedback is essential. Their encouragement and guidance bolster our resilience and help us maintain our radiance, even in the face of intimidation.


Intimidation may be an inevitable part of life, but our response to it determines whether we continue to shine or allow ourselves to be diminished. By nurturing self-confidence, embracing authenticity, practicing empathy and kindness, focusing on personal growth, and surrounding ourselves with supportive individuals, we can maintain our radiance. Let us remember that our light is not diminished by others’ discomfort but instead serves as a beacon of inspiration for those who are yet to embrace their own brilliance. By shining brightly, we create a positive ripple effect, inspiring others to embrace their potential and illuminate their own unique path.

Respect the Invisible

In a world where everyone is constantly facing their own battles and challenges, kindness emerges as a powerful force that can positively impact lives. The simple act of being kind is an essential virtue that can bring about understanding, empathy, and support for one another. It is a reminder that behind every face we encounter, there is a story, a struggle, and a unique journey that shapes their experiences.

A dear friend shared this lovely story that inspired this post


A car ahead was moving like a turtle and not giving me way inspite of my continuous honking!

I was on brink of losing my cool when I noticed the small sticker on the cars rear.

It reads…
“Physically challenged; Please be patient.”

And that changed everything!! I immediately went calm and slowed down!!

In fact I got a little protective of the car and the driver.

I reached work a few minutes late, but it was ok!

And then it struck me. Would I have been patient if there was no sticker!?

Why do we need stickers to be patient with people!?

Will we be more patient and kind with others if people had labels pasted on their foreheads?

Labels like:
~ Lost my job
~ Fighting cancer
~ Going through a bad divorce
~ Suffering Emotional abuse
~ Lost a loved one
~ Feeling worthless
~ Financially messed up
…..and more like these.

Everyone is fighting a battle we know nothing about.

The least we can do is be patient and kind.

We don’t have to put people through the pressures of explaining over times before we understand their pains and offer our little best.

As you go through each passing day always remember there’s an invisible label on everyone.

A simple virtue of patience may just be the respect you’re according that invisible label.

The Feynman Technique: Mastering Concepts through Simplicity and Clarity

The pursuit of knowledge is a lifelong journey that often presents challenges in understanding complex concepts. Richard Feynman, a Nobel laureate physicist, devised a simple yet powerful technique to overcome this hurdle – the Feynman Technique. This method, named after the brilliant mind who created it, emphasizes the art of simplification and clarity as the key to mastering any subject.

Despite all of his accomplishments, Feynman thought of himself as “an ordinary person who studied hard”. He believed that anyone was capable of learning with enough effort, even complex subjects like quantum mechanics and electromagnetic fields.

There’s no miracle people. It just happens they got interested in this thing and they learned all this stuff. There’s just people.

Richard Feynman

What made Richard Feynman Richard Feynman (according to Richard Feynman, at least) wasn’t innate intelligence, but the systematic way in which he identified the things he didn’t know and then threw himself into understanding them inside and out. Throughout his work and life, Feynman provided insights into his process for considering complex concepts in the world of physics and distilling knowledge and ideas with elegance and simplicity. Many of these observations about his learning process have been collected into what we now call “The Feynman Technique”. 

The Feynman Technique is a four-step process for understanding any topic. This technique rejects automated recall in favor of true comprehension gained through selection, research, writing, explaining, and refining. He rejected rote memorization; believed that learning should be an active process of “trial and error, discovery, free inquiry”; and held that if you couldn’t explain something clearly and simply it was because you didn’t understand it well enough.

His philosophies make up the Feynman Technique:

  • Choose a concept to learn. Select a topic you’re interested in learning about and write it at the top of a blank page in a notebook.  
  • Teach it to yourself or someone else. Write everything you know about a topic out as if you were explaining it to yourself. Alternately, actually teach it to someone else.
  • Return to the source material if you get stuck. Go back to whatever you’re learning from – a book, lecture notes, podcast – and fill the gaps in your knowledge.
  • Simplify your explanations and create analogies. Streamline your notes and explanation, further clarifying the topic until it seems obvious. Additionally, think of analogies that feel intuitive.

I couldn’t reduce it to the freshman level. That means we really don’t understand it.

Richard Feynman

The Feynman Technique doesn’t let us fool ourselves into thinking we’re masters of a subject when we’re really amateurs. Each step of the process forces us to confront what we don’t know, engage directly with the material, and clarify our understanding.

By employing the Feynman Technique, you gain a deeper and more comprehensive understanding of the subject matter. It encourages active learning, critical thinking, and a willingness to confront and address gaps in knowledge. Moreover, the ability to explain complex ideas in simple terms is a valuable skill in various fields, from academia to business and everyday life.

In conclusion, the Feynman Technique provides a practical and effective approach to learning and mastering any subject. By simplifying concepts and explaining them to others, you not only enhance your own understanding but also develop the skills necessary to communicate effectively. With the Feynman Technique as your guide, the journey of learning becomes an exciting adventure of discovery and growth.

St. Anthony of Padua

St. Anthony of Padua, born Fernando Martins de Bulhões in Lisbon, Portugal in 1195, was a renowned Franciscan friar, preacher, and theologian. His life was marked by deep spirituality, intellectual brilliance, and a profound commitment to serving others. St. Anthony is widely celebrated for his eloquent preaching, his dedication to the poor and oppressed, and his miraculous ability to find lost items.

St. Anthony’s journey to holiness began when he joined the Augustinian Canons Regular at a young age. However, witnessing the return of the bodies of five Franciscan martyrs inspired him to embrace the Franciscan way of life. He joined the Franciscan Order and embarked on a life of poverty, simplicity, and humility.

St. Anthony’s gift of preaching was evident from the early days of his religious life. His words captivated the hearts of his listeners, as he fearlessly proclaimed the Gospel message. He possessed a deep knowledge of scripture and theological insights that allowed him to convey complex truths in a simple and relatable manner. St. Anthony’s sermons attracted vast crowds, and his reputation as a powerful preacher spread far and wide.

While St. Anthony’s preaching brought him recognition and acclaim, his true love was for the marginalized and downtrodden. He tirelessly worked for the poor, hungry, and oppressed, advocating for their rights and alleviating their suffering. St. Anthony’s compassion extended beyond human beings, as he showed great care for animals and the environment.

One of the most famous aspects of St. Anthony’s life was his ability to find lost objects. It is said that when a novice took his Psalter, St. Anthony prayed for its return, and the novice was filled with guilt and returned the book. This miraculous event, along with many others, led to St. Anthony becoming the patron saint of lost things.

St. Anthony of Padua’s life serves as an inspiration to people of all walks of life. His dedication to the Gospel, his unwavering commitment to the poor and oppressed, and his miraculous intercession make him a beloved figure in the Catholic Church and beyond. St. Anthony’s teachings and example continue to resonate today, reminding us of the transformative power of faith, love, and compassion.

SwiftData: Apple’s New Persistence Framework

SwiftData, a new framework introduced at WWDC 2023, provides a Swift-like API for working with persistence in iOS apps. It simplifies the usage of Core Data by offering a more user-friendly syntax, making it easier to define models, access and query data, and handle data insertion and deletion.

An important distinction to make here is that SwiftData still uses the underlying storage architecture of Core Data that iOS developers are very familiar with. SwiftData simply presents a more user-friendly syntax for working with Core Data. If you’ve worked with Core Data in the past, you’ll find SwiftData’s new syntax simply amazing.

Ever since Swift came out, using Core Data with your app has always seemed out of place. All of the “Swift-y” features that came out each year with Swift and SwiftUI were leaving Core Data, which had a deep Objective C heritage, in the dust. 

A good example here is the .xcdatamodeld, or Schema Model Editor, file. This file is used to define your database’s schema.

This is a convenient way to define all the elements of your model, but it feels separate from the rest of your code. In fact, the compiler uses the schema to make class files for you, but they’re located in the derived data of your project! This technique also differs from the approach taken in SwiftUI, which pushes developers toward defining everything in code instead of separate helper files like storyboards.

The introduction of Swift macros in Swift 5.9 looks like it’ll be a game changer. There’s sure to be a lot of content to cover Swift macros in the near future, so for now, here are some of the highlights while checking out SwiftData.

Here is a model for a User class

class User {
    var name: String
    var email: String?
    var hobbies: [Hobby]
}

If I were using Core Data, I’d have to go into the Schema Editor, add a new entity, and add attributes for the properties. With SwiftData, that’s all done with one addition, @Model:

import SwiftData
​
@Model
class User {
    var name: String
    var email: String?
    var hobbies: [Hobby]
}

That’s it! Our User class is now a valid model for use in SwiftData, which has its own import when you want to use it. 

The @Model macro sets up a perfectly valid model, but you can also make customizations. For example, to ensure the email is unique, you can add a macro to that property:

@Model
class User {
    var name: String
    @Attribute(.unique) var email: String?
    var hobbies: [Hobby]
}

You can even define deletion rules for the relationships using the @Relationship macro:

@Model
class User {
    var name: String
    @Attribute(.unique) var email: String?
​
    @Relationship(.cascade)
    var hobbies: [Hobby]
}

How do we manage persistence? Gone are the days of the Persistence.swift file for initializing the persistence stack for your app. SwiftData has a new modifier that lets you define exactly which types you want to consider part of your model:

@main
struct UserApp: App {
​
    var body: some Scene {
        WindowGroup {
            ContentView()
        }
        .modelContainer(for: [User.self, Hobby.self])
    }
}

The modelContainer(for:) modifier takes an array of types you want your model to track.

Accessing data also has never been easier! With a model defined and the modelContainer injected into the environment, you can access your database entries!

@Query var users: [User]
var body: some View {
    List(users) { user in
        NavigationLink(user.name, destination: UserView(user))
    }
}

You can also customize the query to handle things like sorting:

@Query(sort: \User.name, order: .forward) 
var users: [User]
​
var body: some View {
    List(users) { user in
        NavigationLink(user.name, destination: UserView(user))
    }
}

Adding, Updating and Deleting data is also much easier!

SwiftData has introduced a much simpler way to persist your data in your Swift apps. Thanks to Swift macros, you can instantly make your models, in code, SwiftData ready and configure them to your liking. With a new modifier, you can access the context, and with the new @Query property wrapper, you can easily perform queries.

One more cool thing is that the @Query property wrapper is all set up for Observation, so your user interface stays up to date with the database! Pretty sweet right? There’s a lot packed into a little bit of configurable syntax under the hood. 


Where to Go From Here?

WWDC has a great set of videos to get an introduction to SwiftData:

I do hope you enjoyed this quick look at SwiftData, and if you have any questions or comments, please leave them below!

Adjusting Your Attitude: A Path to a Stress-Free Life

In today’s fast-paced and demanding world, stress has become an unwelcome companion for many. The pressures of work, relationships, and daily responsibilities can easily overwhelm us, affecting both our physical and mental well-being. However, by adjusting our attitude, we can cultivate a mindset that promotes resilience and helps us navigate life’s challenges while remaining stress-free.

First and foremost, it’s essential to recognize that our attitude plays a significant role in how we perceive and respond to stressful situations. Embracing a positive attitude allows us to approach challenges with a sense of optimism and resilience. Rather than dwelling on the negative aspects of a situation, we can focus on finding solutions and opportunities for growth. By shifting our perspective, we can transform stress into motivation and inspiration.

One effective way to adjust our attitude is through practicing gratitude. By consciously acknowledging and appreciating the good things in our lives, we shift our attention away from stressors. This simple act of gratitude helps us maintain a balanced perspective, reminding us of the positive aspects that exist alongside the challenges we face. Incorporating gratitude into our daily routine, such as through journaling or expressing appreciation to others, can have a profound impact on our overall well-being.

Another crucial aspect of adjusting our attitude is cultivating self-compassion. Often, we are our own harshest critics, setting impossibly high standards and berating ourselves for perceived failures. By practicing self-compassion, we learn to treat ourselves with kindness and understanding. We recognize that mistakes and setbacks are part of being human, and we give ourselves permission to learn and grow from them. This mindset shift helps us alleviate self-imposed stress and fosters a healthier and more forgiving relationship with ourselves.

Furthermore, embracing a mindful approach to life can significantly contribute to our stress-free journey. Mindfulness involves being fully present in the current moment, without judgment. By practicing mindfulness, we become more attuned to our thoughts, emotions, and physical sensations, allowing us to respond to stressors with clarity and composure. Engaging in mindfulness activities such as meditation, deep breathing exercises, or mindful walking helps us cultivate a sense of inner calm and reduces the grip of stress on our lives.

In conclusion, adjusting our attitude is a powerful tool for maintaining a stress-free existence. By adopting a positive mindset, practicing gratitude, cultivating self-compassion, and embracing mindfulness, we can navigate life’s challenges with greater ease. Remember, stress is not an unavoidable burden but rather a response that can be managed and transformed. By adjusting our attitude, we can lead a more balanced and fulfilling life, free from the shackles of stress.


Here is Michael Buble’s Feeling Good which definitely makes me feel good every single time I hear it!

It’s a new dawn
It’s a new day
It’s a new life
For me
And I’m feeling good
I’m feeling good

Apple’s WWDC 2023: Vision Pro & iOS 17

Each year at WWDC, Apple’s Worldwide Developers Conference, the company showcases what’s next for its biggest platforms — iOS, macOS, and more — and what developers can do to make apps and services for them. Let’s take a look at two key announcements made at the keynote address on Monday, 5 June 2023.

Apple Vision Pro, a new headset

Apple/Screenshot by CNET

The Vision Pro is a personal display on your face with all the interface touches you’d expect from Apple, with an operating system that looks like a combination of iOS, MacOS and TVOS.

The device itself looks like other headsets, though the glass front hides cameras and even a curved OLED outer display. The headset is secured to the wearer’s head with a wide rear band. You also have an external battery back that connects over a cable and sits in your pocket. There’s a large Apple Watch-style digital crown on the right side that lets you dial immersion (i.e. the outside world) in and out.

The Vision Pro has three-element lenses that enable 4K resolution, though you can swap out lenses, presumably for different vision capabilities. Audio pods are embedded within the band to sit over your ears, and “audio ray tracing” maps sound to your position. A suite of lidar and other sensors on the bottom of the headset track hand and body motions.

The homescreen of the Apple Vision Pro Apple

Technically speaking, the Vision Pro is a computer, with an M2 chip found on Apple’s highest-end computers. But a new R1 chip processes all the other headset inputs from 12 cameras, five sensors and six microphones, and sends it to the M2 to reduce lag and get new images to its displays within 12 milliseconds. The Vision Pro runs the new VisionOS, which uses iOS frameworks, a 3D engine, foveated rendering and other software tricks to make what Apple calls “the first operating system designed from the ground up for spatial computing.”

Interior cameras track your facial motion, which is projected to others when on FaceTime and other video chatting apps. The interface uses hand motions to control the device, though there are also voice controls. It’s tough to tell how these controls will work, and we’d expect that users will need some time to adapt to not using a mouse and keyboard. 

There is a lot more to this stunning device, take a look at ’s video introducing Vision Pro Introducing  Vision Pro

Every single person who reviewed the device after the keynote were left mesmerised by the experience. However the one key thing that could be an issue is that it is SUPER EXPENSIVE. It will retail for $3,499. For comparison, Meta announced its Quest 3 last week at the price point of $499, while its Quest 2 is retailing for $299. Of course the Vision Pro is way more impressive than the Quest in terms of hand tracking, integrating with the  ecosystem and much more. With micro-OLED displays, spatial audio, a 3D-like camera and many other high-end features, it’s no surprise that the Apple Vision Pro is a bit on the pricey end. So, it might be more designed for enterprise users than ordinary consumers.

And while everyone agrees $3,499 is a huge amount of money, that doesn’t mean people won’t buy it. Where the discussion actually lies is whether or not the Vision Pro is worth that astronomical asking price. Would you be willing to pay $3,499 to get your hands on an Apple Vision Pro headset? Let me know in the comments below.


iOS 17

 claims that iOS 17 brings a ton of quality-of-life improvements. However only a few key updates got me excited.

  • Interact with a widget from your Home Screen, Lock Screen, or in StandBy. Complete a to-do, play or pause a song or podcast, or access your Home controls to get tasks done in the moment.
  • A new safety feature, Check In, sends a note to a trusted contact when you reach a location — like when you make it home safe after late-night travel. If it’s taking you longer to get to a destination, you’ll be prompted to extend the timer rather than alert your contact. It also shares your battery and signal status. Check In is end-to-end encrypted.
  • The Photos app now recognizes your pets, such as cats and dogs, and places them in the people section.
  • AirDrop has been a helpful tool to send files between Apple devices, but now you can share your contact info with Name Drop. You can choose what you want to share between email addresses, phone numbers and more.
  • Journal is a new secure app for personal recollections. Apple is pitching it as a gratitude exercise, but iOS will auto-include activities like songs and workouts you’ve done to your personal log. 
  • A new mode, StandBy, converts an iPhone to an alarm clock when it’s charging and rotated horizontally. It gets smart interactions like a large visible clockface along with calendar and music controls.
  • Audio messages are now transcribed, so you can read them in the moment and listen later.

Unlike previous iOS announcements, this one left me feeling disappointed.

There were many other updates announced. Which ones did you like or think are pretty cool? Let me know in the comments below.

Learning from Mistakes: The Tale of the Broken Vase

In life, mistakes are often seen as stumbling blocks, but they can also serve as stepping stones towards growth and self-improvement. One such lesson came to me through a story I read of a personal experience involving a cherished family heirloom, a delicate porcelain vase that had been passed down through generations.

One sunny afternoon, as a curious and carefree child, the author found himself left unattended in the living room. Drawn to the captivating vase displayed on a high shelf, he couldn’t resist the temptation to examine it more closely. Ignoring the cautionary whispers in his mind, he reached for it, only to accidentally knock it off the shelf.

The world seemed to slow down as the vase descended, shattering into a thousand pieces upon impact with the floor. Panic set in, and guilt washed over him like a tidal wave. How could he have been so careless? Tears streamed down his face as he realized the magnitude of my mistake.

When his parents discovered the broken vase, they were understandably upset. However, rather than scolding or punishing him, they approached the situation with wisdom and compassion. They sat him down and gently explained that mistakes are a natural part of life. It was how we respond to them and learn from them that truly mattered.

Together, they gathered the fragments of the shattered vase, symbolizing the opportunity for redemption. As they painstakingly reconstructed the pieces, his parents encouraged him to reflect on what had happened and think about the consequences of his actions. They emphasized the importance of being more mindful and responsible in the future.

That incident became a turning point in his life. It taught him humility, accountability, and the value of learning from mistakes. He understood that avoiding mistakes altogether was impossible, but taking responsibility for them and seeking growth was within my control.

After reading this story, I approached life with a newfound sense of resilience and determination. I embraced challenges as opportunities for growth, learning from each misstep along the way. Through perseverance and self-reflection, I developed a greater understanding of my strengths and weaknesses.

Today, as I reflect upon that story of the broken vase, I am grateful for the lessons it taught me. It reminds me that mistakes do not define us but rather shape us into better versions of ourselves. By accepting responsibility for our actions and learning from our missteps, we unlock the potential for personal growth and become more resilient individuals.

In conclusion, the story of the broken vase serves as a poignant reminder that mistakes are not to be feared but rather embraced as valuable teachers. They provide us with the opportunity to learn, adapt, and become wiser. By acknowledging our errors, making amends, and striving to improve, we transform our mistakes into stepping stones towards a brighter future.


Here’s a lovely rendition of Shakira’s “Try Everything”

“Nobody learns without gettin’ it wrong”

Drinking from my Saucer

Do you remember older generations drinking from their saucer? Then today I came across this poem that made me feel there was symbolism to the coffee ritual.

Drinking from My Saucer
by John Paul Moore

I’ve never made a fortune and it’s probably too late now.
But I don’t worry about that much, I’m happy anyhow.

And as I go along life’s way, I’m reaping better than I sowed.
I’m drinking from my saucer, ‘Cause my cup has overflowed.

I don’t have a lot of riches, and sometimes the going’s tough.
But I’ve got loved ones around me, and that makes me rich enough.

I thank God for his blessings, and the mercies He’s bestowed.
I’m drinking from my saucer, ’Cause my cup has overflowed.

I remember times when the went wrong, my faith wore somewhat thin.
But all at once the dark clouds broke, and the sun peeped through again.

So God, help me not to gripe about the tough rows that I’ve hoed.
I’m drinking from my saucer, ‘Cause my cup has overflowed.

If God gives me strength and courage, when the way grows steep and rough.
I’ll not ask for other blessings, I’m already blessed enough.

And may I never be too busy, to help others bear their loads.
Then I’ll keep drinking from my saucer, ‘Cause my cup has overflowed.