[{"data":1,"prerenderedAt":498},["ShallowReactive",2],{"blog-posts":3},[4,59,354],{"_path":5,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":9,"description":10,"date":11,"readTime":12,"tags":13,"externalUrl":17,"body":18,"_type":53,"_id":54,"_source":55,"_file":56,"_stem":57,"_extension":58},"/blog/ai-plot-twist-calculator-booking-meetings","blog",false,"","The AI Plot Twist: We Asked for a Calculator… It Started Booking Meetings","A short, funny look at how AI has evolved from simple chatbots to autonomous agents that take real action — from writing poetry to booking meetings.","2026-07-29","4 min read",[14,15,16],"ai","ai-agents","humor","https://medium.com/@rushikesh-blogs/the-ai-plot-twist-we-asked-for-a-calculator-it-started-booking-meetings-9096354485de",{"type":19,"children":20,"toc":50},"root",[21,29,35],{"type":22,"tag":23,"props":24,"children":26},"element","h1",{"id":25},"the-ai-plot-twist-we-asked-for-a-calculator-it-started-booking-meetings",[27],{"type":28,"value":9},"text",{"type":22,"tag":30,"props":31,"children":32},"p",{},[33],{"type":28,"value":34},"We're slowly moving from chatbots to AI agents — tools that don't just answer questions, but take action on their own. A quick, funny look at how far things have come: from AI writing poetry to AI quietly handling your calendar.",{"type":22,"tag":30,"props":36,"children":37},{},[38,40,48],{"type":28,"value":39},"Read the full story on ",{"type":22,"tag":41,"props":42,"children":45},"a",{"href":17,"rel":43},[44],"nofollow",[46],{"type":28,"value":47},"Medium",{"type":28,"value":49},".",{"title":8,"searchDepth":51,"depth":51,"links":52},2,[],"markdown","content:blog:ai-plot-twist-calculator-booking-meetings.md","content","blog/ai-plot-twist-calculator-booking-meetings.md","blog/ai-plot-twist-calculator-booking-meetings","md",{"_path":60,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":61,"description":62,"date":63,"readTime":64,"tags":65,"externalUrl":70,"body":71,"_type":53,"_id":351,"_source":55,"_file":352,"_stem":353,"_extension":58},"/blog/building-microservice-nodejs-express-mongodb","How to Build a Microservice with Node.js, Express, and MongoDB","A comprehensive guide to building scalable microservices using Node.js, Express, and MongoDB with best practices.","2024-02-10","12 min read",[66,67,68,69],"nodejs","express","mongodb","microservices","https://medium.com/nerd-for-tech/how-to-build-a-microservice-with-nodejs-express-and-mongodb-73737b6fa868",{"type":19,"children":72,"toc":338},[73,78,83,90,95,101,107,112,117,122,127,132,138,143,197,203,208,261,267,272,315,321,326],{"type":22,"tag":23,"props":74,"children":76},{"id":75},"how-to-build-a-microservice-with-nodejs-express-and-mongodb",[77],{"type":28,"value":61},{"type":22,"tag":30,"props":79,"children":80},{},[81],{"type":28,"value":82},"Building microservices is essential for modern application architecture. This guide covers the fundamentals of creating scalable, maintainable microservices using Node.js, Express, and MongoDB.",{"type":22,"tag":84,"props":85,"children":87},"h2",{"id":86},"what-is-a-microservice",[88],{"type":28,"value":89},"What is a Microservice?",{"type":22,"tag":30,"props":91,"children":92},{},[93],{"type":28,"value":94},"A microservice is a small, independent service that performs a specific business function. Unlike monolithic applications, microservices can be developed, deployed, and scaled independently.",{"type":22,"tag":84,"props":96,"children":98},{"id":97},"key-technologies",[99],{"type":28,"value":100},"Key Technologies",{"type":22,"tag":102,"props":103,"children":104},"h3",{"id":66},[105],{"type":28,"value":106},"Node.js",{"type":22,"tag":30,"props":108,"children":109},{},[110],{"type":28,"value":111},"Node.js provides a lightweight, event-driven runtime for building fast and scalable server-side applications.",{"type":22,"tag":102,"props":113,"children":114},{"id":67},[115],{"type":28,"value":116},"Express",{"type":22,"tag":30,"props":118,"children":119},{},[120],{"type":28,"value":121},"Express is a minimal and flexible Node.js web application framework that provides a robust set of features for web and mobile applications.",{"type":22,"tag":102,"props":123,"children":124},{"id":68},[125],{"type":28,"value":126},"MongoDB",{"type":22,"tag":30,"props":128,"children":129},{},[130],{"type":28,"value":131},"MongoDB is a NoSQL database that stores data in flexible, JSON-like documents, making it ideal for microservices with varying data structures.",{"type":22,"tag":84,"props":133,"children":135},{"id":134},"getting-started",[136],{"type":28,"value":137},"Getting Started",{"type":22,"tag":30,"props":139,"children":140},{},[141],{"type":28,"value":142},"To build a microservice, you'll need:",{"type":22,"tag":144,"props":145,"children":146},"ul",{},[147,159,168,177,187],{"type":22,"tag":148,"props":149,"children":150},"li",{},[151,157],{"type":22,"tag":152,"props":153,"children":154},"strong",{},[155],{"type":28,"value":156},"Node.js and npm",{"type":28,"value":158}," – Runtime and package manager",{"type":22,"tag":148,"props":160,"children":161},{},[162,166],{"type":22,"tag":152,"props":163,"children":164},{},[165],{"type":28,"value":116},{"type":28,"value":167}," – Web framework for handling HTTP requests",{"type":22,"tag":148,"props":169,"children":170},{},[171,175],{"type":22,"tag":152,"props":172,"children":173},{},[174],{"type":28,"value":126},{"type":28,"value":176}," – Database for storing application data",{"type":22,"tag":148,"props":178,"children":179},{},[180,185],{"type":22,"tag":152,"props":181,"children":182},{},[183],{"type":28,"value":184},"REST APIs",{"type":28,"value":186}," – For communication between services",{"type":22,"tag":148,"props":188,"children":189},{},[190,195],{"type":22,"tag":152,"props":191,"children":192},{},[193],{"type":28,"value":194},"Error handling",{"type":28,"value":196}," – Robust error management",{"type":22,"tag":84,"props":198,"children":200},{"id":199},"architecture-considerations",[201],{"type":28,"value":202},"Architecture Considerations",{"type":22,"tag":30,"props":204,"children":205},{},[206],{"type":28,"value":207},"When building microservices, consider:",{"type":22,"tag":144,"props":209,"children":210},{},[211,221,231,241,251],{"type":22,"tag":148,"props":212,"children":213},{},[214,219],{"type":22,"tag":152,"props":215,"children":216},{},[217],{"type":28,"value":218},"Service isolation",{"type":28,"value":220}," – Each service should be independent",{"type":22,"tag":148,"props":222,"children":223},{},[224,229],{"type":22,"tag":152,"props":225,"children":226},{},[227],{"type":28,"value":228},"Data management",{"type":28,"value":230}," – Each service manages its own data",{"type":22,"tag":148,"props":232,"children":233},{},[234,239],{"type":22,"tag":152,"props":235,"children":236},{},[237],{"type":28,"value":238},"Communication",{"type":28,"value":240}," – Use REST APIs or message queues",{"type":22,"tag":148,"props":242,"children":243},{},[244,249],{"type":22,"tag":152,"props":245,"children":246},{},[247],{"type":28,"value":248},"Monitoring",{"type":28,"value":250}," – Track service health and performance",{"type":22,"tag":148,"props":252,"children":253},{},[254,259],{"type":22,"tag":152,"props":255,"children":256},{},[257],{"type":28,"value":258},"Scalability",{"type":28,"value":260}," – Services should be horizontally scalable",{"type":22,"tag":84,"props":262,"children":264},{"id":263},"deployment",[265],{"type":28,"value":266},"Deployment",{"type":22,"tag":30,"props":268,"children":269},{},[270],{"type":28,"value":271},"Deploy your microservice using:",{"type":22,"tag":144,"props":273,"children":274},{},[275,285,295,305],{"type":22,"tag":148,"props":276,"children":277},{},[278,283],{"type":22,"tag":152,"props":279,"children":280},{},[281],{"type":28,"value":282},"Docker",{"type":28,"value":284}," – Containerize your application",{"type":22,"tag":148,"props":286,"children":287},{},[288,293],{"type":22,"tag":152,"props":289,"children":290},{},[291],{"type":28,"value":292},"Kubernetes",{"type":28,"value":294}," – Orchestrate multiple containers",{"type":22,"tag":148,"props":296,"children":297},{},[298,303],{"type":22,"tag":152,"props":299,"children":300},{},[301],{"type":28,"value":302},"Cloud platforms",{"type":28,"value":304}," – AWS, GCP, or Azure",{"type":22,"tag":148,"props":306,"children":307},{},[308,313],{"type":22,"tag":152,"props":309,"children":310},{},[311],{"type":28,"value":312},"CI/CD pipelines",{"type":28,"value":314}," – Automate testing and deployment",{"type":22,"tag":84,"props":316,"children":318},{"id":317},"conclusion",[319],{"type":28,"value":320},"Conclusion",{"type":22,"tag":30,"props":322,"children":323},{},[324],{"type":28,"value":325},"Building microservices with Node.js, Express, and MongoDB enables you to create scalable, maintainable applications. Start with a simple service and gradually add complexity as needed.",{"type":22,"tag":30,"props":327,"children":328},{},[329,331,337],{"type":28,"value":330},"For a detailed walkthrough and code examples, check out the ",{"type":22,"tag":41,"props":332,"children":334},{"href":70,"rel":333},[44],[335],{"type":28,"value":336},"full article on Medium",{"type":28,"value":49},{"title":8,"searchDepth":51,"depth":51,"links":339},[340,341,347,348,349,350],{"id":86,"depth":51,"text":89},{"id":97,"depth":51,"text":100,"children":342},[343,345,346],{"id":66,"depth":344,"text":106},3,{"id":67,"depth":344,"text":116},{"id":68,"depth":344,"text":126},{"id":134,"depth":51,"text":137},{"id":199,"depth":51,"text":202},{"id":263,"depth":51,"text":266},{"id":317,"depth":51,"text":320},"content:blog:building-microservice-nodejs-express-mongodb.md","blog/building-microservice-nodejs-express-mongodb.md","blog/building-microservice-nodejs-express-mongodb",{"_path":355,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":356,"description":357,"date":358,"readTime":359,"tags":360,"body":364,"_type":53,"_id":495,"_source":55,"_file":496,"_stem":497,"_extension":58},"/blog/getting-started-with-data-engineering","Getting Started with Data Engineering","An introduction to the fundamentals of data engineering, covering pipelines, warehouses, and modern tooling.","2024-01-15","8 min read",[361,362,363],"data-engineering","python","aws",{"type":19,"children":365,"toc":485},[366,371,376,382,387,393,399,404,410,415,421,426,430,435,476,480],{"type":22,"tag":23,"props":367,"children":369},{"id":368},"getting-started-with-data-engineering",[370],{"type":28,"value":356},{"type":22,"tag":30,"props":372,"children":373},{},[374],{"type":28,"value":375},"Data engineering is the backbone of any data-driven organization. In this post, I'll walk through the core concepts every data engineer should know.",{"type":22,"tag":84,"props":377,"children":379},{"id":378},"what-is-data-engineering",[380],{"type":28,"value":381},"What is Data Engineering?",{"type":22,"tag":30,"props":383,"children":384},{},[385],{"type":28,"value":386},"Data engineering involves designing, building, and maintaining the infrastructure and systems that enable data to be collected, stored, and analyzed efficiently.",{"type":22,"tag":84,"props":388,"children":390},{"id":389},"key-concepts",[391],{"type":28,"value":392},"Key Concepts",{"type":22,"tag":102,"props":394,"children":396},{"id":395},"_1-data-pipelines",[397],{"type":28,"value":398},"1. Data Pipelines",{"type":22,"tag":30,"props":400,"children":401},{},[402],{"type":28,"value":403},"A data pipeline is a series of data processing steps...",{"type":22,"tag":102,"props":405,"children":407},{"id":406},"_2-data-warehouses",[408],{"type":28,"value":409},"2. Data Warehouses",{"type":22,"tag":30,"props":411,"children":412},{},[413],{"type":28,"value":414},"Modern data warehouses like BigQuery, Snowflake, and Redshift...",{"type":22,"tag":102,"props":416,"children":418},{"id":417},"_3-etl-vs-elt",[419],{"type":28,"value":420},"3. ETL vs ELT",{"type":22,"tag":30,"props":422,"children":423},{},[424],{"type":28,"value":425},"The traditional ETL (Extract, Transform, Load) pattern is being replaced...",{"type":22,"tag":84,"props":427,"children":428},{"id":134},[429],{"type":28,"value":137},{"type":22,"tag":30,"props":431,"children":432},{},[433],{"type":28,"value":434},"To get started with data engineering, focus on:",{"type":22,"tag":144,"props":436,"children":437},{},[438,448,458,466],{"type":22,"tag":148,"props":439,"children":440},{},[441,446],{"type":22,"tag":152,"props":442,"children":443},{},[444],{"type":28,"value":445},"Python",{"type":28,"value":447}," – The primary language for data engineering",{"type":22,"tag":148,"props":449,"children":450},{},[451,456],{"type":22,"tag":152,"props":452,"children":453},{},[454],{"type":28,"value":455},"SQL",{"type":28,"value":457}," – Essential for data manipulation",{"type":22,"tag":148,"props":459,"children":460},{},[461,465],{"type":22,"tag":152,"props":462,"children":463},{},[464],{"type":28,"value":302},{"type":28,"value":304},{"type":22,"tag":148,"props":467,"children":468},{},[469,474],{"type":22,"tag":152,"props":470,"children":471},{},[472],{"type":28,"value":473},"Orchestration tools",{"type":28,"value":475}," – Apache Airflow, Prefect, or Dagster",{"type":22,"tag":84,"props":477,"children":478},{"id":317},[479],{"type":28,"value":320},{"type":22,"tag":30,"props":481,"children":482},{},[483],{"type":28,"value":484},"Data engineering is a rewarding field with growing demand. Start with the fundamentals and build from there.",{"title":8,"searchDepth":51,"depth":51,"links":486},[487,488,493,494],{"id":378,"depth":51,"text":381},{"id":389,"depth":51,"text":392,"children":489},[490,491,492],{"id":395,"depth":344,"text":398},{"id":406,"depth":344,"text":409},{"id":417,"depth":344,"text":420},{"id":134,"depth":51,"text":137},{"id":317,"depth":51,"text":320},"content:blog:getting-started-with-data-engineering.md","blog/getting-started-with-data-engineering.md","blog/getting-started-with-data-engineering",1785858133519]