{"content_list": [{"text": "I had a delicious meal last night \ud83d\ude0b ", "title": "Experimenting with food blogging?", "slug": "experimenting-with-food-blogging", "description": null, "updated_at": "2026-03-28T09:24:42.697Z", "media": ["https://cpx.tnvmadhav.me/content/image/content-images/IMG_6572_Large.jpeg", "https://cpx.tnvmadhav.me/content/image/content-images/IMG_6573_Large.jpeg"]}, {"text": "I've thought about this beforehand so don't fret too much. just follow.\n\nThe answer is to be in \"war mode\" until you're \"done\".\n\nWhat \"done\" is depends on when you wanna stop but if you wanna do it more, you're not done.\n\n\"War Mode\" is basically falling back on \"hard work\" over \"soft work\"\n\n\"Hard Work\" is working with full concentration without context switching until a \"milestone\" is reached.\n\nA \"Milestone\" is anything that will help you do the same thing in lesser time and hopefully lesser effort. It's also something that will \"up your attributes\" to know what the next milestone is. If you don't know what you're next milestone is, you don't know what to do so that's where you're likely \"done\".\n\nNow you can think if you wanna do more of it but you don't know what to do, that means you've ascended to local maxima. You may have to backtrack and find the next \"milestone\" in the process. This is hard but you must walk it.\n\nThe goal is to work until you don't know what to do next and you're ready to hang it and relax on that aspect.\n\nI generally think this would be at the age of 65 where you're not providing value to the world even with the best (90%) of your capability without hurting yourself more.", "title": "my thoughts on how to get good", "slug": "my-thoughts-on-how-to-get-good", "description": null, "updated_at": "2026-03-28T09:03:55.945Z", "media": []}, {"text": "Today I learned that we can check if 2d **slices** are equal using `reflect.DeepEqual` function in golang. \n\nThis isn't fast because recursion is involved so writing an iterative loop is must faster.\n\nI always thought we could use `==` operator but looks like we can't (unlike 2d arrays) :/\n\nso `reflect.DeepEqual` seems to be a syntactical sugar of sorts, which was what I wanted :P", "title": "TIL about comparing equality of 2-dimentional slices in Go", "slug": "til-about-comparing-equality-of-2-dimentional-slices-in-go", "description": null, "updated_at": "2026-03-22T11:53:52.785Z", "media": []}, {"text": "Today I learned how to convert an integer to binary string format in python using standard functions available.\n\nbinary_string = format(n, '0Nb')\n\nwhere N is the number of digits we need\n\n```txt\n>>> format(10)\n'10'\n>>> format(10, 'b')\n'1010'\n>>> format(10, '9b')\n'     1010'\n>>> format(10, '09b')\n'000001010'\n```\n\nI also found another way to convert binary string back to integer.\n\ninteger = int(binary_string, 2)\n\nNow, this means the following python statement will always be true for any integer (I guess there are no edge cases here but maybe I'm wrong):\n\nassert integer == int(format(integer, 'b'), 2)", "title": "TIL about string formatting functions in Python", "slug": "til-about-string-formatting-functions-in-python", "description": null, "updated_at": "2026-03-08T12:08:11.952Z", "media": []}, {"text": "TIL how to format strings in PostgreSQL using format function.\n\nIt\u2019s similar to formatting like that if go or c.\n\nhttps://www.postgresql.org/docs/current/functions-string.html#FUNCTIONS-STRING-FORMAT", "title": "TIL how to format strings in PostgreSQL", "slug": "til-how-to-format-strings-in-postgresql", "description": null, "updated_at": "2026-02-18T03:13:38.330Z", "media": []}, {"text": "we have come to a point where we don\u2019t know if anything is real or not. like if it\u2019s found on digital media. which is why I feel there will be a Cambrian explosion of things that people build on the internet create and in terms of content (video content especially) and also for the other modalities, which is why we need to conclude that everything  is going to blow up like never seen before, and hence we should limit what we consume on the internet through pools of peer reviewed facts and news (if not already)", "title": "Shower thoughts on the latest developments in AI", "slug": "shower-thoughts-on-the-latest-developments-in-ai", "description": null, "updated_at": "2026-02-15T05:31:48.871Z", "media": []}, {"text": "i found myself reading a post from go blog: https://go.dev/blog/defer-panic-and-recover", "title": "i found myself reading a post from go blog about defer, panic and recover", "slug": "i-found-myself-reading-a-post-from-go-blog-about-defer-panic-and-recover", "description": null, "updated_at": "2026-02-11T03:22:03.499Z", "media": []}, {"text": "if you feel that you\u2019re falling behind, then know that what you do between 5 to 9 will improve your 9 to 5 experience sooner than later.", "title": "shower thoughts on getting back to hiking the peak", "slug": "shower-thoughts-on-getting-back-to-hiking-the-peak", "description": null, "updated_at": "2026-02-05T03:06:22.072Z", "media": []}, {"text": "Excerpts from \u201cCode is cheap, show me talk\u201d by Kailash Nadh\n\n> An experienced developer who can talk well, that is, imagine, articulate, define problem statements, architect and engineer, has a massive advantage over someone who cannot, more disproportionately than ever.\n\nfor reference https://nadh.in/blog/code-is-cheap/", "title": "Excerpts from \u201cEnough code, show talk\u201d by Kailash Nadh", "slug": "excerpts-from-enough-code-show-talk-by-kailash-nadh", "description": null, "updated_at": "2026-01-31T05:06:30.887Z", "media": []}, {"text": "TIL about HTTP Range Headers\n\nhttps://tnvmadhav.me/til/about-http-range-headers/", "title": "TIL about HTTP Range Headers", "slug": "til-about-http-range-headers", "description": null, "updated_at": "2026-01-29T04:52:52.400Z", "media": ["https://cpx.tnvmadhav.me/content/image/content-images/image_7c5oZw0.png"]}], "user": {"username": "tnvmadhav", "img_url": "https://pbs.twimg.com/profile_images/1623329290040516608/CnlbX0If_normal.jpg"}}