Fast perceptual image hashing with Perl - Dimitrios Kechagias
Talk slides, images & code used: https://github.com/dkechag/ImagePHash-Talk
This talk will take you through a novel Perl implementation of perceptual hashes for “similar image” searches. I'll start with the basics, if you don't know what a Discrete Cosine Transform is, you'll find out with a visual demo - no math required (although math is always encouraged!). After DCTs and p-hashing basics, I will go through the implementation’s new features that make it efficient and easy to integrate with our large MySQL-based image database.
At SpareRoom, the world’s largest roommate finding service, we handle tens of millions of images, mostly of customer rooms/properties. When tasked with adding an internal ability for a “similar image” search, I first looked at existing solutions and found out that some did not work as expected, while others were either slow or required changes to our infrastructure (mainly Perl, with the data - including the image index - on a large MySQL database).
In the end, I went with a solution initially based on Image::Hash, but with p-hashes reimplemented to fix collision issues and add speed (over 10x faster than pHash.org’s equivalent DCT-based hash). Then, I added features such as support for mirroring, as well as “index/reduced” hashes, in order to effectively use MySQL indices (and thus easily fit in our existing setup).
After an intro to the theory behind the DCT and perceptual hashes in general, I will discuss the abilites of this implementation and the experiences from developing and using it. The module will be released to CPAN before my talk, although the XS part responsible for the fast DCT calculation has been available for a while as Math::DCT.
A list of new(ish) command line tools
A list of new(ish) command line tools
vidir (from moreutils, lets you batch rename/delete files in vim)
The Scout Pattern // Think Like (a) Git
Create a new branch (I often name it test_merge) and switch to it.
Font redistribution FAQ - Typography | Microsoft Docs
Frequently asked questions about font redistribution
- We view creating graphic files as being essentially the same as printing from an output device.
Can I make a company logo using the fonts?
Unless you are using an application that is specifically licensed for home, student, or non-commercial use, we do not restrict you from making logos using the Windows-supplied fonts.
When can I use document embedding?
Font files contain flags that indicate if and how they can be embedded within a document file. Applications that support document font embedding look at these flags and determine if and how it may be embedded in a document file, and when they open a document containing embedded fonts, they will also look at these flags to determine if and how a document can be viewed or edited.
Primer Prism
Create cohesive, consistent, and accessible color palettes
Keyboard Accordion | Teclado del Acordeón
Keyboard Accordion
Play the diatonic button accordion with your computer keyboard!
Type Scale Calculator
Beautiful font sizing for your web typography. Based on “The Typographic Scale” by Spencer Mortensen.
2008 Santa Fe smells like Gasoline | Hyundai Forums
My daughter's 2008 Santa Fe had a bad fuel tank sending unit so she took it to her local dealer and paid $500.00 to have it replaced. Ever since the repairs...
https://www.hyundai-forums.com/threads/santa-fe-multiple-problems.687585/
#6 · Apr 26, 2022
I had a fuel smell in my 2011 previously., especially when filling up or full tank. Found the leak in the connecting pipe between the filler cap and the tank. the hose clamp on the bottom of the flexible rubber hose between the filler cap and the tank was damaged and loose. Its located behind the rear driver tire. Looked like a rock or stick hit it. I remove the rear driver side tire to access. Installed a new hose clamp and corrected the fuel smell problem.
https://www.hyundai-forums.com/threads/2011-santa-fe-p0455-no-obvious-leak.649119/#post-5863985
Funny enough it ended up being the PCM valve, but the biggest culprit wa the fuel tank lock rings and seals. Easy enough replacement and I got to really vacuum under my rear seats! Thank you so much!
Fuel Tank Float Replacement 2007-2009 Hyundai Santa Fe / Fuel Gauge Intermittent?
https://www.youtube.com/watch?v=CIusrFUk4U4
Top 5 Problems Hyundai Santa Fe SUV 2nd Generation 2007-13
https://www.youtube.com/watch?v=bMgRkIkXXCI
-apple-system and BlinkMacSystemFont are now both obsolete and covered by system... | Hacker News
Never, ever use system-ui as the value of font-family
What's In That String? | Tom Wyant [blogs.perl.org]
local $Data::Dumper::Useqq = 1;
print Data::Dumper::Dumper( $_ );
$VAR1 = "\30\31\32\e\34\35\36\37 !\"#\$%&'";
$VAR1 = "\30\31\32\e\34\35\36\37 !\"#\$%&\x{100}";
Safety blue color scheme - Lyft
Colorbox.io - version 1 is no longer available (heroku).
Algorithm for generating colors was open-sourced, but not the app itself.
https://github.com/k-vyn/coloralgorithm
I added 'denim' which does meet the 4.5 contrast ratio.
I moved the legacy blues into the 'safetyinsurance.com additional colors' section. The goal would be to retire these colors.
Quote Edit #5
Updated by Robin Krolikowski over 1 year ago
I checked out the app and came up with this page:
107 - Book Cover Mistakes That Can Sabotage Your Marketing - Author Media
Any one of these 11 book cover mistakes could ruin all your other book marketing efforts. Learn how to avoid them.
lousybookcovers.com
One Weird Trick for Writing a First Draft | by Clive Thompson | Creators Hub | Apr, 2022 | Medium
Like most writers, I procrastinate like mad. When I’ve finished my research and time comes to start writing, I’ll poke around in a zillion other tasks — rearranging my desk, tackling old email, going…
- I begin each paragraph with a hyphen.
- I lower-case the first letter of every sentence.
- I don’t put a period at the end of a sentence. (A question mark or exclamation point is fine.) Instead, I end each sentence using two forward-slashes, like this //
I leave it in that odd format right up until the day before I’m filing a big magazine feature. Then, on the last day, I slowly go through the whole piece, transforming each sentence into the correct format.
This frees me up, on this final day, to become an obsessive about word choice on a sentence-by-sentence level.
Micro @eleven_ty tip:
We can use the Nunjucks "dump" filter to call "JSON.stringify" on an object and "dump" the result(s) into our template.
For example, we can render information about our current page with the Eleventy supplied "page" variable.
The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!) – Joel on Software
Ever wonder about that mysterious Content-Type tag? You know, the one you’re supposed to put in HTML and you never quite know what it should be? Did you ever get an email from your friends in…
Khruangbin: NPR Music Tiny Desk Concert
May 16, 2018 | Bob Boilen -- It was daylight but the music was dark and moody. And despite having the office lights turned on high, it was Khruangbin's trance-inducing tone that set the mood and carried me away.
This trio from Houston, Texas is heavily inspired by 1960s and '70s funk and soul from, of all places, Thailand. That musical passion has taken them on a journey that, these days, incorporates music from Spain, Ethiopia and the Middle East. Khruangbin's largely instrumental music is grounded in Laura Lee's bass, with Mark Speer playing those melodic, richly reverbed guitar sounds and Donald "DJ" Johnson on drums and piano.
Two of the three songs performed at this Tiny Desk Concert are from their 2018 album Con Todo El Mundo, which is dedicated in part to Laura Lee's Mexican-American grandfather. He'd often ask her how much she loved him and the response that pleased him most was when she would say, "con todo el mundo," (with all the world.)
The third track in this performance is one of the band's first forays into vocals, from their 2015 debut album, The Universe Smiles Upon You. "White Gloves" gently pays homage to a "classy lady" who was "a fighter" and who "died in a fight." Its open-ended lyrics could imply a battle that was violent or an illness. It isn't clear. What is clear is the reverence in the song and in this music — music that strays from typical instrumental songs with heavy beats. This is music to sway to and to lift you beyond the day to day.
SET LIST
"Maria También"
"August 10"
"White Gloves"
My Google Coding Interview Question | by William Wen | CodeX | May, 2022 | Medium
Given a positive sorted array a = [ 3, 4, 6, 9, 10, 12, 14, 15, 17, 19, 21 ];
Define a function f(a, x) that returns x, the next smallest number, or -1 for errors.
i.e.
f(a, 12) = 12
f(a, 13) = 12
Why Binary Search?
Binary search is one of the most difficult “simple” coding problems. The algorithm looks trivial, but it’s a devil to implement. Jon Bentley, a former CMU professor, wrote in his book Programming Pearls that only 10% of professional programmers are able to implement it correctly, including PhD students.
I'm All-In on Server-Side SQLite · Fly
Litestream is an open-source project that makes SQLite tenable for full-stack applications through the power of ✨replication✨. If you can set up a SQLite database, you can get Litestream working in less than 10 minutes.
Explore DOM Events 👩🔬
A visualizer to help you learn how the DOM Event system works through exploration. Explore event phases, stopping events, canceling events, passive events and more.
Going to put sheet vinyl on this floor, is it even enough or should I put plyboard/cardboard over it? : Flooring
How does one patch plywoods?
Henrys feather finish. It comes as a powder, you mix it with water until its the consistency of....i dunno... Mayonnaise? Lol best i can come up with... I'll usually just mix it right on the floor, with 2 putty knives. Then you spread it on all the seams with a putty knife.
Your not trying to lay it on thick, just spread it thick on first pass, then pull it all flat with 2nd and 3rd passes. Think joint compound.
Let it dry. Scrape if needed. Multiple coats if needed (if it's jyst factory edge seams, you most likely won't need multiple coats) and your ready to go.
Also, just to be clear.. You want a plywood with a finished top layer. Nicce and smooth. You don't want to use some rough cut builder grade plywood. 1/4 is plenty, because it's not for structural reasons.