Mastodon

News from the Planet

Search and Visualize NASA Earth Data in QGIS with OpenGeoAgent

Qiusheng Wu — May 11, 2026

A tutorial on searching, streaming, visualizing, and downloading NASA Earth observation data inside QGIS using the NASA Earthdata plugin and OpenGeoAgent for natural-language and voice workflows.

read more ➔

Create Satellite Timelapse Animations in QGIS with OpenGeoAgent

Qiusheng Wu — May 10, 2026

A tutorial on using OpenGeoAgent with the QGIS Timelapse plugin to generate Landsat, MODIS, GOES, and Esri Wayback timelapse animations from natural language and voice prompts.

read more ➔

Access NASA OPERA Data in QGIS with a Plugin and an AI Agent

Qiusheng Wu — May 05, 2026

A step-by-step tutorial on installing the NASA OPERA QGIS plugin, searching and visualizing DSWx surface water products, and using an integrated AI agent to analyze flood events with natural language and voice commands.

read more ➔

Links to CSS colour palettes

Julia Evans — May 04, 2026

A while back I decided to stop using Tailwind for new projects and to just write vanilla CSS instead. But one thing I missed about Tailwind was the colour palette (here as CSS). If I wanted a light blue I could just use blue-100 and if I didn’t like it maybe try blue-200 or blue-50. I’m not very…

read more ➔

OpenGeoAgent: An Open-Source Multimodal AI Agent for Geospatial Analysis in QGIS

Qiusheng Wu — May 03, 2026

Introducing OpenGeoAgent, an open-source multimodal AI agent that automates geospatial analysis and visualization in QGIS through natural language and voice commands.

read more ➔

Testing Vue components in the browser

Julia Evans — May 02, 2026

Hello! One of my long term projects on here is figuring out how to write frontend Javascript without using Node or any other server JS runtime. One issue I run into a lot in my frontend JS projects is that I don’t know how to write tests for them. I’ve tried to use Playwright in the past, but it…

read more ➔

Build a Modern Developer Blog with MyST Markdown and GitHub Pages

Qiusheng Wu — April 22, 2026

A step-by-step tutorial on building a developer blog with the MyST Markdown template, deploying it to GitHub Pages, and enabling GitHub Discussions-backed comments with Giscus.

read more ➔

Write Journal Articles with MyST Markdown: Auto-Generate PDFs and Websites

Qiusheng Wu — April 15, 2026

A step-by-step tutorial on writing journal articles in MyST Markdown with automatic PDF generation and website deployment using a GitHub template.

read more ➔

Build a Professional CV Website with Auto PDF Generation Using MyST Markdown

Qiusheng Wu — April 10, 2026

A step-by-step tutorial on building a personal CV website with MyST Markdown and Typst that automatically generates a PDF version of your CV from the same Markdown source.

read more ➔

Build a Personal Website in 5 Minutes: No Coding Required

Qiusheng Wu — April 09, 2026

A step-by-step video tutorial showing how to create and deploy a personal website using the MyST Markdown template and GitHub Pages, with no coding experience needed.

read more ➔

A Reusable Template for Building Websites with MyST Markdown

Qiusheng Wu — April 07, 2026

A GitHub template that bundles MyST Markdown, GitHub Pages deployment, Netlify PR previews, and pre-commit hooks into a ready-to-use starting point.

read more ➔

Launching My New Website with MyST Markdown and Typst

Qiusheng Wu — April 06, 2026

How I rebuilt gishub.org using MyST Markdown for the website and Typst for automatic CV generation from the same Markdown source files.

read more ➔

End-to-End GeoAI Workflow for Agricultural Field Boundary Delineation

Qiusheng Wu — March 20, 2026

A complete tutorial on using instance segmentation and the Fields of the World dataset to delineate agricultural field boundaries with GeoAI, from data preparation to batch inference.

read more ➔

Sensor-Agnostic Cloud Detection from Satellite Imagery with GeoAI

Qiusheng Wu — March 19, 2026

A step-by-step tutorial on detecting clouds and cloud shadows from satellite imagery using OmniCloudMask and GeoAI, with post-processing, vectorization, and cloud-free mask generation.

read more ➔

Examples for the tcpdump and dig man pages

Julia Evans — March 10, 2026

Hello! My big takeaway from last month’s musings about man pages was that examples in man pages are really great, so I worked on adding (or improving) examples to two of my favourite tools’ man pages. Here they are: the dig man page (now with examples) the tcpdump man page examples (this one is an…

read more ➔

Create a Spinning 3D Globe Map Without Writing Any Code

Qiusheng Wu — March 06, 2026

A step-by-step tutorial on creating an interactive spinning 3D globe with raster and vector data overlays using a web-based tool or Jupyter Notebook, no coding required.

read more ➔

Download Free High-Resolution Satellite Imagery with QGIS and MapLibre

Qiusheng Wu — March 03, 2026

A tutorial on accessing, visualizing, and downloading free satellite imagery from the Vantor Open Data Program using a web app or QGIS plugin.

read more ➔

GeoAI QGIS Plugin v1.0: One-Click Installation for Geospatial AI

Qiusheng Wu — February 25, 2026

Announcing GeoAI QGIS Plugin v1.0 with one-click installation, SAM 3, water segmentation, forest segmentation, and export to vector, raster, COCO, YOLO, and Pascal VOC formats.

read more ➔

Notes on clarifying man pages

Julia Evans — February 18, 2026

Hello! After spending some time working on the Git man pages last year, I’ve been thinking a little more about what makes a good man page. I’ve spent a lot of time writing cheat sheets for tools (tcpdump, git, dig, etc) which have a man page as their primary documentation. This is because I…

read more ➔

Visualize NOAA Coastal LiDAR Point Clouds in Your Browser

Qiusheng Wu — February 18, 2026

A step-by-step tutorial on searching, loading, and visualizing massive NOAA coastal LiDAR point clouds directly in your browser without downloading any data.

read more ➔

Introducing anymap-ts: Interactive Maps with TypeScript and Jupyter

Qiusheng Wu — February 13, 2026

Introducing anymap-ts, a new Python package built on MapLibre and TypeScript for interactive geospatial visualization in both web apps and Jupyter Notebooks.

read more ➔

Some notes on starting to use Django

Julia Evans — January 27, 2026

Hello! One of my favourite things is starting to learn an Old Boring Technology that I’ve never tried before but that has been around for 20+ years. It feels really good when every problem I’m ever going to have has been solved already 1000 times and I can just get stuff done easily. I’ve thought it…

read more ➔

A data model for Git (and other docs updates)

Julia Evans — January 08, 2026

Hello! This past fall, I decided to take some time to work on Git’s documentation. I’ve been thinking about working on open source docs for a long time – usually if I think the documentation for something could be improved, I’ll write a blog post or a zine or something. But this time I wondered:…

read more ➔

Notes on switching to Helix from vim

Julia Evans — October 10, 2025

Hello! Earlier this summer I was talking to a friend about how much I love using fish, and how I love that I don’t have to configure it. They said that they feel the same way about the helix text editor, and so I decided to give it a try. I’ve been using it for 3 months now and here are a few…

read more ➔

New zine: The Secret Rules of the Terminal

Julia Evans — June 26, 2025

Hello! After many months of writing deep dive blog posts about the terminal, on Tuesday I released a new zine called “The Secret Rules of the Terminal”! You can get it for $12 here: https://wizardzines.com/zines/terminal, or get an 15-pack of all my zines here. Here’s the cover: the table…

read more ➔