BaixaCharla ao vivo #8: Racismo Algorítmico



This week, Thea Lenarduzzi and Lucy Dallas as joined by Keith Hopper, a critic of film and literature, to revisit the film ‘Midnight Cowboy’ (1969), a 'dark, difficult masterpiece' starring Jon Voight as an aspirant sex worker and Dustin Hoffman as his friend, an ailing con man; before it’s available in English, the journalist Henri Astier delves into the 'secret' diary of Michel Barnier, the European Union’s Brexit negotiator, who the British tabloids named 'the most dangerous man in Europe'; plus, what does Brexit mean for books?
‘Shooting Midnight Cowboy: Art, sex, loneliness, liberation, and the making of a dark classic’ by Glenn Frankel
‘La Grande Illusion: Journal secret du Brexit (2016-2020)’ by Michel Barnier
A special subscription offer for TLS podcast listeners: www.the-tls.co.uk/buy/pod
Hosted on Acast. See acast.com/privacy for more information.



Figura central da arquitetura brasileira, Lina Bo Bardi tem duas importantes biografias publicadas no Brasil e é homenageada na Bienal de Veneza. Os dois livros, a obra e o legado de Lina são analisados pela colunista Bianca Tavolari, que coordena a seção As Cidades e As Coisas na revista Quatro Cinco Um.
Assine a revista e apoie o podcast 451 MHz: https://bit.ly/Assine451

This week, Thea Lenarduzzi and Lucy Dallas are joined by Noo Saro-Wiwa, the author of ‘Looking for Transwonderland: Travels in Nigeria’, to discuss developments in travel writing; Alice Kelly, the author of ‘Commemorative Modernisms: Women writers, death and the First World War’, considers how conflict permeates American culture; plus, a new poem by André Naffis-Sahely, ‘At the Graves of Labour’s Fallen’
‘The Travel Writing Tribe: Journeys in search of a genre’ by Tim Hannigan
‘War and American Literature’, edited by Jennifer Haytock
‘A History of American Literature and Culture of the First World War’, edited by Tim Dayton and Mark W. Van Wienen
A special subscription offer for TLS podcast listeners: www.the-tls.co.uk/buy/pod
Hosted on Acast. See acast.com/privacy for more information.
With WordPress 5.8 launching on July 20th, it seems like a great time to round up some resources to help theme authors prepare for the future. By now, you’ve probably heard about block themes and the upcoming future of full site editing. Perhaps you have even begun to explore creating a block theme or adapting your current theme to some of the new features, like template editing mode. Whether you’re just starting out or already deep in the block theme world, the following resources should help you be aware of what’s to come and how to get involved in shaping the future. If you’re looking for a quick snapshot, it’s recommended to review the following for 5.8:
Curate your information
Since block themes are currently evolving along with the features to support them, it’s helpful to start by figuring out what will help you stay up to date with the latest happenings, as that makes sense for you. Here are a few options:
Dive into resources
Outside of knowing the latest, it helps to know what the best practices are to follow. The following should give you great places to start:
Learn from and with others
Since this is an area that folks across the WordPress community are diving into, there are some fantastic ways to keep in touch with what others are experimenting with, how they are solving problems, how they are getting started, and more. Especially during a time where we can’t meet up and look over someone’s shoulder at a WordCamp, hopefully these resources help bridge that divide even a tiny bit.
While these are the resources we found most useful, we’d love to hear from you too. What resources have been helpful for you to explore block themes and the various pathways leading up to full site editing? Share in the comments so we can all learn together.
In the last post we shared the idea of a “universal” theme. This post looks at how we can use classic WordPress tools (in this case the Customizer) to customize a block theme, while saving these changes in Global Styles – making a universal theme!
Block themes use a theme.json file to define many aspects of the theme, e.g. color palettes and typography. Gutenberg provides a tool to edit these settings (called Global Styles). When a user changes these values in the Global Styles UI, the changes are not saved back into the theme.json file but instead are saved to a Custom Post Type (CPT) in WordPress. Because this CPT can be modified using WordPress APIs, this gives us the power to make changes to Global Styles without relying on the interface in Gutenberg.
This simple idea is the basis for the color and typography customization options we have added to our universal theme Blockbase. The rest is just implementation details…
When the Customizer loads, we create two new sections:
$wp_customize->add_section(
'customize-global-styles-colors',
array(
'capability' => 'edit_theme_options',
'description' => sprintf( __( 'Color Customization for %1$s', 'blockbase' ), $theme->name ),
'title' => __( 'Colors', 'blockbase' ),
)
);
$wp_customize->add_section(
'customize-global-styles-fonts',
array(
'capability' => 'edit_theme_options',
'description' => sprintf( __( 'Font Customization for %1$s', 'blockbase' ), $theme->name ),
'title' => __( 'Fonts', 'blockbase' ),
)
);
In each of these sections we create new settings and controls – each setting and control relates to a color/font option in Global Styles. We read the content of the theme.json file and use this to populate the settings in the Customizer. There is a helpful function in Gutenberg which merges together the theme.json settings with any user settings:
WP_Theme_JSON_Resolver_Gutenberg::get_merged_data()->get_raw_data();
We read in an array of color palettes from the theme.json file and display these inside the “Colors” section:


One of the powers of Global Styles is that it relies on CSS variables. This makes it very easy for us to update the Customizer preview when the controls are changed. Some simple javascript injects new values for these CSS variables into the page, meaning that the preview updates instantly.
First we bind a listener to the control:
// For each of the palette items add a listener
userColorPalette.forEach( ( paletteItem ) => {
const settingName = userColorSectionKey + paletteItem.slug;
wp.customize( settingName, ( value ) => {
value.bind( ( newValue ) => {
paletteItem.color = newValue;
blockBaseUpdateColorsPreview( userColorPalette );
} );
} );
} );
This updates the global variable userColorPalette, which we then use to create our CSS variables:
function blockBaseUpdateColorsPreview( palette ) {
// build the CSS variables to inject
let innerHTML = ':root,body{';
palette.forEach( ( paletteItem ) => {
innerHTML += `--wp--preset--color--${ paletteItem.slug }:${ paletteItem.color };`;
} );
innerHTML += ';}';
// inject them into the body
const styleElement = document.getElementById(
'global-styles-colors-customizations-inline-css'
);
styleElement.innerHTML = innerHTML;
}
Customizer settings are usually saved in a site option or a theme mod. Since we are building a universal theme, we need to save these changes into Global Styles so that they are reflected in the Site Editor. The easiest way we found to achieve this was to hook into the customize_save_after action, read the settings from the controls, and then update the Global Styles CPT with the new settings. This code is used to get and read the CPT:
WP_Theme_JSON_Resolver_Gutenberg::get_user_custom_post_type_id();
get_post( $user_custom_post_type_id );
json_decode( $user_theme_json_post->post_content );
Once you have the CPT in JSON form it’s simply a case of adding the new settings to it, and saving them back into the CPT:
$user_theme_json_post_content->settings->color->palette = $this->user_color_palette;
wp_update_post( json_encode( $user_theme_json_post_content ) );
Color palettes are simply combination of color settings. When a user selects a palette we simply change all of the associated colors at once. This can be done with the Javascript API:
wp.customize.control( userColorSectionKey ).setting.set( color );
The code above is just pseudo code, to explain the concepts. For a fully working example see Blockbase freely available in our free themes repository. This code has a GPL license and can therefore be copied and distributed freely.
However, if you are interested in building a universal theme I would encourage you to use Blockbase as a parent theme. This will mean you get all future improvements to your theme for free!
The Customizer gets a bad rap, and it’s true that it is clunky when compared to the direct manipulation that is possible with Gutenberg. Nevertheless, building these kinds of tools to update Global Styles without the framework of the Customizer would have been much more involved. There is some satisfaction in being able to take advantage of all the hard work that has gone into the Customizer in its final years!
In this bonus TLS long read, the writer Joyce Carol Oates explores the quintessential American minimalism of Walker Evans.
www.the-tls.co.uk/articles/walker-evans-svetlana-alpers-review-joyce-carol-oates
If you would like to listen to more audio articles from The TLS, you can do so on The TLS website or the News Over Audio app.
A special subscription offer for TLS podcast listeners: www.the-tls.co.uk/buy/pod
Hosted on Acast. See acast.com/privacy for more information.


This week, Thea Lenarduzzi and Lucy Dallas are joined by Adam Watt, Professor of French and Comparative Literature at the University of Exeter, to mark 150 years since the birth of Marcel Proust, whose legacy seems stronger than ever; Sarah Lonsdale, the author of 'Rebel Women Between the Wars', re-considers ‘Diary of a Provincial Lady’, a funny novel about interwar life in deepest Devon whose darker tones tend to be overlooked; plus, Mary Beard on new developments at the Colosseum.
A special subscription offer for TLS podcast listeners: www.the-tls.co.uk/buy/pod
Producer: Ben Mitchell
Hosted on Acast. See acast.com/privacy for more information.