This was updated today, by removing old links. But that's not a good way to fix linkrot; it's better to keep the broken links, so people can look them up on the wayback machine if they wish.
> - The process to "promote" fragments of a notebook into being reusable functions seemed very high-friction: basically you're rewriting it as a normal Python package and then adding that to Jupyter's environment.
> - There aren't good boundaries between Jupyter's own Python environment, and that of your notebooks— if you have a dependency which conflicts with one of Jupyter's dependencies, then good luck.
The best Jupyter UX for me now is VSCode. Just put an .ipynb file in your workspace and you get the notebook interface inside VSCode. Put `%load_ext autoreload` and `%autoreload 2` in the first cell, and use the same python environment you're using in your workspace for the Jupyter kernel. Then you can import libraries from your project, use them, and it's very easy to promote code from the notebook into a library. You can just cut a function from the notebook, paste it into a library, add an import, and rerun the subsequent cells to verify it still works as expected.
You could do instant flood-fill on a slow PC in the early 90s. There is no need to precompute this. The possible issues are:
1. You're using a slow algorithm. This is almost certainly the case, looking at how slowly it run and at the order in which pixels get painted. The Wikipedia page on flood fill is enough to find a good algorithm.
2. Possibly, the overhead of individual canvas operations is high, so setting each pixel at once is slow. If this is the case, it would be partially ameliorated by using a span-based algorithm, but you could also run the algorithm on an offscreen byte array and then blit the result to canvas.
I would bet money that a 90s state-of-the-art algorithm running in JavaScript on an offscreen array will be perceived as instantaneous on a modern computer.
Note that you loose 1-2 orders of magnitude just by the screen resolution (in the early nineties we used 640x480, sometimes even 320x200 vs 4K nowadays). Another order of magnitude is lost by using a more high level programming language, which sure you could probably optimize down to factor 2-3. Plus sublinear scaling of stuff like memory latency since the 90s. All in all I agree we should be able to do better, but it is by no means trivial.
If you are right that would be amazing! The demo code is open source, please send a PR with such a flood fill implemented.
The requirement is that when the user clicks on a 2k x 2k image it takes 50ms or less, running on a cheap Android tablet. If a better algorithm, perhaps implemented in wasm, can achieve this, I’d love to discard all my complex code and just use it
I love that everybody commenting here here emphatically insists that you must be doing it wrong, but real-world solutions are nowhere to be found. I admire your commitment to keeping a positive tone, but you'd be justified in feeling some frustration.
I do hope a PR shows up in the next few days so the internet can stop having this debate and move on with a good library.
There are fast segment based fill algorithms from the seventies or very early eighties in the literature and reprinted in the first volume of Graphics Gems. They work very well and do not require the call stack or amount of computation of simpler methods.
WebGPU availability factoid is actually just statistical error. Noscript Georg, who lives in a cave and browses over 10 sites a day using Emacs, is not an outlier and should have been counted.
Is the waitlist FIFO or does it prioritize? For example, suppose a Googler signed up for the waitlist, and since they already have ~all Googlers on it, they won't get access before 2026. Could they get access faster by quitting their job, deleting their Waymo account, then re-enrolling as unemployed?
It may not cast a shadow directly on it, but the bridge still destroyed the mansion's utility.
The alternative would have been to run the new east span south of the old one, instead of north. Apparently San Francisco preferred that option, but Oakland wanted the north alignment. I'm not sure why, all I've seen mentioned so far is that they chose that particular alignment to ensure drivers would get a good view of San Francisco while driving west...
> I'd say the common thread is that they expect you, the tenant, to not understand your rights and the laws that enforce those rights.
I think there's also a cost-benefit evaluation when it comes to deciding where to make use of those laws. I've heard that there are tenant screening services that will report whether you have previously sued a landlord. Is it even worth it to sue if it's going to make it more difficult to find a better place later?
It wasn't a letter of the alphabet any more than the dollar sign, the pound sign, or punctuation were letters of the alphabet. It wasn't used in words. All that happened is that someone decided to put it at the end of the alphabet song to teach it to children, and that's where it got the name.
> It wasn't a letter of the alphabet any more than the dollar sign, the pound sign, or punctuation were letters of the alphabet.
I'm not aware of historic English alphabets that include the dollar or pound sign or any sort of punctuation. On the other hand there is a lot of evidence of & being part of the alphabet. Wikipedia has or links to plenty of cases:
Old Saxon alphabet: despite being on an alphabet page, it’s very clearly separated from the letters.
I’m not at all convinced that it was ever what you might call a letter of the alphabet. Although it seems to not have been rare to group it with the letters in some way, I have received the impression it wasn’t particularly common, and that it wasn’t how people generally thought of it. Nowadays we would draw a clear distinction between letters, numbers and symbols (maybe we have more symbols? though certainly fewer ligatures/abbreviations like Ƿᵉ), and call the alphabet just the letters, but I get the vibe that maybe “alphabet” wasn’t so strictly just the letters. But I handwave liberally and provide no sources in this mostly-uneducated suspicion of mine.
I remember getting a rubber stamp set as a kid here in Australia, probably around time I started school in 1968. They definitely had an ampersand, dollar and cents stamp and even "No." (with the superscript o)