Entries from 2025-01-01 to 1 year

How to Delete Images from ChatGPT Library

If you delete the chat where the image was generated, the corresponding image will also be deleted from the ChatGPT Library. Introduction How to Delete Images from ChatGPT Library Method Let’s Try It Conclusion Reference Introduction A new…

Combining GPT-4 Vision with Raspberry Pi | Making GPT the Brain of a Robot, Part 2

In this post, I’ll run a simple robot experiment on Raspberry Pi, combining a camera and servo motors with GPT-4 Vision. For Part 1, see: en.bioerrorlog.work Introduction Combining GPT-4 Vision with Raspberry Pi Concept Setup Hardware Soft…

Making LLM the Brain of a Robot - Part 1: Combining a Camera/Servo Motor with GPT

We'll conduct a simple experiment combining a camera, servo motors, and GPT on a Raspberry Pi. Introduction Combining GPT with Raspberry Pi, Camera, and Servo Motors Prototype Concept Setup Hardware Software Results Challenges Object Detec…

Shell Command to Combine Multiple Files for AI Coding

We will create a shell command to quickly combine the contents of multiple files, including directory structure information, for LLM prompts. Introduction Shell Command to Concatenate Multiple Files for AI Coding Goal Command Implementatio…

Controlling Multiple Servo Motors with Raspberry Pi (No PWM Module)

This is a quick note on how to control multiple servo motors using only the GPIO pins on a Raspberry Pi—without relying on any PWM or servo controller modules. Introduction Controlling Multiple Servos on Raspberry Pi OS Environment Wiring …

How to Count Lines of Source Code

This is a memo on how to measure the number of lines in a source code repository. Introduction How to Count Lines of Source Code Count Lines with a Command Count Lines with Tools Conclusion References Introduction While reading source code…

What the Underscore Suffix Means in PyTorch Function Names

It indicates in-place operations. Introduction Underscore "_" Suffix in PyTorch Function Names Meaning Example Conclusion References Introduction When working with PyTorch, you'll often see functions with a trailing underscore _ in their n…

How to Output DEBUG-Level Logs in Terraform

This is a quick note on how to change the log output level in Terraform. Introduction Outputting DEBUG-Level Logs in Terraform Setting Log Levels Separately for Terraform and Providers Appendix: Reading Terraform's Source Code Conclusion R…

Remove Duplicate Lines with One Command

You can easily do this with awk: awk '!seen[$0]++' Introduction Remove Duplicate Lines with One Command Command Breakdown Example Conclusion Reference Introduction This is a quick note on how to remove duplicate lines and show each line on…

Understanding the Functional Options Pattern in Go

Go

A quick overview of the Functional Options Pattern in Go. Introduction Functional Options Pattern in Go Conclusion References Introduction While using a Go-based library, I came across the Functional Options Pattern. Here's a brief note on…

Building a MCP Server in Go

This is a memo on how to implement an MCP server using Golang. Introduction Prerequisite: Is there an official Go MCP SDK? Implementing an MCP Server in Go The Target MCP Server Implementing the MCP server in Go Implementing the Tool Imple…

How to use uv: A Fast Python Package & Project Manager

This is a quick memo on how to use the Rust-based Python package & project manager, "uv". Introduction How to Use uv Installing uv Listing uv Commands Creating a Python Project Creating a Virtual Environment Adding a Python Package Checkin…

Streamlining MCP Server Development with MCP CLI

This guide summarizes how to use the MCP CLI. Introduction How to Use MCP CLI Installing MCP CLI List of MCP CLI Commands How to Use mcp run How to Use mcp dev How to Use mcp install Conclusion References Introduction MCP CLI is a tool inc…

How to Use MCP Inspector: A Testing Tool for MCP Servers

This is a quick guide on how to use "MCP Inspector," a browser-based test tool for MCP servers. Introduction How to Use MCP Inspector Preparation: Set Up a Minimal MCP Server Launching MCP Inspector Using MCP Inspector Conclusion Reference…

Letting LLM Play Minesweeper via MCP

Use MCP to let an LLM play Minesweeper. Introduction Playing Minesweeper via MCP Overview Starting the Minesweeper Server Building the MCP Server Connecting Claude Desktop with MCP Server Letting Claude Play Minesweeper Conclusion Referenc…

Connecting Claude Desktop to MCP Server: Step-by-Step Guide

This is a quick note to connect Claude Desktop to an MCP (Model Context Protocol) server. Introduction How to Connect Claude Desktop to an MCP Server 1. Add MCP Server Information to the Config File 2. Restart Claude Desktop Conclusion Ref…

AI Agent Patterns & Practices

Learn about AI agent patterns and practices from Anthropic’s article "Building effective agents" and its follow-up video. Introduction Background: What Is an AI Agent? AI Agent Patterns Augmented LLM Workflow: Prompt chaining Workflow: Rou…

Connecting GPT with MCP Server: MCP Tutorial

In this post, we'll connect GPT / OpenAI API with MCP (Model Context Protocol), and learn how MCP works. Introduction Recap: What is MCP? Connecting GPT to an MCP Server Implementing the MCP Server Implementing the MCP Client Running the M…

How to Create a Noise Texture in Aseprite

This is a quick memo on how to make a background that looks like a noise texture in Aseprite. Introduction How to Create a Noise Texture in Aseprite Conclusion References Introduction In Aseprite, I wanted to create a background that looks…

Blender Python Not Showing print() Output: How to Fix It

This post summarizes how to fix the issue: print() doesn't display any output in Blender Python. Introduction Blender Python: How to See print Output Open the System Console (Windows only) Launch Blender from the Command Line Use Alternati…

How to Export Animations as PNG Sequences in Aseprite

This is a quick note on how to export an animation as a sequence of PNG images—one image per frame—in Aseprite. Introduction How to Export Animation as PNG Sequence Images Tip: Customize the Filename for PNG Sequences Conclusion References…

Ebitengine Tutorial: Boids Flocking in Golang

Learn the basics of the Go-based game engine Ebitengine by implementing a Boids Flocking simulation. Introduction What is Ebitengine? What I built: Boids Flocking Implementing Boids Flocking Minimum setup: Hello, World! Directory structure…

How to Implement Boids Flocking in Godot Engine

A Boids Flocking simulation implemented in Godot Engine. Introduction Update: Made a Game with Boids What is Boids Flocking? Implementation Separation Alignment Cohesion Chasing Food Conclusion References Introduction I implemented Boids F…

How to Import Reference Images in Aseprite

This is a memo on importing reference images into Aseprite. Introduction Importing a Reference Image in Aseprite Conclusion References Introduction I wanted to import a reference image into Aseprite as an underlay layer. Since I couldn't f…

How to Fix "Ctrl + T" Not Working in Blender

This post provides a solution for when the "Ctrl + T" shortcut does not work in Blender's Shader Editor. Introduction The Issue with the "Ctrl + T" Shortcut in Blender Cause Solution Conclusion References Introduction In many Blender tutor…

Check Xcode and SDK Versions via Command

A quick memo on how to check Xcode and SDK versions using the CLI. Introduction Check Xcode and SDK Versions via Command Method Examples Conclusion References Introduction When installing tools on a Mac, there may be dependencies requiring…

Blender: Exporting Videos in MP4

A quick guide on how to export videos in MP4 format using Blender. Introduction Exporting Videos in MP4 in Blender 1. Set the Output Format to "FFmpeg Video" 2. Set the Encoding to "MPEG-4" 3. Adjust the Codec Settings Conclusion Reference…

LLM-Based 3D Modeling in Blender: Trying Out MeshGen/LLaMA-Mesh

Exploring LLaMA-Mesh, an LLM that outputs 3D model data, and its Blender add-on, MeshGen. In addition, we'll also try using ChatGPT for 3D modeling. Introduction Understanding LLaMA-Mesh 3D Modeling with MeshGen Installing MeshGen in Blend…

Using !FindInMap Inside !Sub | CloudFormation

This post summarizes how to use !FindInMap inside !Sub in AWS CloudFormation. Introduction Using !FindInMap Inside !Sub Conclusion References Introduction CloudFormation's !Sub is a function that substitutes values into a string, while !Fi…

Building Aseprite from Source | macOS

Build the pixel art tool "Aseprite" from the source code on Mac. Introduction Building Aseprite from Source Getting the Aseprite Source Code Required Libraries Compilation Appendix: Running Aseprite as an Application Conclusion References …