{"users":[{"id":1,"username":"craig","name":"Craig Oda","avatar_template":"/user_avatar/community.oppkey.host/craig/{size}/5_2.png","admin":true,"trust_level":2},{"id":2,"username":"jcasman","name":"Jesse Casman","avatar_template":"/user_avatar/community.oppkey.host/jcasman/{size}/2_2.png","admin":true,"trust_level":2}],"primary_groups":[],"flair_groups":[],"topic_list":{"can_create_topic":false,"more_topics_url":"/c/blog/8?page=1","per_page":30,"top_tags":[{"id":12,"name":"ai","slug":"ai"},{"id":25,"name":"oppvera","slug":"oppvera"},{"id":21,"name":"fastapi","slug":"fastapi"},{"id":5,"name":"featured","slug":"featured"},{"id":7,"name":"flutter","slug":"flutter"},{"id":27,"name":"geo","slug":"geo"},{"id":24,"name":"llm","slug":"llm"},{"id":31,"name":"agentic-coding","slug":"agentic-coding"},{"id":26,"name":"ai-search","slug":"ai-search"},{"id":6,"name":"community","slug":"community"},{"id":30,"name":"cursor","slug":"cursor"},{"id":20,"name":"django","slug":"django"},{"id":19,"name":"htmx","slug":"htmx"},{"id":14,"name":"japan","slug":"japan"},{"id":15,"name":"opensource","slug":"opensource"},{"id":22,"name":"reddit","slug":"reddit"},{"id":29,"name":"retrieval","slug":"retrieval"},{"id":28,"name":"simulation","slug":"simulation"}],"topics":[{"fancy_title":"About the Oppkey Blog","id":50,"title":"About the Oppkey Blog","slug":"about-the-oppkey-blog","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2016-09-08T17:41:24.701Z","last_posted_at":null,"bumped":true,"bumped_at":"2021-07-13T21:35:56.157Z","archetype":"regular","unseen":false,"pinned":true,"unpinned":null,"excerpt":"The Oppkey Blog helps both developers and and businesses work together.  Our blog provides insight into best practices and real-world experiences of businesses and developers helping each other. \nBusinesses have  technic&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":1690,"like_count":0,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Test Website Content Before You Publish: An Oppvera Brand Defense Walkthrough","id":663,"title":"Test Website Content Before You Publish: An Oppvera Brand Defense Walkthrough","slug":"test-website-content-before-you-publish-an-oppvera-brand-defense-walkthrough","posts_count":3,"reply_count":1,"highest_post_number":3,"image_url":"https://community.oppkey.host/uploads/default/original/2X/5/51343872b2755c89dae63cd3ca714e97b3f0a29b.png","created_at":"2026-09-29T21:39:43.200Z","last_posted_at":"2026-10-16T19:12:40.073Z","bumped":true,"bumped_at":"2026-10-16T19:12:40.073Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"You have a draft of a better website page. How can you tell whether it is more likely to answer the questions people ask AI search tools before you publish it? \nI show a sample campaign to compare existing pages with pro&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":25,"name":"oppvera","slug":"oppvera"},{"id":28,"name":"simulation","slug":"simulation"}],"tags_descriptions":{},"views":13,"like_count":1,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":1,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Original Poster, Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"GEO Starts With the Question, Not the Page","id":666,"title":"GEO Starts With the Question, Not the Page","slug":"geo-starts-with-the-question-not-the-page","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2026-10-01T16:41:27.016Z","last_posted_at":"2026-10-01T16:41:27.378Z","bumped":true,"bumped_at":"2026-10-01T16:41:27.378Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"When people first approach Generative Engine Optimization (GEO), it is natural to start by looking at the website. \n\nWhich pages should we improve?\nShould we add FAQs?\nShould headings be changed?\nShould we create more co&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":25,"name":"oppvera","slug":"oppvera"},{"id":27,"name":"geo","slug":"geo"}],"tags_descriptions":{},"views":16,"like_count":0,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"$20 or $1,545? What 878 Million Tokens Taught Me About AI Costs","id":665,"title":"$20 or $1,545? What 878 Million Tokens Taught Me About AI Costs","slug":"20-or-1-545-what-878-million-tokens-taught-me-about-ai-costs","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":"https://community.oppkey.host/uploads/default/optimized/2X/5/56cf4324626586621c71a7ee7a60d288f33153e1_2_1024x781.jpeg","created_at":"2026-10-01T15:58:47.136Z","last_posted_at":"2026-10-01T15:58:47.469Z","bumped":true,"bumped_at":"2026-10-01T15:58:47.469Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Last month, I used 878 million tokens while developing software with a $20-per-month Cursor Pro subscription.  I’m curious to see how much useful development I can accomplish while keeping my monthly Cursor spending w&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":31,"name":"agentic-coding","slug":"agentic-coding"},{"id":30,"name":"cursor","slug":"cursor"}],"tags_descriptions":{},"views":5,"like_count":0,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"The Page Is Not the Unit of Retrieval","id":664,"title":"The Page Is Not the Unit of Retrieval","slug":"the-page-is-not-the-unit-of-retrieval","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":"https://community.oppkey.host/uploads/default/optimized/2X/f/f85a0943850580a63aa6c2234ca2badfc432c032_2_1024x768.jpeg","created_at":"2026-09-30T00:24:51.568Z","last_posted_at":"2026-09-30T00:24:51.882Z","bumped":true,"bumped_at":"2026-09-30T00:24:51.882Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Watch the video demonstration: \n  \n    \n  \n\n\nWhen people think about search, they often think in terms of pages. \nA page ranks. A page appears in search results. A page gets traffic. \nAI search introduces a different way&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":12,"name":"ai","slug":"ai"},{"id":25,"name":"oppvera","slug":"oppvera"},{"id":29,"name":"retrieval","slug":"retrieval"}],"tags_descriptions":{},"views":8,"like_count":0,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"AI Search Monitoring Differences: API vs Web Scaping","id":662,"title":"AI Search Monitoring Differences: API vs Web Scaping","slug":"ai-search-monitoring-differences-api-vs-web-scaping","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2026-09-28T15:44:06.911Z","last_posted_at":"2026-09-28T15:44:07.146Z","bumped":true,"bumped_at":"2026-09-28T15:44:07.146Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"GEO marketing is based on running a set of 6 to 100 questions against different LLMs on a regular basis.  For example, a GEO marketing professional may run the same questions weekly or monthly.  Normally, s&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":12,"name":"ai","slug":"ai"},{"id":25,"name":"oppvera","slug":"oppvera"},{"id":27,"name":"geo","slug":"geo"}],"tags_descriptions":{},"views":15,"like_count":0,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"AI Search Is Changing How Products Get Chosen","id":661,"title":"AI Search Is Changing How Products Get Chosen","slug":"ai-search-is-changing-how-products-get-chosen","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2026-09-18T19:16:00.197Z","last_posted_at":"2026-09-18T19:16:00.513Z","bumped":true,"bumped_at":"2026-09-18T19:16:00.513Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"AI search is making biggest impact on businesses since the Internet first became widely adopted. \nThe important change is not simply that AI helps people find products. Increasingly, AI systems are making product and tec&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":25,"name":"oppvera","slug":"oppvera"},{"id":26,"name":"ai-search","slug":"ai-search"}],"tags_descriptions":{},"views":19,"like_count":0,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Your first reader might be AI","id":660,"title":"Your first reader might be AI","slug":"your-first-reader-might-be-ai","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":"https://community.oppkey.host/uploads/default/optimized/2X/f/f861ede010759b13eb80b4f88c9045e573cd143f_2_1024x576.jpeg","created_at":"2026-09-08T21:57:12.836Z","last_posted_at":"2026-09-08T21:57:13.122Z","bumped":true,"bumped_at":"2026-09-08T21:57:13.122Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"I’m an expert but in a changing field\nFor most of my career in technical marketing and developer relations, I could tell whether a new piece of content was ready. Experience and education underpinned my decisions. The ru&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":12,"name":"ai","slug":"ai"}],"tags_descriptions":{},"views":34,"like_count":0,"has_summary":false,"last_poster_username":"jcasman","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"When developers let an AI choose a programming language or library, how different are the choices made by different LLMs?","id":655,"title":"When developers let an AI choose a programming language or library, how different are the choices made by different LLMs?","slug":"when-developers-let-an-ai-choose-a-programming-language-or-library-how-different-are-the-choices-made-by-different-llms","posts_count":4,"reply_count":2,"highest_post_number":4,"image_url":"https://community.oppkey.host/uploads/default/optimized/2X/2/2758be6b76f1f9bc3c4def029d21f990991f685c_2_1023x486.jpeg","created_at":"2026-07-30T14:50:05.811Z","last_posted_at":"2026-08-02T15:21:16.160Z","bumped":true,"bumped_at":"2026-08-02T15:21:16.160Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Large language models are increasingly part of the software development process. Developers use AI assistants to generate code, troubleshoot errors, select libraries, initialize projects, and make technical decisions. &hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":12,"name":"ai","slug":"ai"},{"id":24,"name":"llm","slug":"llm"}],"tags_descriptions":{},"views":70,"like_count":2,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster","user_id":2,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"If AI defaults to Flask, can better content help FastAPI show up for the right questions?","id":656,"title":"If AI defaults to Flask, can better content help FastAPI show up for the right questions?","slug":"if-ai-defaults-to-flask-can-better-content-help-fastapi-show-up-for-the-right-questions","posts_count":2,"reply_count":0,"highest_post_number":2,"image_url":"https://community.oppkey.host/uploads/default/original/2X/4/4980ba7ab506b656f95cff40531c67c4377ba0b7.jpeg","created_at":"2026-08-01T20:00:12.600Z","last_posted_at":"2026-08-02T15:18:31.504Z","bumped":true,"bumped_at":"2026-08-02T15:18:31.504Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"A recent study found that large language models often favor established tools. In one web-server experiment, Flask appeared far more often than FastAPI. That raises a practical question for anyone shipping a newer tec&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":12,"name":"ai","slug":"ai"},{"id":24,"name":"llm","slug":"llm"}],"tags_descriptions":{},"views":51,"like_count":2,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":1,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster","user_id":2,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"AI Reshaping Search Behavior","id":642,"title":"AI Reshaping Search Behavior","slug":"ai-reshaping-search-behavior","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2026-05-21T14:38:00.223Z","last_posted_at":"2026-05-21T14:38:00.503Z","bumped":true,"bumped_at":"2026-05-21T14:38:00.503Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"For more than two decades, search behavior was easy to describe: people typed keywords into Google, scanned a list of links, and clicked through to websites. Keywords and lists of results still matter. But it is no longe&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":12,"name":"ai","slug":"ai"}],"tags_descriptions":{},"views":38,"like_count":0,"has_summary":false,"last_poster_username":"jcasman","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Can Google Analytics Show AI Crawler Traffic?","id":641,"title":"Can Google Analytics Show AI Crawler Traffic?","slug":"can-google-analytics-show-ai-crawler-traffic","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":"https://community.oppkey.host/uploads/default/optimized/2X/4/44ff39e4507129eeec47e5aab673fce6f096147f_2_1024x357.jpeg","created_at":"2026-05-20T15:35:38.851Z","last_posted_at":"2026-05-20T15:35:39.118Z","bumped":true,"bumped_at":"2026-05-20T15:35:39.118Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"You may be considering this question now: How often is my site being accessed by AI crawlers compared with traditional search engines? \n  \nsource: Cloudflare blog \nThe short answer is: Google Analytics can show you some &hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":12,"name":"ai","slug":"ai"}],"tags_descriptions":{},"views":32,"like_count":0,"has_summary":false,"last_poster_username":"jcasman","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Zero-Click Search: Why AI Search Visibility Matters Now","id":640,"title":"Zero-Click Search: Why AI Search Visibility Matters Now","slug":"zero-click-search-why-ai-search-visibility-matters-now","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":"https://community.oppkey.host/uploads/default/original/2X/4/400edd0da66cdfeea0965a8b2e777cb311e1bc23.png","created_at":"2026-05-20T15:22:41.504Z","last_posted_at":"2026-05-20T15:22:41.755Z","bumped":true,"bumped_at":"2026-05-20T15:22:41.755Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"For years, search marketing had a clear goal: rank high on Google, earn the click, bring visitors to your website, and convert some of them into customers. \nThat model is changing. \nWith the rise of AI search tools like &hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":12,"name":"ai","slug":"ai"}],"tags_descriptions":{},"views":26,"like_count":0,"has_summary":false,"last_poster_username":"jcasman","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Why FastAPI Beat Django and Flask","id":627,"title":"Why FastAPI Beat Django and Flask","slug":"why-fastapi-beat-django-and-flask","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":"https://community.oppkey.host/uploads/default/original/2X/6/6c1fb887cec1680f01c58a124c3dd7c709636e5f.png","created_at":"2025-09-15T01:20:37.203Z","last_posted_at":"2025-09-15T01:20:37.632Z","bumped":true,"bumped_at":"2025-09-17T20:29:15.874Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"In 2024, FastAPI became more popular than Django and Flask. \n  \nSource Jetbrains Python Developers Survey 2024. \n  \nAsync-First Design\nMy previous article, Django vs FastAPI: A Practical Comparison, highlighted the chall&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":51,"like_count":1,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":1,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"FastOpp: A Student-Friendly Starter for AI Web Apps","id":628,"title":"FastOpp: A Student-Friendly Starter for AI Web Apps","slug":"fastopp-a-student-friendly-starter-for-ai-web-apps","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2025-09-17T15:46:19.915Z","last_posted_at":"2025-09-17T15:46:20.132Z","bumped":true,"bumped_at":"2025-09-17T15:46:20.132Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Original article here: FastOpp: A Student-Friendly Starter for AI Web Apps - DEV Community \nIf you’re a student or novice developer curious about building AI web applications, FastOpp is worth a look. It’s a well-scaffol&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":12,"name":"ai","slug":"ai"},{"id":21,"name":"fastapi","slug":"fastapi"}],"tags_descriptions":{},"views":41,"like_count":1,"has_summary":false,"last_poster_username":"jcasman","category_id":8,"op_like_count":1,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Why Reddit Engagement Still Matters in the AI Era","id":620,"title":"Why Reddit Engagement Still Matters in the AI Era","slug":"why-reddit-engagement-still-matters-in-the-ai-era","posts_count":7,"reply_count":4,"highest_post_number":7,"image_url":"https://community.oppkey.host/uploads/default/original/2X/0/040d700e84e4cc82bbdbfd797b2941ec583bfbed.png","created_at":"2025-07-15T16:34:53.553Z","last_posted_at":"2025-07-20T19:49:15.714Z","bumped":true,"bumped_at":"2025-07-20T19:49:15.714Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"The AI Gap: Why Developers Still Need Human Communities\nDespite the widespread adoption of AI tools in software development, there’s a critical gap that AI alone cannot fill. While AI excels at providing answers based&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":22,"name":"reddit","slug":"reddit"}],"tags_descriptions":{},"views":80,"like_count":3,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Original Poster, Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Django vs FastAPI: A Practical Comparison","id":622,"title":"Django vs FastAPI: A Practical Comparison","slug":"django-vs-fastapi-a-practical-comparison","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2025-07-17T15:56:00.072Z","last_posted_at":"2025-07-17T15:56:00.392Z","bumped":true,"bumped_at":"2025-07-17T15:56:00.392Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Overview\nThis document compares Django and FastAPI based on real-world experience with Django and initial exploration of FastAPI for modern async development. \nOur Background\n\nDjango Experience: Many years of Django deve&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":21,"name":"fastapi","slug":"fastapi"},{"id":20,"name":"django","slug":"django"}],"tags_descriptions":{},"views":52,"like_count":0,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Reddit ranking includes votes, time, content policies, spam detection, and more","id":621,"title":"Reddit ranking includes votes, time, content policies, spam detection, and more","slug":"reddit-ranking-includes-votes-time-content-policies-spam-detection-and-more","posts_count":2,"reply_count":0,"highest_post_number":2,"image_url":"https://community.oppkey.host/uploads/default/original/2X/9/941136cd985283eee1cf160916bfb78d83ee7e9f.png","created_at":"2025-07-16T16:44:31.266Z","last_posted_at":"2025-07-17T15:54:01.530Z","bumped":true,"bumped_at":"2025-07-17T15:54:01.530Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"I’ve used Reddit for 15 years. In the past, for personal used, I was not in the habit of looking too deeply into how the voting system works or what gets fed into my home feed. \n  \nBut in order for clients to engage on a&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":59,"like_count":0,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster","user_id":2,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Assessment of Async Tools in Building AI Tools: My Experience with HTMX, FastAPI, LLM, SSE, and Jinja","id":619,"title":"Assessment of Async Tools in Building AI Tools: My Experience with HTMX, FastAPI, LLM, SSE, and Jinja","slug":"assessment-of-async-tools-in-building-ai-tools-my-experience-with-htmx-fastapi-llm-sse-and-jinja","posts_count":2,"reply_count":0,"highest_post_number":2,"image_url":"https://community.oppkey.host/uploads/default/original/2X/2/26a08cd8930e67a33924d09af9c422c611c60540.png","created_at":"2025-07-11T18:41:30.565Z","last_posted_at":"2025-07-14T01:46:45.344Z","bumped":true,"bumped_at":"2025-07-14T01:46:45.344Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"The author, contemplating async tools for his 2001 Honda Insight hybrid. Just kidding. \nBuilding internal AI tools is both exciting and daunting. Our user base includes both staff and partners who expect a relatively &hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":12,"name":"ai","slug":"ai"},{"id":19,"name":"htmx","slug":"htmx"}],"tags_descriptions":{},"views":284,"like_count":1,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":1,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster","user_id":2,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"How to Define Your Developer Community","id":300,"title":"How to Define Your Developer Community","slug":"how-to-define-your-developer-community","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":"https://community.oppkey.host/uploads/default/optimized/1X/f602f908c8a42a69076df6d97b24b110071e7ba9_2_1024x558.jpeg","created_at":"2021-07-14T01:16:43.154Z","last_posted_at":"2021-07-14T01:16:43.520Z","bumped":true,"bumped_at":"2025-07-02T08:19:57.532Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"To help your developer community, you must first define what the community is. \nI’m active in the Flutter community as a member.  I’ll use this Google-led developer community as an example of how companies can define &hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":5,"name":"featured","slug":"featured"},{"id":6,"name":"community","slug":"community"}],"tags_descriptions":{},"views":613,"like_count":0,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Vendor Lock-In Drives Open-Source Adoption in Japan","id":587,"title":"Vendor Lock-In Drives Open-Source Adoption in Japan","slug":"vendor-lock-in-drives-open-source-adoption-in-japan","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2025-03-11T04:15:41.464Z","last_posted_at":"2025-03-11T04:15:41.704Z","bumped":true,"bumped_at":"2025-03-11T04:15:41.704Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"originally posted in dzone.com March 10, 2025 \nOpen-source software is gaining ground in Japanese corporate strategy, driven by AI, cloud-native adoption, and expanded use in the manufacturing industry.\nI have been looki&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":15,"name":"opensource","slug":"opensource"},{"id":14,"name":"japan","slug":"japan"}],"tags_descriptions":{},"views":46,"like_count":0,"has_summary":false,"last_poster_username":"jcasman","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Flutter Loved by Developers in Stack Overflow 2021 Developer Survey","id":302,"title":"Flutter Loved by Developers in Stack Overflow 2021 Developer Survey","slug":"flutter-loved-by-developers-in-stack-overflow-2021-developer-survey","posts_count":4,"reply_count":4,"highest_post_number":4,"image_url":"https://community.oppkey.host/uploads/default/original/1X/3a394044f59acab549d457c5ee3677e8bfa4958a.png","created_at":"2021-08-05T20:17:11.747Z","last_posted_at":"2025-02-07T17:06:26.776Z","bumped":true,"bumped_at":"2025-02-28T17:10:02.087Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"The 2021 Stack Overflow loved vs dreaded survey results show that  Flutter is one of the most loved frameworks.  Only .NET Core received more love.  Of the 58K respondents, 68.17% loved Flutter.   This is great news if, &hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":7,"name":"flutter","slug":"flutter"}],"tags_descriptions":{},"views":2711,"like_count":2,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Original Poster, Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Japan’s Evolving Open-Source Culture: A Rapid Change in Traditional Companies Like Hitachi","id":465,"title":"Japan’s Evolving Open-Source Culture: A Rapid Change in Traditional Companies Like Hitachi","slug":"japan-s-evolving-open-source-culture-a-rapid-change-in-traditional-companies-like-hitachi","posts_count":3,"reply_count":1,"highest_post_number":3,"image_url":null,"created_at":"2025-01-23T19:55:00.560Z","last_posted_at":"2025-01-23T22:28:38.689Z","bumped":true,"bumped_at":"2025-01-23T22:28:38.689Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Japan’s Evolving Open-Source Culture: A Rapid Change in Traditional Companies Like Hitachi\nJapanese companies are gradually beginning to incorporate open-source software into corporate strategies, moving beyond just mere&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":210,"like_count":1,"has_summary":false,"last_poster_username":"jcasman","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Original Poster, Most Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Responding to Questions","id":386,"title":"Responding to Questions","slug":"responding-to-questions","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2022-07-17T03:58:20.780Z","last_posted_at":"2022-07-17T03:58:20.984Z","bumped":true,"bumped_at":"2022-07-17T03:58:20.984Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Originally published at:\t\t\tResponding to Questions - Oppkey Developer Relations \n  This community building post is about responding to questions.   \nCommunities thrive on information and interactions. As a community mana&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":487,"like_count":1,"has_summary":false,"last_poster_username":"jcasman","category_id":8,"op_like_count":1,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Community Building - Rewarding Good Contributions","id":382,"title":"Community Building - Rewarding Good Contributions","slug":"community-building-rewarding-good-contributions","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2022-06-20T00:44:45.045Z","last_posted_at":"2022-06-20T00:44:45.246Z","bumped":true,"bumped_at":"2022-06-20T00:44:45.246Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Originally published at:\t\t\tCommunity Building - Rewarding Good Contributions - Oppkey Developer Relations \n  Over many years of helping build and support developer communities, Oppkey has identified key community buildin&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":396,"like_count":1,"has_summary":false,"last_poster_username":"jcasman","category_id":8,"op_like_count":1,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Discourse SEO Problems","id":361,"title":"Discourse SEO Problems","slug":"discourse-seo-problems","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2022-01-15T17:41:06.942Z","last_posted_at":"2022-01-15T17:41:07.078Z","bumped":true,"bumped_at":"2022-01-15T17:41:07.078Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Originally published at:\t\t\tDiscourse SEO Problems – Oppkey Developer Relations \n  Toward the end of of 2021, we started to see a problem with site views on Discourse installations.  This appears to be a result of changes&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":591,"like_count":0,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Flutter Courses for Beginners","id":303,"title":"Flutter Courses for Beginners","slug":"flutter-courses-for-beginners","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":"https://community.oppkey.host/uploads/default/original/1X/d1bf3783e4aa123c2920ae88c8aeaf93148f552d.png","created_at":"2021-08-07T14:50:53.308Z","last_posted_at":"2021-08-07T14:50:53.606Z","bumped":true,"bumped_at":"2021-08-09T21:15:49.328Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Note that the Udemy courses go on frequently sale for between $10 and $15. Wait for the sale.  The author of the course will also often have discount codes to get the course cheaply. Suggest you pay only $10 to $20 per c&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":7,"name":"flutter","slug":"flutter"}],"tags_descriptions":{},"views":1814,"like_count":0,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"How Much A Company Gives Back Defines Community Engagement","id":294,"title":"How Much A Company Gives Back Defines Community Engagement","slug":"how-much-a-company-gives-back-defines-community-engagement","posts_count":3,"reply_count":1,"highest_post_number":3,"image_url":"https://community.oppkey.host/uploads/default/original/1X/371dd8360d9d46bcc8d6511a7a45ee14cfefbc77.jpeg","created_at":"2021-06-09T15:29:06.851Z","last_posted_at":"2021-06-09T17:37:46.080Z","bumped":true,"bumped_at":"2021-06-09T20:40:12.830Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Earlier this year, we struggled to promote a set of YouTube tutorial videos to the Raspberry Pi community.  We achieved success by changing to a long-term  consistent strategy of giving back to developers with content&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":5,"name":"featured","slug":"featured"}],"tags_descriptions":{},"views":805,"like_count":3,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":1,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Original Poster, Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Deno - Node replacement","id":259,"title":"Deno - Node replacement","slug":"deno-node-replacement","posts_count":2,"reply_count":0,"highest_post_number":2,"image_url":null,"created_at":"2020-05-16T23:20:22.514Z","last_posted_at":"2021-06-04T13:18:25.927Z","bumped":true,"bumped_at":"2021-06-04T13:18:25.927Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Sharing info on a Node replacement technology coming out. I think Node is more or less on hold for any kind of assessment, but including this info on Deno:","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":708,"like_count":0,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster","user_id":2,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Installing Unity on Windows 10","id":67,"title":"Installing Unity on Windows 10","slug":"installing-unity-on-windows-10","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2016-10-15T13:35:12.622Z","last_posted_at":"2016-10-15T13:35:13.308Z","bumped":true,"bumped_at":"2016-10-15T13:35:13.308Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"excerpt":"Problem: Unity 5.4 does not start on Windows 10. Shows grey rectangle only. \n\nhttps://forum.unity3d.com/threads/unity3d-5-3-not-working.372682/ \n\npackages \n\n\nunityeditor-cloud-hub-0.0.1.tgz\n\nunity-editor-home-0.0.7.tgz \n\n&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":2031,"like_count":0,"has_summary":false,"last_poster_username":"craig","category_id":8,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":1,"primary_group_id":null,"flair_group_id":null}]}]}}