BoxLang Quick Tips – PDF Generation / / No Comments Today’s BoxLang quick tip is one near and dear to my heart, generating PDFs. Creating dynamic, expressive PDFs is fairly easy. Let me show you how. As before, I’ve got a video version as well so you would rather watch that, just skip to the end. Step One – The Module By default, BoxLang doesn’t ship with PDF capabilities built-in, you need to add it via the PDF Module. This can be done quickly via the CLI: install-bx-module bx-pdf Installing the module adds three new tags to your BoxLang runtime: bx:document – This is the core tag for PDF generation. Everything inside it will either be content or directives (see the items below) to control what’s produced. bx:documentitem... more → Posted in: JavaScript Tagged with: BoxLang, Generation, Quick, tips
Air Tours of the World / / No Comments TripGeo’s new Air Tours app is an engaging and immersive way to virtually explore cities around the world. This interactive web application combines Google Maps’ 3D imagery, Street View, and aerial perspectives to provide you with four different perspectives of some of the world’s most iconic locations. Whether you’re a travel enthusiast, an urban explorer, or simply someone looking to get a new Maps Mania… more → Posted in: Interactive Maps Tagged with: Tours, World
Building a Jira Search Tool in BoxLang / / No Comments Developers seem to have a love/hate (or perhaps hate/despise) relationship with Jira. I’ve never minded it, but the biggest issue for me is that if I haven’t used it in a while, it can be overwhelming. Yesterday I was thinking about this and wondering if perhaps I could build my own tooling to interact with Jira via an API, if it even had one. Turns out, of course they have an API and it’s not terribly difficult to use. With that in mind, I whipped up a quick tool to search Jira via the command line with BoxLang. Jira API Basics The docs for Jira’s API are pretty good and cover the huge set of operations you can perform with it. Your root API url will be based on your... more → Posted in: JavaScript Tagged with: BoxLang, building, Jira, search, tool
Generative Images with Gemini (New Updates) / / No Comments Back in January of this year, I wrote up my experience testing out Google’s Imagen 3 APIs to generate dynamic images. A few days ago, Google updated their support with new experimental support in Flash. I’ve been playing with this the last few days and have some code and samples to share with you, but before that, what exactly changed? Gemini and Imagen 3 There are now two different models, and different APIs, to generate images with Google’s AI platform. The new one is Gemini 2.0 Flash Experimental and the previous one (the one covered in my blog post) is Imagen 3. Of course the next question is, why two, and what do you pick? The docs do a great job of explaining the differences,... more → Posted in: JavaScript Tagged with: Gemini, Generative, images, updates
The Future of Urban Mobility / / No Comments This impressive animated data visualization shows the average levels of traffic on Dubai roads over the course of one day. It is one of a series of mapped visualizations in Moving forward: What drives the future of urban transport, a data-driven exploration of urban mobility in Dubai. Dubai city has one of the highest car ownership rates in the world, with one vehicle for every two residents, Maps Mania… more → Posted in: Interactive Maps Tagged with: future, Mobility, Urban
BoxLang Quick Tips – Database Access / / No Comments Today I’m kicking off a new blog/video series of quick tips for people interested in BoxLang. These ‘quick tips’ are just that, a look at how BoxLang can simplify working with the JVM and building CLI scripts, web apps, and serverless applications. Each of these posts will include a video along with sample code and help highlight some of the ways BoxLang can be powerful in just a few lines of code. For my first quick tip, let’s talk database access, which by the way was one of the reasons I got into ColdFusion nearly thirty years ago (I didn’t want to figure out how to do it in Perl!). Working with databases in BoxLang can be done in a few steps. Step One –... more → Posted in: JavaScript Tagged with: access, BoxLang, database, Quick, tips
The Republic of Climate Change Deniers / / No Comments The United States is currently undertaking the biggest act of climate change denial in history.One striking example is what is happening at the US Federal Emergency Management Agency (FEMA). Over 200 FEMA employees have been fired by the Department of Government Efficiency (DOGE). Those who remain have been ordered to remove all language related to climate change from FEMA websites and Maps Mania… more → Posted in: Interactive Maps Tagged with: Change, Climate, Deniers, Republic
Automating and Responding to Sentiment Analysis with Diffbot’s Knowledge Graph / / No Comments Diffbot’s Knowledge Graph has a simple purpose – bring the sum total of all knowledge to your fingertips via a search that emphasis data and relations over a simple text based search engine experience. Sourced by the entire web, Knowledge Graph lets you perform complex queries against billions of data points instantly via a simple API. I decided to take a spin with their API and build a "relatively" simple tool – news analysis for a product run in on automated platform. Should be easy, right? Let’s get to it. Note that the examples in this blog post assume you’ve gotten a free key from Diffbot. Be sure to do that before trying the samples. Designing the... more → Posted in: JavaScript Tagged with: Analysis, Automating, Diffbot's, Graph, Knowledge, Responding, Sentiment