HNHacker News
TopNewBestAskShowJobs

wcrossbow

355 karma · joined March 5, 2018

submissionscomments
wcrossbow··on A Note on Essential Complexity
It is kind of obvious but I think it is worth mentioning out loud regarding whether how to classify something as essential or accidental complexity is that where it ends up falling is only easy to tell in hindsight. Recently I finally realized, after working for almost 3 years in a problem, that it could all be framed as graph problem. This simple change of frame dissolved hundreds of lines of code into `reduce(find_shortest_path(graph, start, end), some_op)` style single lines. Now I understood that what I was previously doing was manually crafting paths through this informally defined graph across nodes I knew had connections. The ratio of comments to code was about 5:1 to make sense of it. Before that I believed all of it was true essential complexity but looking through the right glasses it really wasn't. The lessons for me (some of which I seem to have to constantly relearn) where:

1. It may only look complex because you are not thinking about it in the right way. 2. The right data structure/abstraction has the power to turn the worst spaghetti into a shining beacon of simplicity.

An important corollary is that if it looks complicated is probably because you don't understand it yet. Tautological yes, true, also :D

Not trusting myself on what is essential complexity and insisting on hitting my head against the wall until I found a solution has served me well many times in my life and career.

wcrossbow··on Show HN: I made a new sensor out of 3D printer filament for my PhD
Maybe with polarization maintaining fiber? If at the gap they are aligned a teist will make them more perpendicular reducing mode coupling.

Disclaimer: I know nothing about this field but have spent a lot of time in a dark lab surrounded by various types of optical fiber.

wcrossbow··on Mario meets Pareto
I was refering here to playing competitively, that is, playing with the only goal of winning. Of course, it is perfectly acceptable to play for style or to manage a podium with the worst configuration or anything you fancy [].

However, if your one and only goal is winning I suspect that the high dimensional vector space will end up not looking so high dimensional once you account for the correlations between the different features you use. This is already clear from the very strong correlation between speed and accelaration.

[]I myself have played MK64 a lot and sometimes the goal was simply to see the world burn, standing on a corner with a shell waiting for the what would've been the winner of the race. Fond memories.

wcrossbow··on Mario meets Pareto
Nice article! The resulting Pareto front really highlights how hard game design is. You can get millions of possible combinations but the reality is that only a handful of them will ever happen in a competitive environment.
wcrossbow··on The Kalman Filter
A fantastic interactive introduction to Kalman filters can be found on the following repo:

https://github.com/rlabbe/Kalman-and-Bayesian-Filters-in-Pyt...

It explains them from first principles and provides the intuitive rationale for them but doesn't shy away from the math when it feels the student should be ready for it.

wcrossbow··on The Pile is a 825 GiB diverse, open-source language modelling data set (2020)
Absolutely. This is very much like the answer you would get from a politician. It's proof by word count.

Q: Why do you think X is Y? A: < 10 minute exposition that doesn't address the question > ... therefore Y.

wcrossbow··on Visual overview of a custom malloc() implementation
I don't see `r`s. Firefox/Mac
wcrossbow··on The Apple Vision Pro
Maybe for the ladies or the men that pee sitting down, if they manage to make their way to the toilet without rolling down a flight of stairs. However, if I try to pee with one of this on my wife will not appreciate it.
wcrossbow··on Why Emacs Keys Are Painful
One of the first things most people configure with Vim is a more convenient way to escape (ctrl+[ not withstanding) into normal mode. I don't know enough about Emacs culture, but given how prevalent Ctrl/Meta are I would expect something similar to the point that those not doing it are the exception.
wcrossbow··on Using analytics on my website
Upon a bit of introspection I found that for me, such things were just ways of stroking my ego. I just find it liberating to not really care or give much thought about what my audience cares about or who they are. I write first and foremost for myself, second to help others and third to have something to show to prospective employers.

What those metrics mean to oneself is different for everybody. Also, being a vanity metric and being useful are not mutually exclusive either.

wcrossbow··on Using analytics on my website
> But anything smaller than that and analytics are mostly vanity metrics

I removed any analytics from my blog because I'm already obsessed enough with silly star counts. It manages to completely suck away all the joy; ignorance is bliss here. I found that the rare email or comment from some random person saying that they found something useful is much more fulfilling and at the same time less invasive of my brain activity.

wcrossbow··on Not a real engineer (2019)
There is no best musician. Not just because there are a multitude of different skills that go into it, but also because nobody agrees on what weight to give to each of them or even what they are. This makes it impossible to make an absolute ranking. At best you would get a Pareto front made up of the greatest.
wcrossbow··on I paid for Sublime Text
50k in Spain put you well beyond the median salary[0]

[0]https://www.20minutos.es/noticia/5139571/0/salario-medio-esp...

wcrossbow··on A CD Spectrometer (2006)
I work for Kuva Space

P.S. Doxxing me is trivial based on what is already available in this forum

wcrossbow··on A CD Spectrometer (2006)
At my current company we build satellites with imaging spectrometers as payload and wanted to propose building a bunch of this on our upcoming team day. I was hoping for the non-technical team to get a better feeling of what is that we are trying to sell.
wcrossbow··on Bézier Curves and the logic behind them
Another incredibly good and interactive exposition on Beziers

https://ciechanow.ski/curves-and-surfaces/

His blogs always hit the top of the front page for good reasons.

wcrossbow··on Homographies: Looking through a pinhole
I wrote this because I needed to calculate transformations between two cameras’ point of view and I just couldn’t find something accesible and straightforward. Hopefully somebody finds it useful.
wcrossbow··on Photogrammetry on commercial flights (2021)
He quotes that you need a lot of points and a fancy transformation to correct images while taking into consideration the differences in elevation within the scene. While it is true that having more points is important, the better way is to actually also consider the elevation of the identified points using a digital elevation model (DEM). That increases the accuracy of the transformation a lot and reduces the number of points needed. The idea is that you build a transformation from R^3 -> R^2 instead of just R^2 -> R^2, usually a rational polynomial function.

If anybody is interested the word to search for is orthorectification.

Shameless plug. I recently published a post on my blog on how to calculate a projective transformation for an image if you know a few parameters of your camera (focal length and sensor size) and its position and orientation. My use case is satellite imagery so this is always available http://maxwellrules.com/math/looking_through_a_pinhole.html

wcrossbow··on Photogrammetry on commercial flights (2021)
A big part of my day job is to develop an image processing pipeline for a satellite constellation.

Using SIFT or another keypoint detector is one of the ways to do georeferecing. You take a basemap and your image and match keypoints on both then calculate your transformation. There are a few things that make the problem harder than just use SIFT but it is a good starting point.

wcrossbow··on Tmux has forever changed the way I write code [video]
This style of doing things is very common in languages with a (good) REPL, think clojure or ipython. You keep sending snippets and iterating on them until they work as intended. For that, you don't need the full context of your program.

Not a LISPer but apparently in that land you could actually have the program running and a REPL attached to it, in which case, you actually do have all the program at your disposal.

wcrossbow··on Ask HN: Do you still use a hand held/desktop calculator?
I have mapped F8 on my keyboard to launch a terminal with IPython open
wcrossbow··on Let ChatGPT visit a website and have your email stolen
It was already predicted in this forum that this would happen sooner rather than later. I remember somebody already posted a simpler PoC more than a week ago. Nothing good comes from letting a 3rd party, the attacking site, give arbitrary instruction to your systems on how to behave. Maybe OpenAI wants regulation to stop this kind of thing. What would be a funny development though is if they ended up themselves ̶o̶u̶t̶ ̶o̶f̶ ̶t̶h̶e̶ ̶m̶o̶a̶t̶ not being compliant.

Edit: The last sentence didn't made sense without too much context. Clarified, but kept the original striked-through

wcrossbow··on Sam Altman isn’t the answer to regulating artificial intelligence
When 10s of millions of your own money are at stake and depend upon how an industry is regulated you are most definitely not the right person to call the shots on how said regulation should be implemented.
wcrossbow··on “A Great Ox Stands on My Tongue”: The Pitfalls of Latin Translation
I was slightly unfair to my fellow nationals. It's not that you just go through with something silly just because, but rather that uneasy feeling one has when reaching the point of no return on some venture and you have to pick between backing out or pushing through with the original plan. When the latter wins you cheer up and scream ¡de perdidos al rio!
wcrossbow··on “A Great Ox Stands on My Tongue”: The Pitfalls of Latin Translation
We have a fun way to describe mechanical, word for word translations in Spanish. It's called _from lost to the river_, that's the direct translation of _de perdidos al rio_, which is a saying meaning that once you have embarked onto a silly/dangerous/nonsense business you might just as well go through with it. A sort of reverse sunken cost fallacy. Of course, the fun is in that it makes no sense once translated. I find it amusing to sometimes make use of such expressions in public.
wcrossbow··on Making Python faster with Rust
Im assuming the polygons dont change to often so you can amortize the construction of the quadtree. Depending on your world view the implementation is trivial since Shapely, a dependency they already likely have, has an implementation of it.
wcrossbow··on Making Python faster with Rust
Rust is great but isn’t the core problem here using the wrong algorithm? It looks like this is ideally suited for a quad tree instead of a naive for loop. I would expect that to pulverise any current benchmark.
wcrossbow··on Scientists finally figure out why the water bear is nearly indestructible (2017)
Intersting, however, there is something about this format of headline that always makes me twitch a bit inside. There should be a law of scientific headlines, something along the lines: Whenever a reporter writes, "Scientists finally discover why...." you can be sure to interpret as "Scientists have even more questions about why...". The phrasing confuses the understanding of the general public about how sciences and scientists actually work.
wcrossbow··on Solar panels disguised as terracotta tiles in Pompeii
> Don't you need the defects to have semi conductors?

No. However, most of the time you want doped semiconductors and doing that introduces defects. The defects are bad for resistive losses but that's life.

> every computer works better cold

No. Conventional electronics based on doped semiconductors don't work below a certain temperature because the impurities are "frozen". There is a sweet spot of temperatures that works best. The purpose of cooling on a computer is to keep the temperature as close to the sweet spot as possible.

> Isn't that why Google's quantum computer is supercooled?

Quantum computers like Google's rely on superconducting materials (most of) those require sub-Kelvin temperatures to work, both to reach the superconducting regime and to reduce phonon induced decoherence. Superconductivity works in quite a different way to conventional materials to conductivity in semiconductors and metals too.

wcrossbow··on Solar panels disguised as terracotta tiles in Pompeii
Of course it is! And the explanation isn't even too quantum. Heat induces atoms to vibrate, these vibrations mess up with the perfectly periodic potential that you would have at 0 K and induces electron scattering which leads to more electrical resistance.
← PreviousPage 2 of 3Next →