Posts

Showing posts with the label tools

[17th November 2024] Interesting Things I Learnt This Week

Image
 1. Booleans are a trap : Booleans, while seemingly simple, can introduce complexity and limitations into domain modeling. When used to represent complex states, booleans can lead to unclear code and potential errors. To avoid these pitfalls, consider using enums or enum sets. These approaches provide a more expressive and maintainable way to model complex states in your applications. My Take : I wish I had learned this earlier in life. When working with Google Docs, I realized the limitations of booleans. Expanding boolean-based behaviors often led to adding more fields, making the system complex. Enums would have provided a simpler solution. The problem wasn't just the booleans themselves, but also the need to pass them through multiple layers of the stack, often requiring additional parameters. Another important aspect of enums is the inclusion of an " enum not specified " state. This state explicitly indicates that an enum value hasn't been set, which can be usef...

[10th November 2024] Interesting Things I Learnt This Week

Image
1. One Company A/B Tested Hybrid Work. Here’s What They Found. - Recent research has revealed that a hybrid work model, where employees work from home three days a week, can significantly boost employee satisfaction and reduce turnover rates. This not only improves employee morale but also saves companies millions of dollars in recruitment and training costs. To successfully implement a hybrid model, businesses should prioritize rigorous performance management systems, coordinate team and company-wide schedules, and secure leadership support. Moreover, executives should experiment with different management practices to optimize their approach and maximize the benefits of hybrid work. My Take : There have been too many debates about remote work versus office work. I would have loved to see data comparing the effectiveness of remote, hybrid, and office-based work. I've worked at companies that mandated office work, like Tata Elxsi, where we didn't have laptops and had to rely on...

Fabric - Just the tool for continuous deployment

Originally published in Near Engineering blog One of the big problems with scaling complex and tightly integrated system clusters is deploying changes. As number of tools grow, changes and deploying for scale get all the more complex. Logging into each of the different system is rendered impossible as you grow from a small unknown startup to one building large scale systems. A few months back, we decided that we had hit the limits of spending time just to deploy our RTB and DMP offerings to scale. We needed a radical solution to get it right. Let me get to our problem statement. We need to deploy a setup which involves a concoction of various technologies like HAProxy, Redis, Nginx, PHP-FPM, ZMQ, Kafka, ElasticSeach, Logstash etc. This is just tools which must be configured on deployment of a new machine in our cluster. Besides these you have all the code in PHP which needs to configure location of the services which are different based on regions. I believe this is a fairly ...