I hit a milestone in the rewrite's development today, and it now supports localisation! This means the site can be translated into other languages to help us welcome folks from around the world who aren't as fluent in English.
To help me decide on which languages, and in which order, I should work on getting translations done, I've put together a short survey. Fill it out if you have time!
Upload limits increased!
Since we've broken the first tier of goals on Patreon, the upload limits for the site have been increased!
The new limits are as follows:
I also tweaked the logic a little so it should be a bit more forgiving if you're close to the threshold.
Thank you for your support! The next tier will bring advanced blog analytics to all users. See previous staff posts for what that entails.
Community Update - Something Different
I've decided I'm going to try something different with the community updates - instead of just posting them on the 1st of the month, instead, I'm going to try and post them when I actually have something to say. This probably means more frequent ones, since, as you'll see in the rest of this post, it'll help me get feedback faster and iterate on it. Other times there might not be anything if I'm just tinkering behind the scenes. There's a few things I want to talk about in this one though, so let's start with news on the update.
Updated Update Timescale
The original plan was December 17th. Fortunately for my health, the Discord has collectively bullied me (read: making me realise I was stressing myself doing 18 hour days for something that doesn't actually pay the bills) into taking it easy, and not worrying about meeting the deadline. This probably is going to frustrate some people, but overall, it's for the best - I was struggling mentally with the pressure and, now I took a step back to think about things, I realised I was cutting a few corners. I still don't anticipate the update being too long now, but this gives me an opportunity to take my time do things right instead of skipping them, so the update is something I'll be happy with, and not kill myself in the process.
Blocking in 1.0
Another thing worth mentioning for 1.0 is that blocking will be removed in the update. This is not permanent, and it will be re-added in a subsequent update as soon as possible. Unfortunately, I've found significant flaws in the design, including some fairly serious exploits, that were borne from me just not expecting people to use the system as they are. These technical flaws are not repairable, so the entire system needs to be redesigned from scratch.
Over the last few days, I've also realised I've not really liked the direction the site is moving for the last year or so. To go back to the blocking stuff, it was never meant to be a first-line action, and was meant as a last resort, but isn't being used like that - simply unfollowing or using the tag blocking stuff was meant to be what you do first. I spoke about the harm aggressive blocking does a few months ago, so shan't reiterate it here. Clearly though, when there are some users who've blocked more blogs than users who actually logged in this week, something, somewhere, has gone wrong.
Anyway. The original aim of the site was to be somewhere this isn't needed, and for a time, it worked. But, over the last year or so, all the toxic behaviours from other sites have slowly crept in to Waterfall, making it Just Another Tumblr. I don't want the site to be Just Another Tumblr. The goal was to be somewere people can communicate, learn from each other, and share stuff as a community, with less focus on it being a personal space exclusively for any individual user - that's what sites like Wordpress are for. Waterfall, on the other hand, wants to build an active community and encourage people to be a part of it.
So, with that in mind, I'm getting down to the bare essentials and deciding which direction I want things to go in in future updates, after 1.0. The Discord is helping with this process, having little discussions to help me see different viewpoints and then doing little votes on stuff to cement the opinions (if you're not in there, do feel free to join and participate!) and decide how closely I want to emulate Tumblr in future development, and how much forging my own path I can do without pissing everyone off.
Rules and Tagging
The major thing we've discussed so far is some changes to how the rules should work going forward.
There's a delicate balance to be struck between what is and isn't allowed on a platform. Too permissive, and you get creeps. Too restrictive, and you barely get anyone. Right now, Waterfall leans on the side of too restrictive - as evidenced by the constant misinformation on other sites about what we do and don't allow. Many artists don't post here because they think their art isn't allowed, even if it actually is.
So, the new plan we came up with in the Discord - make the rules more permissive. Some things will still be outright banned - loli/shota, shock gore etc - but for the most part, other stuff will be allowed with one very big caveat - I'll be overhauling the tagging rules, and there'll be a HEAVY emphasis on making people tag stuff.
Before I explain the tagging stuff - yes, this means that some stuff on the site may be stuff you and I don't like with the new permissive ruleset. However, we need to realise that even if the site is the most technically impressive around, it's pointless if there's nobody actually using it. And right now, the content rules do drive a lot of people away, either through misinformation or just being too restrictive in some cases.
Now, tagging - anything that's a common trigger MUST be tagged under the new rules. Not tagging stuff results in punishment (with some generous forgiveness if it's a genuine mistake/oversight - only people deliberately evading tag rules will get punished). This is the best way to be permissive with content, while still allowing people to curate what they see using the blacklist system. It's also worth noting at this point - the blacklist system has received significant upgrades in 1.0, which is when this change takes effect. It won't matter if the person who reblogged it to your dash tagged it or not as long as the OP did. We'll also be moving to a strikes system for the rules instead of a "one and done" thing, though obviously I can still insta-ban if I need to.
I realise this is a change that'll piss folks who like the strictness off, but the short of it is the site can't survive if we stay too strict. Other sites that are more lenient will simply attract more users, even if those users don't post anything that'd break the existing rules - there's simply more people, more content, and more clarity there by virtue of the site allowing more. This will hopefully also solve the problem with people reporting furry blogs for bestiality, highschoolers talking about their partners as minors posting NSFW, or other unreasonable claims where someone is blatantly trying to just get rid of stuff from the site that they personally don't like (it's a bigger problem than you'd think). I'm also hoping the emphasis with the system on tagging more reliably will result in people using tag blacklisting more, instead of defaulting to a block.
Once again though - anything genuinely gross remains firmly banned, tagged or not.
Feel free to join the Discord to discuss, comment, or help with the next discussion!
As some of you might have heard by now, AO3 has gone down a very dark path as of late, alowing users to write and upload sexual content of real, underage people. This is a significantly different matter from allowing it of characters from anime and such, but, from what AO3 staff have said, it's sanctioned. (TW on those links for pedophilia).
So, I'm here to announce today an acceleration of my existing plans, and introduce you to Inkwell!
Inkwell is a writing site, in a similar vein to AO3, with a few core differences.
What kind of stuff can be posted on Inkwell?
Fiction and writing projects of all kinds, including essays, character analyses, chaarcter profiles for your OCs etc. Original works, not tied to any existing fandom, are very welcome!
What stuff can't be posted?
Sexual content involving characters aged under 18, or stuff involving real people. Anything else is a go.
How will it integrate with Waterfall?
The plan as of write now is that you can post writing on Inkwell, and then, if you want to, cross-post it to Waterfall using a fancy button on the site. Then, it'll make a nice, pre-formatted special kind of art post for you that links to the site. Partly because the Waterfall format isn't amazing for long-form writing, and partly because Inkwell can have some formatting options that WF can't support. This forms the writing upgrade to Art posts.
The slip in the first sentence wasn't intentional but I'm keeping it because it's funny
When will it be available?
I need a short break for a mental reset from WF, so I'm actively working on this right now. Beta could be up within a couple of days - Patrons (https://patreon.com/thellere hint hint) may get early access with everyone else being let in later, if they don't vote to release it to everyone immediately.
AO3 has started allowing people to upload sexual content involving real minors. I think we can agree we need somewhere else now.
Yes, this is another spite project, though it was also planned months ago.
When will it be available?
It'll be available for patrons to beta test in the nexrt few days. Once we've worked out the major bugs, it'll go public.
Will the site defend our right to write fanworks as much as AO3?
Yes. I'll do everything in my power to protect the users of the site and, if I am being pressured about a certain work, that user will be notified as soon as possible in private so we can work together on the matter.
What sort of features will it have?
If AO3 has it, Inkwell will have it. It'll just take a little time, especially the tagging system - but we will get there.
Feel free to hop in the Discord to discuss!
Community Update, Supplemental - 1.0 Deployment, Patch Notes, and Feature Requests
As I type this, we've hit the 32,500 user mark. A completely arbitrary milestone, but it feels good nonetheless!
There's a few things I want to talk about in this post. First up, Twitter has apparently released another garbage update.
As you know, Waterfall is a one-man show, so to help keep me on course, I've made an official place to request features and report bugs.
You can request anything you want there, but I would ask that you don't do bug reports until after the rewrite hits, since everything is being written from scratch anyway. You can, however, feel free to suggest ways of getting the site a bit more out there since people are very much correct when they say that there's not much interaction here at the minute and I want to improve that, both in terms of what you can do on the site itself and getting people to know about it. You can use thumbs up and down reactions to help me see what's good and not a bit easier.
Most stuff suggested now will be targeted for 1.1 onwards, though if something is put in there that I'm already doing for 1.0 I'll mark it appropriately so you know what's coming. Feel free to discuss the open issues as well! The more discussion there is on something the faster it'll be implemented, and I'm more likely to get it right the first time as more people give their use cases for it to make sure I'm not misunderstanding what's requested.
1.0 Update, 1.1, and the app
It's been rough going, but it's starting to look like everything I wanted in 1.0 is going to be done in time! The site will be constantly under development as I find news ways of doing things or things worth adding, but this is the big one where I'm happy enough to say we're out of beta. Or, well, that I think there's enough here to make the site properly usable. Realistically it'll be in perpetual beta just because of how I do things, but that's not very marketable.
So, here's the tentative, subject to change schedule for how it'll go down.
This schedule is subject to change - I might find big, showstopping bugs that mean I need to take a bit longer to fix things. But the goal is - 17th December, no later than. I'll give a 24 hour warning when I'm ready.
And now, the changelog. This assumes everything I want in is done - it may be that a thing gets removed or tweaked if I have trouble with some of the would-be-nice stuff and they get bumped to 1.1, but as things stand now, this is the changelog.
Waterfall 1.0 Patch Notes
Changelog for Waterfall 1.0
Post additions are, as the name implies, optional addons for posts. They can be context dependent (for example, only showing comic mode settings when making an art post), and mix and matched as desired. More addons will be available in future.
Raven is a new module for Waterfall; the purpose of which is to handle image, audio and video transcoding. It's deployed as Version 1.0.
E.M.P is a new module for Waterfall; the purpose of which is to find and kill malicious or spammy bot accounts. It's deployed in this build as Version 0.1.
Huntress is a new module for Waterfall; the purpose of which is to assist with finding and protecting against bad users. She's deployed in this build as Version 0.1. Final decisions are all made by humans, and this is only a tool to help.
Blog Limit Lifted
Good news everyone!
As part of migrating to being entirely Patreon funded, there is no longer a limit on how many sideblogs you can have (well, technically, it's 999 at the minute, but who needs that many blogs?).
Those who've already purchased extra blog slots will be given something special when the rewrite launches, but going forward, there's no limit.
Note: This does not mean you're free to hoard URLs you have no intention of using or for trade, and anyone caught doing so will have them removed.
Commission Market 2.0
As most artists have probably heard by now, DeviantArt is being anti-artist again, which is pretty interesting considering what their site is. Given Waterfall's whole existence is spiting one site, why not spite another in the same stroke?
Below is a copy paste from the Twitter thread.
So - The Commission Market might be dead in its current form, but after seeing how terrible DA is doing things, I'll be redesigning and rewriting it from scratch. This time, I'll be taking a different approach.
First, the fees - the old CM took 5% as a sort of insurance policy for you. The basic idea: We'd pay for any chargebacks out of pocket, and have a nice, fancy place where you could hash out all the terms of what was going on.
Ultimately, this was pointless - a few people bypassed it and when they didn't, we only got cents anyway. While it saved a few people's asses, it was hard to get set up with the payment processor and Waterfall itself only got something like 3 cents anyway. Not worth the effort. So, in the relaunch of the CM, we'll ditch that.
Instead, you can use whatever payment processor you want, and you'll be able to offer whatever you want too. Adopts, bases, knitted woolen blankets, whatever. Make your listing, add your tags, and let folks filter down to see what they want. Easy.
There won't be any fees for this, per se, though most people are in agreement that I should probably make it so you at least have to be a patron to have a listing on there. That'd be $1 a month, if I don't decide to make it completely public for free.
Regardless, I want to finish the rewrite of the core site for now - so this'll be January, February time most likely, so I can get it all done properly. Artists are VERY welcome to give feature requests in the meantime.
Hop in the Discord to request features!
Community Update - November 2020
Pigeons aren't real
As of writing, we have 32,389 users, 52,272 blogs, and 430,312 posts.
A little early this month, I know - but there's some stuff to go over.
There's some big stuff to talk about this month, of varying levels of subjective good-ness. We'll start with the major one.
Waterfall is now a personal project again.
Nearly two years ago, I started Waterfall on a whim, trying to prove a point. After a while, I realised things were getting bigger than I anticipated, and folded it into my company, a game dev studio. On reflection, there wasn't really a need. It made finances hard to keep track of, and 99.999% of the code here is still written solely by me, as you can see in this fun little visualisation of the git commit history.
With that in mind, I decided to remove Waterfall from the company's control, and move it back to being a personal project again. There's a few reasons - as said above, money got harder to keep track of, but also, some people assumed that there was a Yahoo sized corporation backing the site and used that as somewhat of an excuse for various things (more on that below), and assumed there was a full team working on the site. It isn't, there never was, and the new status hopefully makes that clearer.
This doesn't change much in the long term - I can take a more relaxed development pace, and money now goes directly towards supporting me as an individual working on this and my other projects. The Patreon has been updated accordingly, and both the Discord and the Patreon page will have info added about my other projects over the next few days to make them less... corporate.
It also means subscriptions will be deprecated in favour of global rewards as my income increases. How this interacts with KS backers is TBD, but don't worry, you'll get something. More on this in a supplemental update in a day or two.
Intermission: The rewrite
It proceeds apace. The text editor is finished, Raven is finished, and I've mapped out the infrastructure. I now just need to do the boring part of writing all the website code and the new blog renderer.
Back to where we were.
The main major impact this change has is the CM needs to shut down. The licences involved are in the company's name, which don't apply to me, so they'd need to be renewed before the CM can come back up. If they are renewed, it certainly won't be before the next update.
We're now getting into the less good-ness part of the post that'll go under the cut, where I explain why I'm reluctant to renew those licences.
I was dealing with a dispute the other day and realised I couldn't find the payment info in our control panel. After reading the message history of the commission, I found out why - the artist had told the person to pay their personal PayPal instead of going through the one built into the site.
In this instance, both parties were banned - moving payments offsite is a pretty clear violation of the rules of the CM, and completely negates the point of it, and the buyer was making a false claim anyway. The point here is there's a record, that the site can back up, that the payment happened, and the client got exactly what they want. Waterfall took a very small fee for this service. 5%, which includes the payment processor fees. Our average take per commission was a matter of cents.
You can see then why I'm a little annoyed then that, after getting curious and investigating, I found that just over 80% of commissions had the artists moving payment offsite, leaving Waterfall with all the risk of dealing with disputes and getting nothing in reward (as far as you can consider 7 cents on a $10 commission a "reward" ).
I'd also like to shout out the one artist who's made over $500 from the CM while dodging the security features. Ironically, the $25 you'd have lost from letting the site have it is less than you've lost in your PayPal fees, so gg;wp.
In short, the takings for the year for the site from the CM are $18. After checking how many dodged our payment system and tallying up the prices and percetnages, the site should have made $112 or so.
And here's the rub - the license for the CM costs $450 a year, going up as we get more users. If we'd made the $112, I'd have shrugged to myself and thought that was fine - it was the first year, it'd grow over time. That would have been an investment I was willing to make. However, we ended up wth $18 due to malicious artists.
I use the term "malicious" very deliberately here. There is no "ignorance" defence here - many of the artists explicitly stated they didn't want the site to get a cut, even if it was just a few cents. That is, unequivocably, malice. It also puts me between a rock and a hard place. The TOS clearly says this is a site ban. But if I did, I'd be killing a lot of content on the site. Given the financial implications, the only option that makes sense is to shut the CM down. Is this an "a few are ruining it for everyone" scenario? Yeah, basically. But I don't really know how else to go about this. Those artists who used the CM properly and chose to actually support my efforts in creating it for you - thank you, that actually means a lot.
I think there does need to be a discussion had about what exaclty "support small and independent creators!!" means when it's retweeted so often. Especially when something like the CM was asked for so often by so many artists and buyers, and how many horror stories there are about PayPal and commissioners scamming, so this really feels like a slap in the face. Do you really mean "suppport me" and we just need some pretense dropping? I feel like that's likely the case, since artists on Twitter make themselves out to be a small, independent creator whether they have 28 followers or 100,000 with two published art books and working on a game. There's a lot that could be said on this subject, but I think enough people are wising up that it doesn't need to be gotten into in this already long section.
So, for now - the CM is dead. It may return in future, but for now, people need to decide whether it's something they actually want. And for some of the artists - a little introspection, perhaps.
Comments and questions are of course welcome in helping me chart the course of the CM and whether it stays dead or not.
Do you ever feel fatigued and feel like you've not gotten anything done?
I remembered reading about a neat tool a while back called Gource (https://gource.io) and decided to run it against the currently live version of Waterfall's code.
The result was a fun little animated thing that shows the progress over some of the last two years. One day is about three seconds.
This video represents only the source code changes to Waterfall. It excludes everything not included in the Git repository (i.e. files and folders specified in the .gitignore file), so represents only code written by me or another staff member. Directory labels have been scrubbed for clarity, but you'll see three main branches - these correspond to the Core site, Blogs, and Common files shared between them. A little later on you see a smaller branch for the webhooks API used for payments and the commission market.
Some notes - this doesn't actually go back to the start of Waterfall's development. It wasn't until a few months in that I realised "hey, this is actually a serious project now, I should treat it like one" and set up Git. You'll also notice it tops out at March 2020 - that's roughly when development focus shifted properly towards Raven, the rewrite, and the other new stuff that I'm hoping to get out before the end of the year.
You can figure out my total lack of sleep schedule from this if you try!
We'll be doing server maintenance in 50 minutes to try and solve some problems, so the site will be down for the duration while we figure it out. Sorry for the inconvenience!
There'll be a downtime at 6pm UK time today for server maintenance. We don't expect it to take long, but join the Discord for updates just in case!
Welcome to all our new users!
You've come at a great time for the site, with major updates around the corner.
We realise things are barebones right now, but we hope you like the place enough to stick around and see what's coming! Feel free to hop into the Discord (the best way to see what's coming soon and get a chance to test it!) or follow us on Twitter and we'll do our best to help you with any trouble or questions you might have.
In the meantime, enjoy your stay!
Community Update - October 2020
As of writing, we have 32,192 users, 52,051 blogs, and 418,334 posts.
Bit of a change this month - while last month was entirely code, this month has been spent doing code and research into how various bits of the site are doing.
Additionally, one breaking change is coming - when this update hits, we will officially be dropping support for Internet Explorer, and will not be attempting or offering any support for bugs discovered while using that browser. This doesn't necesarily mean the site won't work in it - but Internet Explorer is outdated and officially end of lifed by Microsoft, so you really should upgrade to a modern browser if you still use it. My recommendation is Firefox - it's lightweight, privacy focused, and doesn't transmit all your data to Google like Chrome does.
So - since last month people said that actually, they are interested in getting into the lower level, technical stuff around the infrastructure and policy decisions of the site, this month you get a longer post going into some of that. I'll also be taking this opportunity to answer a few questions that come up every so often, since I assume that means more people are interested than are asking. I'll hold some stuff back for next month. Oh, final note - still on track for the update being launched in December.
All this stuff will be going under a readmore with a table of contents just above it.
So, let's go!
We're probably not calling the new text editor Writer's Block.
But, since everyone hates the current one and, frankly, the licencing conditions for it aren't great, I've wanted to build our own for quite a while. I'm happy to announce that we finally have one.
This screenshot is a prototype, and there's still all the styling work to be done. Bear that in mind.
Our Kickstarter backers were given a live preview and report that, so far, it seems to work very well on mobile too.
Right off the bat, you'll notice you'll have more formatting options available to you. These will be extended - you're likely familiar with markdown, it's the thing Discord uses for its text formatting. We're working on a custom implementation that, eventually, will add support for colours and some other fancy formatting. Both the text editor and the Falldown parser will be open sourced, so that anyone can contribute to improving them.
Accessibility - Fonts and Image IDs
Something that's been largely neglected so far is the accessibility of the site. That's on me, and is largely a symptom of trying to do too much at once. It's also something I need to take seriously if I want Waterfall to grow. Given I'm about to rewrite the UI from scratch anyway, this is the perfect time to make that happen. While I'm not an expert in accessibility - I'll be bringing someone in who is to tell me what a bad job I've done so far - there are three things that are going to be addressed.
First, font sizes. They're going to be made configurable without messing with browser zoom. This may be a per-device setting, or iit may be a global account one - implementation details will dictate which I end up going with.
Secondly, something that's been requested a lot is the option for a dyslexia friendly font. I've been looking around and found two promising options. Dyslexie is the one that commonly gets suggested, but the licencing terms for that are unfriendly and we have to pay by both the staff member and, as a website, by the visitor, so that's out. Instead, we'll be going with OpenDyslexic for now, and possibly forking it to add in any missing glyphs we encounter as the site grows. This will be a toggleable option in user settings.
Third, I noticed a lot of people putting Image ID stuff in reblogs and under images and such. I'd never really seen them before but it didn't take long to figure out that actually, those are a great idea, so I'll be building native support for those into the site. The image editor is being overhauled anyway, so support for regular image captions was planned already. Now, it just has Image ID support too. While we can't force artists and image uploaders to use the feature, we do highly recommend it. As with the font, viewing image IDs will be a toggleable option.
Image Formats - WebP is the future
WebP has been a thing for years now. It's better than PNG, it's better than GIF. Why hasn't it taken off? Apple is why it hasn't taken off. They're the only major browser to not support it (edit while proofreading: apparently they do now. But only for some people).
The only real limitation of it is the image size - it can't exceed 16,383 pixels on either dimension. This is unlikely to be too much of a problem, but it's something we had to bear in mind - as such, with the update, images will be limited to 8,192 pixels on any dimension. We don't anticipate many being bigger than that, but we think that's the sweet spot for any hyper-detailed artists to still be able to get their stuff in a high quality format.
When the update hits, image transcoding will finally be a thing, meaning image sizes can be shrunk a little bit. Ideally, we'd be going WebP only - but, thanks to Apple... WebP supports both static and animated images, at a significantly lower file size. When testing, a GIF file we used started at 5.7MB, and, once converted to WebP by our encoder, came out at only 628KB with no loss in perceptual quality. When testing with a 16,000 x 8,000 pixel PNG file, it shrank from 478MB (yes, megabytes) down to 8.7MB. Obviously, WebP is a good idea.
However, not all browsers support it yet. According to CanIUse's page for WebP, support is at only 80% coverage, and Apple have decided to artificially restrict the version of Safari that will support it to only supporting it on the latest Macs for... some reason. Unfortunately this probably means that support on iPhones will be similarly artificially constrained. All these factors combined means that we'll be keeping both WebP and legacy (hereby defined as GIF and PNG) copies of images for the foreseeable future. If your browser supports WebP - awesome, you'll get the WebP version. If not, you'll get the bandwidth sucking legacy formats instead.
You can expect this to be a trend going forward - I hate the idea of constraining Waterfall to using legacy technology, so as new stuff becomes widely available and we've tested it, we will start using it and, eventually, phase the older stuff out, since for reasons outlined below, supporting 1% of the population who can't use the more modern stuff is a resource drain we can't realistically handle.
For now, it'll be a couple of years (most likely - if the support matrix changes to a high enough usage, it may be earlier) before support for PNG and GIF are dropped, and our converter will continue creating those formats. We'll give plenty of notice before we finally drop them too. AVIF recently launched, we'll likely add support for that when we drop PNG and GIF. Similar with x264 - it's a legacy format now, but not enough support for the technology we want to use (in fact, here it's worse - there's been VP8, VP9, and now AV1 whereas regular images haven't advanced as quickly. We're ignoring HEVC since that's patent encumbered and basically nothing supports it. VP9 has about the same support level as WebM currently, and AV1 sits at around 30% - unfortunately, video is a lot costlier to store than images, so we have to stick with one format for now) is available yet. It's an incredibly frustrating scenario as both a developer and the one who has to pay for the storage space to keep all this.In an ideal world, we could just drop the old formats immediately, but we aren't in an ideal world.
How does Waterfall make money?
Alternative title: How do we plan to make money going forward?
Right now, 90% of the income Waterfall itself brings in is from the Patreon, sitting at $80 a month. The other 10% is from blog slots and commission market fees. Yeah, it's not much, we know, we're still very much in the "passion project" phase of the site and likely will be for a while longer.
The rest of the company's income is largely made up of a couple of other small sites and freelance work (the latter being the vast majority of what pays our bills). Additionally, we're game devs, so we're working on a project there too. The games subsidise Waterfall, and Waterfall subsidises the games.
Going forward, I'm committed to one thing in particular - fierce independence. I don't want shareholders or stock options or an IPO or whatever. I want Waterfall funded by the community, not advertisers. This, obviously, makes things a bit difficult, since most sites sell out fairly quickly to that stuff. To understand how I want us to work going forward, you need to remember the plan I laid out last year - to make Waterfall a collective of sites rather than just one.
That's where the subscriptions come in. From the beginning, the idea was one subscription across the entire network, however large that ends up being. Three sites or three hundred, your single $10 subscription gets you the bonus features across all of them, no double-dipping, no "oh but you subscribed to Glacier, not Waterfall Social" or any other crap like that. There'll always be some people who adamantly refuse to pay a penny, but the goal here is basically to make subscriptions give you so much for your money that from a sense of pure practicality, it's just worth it. Whether we'll succeed or not remains to be seen.
Something we're actually getting rid of that makes us money is blog slots. I've always felt weird about them to begin with and they're not a huge seller, so the limitation will be lifted in the update. People who hoard URLs will still have them nuked, obviously, but I think we're outgrowing that kind of restriction now. Anyone who's bought blog slots already will be given a free subscription, rounded up to the nearest number of months it'd cover.
We're also doubling down on the commission market. It's been in alpha for a year and we've had some reasonbly good feedback so far, so that too is getting a total rewrite. New payment options, new search options, one-and-done templates, adoptables support, all being added. We'll reach out to some artists on the site soon asking if they want to help test it. Additionally, we'll be giving the fee structure another look - our bottom line didn't move much with the coronavirus special, so we're considering making that permanent even after the crisis has ended.
In addition to that, we're still looking at the patron subscription stuff to provide a safe space for artists of all kinds to offer exclusive work and have fans subscribe. As with the commission market, we'll take a small fee - likely less than Patreon - to help sustain it. Glacier's monetisation model is still up in the air.
Most of this relies on us building something good enough that people actively want to support it. Some people won't no matter what - I still remember our first hate mail about the commission market fee structure and that we shouldn't bother trying to offer protections - but ultimately, it feels the right balance of independence and incentive to make something good that it might work.
That's it for this month, see you in November!
There's a decent chance that, finally, I've fixed emails.
If you've not verified your email or you have a friend who forgot their password, now's the time to get in on it and see if I did!
Community Update - September 2020
In August, we...
As of writing, we have 32,029 users, 51,875 blogs, and 407,230 posts.
This month has been very busy in terms of code stuff, but also very boring. The most interesting stuff - we've finally finished the video transcoder, and it works very well! Uploaded videos will now have multiple qualities to choose from, which should help mobile users out a lot. This also, for those who've been keeping up, forms the basis of the video management software stack for Glacier. Currently, it's only producing two qualities, but is easily extendable to have more.
In other news, I made the decision to migrate to a new database stack. There are many reasons for this - mostly being performance and reliability - and there'll be a full post-mortem after the fact, since it'll be a long post. But, this is sort of the right timing to do it - we're doing an overhaul and getting it out of the way now is better than doing it later when it'll take so much longer to do. The only thing that DOESN'T seem to work is... avatars. Considering everything else is so overcomplicated compared to those, that's pretty hilarious actually.
These two things complete the trifecta of things we needed to get the new stuff running, and, as I type this post, a test run is happening on the dev server. If it works - amazing, I can get on with developing the core site, and you can expect performance to be a LOT better going forward.
Speaking of which - the spec for Waterfall 1.0 has been finalised. Assuming the test above passes, the next few days will be spent auditing the existing code and seeing which of the 183 open issues can be closed because the code is already there. I'm expecting a fair few to be closable since it's basically just a big list of everything on the site and that we wanted to add, and just needs powering through, effectively.
Sorry this one is so short - I'm not sure whether you guys would be interested in more technical posts or not. If you are, let me know in the comments and I'll do a supplemental!
Oh right, release date for the overhaul - I'm aiming for it being done by the second anniversary, on the 10th December. Or 17th if you want to go by the first ad post. Either way, that's my personal aim.
Community Update - August 2020
The bees are imminent
In July, we...
As of writing, we have 31,804 users, 51,610 blogs, and 396,653 posts.
There's a lot this month. We'll start with some Commission Market news - we finally got approved by PayPal, so it'll be an option going forward once the rewrite hits. We are considering removing Stripe entirely - users have reported some bad experiences that are shaking our faith in them, as well as being too complicated to use, so some feedback here would be great. Additionally, we've had a couple reports of them trying to make you use unexpected transaction methods - if you try and buy a blog slot or pay for a commission and get redirected to Apple or Google Pay, do not proceed with the transaction - hop in the Discord and let us know so we can figure it out.
To answer a concern that was brought up last month - using PayPal will not change the NSFW policy of the site. Business and partners have different rules from individuals, and Waterfall's existing content policy puts is well within the safe zone by all the interpretations and second opinions we got. If PayPal elects to go back on that, we'll simply look for another option or roll our own.
I needed a break this month because there's only one of me and mental fatigue is a little bitch, so I switched focus some to work on Springwater's blog analytics dashboard.
This is still a prototype (you can tell by the labelling) but even with the test data, I can already tell people will find this very useful, especially artists. I'll do a writeup next month about what's included, since at the minute I'm still surprising myself with what breakdowns I'm able to do with it.
I'm considering doing a mockup of the dashboard to see how it'd look with the stylesheet used there - certainly it'd look a bit more modern. You guys let me know what you think before I start?
Next up, I finally started work on a custom text editor. It's SO much better. Looks better, behaves better, and, since I accidentally backspaced when I finished writing this post and had to start over, it'll also save state so if your browser crashes or you acidentally leave you don't lose everything. I don't have screenshots of it since it's still effectively a glorified text box, but I do have screenshots of the new audio player.
There's still a few kinks to work out, mostly related to mobile, and I'm not sure whether we'll keep the visualisation there or not, but it works and I'm pleased. Album art support! It'll auto-populate with whatever ID3 tags the file has and then you can edit the picture, track name, artist etc. It'll also eventually have playlist support for musicians to use in art posts.
Final piece of UI news - we'll be adding a bunch of accessibility options. There'll be stuff like a colour blind mode, dyslexia mode, font size options etc. We'll run these by members of the community before launch to make sure we're covering the largest cross-section of users possible. They'll all be off by default, but users can pick and choose which ones they find useful and turn them on.
Oh, and something about how we've started working on chats too, but nobody cares about that.
Back on the backend, the main roadblock now is making posts.
In theory I could port it wholesale, but there's a few improvements I want to make in a couple of places, as well as fixing mentions code and whatever is happening with queue time calculations. Purely text based posts work, but file based posts need some more work, as well as link posts, because I'm just not happy with those at the minute.
That's all for now, so see you next month, and give the roadmap a look!
Community Update, Supplemental
With work going on behind the scenes, we thought it was time for two things we've been meaning to do for a while to come out.
We now have a public roadmap of features we're working on, and have planned for the future. The hope is that this communicates more effectively what we're doing behind the scenes during periods of silence, as well as let you know what to expect in the coming updates. Go have a look!
Now we have our internal API mostly working, it's time to consider a public API as well. This would allow for fun bots and fancyu additions made by you guys to do things that we either never considered or didn't feel were a good fit for the core site. If you're a developer, and you're interested in applying to be in the beta of the public API, join the Discord - the application process will be outlined there tonight! Get your ideas ready.
See you on the 1st for the regular update!
Community Update - July 2020
In June, we...
As of writing, we have 30,392 users, 50,095 blogs, and 383,159 posts.
This month was a bit slower due to some freelance work that took up a considerable chunk of time, but we're thrilled to announce that the new UI now has a fully functioning dashboard! This means one of three major hurdles are now cleared. The remaining two are overhauling the image uploading system, and building a new text editor. The ones we have right now are... fine, I guess, but that's it - they're not particularly good, just... fine. These two elements will be left till last - its perfectly valid to (and may be the case that we do) leave them as is in favour of getting the new UI out and start testing that without the added variables of weird new stuff that could also be breaking it. It actually makes sense to do it that way even - given the look of the UI isn't changing at all, other than being slightly more consistent with how it displays things, we'll know that any bugs are a logic error rather than a display error.
On the side, we've been looking at the CM. The biggest thing missing right now is stuff that I wanted to include from the beginning, in that artists can set templates up. The second biggest thing is getting PayPal support in some way. Both of these are making headway, but we're not quite ready to talk about those yet until details are finalised.
The next big thing is the art system. We've talked about the new anti-theft system for images we want, but that's a long way off yet - we don't have the budget for the specialised hardware we need. What we are doing though is preparing to extend art posts to cover writing as well, including an anti-theft implementation. There's a lot of work to do on it still, and we'll likely need to tinker with how it scores things a fair bit. However - with the advent of that system, we'll be having a dedicated mod in place, whos only moderation duties (barring emergencies) will be handling any issues the art/writing theft detection causes, or disputes over who wrote what. We'll be writing a more in-depth dev blog on the new writing tools soon. We've always wanted the art system to cover more than just images, and this is the first step towards that goal.
We'd also like to extend a welcome to the new users we got today coming from Tumblr after their latest update! We hope you enjoy your stay, and feel free to join the Discord to ask any questions you might have.
Apologies for the unplanned downtime this morning! We had to do some maintenance to prepare for the API rollout, and it took significantly longer than expected.
This is the first of two backend patches to prep for the overhaul. The second one will be done at the time of the rollout - retrofitting the existing site to handle the data structure changes would be, in effect, wasted work.
There's still a fair bit to do before then, but in the meantime, you should notice some performance improvements. Thanks for your patience!
Idk if everyone knows but I just thought I'd share that itch.io is having a massive bundle for BLM rn where all the profits are being donated to NAACP and the Community Bail Fund 50/50. It costs 5USD, but it encourages you donate 10USD. It's hit over 2M USD so far in funds.
It's got a ton of good stuff from games to songs to assets and some engines if y'all wanna check it out here.
Community Update - June 2020
In May, we...
As of writing, we have 30,105 users, 49,755 blogs, and 367,979 posts.
Most work right now is related to getting the new UI done. We're happy to report that we've gotten the first set of data from the site to display on there, signifying the first tangible progress, and frankly, giving a big morale boost. It's still ugly as sin, but real progress is being made now. 99% of code written so far is directly transferrable to the app versions too.
As a micellaneous site stat -the Commissions Market is now consistently handling an average of $100 of transaction volume a week. We're hoping that the reduced fees are helping those artists using it. We've also not had any bug reports for a while, which is excellent - we'll be keeping the Alpha label until we've figured out PayPal integration and written commissions though.
On a more serious note, things are a bit fucked at the minute. You can probably infer our stance if you used a calculator on the number at the beginning, but to be explicit on our stance - Waterfall is a safe space to discuss and organise. While we can't legally ignore any warrants or court orders, and so can't guarantee it's perfectly safe, we invite anyone who can make use of it to use Waterfall to post resources. If we DO recieve a warrant, we will fight it where we're able to do so. Our hope is that not being US-based makes it not worth their time to try and get us to comply.
Provided this line is present, Waterfall has not recieved or complied with any warrant in relation to the protests. Should this line not be present, assume we've been forced to hand information over.
While not in a position to protest directly ourselves, our lead dev is taking a break for a couple of days to work on software tools specifically to assist those protesting, but in the meantime, please feel free to use Waterfall for masterposts, or anything else - as a matter of policy, staff will not remove any posts, users, or blogs providing resources or organising protests.
If you are involved in protesting - please stay safe out there.
Community Update - May 2020
Cough and sneeze into your elbows!
In April, we...
As of writing, we have 29,657 users, 49,251 blogs, and 351,093 posts.
This month's shoutout goes to @dohz who is posting puzzles every week! Giving your brain a workout is essential to your mental health with the world as it is right now, so give it a go!
The first is the API stuff - at long last, we're in a position where we can start making it actually look like something. There's still some features missing, but everything relating to users and blog interactions is now tested, as is retrieving posts. Making posts still needs some work, since we're introducing a new post type, and I want to redesign the workflow to be a bit nicer on different post types.
Additionally, some improvements have been made along the way - for example, tag blocking now reads the tags of the OP as well for the purposes of both blocklists and NSFW checks. Code to get a tag history has been added, and on the technical side, the number of database calls has been halved. In lab conditions, getting my main blog's dashboard takes 67ms on average with the new system, compared to the current system's 180ms average. This is assuming the posts have been loaded by someone recently, however - if every post is new to the system that day, it takes an average of 130ms instead. Still an improvement! It also means less bandwidth usage for people.
Second of all - most of you are probably aware of stuff going down with the bisexual flag right now. Obviously, it's stupid, and the actual creator has declared the flag free to use by anyone. To that end, we've gone ahead and got off our asses to add pride flag badges, and are working on themes to go with some of them. Most badges are up - there's a couple (the most commonly requested being aro) that still need graphics making, but those'll be added within a few days. Themes are also being actively worked on by the design team while the programming team works their magic so they can do stuff for the new site, and we'll be adding those periodically too. So far, the trans pride theme is available, with the lesbian pride theme coming as soon as they stop crying long enough to fix my attrocious colouring abilities. NB pride will be next, followed by at a minimum, four others. It's likely not every flag will get its own theme purely because of time and resource constraints, but we're hoping we'll get most of them. The rewrite might provide facilities for you guys to fill in the rest of the blanks as well as other themes, we'll see how that goes.
We realise "Hey! We wrote code!" isn't super exciting, and it's a far cry from the old days where we were pushing updates and new features out every other day. Hopefully, with the app finally starting to take shape and the eldritch, spaghetti like horror of the code I wrote a year ago finally being turned into something approaching modern standards and being more manageable, those days will return again soon. In the meantime, thanks for sticking with us, and stay safe!
Welcome to all our new users! We hope you'll enjoy it here.
Waterfall is a small site, still in development, but the site should be pretty stable. Over the last 15 months we've grown from a site built for a handful of friends by one guy, to a site of almost 30,000 users and 50,000 blogs, and a staff of one developer, three community mods, and an infrastructure engineer. Hopefully, that carries on and we can keep growing.
Behind the scenes, we're doing a full rewrite of the site's code to get a mobile app out to you guys, which is where all our development effort is currently focused, but please let us know of any site-breaking bugs regardless! For a rough how-to on how things work, check out the Support blog, where we've put a few tutorials until we can develop a proper one. As a quick note - emails are currently inconsistent and may not be delivered. Don't worry, no functionality is locked by not verifying for now until we figure out the cause.
For the artists among you, use the "artists on waterfall" tag to start getting your work out there, it's the one the community checks most often. And please remember - the "nsfw" tag is mandatory on stuff that qualifies, even if your blog is flagged adult only!
If you have any questions or need help, feel free to join the Discord where we'll do our best to get you straightened out!
Art Theft 2.0 - Overhauling the Systemthellere
As far as I'm aware, no other site has an art theft prevention system. Waterfall's is the first, and I'm quite proud of it. However, it's an imperfect system, and I have some improvements I want to make to it.
Art Theft 1.0 - An Overview
Art Theft 1.0 (or, to be more accurate, the current version is 1.3 or so) is an extraordinarily simple piece of code. Unfortunately, extraordinarily simple means extraordinarily easy to defeat.
When a piece is marked as art, three things happen in order. First, the image is hashed to MD5. Then, a list of MD5s for all art uploaded that don't belong to the user uploading is retrieved, and the hash is checked against each one. Quick and painless.
MD5 is best described as a "signature" that can be applied to something to see if it's the same thing as something else. The problem is (while it's old and collision attacks have been demonstrated now), changing a single byte in the file results in a different MD5 signature.
This means that lazy thieves get caught, but anyone else doesn't. I've been thinking about this a lot over the last 6 months, and I think that - after the app is done - it's time to address these shortcomings.
Before I continue - while the system is easy to defeat, you'll still be banned if you crop out a watermark and upload it as your own thing.
Art Theft 2.0 - Rise of the Machines
The current system is instantaneous. You press upload, it tells you in a couple of seconds whether you're naughty or not. After a brief bit of thinking, I realised this cannot be the case with any sufficiently advanced system that can be called "decent". So first things first - when Art Theft 2.0 rolls out, there'll be two states to art posts. Unverfied, and verified. The main difference is that unverfied posts will just have a yellow icon instead of green for the art symbol in the corner of the header. If a post passes verification - no problem, nothing happens. If a post fails verification, it works the same way as it does now, it'll be silently converted into a reblog of the artist's original post. The major difference is that since there's a chance that post will be reblogged while it's awaiting verification, any reblogs of that post will need to be converted too. Luckily, the way the site stores post chains means this is not a problem at all.
While a post is in unverified state, the site will be running the process in the background. Let's go over what it'll be. It's SIGNIFICANTLY more complex that the current method, and requires some special hardware, so before the cutoff, I'm going to link our Patreon. Ordinarily it's hidden down in the site footer because we feel weird about taking money without giving anything in return (other than... the site I guess?) but the faster we get the hardware to run this (and the more of it), the faster we can improve things.
The first stage of the process will be to convert it into a grid. On each of these grids, an MD5 (or perhaps a SHA256) is generated. It'll then search for images where there's matching MD5s. In theory, there should never be any unless the image is a straight duplicate. This is the low hanging fruit part - it can stop the process if it finds a match here.
But what if we modify a square?
We drew a line in. That square now gets a different MD5. But, since collisions CAN happen - for example, if someone does a plain white background, or transparency, and whatever grid size we use ends up capturing fully transparent/white squares - that's enough to throw it off. So instead, it'll go off how many squares are the same. This is a good time to introduce confidence scoring.
If all but one square returns an MD5 match to an existing image, we can say pretty confidently it's a repost. Let's say 98% confident. The system will reclassify that post as stolen, and change it to a reblog.
But what about more complicated scenarios? The grid system isn't the only method we'll be using, and they're less clear cut. We need to assign a cutoff or two - how confident should the system be to act autonomously? If it's less confident, it should ask a mod to review it manually. At the same time, at some point, the system should be confident enough that it's not a repost that it doesn't bother us. We'll settle on 90% confidence for autonomous action and 20% confidence for not bothering us until we've refined the system. Now, let's go over the other methods we'll be using.
Resizing something is a common way to get around filters of this kind, so we need to keep records of different sizes of the art too. We'll also need to check for images being flipped - the same way that people uploading TV episodes on YouTube do to get around the copyright filters. Ading borders is something we need to check as well.
Why so Blue?
Another common way of getting around filters is changing the colours of something - either the colour itself, or the saturation of it. Checking this will be a pain in the ass, but is essential to a comprehensive theft prevention system.
I See You
Finally, the part that'll take the longest - visual comparisons. If all the above fail, there's a chance the thief is skilled. So, we pass it to an AI to look at. This, once we've gotten it working right, is all the above on steroids. It'll be able to look at it and say whether it's seen it before, as well as a confidence score. If it gets to this stage, unless it's 100% certain, a mod will likely be required for intervention - after all, we've seen what visual recognition is like with Tumblr's porn filter.
This step has some nice bonuses, however. It'll be able to see if it's been blurred, is a cropped version blown up to full size, or whether it's seen something similar before but watermarks have been removed or text altered. It might even be able to tell whether it's a trace of someone else's work or what's been used as a reference - however, we're consciously choosing not to intervene on that stuff, and it's a waste of resources to try.
Here's what it makes of our test piece (rendered in paint - right now, we get a text readout of pixel areas that I've had to translate into something easy to read). As you can see, it's far from perfect, which is why manual mod intervention will be mandatory for this stage.
The above is about half the system we're implementing, excluding the experiments that are more curiosity rather than something serious to include. We're not listing them all here because the post will drag on a bit, and because we want there to be some element of secrecy so you can't find holes to defeat it.
It's a pretty complex system and our aim is that any given art piece should take no longer than 20 minutes to verify. In an ideal world, it'd be 5 minutes - but we're unlikely to have the budget for that any time soon, and as more art is uploaded, the longer it'll inherently take.
Suffice it to say - art theft, while a unique system, is flawed. We want to fix it, and we want to share with you what we're doing to improve on it.
Thanks for reading!
From our lead dev, talking about the overhauled, upgraded, and immeasurably improved art theft system currently in the works behind the scenes!