Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: What colour is your IP address? (meetstrange.com)
208 points by imhobson on Feb 18, 2013 | hide | past | favorite | 73 comments



People are bashing this for being 'pointless', but hey, so is the next great to-do list app you made in 48 hours. This is a fun little experiment.

I can see an actual use for this. Look for example at Identicons, Wavatars, and MonsterIDs[1]. They all use browser variables to generate random avatars for use around the web, e.g. on blog comments. I imagine this could do something similar, and a nice colour palette is a little more classy than a monster.

[1] http://blog.gravatar.com/2008/04/22/identicons-monsterids-an...


I see this as like an internet art installation. It injects art into an unexpected place/space.

Finding patterns and/or meaning out of nothing is quite interesting.

Is art useless and not worth executing?


Is generating a 4 color palette based of a random seed all it takes to be art? Not to say it wasn't worth executing from a personal standpoint, it was probably fun to build if nothing else, but really what possible use can anyone else get out of this?


These days, 'art' is an almost meaningless term, since it has to include this:

http://www.tate.org.uk/art/artworks/creed-work-no-233-p78388


Art is anything that someone somewhere could claim is not art.


Is anything that anyone claims as art.


The work’s irreverent message appears discreet due to its small size and almost apologetic lower-case lettering; the blank expanse of the rest of the page, however, gives the words disproportionate weight and presence. This simultaneously self-effacing and assertive quality is typical of Creed’s work.

I don't know where to begin. If I didn't know any better I'd think this was a parody.


I was in the same boat as you; reading this shed some light:

http://www.reddit.com/r/explainlikeimfive/comments/14y6fj/el...


You had me at "fu". Bookmarked!

And, on a more serious note, pretty depressing.


Being depressed by this is a bit like being depressed by pop because you think only classical music is music. He's not stopping anyone from doing better art. I wouldn't be into his art particularly but neither am I into the sort of paintings you see in national galleries either. Really it wouldn't surprise me if he turned around one day and said the whole thing was a big joke. He practically does just that here: https://www.youtube.com/watch?v=6syZr_me_Bg


The question is, how do you get the the point in your career where you can put stuff like this and people laud it?

If I went to a gallery and offered this up I'd obviously be laughed out of the place.


Indeed, I only found depressing the fact that this "work" made it to a prestigious museum.


Nowadays being alive is art.


We put this together one afternoon because it was fun and quick to do. We were looking into generating colours for our site and logo that would somehow be different for every visitor. We thought about this but then realised it wouldn't be that practical. If it can inspire someone to do something similar but more useful then that's enough for me :-)


Art is a means of expression, whether you can see meaning in it or whether it had any meaning at all or even if you think it wasn't particularly creative. Art serves no other purpose other than to be art. In that regard, yes, this can be considered art. I thought it was quite creative in a relatively unexplored medium, your IP, instead of oil paint.

And I vehemently disagree with cormullion's comment : http://news.ycombinator.com/item?id=5239734

Consider Malevich's work : http://en.wikipedia.org/wiki/File:Malevich.black-square.jpg

Yes, that's in a museum. And it wasn't made "these days" either.


Is putting a toilet in a gallery all it takes to be art?


I don't think that I can agree enough with this comment. Pointless are only comments point it out. How many people ask what they could do to learn programming? A lot, and I don't like all the "read books & watch videos", working on a little project like this is a great thing to learn many good things while doing something more fun than the common notepad or to-do-list


I was considering something related for my own software -- giving some level of differentiation to "Anonymous" users in a discussion, to reduce samefagging; users on the same subnet would get similar colours, etc. The main downside with that is that it's then plausible to look at somebody's colour and work out their IP address :P


Just hash the actual IP address. For example, take the IP and apply MD5; then take three bytes each to make, say, 3-colored "flags". That would totally work and yet be reasonably anonymous. This would also take care of the fact that colors come as three byte values and not four.


That would not work, as stated. The search space is way too small. Simply exhaustively building a table mapping hash to IP address is tractable.

This could be ameliorated by including a site-specific secret in the hashed value; I'm not comfortable calling that "secure" but it does address this particular flaw.


Yes, but given a single hash you are only able to reduce to 200 candidate IPs.


If a site specific secret is present you would not be able to do that - unless the site will act as an oracle for you and doesn't care about you making several billion requests.


Its not pointless at all - I can think of situation where this idea would be very useful:

When looking at client (request) logs full with IP addresses, the colorful visual cue would give you an idea which requests group to a single client.


I agree! Useless things can be some of the most fun things to do with your time. I do recreational motorcycle riding, and admittedly from a practical point of view it's pointless, it's my favorite activity!


I actually like my IP's color scheme. I might try to use it for something.


This seems to run as a script in your browser, and then calls out to some helper to get your IP address. The original server (the one which hands you the script in the first place) should have your IP address already, and in theory, could create the page on the fly. That would make it work even with NoScript or similar in force.

I guess client-side is the way most people do things these days.


This way the server can serve a static cached page, and distribute the work to derive the colour palette to the clients.

I agree that the server could do this, and for a small app like it is this wouldn't even be a big problem, however there is almost no impact on the end user and this way scaling is handled by 'better caching' and serving static pages faster.

Offloading to the client is a good thing in general, and I think there are few cases where it is possible but not the better option.


The work to derive the palette? Do you mean RGB to HSL and back? That isn't particularly CPU-intensive.

One of many implementations: http://axonflux.com/handy-rgb-to-hsl-and-rgb-to-hsv-color-mo...

I imagine you could precompute the entire 24 bit range if you really wanted.

I mean, this thing has a failure mode where it says it can't find your IP address. That makes no sense until you look at how it was implemented.


As a follow up to your little project, find out a way to color IPv6 addresses ::]

*edit: changed standard smiling emoticon to IPv6 smiling emoticon :P


Cute little thing :) - but: A pallet is a flat transport structure that supports goods in a stable fashion while being lifted by a forklift, pallet jack, front loader or other jacking device. A palette is a given, finite set of colors for the management of digital images.


Thanks! Its crazy how many little typos and issues get exposed by the HN crowd even for a tiny experiment like this :-)


Free crowdsourcing!


Heh, thanks for the correction - will make that change now!


Neat. This kind of reminds me of something I did a while back: I had a permissions manager that let you drag and drop groups to various actions, but the color of each group was determined by hashing their the group ID into a color.

The resulting colors had no special significance, but the important point is they never changed and it let you easily visualize what was going on. I'm sure this had been done many, many times before. The difference here is that the straightforward conversion from IPs to colors means similar IPs will look very similar, whereas hashing some value to a color results in similar values looking vastly different.


The 4th byte is thrown away... You could use it as alpha channel? Or CMYK color.


Considered it, but CMYK only go up to 100 in value - alpha channel could be an option though...


You can name the color too - http://chir.ag/projects/ntc/

It's not an exact match of course but I did my best to make it as close as possible.


This is really cool, and useful.

[and for all the silly color names out there, it's actually pretty amazing how right most of the names that pop out of this tool seem... most really do capture the essence of the color.]


Since it's out of 100, you could do CMYK based on proportion. e.g.:

C = (byte1/255)x100; M = (byte2/255)x100; Y = (byte3/255)x100; K = (byte4/255)x100;


FWIW, due to the way that the IPv4 address space is allocated, you could achieve far fewer "collisions" (i.e. different IPs producing the same palette) by throwing away the first byte instead.

http://www.iana.org/assignments/ipv4-address-space/ipv4-addr...


Here's a short blog post to go with this little project we made! http://meetstrange.com/blog/pretty-ip/


I like how you blur out the IP address but it could be trivially recovered by sampling the colors :)


Yikes... it looks like my IP is about as good at color coordination as I am.


Was it obviously green?


Clearly.


Shame. Mine is kind of cool.


It would be nice if there were a less trivial mapping of IP address to color -- something where ASN boundaries mattered, and maybe where netmask got taken into account. (so a bunch of users on /29s and /30s within the same IP block got related but different (and ideally distinguishable) colors.

It would still be a canonical IP to color mapping, but it wouldn't be as literal a mapping of 32-bit address into 32-bit color.


Neat project! This got me thinking - Why are QR codes black and white? Couldn't they transmit more information if they used colors?


Different cameras and software will do different kinds of automatic white balance correction but nobody will screw it up so bad that you can't differentiate black from white.


Well, there are various color-based schemes like

http://en.wikipedia.org/wiki/High_Capacity_Color_Barcode


You need to do something with the text over the color pallette. It took me a while to see that there's actually something there and not a black background http://dl.dropbox.com/u/2311018/temp/ipcol.png (I don't care that you can see my ip, it's not private).


My IP address is a calming shade of green. That's not really a thing I expected to learn today, but I'm oddly pleased by it.


What, no IPv6? :(


Neat! My place of work has a surprisingly attractive IP address palette.

It would be cool if you could specify an IP address; I'd like to see what the IP for my hosted VM looks like. (I suppose I could set up an SSH tunnel if I am really curious...)


I'd like to see what the IP for my hosted VM looks like

Step 1: determine IP address

Step 2: interpret the first three octets as red, green, and blue respectively

Step 3: there is no step 3.


I think this is very cool. A very creative way of showing off skills. Does it help me with anything right now? I'm not sure. But it does show outside the box thinking. I would definitely hire someone with such thought process.


Coding stuff for shits and giggles is the spirit that makes a good programmer.


This would be a great bash addition for anyone that sshs into servers all day. Just as some people color their console red in production or green for staging, this would be a nice indicator of where you were.


Hmm would be neat if the site saved the color scheme the user's IP created and showed a list of them sans the actual address. But then again, the users IP could be easier figured out by the colors as well :)


Since this seems not to work, I made one that does. http://luna.thehorseplace.us/ipcolor.php


Looks like you've got a stray </script> closing tag. It didn't work in Firefox on Mountain Lion, but it did in Chrome. I like it!


Thanks. That was part of the problem. Turns our $.get wasn't parsing the response data as JSON in firefox. fixed now!


Thanks! Looking into this meow


I used something similar to differentiate between users on http://wrd.skot9000.com/


So who's going to create a colour map for these?


It's bugged..

Second pallete shows "183" instead of "173"

http://imagebin.org/247232


honestly who cares what 'colour' an ip address is? plus, it doesn't work

"Your IP Address is

We can't find it... Sorry! "


Doesn't work for me either. I'm guessing it interprets the 4 octets as RGBA or something similar. It's a cute idea.


It's the first 3 octets as RGB, shuffled around to create complementary and triad colours.


Hey guys. Sorry its not working, its on a shared hosting, hosting it somewhere else right now. Its just a bit of fun really, grabs the first 3 numbers of your ip, turns that into an rgb color then generates a color pallet.


Might I recommend a VPS? Don't worry, I'm not getting comission, but Digital Ocean has pretty reasonable prices for fun side projects like this. BTW, this works flawlessly for me on FF, but I wish my colors were prettier though ;)


It's using http://jsonip.com/ apparently. Does going to this URL works for you?


Doesn't work for me in Fx 18 but it does seem to work in Chrome (both Win7)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: