Joshleeb

Recent content on Joshleeb
https://joshleeb.com/ (RSS)
visit blog
Status Update: October 2024
24 Oct 2024 | original ↗

G’day! Exploration towards building Ica (a GUI code editor) has continued in October. Having figured out a rendering strategy at the end of last month, the next step has been to design a framework/engine that sits atop the rendering layer and deals in terms of element trees, event listeners, and effect observers. At this level we don’t have to...

Status Update: September 2024
28 Sept 2024 | original ↗

G’day! This month I wanted to start off working on something short, sweet and fun; something more akin to a typical weekend project that can be “completed” in a reasonable amount of time. I found inspiration from Devine’s personal wiki, XXIIVV, on a page that contained a grid-based clock with lines scanning across the screen as time progressed....

Time as a Grid
26 Sept 2024 | original ↗

Earlier this month I was exploring Devine’s public wiki, XXIIVV, and I landed on the entry about time. This page contains a mesmerizing clock displaying time as a grid of lines scanning across the screen. Figure 1. Screenshot of Devine's Arvelie-Neralie grid clock. I was unfamiliar with the format of this clock, shown in figure 1 as “18T03...

Gridclock
26 Sept 2024 | original ↗

Post, Repository Clock representing time as a grid of lines sweeping across the screen. Inspired by Devine’s Arvelie-Neralie clock.

Status Update: August 2024
31 Aug 2024 | original ↗

G’day! Last month ended with completing the local-export subsystem in Pinto which was the last piece before I could use Pinto for my personal bookmarks. And that’s exactly what I’ve been doing, using Pinto almost everyday this month. I’ve discovered a few small bugs which have been fixed, and some areas where the UI can be improved. But for the...

Status Update: July 2024
25 Jul 2024 | original ↗

G’day! This month I’ve been continuing the momentum with Pinto. The ideas developed from last month on tagging and the design of the Scoped Tagging mechanism (see Scoped Tagging of Bookmarks) have materialized into an implementation. We have scopes, we have tags, and we have pages and a UI to display them both. Figure 1. Screenshot of a page of...

Status Update: June 2024
28 Jun 2024 | original ↗

G’day! Personal project work has continued this month on Pinto. If you didn’t see last month’s status update, Pinto is a bookmarking service and RSS feed reader with a few neat features planned. Early in the month I finished off listing bookmarks. From the list you can mark a bookmark as starred and toggle it as read/unread, delete the bookmark,...

Scoped Tagging of Bookmarks
16 Jun 2024 | original ↗

A few months ago I wrote a post, On Organizing Bookmarks, that proposed an extension to simple bookmark tagging called Hierarchical Namespaced Tagging (HNT). Simple Tagging is the most common and familiar form of tagging seen on sites like Pinboard, Lobsters, and Youtube; in tools like Scrivener and Zotero; in browser-based bookmark managers; and...

Status Update: May 2024
26 May 2024 | original ↗

G’day! For personal projects this month, the focus has been on Pinto and starting fresh with a new codebase. Pinto is a bookmarking service and RSS feed reader inspired by Pinboard and Miniflux, but with a few neat features planned such as bookmark linking. It really deserves it’s own post discussing the ideas and motivations, but at a high level...

Status Update: April 2024
29 Apr 2024 | original ↗

G’day! This month has been fairly light on personal project work. The reason for this… We have relocated to London! There’s been a lot to pack up in Sydney, and lots to get setup in London but we are settling in and move into our new place next month. In the few spare moments this month I’ve started down a rabbit whole into the domain of Ecology...

Status Update: March 2024
27 Mar 2024 | original ↗

G’day! This month the focus has continued on building concept pieces for a code editor which now has a name. Ica. As in short for Icarus… the last guy that tried to build an editor and got burnt along the way. Following on from last month, I added a new concept that takes the learnings from the CPU-rendered glyph atlas and renders on the GPU...

Status Update: February 2024
26 Feb 2024 | original ↗

G’day! It’s been a month of travel and exploration, beyond just tech. I was in London for 2 weeks spending some time exploring the city and scoping out places we might live when we move in April. In personal projects, I continued work on Pinto for the first half of the month. I haven’t written much about it as I want to get it to a state where I...

On Linking Bookmarks
25 Oct 2023 | original ↗

In the last post, On Organizing Bookmarks, I wrote about an idea to improve tags for organizing bookmarks on social bookmarking sites such as Pinboard. To continue this theme, I want to explore bookmark linking as a way to extend bookmarking tools to work better with the distributed nature of the web, specifically with how posts are shared and...

On Organizing Bookmarks
11 Oct 2023 | original ↗

Pinboard is a fantastic bookmarking site I’ve been using on-and-off to store my bookmarks for a few years now. These aren’t the kind of bookmarks one might store in their browser, that is links to frequently accessed sites. They are links to interesting articles and blogposts I’ve read or want to read. They form a reading list, and a reading log,...

A Look at RapidCDC and QuickCDC
6 Aug 2023 | original ↗

This is the fourth and final post for the CDC series. If you’re just joining us, and would like to know more, jump on back to the first post which provides an Intro to Content-Defined-Chunking. In this post, we’ll be concluding our exploration of CDC strategies by looking at two recently developed algorithms that bring with them some interesting...

Improving on Gear Hashing with FastCDC
4 Jul 2023 | original ↗

In the last post we took a look at Gear Hashing for Content-Defined Chunking (CDC), and outlined some problems we noticed when analyzing the distribution of generated chunks, namely the lack of uniformity in the chunk sizes, and that a large portion of chunks were much smaller than our desired chunk size. In this post, we’ll go through the...

Gear Hashing for Content-Defined Chunking
9 Mar 2023 | original ↗

In this post we’ll take a detailed look at Gear Hashing for Content-Defined Chunking (CDC). If you haven’t come across the term “CDC”, then take a look at the first post in this series that provides an introduction to this topic. As a quick refresher, the core problem we need to solve for CDC is determining chunk boundaries based on a sequence of...

Intro to Content-Defined Chunking
4 Mar 2023 | original ↗

This post is the first in a series on Content-Defined Chunking (CDC) where we’ll explore Gear-based chunking techniques. After this intro, we’ll look at implementing a chunking algorithm using Gear Hashing, before exploring significant improvements from the FastCDC, and then the RapidCDC and QuickCDC papers. But before all that… What is...

Surprising Ctags Behaviour
10 Jan 2021 | original ↗

Today I came across some interesting behaviour implemented by ctags (specifically Universal Ctags) with the way some tag entries are handled. At first I was surprised. Then thinking about a bit more I can understand why. But still, I feel there must be a better way. Let’s take a look at some Rust code. struct Foo; impl Debug for Foo { fn...

Integration Testing in Rust
25 May 2020 | original ↗

We all know testing is important. And, I hope, it might even be familiar. You’re coding away and catch yourself thinking “I should probably test this”. And before you know it you’ve mashed on your keyboard and there appears #[cfg(test)] mod tests { ... } These are unit tests which are super easy to setup. No added dependencies, no added tooling....

Rust Traits and Trait Objects
12 Jun 2018 | original ↗

I’ve been really confused lately about Rust’s trait objects. Specifically when it comes to questions about the difference between &Trait, Box, impl Trait, and dyn Trait. For a quick recap on traits you can do no better than to look at the new (2nd edn) of the Rust Book, and Rust by Example: Rust Book Traits: Defining Shared Behavior Rust Book...

Snowhash in Rust with WASM
22 May 2018 | original ↗

A little while ago I came across this Snowflake generator. It’s a project by Raph Levein that takes a hash string and uses it to procedurally generate a unique snowflake. He explains that the original motivation was as a cryptographically secure visual hash, so that people would reliably be able to tell by visual inspection whether two hashes...

Snowhash
22 May 2018 | original ↗

Post Github (lib) Github (wasm) Change the hash to see the snowflake update for each change. If you get tired of manually changing the hash, clicking on the snowflake (the canvas) will generate a snowflake from a random hash. Hash:

Procedural Macros in Rust
4 May 2018 | original ↗

Procedural macros are a really powerful language feature in Rust and something I haven’t seen in many other languages. There are a heap of tutorials out there for procedural macros, including in The Rust Reference, and the first edition of the Rust Book. One of the more entertaining (and useful) posts is by Zach Mitchell where you get to “learn...

Thinking About an ECS in Rust
18 Apr 2018 | original ↗

A few weeks ago I started looking into Game Development and exploring building games in Rust. Specifically I’ve been thinking about ECS game engines. These are just some initial thoughts and ideas. I’m not nearly at a stage to start building generic game engines for people to actually make games with. This is more of a project to explore game...

Mental State of Flow
12 Nov 2017 | original ↗

For the past month, I’ve started thinking about using technology and what we know about the human brain to influence our mental states. As part of that I’ve been working on understanding more about the state of flow, sometimes called ecstatis, “runner’s high” or being “in the zone.” What Is Flow Flow is a state of mind that allows you to operate...

↑ these items are from RSS. Visit the blog itself at https://joshleeb.com/ to find other articles and to appreciate the author's digital home.