Saturday, 30 January 2021

Book Review : The Phoenix Project

The Phoenix project
An excellent read for anyone in the Information Technology space irrespective of your role or position. It clearly calls out why IT is a differentiator and why IT risk is a business risk. For developers it puts perspective around why things like faster deployments, smaller packages matter from a busines perspective. It clearly elucidates why DevOps is not just something that start when you check in code but right from the requirements phase. 


Suddenly the hulabaloo around the "Shift Left" mantra makes all the more sense to you. In the midst of all this it left me with the Theory of Constraints which provides yet another weapon in your arsenal to approach IT delivery.


Ten deployments per day! Audacious in 2013 when the book was released but today it's much more common place. The book shows the need for automated testing, a focus on security right from the design stage.


DevOps is a culture
Yes it is and this book makes it clear why it's so. It makes it clear why all arms of the IT and business should work hand in hand to achieve goals and why for instance business KPIs should be reflected in application monitoring KPIs. Return on R&D spend, prioritising features that bring business value, paying down technical debt are all aspects that need to be considered in a DevOps culture.

Wednesday, 6 June 2018

Musings on the Iterator Design Pattern

Reading about the iterator pattern sparked a few thoughts. The Iterator pattern is used in conjuction with Collections. It abstracts the traversal methods out of the Collection. This has the advantage that the code of the relevant collection is not congested with the logic of traversing the list. In addition the responsibility of traversing the collection is offloaded to a separate class. Collection have a factory method called getIterator that provides the Iterator implementation for the collection.

Decoupling the Iterator also provides an additional advantage of being able to apply a wider variety of iteration techniques like Filtered Iterator etc.

Now extending this thought process a bit we can use this decoupling technique to provide Pagination techniques for instance for a list where the paging logic is abstracted from the list itself and handles the paging requests. This can be combined with a session cache so that the paging request does not go down to the db server.

This general approach can potentially be used to declutter a class from responsibilities that do not form it's primary objective.

Improving the handling of the Baleno RS

The RS has clocked up a little over 17000 km so far and it has been great so far. Typical Maruti ease of ownership coupled with an eager, peppy engine that has so far handled all that it has been thrown at. The daily grind, inching traffic, highway cruising and a few trips to the hills, it's delivered on all of them. Sure, the couple of crucial upgrades have really helped in ironing out the few compromises that Maruti has made in the interests of cost and appealing to a wider audience. Yes, very rarely there are nostalgic memories of the mid range of the GT but those are few and far between.

Of the compromises that Maruti made, none bothered me so much as the handling. It was stiffer than then regular Baleno and was fine as long as you were smooth on the throttle and did not push it too much into corners. However get ready for some aggressive cornering and I found myself having to wait while the car settled on it's springs before plugging on. Not good. To me it seemed that the springs were still too soft. Hunting about for a solution and at the same time not willing to make a huge investment this early, I decided to give RogerAb buffers a try.

Got the buffers in quick time. Decided to tackle the front first as this was the end that was giving me the most problem. The buffers were easy to fit, requiring nothing more than jacking up the car. However their circumference was a bit too much, so that they overlapped. Cutting a bit off would solve this but I haven't gotten around to it. The problem is that when the lower end of the buffer overlaps the upper, it fouls with the fender lining.

However the results were very good. It really firmed up the front suspension such that the wheel felt much more planted. The floatly feeling at triple digits speeds was also sorted out to a huge extent. There was a bit more heft to the steering wheel and the car felt much more planted when cornering.

The rear buffers were a bit more difficult and it seemed that I would have to undo the shocks to get enough extension on the spring to push the buffers in. So decided to shelf it for now and see how much of the handling was sorted out with the front buffers. Good, but not enough. The rear was a bit too soft and there was considerable weight transfer during accelerating and braking. Braking more so as the rear seemed to stand up when hard on the brakes. Not an issue if you were smooth on the brakes, squeezing them slowly so as to ensure a more gradual shift. Took another couple of weeks while I freed up some time to install the rear buffers. I took the car out for a drive and instantly felt a world of difference. The front axle seemed even more planted and high speed composure is so much more. The stance of the car also seemed to change a bit and the rake felt a little bit less. So much so that I feel it is a shame that Maruti opened itself up to so much brick bats on high speed composure just because of a softer suspension. The weight or the lack of it rather does play a part but primarily because of the absense of a suspension tune that matches the character of the car.

Even better was the braking feel or rather the improvement of the braking performance. I had earlier experienced this on my GT when I used Koni sport shocks on the rear. I feel much more confident braking hard rather than having to baby the brake pedal to ensure that the braking is smooth. The car holds it line very well now with acceptable (to me) roll. The front end does not dip so much when pushed into a corner. The best part is that the ride has not become so much more stiff kneed especially at the back. At this point I am pretty satisfied with what I have been able to achieve with the RogerAb buffers.

The second change that made a big difference was the tyre pressures. Thanks to an incorrect fillup at an alignment shop I am now running with 32 PSI against the company prescribed 29 PSI. With 29 PSI there used to be quite a bit of road noise (a fact I came to realise after running with 32 PSI) along with a bad rubbery vibe on the brakes especially when braking and cornering together. The change in pressure lightened up the front end and helped to tighten everything up together in a very nice way. I am pretty satisfied at where the entire package is at now to the extent that I am in no hurry to invest more anytime soon.

A few other things that I looked into an discarded on the way:
1. H&R springs - The 30mm lowering was not something I was willing to ake a chance on given our roads.
2. Swift Type 1(2008) Rear Springs - these were too tall for the rear.
3. Swift Type 1(2008) Front Springs - cooling off in my garage as the current setup has me pretty happy.

I think if I add on to this it would be a set of dampers. However I cannot seem to find any options on the Koni or Bilstien sites.

A couple of point on the Swift springs though. They are considerably thicker and heavier than the Baleno's, a reminder of what an excellent handling package that version of the Swift was.

Tuesday, 5 January 2016

CES 2016 - What does the future hold?

CES 2016


This year I will be following the CES at Las Vegas closely. CES 2016 promises a lot of new futuristic tech that gives us an insight into what we would be upto in the future and how we may be interacting with our environment at large.

Driverless cars, wireless speakers, electric vehicles, rollable displays they are all there. Check out a nice update at Day 2 coverage from the Verge.

See you on the other side of the show and I should have a few posts out.

Sunday, 6 September 2015

New Kids on the Block

Recently wired.com carried an article that showed how Facebook's developers  turned to a 25 year old language Haskell to improve their anti-spam solution. The article turns the spotlight on a few new (..and old) languages that are being used to solve computing problem that mainstream languages like Java, C, C++ etc are unable to address satisfactorily. One of the worlds most efficient messaging application WhatsApp is written in a little known language - ErLang but that's another blog topic.

http://www.wired.com/2015/09/facebooks-new-anti-spam-system-hints-future-coding/

Useful Links

Just thought of using this post to collect all the useful links that I encounter as I research various aspects of technology. These are links that I read through and personally find quite helpful.

Hope it helps.

Inspiration


Digital Transformation


Data Lakes, Analytics etc

https://itnext.io/hydrating-a-data-lake-using-query-based-cdc-with-apache-kafka-connect-and-kubernetes-on-aws-cd4725b58c2e

SEO (Search Engine Optimisation)

Multitenancy








https://www.oreilly.com/radar/how-architecture-evolves-into-strategy/


EA

https://eapj.org/the-many-lies-about-reducing-complexity-part-2-cloud/

Java Articles




Miscellaneous




Cloud





Microservices















Containers





Data Analytics


Serverless





Sunday, 24 May 2015

Monaco GrandPrix 2015 - A wrong Arrow from the Silver quiver!

Mercedes got it all wrong in the last 8 laps and tied themselves up in knots. If not, the heading would perhaps have something to do with an adventurous 17 year old named Max Verstappen.

The start of the race had a bit of promise, with Nico having being edged out of pole by a mere 3 tenths of a second tried to make amends by challenging Hamilton into the first corner. However he had to back off to defend second position from an opportunistic Vettel trying to slot in through the outside.

Hulkenberg was shouldered out by Alonso and Massa too had an incident at the back of the grid. And all was calm. The Monaco track lived up to it's reputation of being notoriously difficult to overtake. Ferrari tried the undercut on Mercedes by pitting Vettel early but the Silver team proved to be alert and covered it nicely to retain track position for Rosberg. And all was calm...that is till a young gun named Max Verstappen decided to put on his thinking cap and try to make it into a points scoring position.

His strategy was simple. As a back marker he pasted himself to the rear of Sebastian Vettel's Ferrari as it lapped other back markers. As the back markers moved aside for Sebastian coming through, Vestappen followed Vettel to make up a position. By the time the fellow racers realised what was going on he was through in Sebastian's wake. A couple of positions were made up in quick succession. However Renault warned Grosjean on what was transpiring. Grosjean cleverly used the Grand Hotel haripin to let Vettel through and prevent Vestappen from following through. On the softs with newer tires Vestappen was much quicker and looked set to pass Grosjean. On the start straight, he sold Grosjean a dummy to the left and jinked to the right and tried to pass Grosjean on the inside. Grosjean held his line and braked a bit early with disasterous consequences. Vestappen barged straight into the right rear of Grosjean destroying his front suspension and crashing into the barrier at over 200kmph. Luckily he wa able to climb out of the car and walk away. A thin line between a hero and a zero.

However this guy is someone to watch out for with a very intelligent and mature head on his young shoulders. A definite future champion.

In the ensuing safety car period Mercedes suddeny decided that with a 21 second gap it would be a good idea to pit Hamilton. However this meant that Nico and Vettel were handed first and second on a silver platter. As Hamilton joined  the grid both leading cars passed him.

The race ended in the same order. The championship is now closer with Hamilton's lead whittled down to 10 points. Now if only Ferrari's promised upgrades mount a mighty challenge to the Silver Arrows and we would have a stunner of a season!!