Posts

Using Kanban Boards to Stay Organized and to Stay Motivated

I often work with Trello or Notion as Kanban boards. I maintain tasks for everything that I do. This helps me keep organized when I'm working on a large number of tasks, or especially if I have ideas for tasks that I am not actively working on. It creates a clear, constant document of the state of the tasks I'm working on. And more than anything, it shows to me what I've accomplished and lives on as a constant motivator for me. Why Kanban Boards Matter for You and Your Team One best practice that anyone working on a large project should adopt is to have at least one Kanban board task they're working on at any given time. Kanban boards are a visual way to track progress on tasks, enabling you to see the status of each task and its associated details. By consistently updating your tasks on a Kanban board, you'll reap several benefits: Greater personal efficiency : As you wrap up your day or put a project on hold, having detailed information on your Kanban board task h...

Extracting Dependency Trees to Supply ChatGPT with Context

Extracting Dependency Trees to Supply ChatGPT with Context I recently created a Python script that helps me when I'm coding with ChatGPT. This script scans a given class file and its folder, and then outputs a text file containing all the relevant code from that folder based on the dependencies found in the class file. This is especially useful when working with ChatGPT, as it allows the AI to understand local references in your code. The script performs the following steps: Accepts a file and a folder as input. Searches the folder for all files with the same extension as the input file. Analyzes the text of the input file to find any referenced filenames. Recursively searches for dependencies in the found files, creating a dependency tree. Stops searching when the dependency tree remains unchanged between iterations. Outputs the dependency chain, sorted by proximity to the original file and then by name. ...

Generating an Atlas of Wooden Letters from a Font File using ChatGPT and Stable Diffusion

Image
Creating an Atlas of Wooden Tile Images from a TTF with ChatGPT      Last Saturday, I created an Atlas of wooden tile images from just a TTF font file using ChatGPT and batch processing with Stable Diffusion's ControlNet. The entire process took me only two hours, thanks to ChatGPT's assistance. Here's a breakdown of what I did: First, ChatGPT helped me write a Python script to extract images of capital letters from a TTF file. It created fairly straightforward 512x512 tile images. I did need to modify their vertical offset by hand so they would be optimally positioned for Stable Diffusion img2img. I had to ask for it to ask the user to specify details about what it would be generating. By default, you specify these things inside the script, and this can be a bit tedious. Fortunately, ChatGPT is great at adding simple UIs to Python scripts. Then, I batch generated wooden tiles from those images using Stable Diffusion batch img...

The Blank Debugger Effect

When you're solving a lot of problems at once, and you're about to finish for the day, don't walk away after you finally fixed that one issue that's been driving you crazy. Instead, find the next issue, spend about a minute solving it, and then walk away. That way, you don't have to think about the bug you just fixed tomorrow and your workspace is already set up for you. It also gives a kind of continuous feeling to the whole thing, instead of "Whew! Just finished that one. Hope there aren't any more." only to inevitably to disappointed by yet more problems. The additional effort it takes to do this is zero, since it's just changing when a task is done. The benefit is largest when there are multiple days between when you can work on the tasks.

New Month's Resolution

 Introduction Adding some amount of change and chaos to your life can be a good thing, especially if it's done in a controlled fashion. I've been living as a digital nomad traveling around Washington State for the past year, and more recently Oregon and California. I live in a house for a little over a month at a time and then move on to the next town. Every house is different. Every town is different. The life I lead changes each time I move. Over time, I started to get into this rhythm. In the second house I stayed in, I decided this: each place I stay, I will have a new focus. Living in each one of the small towns in Washington state has been a goal of mine for some time. I don't think everyone should do this -- but everyone should do something like this. It tells you a lot about a region, and makes you feel comfortable in every town you visit. It tells you what you want in a home, in a town, in the people that you meet every day, in a hundred little things. It's har...

A Head Full of Goals

Most entrepreneurs base their choices around a vision of their future life. Since that vision is so critical to what an entrepreneur wants and how they will live, it's important to break down that vision and understand what it is made out of. To do this, we'll break down a vision into three concepts: type of goal, accessibility and flexibility. Type of Goal I think visions break down into a few kinds: visions of who you want to be, visions of what you want to have and visions of what you want to do.  Who you want to be is fundamentally about identity. If you want six pack abs, you see yourself as someone who cares about health, physical fitness or appearance. If you want to be a CEO, you care about status, financial security or freedom. Visions of identity case usually be broken down to a high level of detail -- and those details tend to be built out of what you want to have or do. After all, if you want to be a CEO, you probably don't want to get picked as a CEO by a dying...

Importance over Immediacy

When should I complete this task? This is a question you'll need to answer again and again. Usually, the answer takes one of four forms: early, late, paradoxical and time invariant. The last two being far more interesting and the primary discussion of this entry. Early First, we go through early tasks. Early tasks are ones with reasons to complete them immediately. Usually either output ambiguity or a benefit that occurs continuously after the task is completed. For example, if you buy a phone case sooner, you can avoid risking dropping your phone on the pavement and having to get it fixed. If you have a project with coworkers that depend on you, it benefits them, and you, for you to finish sooner. If you need to apply for a passport before a vacation, it's usually wise to do so months in advance because the patent office is often ambiguous with how long the process will take. Late Second, late tasks. These are usually that involve some kind of input ambiguity or can harm you i...