r/ProCSS • • Apr 25 '17

Discussion CSS isn't about Themes

I've seen a lot of folks talking about how they use CSS and what the loss of those features will mean for their communities. What I haven't seen is a coherent argument that spans individual subreddit needs and encapsulates the frustration that many moderators (and users) have been feeling recently.

While everyone is busy arguing over what the most important CSS hacks are that need to be brought over, nobody seems to have explained the big picture. In fact that whole line of argumentation lurks in the shadow of what CSS customization represents.


I think this comment really brought it out to me. This line in particular:

Alternatively, seeing as quite a few subreddits have banners, the admins might decide to create a standard space for banners.

Sticky posts and comments exist as a native feature because of exactly this argument. A lot of subs were doing them with CSS and demonstrated that this functionality was in high demand, thus leading to its support as a native feature.

User flair started out like this. People hacked it together with CSS, and so many subs started using it that it was added as a native feature.

Submission flair started out like this. People hacked it together using CSS and it become so widely used that its value was recognized as a native feature.

Inline emotes and image macros are implemented using CSS.

Spoilers are a CSS hack.

Announcements, banners, and customized header navigation (such as dropdown menus, popovers, and drawers) are all CSS hacks.

The list of significant functionality enhancements achieved through fantastically clever CSS is long, and this is not by any means an exhaustive list. I only wish to serve a few significant examples. CSS is the hacky playground of second-party reddit customization, that gives people the flexibility to create these modifications. It's accessible to anyone on the site, requires no third-party tools (you don't even have to use a browser inspector, let alone an external editor, but the former are all built in these days). Sometimes, these CSS hacks become so popular that they make a compelling case for native support. Most of the time, they don't. They add unique character and specialized functionality to subreddits that distinguishes them from the crowd.

So, getting rid of CSS moves the entire burden of iterative design and experimentation onto the admins. You can't say, as a justification for removing custom CSS support, "the admins might decide to create a standard space for ___", because who knows whether ___ will get used enough to justify implementing it. Nobody can test out ___ in their subreddits, not even a janky half-broken version.

There are significant consequences of this. Open Source maintenance for Reddit has become increasingly spotty. New features and functionality never make it to the Open Source repository. So even highly dedicated and technically knowledgeable people like myself, who have contributed code to Reddit in the past and built popular third-party tools, are thus far locked out of making any contributions to native features.

As a necessary corollary of the admins having to implement all new functionality entirely in-house, with neither second-party CSS hacks to inform them of the popularity and value of features, nor the ability of third-party developers to fiddle with their own ideas, those features which end up being implemented will follow a least common denominator pattern. It's a necessary result of sensible investment of development resources to focus on the features and functionality that will have the largest impact on the most users.

Even if we go by mod and community demand, only the most popular features will be implemented. This leaves many smaller, specialized communities out in the cold as far as unique, distinctive, and special features are concerned. Not only does it decrease the number of innovators creating new things for Reddit, it decreases the reach of those innovations and shuts out smaller communities.

People are understandably very upset about this. Not only moderators who have put countless hours into building distinctive, unique, and appealing communities, but those users who come to Reddit specifically for those communities. There are a lot of users who are brought to Reddit by single subs. Sometimes they stay there, but sometimes they come to enjoy the rest that Reddit has to offer.

There are very good technical reasons why CSS is less than ideal and even entirely non-viable for many things. These reasons have not been articulated to the moderator community at all. There are strong business arguments for removing CSS. These justifications have been evaded, leaving room for cynicism and conspiracy theories to flourish in their stead. I won't contribute to these conspiracy theories by discussing them here.

But ultimately, it is the more abstract philosophical arguments about the nature of community identity, ownership, and values that have Reddit's most prolific and experienced community moderators frustrated. For years, since the introduction of user-created subreddits, Reddit, Inc. has sold the idea of Reddit as a platform for creating communities. This philosophy of providing a space and a standard structure for online communities to come and make their own has attracted the kinds of quality places that make contributing users passionate about Reddit. These passionate, dedicated users contribute the most popular content. They drive innovation in Reddit's functionality, directly through their own hacking and indirectly through the adoption of new paradigms for subreddit operation.

So for those who believe that this small class of vigorous and dedicated users, who have created so much of what makes Reddit unique on the web, are the key to Reddit's popularity and success, this move comes off not just as arrogant and tone deaf (as many have called it), but fundamentally self-defeating.

Much like the new profile pages, which represent a paradigm shift away from the topic-centric content discovery model that distinguishes Reddit from the rest of the user-centric social network driven sites (on Reddit, you subscribe to communities/topics; on Facebook and Twitter and YouTube and Snapchat and Instagram you subscribe to other individual users), the announcement of the removal of custom CSS comes across as misunderstanding a distinctive feature of Reddit.

I'm personally very excited for these changes. As someone who has contributed native patches to Reddit, built and operated widely used third-party tools, and shaped the core policy and chaperoned the success of some of Reddit's most popular communities, I am enthusiastic for the opportunities that these changes bring, which have been overdue for years. I've expressed my fair share of cynicism over proposed changes. And I'm skeptical of how well the community will take this latest announcement. I'm not trying to just be another complaining voice, but to express as lucidly and honestly as I can the frustration that many communities are currently venting. I'm not here to be mad, but to help explain why people are mad in the hope that it does some good to the communities I have helped to create, and come to love, here on Reddit.

Let me know if I'm missing anything.

Edit: clarified conspiracy theories.

3.1k Upvotes

295 comments sorted by

11

u/Visheera Apr 27 '17

From what I've heard they've said no matter what people say, or how many people outcry about it they're going through with it, so I'm kinda surprised they haven't started 86'ing subreddits like this or posts going against it.

6

u/dakta Apr 27 '17

They're definitely going through with a desktop web redesign. They're almost certainly going to use React. So unless they offer a hook into React's styling engine, CSS is finished.

It's not that they're going through with removing CSS despite what people say, they're going through with the underlying reason that CSS support is being dropped. Though this isn't clear or obvious based on their official statements because they've refused thus far to provide a technical justification, instead relying on wishy washy arguments that don't hold water on their own.

→ More replies (3)

6

u/MrTastix Apr 27 '17

If they think removing CSS is going to be easy then they're dead wrong.

As mentioned, some features have become so normalised people forget they're not innate. Custom banners, menus, flairs, etc. I can guarantee reddit would need to port such features over because many are so ubiquitous it would be absolute PR suicide not to.

This then begs the question of why bother? In the end all they'll be doing is creating a system that duplicates an existing one, all so they have more control over it and offer mobile support.

While mobile support is nice I can't imagine it will be worth the trouble to essentially recreate a language for the purpose, especially when mobile users don't need every CSS function that PC users get. It'd be easier to select the features mobile would benefit from (like spoiler tags) and add those in individually.

Personally, as a web dev, this only further illustrates why mobile development is a joke. Apps are not a scalable form of internet usage, they're a band-aid to a browser system that has been fundamentally flawed since day one.

7

u/dakta Apr 27 '17

This then begs the question of why bother? In the end all they'll be doing is creating a system that duplicates an existing one, all so they have more control over it and offer mobile support.

I buy the argument that this is a worthwhile investment for quality of user experience for mobile users. Almost all of the current common uses fro CSS should be native features. What I don't buy are the justifications for nuking CSS simultaneously, or with even doing all of this new development instead of working on other projects.

Even just a few features, explicitly for moderators, as a vanity gesture, would ease the transition. Start by moving CSS hacks to native. Get people as much off of CSS for these things as you can, instead of proposing the transition as almost damage control.

→ More replies (2)
→ More replies (3)

4

u/synfulyxinsane Apr 26 '17

The comment linked is in a sub that is only for mods not general users. Can you please post the quote being referenced?

3

u/dakta Apr 26 '17

I quoted the referenced part on the next line. Really the rest of the comment isn't important.

→ More replies (3)

4

u/TheLexoPlexx Apr 26 '17

I don't really get the point, why not detect the users browser and based on that sent him the generic Stylesheet for mobiles. Later on we might add custom colours per Reddit and even add back a nice header per subreddit.

5

u/dakta Apr 26 '17

This would be a reasonable solution, or we could just use CSS media queries and have a responsive website for everyone.

The problem is that the current development track for new Reddit frontend appears to be using a JavaScript webapp framework called React. A big part of this framework is that it generates all of the actual HTML and CSS, including making up class names and changing the structure. This means that, even though plain old CSS will still work, it will have to be fine-tuned and tweaked to every minor modification that the admins potentially make to the site. That's completely unviable for mods, third party developers, and the Reddit dev team as well.

So we could use CSS, but it would just break all the time and be even more of a problem than it is now.

→ More replies (6)

4

u/Lagarto_Azul Apr 26 '17 edited Apr 26 '17

If CSS is what allows for submission flairs, then without it, r/teslore just doesn't work. The subreddit for The Elder Scrolls lore relies on the fact that it's an open, interactive fantasy. We have a flair called "Apocrypha" which indicates a post created by fans to expand the world building and develop unexplored aspects of the lore. It's quite literally what keeps the community engaged and fresh in a franchise that launches two titles a decade tops. Not everyone enjoys it, though. So texts marked with the flair can conveniently be hidden with the push of a button. This flair is the sub's cornerstone.

3

u/dakta Apr 26 '17

Submission flair is now a native feature. However, it is still highly augmented by CSS in many subreddits.

4

u/GoreGirl89 Apr 28 '17

Having flair is a big deal at NSFW subreddits. It warns people of child, animal, sexual abuse cases. These are very important to users whom are sensitive to that kind of material.

5

u/dakta Apr 28 '17

Just to note, submission flair is a native feature that isn't going away. However, extensive customization of that flair, including highlighting posts by flair type, relies on CSS and will be impacted.

→ More replies (1)

2

u/LordTyrius Apr 28 '17

soooo, browser addon that changes reddit css and pulls subreddit specific css data from a central communty site where mods can edit css for there subreddit, anyone?

2

u/blazedancer1997 May 04 '17

Just a reminder that r/anime loses comment faces when CSS goes away

3

u/dakta May 04 '17

Not according to spez. They're making native emotes.

→ More replies (4)

149

u/peoplma Apr 26 '17

This whole thing is because CSS isn't compatible with the mobile app. Why not make two different versions of the stylesheet, one for mobile and one for desktop that the mods can make?

230

u/SomeWeirdDude Apr 26 '17

Have you tried the mobile app? They can barely get that to work, I doubt they could implement custom anything.

→ More replies (79)

26

u/Rannasha Apr 26 '17

Just make a decent mobile website. I don't get the obsession that websites have at wanting to release an app for mobile users instead of focussing on making the website work well on mobile.

Not everything has to be an app. Smartphones come with highly functional webbrowsers for a reason.

→ More replies (1)

45

u/adam279 Apr 26 '17 edited Apr 26 '17

I dont even use the mobile app. All the CSS works just fine on mobile using a web browser. You know, the thing many site admins have forgotten about, the one thats always fully supported standards and could browse any website including reddit.

32

u/peoplma Apr 26 '17

Same here. I've tried reddit's mobile apps and also third party ones, and also the mobile browser site, and they are all trash. I always browse desktop mode in chrome on mobile. I'm astonished that apparently >50% of users are using the mobile app. That's insane.

7

u/flounder19 Apr 26 '17

I imagine they just count all mobile PVs towards that 52% regardless of whether they happen in an app or a browser.

8

u/Osiris32 Apr 26 '17

Browser all the way. It's so much better as a platform.

4

u/[deleted] Apr 26 '17

But how then will they tell their higher-ups how many people installed their app?

→ More replies (22)

68

u/_Emmitt_ Apr 25 '17

This is just one if the things we use css for over on r/pathofexile.

→ More replies (2)

105

u/ThaddeusJP Apr 25 '17

Just food for thought: I think sports subs would be massively impacted by this, just with teams flair.

r/baseball, r/nfl, r/nba, r/soccer, r/formula1, r/hockey, and r/sports will probably be the loudest in being upset but god knows the thousand+ team specific subs will be pissed as well when/if they lose custom team flair. Some of the bigger subs above have over 500K readers.

My immediate observation is so much of the conservation in those subs, HOW people comment with one another, is dependent on team/user flair.

30

u/Ohminty Apr 26 '17

r/CFB has a flair for damn near every college in the United States thanks to u/bakonydraco and co. I can't imagine the feeling if the admins nix flair for who knows why.

→ More replies (1)

29

u/[deleted] Apr 25 '17

I can see r/nba losing out by a lot because of this

→ More replies (1)
→ More replies (11)

5

u/panicForce Apr 27 '17

To the Reddit owners: I think this post is reason enough to try and keep custom CSS around for your site in some form. Make it opt-in so that the default experience can be unified, but leave it as an option for your communities to present improvements or make their own tweaks as they see fit.

I was linked to this post by someone explaining the way custom CSS has impacted Reddit's development to me. I have so often disabled subreddit css because of an ugly or difficult to read theme that I just disabled it sitewide... So I basically have the bare minimum of investment in this issue. Maybe there needs to be SOME change to make reddit better for new users, but I think there is value in the functions that subreddits have created via custom CSS and that should be preserved if possible.

I'm not any kind of web design or CSS expert, but I can imagine an opt-in for custom CSS with the ability for a user to define his own global CSS which overrides any sub-specific properties. That would allow the reddit owners to set everyone's default to the same, let sub mods have a playground with whatever creative features they want, and add the new feature of allowing users to pick and choose items to disable or set a sitewide theme.