The leaderboard is fascinating. Some people are clearly putting a lot of time into this, while the rest of us are trying to sneak phallic shapes past your CNN.
Well what's the difference between a lamprey and an hot dog?
ch4s3 175 days ago [-]
It's mostly down to the casing.
gerdesj 175 days ago [-]
[flagged]
LtWorf 175 days ago [-]
I speak 5 languages and english isn't on top of the list. The time you spent writing that novel could have been spent learning another language instead perhaps?
gerdesj 174 days ago [-]
I was merely noting that you used a grammatical rule I have not seen in quite a long time.
sigh
5 -> five, english -> English (we are not Germans who insist on all nouns be capitalised but why not try it for a proper noun), novel -> diatribe. Possible missing ellipsis.
I speak roughly seven languages really badly and can fail to apologise properly in several others.
cpfohl 175 days ago [-]
“An h*” is regional. Had a professor who said “an historic…” all the time, never stopped noticing it, though.
mikepurvis 175 days ago [-]
Also make sure you’re filling up the canvas — don’t draw something too small.
GaggiX 175 days ago [-]
Did it face the right way?
davidcollantes 175 days ago [-]
I could dedicate a month, or a year, and never come up with something like those. Are they really using the site tool, or is there a trick to draw them elsewhere and import them? Those are truly amazing!
lelandfe 175 days ago [-]
If you have a tablet and some artistic background, these are all definitely doable. Doing those with a mouse would be a lot harder.
jackero 175 days ago [-]
I like to draw with a mouse. Just takes practice, like anything.
goopypoop 175 days ago [-]
What if your mouse was shaped like a pen?
mikepurvis 175 days ago [-]
It would be hilarious if that guy vibe coded a thing that’s just repeatedly googling images of real fish and then slavishly drawing them into the site.
thisOtterBeGood 172 days ago [-]
Pretty sure you can build a "robot" that just copies from an image source.
ionwake 175 days ago [-]
I was extremely happy with my 60% Wang fish. And now after looking at the leaderboard I feel bad.
raisedbyninjas 175 days ago [-]
I drew a real triumphant one that edged over the 60% threshold. Then read that the mod queue was at 63% and had to do it all over again.
175 days ago [-]
bbor 175 days ago [-]
Ok there's some sort of bot war going on with the leaderboard, right? The Palestine fish has 370,000 votes total (both up & down), which seems like a lot. Does HN really drive that kind of traffic??
rightbyte 175 days ago [-]
Well you can click thumbs how many times you want so ...
gus_massa 175 days ago [-]
The rule of thumb is 100*upvotes+50, so with the current 600 points, it's like 60.000 visits. Don't take that estimation too seriously, it's only a not so bad initial estimation.
174 days ago [-]
LordDragonfang 175 days ago [-]
OP really needs to read "How not to sort by average rating"
you can also upvote your favorite however many times you want!
alphazard 175 days ago [-]
Are people actually drawing these in the browser, or is there some extension that lets you populate a canvas with something you did with a stylus in Photoshop?
I’m browsing hn on my iphone, clicked this link, drew a fish with my finger, and saw it
Worked out the box didn't think twice of it
Good point though as the site doesnt follow responsive design patterns
tamimio 175 days ago [-]
I drew it with the mouse, doable bit you can use your ipad
fckgw 175 days ago [-]
You could also just load up the website on an iPad with an Apple Pen.
mh- 175 days ago [-]
Unfortunately, that did not improve my drawing skills over using the trackpad. At all. :(
rightbyte 175 days ago [-]
Looking at those I feel my fish was totally inadequate. The first one didn't even pass the autofilter since it had a stick figure face ...
Really nice toy!
johnisgood 174 days ago [-]
The major problem is that I could up-vote and down-vote as many times as I want. It is rate-limited, however[1]. I know, because I wrote a script. :D Seems like someone else did, too, except to down-vote.
Please fix it.
Edit: these down-votes are going down by the 100s or so, someone is really bullish to have "RiverToSea" fish down-voted. Ironically, the "RiverToSea" fish was made by someone who named himself "f**k palestine".
[1] After refresh, you can continue voting till you reach the limit, which is problematic.
needleballista 174 days ago [-]
I've always thought it was MORE democratic that if you really like a fish you should be able to upvote it more than if you just kind of like it
johnisgood 174 days ago [-]
You may potentially be able to learn a lot from being able to successfully fight against people doing automated voting ad infinitum. :D
neurostimulant 174 days ago [-]
Now I understand why it rates my doodle as 7.5% fish probability.
michaelcampbell 174 days ago [-]
spazzchainsaw has a talent.
pinoy420 175 days ago [-]
[dead]
andy99 175 days ago [-]
The website is great!
> I built a basic CNN trained against penises
After seeing it in action, my second thought (first was just watching my fish) was that I was amazed at the good behavior of the users because I would have expected a lot of penises floating around. Now I understand. Nicely done!
hallak 175 days ago [-]
Actually most people aren't trying to submit bad fish! I was surprised to, it's really like 95/5 good to bad submissions. People seem to follow the rules on average :)
roughly 175 days ago [-]
Yeah, there’s two rules that define the internet:
1. 95% of people will not be trying to draw penises
2. 5% penises by volume is a lot of penises
sebastiennight 175 days ago [-]
By volume, yes, but by mass, it's a pretty reasonable load
roughly 175 days ago [-]
Perfectly average, I’d say
_9y71 175 days ago [-]
Or roughly average, as your username would say. :D
stbtrax 175 days ago [-]
To be fair, you stop them from submitting the bad fish before they have a chance. I never submitted a fish that wasn't already 'green' for %
jasonkester 175 days ago [-]
When I launched Twiddla, it was so common that we joked about adding them to the shape tool.
I think it’s just human nature that that’s the first thing you try to draw on any online whiteboard.
nozzlegear 175 days ago [-]
I tried to draw an eel, and when I was done I realized that all I'd done was draw a very orange, toothed penis.
dingnuts 175 days ago [-]
is this a reference to the new South Park episode?
(sorry)
lawlessone 175 days ago [-]
>is this a reference to the new South Park episode?
I don't think so, he said "long" lol
nozzlegear 175 days ago [-]
Haha, not intentionally!
fossislife 175 days ago [-]
There are some fish decorated with swastikas floating around
specproc 175 days ago [-]
And a Star of David
Edit: And a lot of Palestinian flags when sorting by popular.
tgtweak 175 days ago [-]
Just noticed "Chosen Fish" on the leaderboard - sometimes it's a bit less subtle.
salamanderman 175 days ago [-]
As hard as I tried to add fish characteristics, it knew what I was doing.
praptak 175 days ago [-]
I wonder if it's resilient against swastikas made of penises.
QuinnyPig 175 days ago [-]
That was the Slack logo redesign.
maxbond 175 days ago [-]
My hot take is that the Slack logo is an Alphabet-product logo. The colors aren't quite right, but it's red/yellow/green/blue like an Alphabet logo. It would fit right into the lineup. It's particularly similar to the (obsolete) Google Podcasts and Google Photos logos.
My pet theory (that I don't sincerely believe) is that this was deliberate to help smooth a hypothetical acquisition by Alphabet, before they were bought by Salesforce.
maxbond 175 days ago [-]
> My pet theory (that I don't sincerely believe)...
To be clear, this combination is a tetradic palete on a color wheel. Color theory and simplified logo trends make this coincidence much more likely than it would initially appear. Still funny.
danesparza 175 days ago [-]
Well now I can't unsee that.
mh- 175 days ago [-]
Seriously, wishing I could unread his comment.
exasperaited 175 days ago [-]
Oh god.
alangibson 175 days ago [-]
I drew a fish and wrote PENIS on the side. Did I beat the game?
Culonavirus 175 days ago [-]
Well apparently it wasn't trained against asses, since it let me write "Ass" on my fish :P
mmmpetrichor 175 days ago [-]
I just saw the N-word written on a fish. so eh.. that didn't last long.
My guess is the CNN was trained on highly abstracted stereotypical-fish-drawings, not on actual pictures or high-quality drawings of fish. I put in my best effort to draw a good-looking fish (although I'm no artist) and I got 35%. Then I drew a basic single-stroke fish and got 65%.
xyst 175 days ago [-]
Magikarp is not a fish to a robot
darknavi 175 days ago [-]
It's not a good fish to pokemon trainers either. 35% seems about right.
magnat 175 days ago [-]
Try SolidGoldMagikarp
amy214 174 days ago [-]
this piece de resistance swan song is only 35% fish but then my fish tank is like 90% various formats of blackface fish, nazi fish, and swimming penises
furyofantares 175 days ago [-]
Somewhat interesting thing with my 9yo. She's a pretty good artist, she can draw various characters and objects pretty well.
With this she clearly just wanted to do the standard stick fish shape, but it turns out she only knows how to do it facing left. Facing left, looks typical, facing right, almost a figure 8. So after like 6 attempts being judged by the computer she's getting frustrated, and I'm like how about this, turn the phone upside down to have her draw facing left. But now she can't do it left either!
gus_massa 175 days ago [-]
Feature request: Make the model evaluate the fish and then evaluate the mirrored version of the fish. Pick the highest value as the orientation. What could go wrong? Perhaps ask the user before mirroring?
addandsubtract 175 days ago [-]
We definitely need a text-to-stickfish model here
littlekey 175 days ago [-]
You're right, that IS interesting. Something about having to learn with rigid constraints first before you can generalize the knowledge, I guess.
furyofantares 175 days ago [-]
I think she learned to do the fish the way kids learn to draw a star. It's a motion they learn to do, and she wanted to do that simple motion. She's good at knowing a shape she wants to make and drawing it but I think knowing a gesture she wants to make is different.
And then I think when she consciously thinks about it - trying to do it the opposite way, or later the normal way after being judged repeatedly - she can't make the motion that way. But I bet if she was just thinking of the shape and trying to draw that shape it would be zero issue.
At least on Firefox/Mac, sometimes while dragging it "picks up" the image to drag it. This should prevent that.
rafram 175 days ago [-]
> exercise in vibe-coding
The code shows it... Your escaping routine seems OK, but you really __should not__ be building HTML and JS(!) using raw string interpolation. Or letting the client decide whether the submission needs moderation.
hallak 175 days ago [-]
I don't let the client decide whether the submission needs moderation :)
There's a very slightly different model in the backend that sends things to the mod queue. Strings are also sanitized there. But copilot really wanted to add all that logic to the frontend too and I thought it was funny
rafram 175 days ago [-]
You still should not be building HTML and JS using string interpolation.
hallak 175 days ago [-]
Absolutely! I've removed all references of HTML and JS using string interpolation.
(jk)
This is definitely a drawback with with vibe-coding. I never really write like HTML5 style code - at work I always use typescript with heavy ESLint, so never have to worry about this.
I figured the string sanitization in the backend would take care of any XSS vulns, which was my main concern. But I will have to read into the dangers of string interpolation which I admit I do not remember too much about (outside of the XSS stuff I tried to mitigate).
Thanks for giving the opportunity to learn... :)
mh- 175 days ago [-]
> Absolutely! I've removed all references of HTML and JS using string interpolation.
I love that this is becoming a meme, haha. Thanks for the laugh.
hyperhello 175 days ago [-]
To be fair, everything on the client is raw string interpolation. It's only secure if you comprehensively vet everything once it's on the server.
rafram 175 days ago [-]
That's absolutely not true. Sanitization on the client is significantly safer, because the client knows how it parses HTML, while the server can, at best, guess (and hope it follows the spec).
When you set element.textContent = someUserGeneratedContent, the browser guarantees that the user-generated content will never be parsed as HTML.
response.write("<div>" + sanitize(someUserGeneratedContent) + "</div>") has no such guarantee.
Aachen 173 days ago [-]
That's not sanitisation, that's separating data from executable code. It's a better solution when possible, but the solution suggested above also works
hyperhello 175 days ago [-]
If that’s all you want, it’s trivial to replace all < and & with their encodings.
volkk 175 days ago [-]
I did this on a trip to Japan but can't remember for the life of me where. Some museum. My wife and I drew fishes and then they were uploaded and we went to a room and watched them swim across walls/ceilings. Really cool experience
Our family did this recently as well at teamLab Planets in Tokyo. I filled out a circular template with a very creepy looking "smiley" face. The template turned out to be for raindrops. I couldn't stop giggling when hundreds of my monstrous creations filled the room, it was very fun.
neumann 175 days ago [-]
The Singapore ArtScience museum has this concept. Templated sea animal colour in pages that a guide vetted before scanning and then your fish appears on the walls of the dark room in a sea life picture swimming with all the other fish. It was pretty cool. A variation in the other room was the same deal but with flying machines, but this time they gave you a remote control that controlled specifically your creation as it flew around on the landscape projected onto the walls.
zengineer 175 days ago [-]
I found https://dibulo.com - where you (ok and kids) can do it at home :)
zedstar 175 days ago [-]
Teamlabs - Borderless, I also did the same : )
volkk 175 days ago [-]
yep that was it!
evan_ 175 days ago [-]
I couldn’t get it to go above 50% and then I wrote “fish” on it and it went up 5 points
WangComputers 175 days ago [-]
I gave my blue fish a black Hitler mustache and it went up by ten points
This is only possible due to the surfeit of ballsacks in the training data from users like you :)
CGMthrowaway 175 days ago [-]
You mean a skein?
throwanem 175 days ago [-]
What a fun game! Especially on a Note 10+, and I have to say, seeing the dongnet keep up with each pen stroke on a 2019 device is really impressive! Possibly still a little generous, though, I think. Writing "FISH" on a rectangle shouldn't hit 50%, but this does explain why SSN-69 didn't have much of a chance :D
productme 175 days ago [-]
This is the most wholesome thing I saw on the internet for a long time. Thanks for the effort!
quantummagic 175 days ago [-]
That is fun. And it's nice to know that everyone else on HN is about as artistic as I am.
hallak 175 days ago [-]
I love when there are traffic spikes and I get to discover which corners of the internet have artistic talent or lack thereof :)
Small changes if make:
- Change the background colour of the drawing canvas to match the water background
- Add fill tool? So folks can color this fish white? Bonus points if you automatically color the inside part of the fish white
- Fix the discontinuity of how the fish swim by stretching the pixels of the fish that you draw
pimlottc 175 days ago [-]
I drew a fish but I couldn't find it anywhere when it switched to the tank. Perhaps you could highlight the user's own fish, at least initially?
EDIT: Tried again and now I see there is a highlight, but it's pretty hard to see a in a busy tank, the color contrast is not very high
FredPret 175 days ago [-]
There are light yellow rays coming out of your particular fish
pimlottc 175 days ago [-]
I noticed that on the second time but it’s still not very easy to see against the light background
ge96 175 days ago [-]
Same I drew a mola mola, maybe the probably filtered it out (not fish enough)
rco8786 175 days ago [-]
Took me a sec but your fish has a yellow "glow" effect around it
lukevp 175 days ago [-]
Mine was highlighted with golden rays around it (like a cartoon sun)
sometimes_all 175 days ago [-]
I keep getting this error on both Safari and Firefox:
Edit: Never mind, I had to wait till the model loaded. Took some time though. Fun project nevertheless!
175 days ago [-]
hallak 175 days ago [-]
This is an issue that many are seeing, it has to do with how the model is loaded / how the submission logic works without it. I think I know the fix, but am currently getting slammed at my big boy job and so I can't fix it until I'm free in the evening ...
sometimes_all 175 days ago [-]
Absolutely no issues, I figured it out anyway. No stress on this, big boy job way more important :)
MikeHartman 175 days ago [-]
Fun, but really frustrating to spend a ton of time making a detailed fish, get a fish probability of 67.2%, submit it successfully with no note about it needing moderation, and it still never shows up.
And I don't mean "I never noticed it show up in the public tank". I mean my profile says "8 fish created", but if I "view my fish" there are only two in the list. If I go to my default fish tank I see all 8, but if I click on one of the missing ones and try to add it to a different tank or vote on it I get "Failed to <do whatever>: Fish not found".
They exist but they don't exist. This isn't a tank, it's a window into purgatory.
AnonHP 175 days ago [-]
This doesn’t work for me on Firefox Focus on iOS, even with all the ad and tracker blocking disabled. Tapping on the make it swim button does nothing. I’m able to see the tank with the tank button though.
sapphicsnail 175 days ago [-]
Weird. Vanilla firefox on android works.
hinkley 175 days ago [-]
OP has a clear bias against angelfish.
catapart 175 days ago [-]
Drawing a catfish was pretty rough. Sometimes the little fins would make it be more fish-like, other times, they would make it less so.
I did manage to finally get one in there, but it looked more like a plane than a fish.
There used to be something like this at the Boston Museum of Science, where you created a fish (don’t remember if you drew it freehand and/or selected from different fish parts) and released it into the tank with other fish and predators.
salamanderman 175 days ago [-]
Nice, I got my upside down penis fish past the filter! Although, once it was swimming it did look very much like a fancy guppy. I don't think anyone would recognize it, but I still feel smug about "beating" the machine.
bluescrn 175 days ago [-]
It's OK at filtering out penises, next step is to filter out all the flags...
droidHZ 165 days ago [-]
It's so interesting. A large number of strange fish are swimming around.
whoamii 179 days ago [-]
As Bret would say, please stop drawing dead fish.
parpfish 175 days ago [-]
dead fish should float to the top of the tank, not fall to the bottom
evansjp 178 days ago [-]
Some of you are wayy too bored at work - some of these are too realistic
veidelis 175 days ago [-]
Does not work for me on desktop Firefox. When I press the "make it swim!" button, there's an error in console: "Uncaught (in promise) Error: Fish model not loaded"
F3nd0 175 days ago [-]
I could submit a fish on desktop Firefox, but apparently the fish died shortly thereafter. Voting is broken though.
EDIT: Nevermind! Now there's a problem uploading a fish, and the local aquarium is broken, so I can't view the previous one, either. It's a nice idea, but I really wish it worked better with Firefox (being on the web and all).
distalx 175 days ago [-]
This is fantastic, the leaderboard is really nice! It reminds me of Paper Planes.
My initial fish likelihood score was 7% and I couldn't get it past 12% without looking up what a fish looks like. I learned a lot about myself via this app, so thank you.
danesparza 175 days ago [-]
What a fun, whimsical idea. I love this.
Also: When you release something like this to the public, I'm amazed at how quickly humans race to the bottom. That bit can be awful to watch.
umvi 175 days ago [-]
> Frontend is HTML5 hosted on github pages, backend is Node.JS on GCP.
So this means it's doing CORS? Why not just have GCP serve everything?
exasperaited 175 days ago [-]
Kudos to the person who managed to sneak a tiny fish, in a fish tank, on a table, with a plant in a plant pot, past the detector.
Naracion 175 days ago [-]
I'm glad we've stopped drawing dead fish (beautiful talk by Bret Victor, 12 years ago): https://vimeo.com/64895205
This is my feeling of vibe coding this kind of stuff so far. It's never really good, it's just kind of acceptable because it was vibe codeded.
The way the fish are stretched where they gets sliced into bands is not something I think most humans would generally choose to do. With a few characters of code change you could at least stretch each column so it scales to the next column.
I know vibe coding will continue to get better. There's a bunch of people at my work that have a vibe-coding chat where they show off their latest creation. Most of them they'd done in Gemini Canvas. The prompts are usually 1 or 2 paragraphs like "Make a 3d tower defense game with joypad input where you move a character using the joypad and can place towers by pressing the button. ....." And it spits out a working game but it's only interesting because it was vibe coded, not because the game is actually in any-way-shape-or-form interesting, good, pretty.
Also, I appreciate that this game had a fish recognizer but I also found it super scary. I tried to make to make a sunfish and it was like "not a fish". I don't want bad AI judging what is and isn't acceptable.
Jemmeh 175 days ago [-]
This is so cool!
I did just about spit out of coffee reading the words vibe coded fish tinder though. But a smart thing to implement.
michaelmior 175 days ago [-]
Locally we have the National Museum of Play. One of the exhibits right near the entrance is a virtual aquarium where you can color in a picture of a fish. Then you take it to a scanner and press a button and your fish starts swimming in a huge screen that serves as a virtual aquarium.
lwansbrough 175 days ago [-]
Show me a tank of the leaderboard fish!
pamelafox 175 days ago [-]
This is my favorite thing today! I only saw one penis fish (with the penis nestled inside the face, as a facial feature of sorts). That's pretty good for a drawing app on the internet, well done! I've given up on running public apps that accept user contributions.
hajrice 175 days ago [-]
Would love to hear more info on how you actually vibe coded this as the fishbowl seems incredibly cool
rendall 175 days ago [-]
I drew a 100% fish but it was classed only 58% a fish.
This is the same thing I did when going to teamLab Borderless in Japan, very cool.
ash_091 175 days ago [-]
I recently went to an aquarium in Exmouth, Western Australia, which had a giant wall mounted display with a tablet which allowed kids (of all ages!) to draw a fish and "release" it into the tank.
mehphp 175 days ago [-]
I’m so bad at drawing it only had a 46% confidence level that it was a fish
susiecambria 175 days ago [-]
I realized that my drawn with a mouse fish looks a lot like the fish quilt block I made. Neither were very good. But I enjoyed making them both :-)
Now to share with my grandkids.
drzzhan 179 days ago [-]
This is so fun. I wonder if there is a similar page for other animals,
Waterluvian 175 days ago [-]
I love that the common styles of fish are a function of what tools people were given.
For example, if a fill tool was available I bet we would see far far fewer hollow fish.
tgtweak 175 days ago [-]
I love how it immediately became a meta game of how large of a phallus you can get on your fish while still maintaining an acceptable fish-like score.
edit - my beautiful Esox Pinilis was culled from the UGC ocean by whoever is manually moderating this :D
dgrin91 175 days ago [-]
Very fun. My only suggestion would be a small highlight when you submit your fish so you can easily see which fish is yours - at least for a few seconds.
neogodless 175 days ago [-]
Mine was showing a highlight in Firefox on Windows 11. Subtle "sun rays" around my fish.
mbrd 175 days ago [-]
My fish had a highlight. It looked like rays of light emanating from the fish
ohitsdom 175 days ago [-]
This happened for me, yellow/gold flashy lines around my fish. Maybe you missed it?
littlekey 175 days ago [-]
Very cool! NN seems too focused on precision over recall (not allowing enough false positives) but trying to get stuff past it is also part of the fun.
rl_for_energy 175 days ago [-]
There’s a museum in Tokyo that has this but for physically drawn fish and is then projected on a large wall. Cool to see a digital version
dangwu 175 days ago [-]
This was my first thought. It’s called Sketch Ocean and it’s in a teamLab experience!
tuesdaynight 175 days ago [-]
I love these kind of websites. After finishing my drawing, I spent way more time than I expected looking through other people drawings.
175 days ago [-]
mfalcon 175 days ago [-]
I know you tried to hack it the same way as I did.
_Algernon_ 174 days ago [-]
Fun to try to draw a fish that passes the looks like a fish test, while having as many penis-like features as possible.
parpfish 175 days ago [-]
you can upvote your own fish as much as you want
Lewton 175 days ago [-]
I'm hard stuck on fish probability 59% fml
exabrial 175 days ago [-]
Well the first thing I did was submit a good ole CNB (use your imagination) and it put it under review.... so nice job hah!
haolez 175 days ago [-]
No obscene fishes observed. Well done! :)
mosburger 175 days ago [-]
i love frivolous stuff like this. it's art that reminds me of the internet's early days, well done.
blindstitch 175 days ago [-]
Please approve my anglerfish. Thank you.
rtpc 175 days ago [-]
My eel didn't qualify as a fish :(
webstrand 175 days ago [-]
Neither did mine, only 6.5%, they're the best fish though.
techterrier 175 days ago [-]
its got nazi fish (one with a swastika on it) in the tank already, hooray for the internet
andrewstuart 175 days ago [-]
This is what the internet should be all about.
Now, make a man and we will make him adventure in the forest?
debrisapron 175 days ago [-]
If vibe coding means more silly fish-drawing apps in the world then I’m 100% for it.
Timsky 175 days ago [-]
Tell me why my fish just died!? Just went through a little loss and now feel sad
Taek 175 days ago [-]
It only shows the most recent 50 fish. Your fish got bumped by a newer fish.
rezmason 175 days ago [-]
How do I eat the other fish?
flufluflufluffy 175 days ago [-]
This is the only type of thing people should actually vibe code. I love it
mads_quist 175 days ago [-]
Very nice work. You could improve the tank rendering performance though...
stockhorn 175 days ago [-]
"Built with hate"...?
Too bad. Love the rest of the project.
arealaccount 175 days ago [-]
In firefox I'm able to vote for the same fish over and over.
countfeng 175 days ago [-]
I can't find the fish l drew swimming there
lurk2 175 days ago [-]
I wasn't able to submit one, either.
ArcaneMoose 175 days ago [-]
Asking ChatGPT Agent to try doing this is hilarious
constantinum 175 days ago [-]
Reminds me of Team Lab Borderless in Tokyo, Japan
sw030695 173 days ago [-]
It looks like this has been hijacked by some edgy online communities.
Is there some sort of overlap between HN and cesspits like 4chan? Or did this get posted elsewhere?
hallak 173 days ago [-]
Unfortunately got posted to some heinous websites... and I made the mistake of using a very simple username and password that's been leaked 100 times for my admin account. I was going to "change it later"...
Anyway, working on the rollback now. A nice guy from here reached out and reported some small vulns I involuntarily committed.
tantalor 175 days ago [-]
Getting that fishmax is really hard, any tips?
nothinghere789 175 days ago [-]
is it normal to expose API key and App ID on Github? I don't use firebase but figured I should ask
needleballista 174 days ago [-]
API key and APP ID are not private for firebase :) They are for IDENTITY not AUTH.
hi kiwifarms is drawing offensive images please ban them
sorrythanks 175 days ago [-]
Start drawing live fish
DerPozilist 175 days ago [-]
sorry, i accidentally broke it by giving 500 in the url-param
tamimio 175 days ago [-]
Cool, just made nemo!
camillomiller 175 days ago [-]
I saw my fish die :(
bix6 175 days ago [-]
10/10 love it!
Feathercrown 175 days ago [-]
No mobile support?
hallak 175 days ago [-]
There is mobile support... but it currently loads a 40mb model which doesn't work so great in a lot of places where you will use a phone. I meant to allow you to submit anyway, but I didn't test enough. Sorry...
BaseBaal 175 days ago [-]
Didn't work for me either, android/waterfox :(
indigodaddy 175 days ago [-]
This is ingenious
doriancodes 175 days ago [-]
that's so random and fun! I love it!
introvert1622 175 days ago [-]
Great project!
bravesoul2 175 days ago [-]
Great capcha!
HereIGoAgain 174 days ago [-]
Cool
cancerboi 175 days ago [-]
I waited for my fish. But it never came. Made me sad.
unregistereddev 175 days ago [-]
It turns out there are two filters; the fishiness as determined by the UI layer must be separate from the content moderation filters on the backend. I've also had a couple fish that the UI thought were acceptable but the backend (rightfully) disappeared into the void.
shutupnerd0000 175 days ago [-]
Now I want to see the adult version of this project: same thing with no CNN.
Inundate me with penises and swastikas!
curiouser3 175 days ago [-]
RS HN crossover didn't expect to see this lol
fHr 175 days ago [-]
omg best shit that happened in 2025 yet, well done
Top ranked fish has score 248k, 324k likes.
Second has score 8k, 8k likes.
All other submissions have score approximately equal to number of likes.
Is the first submission legit or the result of hackers?
lurk2 175 days ago [-]
> The phrase (From the River to the Sea) and its variations have been used both by Palestinians and Israelis to mean that the area should consist of one state.
This constitutes advocating for a second holocaust?
Rendered at 21:47:01 GMT+0000 (Coordinated Universal Time) with Vercel.
1. https://drawafish.com/rank.html?userId=1753510318634_cdeh6a4...
https://drawafish.com/tank.html?capacity=55&sort=popular also don't sleep on that one
Semi relevant Silicon Valley clip (maybe nsfw, language)
https://www.youtube.com/watch?v=ACmydtFDTGs
sigh
5 -> five, english -> English (we are not Germans who insist on all nouns be capitalised but why not try it for a proper noun), novel -> diatribe. Possible missing ellipsis.
I speak roughly seven languages really badly and can fail to apologise properly in several others.
https://www.evanmiller.org/how-not-to-sort-by-average-rating...
Worked out the box didn't think twice of it
Good point though as the site doesnt follow responsive design patterns
Really nice toy!
Please fix it.
Edit: these down-votes are going down by the 100s or so, someone is really bullish to have "RiverToSea" fish down-voted. Ironically, the "RiverToSea" fish was made by someone who named himself "f**k palestine".
[1] After refresh, you can continue voting till you reach the limit, which is problematic.
> I built a basic CNN trained against penises
After seeing it in action, my second thought (first was just watching my fish) was that I was amazed at the good behavior of the users because I would have expected a lot of penises floating around. Now I understand. Nicely done!
1. 95% of people will not be trying to draw penises
2. 5% penises by volume is a lot of penises
I think it’s just human nature that that’s the first thing you try to draw on any online whiteboard.
(sorry)
I don't think so, he said "long" lol
Edit: And a lot of Palestinian flags when sorting by popular.
My pet theory (that I don't sincerely believe) is that this was deliberate to help smooth a hypothetical acquisition by Alphabet, before they were bought by Salesforce.
To be clear, this combination is a tetradic palete on a color wheel. Color theory and simplified logo trends make this coincidence much more likely than it would initially appear. Still funny.
35% for this masterpiece? Rigged
With this she clearly just wanted to do the standard stick fish shape, but it turns out she only knows how to do it facing left. Facing left, looks typical, facing right, almost a figure 8. So after like 6 attempts being judged by the computer she's getting frustrated, and I'm like how about this, turn the phone upside down to have her draw facing left. But now she can't do it left either!
And then I think when she consciously thinks about it - trying to do it the opposite way, or later the normal way after being judged repeatedly - she can't make the motion that way. But I bet if she was just thinking of the shape and trying to draw that shape it would be zero issue.
At least on Firefox/Mac, sometimes while dragging it "picks up" the image to drag it. This should prevent that.
The code shows it... Your escaping routine seems OK, but you really __should not__ be building HTML and JS(!) using raw string interpolation. Or letting the client decide whether the submission needs moderation.
There's a very slightly different model in the backend that sends things to the mod queue. Strings are also sanitized there. But copilot really wanted to add all that logic to the frontend too and I thought it was funny
(jk)
This is definitely a drawback with with vibe-coding. I never really write like HTML5 style code - at work I always use typescript with heavy ESLint, so never have to worry about this.
I figured the string sanitization in the backend would take care of any XSS vulns, which was my main concern. But I will have to read into the dangers of string interpolation which I admit I do not remember too much about (outside of the XSS stuff I tried to mitigate).
Thanks for giving the opportunity to learn... :)
I love that this is becoming a meme, haha. Thanks for the laugh.
When you set element.textContent = someUserGeneratedContent, the browser guarantees that the user-generated content will never be parsed as HTML.
response.write("<div>" + sanitize(someUserGeneratedContent) + "</div>") has no such guarantee.
They have it in several other places.
6.3%??????
From the description
Isn't this how some Lego MMO died? They spent too many resources on "moderation" and too few on the actual game.
If you post that more proeminently, maybe you'll get a bunch of kids on summer holidays finding ways to make penises pass your filter...
https://monosnap.com/file/uD9n2bXCODCLwthVwdKXdGleogXuJ6
Small changes if make: - Change the background colour of the drawing canvas to match the water background - Add fill tool? So folks can color this fish white? Bonus points if you automatically color the inside part of the fish white - Fix the discontinuity of how the fish swim by stretching the pixels of the fish that you draw
EDIT: Tried again and now I see there is a highlight, but it's pretty hard to see a in a busy tank, the color contrast is not very high
Uncaught (in promise) Error: Fish model not loaded verifyFishDoodle https://drawafish.com/src/js/app.js:514 <anonymous> https://drawafish.com/src/js/app.js:170 EventListener.handleEvent* https://drawafish.com/src/js/app.js:168
Edit: Never mind, I had to wait till the model loaded. Took some time though. Fun project nevertheless!
And I don't mean "I never noticed it show up in the public tank". I mean my profile says "8 fish created", but if I "view my fish" there are only two in the list. If I go to my default fish tank I see all 8, but if I click on one of the missing ones and try to add it to a different tank or vote on it I get "Failed to <do whatever>: Fish not found".
They exist but they don't exist. This isn't a tank, it's a window into purgatory.
I did manage to finally get one in there, but it looked more like a plane than a fish.
[1] https://www.youtube.com/watch?v=tWwCK95X6go&ab_channel=Felix
Love the simplicity of this.
EDIT: Nevermind! Now there's a problem uploading a fish, and the local aquarium is broken, so I can't view the previous one, either. It's a nice idea, but I really wish it worked better with Firefox (being on the web and all).
https://paperplanes.world/
Also: When you release something like this to the public, I'm amazed at how quickly humans race to the bottom. That bit can be awful to watch.
So this means it's doing CORS? Why not just have GCP serve everything?
Also inspired by that: https://drawdeadfish.com/
This is my feeling of vibe coding this kind of stuff so far. It's never really good, it's just kind of acceptable because it was vibe codeded.
The way the fish are stretched where they gets sliced into bands is not something I think most humans would generally choose to do. With a few characters of code change you could at least stretch each column so it scales to the next column.
I know vibe coding will continue to get better. There's a bunch of people at my work that have a vibe-coding chat where they show off their latest creation. Most of them they'd done in Gemini Canvas. The prompts are usually 1 or 2 paragraphs like "Make a 3d tower defense game with joypad input where you move a character using the joypad and can place towers by pressing the button. ....." And it spits out a working game but it's only interesting because it was vibe coded, not because the game is actually in any-way-shape-or-form interesting, good, pretty.
Also, I appreciate that this game had a fish recognizer but I also found it super scary. I tried to make to make a sunfish and it was like "not a fish". I don't want bad AI judging what is and isn't acceptable.
I did just about spit out of coffee reading the words vibe coded fish tinder though. But a smart thing to implement.
https://drawafish.com/rank.html?userId=1754072603630_i0f8iw6...
Fun idea, fun site!
Now to share with my grandkids.
For example, if a fill tool was available I bet we would see far far fewer hollow fish.
edit - my beautiful Esox Pinilis was culled from the UGC ocean by whoever is manually moderating this :D
Now, make a man and we will make him adventure in the forest?
Is there some sort of overlap between HN and cesspits like 4chan? Or did this get posted elsewhere?
Anyway, working on the rollback now. A nice guy from here reached out and reported some small vulns I involuntarily committed.
https://firebase.google.com/docs/projects/api-keys#faq-requi...
Fish or no fish
Inundate me with penises and swastikas!
https://www.theguardian.com/world/2023/oct/31/from-the-river...
All other submissions have score approximately equal to number of likes.
Is the first submission legit or the result of hackers?
This constitutes advocating for a second holocaust?