Rewriting my grid parts page #

If you've followed my work you know I'm a fan of grids. I had a page I wrote in 2006 that I decided to update. Those were the days before html5, and even before SVG was reliable in browsers, so I had made images using some Ruby code to generate SVG, and then ImageMagick to turn SVG into PNG. If I'm going to update this page, what might I want? I made a list of possibilities:

  1. Change of focus. The old page spends a lot of time talking about the properties of grids in the abstract, and how different grid types relate to each other. When I visit the page for my own needs, I don't care about that. What I do want to see is the formulas. I use this page as a reference. I want to change it to make the formulas the main focus of the page.
  2. Interactivity. I could make all the diagrams interactive. That's what people expect from me, after all!
  3. High resolution diagrams. We're not living with 800⨉600 desktop monitors anymore. With "HiDPI" screens including 4K, I wanted to use SVG everywhere so that the diagrams are sharp.
  4. Put coordinates into the diagrams instead of only off on the side.
  5. Make the relationship diagrams for all three grid types. On the original page I have diagrams only for squares.
  6. Animations showing how square grids relate to triangle and hexagon grids.
  7. Animation showing how square grids relate to isometric grids (which are really isometric views of a square grid).
  8. More algorithms including distances, to screen coordinates, from screen coordinates.
  9. Sample code generation, so that you could select a programming language and see sample code in your favorite language.

Labels:

Redesigning my circle diagrams, part 2 #

In the previous post I described how I redesigned some of the diagrams on my circle drawing page. I found that I had been reusing code in ways that made the diagrams worse. I switched to more copy-paste programming to make the diagrams better.

Old outline diagram

Labels:

Redesigning my circle diagrams, part 1 #

Linus Arver's post about circle drawing reminded me that I wanted to add circle outlines to my circle fill page. My page is focused on circle fill rather than outline, but one of the fill algorithms can be adapted to generate outlines instead. I added a section on circle outlines, reusing the code from the circle fill diagrams. Unfortunately … I didn't like the result.

Diagram illustrating the circle outline algorithm

Labels:

Learning by writing #

I've been learning about the mathematical modeling of predator-prey relationships. The idea is that as the population of a prey animal (like mice) increases, the population of a predator animal (like foxes) will increase because they have lots of food. But then the mice will be eaten so their population will decrease, and then the population of foxes will decrease, and the cycle will start over again.

This blog post isn't about predator-prey though. It's a peek at how I learn things with note taking (see my previous blog post) and small projects. You might have seen some of my many lightweight explanation pages (examples: noise, hexagons on a sphere, organic cave maps) but they often don't start out that way.

My personal information workflow, part 2 #

In part one I described the kinds of things I asked myself when deciding on how to manage my personal information — bookmarks, references, notes, tasks, contacts, etc. The answer is: I don't have a single consistent system that I use for everything. I use many incompatible systems depending on where I am and what my goal is.

My personal information workflow, part 1 #

Several people have asked me how I organize my projects. There are various systems out there like David Allen's Getting Things Done, Taiichi Ohno's Kanban boards (e.g. Trello), Ryder Carroll's Bullet journal, Niklas Luhmann's zettlekasten (e.g. Roam Research), Dave Seah's Emergent Task Planner, and many more.

There's a danger in spending too much time organizing my projects instead of working on my projects. Questions I asked myself:

Hex diagram labels #

A few weeks ago a reader suggested the labels on my hex diagrams for the "cube" coordinate system could be improved. I took a look at what I had:

Old labels on the pointy hex grid Old labels on the flat hex grid
Old labels are inconsistent across grid rotations

Labels: ,