zazowoo's recent activity
-
9 votes
-
Comment on US President Joe Biden announces that he will not run for re-election in ~news
-
Comment on US President Joe Biden announces that he will not run for re-election in ~news
zazowoo This is the first I've heard of this. What's it based on?I ask because it was almost certain that the Queen didn't die when they announced that she had died.
This is the first I've heard of this. What's it based on?
-
Comment on <deleted topic> in ~tech
zazowoo Wow, I'm not used to seeing such accurate and well-explained computer science content in mainstream media. I wasn't familiar with him, but the the author is a science fiction writer with a...Wow, I'm not used to seeing such accurate and well-explained computer science content in mainstream media. I wasn't familiar with him, but the the author is a science fiction writer with a bachelors degree in CS and an impressive Wikipedia page.
Props to him for a great analogy and ability to explain this stuff so clearly.
-
Comment on What have we liberals done to the US west coast? in ~society
zazowoo Direct link: https://www.nytimes.com/2024/06/15/opinion/progressives-california-portland.htmlDirect link: https://www.nytimes.com/2024/06/15/opinion/progressives-california-portland.html
Conservatives argue that the problem is simply the left. Michael Shellenberger wrote a tough book denouncing what he called “San Fransicko” with the subtitle “Why Progressives Ruin Cities.” Yet that doesn’t ring true to me.
Democratic states enjoy a life expectancy two years longer than Republican states. Per capita G.D.P. in Democratic states is 29 percent higher than in G.O.P. states, and child poverty is lower. Education is generally better in blue states, with more kids graduating from high school and college. The gulf in well-being between blue states and red states is growing wider, not narrower.
Politics always is part theater, but out West too often we settle for being performative rather than substantive.
For example, as a gesture to support trans kids, Oregon took money from the tight education budget to put tampons in boys’ restrooms in elementary schools — including boys’ restrooms in kindergartens.
“The inability of progressives, particularly in the Portland metro area, to deal with the nitty-gritty of governing and to get something done is just staggering,” Representative Earl Blumenauer, a Democrat who has been representing and championing Portland for more than half a century, told me. “People are much more interested in ideology than in actual results.”
In 2022, the Portland Freedom Fund helped a Black man named Mohamed Adan who had been arrested after allegedly strangling his former girlfriend, holding a gun to her head and then — in violation of a restraining order — cutting off his G.P.S. monitor and entering her building. “He told me that he would kill me,” the former girlfriend, Rachael Abraham, warned.
The Freedom Fund paid Adan’s bail, and he walked out of jail. A week later, Adan allegedly removed his G.P.S. monitor again and entered Abraham’s home. The police found Abraham’s body drenched in blood with a large knife nearby; three children were also in the house.
Perhaps on the West Coast we have ideological purity because there isn’t much political competition. Republicans are irrelevant in much of the Far West, so they can’t hold Democrats’ feet to the fire — leading Democrats in turn to wander unchecked farther to the left. That’s not so true in the Northeast: A Republican, Charlie Baker, was until recently governor of Massachusetts, and Republicans are competitive statewide in Maine, Pennsylvania, Maryland, New Hampshire, New York and New Jersey.
Maybe a healthy Republican Party keeps the Democratic Party healthy, and vice versa.
-
What have we liberals done to the US west coast?
37 votes -
Comment on How it feels to get an AI email from a friend in ~comp
zazowoo Hm, I'm a millennial, and I used to have really deep, long email conversations with particular friends. I guess it was like how letter writing used to be. We'd both take some non-trivial amount of...Hm, I'm a millennial, and I used to have really deep, long email conversations with particular friends. I guess it was like how letter writing used to be. We'd both take some non-trivial amount of time out of our week to sit down and write paragraphs to each other, sometimes about personal things, sometimes about philosophy, etc. And of course there would be days in between responses, so the conversation had a slow, deliberate feel to it. And enough stuff would happen in between emails that there was usually something new to weave in to the conversation.
I haven't done that in years, and now that you mention it being surprising, it makes me as a little sad that something like that is considered so strange these days. I really loved writing and reading those emails, but my brain today doesn't feel patient enough to do something like that again, even if I found an email partner.
-
Comment on Illinois Democrats speedily change candidate law; Republicans call measure ‘election interference,' "undemocratic" in ~society
zazowoo Even as a strong democrat, I'm happy to see this. This does feel like changing the rules in the middle of the game, and I don't like seeing dems play that way.Even as a strong democrat, I'm happy to see this. This does feel like changing the rules in the middle of the game, and I don't like seeing dems play that way.
-
Comment on Is Emacs or VIM worth learning in today's day and age? in ~comp
zazowoo I just love using Vim. It regularly gives me little moments of joy throughout the day when I get to solve mini-puzzles like how to write a macro that lets me automatically change a bunch of lines...I just love using Vim. It regularly gives me little moments of joy throughout the day when I get to solve mini-puzzles like how to write a macro that lets me automatically change a bunch of lines that I'd otherwise need to do manually. It absolutely takes a lot of investment to learn it, and on top of learning the basics of how to use Vim, you also need to figure out how you want to configure it (unless you go with some turn-key config like LunarVim). For me, the journey has been tough but ultimately worth it. I feel like I'm flying when I'm working in Vim.
If you're interested in learning it, you could try out Vim Adventures, which is a little browser game designed to get you familiar with the keystrokes. I also really like this cheatsheet for discovering what various keys do. And my biggest piece of advice to people learning vim is to try to avoid using the arrow keys. It's really hard in the beginning to learn the navigation keys, but if you are hanging out in Insert Mode and using the arrow keys to get around, Vim is just going to be a difficult-to-use text editor without much benefit to make up for the struggle. The fun/power in Vim comes from what you can do when you're hanging out in Normal mode by default.
These days, ChatGPT is also really good at being a Vim tutor when you have questions about how to do something or how to configure plugins that you'd like.
This probably won't apply to many people here, but I work at a place where we pair program remotely all day, and I find the combo of vim and tmux makes pairing super low-latency (since you're sharing a shell, not anything graphical) and easy to organically switch driver/navigator similar to how you would in person. At my last full-time pairing job, everyone used vim and tmux and it was wonderful. At my current job, not everyone wants to learn/use vim, which is fine, so I use vim/tmux with some coworkers and screensharing or VSCode LiveShare with others. The vim/tmux pairing sessions are noticeably smoother and more focused on just coding and being in the flow state vs the meta aspects of remote pairing orchestration.
-
Comment on <deleted topic> in ~tildes
zazowoo The small text at the bottom of the login page does say "Tildes is currently in invite-only alpha." (you need to be logged out to see it)The small text at the bottom of the login page does say "Tildes is currently in invite-only alpha." (you need to be logged out to see it)
-
Comment on Oregon decriminalized drugs. Voters now regret it. in ~society
zazowoo Is there evidence that the decriminalization in Oregon was purposefully setup to fail? I don't know much about it, so this is a genuine question. With my limited background here, I just imagine it...Is there evidence that the decriminalization in Oregon was purposefully setup to fail? I don't know much about it, so this is a genuine question.
With my limited background here, I just imagine it being more likely that people really thought decriminalization would help. If you'd asked me before the law went into effect, I would've been one of those fighting for it, and I would've assumed the law was going to be successful in reducing harm.
I worry that we are generally too quick attributing things to malice, which makes the world feel colder and meaner than it really is.
-
Comment on Looking for songs that include recordings of commentary in ~music
zazowoo I also love the combination of spoken word or commentary with music. I'm sure I'll think of more after I post this but some that come to mind: The New Math - OSI Space Dye Vest - Dream Theater...I also love the combination of spoken word or commentary with music. I'm sure I'll think of more after I post this but some that come to mind:
- The New Math - OSI
- Space Dye Vest - Dream Theater (mix of singing and samples taken from a movie)
- The Death of Music - Devin Townsend (singing, but includes samples from what sounds like a cafe and TV shows)
- The Revolution Will Not Be Televised - Gil Scott Heron (classic, not sampled audio but spoken word)
- Poème sur la 7ème - Johnny Hallyday (also spoken word)
-
Comment on Three long-term effects of a "plastic wrap parenting" style in ~life
zazowoo This reminds me a recent article in the New York Times about how many parents are restricting their kids' sleepover experiences (like picking them up before bedtime or staying at the house...This reminds me a recent article in the New York Times about how many parents are restricting their kids' sleepover experiences (like picking them up before bedtime or staying at the house themselves). Growing up in the 90s, I had so much fun and social growth at sleepovers, and it makes me sad to think some kids are not getting to experience that in the same way today.
-
Comment on CMV: Once civilization is fully developed, life will be unfulfilling and boring. Humanity is also doomed to go extinct. These two reasons make life not worth living. in ~talk
zazowoo Yes!! And how unbelievably lucky are we that out of all the lifeforms in the world, we get to experience life as a human? We get to self-reflect and dream, or simply sit and observe, or observe...Yes!! And how unbelievably lucky are we that out of all the lifeforms in the world, we get to experience life as a human? We get to self-reflect and dream, or simply sit and observe, or observe our observing. We have such interesting and complicated minds that we get to experience and explore.
-
Comment on How to watch Super Bowl 2024: All the best streaming options in ~sports.american_football
zazowoo Well, most browsers. "Due to our security rules, you can't log in to our site with the Brave browser. To access the site, you must use browsers such as Chrome, Safari, Edge, Mozilla." Even so,...is viewable in any web browser.
Well, most browsers.
"Due to our security rules, you can't log in to our site with the Brave browser. To access the site, you must use browsers such as Chrome, Safari, Edge, Mozilla."
Even so, thanks for the link!
-
Comment on Jon Stewart returns to ‘The Daily Show’ as host in ~tv
zazowoo I thought the jury was still out on the lab leak theory? Is there some conclusive evidence against against it?I thought the jury was still out on the lab leak theory? Is there some conclusive evidence against against it?
-
Comment on What’s something you wish more people understood? in ~talk
zazowoo If you read or watch something online and feel outraged, try to notice that outrage and invite skepticism and curiosity about other explanations or framing. Given the same facts, what other...If you read or watch something online and feel outraged, try to notice that outrage and invite skepticism and curiosity about other explanations or framing. Given the same facts, what other headlines might have been chosen? This is especially true where there appears to be some evil or incompetent guy/organization/institution to blame.
Regardless of whether you're on the left, right, or something uncategorizable, I believe most of us have a tendency to jump on these outrage bandwagons, and it takes intentional effort and humility to resist this.
-
Comment on When the New York Times lost its way in ~humanities
zazowoo That was long, but I finally finished it. I thought he made some very good points, and as someone who's both a subscriber and daily reader of the Times and wishes they were not so biased, I...That was long, but I finally finished it. I thought he made some very good points, and as someone who's both a subscriber and daily reader of the Times and wishes they were not so biased, I appreciated hearing an insider's take.
I pulled out some of the sections that spoke to me the most in case others don't have the time to read the full thing:
Don’t get me wrong. Most journalism obviously doesn’t require anything like the bravery expected of a soldier, police officer or protester. But far more than when I set out to become a journalist, doing the work right today demands a particular kind of courage: not just the devil-may-care courage to choose a profession on the brink of the abyss; not just the bulldog courage to endlessly pick yourself up and embrace the ever-evolving technology; but also, in an era when polarisation and social media viciously enforce rigid orthodoxies, the moral and intellectual courage to take the other side seriously and to report truths and ideas that your own side demonises for fear they will harm its cause.
One of the glories of embracing illiberalism is that, like Trump, you are always right about everything, and so you are justified in shouting disagreement down. In the face of this, leaders of many workplaces and boardrooms across America find that it is so much easier to compromise than to confront – to give a little ground today in the belief you can ultimately bring people around. This is how reasonable Republican leaders lost control of their party to Trump and how liberal-minded college presidents lost control of their campuses. And it is why the leadership of the New York Times is losing control of its principles.
As the number of subscribers ballooned, the marketing department tracked their expectations, and came to a nuanced conclusion. More than 95% of Times subscribers described themselves as Democrats or independents, and a vast majority of them believed the Times was also liberal. A similar majority applauded that bias; it had become “a selling point”, reported one internal marketing memo. Yet at the same time, the marketers concluded, subscribers wanted to believe that the Times was independent.
When you think about it, this contradiction resolves itself easily. It is human nature to want to see your bias confirmed; however, it is also human nature to want to be reassured that your bias is not just a bias, but is endorsed by journalism that is “fair and balanced”, as a certain Murdoch-owned cable-news network used to put it. As that memo argued, even if the Times was seen as politically to the left, it was critical to its brand also to be seen as broadening its readers’ horizons, and that required “a perception of independence”.
Perception is one thing, and actual independence another. Readers could cancel their subscriptions if the Times challenged their worldview by reporting the truth without regard to politics. As a result, the Times’s long-term civic value was coming into conflict with the paper’s short-term shareholder value. As the cable networks have shown, you can build a decent business by appealing to the millions of Americans who comprise one of the partisan tribes of the electorate. The Times has every right to pursue the commercial strategy that makes it the most money. But leaning into a partisan audience creates a powerful dynamic. Nobody warned the new subscribers to the Times that it might disappoint them by reporting truths that conflicted with their expectations. When your product is “independent journalism”, that commercial strategy is tricky, because too much independence might alienate your audience, while too little can lead to charges of hypocrisy that strike at the heart of the brand.
It matters that conflicting views do not just appear before different audiences in politically rivalrous publications or cable news networks, but instead in the same forum, before the same readers, subject to the same standards for fact and argumentation. That is also, by the way, an important means by which politicians, like Cotton, can learn, by speaking to audiences who are not inclined to nod along with them. That was our ambition for Times Opinion – or mine, I guess. Americans can shout about their lack of free speech all they want, but they will never be able to overcome their differences, and deal with any of their real problems, if they do not learn to listen to each other again.
The Times’s failure to honour its own stated principles of openness to a range of views was particularly hard on the handful of conservative writers, some of whom would complain about being flyspecked and abused by colleagues. One day when I relayed a conservative’s concern about double standards to Sulzberger, he lost his patience. He told me to inform the complaining conservative that that’s just how it was: there was a double standard and he should get used to it. A publication that promises its readers to stand apart from politics should not have different standards for different writers based on their politics. But I delivered the message. There are many things I regret about my tenure as editorial-page editor. That is the only act of which I am ashamed.
I did not hear from Sulzberger, but the speechwriter who drafted many of his remarks, Alex Levy, contacted me just before the meeting began to tell me to use whatever question I got first to apologise, and at some point to acknowledge my privilege.
A Zoom call with a couple of thousand people is a disorienting experience, particularly when many of them are not particularly mindful of your “full humanity”. I do not recommend it. As my first turn to speak came up, I was still struggling with what I should apologise for. I was not going to apologise for denying my colleagues’ humanity or endangering their lives. I had not done those things. I was not going to apologise for publishing the op-ed. Finally, I came up with something that felt true. I told the meeting that I was sorry for the pain that my leadership of Opinion had caused. What a pathetic thing to say. I did not think to add, because I’d lost track of this truth myself by then, that opinion journalism that never causes pain is not journalism. It can’t hope to move society forward.
As he asserts the independence of Times journalism, Sulzberger is finding it necessary to reach back several years to another piece I chose to run, for proof that the Times remains willing to publish views that might offend its staff. “We’ve published a column by the head of the part of the Taliban that kidnapped one of our own journalists,” he told the New Yorker. He is missing the real lesson of that piece, as well.
That op-ed was a tough editorial call. It troubles my conscience as publishing Tom Cotton never has. But the reason is not that the writer, Sirajuddin Haqqani, the deputy leader of the Taliban, kidnapped a Times reporter (David Rohde, now of nbc, with whom I covered the Israeli siege of Jenin on the West Bank 20 years ago; he would never be afraid of an op-ed). The case against that piece is that Haqqani, who remains on the FBI's most-wanted terrorist list, may have killed Americans. It’s puzzling: in what moral universe can it be a point of pride to publish a piece by an enemy who may have American blood on his hands, and a matter of shame to publish a piece by an American senator arguing for American troops to protect Americans?
As Mitch McConnell, then the majority leader, said on the Senate floor about the Times’s panic over the Cotton op-ed, listing some other debatable op-ed choices, “Vladimir Putin? No problem. Iranian propaganda? Sure. But nothing, nothing could have prepared them for 800 words from the junior senator from Arkansas.” The Times’s staff members are not often troubled by obnoxious views when they are held by foreigners. This is an important reason the paper’s foreign coverage, at least of some regions, remains exceptional. It is relatively safe from internal censure. Less than four months after I was pushed out, my former department published a shocking op-ed praising China’s military crackdown on protesters in Hong Kong. I would not have published that essay, which, unlike Cotton’s op-ed, actually did celebrate crushing democratic protest. But there was no internal uproar.
-
Comment on Day 7: Camel Cards in ~comp.advent_of_code
zazowoo I really had fun with this one. It felt like just the right balance of challenging without being overwhelming. These AoC exercises are making me fall even more in love with Elixir, which I started...I really had fun with this one. It felt like just the right balance of challenging without being overwhelming. These AoC exercises are making me fall even more in love with Elixir, which I started learning earlier this year.
Part 2 Solution (Elixir)
defmodule Solution do def run(filename) do File.stream!(filename, [:read]) |> Stream.map(&String.trim/1) |> Stream.map(&parse_line/1) |> Enum.sort_by(fn {hand, _bid} -> hand end, &right_better_than_left?/2) |> Enum.with_index(1) |> Enum.reduce(0, fn {{_hand, bid}, rank}, total -> total + (bid * rank) end) |> IO.inspect() end defp parse_line(input) do [hand, bid] = String.split(input) {hand, String.to_integer(bid)} end defp right_better_than_left?(left, right) do left_hand_type = hand_rank(to_charlist(left)) right_hand_type = hand_rank(to_charlist(right)) cond do left_hand_type < right_hand_type -> true left_hand_type > right_hand_type -> false true -> tie_break(to_charlist(left), to_charlist(right)) end end defp tie_break([], []), do: raise("same hand") defp tie_break([left_head | left_rest], [right_head | right_rest]) do cond do card_rank(left_head) < card_rank(right_head) -> true card_rank(left_head) > card_rank(right_head) -> false true -> tie_break(left_rest, right_rest) end end @card_ranks %{ ?A => 14, ?K => 13, ?Q => 12, ?J => 1, ?T => 10 } defp card_rank(card) do Map.get(@card_ranks, card, card - 48) end defp hand_rank(hand) do cond do five_of_a_kind?(hand) -> 7 four_of_a_kind?(hand) -> 6 full_house?(hand) -> 5 three_of_a_kind?(hand) -> 4 two_pair?(hand) -> 3 one_pair?(hand) -> 2 high_card?(hand) -> 1 end end defp replace_jack_with_most_common_card(hand) do frequencies = Enum.frequencies(hand) |> Map.delete(?J) |> Enum.sort_by(fn {_card, freq} -> freq end, :desc) hand |> Enum.map(fn card -> hd(frequencies) |> elem(0) |> replace_wildcard(card) end) end defp replace_wildcard(replacement, ?J), do: replacement defp replace_wildcard(_replacement, orig), do: orig defp five_of_a_kind?(~c"JJJJJ"), do: true defp five_of_a_kind?(hand) do replace_jack_with_most_common_card(hand) |> Enum.frequencies() |> Map.values() == [5] end defp four_of_a_kind?(hand) do replace_jack_with_most_common_card(hand) |> Enum.frequencies() |> Map.values() |> Enum.member?(4) end defp full_house?(hand) do if Enum.member?(hand, ?J) do two_pair?(hand |> Enum.reject(fn card -> card == ?J end)) else Enum.frequencies(hand) |> Map.values() |> Enum.sort() == [2, 3] end end defp three_of_a_kind?(hand) do replace_jack_with_most_common_card(hand) |> Enum.frequencies() |> Map.values() |> Enum.sort() == [1, 1, 3] end defp two_pair?(hand) do freqs = Enum.frequencies(hand) |> Map.values() |> Enum.sort(:desc) hd(freqs) == 2 && hd(tl(freqs)) == 2 end defp one_pair?(hand) do replace_jack_with_most_common_card(hand) |> Enum.frequencies() |> Map.values() |> Enum.sort() == [1, 1, 1, 2] end defp high_card?(hand) do Enum.frequencies(hand) |> Map.values() |> Enum.sort() == [1, 1, 1, 1, 1] end end System.argv() |> then(&(Enum.at(&1, 0) || "input")) |> then(&(Solution.run(&1)))
-
Comment on Day 1: Trebuchet?! in ~comp.advent_of_code
zazowoo This is my first year doing AoC after hearing about it from coworkers for a while. Curious to see how long I can stick with it! Here's my Elixir solution for part 2. Day 1 - Elixir defmodule...This is my first year doing AoC after hearing about it from coworkers for a while. Curious to see how long I can stick with it! Here's my Elixir solution for part 2.
Day 1 - Elixir
defmodule Solution do def run(filename) do File.stream!(filename, [:read]) |> Enum.reduce(0, fn line, sum -> sum + get_number_from_line(line) end) |> IO.puts() end defp get_number_from_line(line) do case Regex.run(~r/^.*?(\d|one|two|three|four|five|six|seven|eight|nine).*(\d|one|two|three|four|five|six|seven|eight|nine).*?$/, line) do [_, first_digit, last_digit] -> create_number(first_digit, last_digit) nil -> case Regex.run(~r/^.*(\d|one|two|three|four|five|six|seven|eight|nine).*$/, line) do [_, digit] -> create_number(digit, digit) end end end defp create_number(first_digit, second_digit) do to_integer(first_digit) * 10 + to_integer(second_digit) end defp to_integer(number) do case number do "one" -> 1 "two" -> 2 "three" -> 3 "four" -> 4 "five" -> 5 "six" -> 6 "seven" -> 7 "eight" -> 8 "nine" -> 9 number -> String.to_integer(number) end end end Solution.run("./input")
Oh, I misunderstood the original poster to mean they announced she'd died before she actually died, which really confused me. But this makes much more sense.