Testing Cloudinary Image Enhancements

Last week I took a look at Cloudinary GenAI transformations to demonstrate quickly creating different versions of media, including multiple sizes and text copy. While taking a look at other parts of the Cloudinary docs I discovered that they had not one, but four different ways to enhance images. These include: Generative restore Upscaling (reminds me of CSI) Enhance Improve Looking at this list, it may be difficult to differentiate one from the other, luckily they provide a nice tabular list with specifics and use cases. Today I want to shine a light on two of them – enhance and improve. From the docs, enhance is described as: "Enhances the overall appeal of images without altering... more →
Posted in: JavaScript

Links For You (1/25/25)

Greetings, programs. I’m writing this from the deep, deep south where my kids were all off school this week because of… snow. I kid you not. On Tuesday we got around ten inches of snow, more than the area’s ever seen in recorded history I believe. I grew up in Saint Louis so I’ve seen snow before, but in the nearly twenty-five years I’ve been here there’s never been anything like it. The snow is pretty much gone already (I think the high today will be near 70), but I’m so happy the kids got a chance to play in the snow, just like I did, many many years ago. JavaScript Import Maps This is a pretty cool article. Victorio Lo demonstrates how to implement... more →
Posted in: JavaScript

Let’s Build a Web App for Pinecone

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

Turn Your Weather into Poetry with GenAI

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

Next CodeBreak – Let’s AI!

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

Simple Blog Example in Flask

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

Links For You (1/11/25)

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

Building a Bluesky AI Sentiment Analysis Dashboard

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
1 14 15 16 17 18 105