I second Angela, informative, chill and kinda funny
Leavingoldhabits
A little more context:
The exposure time for each line is a maximum of 30 ms. That number comes from dividing the amount of lines over the time a scan takes. Factoring in overhead from read-time and actually incrementing the sensor, I guess the sensor is open for maybe 15-20 ms.
As I said above, flickering sources are an issue. They manifest as periodic lines of darker and brighter streaks, kind of like venetian blinds. The LED sources I sometimes use are meant for film, so they’re either continuous, or on fast enough duty cycles so it doesn’t really matter, fluorescent sources powered from mains are from my experience most likely to mess things up.
The lights used here are continuous sources. Flickering sources show up as evenly spaced streaks across the whole image. Kind of like video of an old CRT TV.
If you like jazz piano, Keith Jarret’s köln concert is a masterpiece.
There were a bunch of issues with the venue and he ended up playing the whole thing on a broken piano.
This video sums up how the peice happened.
Edit: I like to think it’s a story of stacked disasters and a master artist somehow making the whole mess gorgeous.
Stream of consciousness from train of thought and dance of eternity from meteropolis pt. 2 are really good, long-ish instrumentals that kind of tell a story.
And to answer OP: Metropolis pt.2 by dream theater is a great concept album that has an interesting story to follow.
I had forgotten about maggot brain, such a great song! Thanks for reminding me.
A greedy crow is what they told me
I’d like to see your solution in total. I’m not too familiar with the nuts and bolts, but hash set is quite a bit more expensive than a simple vector, there’s a bunch of overhead incurred when executing the hashing and placing of the data, and when repeating a few thousand times it sure adds up. My part one hovers around 600 microseconds.
Not who you asked but: I save coordinates and direction into a vector each time the guard faces a #. Also every time the guard faces a #, I check if the position exists in the vector, if true, it’s an infinite loop. 78ms rust aolution.
Rust
This one was the first real think for this year, but I ended up brute forcing it, placing a ‘#’ in every position and checking. part 2 runs in about ~~380ms~~ 78ms (after reducing the amount ‘#’-placements to only where the guard walks) on my 2011 core i-7, so I’m happy, even though it feels like I could have been smarter.
I think that’s mostly the poison talking
Haven’t seen Philosophy Tube on here yet.
High quality and engaging deep dives on various philosophy-related topics. Abigail, the face of the channel is an actor and playwright (and an academic) and that very much shines through.