Saturday, 4 July 2020

Blog Post #117: Pair programming through a pair of numbers!

In IT parlance, paired programming has gained more traction over the last few years and has proved useful on many occasions as it has some of the following benefits

- Each individual has an eye on the code written by the other all the time
- Each individual acts a gate for the other as far as quality checks is concerned
- For the program to succeed, both need to deliver and hence there is always the focus to get things right
- Need for an independent peer review is reduced given there is always an additional pair of eye looking into this during development

Here's an analogy using numbers on how number pairs exhibit similar pattern/characteristics!

Let's look at the number pair 169 and 196 (programmers/developers in IT parlance) and see what we immediately observe and what is not so apparent

- 169 and 196 are both perfect squares of numbers adjacent to each other - 13 and 14. Imagine 13 and 14 as interns/trainees who mature as an experienced programmer in few years (their perfect squares!)

- Though 169 is odd and 196 is even, they both are anagrams of each other and like 2 programmers pairing with each other they bring in different skillsets but exhibit few things in common!

- Now let's assume the programmers add a new skill to their repertoire as they gain more experience. Drawing analogy to numbers, let's insert the number 3 in both 169 and 196 as follows - 1369 and 1936.  The resultant number is a larger 4 digit number (more experienced programmer) and more importantly retains the fundamental characteristic - Yes... Both of them are still perfect squares of 37 and 44 respectively

- We saw 13 and 14 were the square-roots or "intern equivalent" of 169 and 196. 13 + 14 would give us 27 or 3 ^ 3. Similarly the more experienced 37 and 44 (square-root of 1369 and 1936) add up to 81 or 3 ^ 4

-  On similar lines, inserting 2 and juggling around with the digits of 169 and 196, gives us few other perfect squares and cubes - 1296, 2916, 9216, 9261! This indicates that the more skill that the programmers acquire the more versatile they become

- When we concatenate 169 and 961, we would get a palindrome no doubt which is 169961 but more interestingly 169961 is a product of 11 and 15451 which are both palindromes. The more solid the programmer pair is the greater they can achieve by breaking down the work in smaller parts

Last but not the least - a 12 month cycle is typically when every individual is evaluated for performance in their org but nothing works better than two or more individuals coming together and deliver towards an organizational goal! Here you go..

169 + 196 results in 365 which is one full year in terms of number of days and with an addition of number 1 (which is also a perfect square) it becomes a leap year - Empower and enable the programmers so that they combine and deliver as per the larger organization goal and with that little additional help/push even exceptions can be handled (See number 1 as the manager/boss who removes impediment by adding value)

Friday, 22 May 2020

Blog Post #116: Building a cohesive team unit!

I was contemplating what should be the theme for my next blog and when I looked around, the one thing that stood out over the last 2 months of lockdown within my organization was quick adoption of technology as per the new normal, greater collaboration & brilliant teamwork and high engagement levels across locations

Over the last 10-12 years in my career, I am grateful to have got the opportunity and experience in building high performance teams from grounds-up at Infosys followed by SingPost and more recently in my current tenure at Mr Cooper. I know how critical it is to bring together diverse set of individuals who have the right attitude, passion, different levels of expertise across technology/domain, varying levels of expectations but eager to work towards a common goal aligning with the core values and fabric of the organization. These individuals join at various points in time during this journey and if everyone is clearly communicated about the final goal, it can do wonders to the organization as well as end customers

Here's my humble attempt as always to highlight the process of building a high performance work ethic team working towards a common goal, through few interesting number sequence and patterns

Example 1:

Let's start with number 1 which is a perfect square (1 ^ 2)

Now let's get 6 to join 1 - 16 - which is also a perfect square (4 ^ 2)

Next 9 to on-board the journey (9 is a perfect square) - 196 is one of the resulting number - which is also a perfect square (14 ^ 2)

Now we welcome number 2 to the team (lowest even prime) - 1296 - which is again a perfect square (36 ^ 2)

Depending on the new requirements you ramp-up on few skillsets and on-board 9 again resulting in 12996 - which is again a perfect square (114 ^ 2)

Example 2:

Start with number 1 again since it is a perfect square (1 ^ 2)

6 is next on-board to make it 16 - a perfect square (4 ^ 2)

Next 9 again but with a different outcome than in example 1 - 169 - which is 13 ^ 2

Let's on-board 3 post this - 1369 which is 37 ^ 2

Next a brand new team member with a new skillset (a perfect cube this time!) - 8 - 13689 which is 117 ^ 2

What you would notice in these two examples, is that each number represents a new team member in a corporate world set-up, coming on board at various points in time, to join your team with different expectations, characteristics (skillset) and diversity (odd or even or prime numbers) but the core fabric and final goal, which in this case the resultant number being a square, is kept intact!

That's what organizations should strive for - Keep the core values, fabric, work ethic and culture intact while building a team of diversely talented team members and as time goes by everyone will align towards a common goal, if given that clarity at the boarding point and carry others along on the way

Saturday, 25 April 2020

Blog Post #115: The curious case of Zip codes!

This blog is dedicated to everyone at Mr Cooper and some fun using Maths to show the close collaboration across US and India offices!

US Corporate office Zip code at Coppell, TX is 75019

India Corporate office Zip code at Chennai, TN is 600089

Let's look at some striking similarities

a) Digits of 75019 adds up to 22 while that of 600089 adds upto 23 - These are like thick pals next door!

b) Both 75019 and 600089 are not prime numbers and more importantly number 7 is a common factor for both!

75019 - 1531 * 7 * 7
600089 - 1453 * 59 * 7

c) Now closely look at the first factor for both numbers in the earlier step - 1531 and 1453. Difference is 78 which is a multiple of 13. Now look at the second factor - 7 and 59 - Difference is 52 which is again a multiple of 13! That's incredible :)

d) 750 + 19 (first 3 digits + last 2 digits) is 769 which is a prime
     6000 + 89 (first 4 digits + last 2 digits) is 6089 which is also a prime!

e) 750 - 19 is 731 which is a product of two primes (17 * 43)
    6000 - 89 is 5911 which is again a product of two primes (23 * 257)

The similarities exhibited by these two numbers are amazing to see and truly reflects the collaboration between the teams at these locations!

I am sure if I extend this to some of our other sites in US and India, we will see more such patterns

Saturday, 4 April 2020

Blog Post #114: All roads lead to Armstrong number!


This post is around working towards a common team goal and the path that we take to achieve that - have made an attempt to explain that through Armstrong numbers

Let's start this blog listing out the Armstrong numbers that most of us know about - 0, 1, 153, 370, 371 and 407 (Sum of the cubes of the digits equal to the number)

Now let's take a random number say 504 and add up the cubes of the digits till we get to see what happens after few steps!

Step 1:            5 ^ 3 + 0 ^ 3 + 4^ 3 = 189

Step 2:            1 ^ 3 + 8 ^ 3 + 9 ^ 3 = 1242

Step 3:            1 ^ 3 + 2 ^ 3 + 4 ^ 3 + 2 ^ 3 = 81

Step 4:            8 ^ 3 + 1 ^ 3 = 513

Step 5:            5 ^ 3 + 1 ^ 3 + 3 ^ 3 = 153!!

153 is an Armstrong number and the iteration stops here!!! That's sheer magic - Isn't it?

Let's take another number 841

Step 1:            8 ^ 3 + 4 ^ 3 + 1 ^ 3 = 577

Step 2:            5 ^ 3 + 7 ^ 3 + 7 ^ 3 = 811

Step 3:            8 ^ 3 + 1 ^ 3 + 1 ^ 3 = 514

Step 4:            5 ^ 3 + 1 ^ 3 + 4 ^ 3 = 190

Step 5:            1 ^ 3 + 9 ^ 3 + 0 ^ 3 = 730

Step 6:            7 ^ 3 + 3 ^ 3 + 0 ^ 3 = 370

370 is an Armstrong number and iteration stops here!!

Moral of the story

When we work as a team to deliver an outcome, we all strive towards a common goal (which is the Armstrong number in this case) though the paths we take may sometime differ (as we saw in the two examples above)

Not all numbers behave this way but it is an interesting exercise to see which ones follow this pattern!


Wednesday, 25 March 2020

Blog #113: 333031 and what we can learn from this number

I have written a blog earlier about one of my favourite number 333031 (1729 and 2520 being the other two) and given the current lockdown phase, felt that it is apt that I write a fresh ablog around this which generates lot of positive energy for me and many of my friends.

For those of you who are still wondering why this number is special for me - This is the Zip Code of BITS, Pilani (Rajasthan) which is my Alma-Mater and the town which helped shape up my career

1. For starters 333031 is a Prime number - Another "Prime" reason for choosing this!

2. Sum of all digits of 333031 is 13 which is prime again!

3. Let's see how the "couplets" of this number can be further expressed as a combination of the numbers 1,2,5 - 33 is 2 ^ 5 + 1 ^ 1, 30 is 5 ^ 2 + 5 ^ 1, 31 is 2 ^ 5 - 1 ^ 1

4. Now stepping up gears - 130333, which is 333031 written backwards, is a product of 3 prime numbers - 7, 43, 433. Nothing very special about it till we check out this pattern
- 7 x 43 = 301 and 433 - 10 ^ 2= 333. 333 and anagram of 301 combine together to form the original number 333031!

5. Going back to #4... Look at the factors 7, 43 and 433

a) Prefix 3 to 43 and you get 343 which is a multiple of 7! (7 ^ 3)
b) Suffix 3 to 43 and you get 433 which is a prime!
c) Prefix 3 to 433 and you get 3433 which is a prime!
d) Suffix 3 to 433 and you get 4333 which is a multiple of 7!

So the end result is either prime or multiple of 7

6. Going back to 333031 - 3031 is a subset of this number which is again 433 x 7 - Voila! (These two numbers are a subset of the factors of 130333 in #2)

7. Take a look at the sequence

a) 333031 is a prime
b) 33331 is a prime (without the zero)
c) 3331 is a prime
d) 331 is a prime
e) 31 is a prime!

333031 in unique in many ways and showcases some unique lessons on teamwork  -

a) Versatility

b) Exhibits consistent behaviour in smaller chunks or groups (analogous to smaller scrum teams delivering the required outcome)

c) Each digit on its own and/or when combined together contributes to something unique for the entire ecosystem (similar to how each individual make up a great team),

d) When faced with an adverse situation (Read - reversing the number or breaking down the digits or removing one digit at a time), it still retains its core characteristics (Similar to a project going through a crisis where the team need to scale up or work with distributed teams like we are all doing now and still deliver as per target without losing the core theme)

Saturday, 7 March 2020

Blog Post #112: Women's Day 2020 and Investing with long term goals in mind

Investing on financials or gaining more awareness & knowledge through specialization in specific subject, requires patience, commitment and it is an ongoing process. Investing on a continuous basis keeping the long term in mind is always important and this small post is a dedication on Women's day where we could start small like a 20-20 match during the Year 2020 and invest on an ongoing basis to reap the benefits in the long term.

Explained briefly through numbers on how multiplier, compounding effect works in simple terms - The illustrative examples are taken to show the unique number patterns that emerge as we look long term:)

In summary, the examples would show that Addition is like a SIP (Systematic Investment Plan), Multiplication is more like Compounding and Growth while Factorization is equivalent of Diversification

a) 2020 - Start small like a T20 match but don't lose focus on the long term goals of mastering a 5 day Test or Championship!

b) 2020 itself is a result of two perfect squares - 1764 (42 ^ 42) and 256 (16 ^ 16). Power of addition and multiplication

c) Now add 5 to 2020 (Equivalent of planning for the near term) - Resultant is 2025. 2025 is a perfect square (45*45) - Think of it as a multiplier effect in the medium term

d) Think longer and add 500 instead of 5 (100x) to 2020 - Resulting number is 2520 which is one of the unique numbers in Mathematics world. 2520 is the lowest four digit number which has factors from 1 to 10! Power of factorization and compounding in the long run explained. When you are chasing a long term vision, make it unique like 2520!

e) If you closely look at the above pattern 2520 is an anagram of 2025 which was the medium term outcome that we started with!

Happy Women's Day everyone!


Monday, 17 February 2020

Blog Post #111 - Series #2 - Dissect and Analyze with the help of an all too familiar number!

In my earlier post, I had written about breaking down a complex problem into multiple smaller chunks using the example of finding n-th root of a number. In this post, we would look at the following - Given a particular scenario or use case or any problem statement, how important it is to evolve different perspectives and analyze various dimensions of the subject in focus. I would use a well known number in the digital world as an example just to illustrate how one could develop this skill by being patient and observant
65536 is synonymous with computers as 64 KB translates to 65536 Bytes. 65536 has also many factors of 2's multiple - 2 ^ 16, 4 ^ 8, 256 x 256, 16 ^ 4 and so on.
But a lesser known fact of 65536 is what I would focus on now given the theme of the current topic and it opens up a plethora of surprises. Let's dissect and break down 65536 digit by digit or carve out subsets, to reveal some amazing patterns
a) 65 - 13 x 5 (product of two primes)
b) 655 - 131 x 5 (product of two primes)
c) 6553 - Prime (product of two primes)
d) 553 - 7 x 79 (product of two primes)
e) 55 - 11 x 5 (product of two primes)
f) 53 - Prime
g) 653 - Prime
Go one step further and add or subtract combination of digits which are a subset
h) 65 + 536 = 601 - Prime
i) 655 + 36 = 691 - Prime
j) 655- 36 = 619 - Prime
k) 6 + 553 is 559 which in turn is product of two primes 13 x 43
l) 6553 + 6 is 6559 which in turn can be written as 7 x 937
m) 6553 - 6 = 6547 - Prime
n) 553 - 66 = 487 - Prime
Wow... A number which has 2 and its multiples as factors and is outright EVEN, exhibits a completely different behavior, when we dissect and analyze its digits or subset
This approach is pretty helpful in real life scenario, where given a use case or problem definition, it is imperative to break them down into multiple user stories or features and look at commonalities and patterns