41554 blogs · [ { "id": "01a08755-8fcb-7234-948a-d315137f0d9d", "title": "Evaluating Algebraic Expressions using Parser Combinators", "url": "https://blog.varunramesh.net/posts/algebraic-expressions-using-parser-combinators/", "published_at": "2023-08-24T06:25:17+00:00" }, { "id": "01a08755-8fcb-7234-948a-d315142c0ab0", "title": "An Introduction to Parser Combinators", "url": "https://blog.varunramesh.net/posts/intro-parser-combinators/", "published_at": "2023-06-25T08:54:34+00:00" }, { "id": "01a08755-8fcb-7234-948a-d31514c21687", "title": "ChatGPT is Good at Roleplaying Characters", "url": "https://blog.varunramesh.net/posts/chatgpt-role-playing/", "published_at": "2023-05-06T13:15:01+00:00" }, { "id": "01a08755-8fcb-7234-948a-d3151527fbc3", "title": "Simple Tips to Level Up Your Python Programming Skills", "url": "https://blog.varunramesh.net/posts/simple-python-tips/", "published_at": "2022-11-14T09:54:41+00:00" }, { "id": "01a08755-8fcb-7234-948a-d31515fc098e", "title": "Thermomorph Postmortem", "url": "https://blog.varunramesh.net/posts/thermomorph-postmortem/", "published_at": "2018-08-22T10:14:11+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a89a81d454", "title": "Proctor Postmortem", "url": "https://blog.varunramesh.net/posts/proctor-postmortem/", "published_at": "2018-07-02T00:49:25+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a89b6f1871", "title": "Loop, Autoplay, Muted, Playsinline - Say Goodbye to Animated GIFs", "url": "https://blog.varunramesh.net/posts/loop-autoplay-muted/", "published_at": "2018-04-17T22:11:44+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a89c155cf1", "title": "The Boehm GC Feels Like Cheating", "url": "https://blog.varunramesh.net/posts/the-boehm-gc-feels-like-cheating/", "published_at": "2018-03-16T06:58:55+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a89ce3f4da", "title": "No More Primitives - What Python and Java Get Wrong", "url": "https://blog.varunramesh.net/posts/no-more-primitives/", "published_at": "2018-03-15T03:05:03+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a89d2e7cfc", "title": "I Allowed All Web Push Notifications for a Week", "url": "https://blog.varunramesh.net/posts/i-allowed-all-web-push-notifications-for-a-week/", "published_at": "2018-03-12T04:12:14+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a89d5ca768", "title": "Editing Gameplay Videos without Re-encoding using FFmpeg", "url": "https://blog.varunramesh.net/posts/editing-gameplay-videos-without-re-encoding-using-ffmpeg/", "published_at": "2017-12-26T18:04:26+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a89e5618f3", "title": "How I Structure GameObjects - Components and Mixin-based Inheritance", "url": "https://blog.varunramesh.net/posts/unifying-component-based-gameobject-systems-and-mixin-based-inheritance/", "published_at": "2017-11-02T09:04:17+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a89ec96f2a", "title": "Lua Gotchas", "url": "https://blog.varunramesh.net/posts/lua-gotchas/", "published_at": "2017-10-20T11:06:05+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a89f6740c4", "title": "Composable, Programmatic Animations for Games", "url": "https://blog.varunramesh.net/posts/composable-animations/", "published_at": "2017-09-05T00:14:22+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a8a04c72b9", "title": "Unifying Dynamic Type Tests and Type Refinement", "url": "https://blog.varunramesh.net/posts/understanding-dynamic-typechecks/", "published_at": "2017-09-04T06:44:30+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a8a0d007be", "title": "Stackless vs. Stackful Coroutines", "url": "https://blog.varunramesh.net/posts/stackless-vs-stackful-coroutines/", "published_at": "2017-08-19T06:25:00+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a8a11d34a4", "title": "Spaced Out - CS148 Ray tracing Project", "url": "https://blog.varunramesh.net/posts/spaced-out-cs148-raytracing-project/", "published_at": "2017-06-07T05:40:00+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a8a120e0bc", "title": "Automatically Promoting Constructor Parameters to Fields", "url": "https://blog.varunramesh.net/posts/constructor-argument-promotion/", "published_at": "2017-03-30T20:26:00+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a8a1427a46", "title": "Runaway Robot - A Mobile Runner Game", "url": "https://blog.varunramesh.net/posts/runaway-robot-a-mobile-runner-game/", "published_at": "2017-03-29T10:11:00+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a8a1b79950", "title": "Pulling a Page's Modified Date from Git", "url": "https://blog.varunramesh.net/posts/pulling-modified-date-from-git/", "published_at": "2017-03-28T23:29:00+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a8a27ee60a", "title": "Blue Screen - Ludum Dare 30 Entry", "url": "https://blog.varunramesh.net/posts/blue-screen-ludum-dare-30-entry/", "published_at": "2014-08-29T21:51:00+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a8a2acf833", "title": "ASCII Bell Character", "url": "https://blog.varunramesh.net/posts/ascii-bell-character/", "published_at": "2014-08-17T10:05:00+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a8a362fbd0", "title": "Simple Reloading Server in Bash", "url": "https://blog.varunramesh.net/posts/simple-reloading-server-in-bash/", "published_at": "2014-08-06T07:16:00+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a8a42e8ccf", "title": "The Damned", "url": "https://blog.varunramesh.net/posts/the-damned/", "published_at": "2014-07-20T21:30:00+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a8a4532095", "title": "A Perk of Using WebGL", "url": "https://blog.varunramesh.net/posts/a-perk-of-using-webgl/", "published_at": "2013-11-29T00:01:00+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a8a514bcd0", "title": "Recent Hackathon Projects", "url": "https://blog.varunramesh.net/posts/recent-hackathon-projects/", "published_at": "2013-11-28T21:46:00+00:00" }, { "id": "01a08755-8fcc-7214-935e-96a8a52ded64", "title": "Designing a Cardboard Canoe", "url": "https://blog.varunramesh.net/posts/designing-a-cardboard-canoe/", "published_at": "2013-07-23T02:26:00+00:00" } ] posts Claim your blog
Back to varunramesh
Blog · corpus.blog/blogs/blog.varunramesh.net/posts

varunramesh

blog.varunramesh.net

2023

2022

2018

2017

2014

2013