site banner

Culture War Roundup for the week of October 3, 2022

This weekly roundup thread is intended for all culture war posts. 'Culture war' is vaguely defined, but it basically means controversial issues that fall along set tribal lines. Arguments over culture war issues generate a lot of heat and little light, and few deeply entrenched people ever change their minds. This thread is for voicing opinions and analyzing the state of the discussion while trying to optimize for light over heat.

Optimistically, we think that engaging with people you disagree with is worth your time, and so is being nice! Pessimistically, there are many dynamics that can lead discussions on Culture War topics to become unproductive. There's a human tendency to divide along tribal lines, praising your ingroup and vilifying your outgroup - and if you think you find it easy to criticize your ingroup, then it may be that your outgroup is not who you think it is. Extremists with opposing positions can feed off each other, highlighting each other's worst points to justify their own angry rhetoric, which becomes in turn a new example of bad behavior for the other side to highlight.

We would like to avoid these negative dynamics. Accordingly, we ask that you do not use this thread for waging the Culture War. Examples of waging the Culture War:

  • Shaming.

  • Attempting to 'build consensus' or enforce ideological conformity.

  • Making sweeping generalizations to vilify a group you dislike.

  • Recruiting for a cause.

  • Posting links that could be summarized as 'Boo outgroup!' Basically, if your content is 'Can you believe what Those People did this week?' then you should either refrain from posting, or do some very patient work to contextualize and/or steel-man the relevant viewpoint.

In general, you should argue to understand, not to win. This thread is not territory to be claimed by one group or another; indeed, the aim is to have many different viewpoints represented here. Thus, we also ask that you follow some guidelines:

  • Speak plainly. Avoid sarcasm and mockery. When disagreeing with someone, state your objections explicitly.

  • Be as precise and charitable as you can. Don't paraphrase unflatteringly.

  • Don't imply that someone said something they did not say, even if you think it follows from what they said.

  • Write like everyone is reading and you want them to be included in the discussion.

On an ad hoc basis, the mods will try to compile a list of the best posts/comments from the previous week, posted in Quality Contribution threads and archived at /r/TheThread. You may nominate a comment for this list by clicking on 'report' at the bottom of the post and typing 'Actually a quality contribution' as the report reason.

24
Jump in the discussion.

No email address required.

Solving your own problems is exactly the rush. And it can't be something that someone told you would be a good problem for practicing programming. It has to be something where you want to have the result and are eager to get closer and closer step by step.

For example I wrote bots to automatically fill out various HTML forms, or modded games, built websites for gaming clans, processed and synced subtitles for downloaded movies, scraped websites like the parliamentary election result website to slice and dice the data myself, to process Wikipedia dumps in various ways etc. Nobody told me to do any of these, but such things led me through lots of classic CS topics and I read up on how to do them with a goal in mind. That's so much better than the prof dropping some artificial problem on you.

Like if I have two subtitles in two languages and one is properly synced up, but the other isn't, but might also not correspond to the first subtitle perfectly one-to-one, then how do I find out a plausible correct alignment? This leads to various algorithms like edit distance, longest common subsequence etc.

But this presupposes that you have such computational or automation use cases in your life. For example today with Netflix existing, I might have never learned about video file formats, subtitle file formats, never had to correct audio or subtitle sync issues. If my parents had been rich and Steam existed, I wouldn't have had to learn how to play with the Windows registry, to mess with the Program Files, to understand how to use firewalls to set up LAN games etc. And all such endeavors open up new problems to solve, now you have to install an IDE, figure out environment variables, understamd that vague C++ compiler error, read up on what the words mean, all still with the goal that you want to get that thing working, but without any external pressure like deadlines, so if I want, I can take a side quest into deep diving into graph algorithms for a few days or whatever.

If you don't see such problems around you, if you don't care to customize stuff on your computer, you may look at project ideas but those always seem artificial because someone already did them and we know there is a solution. It's a schoolish problem. When you build something for yourself, you have to define the problem, the scope, then go further and further. Some riddle websites are also cool, like http://www.pythonchallenge.com/

I'm not saying that such self study is sufficient but it made my formal studies much easier because I could tie the concepts to first hand experiences.