[{"data":1,"prerenderedAt":544},["ShallowReactive",2],{"category-Web":3},[4,14,23,32,42,50,58,66,73,80,87,94,101,108,116,124,132,139,146,153,160,167,174,183,191,198,205,212,219,226,233,240,247,254,261,268,275,282,290,297,304,311,319,326,333,341,349,356,364,371,379,386,394,401,408,415,422,429,436,443,450,457,464,471,478,486,493,501,508,515,522,530,537],{"path":5,"title":6,"description":7,"categories":8,"year":11,"draft":12,"headerImage":13,"cardAlt":6},"\u002Fblog\u002Fai-assisted-workstation","Building an AI-Assisted Personal Workstation","A living log of building a practical AI-assisted workstation for software and startup work.",[9,10],"Productivity","Programming","2026-08-08",true,"blog\u002Fai-assisted-workstation\u002Fai-assisted-workstation-card.webp",{"path":15,"title":16,"description":17,"categories":18,"year":20,"draft":21,"headerImage":22,"cardAlt":16},"\u002Fblog\u002Faws-s3-golang","Uploading images to AWS S3 in Golang","In this tutorial I cover how to upload, fetch and manage other operations for objects on AWS S3 in Golang",[19,10],"Golang","2020-01-12",false,"blog\u002Faws-s3-golang\u002Faws-s3-golang-card.webp",{"path":24,"title":25,"description":26,"categories":27,"year":30,"draft":21,"headerImage":31,"cardAlt":25},"\u002Fblog\u002Fbooks-for-engineers","Best Books for Software Engineers","Best Books to help you build you software engineering career - ranging from fundamentats, interview prep to productivity.",[28,29],"Books","Life","2021-12-26","blog\u002Fbooks-for-engineers\u002Fbooks-for-engineers-card.webp",{"path":33,"title":34,"description":35,"categories":36,"year":40,"draft":21,"headerImage":41,"cardAlt":34},"\u002Fblog\u002Fbuilding-acrons","Building Acrons 🚀","Building Acrons, a one-stop tool to decode everyday acronyms like DIY, FOMO, and BRB without losing your flow.",[37,38,39],"Side Projects","Web","Tools","2020-05-26","blog\u002Fbuilding-acrons\u002Fbuilding-acrons-card.webp",{"path":43,"title":44,"description":45,"categories":46,"year":48,"draft":21,"headerImage":49,"cardAlt":44},"\u002Fblog\u002Fcap-theorem","CAP Theorem Explained","Learn the concept and misconceptions around popular CAP theorem in system design.",[47,10],"System Design","2021-07-26","blog\u002Fcap-theorem\u002Fcap-theorem-card.webp",{"path":51,"title":52,"description":53,"categories":54,"year":56,"draft":21,"headerImage":57,"cardAlt":52},"\u002Fblog\u002Fcode-reviews","Code Review Checklist","Why code reviews matter, and best practices that catch bugs early and keep code quality high before merge.",[55],"Engineering Principles","2020-07-20","blog\u002Fcode-reviews\u002Fcode-reviews-card.webp",{"path":59,"title":60,"description":61,"categories":62,"year":64,"draft":21,"headerImage":65,"cardAlt":60},"\u002Fblog\u002Fdark-mode","Add Dark mode to websites","Dark mode is ❤️️ Add it to your websites with little CSS and JS",[63,38],"Javascript","2020-07-04","blog\u002Fdark-mode\u002Fdark-mode-card.webp",{"path":67,"title":68,"description":69,"categories":70,"year":71,"draft":21,"headerImage":72,"cardAlt":68},"\u002Fblog\u002Fdate-time-golang","Working with Date and Time in Go","Learn how to use time in Golang - Multiple formats, locations and using date.",[19,10],"2020-10-09","blog\u002Fdate-time-golang\u002Fdate-time-golang-card.webp",{"path":74,"title":75,"description":76,"categories":77,"year":78,"draft":21,"headerImage":79,"cardAlt":75},"\u002Fblog\u002Fdefer-in-golang","Understanding Defer In Golang","Learn about defer keyword in golang and how it can help you avoid panics due to bugs.",[19,10],"2021-05-05","blog\u002Fdefer-in-golang\u002Fdefer-in-golang-card.webp",{"path":81,"title":82,"description":83,"categories":84,"year":85,"draft":21,"headerImage":86,"cardAlt":82},"\u002Fblog\u002Fenums-golang","Implementing Enums in Golang","Enums are a way to defined set of constant values. Learn how to implement enums in Go using iota with examples.",[19,10],"2021-12-18","blog\u002Fenums-golang\u002Fenums-golang-card.webp",{"path":88,"title":89,"description":90,"categories":91,"year":92,"draft":21,"headerImage":93,"cardAlt":89},"\u002Fblog\u002Fenvironment-variable-golang","Guide to Environment variables in Go","Learn what are environment variables and how to use them in Go",[19,10],"2020-08-14","blog\u002Fenvironment-variable-golang\u002Fenvironment-variable-golang-card.webp",{"path":95,"title":96,"description":97,"categories":98,"year":99,"draft":21,"headerImage":100,"cardAlt":96},"\u002Fblog\u002Ferror-handling-golang","Handle errors the right way — Golang","How to handle errors in golang to make your life easy",[19,10],"2020-01-30","blog\u002Ferror-handling-golang\u002Ferror-handling-golang-card.webp",{"path":102,"title":103,"description":104,"categories":105,"year":106,"draft":21,"headerImage":107,"cardAlt":103},"\u002Fblog\u002Ffile-upload-golang","Uploading Files in Golang with Multipart Request","Learn how to upload files from your client to server as a multipart request in Golang.",[19,10],"2021-03-13","blog\u002Ffile-upload-golang\u002Ffile-upload-golang-card.webp",{"path":109,"title":110,"description":111,"categories":112,"year":114,"draft":21,"headerImage":115,"cardAlt":110},"\u002Fblog\u002Fgit-branch","Git Branch 101","Branching is a new path of development that makes it a lot easier to build features. Learn why and how to use branching in git.",[113,10],"Git","2022-03-20","blog\u002Fgit-branch\u002Fgit-branch-card.webp",{"path":117,"title":118,"description":119,"categories":120,"year":121,"draft":21,"headerImage":122,"cardAlt":123},"\u002Fblog\u002Fgit-pull-request-template","Guide to Pull Request Templates","Improve collaboration and code reviews with pull request templates. Blog include PR template and how to create one on github\u002Fgitlab",[113,10],"2023-08-24","blog\u002Fgit-pull-request-template\u002Fgit-pull-request-template-card.webp","Ultimate Guide to Pull Request Templates",{"path":125,"title":126,"description":127,"categories":128,"year":129,"draft":21,"headerImage":130,"cardAlt":131},"\u002Fblog\u002Fgit-remove-sensitive-info","Securing Git: Remove Sensitive Information","Protect your code from security breaches by using BFG tool to remove sensitive information from Git history. Learn how to do it in this comprehensive guide.",[113,10],"2023-10-16","blog\u002Fgit-remove-sensitive-info\u002Fgit-remove-sensitive-info-card.webp","Securing Git: Removing Sensitive Information with BFG",{"path":133,"title":134,"description":135,"categories":136,"year":137,"draft":21,"headerImage":138,"cardAlt":134},"\u002Fblog\u002Fgit-tags-explained","Git tags : Explained","What Git tags are, why and when to use them, and how to start tagging releases in your own projects.",[113,10],"2020-06-18","blog\u002Fgit-tags-explained\u002Fgit-tags-explained-card.webp",{"path":140,"title":141,"description":142,"categories":143,"year":144,"draft":21,"headerImage":145,"cardAlt":141},"\u002Fblog\u002Fgo-dependency-injection","Dependency Injection in Go using Wire","Learn about dependency injection, its benefits and how to implement it in Go services using wire",[19,10],"2022-11-26","blog\u002Fgo-dependency-injection\u002Fgo-dependency-injection-card.webp",{"path":147,"title":148,"description":149,"categories":150,"year":151,"draft":21,"headerImage":152,"cardAlt":148},"\u002Fblog\u002Fgo-generics","Introduction to Generics in Go","Learn about generics in Golang, it's benefits and how to implement it in applications.",[19,10],"2022-11-27","blog\u002Fgo-generics\u002Fgo-generics-card.webp",{"path":154,"title":155,"description":156,"categories":157,"year":158,"draft":21,"headerImage":159,"cardAlt":155},"\u002Fblog\u002Fgo-in-memory-cache","Building In-Memory Cache in Go","Learn about in-memory caching in Golang, it's benefits and how to implement it with and without generics with a TTL(expiry).",[19,10],"2024-03-28","blog\u002Fgo-in-memory-cache\u002Fgo-in-memory-cache-card.webp",{"path":161,"title":162,"description":163,"categories":164,"year":165,"draft":21,"headerImage":166,"cardAlt":162},"\u002Fblog\u002Fgo-makefile","Ultimate Makefile for Golang","Boost your productivity and save time with ultimate Makefile for Golang projects.",[19,10],"2024-06-10","blog\u002Fgo-makefile\u002Fgo-makefile-card.webp",{"path":168,"title":169,"description":170,"categories":171,"year":172,"draft":21,"headerImage":173,"cardAlt":169},"\u002Fblog\u002Fgo-middleware","Mastering Middlewares in Golang","Learn about middlewares, their use cases and how to implement them in Golang applications",[19,10],"2022-03-13","blog\u002Fgo-middleware\u002Fgo-middleware-card.webp",{"path":175,"title":176,"description":177,"categories":178,"year":180,"draft":21,"headerImage":181,"cardAlt":182},"\u002Fblog\u002Fgo-naming-conventions","Naming Conventions in Golang","Why naming conventions matter in Go, with best practices and practical examples for clear, readable, maintainable code.",[19,10,179],"Code Quality","2023-05-19","blog\u002Fgo-naming-conventions\u002Fgo-naming-conventions-card.webp","Naming Conventions in Go - Key to Readable and Maintainable Code",{"path":184,"title":185,"description":186,"categories":187,"year":189,"draft":21,"headerImage":190,"cardAlt":185},"\u002Fblog\u002Fgo-with-redis","Go with Redis","A practical introduction to using Redis with Golang to make your applications faster with in-memory data storage.",[19,188,10],"Database","2020-05-03","blog\u002Fgo-with-redis\u002Fgo-with-redis-card.webp",{"path":192,"title":193,"description":194,"categories":195,"year":196,"draft":21,"headerImage":197,"cardAlt":193},"\u002Fblog\u002Fgolang-maps","Learn Maps in Golang (with examples)","A complete guide to maps in Golang: creating maps, adding and removing items, iterating, and how map equality works.",[19,10],"2020-09-10","blog\u002Fgolang-maps\u002Fgolang-maps-card.webp",{"path":199,"title":200,"description":201,"categories":202,"year":203,"draft":21,"headerImage":204,"cardAlt":200},"\u002Fblog\u002Fguide-to-cdn","Guide to Content Delivery Network","CDN is one of the backbone of modern world internet infrastructure. Learn about Content Delivery Network, it's working, types and benefits.",[47,10],"2022-01-23","blog\u002Fguide-to-cdn\u002Fguide-to-cdn-card.webp",{"path":206,"title":207,"description":208,"categories":209,"year":210,"draft":21,"headerImage":211,"cardAlt":207},"\u002Fblog\u002Fguide-to-rule-engines","Guide to Rule Engines","Rule Engines help in solving changing business requirements with ease. Learn all about Rule engines, it's working, benefits and how to implement one in Golang",[19,10],"2022-09-12","blog\u002Fguide-to-rule-engines\u002Fguide-to-rule-engines-card.webp",{"path":213,"title":214,"description":215,"categories":216,"year":217,"draft":21,"headerImage":218,"cardAlt":214},"\u002Fblog\u002Fhexagonal-architecture","Guide to Hexagonal Architecture","Learn how to design efficient application with hexagonal architecture with practical example",[47,10],"2020-12-13","blog\u002Fhexagonal-architecture\u002Fhexagonal-architecture-card.webp",{"path":220,"title":221,"description":222,"categories":223,"year":224,"draft":21,"headerImage":225,"cardAlt":221},"\u002Fblog\u002Fhttp-status-codes","Learn HTTP Status Codes","A tour of HTTP response status codes, what each class means, and when to use which code in your applications.",[38,10],"2020-07-30","blog\u002Fhttp-status-codes\u002Fhttp-status-codes-card.webp",{"path":227,"title":228,"description":229,"categories":230,"year":231,"draft":21,"headerImage":232,"cardAlt":228},"\u002Fblog\u002Fintroduction-to-goroutines","Introduction to Goroutines","Understand the basics of concurrency and learn how to work with Goroutines in golang.",[19,10],"2021-04-10","blog\u002Fintroduction-to-goroutines\u002Fintroduction-to-goroutines-card.webp",{"path":234,"title":235,"description":236,"categories":237,"year":238,"draft":21,"headerImage":239,"cardAlt":235},"\u002Fblog\u002Fjson-in-postgres-with-golang","Storing JSON in Postgres with Golang","Learn how to store JSON objects in Postgres and how to implement it in Golang.",[10,188,19],"2021-02-13","blog\u002Fjson-in-postgres-with-golang\u002Fjson-in-postgres-with-golang-card.webp",{"path":241,"title":242,"description":243,"categories":244,"year":245,"draft":21,"headerImage":246,"cardAlt":242},"\u002Fblog\u002Fjson-web-token","Complete Guide to JWT","JSON Web Tokens are a very compact way to carry information. Learn about JWTs in depth, from its structure to when to use it.",[10,38],"2021-11-20","blog\u002Fjson-web-token\u002Fjson-web-token-card.webp",{"path":248,"title":249,"description":250,"categories":251,"year":252,"draft":21,"headerImage":253,"cardAlt":249},"\u002Fblog\u002Flearn-to-say-no","Learning to say No","Learn why it's important to say 'NO'. How it helps in increasing productivity and explore strategies for saying No",[29,28],"2022-04-09","blog\u002Flearn-to-say-no\u002Flearn-to-say-no-card.webp",{"path":255,"title":256,"description":257,"categories":258,"year":259,"draft":21,"headerImage":260,"cardAlt":256},"\u002Fblog\u002Flearn-unlearn-relearn","Learn - Unlearn - Relearn","Unlearning things to learn new is the way to grow. Discover how to do that!",[9,29],"2020-09-25","blog\u002Flearn-unlearn-relearn\u002Flearn-unlearn-relearn-card.webp",{"path":262,"title":263,"description":264,"categories":265,"year":266,"draft":21,"headerImage":267,"cardAlt":263},"\u002Fblog\u002Flinting-in-golang","Introduction to Linting in Go","Introduction to improving code quality using linting. Learn how to add linting in your Go projects.",[19,10],"2021-07-07","blog\u002Flinting-in-golang\u002Flinting-in-golang-card.webp",{"path":269,"title":270,"description":271,"categories":272,"year":273,"draft":21,"headerImage":274,"cardAlt":103},"\u002Fblog\u002Fload-balancing","Load Balancing 101","Complete guide on load balancers explaining the internal working and how does it help in making applications efficient.",[47,10],"2021-05-29","blog\u002Fload-balancing\u002Fload-balancing-card.webp",{"path":276,"title":277,"description":278,"categories":279,"year":280,"draft":21,"headerImage":281,"cardAlt":277},"\u002Fblog\u002Fmaking-decisions-the-right-way","Making Decisions: The right way","Decisions are hard! Learn how to make the right decisions always",[9,29],"2020-06-07","blog\u002Fmaking-decisions-the-right-way\u002Fmaking-decisions-the-right-way-card.webp",{"path":283,"title":284,"description":285,"categories":286,"year":288,"draft":21,"headerImage":289,"cardAlt":284},"\u002Fblog\u002Fmanage-logs-with-logrotate","Using Logrotate to manage logs","Learn how to use logrotate system utility to manage logs with example",[287,10],"Linux","2020-09-08","blog\u002Fmanage-logs-with-logrotate\u002Fmanage-logs-with-logrotate-card.webp",{"path":291,"title":292,"description":293,"categories":294,"year":295,"draft":21,"headerImage":296,"cardAlt":292},"\u002Fblog\u002Fmarshal-structs-golang","Marshal structs the right way: Golang","Why Golang marshals empty structs into your JSON instead of null, and how to marshal structs the right way.",[19,10],"2020-03-31","blog\u002Fmarshal-structs-golang\u002Fmarshal-structs-golang-card.webp",{"path":298,"title":299,"description":300,"categories":301,"year":302,"draft":21,"headerImage":303,"cardAlt":299},"\u002Fblog\u002Fnotes-almanack-naval","Book Notes : Almanack of Naval Ravikant","My notes\u002Fhighlights from Almanack of Naval Ravikant book by Eric Jorgenson",[28,29],"2020-10-17","blog\u002Fnotes-almanack-naval\u002Fnotes-almanack-naval-card.webp",{"path":305,"title":306,"description":307,"categories":308,"year":309,"draft":21,"headerImage":310,"cardAlt":306},"\u002Fblog\u002Fnotes-anything-you-want","Book Notes : Anything you want","My notes\u002Fhighlights from Anything you want book by Derek Sivers",[28,29],"2021-09-25","blog\u002Fnotes-anything-you-want\u002Fnotes-anything-you-want-card.webp",{"path":312,"title":313,"description":314,"categories":315,"year":317,"draft":21,"headerImage":318,"cardAlt":313},"\u002Fblog\u002Fnotes-getting-real","Book Notes : Getting Real","My notes and highlights from Getting Real by Jason Fried and David Heinemeier Hansson on building web applications.",[28,316],"Startups","2020-11-03","blog\u002Fnotes-getting-real\u002Fnotes-getting-real-card.webp",{"path":320,"title":321,"description":322,"categories":323,"year":324,"draft":21,"headerImage":325,"cardAlt":321},"\u002Fblog\u002Fnotes-hell-yeah-or-no","Book Notes : Hell Yeah or No","My notes\u002Fhighlights from Hell Yeah or No book by Derek Sivers",[28,29],"2020-09-16","blog\u002Fnotes-hell-yeah-or-no\u002Fnotes-hell-yeah-or-no-card.webp",{"path":327,"title":328,"description":329,"categories":330,"year":331,"draft":21,"headerImage":332,"cardAlt":328},"\u002Fblog\u002Fnotes-how-to-be-a-capitalist","Book Notes : How to Be a Capitalist Without Any Capital","My notes\u002Fhighlights from How to Be a Capitalist Without Any Capital by Nathan Latka",[28,316],"2020-01-07","blog\u002Fnotes-how-to-be-a-capitalist\u002Fnotes-how-to-be-a-capitalist-card.webp",{"path":334,"title":335,"description":336,"categories":337,"year":339,"draft":21,"headerImage":340,"cardAlt":335},"\u002Fblog\u002Fnotes-lean-b2b","Book Notes : Lean B2B","My notes and highlights from Lean B2B by Étienne Garbugli on assessing markets, building MVPs, and selling to businesses.",[28,338],"Entrepreneurship","2022-07-02","blog\u002Fnotes-lean-b2b\u002Fnotes-lean-b2b-card.webp",{"path":342,"title":343,"description":344,"categories":345,"year":347,"draft":21,"headerImage":348,"cardAlt":343},"\u002Fblog\u002Fnotes-lets-talk-money","Book Notes : Let's Talk Money","My notes and highlights from Let's Talk Money by Monica Halan on managing personal finances and savings.",[28,346],"Personal Finance","2021-02-26","blog\u002Fnotes-lets-talk-money\u002Fnotes-lets-talk-money-card.webp",{"path":350,"title":351,"description":352,"categories":353,"year":354,"draft":21,"headerImage":355,"cardAlt":351},"\u002Fblog\u002Fnotes-obviously-awesome","Book Notes : Obviously Awesome","My notes and highlights from Obviously Awesome by April Dunford on product positioning and marketing strategy.",[28,316],"2020-04-26","blog\u002Fnotes-obviously-awesome\u002Fnotes-obviously-awesome-card.webp",{"path":357,"title":358,"description":359,"categories":360,"year":362,"draft":21,"headerImage":363,"cardAlt":358},"\u002Fblog\u002Fnotes-refactoring-ui","Book Notes: Refactoring UI","My notes and highlights from Refactoring UI by Adam Wathan and Steve Schoger, full of practical design tips for engineers.",[28,361],"Design","2020-05-09","blog\u002Fnotes-refactoring-ui\u002Fnotes-refactoring-ui-card.webp",{"path":365,"title":366,"description":367,"categories":368,"year":369,"draft":21,"headerImage":370,"cardAlt":366},"\u002Fblog\u002Fnotes-rework","Book Notes: Rework","My notes and highlights from Rework by Jason Fried and David Heinemeier Hansson on a better way to succeed in business.",[28,316],"2021-04-14","blog\u002Fnotes-rework\u002Fnotes-rework-card.webp",{"path":372,"title":373,"description":374,"categories":375,"year":377,"draft":21,"headerImage":378,"cardAlt":373},"\u002Fblog\u002Fone-on-one-meetings","Guide to Effective 1:1 Meetings","One on One meetings are important for your personal & professional growth. Learn how to master 1:1s with your manager and peers.",[376,9],"Career","2023-03-05","blog\u002Fone-on-one-meetings\u002Fone-on-one-meetings-card.webp",{"path":380,"title":381,"description":382,"categories":383,"year":384,"draft":21,"headerImage":385,"cardAlt":381},"\u002Fblog\u002Fpersonal-okrs","Personal OKRs for Success","Why one should set personal OKRs and how to achieve success with them",[9,29],"2020-06-27","blog\u002Fpersonal-okrs\u002Fpersonal-okrs-card.webp",{"path":387,"title":388,"description":389,"categories":390,"year":392,"draft":21,"headerImage":393,"cardAlt":388},"\u002Fblog\u002Fpoker-tips","Poker Tips: Johns Hopkins Poker Class","Notes from Johns Hopkins poker course. This guide will help you improve in Poker and win some large pots.",[29,391],"Poker","2020-06-13","blog\u002Fpoker-tips\u002Fpoker-tips-card.webp",{"path":395,"title":396,"description":397,"categories":398,"year":399,"draft":21,"headerImage":400,"cardAlt":396},"\u002Fblog\u002Fpomodoro","Get work done: The Pomo Way","Learn to focus and get productive by following the Pomodoro Technique",[9],"2020-10-24","blog\u002Fpomodoro\u002Fpomodoro-card.webp",{"path":402,"title":403,"description":404,"categories":405,"year":406,"draft":21,"headerImage":407,"cardAlt":403},"\u002Fblog\u002Fpostgres-constraints","Postgres Constraints","Constraints are line of defense for database. Explore various types of constrainsts in postgres",[188,10],"2020-11-07","blog\u002Fpostgres-constraints\u002Fpostgres-constraints-card.webp",{"path":409,"title":410,"description":411,"categories":412,"year":413,"draft":21,"headerImage":414,"cardAlt":410},"\u002Fblog\u002Fppf-explained","PPF Explained","Learn basics about Public Provident Fund and why you should invest",[29,346],"2020-12-24","blog\u002Fppf-explained\u002Fppf-explained-card.webp",{"path":416,"title":417,"description":418,"categories":419,"year":420,"draft":21,"headerImage":421,"cardAlt":417},"\u002Fblog\u002Fproductivity-chrome-extensions","Boost Productivity with Chrome Extensions","Utitizing chrome extensions to boost your productivity!",[9,39,38],"2020-04-24","blog\u002Fproductivity-chrome-extensions\u002Fproductivity-chrome-extensions-card.webp",{"path":423,"title":424,"description":425,"categories":426,"year":427,"draft":21,"headerImage":428,"cardAlt":424},"\u002Fblog\u002Fproductivity-in-vscode","Improve your productivity with VS Code","Key VS Code features like the integrated terminal, shortcuts, and extensions that improved my everyday productivity.",[9,10],"2020-03-12","blog\u002Fproductivity-in-vscode\u002Fproductivity-in-vscode-card.webp",{"path":430,"title":431,"description":432,"categories":433,"year":434,"draft":21,"headerImage":435,"cardAlt":431},"\u002Fblog\u002Freading-101","Improving Reading 101","Why reading matters, how to build a reading habit, and what to read next - from my own journey into books.",[28,29],"2020-04-04","blog\u002Freading-101\u002Freading-101-card.webp",{"path":437,"title":438,"description":439,"categories":440,"year":441,"draft":21,"headerImage":442,"cardAlt":438},"\u002Fblog\u002Freverse-proxy","Understanding Reverse Proxy","Learn about reverse proxy, how it is different from forward proxy and explore advantages of using it in system design.",[47,10],"2021-10-03","blog\u002Freverse-proxy\u002Freverse-proxy-card.webp",{"path":444,"title":445,"description":446,"categories":447,"year":448,"draft":21,"headerImage":449,"cardAlt":445},"\u002Fblog\u002Frunning-periodic-background-task-golang","Running periodic background tasks in Golang","How to run periodic background tasks in Golang by combining cron-style scheduling with background execution.",[19,10],"2019-11-21","blog\u002Frunning-periodic-background-task-golang\u002Frunning-periodic-background-task-golang-card.webp",{"path":451,"title":452,"description":453,"categories":454,"year":455,"draft":21,"headerImage":456,"cardAlt":452},"\u002Fblog\u002Fsessions-in-golang","Sessions using Golang and Redis","How cookies and sessions work, and how to implement persistent login sessions in Golang using Redis.",[19,188,10],"2020-02-25","blog\u002Fsessions-in-golang\u002Fsessions-in-golang-card.webp",{"path":458,"title":459,"description":460,"categories":461,"year":462,"draft":21,"headerImage":463,"cardAlt":459},"\u002Fblog\u002Fsolid-dry-kiss-yagni","Solid Dry Kiss Yagni","An introduction to the SOLID, DRY, KISS, and YAGNI principles and how they help you write cleaner, robust code.",[55],"2020-07-17","blog\u002Fsolid-dry-kiss-yagni\u002Fsolid-dry-kiss-yagni-card.webp",{"path":465,"title":466,"description":467,"categories":468,"year":469,"draft":21,"headerImage":470,"cardAlt":466},"\u002Fblog\u002Fstack-in-golang","Implement Stack in Golang","Learn how to implement stack data structure in Golang (Full code)",[19,10],"2020-09-14","blog\u002Fstack-in-golang\u002Fstack-in-golang-card.webp",{"path":472,"title":473,"description":474,"categories":475,"year":476,"draft":21,"headerImage":477,"cardAlt":473},"\u002Fblog\u002Fstart-oss-today","Start your Open Source journey today","Start your OSS journey with intro to GIT. Participate in Hacktoberfest!",[113,10],"2020-09-19","blog\u002Fstart-oss-today\u002Fstart-oss-today-card.webp",{"path":479,"title":480,"description":481,"categories":482,"year":484,"draft":21,"headerImage":485,"cardAlt":480},"\u002Fblog\u002Fsticky-social-bar","Sticky social share component in HTML","Learn how to build a social media sharing component in HTML and add it to your website.",[10,483],"Frontend","2021-02-05","blog\u002Fsticky-social-bar\u002Fsticky-social-bar-card.webp",{"path":487,"title":488,"description":489,"categories":490,"year":491,"draft":21,"headerImage":492,"cardAlt":488},"\u002Fblog\u002Fterm-insurance","Term insurance Simplified","Everything you need to know before you buy a term insurance.",[29,346],"2020-11-29","blog\u002Fterm-insurance\u002Fterm-insurance-card.webp",{"path":494,"title":495,"description":496,"categories":497,"year":499,"draft":21,"headerImage":500,"cardAlt":495},"\u002Fblog\u002Fterminal-output-with-redirection","Handling terminal outputs with Redirection","Learn how to handle terminal outputs with Redirection and saving it to files",[287,498,10],"Terminal","2020-09-06","blog\u002Fterminal-output-with-redirection\u002Fterminal-output-with-redirection-card.webp",{"path":502,"title":503,"description":504,"categories":505,"year":506,"draft":21,"headerImage":507,"cardAlt":503},"\u002Fblog\u002Fthink-and-grow-rich","Book Notes: Think and Grow Rich","My notes and highlights from Think and Grow Rich by Napoleon Hill, covering its process for building wealth.",[28,29],"2020-05-19","blog\u002Fthink-and-grow-rich\u002Fthink-and-grow-rich-card.webp",{"path":509,"title":510,"description":511,"categories":512,"year":513,"draft":21,"headerImage":514,"cardAlt":510},"\u002Fblog\u002Ftransactions-postgres-golang","Transactions on Postgres with Golang","Performing Postgres database operations in Golang with GORM, from basic queries to full transaction support.",[19,188,10],"2020-03-18","blog\u002Ftransactions-postgres-golang\u002Ftransactions-postgres-golang-card.webp",{"path":516,"title":517,"description":518,"categories":519,"year":520,"draft":21,"headerImage":521,"cardAlt":517},"\u002Fblog\u002Fwaitgroups-in-golang","WaitGroups in Golang","Learn about WaitGroups in golang and how to use them to perform concurrent operations without blocking the main thread.",[19,10],"2022-05-31","blog\u002Fwaitgroups-in-golang\u002Fwaitgroups-in-golang-card.webp",{"path":523,"title":524,"description":525,"categories":526,"year":528,"draft":21,"headerImage":529,"cardAlt":524},"\u002Fblog\u002Fwhat-i-use","What I Use: Products and Softwares","List of what I use in my day to day life ranging from terminal, editors, softwares, devices to accessories",[29,527],"Tech","2024-06-01","blog\u002Fwhat-i-use\u002Fwhat-i-use-card.webp",{"path":531,"title":532,"description":533,"categories":534,"year":535,"draft":21,"headerImage":536,"cardAlt":532},"\u002Fblog\u002Fyear-in-review-2020","Year in Review: 2020","It's a wrap! 2020 was a crazy year, See how my year went!",[29],"2020-12-31","blog\u002Fyear-in-review-2020\u002Fyear-in-review-2020-card.webp",{"path":538,"title":539,"description":540,"categories":541,"year":542,"draft":21,"headerImage":543,"cardAlt":539},"\u002Fblog\u002Fyear-in-review-2021","Year in Review: 2021","It's a wrap! 2021 was a mixed bag, full of ups and downs. Key Goal for 2022: Start now!",[29],"2021-12-31","blog\u002Fyear-in-review-2021\u002Fyear-in-review-2021-card.webp",1787728345934]