The Courage to Be Disliked
Finished reading: The Courage To Be Disliked by Ichiro Kishimi 📚
Some of my fav bits of wisdom from the book:
You’re the only one worrying about your appearance
Philosopher: Earlier didn’t your say, “I can’t celebrate other people’s happiness with all my heart'? You think of interpersonal relationships as competition; you perceive other people’s happiness as ‘my defeat’ and that is why you can’t celebrate it.
Overcoming the tasks that face you in life
Philosopher: The interpersonal relationships that a single individual has no choice but to confront when attempting to live as a social being - these are the life tasks. They are indeed tasks in the sense that one has no choice but to confront them. Philosopher: First, let’s look at the tasks of work. Interpersonal relationships of work have the easy-to-understand common objective of obtaining good results, so people can cooperate even if they don’t always get along, and to some extent they have not choice but to cooperate. And as long as a relationship if formed solely on the basis of work, it will go back to being a relationship with an outsider when working hours are over or one changes jobs.
How to separate tasks
Philosopher: One does not intrude on other people’s tasks. That’s all. Youth: Hmm. I don’t really get it. In the first place, how can you tell whose task it is? Philosopher: There is a simple way to tell whose task it is. Think, Who ultimately is going to receive the end result brought about by the choice that is made?
It’s a fantastic feeling to end the day by writing the journal using Hero Fountain Pen.
A KISS Wedding: A Refreshing Reminder of the Power of Simplicity
Why We Sleep
Finished reading: Why We Sleep by Matthew Walker 📚
Biggest learnings:
- Don’t force teenagers to wake up early. It’s counter productive
- Consider how long it takes for coffee to flush out from our body before thinking of another shot
- Lost sleep hours cannot be compensated with longer sleeps
No drone in sight this time, but next time for sure!
There is something satisfying about growing crops. Despite the complexity and uncertainty involved in it, we have farmers (with big and small farms) still farming. The pace of change in farming is also accelerating. Due to lack of labour, famers are forced to use technology to continue the endeavour. In my recent visit to my village, I heard of a business who is renting drones to be used in farms. Could not get it to see in action this time, but hoping to make use of it during next harvest. Here are some photos of the paddy fields from my recent visit.
A nursery bed in preparation of next season plantation:
The current season crop nearly ready for harvest:
The farmer - Working From Home:
The Hidden Trap of "Growth for Growth's Sake": Why Scaling Too Fast Sinks Start-ups (and How to Avoid It)
A founder recently asked me how to structure their new consulting firm: “Should I build a marketing team, sales team, and delivery team from day one?” My immediate thought: Bhai, why? When pressed, they admitted they hadn’t considered how this structure would generate revenue—they just assumed it was “what businesses do.” This mindset, coupled with a story from my past, reveals a critical blind spot: scaling fixed costs without a revenue-driven strategy is like building a palace on quicksand.
Let’s grab a chai and dissect why this happens.
DTUs, SUs, CU(s) - OMG!
There are a lot of units in Azure to forecast cost for various services. Yeah, even for pay-as-you-go in the cloud, a decent idea of projected cost is required to justify adoption of a new service.
The most recent for me was CU(s) in relation to Azure Fabric Capacity, which was indeed quite baffling. The usual mistake of thinking it must be something similar to other baffling units like DTUs, SUs etc, could cost us. Especially, as a start-up who have been given certain fixed credits by Microsoft for a year.
Thankfully, The Fabric Guy has written an amazingly detailed article on this matter and this should be a must read for anyone even uttering the word “Fabric”.
With that confidence of having understood what CU(s) (not CUs) are, it’s time to hit the road to get a real feel for it.
Part 3: Offshoring Is a Business Model—Not a Cost-Cutting Exercise
> _"Startups build for scale. Consulting firms often build for speed—until they hit a wall."_
I’ve seen it too many times.
In Part 1, I explained why consultants get laid off even when revenue is good.
In Part 2, I showed how a hybrid offshore-onsite model gives companies more time before resorting to cuts.
Now let’s talk about what many leaders get wrong—when and why they introduce offshoring.
Because here’s the truth:
By the time you’re scrambling to “cut costs,” it’s already too late to build culture, delivery maturity, or trust offshore.
That’s not offshoring. That’s damage control.
No more flickering of my 4K external screen
Finally after many years of frustration, managed to stop the flickering of my 4k monitor when it was connected to my surface book. Turns out that the setting in Edge “Use graphics acceleration where available” was the culprit. As soon as I turned it off, I think the built-in Windows algorithm that decides to switch the graphics card, stopped doing it and now, I have a peaceful screen helping me focus on building Semantic Data Model.
Part 1: Why Am I Being Made Redundant? Understanding The Consulting Business Model
When I asked my friend:
“Do you know the business you’re in?”
He paused, then said, “I’m a data scientist. Why should I worry about that?”
That’s when I realised: most people working in consulting don’t actually understand the business model they’re part of. They’re brilliant in their domains—data, design, software, delivery—but they operate without context on how their company earns revenue or why layoffs really happen.
Making Git Bash, SSH only GIT Remote, Pageant dance together
Given a SSH only GIT Repo, was unable to git clone the repo, despite my public key being successfully stored in the remote repo’s authorization_keys file.
The git clone command invoked from within the git bash kept prompting for password, but could not authenticate for some bizarre reason. Thought it could be some proxy issue. But no, was able to ping successfully to the server hosting the git repo.
Then came the saviour. Pageant.exe, which gets installed when PuTTy SSH client gets installed in windows. Pageant runs on the system tray and serves like a vault of .ppk keys. After adding my ppk to it, was able to successfully connect to the server using putty. Then I thought git clone will also work. But No. Apparently an environment variable GIT_SSH pointing to plink.exe (found within the putty installation directory) is needed. After adding that, I was able to git clone the repository without it prompting me for a password.
Getting started with SaSS, Foundation, Compass on Windows, for PHP web application development
My friend wanted to get started with using Foundation for an upcoming Greenfield project. The trouble is Foundation comes in two flavours:
- Foundation3 with default CSS
- Foundation3 with SCSS (Sassy CSS, which is the syntax used by SASS – "Syntactically Awesome Style Sheets". SASS is an extension of CSS3 which brings familiar programming concepts to CSS like variables, nesting of selectors, functions aka mixins)
The Compass framework does not have a Windows Installer. It is only available as a Ruby Gem package, which means we have to install Ruby for Windows first. After this, we follow the following steps to get Compass with Foundation:
Start Command Prompt with Ruby (Run as Administrator)
Cross-Domain, Ajax Fundamental understanding
I had promised my students that we would implement a “Find nearest XXXX” feature in our on going project. I was doing this for the first time and thought it would not be difficult. But, most of my time while preparing for the class, I was frustrated.
I could not come up with a WCF Web Service (hosted on Visual Studio’s development web server eg., [localhost/MyService...](http://localhost:1234/MyService.svc) ) that could be invoked by Javascript on my website (hosted again on Visual Studio’s development web server eg., [localhost/MyWebsite...](http://localhost:9876/MyWebsite/Default.aspx) ).
Due to time constraints, I abandoned the WCF Service implementation and went in for the ASP.NET Ajax Page Methods
It’s only after reading this nice article, I understand the mistake I made or the way the cross-domain web requests work.
Mash-it Up with ASP.NET AJAX: Using a proxy to access remote API
ASP.NET MVC1.0 installer and VS2008 AddOns
Today I tried all things in vain to try and install ASP.NET MVC 1.0 on to my machine and it just kept failing.
Possible causes, upon Binging focused on conflicting Visual Studio 2008 addons. Among the list of such addons, I had PowerCommands. But, despite uninstalling it, mvc installer complained.
Then I begun uninstalling other possible addons (not listed in the mvc installer readme file). The first to go was SlickEdit gadgets.
Lo and behold, the MVC installation was successful.
Another Foray into Functional Programming
VS2010 beta2 has come with F#. Not that I was not interested in Functional Programming before. I’ve had a go at Erlang nearly 6 months ago and must say that I loved it. But the prospect of Functional Programming with .NET CLR (or rather DLR) definitely gives F# a special place.
More over, the most familiar IDE of Visual Studio is simply wonderful. I must admit, I’ve not yet started doing my katas on F#, partly because the functional programming concepts need to be ingrained before moving ploughing ahead. So, watched a couple of interesting videos tonight.
How to use Ninject IoC with ASP.NET MVC
The following are the detailed steps to use Ninject IoC with ASP.NET MVC
Download and install TortoiseSVN
TortoiseSVN is a Subversion client that allows you to manage source control tasks from within Windows Explorer.Download the source code for Ninject from google code
The Ninject source code is hosted in Google Code website. To download the code to PC, we will use TortoiseSVN. Before that we need the URL of the repository. This is available in the following url:TIP: Copy/Paste Columns to Multiple Tables in SQL Server
Here is a tip I discovered today while at work. I had earlier postponed the addition of common columns needed for all the tables (columns needed for auditing purposes like AddedDate, AddedBy etc.). But, the time had come now to type in and set the properties for columns on all tables one by one. I finished adding these columns to the first table. When on the second table, my laziness kicked in and wanted an easier way to do this mundane task. So,
- Opened the design of table1 using SQL Server Management Studio.
- Selected the last 4 columns.
- Ctrl+C.
- Opened the design view of table2
- Ctrl+V
Expression Blend 3 + SketchFlow + Dynamic Prototyping
One word: Incredible!
The Background:
I’ve got the privilege to work on a Greenfield project which involves:
- Collecting and Analysing Requirements
- Web Application Designing (not Graphic/Web Designing)
- Implementing
- Testing
- Deploying and Going live