A couple of papercuts when getting started with gpui , the UI framework powering Zed . These weren’t exactly specific to the framework, but more that gpui is a single crate that’s part of a monorepo representing an entire product, and its develpment is inexorably tied to Zed’s. * The grander takeaway, regardless of project or ecosystem, is that you’ll have a better time if…
Not just for steers I’ve long admired designers. If I’d had a different nudge in high school (specifically, known it was even a field), I could see myself going into industrial design instead of architecture. One part of that admiration is the ability to distill a company, a team, a band, a product, an experience, whatever, down to an essence. How they can hoover up anything and…
This past week, my youngest decided to start crawling. With her out of potted-plant mode and charging at anything that could be a choking hazard, I figure it’s time to implement an agentic loop into this project. What’s an agentic loop? If, like me, you stayed up way too late at the end of November 2022, asking ChatGPT lots and lots of questions, you’re long (for some definition…
NB: This is implemented on the PaperMod theme I was curious about adding privacy-sensitive metrics to my blog. When I was exploring Codename Nootka (which became Kibra), I came across Goatcounter. After emailing back and forth with a couple of dozen folks and talking with a few more, I realized that Kibra didn’t have the legs I wanted. Still, I filed away what I learned, including that…
When I first read these on Herzog’s 80th birthday, something struck me: these rules could be applied not only to his brand of filmmaking—as instrumental and impactful as it was to my worldview—but also to the endeavor of a startup. A film is a commercial endeavor as much as it is an artistic one. Past a certain point, it takes money to realize a vision, and people who have money generally…
This year’s theme: On the lookout for knuckle-busters Knuckle-busters being those jammed up spots that resist any movement, but block all progress. Finally getting them unstuck stings for a moment, but you get to move on. Sometimes, you even figure out a new trick to try on the next stuck thing. Engineering software seniorly at ServiceNow (acquired) Consistently Three complete meals a day,…
There are many kinds of technical velocity debt 1 . There are those decisions you, as an engineer, make in the moment to finish a piece of work. Given more time, energy, and space to think, those are decisions you would have made differently. There’s the kind of debt that’s unused code—a retired feature, ignored test specs, multiple implementations of the same helper method or…
Δv Δv, or delta-v, is what keeps orbital engineers up at night. Simply, delta-v is the change in velocity that is necessary for anything to happen in space. One of the great promises of a momentum-exchange tether is that the system can transfer tremendous amounts of delta-v to a payload without paying exponential costs to do so. 1 However, we can’t evaluate these claims in a vacuum (ha). To…
It was 1999. In my memory, I’m in Mr. Wilson’s chemistry class when I hear about the cause of the crash, but I’m not sure about that. What I am sure about, though, is the feeling: overwhelm at the sheer magnitude of the blunder. $327.6 million spacecraft was lost in seconds. Three years of development. Ten months traveling through space. All because two teams used different…
Methods on built-ins Hashmap .entry — Used for in-place manipulation of the value for a corresponding key, scores.entry(team_id) .or_default — Insert an empty default value if the key is not present, returning a mutable reference, scores.entry(team_id).or_default() .or_insert — Insert a populated default value if the key is not present, also returning a mutable reference,…
A guide Introduction In the oft-quoted punchline, “Specialization is for insects,” we nod our heads in agreement. Heinlein is right, of course, and so is his protagonist, Lazarus Long. But, how do we develop the necessary skills to prevent ourselves from falling into the trap of specialization? We get out there, ask around, and try things, of course. Table of contents Change a diaper…
When I first started using Claude with my Nix-managed development environment, I ran into an interesting issue. The default examples for starting a local MCP (Model Context Protocol) server with npx were giving me cryptic error messages whenever I tried to restart Claude: Error: spawn ENOENT Investigation My first step was to check the Claude logs at ~/Library/Logs/Claude/mcp*.log using tail . I…
A stack-based virtual machine, written in Python, for WebAssembly Purely a learning tool, as I’ve found the best way to learn something is to crack it open, look around inside, and then build a smaller version of the same thing, from its component pieces. Download it from GitHub, here .
Default On chases doing. Default Off chases resting. Default On is thinking at least one step ahead. Default Off is stuck in reactivity. Default On is present in the task. Default Off is taken away from rest by the task. Default On is pushing, striving, and improving. Default Off is trying to always return to a state of rest. Default On is ready to go to the next task, which is always known.…
Jan. 26, Consider Phlebas , Iain M. Banks Feb. 04, Rain Like Hammers , Brandon Graham 🥈 Feb. 23, Solid State , Coulton, Fraction, Monteys Feb. 27, The Scout Mindset: Why Some People See Things Clearly and Others Don’t , Julia Galef 🥈 Mar. 24, The Dip , Seth Godin Apr. 20, Leviathan Wakes (The Expanse, book 1) , James S. A. Corey 🥈 May 4, Postcapitalism: A Guide to Our Future , Paul Mason…
Jan. 15, My Neighbor Totoro Jan. 21, Transporter 2 † Jan. 26, The Eternals Jan. 29, Prisoners of the Ghostland Feb. 18, Ron’s Gone Wrong Feb. 26, 300 † Feb. 27, Pig Mar. 6, The Batman Mar. 6, The King’s Man Mar. 11, Free Guy Mar. 12, Army of Thieves Mar. 18, Spider-Man: No Way Home Apr. 9, Hitman’s Wife’s Bodyguard Apr. 15, Surrogates † Apr. 16, Blade † Apr. 19, Tenet †…
After moving to a new state recently, I’ve started collecting my now thoughts on the go. I limited each category to one tactical task to complete, just one, but found myself overwhelmed by all of the different tasks that still loomed large. Ordered only by happenstance: - Community: Clean up that sidewalk - Vets: GBF monthly donation - Abe: better with people coming over - Oscar: potty…
Learning in public A weekly-ish livestream session where I read a CS paper, annotate it, and take notes — join me on Twitch ! Completed sessions Session 0b101 , “Ironies of Automation” by Lisanne Bainbridge (part A) on 8 May ‘22 Session 0b100 , “The Design and Implementation of a Log-Structured File System” (part B) on 24 Apr ‘22 Session 0b11 (part A),…
Jan 17: Agency , William Gibson 🥈 Jan 30: Fully Automated Luxury Communism , Aaron Bastani 🥈 Jan 31: Absolute Carnage , Cates and Stegman Feb ??: Cosmic Ghost Rider , Cates and Burnett Feb 07: Mister Miracle , King & Gerads 🥇 Feb 23: This is Tai Chi: 50 Essential Questions and Answers , Paul Read 👂 Mar 03: How to Become a Straight-A Student , Cal Newport Mar 27: Mind Gym—An Athlete’s…
Or, Everything That Had to Happen, Is Happening, and Will Happen When You Submit a Form A year-long course from the fine folks who run https://teachyourselfcs.com , but more in-depth, more accountable, and more over Zoom. Eight modules leading up to a capstone project, where we are expected to build something we would not have been able to create previously, whether because of a series of missing…
In the much-vaunted style of literate programming, here’s an emacs-lisp function I wrote recently. The motivation was to convert a shell alias I added this morning, which counts the number of Zettelkasten notes I’ve written that day. (“Jesus, him, too?” Yes, dear reader, I’m afraid that this is one trend I haven’t managed to dodge forever, but my adoption has been cautious and deliberate.) alias…
Eventually working around high-productivity professionals like John Carmack made me realize that if you want to excel, then you have to work hard and focus the whole time. I remember Carmack talking about productivity measurement. While working he would play a CD, and if he was not being productive, he’d pause the CD player. This meant any time someone came into his office to ask him a…
Pittsburgh , Frank Santoro The Churn , James S. A. Corey Bttm Fdrs , Ezra Claytan Daniels & Ben Passmore Laura Dean Keeps Breaking Up With Me , Mariko Tamaki & Rosemary Valero-O’Connell Space Riders , Fabian Rangel Jr. & Alexis Ziritt Zero to One , Peter Thiel with Blake Masters Sabrina , Nick Drnaso Kettlebell Simple & Sinister: Revised and Updated Edition , Pavel Tsatsouline The Alchemist…
Recently, I had occasion to complete some coding exercises . Since there was some exposition involved, I wanted to take advantage of some of the affordances for literate programming provided by org-mode in Emacs. I won’t get too much into the definition and benefits of literate programming here. My intent is to create a reference of some of my favorite org-mode commands that, in practice, I…
For the last six months or so, I’ve been working on building out the infrastructure for our machine-learning service at work. One thing that had me scratching my head last week was trying to compare two fitted pipelines, trained on what could be the same data. To ensure that I wasn’t re-uploading a duplicate fitted pipeline, I wanted to compare the MD5 hashes of the fitted pipelines.…
The Last Lecture , Randy Pausch and Jeffrey Zaslow Shambhala: The Sacred Path of the Warrior , Chögyam Trungpa Garlandia , Lorenzo Mattotti and Jerry Kramsky Bingo Love , Tee Franklin and Joy San and Jenn St-Onge Play Bigger: How Pirates, Dreamers, and Innovators Create and Dominate Markets , Al Ramadan and Dave Peterson and Christopher Lochhead and Kevin Maney Winning with Data: Transform Your…
After reading about the Mozilla Foundation and Coil’s announcement , I decided I wanted to try an experiment and add a Coil micropayment meta tag to my blog. I couldn’t find an obvious way to do this with Hugo or much information about it in their docs. I first tried just adding the key-value pair to my config.toml . # config.toml monetization =…
They say that code should read like well-written prose, and that code is written to be read by people—it’s only incidental that machines do something with whatever we create. To those ends, prefixing the names of variables of the boolean type with “is” or “has” or another interrogative word has the effect of leading the reader to expect an answer—“yes” or…
A couple years ago my friend Trevor and I went to look at the Apple garage. As we stood there, he said that as a kid growing up in Saskatchewan he’d been amazed at the dedication Jobs and Wozniak must have had to work in a garage. “Those guys must have been freezing!” That’s one of California’s hidden advantages: the mild climate means there’s lots of marginal…
this post is in reference to Slack/Hipchat/Hangouts Direct Messages, not Dungeon Masters An all-too-common approach to communication I’ve seen is DM’s for any number of subjects which should be public: how to set up a server, a discussion about an architectural proposal, how to address the content in an open PR, and so on. At best, they limit information sharing among the team members;…
Or, the differences between append , cons , & list from sicp 2.26 : Suppose we define x and y to be two lists: ( define x (list 1 2 3 )) ( define y (list 4 5 6 )) What’s the output of the following? (append x y) ;; (1 2 3 (4 5 6)) ;; but actually ;; (1 2 3 4 5 6) (cons x y) ;; ((1 2 3) (4 5 6)) ;; but actually ;; ((1 2 3) 4 5 6) (list x y) ;; (1 2 3 4 5 6) ;; but actually ;; ((1 2 3) (4 5…
This blog is now featuring has had RSS all along. Did you know this? I didn’t know this. But, I know now and now you know, too. If you’re so inclined, you may subscribe for intermittent updates: https://newschematic.org/blog/index.xml
As the next step in the exploration of the ideas behind the Dada Photo Booth , Adam and I reworked the project for showing at the Museum of Human Achievement during the 2018 East Austin Studio Tour . Responding to a call for artists working with the concepts around taking selfies, we intended to directly transplant our piece into one of about 30 stations in a selfie gauntlet. Personally, I was…
⚠️ This project has been superceded by my participation in the Bradfield Computer Science Intensive ⚠️ Following the curriculum suggested at Teach Yourself CS , I’ve started the necessary work of filling in the gaps of my knowledge. This project page serves as a table of contents and repository of my work completed and subjects studied. Programming Text: Structure and Interpretation of…
tl;dr Download the Symbola font and install it; using, for instance, the included Font Book application on macOS. Trash Matplotlib’s font cache file (probably located at ~/.matplotlib/fontList.py3k.cache , again for macOS). Start your Jupyter Notebook. The font should be available and if it is, it’ll be used to render the final graph. If not, the default font will be used and all of…
install istanbul & codeclimate-test-reporter in your dev dependencies: npm install --save-dev istanbul codeclimate-test-reporter add to circle.yml: general: artifacts: - 'coverage' test: post: - CODECLIMATE_REPO_TOKEN=$CODECLIMATE_REPO_TOKEN ./node_modules/.bin/codeclimate-test-reporter < coverage/lcov.info In Code Climate, get the test reporter token from…
Background Here at OwnLocal, we’ve built lots of Rails apps and added lots of Ruby code to those apps. As our products and tools have grown organically over the years, our systems have become more opaque and, in some cases, more brittle. In the last quarter of 2016, my team was tasked with automating away a large portion of our bread and butter: writing parsers to extract, transform, and…
When writing tests for a Rake task at work, I came across invoke and execute as two different ways for calling a specific task. Most of the content I found online about the difference was fairly superficial: invoke can only get called once, execute can be called as many times as one wants. There, are you happy? Move on. Never being generally happy, I did not move on. I wanted to know how these…
project page | slides Review of what I learned programming with Go for an art exhibition. Talk given at OwnLocal Engineering Lunch, November 21, 2016. Use the Go present tool to view the slides locally after getting them from the above slides link.
An Inscrutable Representation of Yourself tumblr | source code, v1 | source code, Electron client and server developer, artistic collaborator Designed and developed as a final project for dadageek ’s course on creating generative art using Processing. Presented at the Fall 2016 Dadageek Student Showcase, which was part of EAST . Tech Stack Go and Go OpenCV binding for image capture and…
With the recent announcement that Vine will be getting shuttered, I’m reminded of the uncertainty that all free web-based services face. As such, I’ve decided to move my blog off of Tumblr. While this decision is partly about wanting to get ahead of any potential disruptions in service, its roots are in mainitaining control and exercising autonomy. For this site, I decided to use Hugo,…
I’m an engineer who enjoys solving problems. Whether that challenge is a bug in a server-side module, or in figuring out a conversational interface, I relish opportunities to push myself while writing elegant, maintainable code. Lately, I’ve been honing my JavaScript chops across the stack, applying concepts of functional programming to my work. I use the soft skills I developed…
brew install go worked well, as expected. However, at the end of the installation, the notes suggest I add GOROOT to my path: You may wish to add the GOROOT-based install location to your PATH: export PATH=$PATH:/usr/local/opt/go/libexec/bin Buuuuut, it didn’t work. After trying out some different iterations, I was reminded when ls -ing through the surrounding directories that…
In 1996 Keith Shafer and several others proposed a solution to the problem of broken URLs. The link to this solution is now broken. Roy Fielding posted an implementation suggestion in July of 1995. The link is now broken. src