{"id":"705d2510-9e20-467b-954d-13297e578bbe","timestamp":1784782340544,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":["/","/cperez/2026-06-17/xamarin-to-maui","/cperez/2026-07-02/hidden-costs-of-legacy-software","/cperez/2026-06-25/ai_makes_modernization_feasible","/cperez/2026-06-30/how-ceos-should-evaluate-ai-investments","/cperez/2026-07-21/building-digital-health-platforms-beyond-samd","/cperez/2026-07-09/5-rs-application-modernization-legacy-software","/cperez/2026-07-16/rebuild-vs-modernize-software-cfo-guide","/cperez/2026-07-23/why-ai-agents-need-software-developers","/cperez/2026-07-07/why-ai-projects-fail","/tags/chatbots","/tags/humans in the loop","/authors/cperez","/tags/ai investment","/tags/ai","/tags/agentic ai","/tags/ai agents","/tags/ai development","/tags/samd","/tags/legacy","/tags/biomedical","/tags/security","/tags/modernization","/tags/healthcare","/tags/xamarin","/tags/.net maui","/tags/tech debt","/tags/legacy migration","/tags/application modernization","/tags/legacy software","/tags/5-rs","/tags/ethics","/tags/software development","/tags/vibe coding","/tags/legacy modernization","/tags/.net","/tags/app migration","/tags/maui","/tags/mobile","/ewahl/2025-06/argued_with_ai","/jbagley/2021-07/softwaresenescence","/authors/ewahl","/tags/devops","/tags/aws","/tags/python","/phendry/2021-07-30/spotthevulndataranges","/phendry/2023-01-19/badcode","/phendry/2021-10-30/spotthevulnloopsandtermconditions","/avogan/2012-07/salt","/nharrison/2012-07/core-data","/avogan/2012-07/salt-2","/authors/jbagley","/tags/project-management","/authors/nharrison","/authors/avogan","/authors/phendry","/tags/core-data","/tags/encryption","/tags/series","/tags/ios","/tags/objective-c","/tags/cryptography","/ckeefer/2017-3/morepwatoya-part2","/ckeefer/2017-2/morepwatoya-part1","/jbagley/2025-08/a_developers_primer_on_apple_tracking_transparency","/phendry/2021-06/smoothupgradestovue3","/bporter/2020-10/reanimated","/tags/pwa","/ewahl/2025-05/escape_deployment_hell","/tags/app tracking transparency","/authors/ckeefer","/dpopowich/2023-8/postgres-pubsub","/jestep/2023-3/fastapi","/dpopowich/2021-07-30/data-collector","/tags/att","/ckeefer/2016-8/herokupdf","/ckeefer/2016-4/djangochannels2","/ckeefer/2016-3/djangochannels1","/ckeefer/2016-2/paymentprocessing","/ckeefer/2015-3/emailvalidation","/tags/macos","/authors/bporter","/tags/juce","/tags/ui","/tags/c++","/tags/vue","/tags/how-to","/jbagley/2021-08-01/accuratetiming","/phendry/2023-01-31/forgetaboutcodestyle","/tags/js","/phendry/2022-07-28/migratingfromexpresstofastifypart2","/authors/jestep","/authors/dpopowich","/tags/fastapi","/tags/django","/tags/flask","/phendry/2021-08-15/exploringdependenttypesinidris","/phendry/2023-05-16/doyouneedacsspreprocessor","/tags/pyramid","/rbrubaker/2012-07/prototypal-js","/shuey/2012-07/reset-button","/tags/postgresql","/tags/async","/tags/heroku","/tags/pdf","/tags/websockets","/ckeefer/2013-3/ajax-upload","/tags/jquery","/rbrubaker/2012-07/whither-pm","/jbagley/2023-06-01/universal_ffmpeg_custom_builds","/jbagley/2019-4/makingspectrogramsinjuce","/tags/timing","/tags/programming","/phendry/2023-11-06/frontendframeworksin2024","/phendry/2022-07-21/migratingfromexpresstofastifypart1","/phendry/2023-04-02/semantichtml","/authors/rbrubaker","/authors/shuey","/tags/coffeescript","/tags/android","/phendry/2023-07-28/dependencymanagement","/phendry/2019-3/restfromthebottomup","/tags/apple","/tags/html5","/tags/c","/tags/bash","/tags/ffmpeg","/tags/audio","/alalande/2023-2/heuristics","/ckeefer/2016-7/gofetch2","/alalande/2023-1/escaping_text","/ckeefer/2016-6/gofetch1","/rbrubaker/2012-06/coffee-backbone-3","/rbrubaker/2012-06/coffee-backbone-2","/rbrubaker/2012-06/coffe-backbone-1","/shuey/2012-07/mixer","/shuey/2012-06/thoughts-ios6","/asherbrooke/2020-4/watchwah","/shuey/2012-05/rubymotion","/tags/react","/tags/svelte","/tags/rest","/tags/api","/tags/web","/tags/architecture","/ckeefer/2017-1/downloadingclientsidecontent","/ckeefer/2019-1/unlockingwebaudio","/authors/alalande","/tags/backbone-js","/tags/educational","/ckeefer/2024-7/vpubsub","/ckeefer/2024-3/e2e_testing","/ckeefer/2020-1/why-vue","/ckeefer/2016-1/ajaxbinarycaching","/ckeefer/2015-5/file-reader-chunking","/ckeefer/2015-2/js-frameworks","/ckeefer/2015-1/writeonce","/authors/asherbrooke","/tags/watch","/ckeefer/2014-8/behold-views","/ckeefer/2014-7/promises","/ckeefer/2014-6/backbonesocketsync","/ckeefer/2014-4/hidden-options","/ckeefer/2014-5/cgwin2","/ckeefer/2014-3/customgmapsinfowindow","/tags/cocoa","/ckeefer/2014-1/still-using-php","/ckeefer/2013-5/ajax-uploader","/ckeefer/2013-12/deploying-with-git","/ckeefer/2013-4/teaching-programming","/ckeefer/2013-11/jquery-ajax-blobs","/ckeefer/2013-2/xslt","/ckeefer/2013-08/fullproof-fulltext-search","/ckeefer/2013-1/misc","/ckeefer/2013-07/anchors-hash","/ckeefer/2013-07/static-vmware-host","/ckeefer/2014-2/ajax-upload-2","/tags/ruby","/tags/pub/sub","/tags/qa","/tags/software-testing","/tags/e2e","/tags/playwright","/tags/backbone","/tags/google-maps","/tags/xhr2","/tags/php","/tags/git","/tags/data-formats","/tags/xml","/tags/xsl","/tags/xslt","/tags/search","/bporter/2012-5/learntocode","/bporter/2012-6/dsl","/bporter/2012-5/improtech","/bporter/2012-5/cd_player","/bporter/2019-4/aesannounce","/bporter/2019-3/animator","/tags/xmlhttprequest","/scharette/2019-4/discover_machine_learning","/tags/a+l","/tags/event","/tags/dsl","/tags/erlang","/tags/go","/tags/improvisation","/tags/music","/tags/learn-to-code","/authors/scharette","/tfarrel/2012-07","/tags/machine-learning","/tags/neural-networks","/areichert/2023-10/rapid-testing-techniques-for-web-and-mobile","/authors/tfarrel","/tags/steganography","/rbrubaker/2012-06/arduino-thermometer","/shuey/2012-05/cloud","/shuey/2012-05/economics-android","/shuey/2012-05/baas","/shuey/2012-05/iot","/authors/areichert","/tags/arduino","/tags/java","/tags/icloud","/tags/baas","/tags/big-data","/tags/iot","/cmacksey/2012-5/php-musings","/authors/cmacksey","/bstevens/2019-3","/authors/bstevens"]}