Let’s Build a Web App for Pinecone / / No Comments Yesterday I blogged about Pinecone’s excellent RAG as a service system for quickly building generative AI systems: "Checkout Pinecone for Serverless RAG". It was so easy, I decided to take a look into what it would take to build a "real" application around their service. With that in mind, I whipped up a quick Flask application to demo just that. I’m still very new to Flask, so take this with a grain of salt, and design isn’t my strong point, but who cares, let’s dig in! First off, a quick reminder of what I demonstrated yesterday. I used Pinecone’s Python SDK to: Create an "Assistant", which you can think of as a collection of documents. I... more → Posted in: JavaScript Tagged with: Build, Lets, Pinecone
Turn Your Weather into Poetry with GenAI / / No Comments I was struggling to get some real, productive work done (I just got back from a trip in Europe) and I thought I’d tackle something that’s been in my queue for a little while now. This is, yet again, one of my "bad ideas" that you should probably not ever use in production, but it was fun, it made me happy, and you get to see the kind of silliness I do when I’m trying to distract myself. The idea was simple – given a forecast, how well could generative AI transform it into something more fun, like poetry? As I usually do, I opened up Google’s AI Studio and tried it there first. I began with a system instruction: Given a forecast, rewrite it in poetry. Return... more → Posted in: JavaScript Tagged with: GenAI, into, Poetry, Turn, Weather
Next CodeBreak – Let’s AI! / / No Comments Hey folks! One of the things I promised to do better with the Code Break show was scheduling. With that being said, I’m here to announce the next event and I’ve got about 4 already on the calendar after that. Hopefully this year I can get a bit more consistent with schedule. That being said, we’ll see. Life is crazy at times. 😉 Ok, with that out of the way, my next session is Tuesday, January 21, at 12PM CST. I’ll be talking about AI, specifically Generative AI, with a focus on Google Gemini, but also client-side stuff as well (with Chrome’s built-in support and Transformers.js). I imagine this topic will cover two or more sessions. We’ll see how much I... more → Posted in: JavaScript Tagged with: CodeBreak, Lets, Next
Simple Blog Example in Flask / / No Comments As part of my efforts to improve my Python knowledge, I’ve been looking at the Flask framework for a way to build Python-backed web apps. I’ve only been looking at it for a short time, but I’m really impressed with how simple it is. In some ways, it reminds me a lot of when I first saw Express. Before that, I wasn’t sure I was going to like Node.js as it felt like a lot of work to build a simple app, but Express handled a lot of the boring parts. The same applies to Flask. To get an idea of how easy it is, here’s the basic "hello world" from the quickstart: from flask import Flaskapp = Flask(__name__)@app.route("/")def hello_world(): return... more → Posted in: JavaScript Tagged with: blog, example, Flask, simple
Links For You (1/11/25) / / No Comments Welcome to the first Links For You of 2025. I’m currently writing this from, I kid you not, the Danube in Austria. My wife and I are a bit over halfway through a European vacation (one we planned before Adobe decided to give me an early Christmas gift of a layoff). So far, it’s been absolutely glorious, and I plan on writing about the experience later this month. On with the links! CSS Light and Dark Themes Made Easy First up is the wonderfully named, "Come to the light-dark() Side", by Sara Joy. This looks at how native CSS can make light and dark themes incredibly easy to implement. I had no clue it was so easy to implement in CSS, but as I’ve said before, CSS has... more → Posted in: JavaScript Tagged with: 1/11/25, links
Building a Bluesky AI Sentiment Analysis Dashboard / / No Comments As the "Great Social Network Wars" carry on (my term, not anyone else), I’m finding myself more and more enjoying Bluesky. I do more posting on Mastodon, but Bluesky reminds me a lot more of early Twitter. Threads is… ok, but has felt too corporate. I can’t even remember the last time I checked it. Earlier this week, I was poking around the Bluesky API and was incredibly happy to discover that their Search API does not require a key and supports CORS, which means a simple client-side application could make use of it. In the past I had built similar tools for Twitter, back when it had a decent API, and I thought it might be fun to build something for Bluesky, specifically,... more → Posted in: JavaScript Tagged with: Analysis, Bluesky, building, dashboard, Sentiment
Onwards to 2025… / / No Comments For a while now I’ve had a tradition here where I end my "blog year" with a wrap up post looking back at how the year went and figuring out what I want for the upcoming year. This is, honestly, a post just for myself, but as usual, I’m always open to what people think, so feel free to leave me a comment below. Career and Conferences This year marked my (nearly) fourth year at Adobe, but as I said earlier, my time has ended. While I’m not happy with the timing, I have to be honest with myself and say it was time to move on. I am incredibly proud of what I accomplished at Adobe. I grew quite a bit as a developer evangelist/advocate, and I can look at what I did for the... more → Posted in: JavaScript Tagged with: 2025, Onwards
Links For You (12/28/24) / / No Comments Welcome to the last Links For You for 2024. Believe it or not, I started this series way back in April of 2022, and I don’t know about you, but it’s been one of my favorite features of my blog. I love sharing cool links (and music videos!) with readers, and I hope yall have enjoyed it as well. This is my second to last post for the year so there’s still a bit more content coming, but for now, let’s get into the cool stuff! An Alpine.js Bluesky RSS Reader Folks know I love Alpine.js, and this first post is a great example of why. Andy Jarrett demonstrates how he built a RSS reader of his Bluesky profile using Alpine.js. It’s relatively simple to do so, and one of... more → Posted in: JavaScript Tagged with: 12/28/24, links