PR associated with this work: @mastodon, Help the test harness run more speedily #29992
Public version of this file you're reading right now
lets audit/profile + speedrun?
PR associated with this work: @mastodon, Help the test harness run more speedily #29992
Public version of this file you're reading right now
lets audit/profile + speedrun?
Utter this to anyone I've ever worked with:
Josh sometimes writes a lot/too much even. True or false?
They'll laugh. This is a normal amount of written output for my style. Anyway, here's my 'dev notes' for openstreetmap-website/pull/4708: Reduce test run time
Thesis: Housing can be affordable to the purchaser and profitable to the developer. For example, a finished studio apartment could be available at $700/mo, or a three-bed at $1300/mo, and the developer who builds it will consider the ROI on the project/investment to be exceptional.
The need to do something tends to trump the need to understand what needs to be done. And without data, anyone who does anything is free to claim success.
Housing, broadly, is often considered a political issue, to be fixed by politicians.
I'll be quoating broadly from a recent seminal book by Urban Economist Alain Bertaud, specifically from Chapter 6: Affordability (p 219).
I often write detailed walk-throughs of difficult learning projects I take on.
This document serves as the same, a bit of an active scratch pad, and a way to quickly ask detailed questions of my team, and perhaps provide detailed answers for my team.
currently trying: USB-C->DisplayPort cord with SwitchResX to "force" the display up to a reasonable level
My home office setup has suffered some problems of late that are driving me insane.
The most annoying is my wired mouse. I use a wired Redragon Mammoth hooked up to my USB-C hub, and it started giving me problems when dragging anything. Like... a file, a screenshot, a window, it would rapidly (dozens of times a second) "drop" what I was dragging and then pick it up again.
This had extremely unpredictable effects, and was highly disruptive to my workflow.
I don't think my mouse is failing (my bluetooth mouse works fine, and for a variety of reasons I think the problem is my monitor is running at 30hz, not 60. more on that later.)
Having a good process is how you go about doing anything that takes a long time and is hard. A good process can be a faithful tool to help you learn dozens of things, now, and five years from now. It's flexible and it's powerful.
One of the biggest pieces of "having a good process" is "taking plentiful notes, easily and quickly"
I won't try to convince you. Here's Arique, currently in Mod 1, on how she's made use of this general process:
class Object | |
def exceptional? | |
false | |
end | |
end | |
Course = Struct.new(:name, :duration) do | |
def duration=(new_duration) | |
self[:duration] = Duration(new_duration) | |
end |
I needed a URL validator - it needed to check that URL's had HTTP or HTTPS at the beginning. I initially wrote a "before save" action, but didn't like it cluttering up my model. I found a reference to basically "monkey patching" Rail's default Validator class, so that's what I did!
# concerns/url_validator.rb
require 'uri'
class UrlValidator < ActiveModel::Validator
def validate(record)
if record.url?