Shared posts

10 Mar 01:38

On Property: Rinaldo Walcott

Tom Roche

absolutely (unintentionally) hilarious: Walcott claims police abolition "is not an endpoint" but just "continuously evaluating what we want from policing." Similarly, abolishing private property "does not mean that no one would own their own homes" but that there would be ... a muddled mess, but basically Wolcott seems to mean public regulation. Both excellent ideas, that have nothing to do with any reasonable definition of "abolition."

Rinaldo Walcott argues that the fight to abolish slavery is still unfinished — and that the ultimate project of abolition will require abolishing the idea of private property itself. He speaks with Nahlah Ayed about how a history of being bought and sold shapes Black people's relationship to the notion of property today.
09 Mar 23:28

The Unnatural Endurance of Bipartisanship

Joe Biden ran for president promising to “revive” the spirit of bipartisanship, put an end to factional battles, and bring Americans together after an era of painful division. Yet faced with an intransigent, extremist Republican Party that has little to gain from compromise, such a vision of politics seems quaint at best. On Episode 26 of The Politics of Everything, hosts Laura Marsh and Alex Pareene look into the history of bipartisanship as an ideal. The show features Paul Blest, a co-founder of Discourse Blog; Ed Burmila, the author of a forthcoming book on the mistakes of the Democratic Party; Osita Nwanevu, a staff writer at The New Republic; and Julian Zelizer, a professor of history at Princeton University. Does bipartisanship have a future in American politics? And, more to the point, should it?

Learn more about your ad choices. Visit megaphone.fm/adchoices

09 Mar 22:49

Tulsi Gabbard calls out the US dirty war on Syria that Biden, aides admit to

Tom Roche

VERY EXCELLENT, essence of Imperial Party evil condensed to 23:26 of audio

While Joe Biden has faced some mild Congressional pushback for bombing the Iraq-Syria border, Tulsi Gabbard says her former colleagues are ignoring the larger issue: the ongoing US dirty war on Syria. After a decade of proxy warfare that empowered Al Qaeda and ISIS, the US is now occupying one-third of Syria and imposing crippling sanctions that are crushing Syria's economy and preventing reconstruction. While Gabbard has been vilified for her stance on Syria, many top White House officials -- including Joe Biden himself -- have already acknowledged the same facts that she has called out. Aaron Maté plays clips of Biden and some of his most senior aides admitting to the horrific realities of the US dirty war on Syria, and argues that Gabbard only stands apart in being wiling to criticize it. Featuring clips from: Tulsi Gabbard, former Democratic Congressmember; President Joe Biden; Brett McGurk, National Security Council coordinator for the Middle East and North Africa; Martin Dempsey, former Joint Chiefs chairman; Rob Malley, Special Envoy for Iran; John Kerry, Special Envoy for Climate & former Secretary of State; former President Donald Trump; Alena Douhan, UN Special Rapporteur on Sanctions; Dana Stroul, Deputy Assistant Secretary of Defense for Middle East; Vice President Kamala Harris.
09 Mar 22:34

Bernie Backers Took Over the Nevada Democratic Party. The Old Guard Walked Out.

by Deconstructed
Tom Roche

VERY EXCELLENT: time for "the left" to take the Democratic Party from the CorpDems the same way the Trumpists took the Republican Party from the CorpPubs

 

On Saturday, a year after Sen. Bernie Sanders won the Nevada caucuses in the Democratic presidential primary, a slate of progressive candidates swept elections for leadership positions in the Nevada State Democratic Party. Ryan Grim talks to activist Keenan Korth and Judith Whitmer, who was elected state party chair, about how they out-organized establishment Democrats.

[Introductory music.]

Ryan Grim: Welcome to Deconstructed. This is Ryan Grim.

On Saturday afternoon, the Nevada Democratic Party leadership was thrown out of office by a coalition that had come together organizing for Bernie Sanders in the state’s caucuses in 2016 and 2020. What happened next was both shocking and, if you’re cynical enough, expected.

To back up — a group of five candidates calling themselves the progressive slate, running in coalition with the local Democratic Socialists of America, swept four of the five races Saturday against the establishment slate, which dubbed itself “Progressive Unity.” After a fight over who was eligible to vote and whose vote hadn’t been counted, the one race they lost flipped, meaning the DSA-backed slate had won all five party leadership positions.

The party establishment, which is still led by former Senate Majority Leader Harry Reid, a titan in Nevada politics, quickly ditched the rhetoric about unity. Local reporter John Ralston reported that nearly half a million dollars was drained from the party’s coffers and transferred to the Democratic Senatorial Campaign Committee. Every employee quit; all the consulting contracts were severed.

Not long after winning her chair race, Judith Whitmer got a blunt email from the soon-to-be-former Nevada state party executive director, Alana Mounce. The email begins:

“Judith — congratulations on being elected the new NV Dems Chair. I am writing to inform you that I have received resignations from all NV Dems staff, as well as notices of termination of contracts from our consultants. Additionally, I will resign effective Monday, March 8th.

The NV Dems had already made arrangements with our payroll provider to process the 3/15 payroll for our employees (before learning of their earlier departure). To recognize these employees for their contributions to the party and facilitate a smooth transition we have also already provided them severance through the end of the month.

Thank you,

Alana”

Mounce didn’t respond to a request for comment, but that ruthlessness is part of what has made the Reid machine so effective against Republicans in the state, but it’s unclear how it’ll work against the party’s progressive wing.

In a twist of history, Reid himself actually produced the conditions that led to his own lieutenants getting tossed from office. It was Reid who successfully maneuvered in 2008 to make Nevada the first presidential caucus in the West. His reasoning was simple: He wanted presidential candidates to have to take a position on whether nuclear waste should be stored at Yucca Mountain — more precisely, he wanted that position to be no. In exchange for Obama’s promise to scuttle the Yucca Mountain project, Reid endorsed him for president, after encouraging him to run. It worked: Obama appointed a former aide of Reid’s to the Nuclear Regulatory Commission with instructions to halt the project.

Reid also wanted the caucus to help build the party’s infrastructure, and that worked, too. After years of Republican control, Democrats now hold the governor’s mansion, the state Senate, and the state House, as well as both Senate seats. Without those two senators, there’d be no Democratic majority in the Senate today.

But the caucuses also created an opening for Bernie Sanders, and his supporters have run through it to swamp the party. Instead of finding a way to work with the newcomers, the Reid machine is setting up an independent shop.

We’ll be joined today by Whitmer as well as Keenan Korth, a Nevada organizer you might remember as a character in the documentary “Knock Down the House,” where he was on the staff of Amy Villella, who lost a race for Congress in 2018 in Nevada. Korth went on to work for another “Knock Down the House” candidate, Cori Bush, in 2020.

Judith, welcome to Deconstructed.

Judith Whitmer: Thank you, Ryan. It’s good to be here.

RG: Keenan Korth, thank you for joining me here.

Keenan Korth: Great to be here as well.

RG: [Laughing] So, tell me what happened this weekend! Judith, you’re now running the Nevada Democratic Party?

JW: I am. I’m officially the chair of the state party here in Nevada. We’ve got a lot of work to do, but we’re ready to do it.

RG: And so … winning this entire slate, how much of that had to do with Bernie Sanders victory in the Nevada caucuses a year ago, and how much of it relied on organizing over the last year? Was it a fait accompli once Bernie had done so well in the caucuses? Or was it kind of a push and pull since then?

JW: I think that it goes all the way back to 2016, actually, and the fact that we saw some missed opportunities, but there was still progressive engagement and a few progressive startups that didn’t go anywhere. And then when Bernie announced his run for 2020, I think it was reinvigorating for a lot of the progressives that were still here and were still engaged, but just not organized. So once we started organizing for the Bernie campaign, we went all in on that, we had a very effective strategy — a very effective ground game in coalition with DSA — and then a coalition with the Left Caucus to bring all those people into the fold and back into the progressive movement. And that’s what led to a landslide win here for Bernie Sanders in Nevada.

RG: Now are both of you dues-paying DSA members? How many of the five-person slate are DSA members?

KK: I believe four of them are formerly dues-paying DSA members and one of them located in Carson City County simply does not have a local org to join. But we are certainly trying to get DSA up and running in every county here in Nevada, so that our inside-outside strategy works in every county.

RG: So what was the message that you ran on? I noticed that you called your slate the progressive slate, whereas the establishment called there’s the “Progressive Unity” slate. So what were the differing messages?

JW: [Laughing] Well, we were up and running with the progressive slate back during the state convention. So what happened was we were organizing for the caucus, obviously, and, you know, we had a big win here and a big celebration with Nina Turner. And so after that, we worked really hard to keep those delegates engaged through the convention process. When Bernie suspended his campaign, of course, a lot of people were feeling pretty frustrated, and disappointed, and we couldn’t let them all just disappear. So we worked overtime to make sure that we gave them a reason to stay engaged in the progressive movement through the work of DSA on the outside, Left Caucus on the inside; we kept them engaged through the state convention, and that’s when we elected members of our organization of DSA and Left Caucus to the state party executive board as at-large members, and that was on the progressive slate. So we decided to carry that over for this campaign as well, because it had been so effective. We won nine out of 10 races in that particular campaign for the state convention.

KK: And, you know, our progressive slate here that we ran on, right, that was like 12 months-plus in the making versus the “Progressive Unity” slate, which was much more of a reaction to, I think, the establishment or the status quo seeing the writing on the wall, seeing what we had been able to accomplish last summer. And I think the the implicit message of their slate, they wanted to project that they were progressive because they knew that they had to be — to a certain extent — to have a shot at all, because of the sheer numbers that, under Judith’s leadership, we have been able to recruit into our county and state central committees here.

But, you know, the implication was always that they were uniquely suited to be able to unify the party, whereas our slate was divisive or would be unable to do so.

RG: Which is fascinating, given what the reaction has been from the “Progressive Unity” faction since then.

JW: [Laughing.]

RG: Judith, you, not long after winning, you got an email from the executive director of the party saying: Congratulations on becoming the new chair, effectively I’m writing to quit — and also everyone else is quitting, all the rest of the employees are quitting, and we have severed all of our contracts with our contractors. Were you surprised to get that message?

JW: We weren’t really surprised, in that we were prepared for it. We were hoping that that would not be the case. I mean, we’ve had many conversations — we do a lot of consensus building, we do a lot of worst-case scenario discussions about OK, what if this and what if that — so it didn’t hit us by surprise, necessarily in that regard. But what is sort of shocking is that for a slate that claimed that they were all about unity, and kept this false narrative of division going on throughout the entire campaign, in fact, they kept intensifying that, that’s what was surprising about it was then the willingness to just walk away instead of working with us.

KK: And yesterday — sorry, yeah — even before the meeting was over, the virtual Central Committee meeting, it was kind of ironic to see John Ralston here reporting some comments from those inside the “Reid machine” — as they framed it — that even before the meeting was adjourned, and these elections were ratified, that they were framing this as they had no other option but to work around the party.

RG: Right. And I understand, I mean, from the local reporting, that they moved something like $400,000, $500,000 out of the party coffers and transferred it over to the DSCC somewhat recently. Is that accurate? And what is left of the party that you’ve now taken over?

JW: Well, we are still working through our attorney to gain access to everything. So that’s an ongoing effort right now.

RG: Mhmm.

JW: So we don’t even know if that reporting is entirely accurate, especially given the source of some of that information. We’re not entirely sure it’s accurate. But we have taken measures to make sure that everything is safeguarded: A letter went out today from our attorney, making sure that no other actions were taken.

We are officially in charge of the party. That became the case as soon as the election meeting adjourned; there’s no gap in that or no wait time to take that office. So as the state party chair, I made the decision that we had to safeguard our party assets, our party bank account, and everything else. And the letter from our attorney went out today.

RG: And Keenan, I want to read you the quote that you were referencing, and ask you to unpack it for people. So this is in the [Las Vegas] Review Journal, this is a source to an operative, somebody who’s close to what’s known as the Reid machine. So the quote says: “But keep in mind, the Reid machine is not the Central Committee. It’s the operatives, volunteers, fundraising, and organizing capacity, all of which can be accomplished outside of the state party organization. Unfortunately, there’s no real choice but to work around the party.”

So what signal is the operative sending there? And, functionally, how does the machine carry that out?

KK: Well, you know, I think to start, one of the things that’s notable is, and we saw this in the lead-up to the election this weekend, this sort of reframing of the party, of the Central Committee membership, trying to minimize the role of that governing body of the party, trying to minimize the scope or the legitimacy of the decisions we make; it’s funny, because over the past four years, there have been a lot of efforts for progressives — for Sanders supporters post-2016 — to engage in the party, a lot of fights have been mounted at the county and state level at our Central Committee meetings, whether they’ve been leadership elections, motions to implement new rules and procedures or change bylaws. And we would routinely come up short prior to this most recent caucus-to-convention process, we would get a 40-45 percent of the vote. And we were always told: Well, you know, this is how it works. Don’t hate the player, hate the game. If you want to make change, get involved.

RG: Mhmm.

KK: Right? There’s been this sort of this specter of “Dem exit” — at once scornful of people who maybe get frustrated with the party and leave and they say: Well, you need to just stick around and make it better. And then also dismissive of anyone who actually does.

And so what we’ve seen now is, OK, we’re going to double-down and play this game where we understand how it’s done and knew the opportunity in Senator Sanders’ landslide win in the caucus that we had. By no means was it inevitable — it was a concerted organizing effort — but we knew what the rules of the game wore, and we played by it accordingly. This is the first time we really heard the Nevada State Central Committee members, as a body minimized, and it’s in the same way that the left always has been, that DSA has been, that progressives have been.

RG: And, Judith, the reaction of the establishment here feels almost tailor-made to breed cynicism. Like Kenan was saying, the message that leftists are always given is: Look, if you don’t like how things are, be the change, make the change; do the work, show up for the meetings, be a loyal party member, we follow Robert’s Rules of Order, make your case, and may the best person win.

You win. And, as he said, it seems like they would rather burn the thing to the ground, than have somebody else be in control of it — literally draining funds from it, and stripping it of all of its staff, and its contract, and its consulting contracts, and suggesting that they’re going to build a rival kind of party apparatus to it.

So, for people who hear that and say: “See? I told you! This is pointless.” What would you say to them? What are the tools that you have? And what should people look for from this new Nevada Democratic Party over the next couple of years? What can you do?

JW: Well, actually, one of our biggest goals was removing the obstruction. And when they talk about putting in the work or putting in the time, I was one of those people.

So in 2017, I ran for party office. I’ve been serving on the Clark County Democratic Party Executive Board since 2017. So I’ve been putting in the work. What they just didn’t expect is that we got better and better at organizing and out-organizing them at every turn.

RG: Right, don’t put in that much work!

JW: Yeah! Exactly, right? That’s not really what they met. They meant just, you know, show up and do what you’re told — which was never me, it was never going to be me. But I did put in the work.

So I have been at all the meetings. I’ve been at all the campaign events, all the canvassing, everything it takes. I did the fundraising for Clark Dems. We raised more money during small-dollar, grassroots fundraising than they’d ever had before. And we had money to help in this last election.

So they tried something similar with Clark County Executive Board when we had these massive resignations and they walked away, thinking that we were going to fail and then they would just be rid of us, and that we would just give up and go away. Well, it didn’t quite work out the way they wanted it to. And Clark County Dems is thriving and has grown to over 1,200 members under my leadership.

So I have been constantly encouraging people, and recruiting people, to go onto these central committees, to become members of them, knowing full well that there is power there because it’s the governing body of the Democratic Party. They can try to minimize that role, but the main thing here is that those rules are made by a body bent on the whole philosophy that you have to vote blue no matter who, you always have to fall in line, you have to do what you’re told, and — maybe — you might someday get rewarded for that. I don’t believe in that. I believe that this should be an open and democratic process and that people should get to choose their own candidates. But when the party keeps constantly putting obstructions in the way of people doing that, then the best option — to me — is removing the obstruction.

RG: Right. So what will it look like on the ground, this new Nevada Democratic Party, for regular, rank-and-file members of the Democratic Party, for voters, for disaffected people? What change will they see in how they kind of relate to the Democratic Party? And, related to that, how has the last day of fundraising been? It’s been a bit more than 24 hours since you won. Has there been a national response?

JW: We have just — like I said — literally been dealing with issues at hand, trying to get access to everything. But we do have a fundraising plan, and a fundraising mechanism, and we will be doing that immediately. So I’m really not worried about the money or the fundraising. We know how to do that and we’ve got a really great team — and we work together as a team. We’ve already had numerous discussions about how we’re going to raise the money, how we’re going to support candidates, how we’re going to recruit and engage candidates from disenfranchised, marginalized communities. This is the kind of work that we’ve already been doing on the ground.

And we actually have been building a really effective ground game. And we’re about to roll out a new get-out-the-vote operation, because that’s being restructured as well, because the old, so-called precinct captain program doesn’t serve people well in a 2020-2021 cycle, and going into 2022, we saw during this pandemic, that it’s not going to just be knocking on doors anymore to be effective. We’ve got to be a lot more innovative in our approaches: We’ve got to have not only a great ground game and a great structure for implementing that ground game, but it’s gonna come down to the latest technology, the latest, great digital outreach as well, and finding ways to constantly engage people. Because people engage a lot differently now than they used to! And I don’t think things are going to go back to business as usual even once we have a fully vaccinated population, it’s going to mean that we’re going to have to find more creative ideas and solutions — and sometimes customizable solutions.

I’ve been meeting with all of our rural counties and our county chairs, and we’re mapping out statewide election strategies going forward. And some of our counties want to be able to recruit their own candidates in some of these rural areas, but they’ve been prevented from doing that before, because, typically, people at the top decide: OK, it’s mostly a Republican district, there isn’t a chance in hell, we’re not putting any money there, which totally ignores the efforts of those areas to start recruiting more people into the party or to growing and building the party. And if you’re going to have a successful Democratic Party going into an election cycle, then you damn well better be bringing people into the party, and engaging them, and giving them a reason to vote.

KK: You know, a lot of what Judith is speaking to is this persistent idea or this set of assumptions, which I think are ultimately a disadvantage to the establishment, or the status quo, or however you want to refer to it, which is this assumption that just things will never change. And I think they’ve looked at the past, right? The left doesn’t have a great track record if you go back cycle after cycle after cycle; this is kind of a new movement, built out of the 2016 and 2020 Sanders’ campaigns in many ways. But one thing I think that we’re cognizant of, that we’re certainly a part of daily — whether it’s engaging in this work as a volunteer in the party and orgs like DSA or those of us who work professionally on progressive campaigns — is that we are building infrastructure to go toe to toe with the long-standing infrastructure that the Democratic establishment has relied on, whether that’s just rank-and-file organizers with the skill sets necessary to staff these campaigns, to the consultants and firms that campaigns need to build their teams out around to do fundraising, to do digital outreach, to tap into and be able to translate that kind of really successful small-dollar operation that Sanders pioneered in 2016, but make sure it works at every level.

And so, I think when they do things like this kind of take-their-ball-and-go canceling these consulting contracts here, that they think: Our consultants aren’t going to work with them, so they’re not going to be able to do anything. But the fact of the matter is that there are incredible operatives on our side of the aisle — or within our wing of the party — that raise incredible sums of monies without relying on contributions, like here in Nevada from the mining industry or the gaming industry that are true to their value, that outraised campaigns. I’ve been part of campaigns that didn’t accept corporate contributions where we did outraise outright — outraised and outspent — our incumbent establishment opponents.

And I’m really excited about the opportunity here! By no means did this slate run with the intent of coming in, and firing everyone, and canceling these contracts — although the other side kind of cynically campaigned on that message that we were going to do that. But now that we are faced with a clean slate, to me, that’s nothing but an opportunity to rebuild the party even more quickly, and build a team out of staff, and volunteers, and rank-and-file members, and consultants that have been doing incredible work to engage new constituencies. It was a big part of the Sanders campaign, the outreach to Latino and Hispanic communities, to Muslim communities here in Nevada; in particular, we had an extraordinary engagement with the broader Muslim communities, and two leaders of which are on our slate, Dr. Zaffar Iqbal, our second vice chair; and Ahmad Adé, our newly elected secretary.

And there are folks that have been rebuffed by the Democratic establishment that want to help do that work, that have been rebuffed here in Nevada, specifically, that want to do that work, and that have a strong track record of success. So we’re looking forward to the opportunity to work with folks like that as we strengthen our party here in Nevada, prepare for victory in 2022; as Judith said on the campaign trail repeatedly, she and this slate are not willing to concede a single seat in 2022, no matter what the anxieties might be out there, because we have a different approach that we think is a winning approach — that when we do things differently, different outcomes happen. I think they’re anticipating just doing the same thing, and the same outcome’s gonna happen, right? We’re gonna have this midterm bloodbath. But I don’t think that’s a given.

RG: Well, Senator TK Catherine Cortez-masto is up in two years. She seems to have worked against your slate. Judith, have you heard from her since you won? And what impact will this change to Nevada politics have on her race?

JW: Well, it’s really kind of a shame, because I actually had some really great conversations with her prior to this race. In fact, my last one with her, she seemed impressed with some of my plans and said she would be great with working with me. And then, suddenly, everything sort of seemed to change or go off track. So I’m not really sure about that or why, because I thought we had a fairly decent relationship. And I reassured her that we weren’t going to primary her and we were planning on going all-in on making sure she got reelected. So it seems kind of strange to me that you wouldn’t see the value of what we’ve been able to do, and how well we organize, and how we’re winning these elections by keeping everybody actively engaged. It seems to me like she would see the value of that and want to utilize that.

And no, she has not reached out to me. But I have reached out to her and gotten no response. I feel like it’s appropriate for me to try to reach out to everybody; I don’t usually wait for people to reach out to me first. It’s just always good to have good relationships, and I don’t believe in burning bridges or being in any way toxic, or hateful, or anything else, even though I’ve had it directed at me for numerous years. But that’s just that [it] doesn’t accomplish anything. That’s not what we’re trying to accomplish here.

We’re trying to restore democracy. And I’m fully aware that we can’t do anything if Republicans are in control or running the show. But I also am worried that if we don’t do something, it won’t be Democrats anyhow, because of what I’m seeing and hearing on the ground. So why wouldn’t you want to engage with one of the most effective organizing and fundraising machines for progressives, and bring them to the table also as another tool in your resources to make sure that you win in 2022? So I am surprised by that.

But I have reached out to elected officials. I’ve been doing the work and trying to set up meetings. And, so far, only one elected official — well, actually two now — have reached out to me. So, hopefully, maybe some more of them will decide this isn’t really the right move, will see the value of what we’re doing, and want to be engaged because it’s only going to help them.

RG: Judith, thanks so much for joining us on Deconstructed.

JW: Thank you, Ryan.

RG: And Keenan, thanks for being here. And congratulations to you both.

KK: Thank you so much. It was a pleasure.

[Credits music.]

RG: That was Judith Whitmer and Keenan Korth, and that’s our show.

Deconstructed is a production of First Look Media and The Intercept. Our producer is Zach Young. Our supervising producer is Laura Flynn. Our theme music was composed by Bart Warshaw. Betsy Reed is The Intercept’s editor in chief.

And I’m Ryan Grim, D.C. bureau chief of The Intercept. If you’d like to support our work, go to theintercept.com/give — your donation, no matter what the amount, makes a real difference.

If you haven’t already, please subscribe to the show so you can hear it every week. If you’re subscribed already, please do leave us a rating or review — it helps people find the show. And if you want to give us feedback, email us at Podcasts@theintercept.com. Thanks so much!

See you soon.

The post Bernie Backers Took Over the Nevada Democratic Party. The Old Guard Walked Out. appeared first on The Intercept.

09 Mar 19:16

Implementing Open Data Strategies for Climate Action: Suggestions And Lessons Learned for Government and Civil Society Stakeholders

by Wil Thomas
Tom Roche

summary of new 'working paper' @ https://files.wri.org/s3fs-public/implementing-open-data-strategies-for-climate-action.pdf (archived @ https://web.archive.org/web/20210309191356/https://files.wri.org/s3fs-public/implementing-open-data-strategies-for-climate-action.pdf ). pullquote:
> ['Implementing Open Data Strategies for Climate Action: Suggestions and Lessons Learned for Government and Civil Society Stakeholders'] aims to promote greater accessibility of climate-related data by building government officials’ and other stakeholders’ understanding of the benefits of open data practices for climate action, potential challenges, and ways to address these challenges while taking steps to ensure that data publication is impactful, responsible, and sustainable. It draws on a literature review, expert consultations, and observations from pilot projects implemented in Chile and Uruguay to provide insights for contexts with a range of data capacities, from those with mature data collection and publication protocols to those investing in new data generation processes.

Working Paper Featured Resource

[[ This is a content summary only. Visit my website for full links, other content, and more! ]]
09 Mar 04:39

Long Reads: Jim Wolfreys on Vichy France's Dark Legacy

by Jacobin
Tom Roche

VERY EXCELLENT!

Long Reads looks in-depth at political topics and thinkers, both contemporary and historical, with Jacobin’s longform writers. Hosted by Features Editor Daniel Finn.

Our guest today is Jim Wolfreys. Jim teaches French politics at King's College in London. Jim is author of Republic of Islamophobia: The Rise of Respectable Racism in France.

Read Jim's piece "How France's Vichy Regime Became Hitler's Willing Collaborators" here: https://www.jacobinmag.com/2020/07/vichy-france-holocaust-nazi-hitler-world-war-ii

See also his review of Jean-Marie Le Pen's memoir at https://www.jacobinmag.com/2021/02/le-pen-memoir-review-national-front and other articles here: https://www.jacobinmag.com/author/jim-wolfreys

Produced by Conor Gillies, music by Knxwledge.

08 Mar 15:23

Codementor: Descriptive Statistics for World GDP per Capita with Python

Learn how to produce descriptive statistics for GDP data using Python data science techniques.
08 Mar 14:39

News Brief: The Transactional Dog-Whistle Politics of the Term "Taxpayer"

Tom Roche

mostly good: though Carrillo is a bit identitarian fortunately offset by Adam and Nima dialing theirs back

On this News Brief, we discuss the ubiquitous weaponization of the term "taxpayer" in media and politics and how it deliberately smuggles right-wing, transactional and deeply racialized notions of people's relationship with their government into our cultural understanding of taxation, public spending and social services.   Our guest is the Law and Political Economy Project's Raúl Carrillo.
08 Mar 04:26

Why treason was so unforgivable in the Middle Ages

Tom Roche

EXCELLENT

Dr Amanda McVitty explains what treason meant in the medieval era, and why its consequences were particularly brutal

 

Dr Amanda McVitty, author of Treason and Masculinity in Medieval England, explains what treason meant in the Middle Ages. She explains how the crime was the subject of heated debate, and why the punishment for it was so brutal, humiliating and public.

 

See acast.com/privacy for privacy and opt-out information.

08 Mar 04:26

Voices of China

Tom Roche

tone is waay too breathlessly popularizing (beyond merely patronizing), but still interesting

Michael Wood, author of The Story of China, gives a lecture on the ancient civilisation’s rich and varied history. He introduces us to five individuals from across the centuries whose lives and voices can shed light on Chinese history, including an emperor, a footsoldier and a feminist.

 

See acast.com/privacy for privacy and opt-out information.

08 Mar 04:25

The Cold War: everything you wanted to know

Tom Roche

very conventional

From espionage across the Iron Curtain, to the global struggles between communists and capitalists, Michael Goodman responds to your questions on the decades of geopolitical tension that shaped relations between east and west in the second half of the 20th century, in the latest in our series tackling the big questions on major historical topics.

 

See acast.com/privacy for privacy and opt-out information.

08 Mar 04:25

HAP 70 - Tommy Curry on the Early 20th Century

Tom Roche

VERY EXCELLENT, esp Curry on William H. Ferris, also a Marxist reading (à la late/last period Du Bois) of Booker T. Washington

We chat with Tommy Curry about African-American thought between the turn of the century and the Harlem Renaissance.

08 Mar 00:23

Behind the News, 3/4/21

Tom Roche

[[https://scholars.duke.edu/person/nancy.maclean][Nancy MacLean @ Duke]], author of [[https://www.penguinrandomhouse.com/books/533763/democracy-in-chains-by-nancy-maclean/][Democracy in Chains]] and of a chapter cut from that book now published [[https://www.upenn.edu/pennpress/book/16153.html][here]], on the right’s reaction to Obama and what it portends for Biden • [[https://www.ecoequity.org/about/][Tom Athanasiou @ EcoEquity]] on what the US return to the Paris climate agreement means, and what Biden means for the climate (Nation article [[https://www.thenation.com/article/environment/paris-agreement-us-goals/][here]])

Behind the News, 3/4/21 - guests: Nancy MacLean on the right's reaction to Obama and what it portends for Biden; Tom Athanasiou on the Paris accord and climate politics - Doug Henwood
07 Mar 05:07

John Ludhi/nbshare.io: Python Generators

Tom Roche

> Python generators are great for building the pipelines. Let us open a CSV file and iterate through it using Python generator.

Python Generators

Python generators are very powerful for handling operations which require large amount of memory.

Let us start with simple example. Below function prints infinite sequence of numbers.

In [1]:
def generator_example1():
    count = 0
    while True:
        yield count
        count+=1
In [2]:
g = generator_example1()
In [3]:
next(g)
Out[3]:
0
In [4]:
next(g)
Out[4]:
1
In [5]:
next(g)
Out[5]:
2

and so on...

Python Yield

Ok let us revisit our function 'generator_example1()'. What is happening in the below code?

Inside while loop, we have 'yield' statement. Yield breakes out of loop and gives back control to whomever called function generator_exampe1(). In statement 'g = generator_example1()', g is now a geneator as shown below.

In [6]:
def generator_example1():
    count = 0
    while True:
        yield count
        count+=1
In [7]:
g = generator_example1()
In [8]:
g
Out[8]:
<generator object generator_example1 at 0x7f3334416e08>

Once you have a generator function, you can iterate through it using next() function. Since we have a infinite 'while' loop in the genereator_example() function, we can call iterator as many times as we want it. Each time, we use next(), generator starts the execution from previous position and prints a new value.

Python Generator Expression

Python generators can be used outside the function without the 'yield'. Check out the below example.

In [9]:
g = (x for x in range(10))
In [10]:
g
Out[10]:
<generator object <genexpr> at 0x7f3334416f68>

(x for x in range(10)) is a Python generator object. The syntax is quite similar to Python list comprehension except that instead of square brackets, generators are defined using round brackets. As usual, once we have generator object, we can call iterator next() on it to print the values as shown below.

In [11]:
next(g)
Out[11]:
0
In [12]:
next(g)
Out[12]:
1

Python Generator stop Iteration

Python generators will throw 'StopIteration' exception, if there is no value to return for the iterator.

Let us look at following example.

In [13]:
def range_one():
    for x in range(0,1):
        yield x
In [14]:
g = range_one()
In [15]:
next(g)
Out[15]:
0
In [16]:
next(g)
---------------------------------------------------------------------------
StopIteration                             Traceback (most recent call last)
<ipython-input-16-e734f8aca5ac> in <module>
----> 1 next(g)

StopIteration: 

To avoid above error, we can catch exception like this and stop the iteration.

In [17]:
g = range_one()
In [18]:
try:
    print(next(g))
except StopIteration:
    print('Iteration Stopped')
0
In [19]:
try:
    print(next(g))
except StopIteration:
    print('Iteration Stopped')
Iteration Stopped

Python Generator send()

We can pass value to Python Generators using send() function.

In [20]:
def incrment_no():
    while True:
        x = yield
        yield x + 1
In [21]:
g = incrment_no()    # Create our generator
In [22]:
next(g) # It will go to first yield
In [23]:
print(g.send(7)) # value 7 is sent to generator which gets assgined to x, 2nd yield statement gets executed       
8

Python Recursive Generator

Python generators can be used recursively. Check out the below code. In below function, "yield from generator_factorial(n - 1)" is recursive call to function generator_factorial().

In [24]:
def generator_factorial(n):
    if n == 1:
        f = 1
    else:
        a = yield from generator_factorial(n - 1)
        f = n * a
    yield f
    return f
In [25]:
g = generator_factorial(3)
In [26]:
next(g)
Out[26]:
1
In [27]:
next(g)
Out[27]:
2
In [28]:
next(g)
Out[28]:
6

Python Generator throw() Error

Continuing with above example, let us say we want generator to throw error for the factorial of number greater than 100. We can add generator.throw() exception such as shown below.

In [29]:
n  = 100
if n >= 100:
    g.throw(ValueError, 'Only numbers less than 100 are allowed')
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-29-bf449f9fafac> in <module>
      1 n  = 100
      2 if n >= 100:
----> 3     g.throw(ValueError, 'Only numbers less than 100 are allowed')

<ipython-input-24-e76bd978ab03> in generator_factorial(n)
      5         a = yield from generator_factorial(n - 1)
      6         f = n * a
----> 7     yield f
      8     return f

ValueError: Only numbers less than 100 are allowed

Python Generators Memory Efficient

Python generators take very less memory. Let us look at following two examples. In the examples below, note the difference between byte size of memory used by 'Python list' vs 'Python generator'.

In [30]:
import sys
In [31]:
#Python List comprehension
sequence = [x for x in range(1,1000000)]
sys.getsizeof(sequence)
Out[31]:
8697464
In [32]:
#Python Generators
sequence = (x for x in range(1,1000000))
sys.getsizeof(sequence)
Out[32]:
88

Python Generator Performance

One thing to notice here is that, Python generators are slower than Python list comprehension if the memory is large engough to compute. Let us look at below two examples from the performance perspective.

In [33]:
#Python List comprehension
import cProfile
cProfile.run('sum([x for x in range(1,10000000)])')
         5 function calls in 0.455 seconds

   Ordered by: standard name

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
        1    0.327    0.327    0.327    0.327 <string>:1(<listcomp>)
        1    0.073    0.073    0.455    0.455 <string>:1(<module>)
        1    0.000    0.000    0.455    0.455 {built-in method builtins.exec}
        1    0.054    0.054    0.054    0.054 {built-in method builtins.sum}
        1    0.000    0.000    0.000    0.000 {method 'disable' of '_lsprof.Profiler' objects}


In [34]:
#generators
import cProfile
cProfile.run('sum((x for x in range(1,10000000)))')
         10000004 function calls in 1.277 seconds

   Ordered by: standard name

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
 10000000    0.655    0.000    0.655    0.000 <string>:1(<genexpr>)
        1    0.000    0.000    1.277    1.277 <string>:1(<module>)
        1    0.000    0.000    1.277    1.277 {built-in method builtins.exec}
        1    0.622    0.622    1.277    1.277 {built-in method builtins.sum}
        1    0.000    0.000    0.000    0.000 {method 'disable' of '_lsprof.Profiler' objects}


Check the number of function calls and time the 'Python generator' took to compute the sum compare to Python 'list comprehension'.

Data Pipeline with Python Generator

Let us wrap up this tutorial with Data Pipelines. Python generators are great for building the pipelines.

Let us open a CSV file and iterate through it using Python generator.

In [41]:
def generator_read_csv_file():
    for entry in open('stock.csv'):
        yield entry
In [42]:
g = generator_read_csv_file()
In [43]:
next(g)
Out[43]:
'Date,Open,High,Low,Close,Adj Close,Volume\n'
In [44]:
next(g)
Out[44]:
'1996-08-09,14.250000,16.750000,14.250000,16.500000,15.324463,1601500\n'

Let us say, we want to replace the commas in the CSV for each line with spaces, we can build a pipeline for this.

In [45]:
g1 = (entry for entry in open('stock.csv'))
In [46]:
g2 = (row.replace(","," ") for row in g1)
In [47]:
next(g2)
Out[47]:
'Date Open High Low Close Adj Close Volume\n'
In [48]:
next(g2)
Out[48]:
'1996-08-09 14.250000 16.750000 14.250000 16.500000 15.324463 1601500\n'
In [50]:
next(g2)
Out[50]:
'1996-08-12 16.500000 16.750000 16.375000 16.500000 15.324463 260900\n'

Wrap Up:

It takes a little practice to get hold on Python generators but once mastered, Python generators are very useful for not only building data pipelines but also handling large data operations such as reading a large file.

06 Mar 15:48

Debunking US media propaganda against leftists in Latin America, from Venezuela to Nicaragua

Tom Roche

excellent, part 3 of 3

Ben Norton speaks with Venezuelan journalist Diego Sequera about the corporate media disinformation targeting leftist governments in Latin America. We discuss Venezuela, Nicaragua, Bolivia, Colombia, Costa Rica, Mexico, and even Libya. We also talk about the importance of food sovereignty, and respond to questions from viewers and listeners.

This is part 3 of our lengthy livestream with Diego: youtube.com/watch?v=WlRl0ZVUrHE

Diego's website Misión Verdad: misionverdad.com

Follow Diego on Twitter: twitter.com/QueraElse

04 Mar 02:58

Cuttlefish can pass the marshmallow test

by Jennifer Ouellette
Tom Roche

includes useful-if-very-abbreviated survey of literature on delayed-gratification (or ability to delay gratification) and its correlates

An aquatic invertebrate similar to a squid floats in an aquarium.

Enlarge / A common cuttlefish, Sepia officinalis, in the Marine Resources Center at the Marine Biological Laboratory, Woods Hole, MA. A new study finds the cuttlefish can delay gratification—a key feature of the famous "marshmallow test." (credit: Alexandra Schnell)

Certain species show a remarkable ability to delay gratification, notably great apes, corvids, and parrots, while other species do not (such as rodents, chickens, and pigeons.) Add the cuttlefish to the former category.

Scientists administered an adapted version of the Stanford marshmallow test to cuttlefish and found that the cephalopods could delay gratification—that is, wait a bit for preferred prey rather than settling for a less desirable prey. Cuttlefish also performed better in a subsequent learning test, according to a new paper published in the journal Proceedings of the Royal Society B. It's the first time such a link between self-control and intelligence has been found in a non-mammalian species.

As we've previously reported, the late Walter Mischel's landmark behavioral study involved 600 kids between the ages of four and six, all culled from Stanford University's Bing Nursery School. He would give each child a marshmallow and give them the option of eating it immediately if they chose. But if they could wait 15 minutes, they would get a second marshmallow as a reward. Then Mischel would leave the room, and a hidden video camera would tape what happened next.

Read 12 remaining paragraphs | Comments

03 Mar 20:31

Fired By Neera Tanden With Matt Bruenig

Tom Roche

VERY EXCELLENT not as banterish as many KHS

Today we welcome back to the program Matt Bruenig. Matt is an American lawyer, blogger, policy analyst, commentator, and founder of the left-wing think tank people's Policy Project. He was a blogger for the American think tank Demos covering politics and public policy — and has written on issues including income distribution, taxation, welfare, elections, and Scandinavian economic models.
02 Mar 19:14

Law and Disorder February 22, 2021

Story 402980519

Chris Hedges: Donald Trump Acquittal, Going Forward

Before going to prison Trump’s attorney and fixer Michael Cohen testified to Congress that Trump would never leave office peaceably. He sure didn’t. He instigated an insurrection on January 6th. His premeditated coup almost succeeded.

His plan appears to be that he would get his followers to prevent the ballot certification of Biden as president and cause enough mayhem to declare martial law. The marauders he sent to the White House hunted for Nancy Pelosi and Mike Pence. They roamed the Capitol chanting “Hang Mike Pence. Hang Mike Pence.” A sturdy gallows was constructed near the Capitol for that purpose.

Reportedly Trump took delight in all of this as it was going on and refused to call off the Capitol sackers or bring in the National Guard. The horrors of that day were dramatically presented by the House trial managers. Comprehensive videos were shown to a national audience. A totally convincing presentation was made. Any right thinking person watching would necessarily conclude that Trump was responsible for what happened. Trump’s defenses were demolished.

It was explained that Constitution allows for illegal and prior cases had established that Trump could be tried even after leaving office. The argument that he had free speech rights was effectively countered. Nevertheless he was not found guilty although seven Republicans refused to go along with their party’s defense of the indefensible. A number of Republican Senators, who were supposed to sit as impartial jury, met with Trumps defense lawyers. Twelve others did not even attend the last day of trial.

After the vote Mitch McConnell, voted to acquit on the spurious grounds that Trump could not be tried since he was no longer in office. He spoke of the possibility of Trump being tried for his crimes. The Republican lead acquittal of Donald Trump will be appreciated as a turning point in American history.  The vote to acquit him will be understood as a moment that democracy and the rule of law were trashed allowing the former president to retain his control over a transformed Republican Party which has become an instrument of demagoguery and white supremacy.

Guest – Chris Hedges, a Pulitzer prize winning journalist and considered by many on the left to be an American moral philosopher. He was forced out of his job at the New York Times for opposing the war in Iraq. Hedges is the author of many books including “American Facists: The Christian Right‘s War on America.“ He is the host of the RT show “On Contact”. His latest book is “America: the Farewell Tour.” He writes a weekly column for “Scheerpost” the latest is titled “Cancel Culture: Where Liberalism Goes to Die.

—-

ICC Investigation Into War Crimes Proceeds

In 2015, the State of Palestine became a member of the International Criminal Court and granted the Court jurisdiction over crimes committed on the territory of Palestine, including East Jerusalem, since June 13, 2014. The Prosecutor of the ICC opened a preliminary examination into crimes committed in Palestine on January 16, 2015, and the State of Palestine referred the case for investigation in May 2018. During the preliminary examination, Palestinian human rights organizations and victims made submissions describing war crimes and crimes against humanity committed by Israeli officials, including in relation to the 2014 military offensive on Gaza.

In December 2019, the Prosecutor found a reasonable basis to proceed with an investigation into war crimes and crimes against humanity committed on the territory of Palestine – the Gaza Strip and West Bank, including East Jerusalem. victims were invited to submit observations on the Prosecutor’s requests and Center for Constitutional Rights attorney Katherine Gallagher submitted on behalf of twenty Palestinian victims of persecution from all parts of Palestine and the diaspora. A year ago April, CCR joined more than 180 Palestinian, regional, and international human rights organizations in signing an open letter to the ICC prosecutor in support of opening the investigation.

Guest – Attorney Katherine Gallagher, senior attorney at the Center for Constitutional Rights, has appeared before the ICC in the Hague in Holland. She represented two men indefinitely detained in the US offshore prison camp in Guantanamo Bay, Cuba. Katie works on universal jurisdiction ad international criminal law cases involving US and foreign officials and torture and other war crimes.

—————————

02 Mar 19:12

Law and Disorder March 1, 2021

Story 405113116
  • Commentary By Attorney Jim Lafferty: Christian Nationalism

—-

Activists Face Felony Charges In Action Denouncing Elijah McClain Murder

On September 17, 2020 at least six anti-racist activists were arrested in an action denouncing the Colorado police, notably for the murder of Elijah McClain. In the summer of 2019, three Aurora Colorado police officers put 23-year-old McClain in a chokehold and medics injected him with ketamine. The young violinist and massage therapist went into cardiac arrest, was pronounced brain dead, and died three days later.

The social justice activists now face a litany of felony charges, and possible decades in prison, on charges that include “kidnapping.” Four of those arrested — Russel Ruch, Lillian House, Joel Northam, and Eliza Lucero — are considered protest leaders and are members of the Party for Socialism and Liberation.

Police made a spectacle of the arrests, sending what many assert is a threatening message to other activists. Police followed Russel Ruch to Home Depot where they arrested him in the parking lot; five police cars surrounded Lillian House as she was driving; and a S.W.A.T team was dispatched to Joel Northam’s home. According to the 30-page arrest affidavits, the police used livestream footage, call transcripts, and social media posts to build a case against those arrested.

Guest – Lillian House, one of the four protest leaders. More information at Denverdefense.org

—-

The Current Risk of Nuclear War And Treaty Restoration

When Donald Trump was president, the Democrats called him Putin‘s poodle. They falsely claimed that Russia influenced the election and caused Hillary Clinton to lose to Trump. Clinton famously said “all roads lead to Russia.“

But the truth of the matter was quite different. Despite Trump seemingly adoration of Vladimir Putin as a strong man, American policy towards Russia was not completely friendly. The question now is what will Biden do?

The risk of nuclear war with Russia has been a grave concern since the cold war of the 1950s. Under Presidents Donald Trump and Barack Obama  American nuclear policies were such that the threat of war including accidental war was never reduced. With Biden as president will this change? Will there be a restoration of nuclear treaties and a de-escalation.

Guest – Ray McGovern former CIA intelligence analyst, Ray briefed President George H. W. Bush every morning on intelligence matters, particularly with respect to Russia. He is a founder of VIPS, Veteran Intelligence Professionals for Sanity and a contributor to the blog Common Dreams.

———————–

02 Mar 19:07

Chen Bin (redguardtoo): Use Magit to commit efficiently and correctly

by Chen Bin
Tom Roche

using both git CLI and Magit, latter where it adds value

I prefer using git cli because it's more light weight.

Here is my bash alias of git commit,

alias gc="git commit -m"

The problem of my "cli-only" workflow is it can't detect my mistakes automatically.

I often forget to add new code file into git. So my final commit might miss files.

Magit UI solution

One solution is to use Magit to commit inside Emacs. After commit, I could double check the files inside the hooks provided by Magit.

My set up in Emacs,

(defun my-lines-from-command-output (command)
  "Return lines of COMMAND output."
  (let* ((output (string-trim (shell-command-to-string command)))
         (cands (nonempty-lines output)))
    (delq nil (delete-dups cands))))

(defun my-hint-untracked-files ()
  "If untracked files and commited files share same extension, warn users."
  (let* ((exts (mapcar 'file-name-extension (my-lines-from-command-output "git diff-tree --no-commit-id --name-only -r HEAD")))
         (untracked-files (my-lines-from-command-output "git --no-pager ls-files --others --exclude-standard"))
         (lookup-ext (make-hash-table :test #'equal))
         rlt)
    ;; file extensions of files in HEAD commit
    (dolist (ext exts)
      (puthash ext t lookup-ext))
    ;; If untracked file has same file extension as committed files
    ;; maybe they should be staged too?
    (dolist (file untracked-files)
      (when (gethash (file-name-extension file) lookup-ext)
        (push (file-name-nondirectory file) rlt)))
    (when rlt
      (message "Stage files? %s" (mapconcat 'identity rlt " ")))))

(with-eval-after-load 'magit
  (defun my-git-check-status ()
    "Check git repo status."
    ;; use timer here to wait magit cool down
    (run-with-idle-timer 1 nil #'my-hint-untracked-files))
  (add-hook 'magit-post-commit-hook #'my-git-check-status)
  (add-hook 'git-commit-post-finish-hook #'my-git-check-status))

Screenshot of step 1 in Emacs, magit-commit-step1.png

Screenshot of step 2 (final step) in Emacs (I was reminded of untracked files "bye.js" and "tree.js" at the bottom of UI), magit-commit-step2.png

BTW, my actual code in my .emacs.d is a bit different.

CLI solution

Another solution is doing the git thing in shell plus Emacs "-batch" option.

Here is my bash setup,

function gc {
    # check my emacs.d exist
    if [ -f "$HOME/.emacs.d/README.org" ] && [ "$PWD" != "$HOME/.emacs.d" ]; then
        # magit hook does not work
        git commit -m "$@" && emacs -batch -Q -l "$HOME/.emacs.d/init.el" --eval "(my-hint-untracked-files)"
    else
        git commit -m "$@"
    fi
}

Please note running magit-commit-create in cli won't work. It's because magit-run-git-async in called and it might lock the git after the cli execution.

Screenshot in shell, magit-commit-in-shell.png

02 Mar 02:19

How Colombia's US-backed narco-regime massacred thousands of innocent people and blamed socialists

Tom Roche

part 2 of 3

Ben Norton speaks with Venezuelan journalist Diego Sequera about the far-right government in Colombia, its close links to drug cartels and death squads, Latin America's anti-imperialist Bolivarian movement, the brutally violent repression of the Colombian left, and the false positives scandal, in which the Colombian military massacred over 6400 innocent people and falsely claimed they were socialist guerrillas.

This is part 2 of our lengthy livestream with Diego: youtube.com/watch?v=WlRl0ZVUrHE

Diego's website Misión Verdad: misionverdad.com

Follow Diego on Twitter: twitter.com/QueraElse

02 Mar 02:19

Life in Venezuela under US sanctions, resisting the imperial gangsters in Washington

Tom Roche

part 1 of 3

Ben Norton speaks with Venezuelan journalist Diego Sequera, from inside Caracas, about the US blockade, the Biden administration's continued recognition of puppet Juan Guaidó, and Washington's gangster-like theft.

This is part 1 of our lengthy livestream with Diego: youtube.com/watch?v=WlRl0ZVUrHE

Diego's website Misión Verdad: misionverdad.com

Follow Diego on Twitter: twitter.com/QueraElse

02 Mar 02:11

Jacobin Show: Why Americans Hate the Government w/ Matt Bruenig

by Jacobin
Tom Roche

VERY EXCELLENT all 3 segments (Pan, Thornhill, Bruenig)

Every Wednesday at 6 PM ET, Jen Pan, Ariella Thornhill, and Paul Prescod host a new episode of The Jacobin Show, offering socialist perspectives on class and capitalism in the twenty-first century, the failures of liberalism, and the prospects of rebuilding a left labor movement in the US. This is the audio version of the broadcast on February 24, 2021.

Matt Bruenig, founder and president of People's Policy Project, joins the show to talk about building a functioning welfare state, the Family Fun Pack, and what's wrong with how we think about the racial wealth gap today.

Subscribe to Jacobin for just $10: https://jacobinmag.com/subscribe/?cod...

Music provided by Zonkey: https://linktr.ee/zonkey

28 Feb 21:13

The Vast Majority: Mike Davis's Forecast

by Jacobin
Tom Roche

VERY EXCELLENT survey of Davis' life and work

The interviewer becomes the interviewee this week, as Micah Uetricht talks with Jacobin staff writers Meagan Day and Alex Press about his recent piece in the Nation, "Amid the Wildfires: Mike Davis's Forecast for the Left."
28 Feb 03:02

The Democrats Try To Cancel Fox News, with Shahid Buttar

Tom Roche

excellent as usual, esp funny bit about (some) US teens' ignorance about WW2 and early-20c history

Shahid Buttar joins the show to discuss Democrats, Fox News, and free speech. Hosts Matt Taibbi and Katie Halper discuss Tennessee GOP efforts to prohibit kneeling during college sports national anthems.


Merch link: https://teespring.com/stores/useful-idiots

Learn more about your ad choices. Visit podcastchoices.com/adchoices

28 Feb 02:40

The Open Sourcerer: A new data format has landed in the upcoming GTG 0.5

Here’s a general call for testing from your favorite pythonic native Linux desktop personal productivity app, GTG.

In recent months, Diego tackled the epic task of redesigning the XML file format from a new specification devised with the help of Brent Saner (proposal episodes 1, 2 and 3), and then implementing the new file format in GTG. This work has now been merged to the main development branch on GTG’s git repository:

Diego’s changes are major, invasive technological changes, and they would benefit from extensive testing by everybody with “real data” before 0.5 happens (very soon). I’ve done some pretty extensive testing & bug reporting in the last few months; Diego fixed all the issues I’ve reported so far, so I’ve pretty much run out of serious bugs now, as only a few remain targetted to the 0.5 milestone… But I’m only human, and it is possible that issues might remain, even after my troll-testing.

Grab GTG’s git version ASAP, with a copy of your real data (for extra caution, and also because we want you to test with real data); see the instructions in the README, including the “Where is my user data and config stored?” section.

Please torture-test it to make sure everything is working properly, and report issues you may find (if any). Look for anything that might seem broken “compared to 0.4”, incorrect task parenting/associations, incorrect tagging, broken content, etc.

If you’ve tried to break it and still couldn’t find any problems, maybe one way to indicate that would be a “👍” on the merge request—I’m not sure we really have another way to know if it turns out that “everything is OK” 🙂

Your help in testing this (or spreading the word) will help ensure a smooth transition for users getting an upgrade from 0.4 to 0.5, letting us release 0.5 with confidence. Thanks!

27 Feb 15:26

Behind the News, 2/25/21

Tom Roche

Mike Lofgren on the cultural devolution of the right (article [here](https://www.commondreams.org/views/2021/02/12/right-devolves-js-bach-skinhead-rock)) • Gustavo Gordillo and Brandon Tizol @ NYC DSA of [DSA’s public power campaign](https://publicpower.nyc/) on socializing electricity

Behind the News, 2/25/21 - guests: Mike Lofgren on the cultural devolution of the right; Gustavo Gordillo and Brandon Tizol on socializing the electricity sector - Doug Henwood
25 Feb 03:02

Gerald Horne on the Political Economy of Boxing and Slavery

22 Feb 23:57

Long Reads: Peter Hudis on Frantz Fanon and the Revolution Against Racism

by Jacobin
Tom Roche

VERY EXCELLENT

Long Reads is a Jacobin podcast looking in-depth at political topics and thinkers, both contemporary and historical, with the magazine’s longform writers. Hosted by Features Editor Daniel Finn.

The guest for this episode is Peter Hudis. Peter teaches philosophy at Oakton Community College and is the author of Frantz Fanon: Philosopher of the Barricades.

Read his essay, "The Revolutionary Humanism of Frantz Fanon" here: https://www.jacobinmag.com/2020/12/humanism-frantz-fanon-philosophy-revolutionary-algeria

Produced by Conor Gillies, music by Knxwledge.

21 Feb 03:37

Irreal: Managing Window Placement

by jcs

One of the tropes of Emacs use is the idea that there’s always something new to learn about the editor. I know that to be true but today it was brought home to me by a new video from Protesilaos Stavrou. The video is nominally about managing window placement but part of that is the notion of “side window.”

I had never heard of them before or even the concept that they implement. It’s no wonder. While I was preparing to write this I looked them up in the documentation but couldn’t find anything at all about them in the Emacs manual. I had to consult the Elisp manual to find any information about them.

The problem that Stavrou is seeking to solve is the inconsistent placement of the windows that pop up for things like HELP. Sometimes a new window is created; other times an existing window is reused. If you’re like me, you probably suspected that the behavior is configurable but haven’t seen or used the mechanism to do it. Window placement configuration is fairly fine-grained so you can pretty much have it anyway you like.

Unless you’re very particular about window placement or want to implement something like emacs-dir-treeview, you probably won’t need to deal with side windows or the other functionality that Stavrou discusses but his video does show how the configuration is possible if you need it. The video is just short of 19 minutes long so plan accordingly.