Skip to main content

Journey of Learning and Growth with Youtube in 2024

· 4 min read
D Balaji
Lead Design Technologist

YouTube has become an indispensable part of our daily lives. From entertainment to education, it’s a treasure trove of information waiting to be tapped. However, like any tool, its impact depends on how we use it. By channeling our time on YouTube towards productive endeavors, we can unlock immense value. Here are three transformative lessons I’ve learned from YouTube in 2024, which have reshaped my perspective and enriched my life.

1. DIY Laptop and Motorcycle Repairs: Empower Yourself

Nothing is more frustrating than being technically inclined yet unable to handle minor repairs. For many, minor fixes—whether it’s a laptop issue or a motorcycle—are often overlooked by mechanics or seen as unworthy of their time. Insurance companies don’t cover such small mishaps, and for the owner, they’re just time-wasters. But learning to perform these tasks yourself is a game-changer.

Through YouTube, I’ve gained the confidence to tackle these challenges. DIY repair videos have become my go-to resource before making any major purchases. For instance:

  • Most business-grade laptops have detailed repair tutorials available.
  • Popular vehicles, like Maruti cars, also have a wealth of content explaining common issues and fixes.

This newfound skill has transformed how I make purchase decisions. DIY repairability is now a core factor in my selection framework. The ability to fix things with my own hands not only saves money but also fosters a sense of independence and ownership.

Pro Tip: Before buying any big or expensive item, check if it is DIY repair-friendly. It can save you a lot of hassle down the line.

2. Financial Frameworks for Life: Learn from Real Stories

Conversations around finance often revolve around trades, insurance, or IPOs, but rarely delve into overarching financial frameworks or strategies for building wealth. Thanks to YouTube, we can now access diverse perspectives and stories from people at different stages of their financial journey.

Just today, I watched two fascinating videos:

  1. A story about a betting addict burdened by debt—a cautionary tale of financial mismanagement.
  2. The inspiring journey of a top-level executive who retired early to live sustainably on a farm. Their financial strategy included years of disciplined saving and investments, supplemented by income from startups. Here’s their asset allocation:
    • 40% in real estate, including their farm.
    • 40% in equities and mutual funds.
    • 10% in gold.
    • 10% in liquid funds for emergencies.

These narratives offer invaluable insights and practical frameworks for managing personal finances.

Key Takeaway: Before you quit your job, ensure you have a solid financial runway. Asset allocation is crucial for long-term stability.

3. Tech Events Live: Stay Ahead of the Curve

For developers and tech enthusiasts, attending global conferences like Next.js Conf or Google I/O often seems like a distant dream. Enter YouTube, the ultimate equalizer. With live streams and recorded sessions, anyone, anywhere, can stay updated on the latest trends and technologies.

This year, I tuned into multiple tech events that would have been impossible to attend in person. These events not only kept me informed but also inspired me to stay ahead in my career. The ability to access these resources at your convenience is a game-changer for lifelong learning.

Actionable Insight: Don’t miss out on tech trends—attend virtual events and conferences through YouTube.

Summary: Guardrails for Growth

YouTube is undoubtedly a powerful platform for learning and growth. However, navigating it effectively requires discipline. The abundance of content can quickly lead to doom-scrolling and distractions if we’re not careful. By setting guardrails and focusing on purposeful content, we can turn YouTube into a tool for self-improvement.

Final Thoughts

The key to harnessing YouTube’s potential lies in intentionality. Whether it’s mastering DIY repairs, building financial acumen, or staying updated with industry trends, the platform offers endless opportunities. Use it wisely, and you’ll find yourself growing in ways you never imagined.

Warranty claims explained as HTTP Requests, a developer’s analogy

· 6 min read
D Balaji
Lead Design Technologist

Warranty claims in India can feel like navigating the internet with a shaky connection. Sometimes you get a swift 200 OK, and other times you're stuck in an endless loop of 408 Request Timeout or redirected to 303 See Other Agency for Warranty. As a tech blogger and frontend developer, I thought it’d be fun to break down this often frustrating yet essential consumer process using HTTP status codes as a metaphor.

What the Heck is a Warranty?

Before diving in, let's understand the basics. Warranty is a form of consumer protection where a company promises to replace or repair a product if it malfunctions within a specified period. Think of it as a service-level agreement between you and the brand, like 12 months of uptime guarantee for your shiny new "Bonda" mobile charger.

But It’s Not Always a 200 OK...

If companies approved every warranty claim without scrutiny, they'd be out of business. So, they create hurdles to ensure only genuine claims get through. For us consumers, this means our warranty experience can range from seamless to outright bizarre.

The HTTP Status Code Guide to Warranty Claims

200 OK: Positive Case

The consumer submits a claim with a valid invoice, and the company processes it smoothly.
For example, my experience with a Transcend pen drive's lifetime warranty was flawless. I handed in the old one at their warehouse and walked out with a replacement. No drama, just resolution. I wish every claim was like this!


Negative Cases: 300, 400, and 500 Errors

303 See Other Agency for Warranty (Outsourced)

Instead of resolving your issue directly, the brand redirects you to a third-party service center. This often happens with products bought online. Hello, Amazon warranty maze!

304 Untouched (We’re Looking Into It)

You’ve submitted your claim, but the company keeps responding with, “Our team will get back to you soon.” Weeks pass, but nothing changes. Classic cached response with no updates.

305 Use Proxy (Only the First Owner Gets Warranty)

Some motorcycle companies require warranty claims to be made by the original owner. If you’ve bought the motorcycle second-hand, tough luck finding the first owner or kiss the warranty goodbye.

400 Bad Request (Invalid Warranty Claim)

Misplaced your receipt? No original box? Missing serial number? Your claim is denied.
Pro tip: Keep the computer generated bill of your purchases and warranty details in your locker.

401 Unauthorized (You Bought It Online)

Some brands deny warranty for products bought on open-market platforms or unauthorized dealers. It's their way of saying, “You didn’t play by our rules.”

402 Payment Required (Hidden Costs)

While the product part might be under warranty, labor or transportation costs aren’t. Parcel charges for small items like chargers can sometimes exceed the product’s value. Talk about irony!

403 Forbidden (Out of Warranty Period)

Your claim is automatically rejected because you missed the warranty window. Companies rarely extend grace periods, so you're on your own now.

404 Not Found (Company Disappeared)

Online brands often vanish faster than seasonal discounts. By the time your product fails, the company’s customer support or even the brand itself is nowhere to be found.

406 Not Acceptable (Customer-Induced Damage)

Warranty claims for damage caused by misuse are promptly denied. Spilled coffee on your laptop? Dropped your phone? The terms and conditions were crystal clear. This one's on you.

408 Request Timeout (No Response from Company)

Even with valid documents, some claims are met with silence. Eventually, you lose patience and move on.

415 Unsupported Media Type (Proof Required in Specific Formats)

Some companies require you to upload videos or images of the defect, often in specific formats. If you can’t reproduce the issue on camera, your claim is stuck.

426 Upgrade Required (Let Me Upsell You)

Instead of resolving your claim, companies push you to buy a newer model. It's like saying, “Why fix your old phone when you can upgrade to this shiny new one?”

500 Internal Server Error (Technicians Are Hopeless)

Sometimes, even well-meaning customer support can’t save the day because technicians are either incompetent or lack resources.

504 Gateway Timeout (Service Center Delay)

Ever had a product sit in a service center for months? Delays pile up, and eventually, you're left chasing your own tail.


Tips to Avoid Warranty Dramas

1. Buy Smart

Think of product purchases as software development. Match your environment and reliability needs before you hit "Proceed to Payment". Check reviews and avoid flashy influencers who rave about products shortly after launch.

2. Copy Success

If your friend swears by their Maruti or Dell, consider following suit. Proven track records often mean smoother post-purchase experiences.

3. Stay Organized

Maintain a digital or physical record of invoices and warranty documents. Think of it as a git repository for your purchases.


Conclusion

Claiming a warranty in India can be as unpredictable as an HTTP request to a flaky server. From 200 OK to 500 Internal Server Error, your experience depends on the brand, product, and sometimes sheer luck. But with a little preparation and a lot of patience, you can improve your odds.

Remember, warranty claims might not always bring you joy, but at least now you can laugh about them through the lens of HTTP status codes! Hope my article also clarifies if you need to buy extened warranty. That was a good tip if you read till the last line !!.

10 takeaways from xconf 2024

· 3 min read
D Balaji
Lead Design Technologist

XConf, the premier tech conference hosted by Thoughtworks, was held on November 22, 2024, at Marriott Whitefield, Bengaluru. The event was accessible through registration using a professional email at Thoughtworks XConf.

Event Highlights

Despite starting slightly behind schedule and facing time management challenges for speaker sessions, the event was vibrant and informative. Sponsored by AWS and CockroachDB, it featured five distinct booths:

  1. AWS
  2. CockroachDB
  3. Thoughtworks Careers
  4. Thoughtworks Immersive Experiences in the Metaverse
  5. Thoughtworks Publications

The event was structured into three segments:

  1. Common Sessions: Keynotes and talks by AWS and other industry leaders.
  2. Specialized Tracks: Focused sessions across specific themes.
  3. Workshops: Exclusive, registration-based, hands-on workshops.

The keynote speakers were particularly engaging, setting an inspiring tone for the day.

Themes for Specialized Tracks

  1. Machine Learning, Data, and AI
  2. Distributed Systems
  3. Emerging Technologies: Including SDV, XR, and Embedded Systems

A standout moment was a fascinating talk by the Director of the Indian Astrophysics Department, highlighting the role of technology in space exploration. Interestingly, Thoughtworks has collaborated with the department for their software needs.

Key Takeaways

Here are 10 notable insights from the conference:

  1. Software Development as a Team Sport

    • AI assistants should enhance the entire software development lifecycle rather than support isolated coding efforts.
  2. From 10x Developers to 10x Teams

    • The aim of AI is to empower teams, fostering collaborative processes and tools for impactful delivery.
  3. AI Across the Software Development Lifecycle

    • Beyond chatbots, AI is revolutionizing software processes, including research, planning, design, testing, deployment, and maintenance.
  4. AI Artifacts for Enhanced Productivity

    • Sharing generative AI (GenAI) prompts across teams can significantly boost efficiency, supported by tools like Haiven Team Assistant.
  5. Observability 2.0

    • Innovations like canonical log lines are scaling observability practices while reducing network loads.
  6. GenAI for Legacy Code Understanding

    • GenAI facilitates reverse engineering legacy code, enabling seamless tech migrations.
  7. Rethinking Codebase Documentation with GenAI

    • GenAI excels in generating documentation, capturing module links, and documenting architecture, epics, and stories.
  8. AI Tools for Diverse Problem-Solving

    • Utilize GenAI prompts for code understanding, RAG (Retrieval-Augmented Generation) for problem-solving, and Graph + RAG for capability analysis in codebases.
  9. Local-First Software Development

    • A paradigm emphasizing on-device computation for enhanced privacy, security, and real-time AI inferencing.
  10. Evaluating LLM Performance

    • Techniques like "eval" and "vibe checking" are emerging for benchmarking LLMs, with both self-assessment and human validation improving model efficiency.

Additional Perks

  • Meet and interact with authors of Thoughtworks publications.
  • Opportunities for networking, paired with great coffee and exclusive goodies.
  • A focused event highlighting use cases in enterprise software.

In conclusion, XConf 2024 provided a dynamic platform for exploring cutting-edge tech trends, fostering meaningful collaborations, and envisioning the future of enterprise software development.

Solar Water Heaters Pros, Cons, and Savings Calculations in 2024

· 3 min read
D Balaji
Lead Design Technologist

Solar water heaters have become a common sight in households, especially in southern India where the weather is ideal for harnessing solar energy. With over five years of experience dealing with solar heaters, both in my home and those of friends, I've gathered some insights on the advantages, disadvantages, and cost savings associated with these systems.

3 Advantages of Having a Solar Water Heater

  • Instant Hot Water No need to turn on the geyser and wait for it to heat up. For families with many members, this is a game-changer. My family has become accustomed to having instant hot water 24/7.

  • Reduced Electricity Bill Using solar energy means you save on electricity costs since you’re not using the electric geyser to heat water.

  • Efficient Use of Solar Energy Apart from drying clothes, it's a great way to utilize solar energy efficiently.

3 Downsides of Having a Solar Water Heater

Despite the benefits, there are notable challenges with continuous ownership:

  • Water Shortages During summer, water shortages are common. If your overhead tank runs dry, the solar tank can't cool down, leading to cracked or broken glass tubes. If a glass tube breaks, water gushes out, potentially damaging other tubes due to the solar tank being almost empty.

  • Vacation Planning When going on vacation, ensure your overhead tank is full. If it runs dry due to evaporation, leaks, or usage, your solar heater could be damaged. Issues like monkey problems, stones, or aerial firecrackers can also break the glass tubes.

  • Plumbing, Tank Quality, and Hard Water The long-term success of a solar water heater depends on these factors. Hard water requires periodic servicing, which can cost around ₹2500. Some solar tanks, made of steel alloys, can corrode and leak. The heat from the solar tank can deform pipes, so consult with plumbers about pipe quality. Hard water exacerbates these issues, damaging water-carrying devices.

Google GenAI Developer Day Bangalore 2024 Learnings

· 3 min read
D Balaji
Lead Design Technologist

Gen AI Dev Day

This blog post summarizes key takeaways from the Google GenAI Developer Day in Bangalore, focusing on technical aspects relevant to developers.

1. GenAI Impact and Demand

While "AI" is often misused in marketing, the conference solidified the transformative power of Generative AI (GenAI) across personal, professional, and societal applications. For businesses, GenAI tools enhance developer productivity by:

  • Auto-completion: Generating code snippets based on prompts.
  • Context-aware Test Generation: Automatically creating test cases.
  • Code Explanation and Review: Providing explanations and assisting with code reviews.
  • Multilingual Support: Supporting various programming languages and transpiling between them.
  • Full Codebase Awareness: Enriching analysis, refactoring, and optimization.
  • Efficient Code Generation: Capable of generating substantial code volumes (e.g., 100k lines) from single prompts.

2. Code Enhancement Use Cases

Live demonstrations showcased GenAI's capabilities. Notably, the creation of a shopping cart app with star ratings on both frontend and backend required only a few prompts.

VS Gemini vs. Code Assist Addon

While both tools generate code, Gemini offers a key advantage: it can learn and generate code for new or less common libraries on-the-fly, surpassing limitations of pre-trained languages.

Google Code Assist seamlessly integrates with Github, GitLab, and Bitbucket, generating code for diverse use cases. For enterprise security, models are trained on single-tenant private clouds, garnering trust from financial institutions.

Developer Tools and Resources

  • Vertex AI and Natural Language Integration: Enables log and crash analysis using natural language queries within GCP.
  • Code Assist Availability: Extends to various IDEs like Android Studio, GCP, and databases.
  • AI Practice Platforms: Google Colab for experimentation and Google Codelabs offering industry-leading examples.
  • GenAI Database Support: AlloyDB delivers high-performance, fully-managed database capabilities specifically suited for GenAI. Similar capabilities were showcased by MongoDB, Neo4j, and Elasticsearch.
  • Vertex AI Multimodal Exploration: Explore GenAI functionalities for various modalities within GCP via "Goto Vertex AI > Multimodal > Ask Prompt".
  • Google Cloud Functions Update: Google Cloud Functions are now rebranded as Google Cloud Run.

4. Foundational Concepts for GenAI Development

Developing GenAI applications requires:

  • Training Data: To build robust models.
  • Context-Aware Responses: To generate relevant outputs based on natural language prompts.
  • Unified Data Handling: Images, videos, and text are treated as equally compatible data sources.

5. Retrieval-Augmented Generation (RAG)

While details weren't extensively covered, the session briefly introduced RAG as a technique for enhancing GenAI models.

6. Hackathon

The concluding session featured a hackathon based on the Codelabs.

React Nexus 2024, Good Parts. A Consise Summary in 100 points.

· 23 min read
D Balaji
Lead Design Technologist

The objective of this post is to summarize the key points discussed in React Nexus 2024 conference in 100 points. I call them good parts of React Nexus 2024. I add my commentary along the way. Hope you like it and read all the way from good parts #1 to #100.

Good Parts

Venue & Arragements

  1. The selection of React Nexus 2024 Venue was Apt, not just easy for attendees but also in line with react nexus 2023 venue. Radison Blu Marathahalli is our 2 day adda (means a social gathering or hangout spot).

  2. The rockstars of the conference, the speakers were simply meritorious and profound. The full list along with their linkedin and X handles can be found on React Nexus Speakers Section

  3. The conference vibe was kindled by a giant screen resembling a movie theatre and JBL speakers playing deep dope beats. Further momentum was added by charismatic emcees who knew tech and humour.

  4. The conference goodies included an name card tag, tshirt which is true to its size variant and few stickers. Minimalistic and useful.

  5. The overall conference was jam packed with surprises like traditional yakshagana dance, activities which felt like cardio & desk yoga, standup comedy, Bhangra dance which resembled flash mob, timely coffee and great food.

Day 1 of React Nexus 2024

  1. The first speaker was Naman Goel, spoke about "Designing for design: API decisions for long-term success". Naman is a maintainer at StyleX JS at Meta. He spoke about the design decisions, importance of inspiration and lineage in developing libraries and quick demos of stylex.

  2. Finish your side project to be successful. I do not think this needs any explaination. Simple advice yet profound.

  3. React was inspired by functional programming so hooks were inevitable and a natural progression. The same inspiration is a hidden force in stylex JS as well.

  4. Evolution of ReactJS be like.. React create class --> JSX --> Real classes --> Functional Components --> hooks --> React server components..

  5. Conference talk idea. "Algebraic effects". This is a react concept which is discussed on Dan Blog and referenced in Naman Goel speech.

  6. Trade offs help us to reach the sweet spot in design decisions. I cant agree more, without tradeoff programming would be simply hard for many.

  7. React fiber underwent a complete rewrite 8 years ago due to which we are able to add further enhancements to React like hooks, React Server Components (RSC), etc. Its always a good value add to hear directly from maintainers at Meta.

  8. The second speaker Nurul Sundarani, spoke about "Beyond the Backend: The Rise of React Server Components". He gave a lightning introduction to React Server Components (RSC in short) and how we can use them with Prisma.

  9. In the era of RSC, every frontend developer will be a fullstack developer too. Tools like Prisma should help you with that transformation.

  10. RSC can directly talk to databases, render only on the server so they can have API keys, good for SEO as the HTML and CSS alone can add value to the web crawlers, make the website quick by avoiding render fetch, etc.. The list goes on. Bottomline learn RSC ASAP. Good for you and your business.

  11. The third speaker Akash Hamirwasia, spoke about "Enhancing your Static Sites with React Server Components". Yes, RSC can be used on the static website. Sounds contrary? then read on.

  12. Static websites too run on a server and RSC can make use of the file server to do more. I was not able to find the code on Speaker Github but you need to know that its a possibility to do RSC on static websites.

  13. I was impressed with ease and confidence with which the relatively young speaker Akash was able to put his point across the room. While I was watching his speech, I was convinced without a doubt. Bottomline, the speaker had exceeding levels of communications skills and confidence. Sometimes you pick up a thing or two non tech skills in a tech conference.

  14. The fourth speaker Stefinie Fernando spoke about "Building Secure React Apps with Choreo IDevP". The software Choreo had some similarity with GCP app engine. In choreo the role of the developer ends with commiting code and packaging app into a image. The rest is taken care by Choreo platform.

  15. The Choreo platform boasts of complete software development cycle support ranging from CI/CD to deployment on a cluster. To playaround, visit Choreo website.

  16. Next JS which is a react framework has good levels of RSC support. Other react frameworks like remix are not behind. Think RSC, think react frameworks. RSC have friends too, they are called React server actions. use server directive, heard of it?

If there were one word that was repeated a lot during react nexus 2024, it would be RSC

  1. The fourth speaker Vamshi Suram spoke about "Scalable mock data injection into Apollo (GraphQL) Client". Overall the speaker was confortable on stage talking about his open source project apollo-mock-http which helps us with data mocking even in enterprise level applications.

  2. Mocking should be done away from application layer so that they can be toggled with a feature switch. This is not advice specific to apollo client but frontend in general. I like this application design pattern.

  3. Good mocking should not hinder or interfere with UI rendering because you loose out on the UI interactivity and animation. This advice is given with the context of react components where devs set data to props directly to mock the data.

  4. The fifth speaker Sweta Tanwar spoke about "Defensive Development: Testing Tactics for React Native Resilience". This was the first speech referencing React Native in React Nexus 2024. The content was actionable and could easily be blown up into a full book.

  5. Defensive application development can be broken into 3 categories. Code practices, Testing and CI/CD automation. More details in the next thread.

  6. Code practices include code quality checks, error handling with graceful degradation and error boundaries, component isolation before testing

  7. Testing practices include Unit testing with Jest, Integration testing with Enzyme and E2E testing with Detox/Appium. On react we are mostly talking about React testing with Vitest and playwright testing.

  8. The pyramid visualization was used to show that an app needs more unit tests which are efficient and integration testing at the top of the pyramid which are comprehensive. The pyramid slide will be referenced in my future discussions with architects on why unit, e2e and integration.

  9. CI/CD automation of tests can be done to catch regression issues in a automated fashion. We can use tools like circle CI, Travis, etc.

  10. The Sixth Speaker Rajat Vijay spoke about "Experiments with AI-Generated Tests". I see the testing theme, pre lunch to be a good idea. Good job organizers. I can sense that Rajat has seen good amount of tests in his career. He clearly outlined the problem with Copilot generated tests and how he intends to fix them.

  11. Rajat mentioned a tool titled "auto guardian" which instructs AI tools about the expected quality and style of testing. It looks like a config file for AI testing. I feel this would bring uniformity in the AI testing.

  12. Rajat spilled a few interview questions. userEvent vs fireEvent? Whats the difference and which is better. getByRole vs getByText. I will write a blog about these topics soon

  13. Rajat referenced https://www.promptingguide.ai/ to understand more about writing better prompts. I believe the future auto guardian would refer to these prompting standards.

  14. The testing demo was fun to watch and clearly the quality of tests can be increased greatly. The link to github repo is broken. Rajat plz toggle the repo to public if its private.

  15. The seventh speaker were from freshworks, spoke about "AI-Assisted Development: Harnessing the Freshworks Freddy Copilot Toolkit for App Development". The second sponsor speech on day 1. Its interested to see the no code movement gaining steam. Developers can build a full fledged application with a few apps and monetise on the platform. Thats insane.

  16. The Freedy Copilot had lot of similarities with github copilot. It needed registration, installation on vs code, type your requirement on chat. Freedy can also deploy to their marketplace. Finally no code app generation is in reach / at times free to use.

  17. The different stages from an idea to app. Requirements gathering, design, implemenation & refactoring, testing can be handled by Freedy.

  18. Freedy can also build UI for the developers based on the prompt. frontend engineers, gulp it down. Yes AI can build UI. Freedy relies on vision models for generating UI for freshworks marketplace.

  19. The engineering behind Freedy copilot was also discussed by second presenter Nagaraj. All I could injest into my mind were LLM, AI and more of it. Finally Day 1 Lunch hour.

  20. The post lunch first session featured a panel discussion comprising none other than the react core team from meta, how cool is that. We had Satya talk about the working on React compiler. Yes I heard it for the first time. I know only about React fiber but React compiler is a thing. True to its name, it compiles your react app into something sophisticated.

  21. The react compiler could potentially free us from writing useMemo and useCallback as the compiler could do better code optimization compared to a normal developer. However if the compiler identifies a tricky code or hacky code, it will assume that developer is the best judge and shall not mess with it.

  22. In React 19, ref is a regular prop. I hope to miss forwardExoticComponentRef in my life.

  23. There was a short and sweet answer to breaking changes, if you had been following the modern standards of react development. Then there are no breaking changes that should bother you. So legacy app developers brace yourself, modern app developers rejoice and upgrade to react 19.

  24. eslint plugin for react is now updated and optimized for react compiler. However there are many bugs that could escape the eslint and get inferred by React compiler. Code better and do not just trust eslint for react.

  25. React Strict DOM (RSD) is an integration of React DOM and StyleX, aiming to streamline and standardize the development of styled React components for web and native targets. We had Stylex maintainer Naman Goel talk about the possibilities of RSD.

  26. The conversation quickly moved towards RSC (React Server Components) best practices. Don't waste time hydrating components that are not read/used.

  27. Render as you fetch or fetch as you render? An another interview question to note. The panel favoured Render as you fetch as mentioned this is how apps to be built be it RSC or RN

  28. use operator is used for reading resources outside of the render. However it being a panel discussion, no demo or code was shown about the use operator. An another speech topic for potential speakers.

  29. The road ahead for react team looks like this. Compilation improvements, eslint plugin updates, lot of tooling related work is expected. I remember panel mentioning NextJS, Remix, etc. The panel discussion felt short but Tapas (the moderator) was well prepared with sharp questions.

  30. The eighth speaker Prateek Surana spoke about "Elevate your routing game with TanStack Router". Definitely I felt slightly outdated or an idiot for not use tanstack router after his demo. The power and relevance for enterprise use cases were amazing and would prevent developers from reinventing the wheel around routing.

  31. Tanstack router is file based, which is easy to understand and relatively hard to scale. To me the most killer feature was auto filter param rename in runtime. Let us say if param was misspelled, tanstack query can correct it for us without breaking the application

  32. The overall tanstack tools are squarely built around scaled react usecases which is beyond a simple ecommerce use case. I recommend checking out other tanstack tools and I am also excited to see how the tanstack fullstack comes out to be.

  33. The nineth speaker Palak Bansal spoke about "Mastering Image Optimization Techniques for Web Performance in React Applications". Let us face it, images can be hard to optimize and Addy osmani has written a book about it. Palak rightly hit the nail on the head by telling "Best practices keep changing which makes image optimization harder"

  34. Broadly there are 3 image optimization techniques that were discussed. They are lazy loading, responsive images and image CDN.

  35. Lazy loading can be done on the tag with a attribute called lazy. The responsive images can be based on width of the client or pixel density of the client. Image cdn can be self managed or third party cdn which generate images on the fly specially for the client

  36. If you are wondering if the talk around image optimization is not as comprehensive as Addy Osmani book, you are right. This is a small talk format, some speeches are smaller than others.

  37. The tenth speaker Jerad Rutnam spoke about "Simplify React App Login". The reasons for having a login feature are access control and personalization. But having a solid authentication logic can be hard and there were the sponsor of the event pitched his humble React component which was part of Asgardeo sdk

  38. As part of Asgardeo team, the recommendation from Jerad was to delegate complex parts of the app and focus on business logic implementation which could be your goto market strategy. Cannot deny if everyone had good budget, flexibility in the code and restrictions around data.

  39. The eleventh speaker Apurv Khare spoke about "Flashpoint Performance". Is that even a thing or library or concept? Before I could stop wondering, the speaker was sprinting at the speed of flash with his speech. Lots of concepts discussed and I had tough time writing down the ideas from his speech. But the speaker knew his tools and he explained with confidence.

  40. Measure performance first and optimize later. The speaker took us through different categories of performance metrics like Browser metrics, Core web vitals, Lab data & Field data. The optimization techniques include compression techniques, optimizing JS, optimizing CSS, resource hints and optimized Largest Contentful Paint (LCP).

  41. The speaker idea was to give a crash course on measure performance and also optimizing the performance with some numbers/reports from the tools wherever required. But I do not think the speaker showed us any tool called flashpoint.

  42. Browser metrics - Time To First Byte (TTFB), Speed Index. Core web vitals / User experience metrics - Largest Contentful Paint (LCP), Interaction to Next Paint (INP), First Input Delay (FID), Cumulative Latest Shift (CLS)

  43. Here are some of the tools to measure website performance. App run at lab condition / lab data - Lighthouse, webpage test. App run at field condition / field data - Chrome UX report (CrUX), Pagespeed insights

  44. The network waterfall was well discussed with webpageTest and web vitals were discussed. The important performance concept, Critical Rendering Path was discussed. Of course, the speaker mentioned how CSSOM is built and how its different from JS DOM.

  45. Website performance testing on first load vs repeat load was interesting to me because we generally measure the first load only. Wherever flat text files or documents are served from server to client, we must enable one of the gzip, brottli or other compression techniques

  46. For optimizing JS - Pause blocking JS, defer it as much as possible. For Optimizing CSS - download CSS ASAP on the device in one chunk so that CSSOM gets built and the user can see the content rendered. Use resource hints like rel, as to pre load the content before it gets used. When prefetching multiple resources, use fetch priority.

  47. The day 1 post noon, performance speeches continue. The 12th speaker and last speaker of the day was Saurabh Daware and he spoke about "Debugging Performance Issues of Your Website". The previous speech was theoretical and this speech was practical to the best.

  48. Performance issues are like any other bugs, for debugging performance issues just do not put a break point. The first place to look for is the network waterfall whenever we face an issue.

  49. The speaker was running a static site featuring Razorpay landing page, he demonstrated First Contentful Paint and Last Contentful Paint. The speaker attempted to showcase perceived performance optimization and how his attempted interfered with other metrics like LCP.

  50. The speaker showcased how he cleverly chose to improve the perceived performance by booting the webcontainer only when code gets focus, until that point he shows the static output which gives the user the perception of fast. Its kind of fake it until you make it logic.

Day 2 of React Nexus 2024

  1. Day 2 felt somewhat slow to me as we did not waste time at registration desk. But things took a turn when we begun the day 2 with a lightening talk about Yoga. The speaker gave a mini talk focussed on breathing, expanding spine length and some posture correction tips. We need to take 10 minutes a day to see the difference.

  2. The key exercises mentioned were neck stretches, breathing slow and deep, shoulder roll, cat cow pose while sitting. If you are yoga geek, then Tadasana and Garudasana were mentioned. If you feel stiff like wood, then remember range of motion increases with consistency.

  3. The 13th speaker Alex Lobera spoke about "Future-proofing state management at scale". He showcased the app he works on "Miro" and there is definitely lot of user state, sync state happening in the app. The app looks like scrum board and renders on canvas/webGL based on the client.

  4. The author somehow connected the PHP era with RSC era. We were essentially connecting to DB and building UI all in one php file. We are doing the same in RSC. Just the server was not in the picture during SPA era and now its back. Congrats, everyone is now a full stack engineer.

  5. Client can access server state but server cannot access client state. The server is coming back to the picture, this time its different. The server can help us build a state in RSC era. fyi day 2 had lot of speakers flying into India for the conference. Alex was from Portugal.

  6. The 14th speaker Tapas Adhikary spoke about "Do You Really Need React Query For Your Applications?". I was one of the user of React Query and I got hooked. The real threat to React Query was change in context due to RSC. Now the client can talk to DB directly. However for complex use cases we might still need tanstack query.

  7. The 15th speaker K Kamalakannan spoke about "Simplifying Complex Logic: Leveraging XState in React Development". I appreciate the state machine part, orchestration and visualization aspect of XState.

  8. The 16th speaker Ankit Tailor spoke about "How I built a Powerful Typed System?". He had worked on a design sytem called gluestack where he has authored CSS in JS which needs to be type safe. I could appreciate the use case for generic data types in designing type systems.

  9. The speaker mentions different aspects of DX like linting, debugging tools, typescript type checks and he showcased a CLI diagnostic tool which could show the size of generated types file which is absolutely needed for performance reasons. npx tsc --diagnostics

  10. The 16th and 17th speaker were Mike Grabowski & Eric Vicenti speaking about a new paradigm "How you can Server-Render without Rendering on the Server". At the core we are trying to use web sockets to communicate with client UI on realtime to render changes. The use case was showcases interactively like a theatre play by 2 speaker on the stage with live coding.

  11. The speakers showcased their npm component library which could react to our code listening via WS protocol. The links to the code or library cannot be found on google. Watch out for rise.tools. Not just the rendering library, rise.tools also has a component library so that developers can quickly build apps along with a playground.

  12. The 18th speaker Sanket Sahu spoke about "Building Back-End Driven Universal Apps". Conceptually Sanket is attempting to solve the same problem as Mike & Eric. Instead of too much code which looks like config. We have syntactically simpler code which can be generated by chatgpt to a very high level of accuracy. Thats in line with no code development of the future.

  13. The 19th speaker Shruti Arya spoke about "Measuring UI performance at scale". The talk was mostly about React native app on low end android devices. The github project was called component-profiler. Surprisingly I could not catch hold of the link to it. The goal was to prevent long re-renders so that there is no jankiness.

  14. The 20th speaker Santosh Yadav spoke about "Improve your Developer Experience with Nx". When the pain point that Nx tries to fill was lengthy build times on any machine, be it CI/CD or cloud or local. The NX tool intelligently creates a graph of the code and precisely knows the impact of the code change. Then runs the required build tasks instead of running every single build step on the entire code base.

  15. The 21st speaker Apoorv Taneja spoke about "Creating beautiful experiences with Framer-Motion on web". Framer motion helps anyone without indepth css knowledge build animations. The speaker precisely showed us how to use framer to create interactivity on the UI components.

  16. The 22nd speaker Yashpreet Bathla spoke about "Avoid flickering user interfaces". The presentation deck resembled windows 95 and it was amazing. The speaker explained the concepts like call stack, micro task queue, macro task queue and render queue in detail. He also mentioned the need to maintain 60FPS, and one render in 16.6ms to have a jank free interface. He also showed how using useLayoutEffect helps in preventing jankiness when compared to useEffect

  17. The 23rd speaker Mohit Kumar Toshniwal spoke about "Building XR applications using React Three Fiber". As speaker rightly said, the AR/VR usage has increased. Be it shopping on amazon or navigating with google maps. We can build AR/VR apps in react with react three fiber, drei, leva, react-xr etc

  18. Then a panel discussion follows but this time the theme is state of react native. Panelists mentioned that react native is yet to reach v1.0.0. The expo eco system is quite mature and visiting expo.new is the way to get started with React native.

  19. The 24th speaker Neha Sharma spoke about "Connecting Worlds: Enhancing Accessibility in React Native TV Applications". Her talk was more about building accessible react native apps for smart TVs. On the mobile, the accessible is missing unlike accessible semantic html. This calls for more empathy from react native developers. The attributes like accessible are must have to make app accessible on TVs. The speaker reiterated that accessiblity is hard, its not a requirement but a feature to have.

  20. The 25th speaker Siddharth Kshetrapal spoke about Building accessible reusable react components. Having worked at primer.style, he is proficient in comprehending accessiblity issues and uses his tech speaker skills to make it interesting and understandable to audience. The speaker used 2 commonly used github widgets and tried to make them accessible.

  21. Siddharth referenced the importance of APG over WCAG in some use cases. he cleverly used the voice over to illustrate the pain, which the disabled people undergo due to our incorrect coding. I was thrilled and hooked to this speech, will certain share this speech to A11 enthusiasts.

Other wonders from React Nexus 2024

  1. I watched the react documentary trailer for the first time and happy to see the people behind React and the collective team spirit. You should watch it too, I mean the full video on youtube titled "How A Small Team of Developers Created React at Facebook | React.js: The Documentary".

  2. The sponsors were unintrusive, I was not bored by their presence on the stage or at the booth. Both of them answered the questions earnestly. The Freedy developer, aka AI tool for freshworks marketplace developers booth at the conference was showering goodies to the successful quiz winners and they had a lucky draw too.

  3. The Asgardio platform which is a simple managed Authentication platform for developers conducted a workshop post the day 1 session which I felt was a generous offering for attendees. The choreo platform which was an another stall was a useful utility for individual developers and small teams who want to have managed backend service. I love their stickers and pens kept for visitors.

  4. The audience were diverse in terms of demographics and their roots. Some of them were from students at Scalar academy, managers at Microsoft, founders of companies and in between. The Javascript community is quite strong like a giant multinational company having its subsidaries for their interests. We have JS Lovers, Chennai React, Delhi React, React Day Bangalore, team shiksha, etc

  5. Emcee Jobs are hardest and demands Charisma. Aakansha Doshi was simply bold and energetic. The cardio session to beat the sleep was a masterstroke by Aakansha.

  6. From timely humor to manager jokes, the second emcee Sahil Kalyani was equally charismatic on the stage. The third emcee Yashraj Nayak, whom I would remember for "how is the josh" was unique. He had deep connections with speakers and he was able to discuss some enjoyable anecdotes from his experience working with the speaker. Lastly "How is the Josh?"

  7. The one last thing would be the presentation aids prepared by the tech speakers were spellbound. I would appeciate the amount of time, thought and content the speakers have put into the presentations aids / PPT material. I could not differentiate if its online editor or powerpoint tools or excalidraw or just 10x creative powers of the speakers who were frontend engineers.

Thats enough about react nexus and my commentary on React nexus 2024, have a good day.

Is Amazon Prime Saving Delivery Charges? Amazon Seller Comments with inside details.

· 2 min read
D Balaji
Lead Design Technologist

Disclaimer: Amazon is used as a reference only, the issue of delivery charges is omnipresent in the ecommerce world. Treat the below article as an education material only.

On Amazon marketplace, the delivery charges or logistics charges are unavoidable because the amazon products are to be delivered to the customer by Amazon itself.

Amazon charges for the delivery directly and indirectly

Amazon marketplace makes money from both sides.

  1. Money from Customers who buy on Amazon
  2. Money from Sellers who sell on Amazon

This is when things turn awry for me. As a seller I pay delivery charges based on multiple factors like location of the seller and how far the location is relative to the seller location. As a seller I have no visibility on if the customer is a prime member or not. Neither any discounts on prime are shown to me. As a seller, I have to factor in the delivery charges in the MRP or collect separate delivery fees. As a amazon prime member if I buy the product, I am already paying for the delivery charge which is factored into the pricing by the seller.

If a non amazon prime member does the purchase below the threshold, then the amazon customer has to pay delivery charges twice because the seller has already factored in, the delivery charges along with the cost price and profit.

But Amazon prime members are not really given any "Free Delivery" as promised, its just a waive off of an platform charge associated with Amazon. The 1499 per year is not a discount voucher for delivery charges. In fact, you might have noticed that some products are less than 50 INR in physical stores like pens but on Amazon they are 150Rs etc because of the delivery charges.

Overall the delivery charges are unavoidable on any ecommerce platform and diminishes the value of the sales if the shopper is not careful. To be careful, the shopper need to be aware of the prices in the real world.

Summary

  1. Both Amazon Prime and Non Prime members bear the shipping charges directly and indirectly
  2. As a online shopper, think of the value of the shopping transaction before you close the purchase along with myriad other quality and other concerns.

Price is what you pay, value is what you get.

From Home Comforts to Office, the end of episode WFH

· 5 min read
D Balaji
Lead Design Technologist

In the army, the personnel are called soldiers. In tech companies, the personnel are called resources. The army trains in camps and carries weapons. Resources work in offices, GCC, and carry laptops. In 2020 due to covid pandemic outbreak, the resources were asked to work from home. Thats how the resources experienced work from home lifestyle, the episode started. Fast forward 2024, the resources are asked to leave behind the work from home and come back to office marking the end of episode work from home, lovingly called the WFH.

Some companies went the extra mile and allowed the resources to work from anywhere forever. In a similar time frame, I wrote an article about work from home vs remote working. The key takeaway was that working from home was a temporary fix unless the company adopted the culture mentioned in the book Remote, Office Not Required.

Fast forward to the start of 2024, almost all companies have given a first call, second call, or in some cases, a final call asking resources to get back to working from the office. This means that the comfort of working from home and the associated lifestyle is no more. But there have to be a few reasons why the back-to-office movement is happening. Of course, there are many reasons; here are a few as quoted by management.

Reasons to get back to the office

  1. Covid is out of the picture; we can get back to the old way of working from the office. Our senior management is already doing it.
  2. Operating in silos or as small teams won't boost the morale of the team or the culture of the company.
  3. Use the office as a space to build your personal brand.
  4. Please come to the office and use the building; we have purchased or leased it already for the long term. We have made it better in the recent renovation.
  5. The economy depends on your return to the office; the cab drivers, janitors, and realtors need you.

If you ask me, except for the first reason, the others should not be taken seriously.

How management is pulling resources back to the office

  1. The company-wide call announcing mandatory work from the office for a minimum of 3 days.
  2. Check if employees have punched into the office for a minimum of 3 days or 50% of working days.
  3. Bring in a policy that allows reduced pay for people working remotely.
  4. Bring in another policy that values presence in the office. No promotion if not working from the office. Personally, this statement is dangerous. Companies pay higher salaries to retain employees and not out of obligation. Having said that, more salary reduction could mean being on the layoff list.
  5. In-office meetings and not having the option for online participation from WFH resources.

My reaction to the back-to-office episode

  1. In late 2020, after analyzing the implementation of WFH, it was clear that this was a temporary arrangement.
  2. I condemn the press statements and town hall speeches by the management of tech companies in favor of working from anywhere. Everyone believed that working from home would continue forever.
  3. Later in 2023, the management was the first to step into the office, followed by their immediate teams. This set an example for the whole company that working from the office is the way to conduct business.
  4. Working from the office could mean perks like team lunches and client visits happening soon. Good for those with passports ready.
  5. Companies need to be mindful about the transition and set the deadlines accordingly. Some employees were working in their pyjamas for long hours at home. In the work-from-office arrangement, they will waste time commuting, etc.
  6. I am surprised when no management person said that working from the office is an opportunity for osmosis of ideas, easy to mentor juniors, or have fun moments. It looks like none of these happen at the workplace anymore or have been forgotten because of insufficient use.

Don't go to extremes

One person got into an argument where he refused to take the laptop home in the work-from-office arrangement, which led to tensions at the workplace. Accept that no system is perfect and software has bugs. In a long career span of 40 years, anything can happen. Many trends come and go.

We lived the WFH moment; it's time to move on.