Showing posts from 2022

Garden Arbor

  Here is the list of items: It helps to have   Rust-Oleum Marking paint (spray) to mark location and make sure to measure the dimensions and directions  accurately. Key steps for the project: First Part: Identify location, if you are in a HOA community, please seek approval.   Make sure you have a plan.  I planned simple 4x4x10 posts (2 ft into the ground) and then 4x4x12 for horizontal lumber and then additional 4x4x10 lumber for the width. These 4 bars provide all the required major support. I filled the gap with 2x4x10  bars and then finally 1x2x8 bars for plants to hold on to.  vine plants tendrils cant hold too big of a wood, so 1x2 makes an easy choice.   Getting this plan was a key step for me. Mark your Post locations, make sure you check the distances between posts across.  It doesnt hurt if few inches are off, but what matters is to get it accurate as possible. Digging post holes, is an important step, depending upon your location, it may be hard soil or it may have stones. 

psychological safety at work

 Here is my take on psychological safety. Safety is a feeling that can not be injected through trainings or by someone preaching in a all hands meeting.  It is a combination of many factors. No Fear with Team: Being comfortable to express , collaborate, disagree with a view point (not for shake of disagreement). No fear of failure: Being feeling freedom to Innovate, make changes and if something goes wrong, not being penalized as long as it is done in open and everyone have details. No one can predict future and issues.  Failures are part of the success story. If you are afraid of failure and never try, then, you never innovate.   No Fear of  Manager :  Team member should have the freedom to express freely with the manager. or upline managers.  There should be no punishments for bringing up issues.  Your compensation reviews, your bonus or RSUs should never get impacted because of some vigilante activities. No Fear of change:  Freedom from fear when you are working on code, you should

Trust and Communication

From a trust perspective, not advice but a possible suggestion is that if you think you have some misunderstanding with Mr or Mrs X , pls give it a try talking to him/her first and  go to next level only if that doesn't work.   Irrespective of the title, we are all humans and we all have our blindspots, we respond, react and many times we lose the actual issue and intent and start magnifying issues inadvertently. We are all here to help each other and for work. When it comes to communication, focus need to be "intended goal", may other things play a role that spoil the purpose. Our monkey mind many times confuses and make us get into "fight" or "flight" mode and  It is about how we train our mind and teaching it that "there is no war, this is no harm and the other party is not enemy". It is always Ok to talk to other person and if it is not going Ok, "Party" can tell "Other Party" that I am not comfortable discussing with

Mindful conversations

Life is not about fighting. We are not owners but tenants on this planets. When we know the big picture, we will work towards the intended goal and not get lost into the winning and losing trap. In order to have better results from your conversations, try to focus. Be present.  Be in the moment. Not in yesterday or not tomorrow or not being lost into some random thoughts.  Be open: As much as you present your thoughts, listen to the other party and their perspective. When you present, please have your data with you that is easily comprehending.  Similarly listen and sincerely try to understand other party. Train your monkey: Our mind plays monkey and thinks of too many things and some times these monkey thoughts start controlling you inadvertently. The way our mind is designed is to protect your self and it's dedication some times works negatively.  We need to keep telling our monkey mind that we are not into war and there are no real losers or winners sepately in a conversation. I

A philosophy of software design

My notes from the book  "A philosophy of software design".   this helps for me as a quick refresher and also can help others who do not find book reading interesting but are ok to read a blog post in few minutes. 1. Cognitive load  How  long does it take a new hire to push his first serious commit? is it day 1 or day 2?    if it is few weeks to months, then you got a serious problem.  Its cognitive load, if we need to burn lot of brain power to understand something, then it's a problem. Make it simple, don't pretend it to be simple. It is not about you, it's about other developer(s).  2. Tactical programming Just in time fixes that meet the current bug or need without worrying about complete design or long term aspects add more debit.  You get things working quickly, happy. But please note your code starts the clock and counts the interest. You or  your successor(s) have to pay back or go bankrupt.     Instead of tactical programming, we need to look for a cleaner

Being apologetic

 It was a moment of discovery and retrospection. I was crying for few hours but before I do that I apologized  everyone as a group and  many individuals personally.   Anyone who knew me know what I am and what it means to be. I was fighting bigger  causes for larger good and never hesitated to speak out openly and do not regret for that. It looks like I made some people sad and they have or may  build grudge against me,  it would be hurting them more than it can do to me.  Engineers are the core of IT companies and last thing I wanted to do is to hurt someone, what ever may be the underlying issue.   Mangers are typically plenty or easily replaceable but engineers and leaders are not.    I was doubting myself, what kind of a person I have become if I could hurt some engineer to a level they are not open to talk me?   thats terrible thing. It is against my own will, conscience  and existence.   Last thing I want to do is be a reason for some good people to lose sleep over thoughts of me

Make your own path

 The ironical sad thing about this world is that, it makes  binary decisions. You can either be a leader or follower.  If you are not taking control of your life, then it makes sure you follow something, sometimes you may make conscious decision on whom to follow but  many times you are just forced to follow something or someone.  Its very hard to figure out if you are in between (not being a leader or follower but something in between). Inertia in all forms and shapes follows the standard laws and will try to stop doing what you are doing but if you persist, your change is accepted eventually and becomes a standard thing.  when you want to make your own path, do not expect lot of manpower and resources and everyone waiting for your command, think of you being in a deep forest with no where to go, you have to do everything by yourself. build your own road.  But when you run into caves, don't struggle to  build the road, you MUST build the bridge.  You are not here to fix the univer


 It is really unfortunate to see what Ukraine is forced into. A war that it never wanted, an encroachment every civilian is fighting against.  A human rights violation that the stalwarts of the world are blind to!.  How the hell any country claim to be what it is when it can not involve into what ever they otherwise did in every other poor country.  May be rich countries don't fight wars with other rich countries, may be it is the protocol.  The heroics of the people and the army of Ukraine is amazing (unfortunately) to see, they are giving up their life for their country and to protect their country from a war they never asked for. Who gives these rich countries the right to loot other countries?  is there something called humanity still around? Why the heck no body is talking about it, what US is doing here and what Beijing is doing there? what about those so called best countries of the world next door in Europe doing?  are they all so incapable of doing anything there?

A Letter to manager

(A fictitious letter to myself, I am a manager myself). Hello My Dear Manager, When I hear you  teaching us the significance of missionary role than being mercenary, it sounded pretty promising.   At high level, I see every engineer as a "just a mercenary" or a "resource that does given task"  and someone doing something of  ask of someone on the top.   We make releases not knowing what is the end user of the release. We make it so that it's off our plate,  may be the release management, support or ops have no clue about what to do next, did we miss knowledge transfer or did we miss a whole lot of implementations or integrations and we never realized it? How did we miss helping other counter parts of our organization? You know what, it's may be a bi product of treating employees as mercenaries and expecting them to do everything may not work all the time. We solve problems and always keep solving problems, but are they right problems? if they were not, then

Trust me?

 Trust is very peculiar, we can pretend we have it, but it's hard to earn , easy to break. We earn by being honest, open and transparant.  We need to respect different views that we may not agree to. Fingers in our hands are not equal , if they were, it could have been a pretty bad design as hands wont serve the purpose, similarly the differences in our views and thoughts is what makes us special, we discuss, argue and debate, thats all healthy.  But thinking low of others ideas or stealing theirs or pretending our own ideas are great is not healthy and do not build trust.   Pretending to be someone else than what you are won't earn trust.   I think the key is to accept yourself as you are and then the world will accept you as you are!. Many times, we pretend we are demi gods and are near perfect, its ok  not to pretend that way. Its ok to have mistakes, but not ok to cover it up.  you can be honest about it.  Its ok to get upset, cry or even yell, it means you are living and n

The Leadership puzzle

As I keep reading and thinking about leadership, Books are written based on perceptions with evidence and making us believe we are inherently wrong and need to do corrective actions.  If we have to believe these books, the authors should have been the most successful leaders of the world, ironically they are not.  Fiction writers make more money than motivational ones. Most of these books are biographies of experiences, good to read but  believing they are the medicine for all our problems is not correct. Ok and Not Ok It's ok to experience mistake, not ok to repeat and not learn out of it. It is ok to not to have eye to eye contact when you are thinking while conversation, it's not OK to make your point communicated It is ok to use filler words while communicating,  it's not OK to fill with lies and fake promises. It's ok to be yourself , it's not OK to pretending to be super human and somebody else. Leadership is a puzzle that comes in different levels and sizes a

Total Leadership

 Based on the book " Total Leadership  Be a Better Leader, Have a Richer Life" by Stewart  D. Friedman Practice of leadership has  3 core aspects.  Be Real, be authentic Be Whole, act with integrity respect the whole person. Be Innovative, experiment with your team interests and how you get work done. Also be present and respect the 4 way view of life.

Game on!

 "If something has to go wrong, it will"  says Murphy's law.    What a ride that I have been going through last few months.  Probably these challenges are to strengthen me. Believers may say " God will never give you more than you can handle".   By design, everyone is  working for something they believe and thats what makes them.  When one try to expect changes that may help for larger good, the inertia in the areas of focus (where changes are expected) does exhibit strength of being inert. It is not moving objects, even the inert objects can create more trouble than one can imagine.  Laws of physics prove that and we can correlate this at philosophical level for various things we go through in life. Irony around the success and failure is that you never know  about it during the practice, and winning is appreciated while failures haunt.  The process of practice towards the game is often goes unnoticed.   When faced with challenges, how do I deal with it? when t

Software farming

What is software? is it science? or is it engineering?   If it is science, what are the principles?  who are the people behind it?.  Our day to day life is so much influenced by learning the laws of physics, chemistry , mathematics and all applied and ancillary areas.   We needed an archimedes (3rd century BC) to discover  that u pward thrust of an object being immersed is equal to the weight of the fluid getting dispersed, we needed a Newton, Einstein and Edison and many others and their life time keenness to invent solutions to problems. We know the laws of science,  how and why we are able to thrive on earth, a bit of a change in gravity of earth can make all life disappear, but it is so much orderly, the sun, earth and other planets are all are working in such a perfect pattern and we know the formulae behind it.   Every tool we are using (say plumber, electrician, farmer or a mechanic) has many years of evaluation. and engineering is essentially applied science.  Software is not s

Why we fail (as leaders)

(I wrote this first on linkedin)  The more I think of it, my favorite quote I use often, "it's wrong or sin to milk a bull". having right people at right places is important. If not if we keep a bull in the place of cow, how ever hard you plan and budget loads of money, you will never get milk. Also, I strongly believe, if you want to have a baby, you need to work for it, somebody else cannot have sex and have a baby and you declare as your baby. DNA test can prove who is the real parent. Leadership is not like a gender assigned at birth but something should be earned and not something that magically bestowed upon. having right team is an essential ingredient of success. who believe in a goal and work collaboratively and argue/debate/question regularly to validate their dream. As  John Doerr  says we need team of missionaries , not teams of mercenaries. unfortunately, we use engineers as Mercenaries. This is true of many failed products.


(I wrote this first on linkedin)   "INSPIRED" by  Marty Cagan  is for me a horror movie version product mgmt realities. Someone makes decisions and everyone is forced to March the line and we burn time , money and some how we build the product someone asked for, just to realize it has no real value. we often build products in "lipstick on the pig" model. we damage and damage and add colors to it. I like this quote "UX is like a joke, if you have to explain it, it is not good". also another relevant forward I remember, "Explaining a Joke is like doing an autopsy, if it is not yet dead, it will be". One of the most abused word or process in software companies is Agile, we actually spent lot of money to get training and then pretend follow it. Waterfall model is more preferred than the psuedo agile methodology where it is used to keep engineers busy on doing something that eventually fails and then put the blame on engineers. Successful companies in

4 Dimensions of Agile

 This is the weekend read result of  Clean Agile  : Back to Basics of Uncle Bob (Robert  Martin.   It is kind of an  amazing biography of software practices in the last 20 years  (and may be beyond).   They  most companies are using agile is by jailing the spirit behind it.  Instead of talking more of how we are failing, I can focus on what my perspective of agile process based on the book reading as well as experiences and other reads. Agile has  4 different dimensions. Business Developers Collaboration Managers  First some basics The Manifestos Agile Manifesto Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more. Software Craftsmanship  Manifesto As aspiring Software Craftsmen we are raising the bar of  professional software development by practicing i