Since yours hold a lot more uncommon words (by virtue of simply having many more words) a feature, if you are in the mood for updating, could be to sort by word frequency along with alphabetical sorting.
In my head, it's a conjugation of "fess", which is a shortening of "confess". (Until I thought of it that way I was thinking "I've never seen this before", despite the word being in my vocabulary.)
So which of these actually spell the color they represent (or something closely related)? From a quick glance, I have no found any. Do color-words like that exist in other languages maybe?
#1C1E57 (ICIEST) is dark blue, which could hold true in certain contexts!
#DEBA65 (DEBAGS) is brown, much like de color of de bags made of de paper.
And on a related and exceptionally juvenile note, it should be very possible - and frankly obligatory, for those in fashion tech companies reading this - to create and sell a #B00B1E colored bra.
The concept of people leaving audio messages _with a reasonable expectation that someone will listen to them_ is (thankfully) dying out, at least among my social circles.
You can leave a message if you want, I'm not going to listen to it. The only entities that make unexpected phone calls are scammers and bots.
Given that I never get ham voice calls, it is reasonable for me to assume that any voice mails that I receive are therefore spam (but, no, you're right, I don't recall ever noticing a spam voice mail. But then I wouldn't notice one, whether it existed or not, because I don't check them)
You must not be in the United States then. Pretty much guaranteed every phone number in the US has received at least one “automobile extended warranty” voicemail.
Good question. I thought of an algorithm to find the hex word colors that most closely match the color they represent...
Basically: get the color of the _word_ by doing an image search and extracting the dominant color from the first image result. Then compare that color to the hex color (in CIELAB color space) to get the color difference. Track the hex words with lowest difference.
Here's a rough impl in Python:
import sys
import os
import heapq
import requests
from google.cloud import vision
from colormath.color_objects import sRGBColor, LabColor
from colormath.color_conversions import convert_color
from colormath.color_diff import delta_e_cie2000
from bs4 import BeautifulSoup
def download_image_for_query(query):
search_key = os.getenv("GOOGLE_CUSTOM_SEARCH_ENGINE_KEY")
search_engine_id = os.getenv("GOOGLE_CUSTOM_SEARCH_ENGINE_ID")
resp = requests.get(
f"https://www.googleapis.com/customsearch/v1?key={search_key}&cx={search_engine_id}&q={query}&searchType=image"
)
img_url = resp.json()["items"][0]["link"]
img_content = requests.get(img_url).content
return img_content
def dominant_rgb_colors(image_content, num_colors=1):
vision_client = vision.ImageAnnotatorClient()
image = vision.Image(content=image_content)
response = vision_client.annotate_image({"image": image})
return [
(int(c.color.red), int(c.color.green), int(c.color.blue))
for c in response.image_properties_annotation.dominant_colors.colors
][:num_colors]
# class to store hex word and calculate the difference from "true" image, based on image search
class HeapibleHexWord:
def generate_rgb_version(self):
return tuple(int(self.hex_version.lstrip("#")[i:i+2], 16) for i in (0, 2, 4))
def __init__(self, hex_version, english_version):
self.hex_version = hex_version
self.english_version = english_version
self.rgb_version = self.generate_rgb_version()
self.delta_from_true = float("inf")
def calculate_delta_from_true(self):
true_rgb = sRGBColor(*self.rgb_version)
query = self.english_version
img_content = download_image_for_query(query)
test_rgb = sRGBColor(*dominant_rgb_colors(img_content)[0])
# via http://hanzratech.in/2015/01/16/color-difference-between-2-colors-using-python.html
delta = delta_e_cie2000(
convert_color(true_rgb, LabColor),
convert_color(test_rgb, LabColor)
)
self.delta_from_true = delta
def __lt__(self, other):
return self.delta_from_true < other.delta_from_true
# scrape words from hexwords site
hexwords_url = 'https://hexwords.netlify.app/'
hexwords_page = requests.get(hexwords_url)
soup = BeautifulSoup(hexwords_page.text, 'html.parser')
buttons = soup.find_all('button', class_='svelte-1m9ptdb')
hex_words = []
for button in buttons:
if button.text == '':
continue
hex_version, _, english_version = button.text.split("\n")
hex_words.append((hex_version, english_version.replace("(", "").replace(")", "")))
# iterate over the hex words, calculating the color diff between the word's hex
# color and the "true" color based on image search
hex_words_heap = []
heapq.heapify(hex_words_heap)
NUM_WORDS = 10 # looks like throttled at some point
for i, hex_word in enumerate(hex_words[:NUM_WORDS]):
print(f"working on {i}: {hex_word}")
heapible_hex_word = HeapibleHexWord(*hex_word)
heapible_hex_word.calculate_delta_from_true()
heapq.heappush(hex_words_heap, heapible_hex_word)
# popping from the min heap yields hexwords with smallers difference from true color
heapq.heappop(hex_words_heap).english_version
The issues isn't the color of the asses, but rather that the word spelled is assess. As in, the tax assessor is coming to assess our property now that we put on that addition. I expect our assessment to go up.
Kind of a stretch, but #B05535 (bosses) and #BE57ED (bested) are both sort of purplish colors that looter games like Borderlands sometimes use for "pretty rare, but not unique" items (which would typically be dropped by a boss monsters when you defeat them).
How many colors do you typically identify or would be willing to accept? Somewhere between 10 and 25 would be sufficient… not every word will have a color association, but many will have more than one.
I think you need to be pretty strict to not find a match after 50 words.
Similar things in a number's value v/s its number of characters I think is called True Number, & only 4 is a true number like 4 value & FOUR has exact 4 letters.
Yeah B16B00B5 and CAFEBABE are 2 of my favorite funnier ones Ive used a bunch of times. They make for more interesting placeholder values than "foo" and "bar" anyway.
Without commenting on the reasonability of it, you may want to be aware that a growing population of vegetarian and female tech workers may find these offensive.
Beef dies in the wild too so DEADBEEF should not, I do not care if they want to use B16D1CC instead :) I can't see why CAFEBABE would be offensive though.
...And honestly I guess I don't care? If people are that mad about some levity then I probably do not want to work with them.
If you want levity, why not just use terms that aren't offensive? If you can't think of a joke without being sexist or misogynist, then that's on you - don't blame others for "not having a sense of humor"
I don't understand how any part of that applies to my comment at all, sorry. (I take it from the way you quoted it at me that you think it does.) "Flamebait" applies to the comment I was replying to, though, I think.
I remember seeing 0xdeadbeef for the first time in dbx, which was my first experience with seeing uninitialized memory - was really surprised to not see it in the list on the website, since it's rgb+o (red/green/blue + opacity).
Bringing up the topic of "leet" actually serves in two capacities: not only is it a prime example of 7=T, but leetspeak's overall orthography [0] is conceptually similar to this "hexwords" site far beyond 7=T.
Yep. But if your user base is likely to include Americans, then you might want to consider filtering them out. (As it could be shocking to read.)
Note the word consider, by the way. I'm not demanding anything here, I'm saying the author should make a deliberate choice about their inclusion rather than including them just because they were auto generated.
For the curious, I think they mean decimal values 16408693 and 16410119. Which have other archaic meanings but their primary modern meanings are a slur. 16410349 is apparently British slang for exhausted, so maybe gets a pass?
I have a project named “xidoc”. I spent a long time trying to come up with a logo and a primary color, then I got the cute idea of using the letter ξ (xi) in the color #d0c (which happens to be a quite lovely magenta).
Would be fun to plot all these on a color wheel to see how non-uniform it is, as a consequence of the distribution in English words (which can be represented this way).
Yeah, it's a prime example of a sisyphean task. Language is too varied and fluid, and the internet is far too juvenile to be censored for any length of time (not a dig, but you try telling reddit they can't say slurs anymore).
I think you're both right. It's a fun little page that doesn't actually serve any purpose, like... comedic art?
The practical solutions to this opinion divide are to somehow categorize entries like this as [funny] or whatever so people can skip them informedly, or to simply accept that HN aggregates content that appeals to different minds.
I personally find it uninteresting, but I don't think it decreases the value of HN or the quality of the community-- people will find novelty in different things. It also seems like the kind of content that the guidelines praise. I appreciate when people deep-dive into niche topics because it fosters (in my subjective view) the best type of discussion.
This is the kind of thing HN is for. That's not to say it's not also great at incubating overly-pedantic technocratic bikeshedding of computing minutiae, which has its place. Don't ever change, HN.
Since the raison d'être of this project seems to be spelling ridiculous things out of hex colors, I think it would lose a lot of its appeal with such a filter.
I understand a lot of those, but why is "beaver cleaver" on the list? I could see how it might be used in a dirty way, but that can't be the most common way it's used, right?
The "dirty" use seems pretty silly (sounds like something out of a crass 80's movie or something), but I can't really imagine using it in a non-dirty manner either. I mean I know people have hunted and trapped beavers, but when the capture them they don't just, like, thwack them with a giant cleaver, right? Would ruin the pelt if nothing else.
Not sure if you're messing with me, but Beaver Cleaver is the name of a famous sitcom character. Awesome show IMO, you can watch the entire series for free on archive.org