Shared posts

21 Jan 03:57

At least $34 million is stolen from users of Crypto.com

Crypto.com logo: blue hexagon with face-like symbol in it next to the text

Popular cryptocurrency wallet provider and trading platform Crypto.com briefly suspended trading after acknowledging there had been "unauthorized activity" in user accounts. The platform restored trading later that day after pushing an update to require their users to re-authenticate their sessions and reset two-factor authentication.

Although some users reported funds missing from their wallets, including one investor who reported that $16.3 million missing, Crypto.com announced that "All funds are safe". Over the next few days this was revealed to be untrue; as of January 20, the total estimated funds stolen from the platform had reached $30 million. Large amounts of stolen funds were quickly laundered through Tornado Cash, a popular crypto mixer.

21 Jan 03:57

Pulp Fiction

A dozen years ago, our growing family created a problem: Too many books! So after I finished ripping our thousand CDs, we repurposed the CD rack into a bookcase, stuffed it with our genre paperbacks, and put it in the guest room. A few years later, the guest room became our son’s room and the pulp fiction went into boxes. But just now after another bout of domestic reorganization, they’re back out among us. I find their dingy colorful presence cheering. Check out the picture!

Bookcase full of pulp fiction

For those who want to pixel-peep authors and titles,
here’s a full-sized version.

There you have it; 7½ shelves of Sci-Fi, 6½ of mysteries and thrillers, 250 or so books. Likely very few of these will feature in Lit Crit courses any time soon, but they are full of imagination and intensity and color, and in aggregate contributed significantly to the comfy and cluttered interior decor of my mind.

Now a few statistics, which I suspect that connoisseurs of 20th-century popular fiction will find pleasing.

  1. Most popular authors: Rex Stout (32 volumes), Gene Wolfe (21), Elmore Leonard (16).

  2. Less-renowned authors whom we apparently enjoy and you might too: Michael Dibdin (9), Clifford D. Simak (8), Sara Paretsky (7).

  3. Special smiles: Delany, Disch, LeGuin, Leiber, Zelazny.

  4. We have moderns! Charlie Stross (9), by which we observe that he became productive before pulp became Kindlified.

  5. Most-loved, judged by the level of tatter: The Mote in God’s Eye and The Moon is a Harsh Mistress. I’m pretty sure I bought the latter when I was about 14.

  6. Retired due to not having aged well: Travis McGee.

  7. Still on the upstairs shelves due to being mostly hardcover: Gibson and Gaiman.

Their new location means we walk by them when we go upstairs to bed. After another shitty 21st-century day, the appeal of curling up with 20th-century storytelling will be strong.

21 Jan 03:54

Streaming indented output of a JSON array

by Simon Willison

I wanted to produce the following output from a command-line tool:

[
  {
    "id": 1,
    "name": "Simon"
  },
  {
    "id": 2,
    "name": "Cleo"
  },
  {
    "id": 3,
    "name": "Azi"
  }
]

But I wanted to do it from a streaming iterator - without first buffering the entire output in an in-memory Python list and calling json.dumps() on it.

Here's the pattern I came up with:

import itertools, json, textwrap

def stream_indented_json(iterator, indent=2):
    # We have to iterate two-at-a-time so we can know if we
    # should output a trailing comma or if we have reached
    # the last item.
    current_iter, next_iter = itertools.tee(iterator, 2)
    next(next_iter, None)
    first = True
    for item, next_item in itertools.zip_longest(current_iter, next_iter):
        is_last = next_item is None
        data = item
        line = "{first}{serialized}{separator}{last}".format(
            first="[\n" if first else "",
            serialized=textwrap.indent(
                json.dumps(data, indent=indent, default=repr), " " * indent
            ),
            separator="," if not is_last else "",
            last="\n]" if is_last else "",
        )
        yield line
        first = False
    if first:
        # We didn't output anything, so yield the empty list
        yield "[]"

Example usage:

for line in stream_indented_json(item_iterator):
    click.echo(line)

I built this for s3-credentials issue #48.

21 Jan 03:46

Twitter Favorites: [therealjfrantz] iOS’s new text detection mistook a windowpane in San Francisco for some Chinese characters. The translation is kind… https://t.co/ISVZOMPO6C

jacob @therealjfrantz
iOS’s new text detection mistook a windowpane in San Francisco for some Chinese characters. The translation is kind… twitter.com/i/web/status/1…
21 Jan 03:08

"A signal is not a trend. A trend is not a future. A future is not THE future."

“A signal is not a trend. A trend is not a future. A future is not THE future.” -...
21 Jan 03:06

Downgrade Surface Laptop Studio or Surface Pro 8 to Windows 10

by danchar
Microsoft only provides Windows 10 pre-installed on the Surface Laptop Studio and Pro 8 for bulk Enterprise orders. So I've collected the manual steps here to help IT admins exercise downgrade rights.

read more Downgrade Surface Laptop Studio or Surface Pro 8 to Windows 10

21 Jan 03:04

Tricking Postgres into using an insane – but 200x faster – query plan

Tricking Postgres into using an insane – but 200x faster – query plan

Jacob Martin talks through a PostgreSQL query optimization they implemented at Spacelift, showing in detail how to interpret the results of EXPLAIN (FORMAT JSON, ANALYZE) using the explain.dalibo.com visualization tool.

21 Jan 03:00

Inclusive hiring – there’s a lot more than posting on the right job board

by Tara Robertson

“Which job board do I post on to reach diverse* candidates?” is a question I’m asked on a weekly basis. There’s more to attracting underrepresented talent than simply where you advertise job opportunities. Attracting new talent starts with having an honest look inward at your current culture. How are you growing and developing your team now? Who is rising up the ranks? Who is represented in leadership (and in the succession plans for leadership?) Who is choosing to leave and why? You need to do an honest look inward before you identify external places to post a job ad.

I have a lot to say on inclusive hiring–this is the first in a series of five posts that I’ll be posting over the next couple of weeks. 

Assess your culture today

person cleaning a hardwood floor with a red vacuum cleaner

I try to clean (or at least tidy) my apartment before guests come over. At minimum, I make sure there’s a place for them to hang their coat, that there’s toilet paper in the bathroom and that I have a clean glass or mug to offer guests something to drink. Thinking along similar lines–does your internal culture need a little bit of a tidy up before you invite new people to join your company? 

Different kinds of data can be very helpful in understanding the big picture. 

Do a voluntary self identification project so you can look at aggregate data about gender, race/ethnicity, disability status, caregiver status, veteran status, etc.

You can use this data to help you understand who is represented in your company now and see how your diversity efforts change over time.

Look at your engagement survey data to understand where there are differences between majority and marginalized demographic groups.


For example, do women, non-binary folks and men all report feeling the same degree of safety to report harassment? Do Asian, Black, Indigenous, Latinx, and white staff all report they have managers who are invested in their growth? Is there a specific office, region, or business unit that has outlier high scores for belonging that you can learn from? Culture Amp has a list of common demographics that might be useful for planning your engagement survey.

Use focus groups to dig deeper to understand why you’re seeing gaps between groups.


After analyzing your engagement survey you might see that there’s a big gap between Asian and white staff on a question about your manager showing genuine interest in your career aspirations. You may know overall at your company that Asian staff’s scores are 20 points lower, but until you really understand why you can’t change things. Focus groups can be a useful way to probe deeper to understand how staff are really experiencing the workplace and really hear about systemic issues.

Audit your voluntary attrition data and exit survey data to understand the patterns of who is leaving and why.


I love Dr. Erin Thomas’ wisdom on this topic. She suggests talking to the departing employee’s manager, HR Business Partner, closest collaborators and work friends and her unconventional advice is to circle back with the departing employee 6-12 months after they’ve left when they’re more likely to have the perspective of what wasn’t working and be willing to share it.

Representation is affected by hiring AND attrition. If a demographic group is leaving faster than you’re hiring you will never shift representation. Attrition is an important, and often overlooked, part of this equation.

Listen to what current and former staff are saying about their experience on social media


What are current employees saying about you on Blind? What are former employees saying about you on Glassdoor? What are employees saying about you on Twitter, LinkedIn, Instagram? The Instagram account Change the Museum posts anonymous quotes detailing “tales of unchecked racism”. 

Lego minifig holding a balloon in one hand and flowers in the other. On a stack of bricks including Megan Hall, Chocolate Soup, VP Operations, CS 2020, Late Founder, 1 year
From Chocolate Soup’s Instagram Used with permission.

Of course, it’s not just negative experiences that people share. When I see people at various companies posting personalized Lego blocks from Chocolate Soup on my LinkedIn feed, it always makes me smile. I love reading people’s work stories where they’ve been encouraged to stretch and grow, or where a team was more than the sum of its parts and did something new and innovative.

You should have a better idea of where your culture is awesome and where it needs work. You need to work to fix the problems, whether it’s a culture that celebrates brilliant assholes, or the practice of sweeping bullying and harassment under the carpet. If you don’t do the work to fix what’s not working you may be successful in hiring underrepresented talent, but they’re not going to stay long. Also: staff morale and engagement will tank. When staff take the time and risk to share their experience, you need to hear them, and then act to fix those. 

Before you invite guests over for a party, fix the wobbly handrail at your front steps, clean the bathroom and make sure you’ve vacuumed the dog hair off the couch. 

*A note on language: “diverse” is an adjective that can describe a group of people. A singular person can not be diverse. People use “diverse” as a shorthand for saying what they actually mean because it’s short, sweet and many of us have been taught that it’s impolite to be specific.  If you’re looking to hire women for engineering manager roles, say that. If your university internship program is focused on university students with disabilities, say so. If you’re looking specifically to hire Black senior leaders, then say that. In some places you can’t be this explicit  in the job ad, but you should be clear about who you’re looking to attract. Using vague language like “diverse” allows us to hire someone who is different in a small way (like, someone who has a university degree, but it’s not from an Ivy League school). This means we dodge accountability for prioritizing historically marginalized people and moving the needle in meaningful and necessary ways. 

Thank you to Jess Mitchell and Aubrey Blanche for feedback on this post. 

The post Inclusive hiring – there’s a lot more than posting on the right job board appeared first on Tara Robertson Consulting.

21 Jan 02:56

What goes into making an OS to be Unix compliant certified?

Terry Lambert, Apple Core OS Kernel Team:

We had a lot of gratitude in the Open Source community particular for our fixes to make bash pass the tests.

You have absolutely no idea how much Apple contributed to the Open Source community, as part of this project, because it was a secret project - at least to people outside Apple so we didn't advertise the fact.

But I expect we contributed about two million lines of code, to hundreds of Open Source projects, over the course of that year.

A lot of gratitude - but it wasn't collective, and so Apple was still faulted for "using Open Source code, but never contributing back".

We fixed at least 15 major gcc bugs, for example.

You have no idea.

21 Jan 02:54

Death rates by vaccination booster status

by Nathan Yau

Our World in Data continues their important work on providing and showing up-to-date Covid data. Most recently, they updated death rates in Switzerland by vaccination plus booster status. The rates for the unvaccinated are expectedly much higher, but also the rates for those with a booster are multiples lower than those fully vaccinated with no booster.

Tags: coronavirus, mortality, Our World in Data, vaccination

21 Jan 02:51

Twitter Favorites: [syncros] A city grows underneath. Panoramic view of @OntarioPlace reflecting majestically over the frozen lake. https://t.co/K5o05CORFV

I'll be Frank with you @syncros
A city grows underneath. Panoramic view of @OntarioPlace reflecting majestically over the frozen lake. pic.twitter.com/K5o05CORFV
21 Jan 02:49

So this is Covid

by Doug Belshaw
Covid-19

How ironic, to get a positive PCR test result on the same day that the government announces the end of many Covid-related restrictions. Welcome to my life.

So this is Covid
And what have you done?
Another isolation over
And a new one just begun

A very merry Covid
And a happy lateral flow
Let’s hope it’s a good one
Without any T’s

And so this is Covid
I hope you have fun
Infecting the near and the dear ones
The old and the young

Thankfully, because I’ve had my vaccinations, my symptoms are so mild that I can work through it and haven’t choked to death. My lateral flow test was negative this morning, so I have no doubt I’ll be able to end self-isolation early (midnight Sunday).

A cynic might note that the early end to restrictions in England seems designed to appease hardline Tories in an attempt to prop-up Boris Johnson’s premiership. Especially when yesterday saw the highest Covid-related death toll since last February.

At least my son will be happy he doesn’t have to wear a mask in class any more. Let’s just hope he doesn’t join his sister in isolation given that it’s his birthday in the next few days…

The post So this is Covid first appeared on Open Thinkering.
21 Jan 02:47

Careless Whispers

by Katherine Alejandra Cross and Anastasia Schaadhardt

In November of last year, 17-year-old Zander Cumbey noticed some disturbing social media posts shared by a classmate, including a “countdown” and more “really scary stuff.” Other students at his high school were also aware of these posts, and some of them stayed home on November 30th in fear for their safety. Cumbey decided to attend because “he assumed that school administrators had the situation handled.”

That day, 15-year-old Ethan Crumbley shot multiple students at his high school in Oxford, Michigan, killing four students. In the week that followed, more than 150 threats were made to schools across the country (which, for comparison, is about the number of threats made during the entire month of September that same year).

Just over two weeks after the Oxford shooting, several school districts were forced to respond to more alleged shooting threats by issuing warnings to parents, increasing security, or closing entirely; and students in several states, including Florida, Connecticut, Pennsylvania, Texas, and Ohio, were arrested in relation to them. This wave of threats, however — while part of the post-Oxford cascade of copycats — was determined to be part of a social media trend apparently started and propagated on TikTok as a “challenge”: to make December 17th, the last day of class before the winter break, a day of nationwide school shootings. It’s unclear whether the primary motivation behind this was actually to inspire a wave of shootings or instead to prompt school closures. Most threats were deemed by police and school districts not to be credible. 

What emerged in the wake of Oxford was what many feminists might call a “whisper network,” created by a community with unmet needs

Nobody can seem to find the original threats on TikTok, or even determine whether they existed at all. (TikTok’s Communications Team tweeted that they were “working with law enforcement” to investigate the threats, but had not found evidence for them.) Instead, the rumors spread as warnings, shared by users about what would happen on the 17th. The ambiguity of the threat — simultaneously trending but also nowhere to be found, targeting all U.S. schools but also specific ones, “not credible” but also resulting in arrests — served to intensify the discombobulation of students, parents, and teachers trying to understand what to do. Students encouraged other students to stay home, expressed distrust of authorities who said that the threats were false; most of all, they talked about the fear and confusion they felt and told others to “stay safe.” Teens were not the only ones posting about the challenge; parents on TikTok also warned each other about sending their kids to school on the 17th, and gave advice for talking to their children about it. 

The dominant reaction by parents and adult authorities was to lecture and condescend to kids who, in the end, were only trying to keep themselves safe. The Frisco, Texas police chief told students in a community message that they “must convey to [their] classmates these threats are not funny or cool.” Other messages recommended that students avoid sharing posts about threats on social media to stop the spread of rumors. While TikTok was pilloried for seeming to profit off of the terrorizing of young people, and for platform incentives that made this viral campaign possible in the first place, it was ultimately “TikTok teens” who got blamed for spreading misinformation. The moral panic that ensued was only quelled by news of the emerging Omicron variant.

This brief but tragic episode highlights the ways social media and its vulnerable or marginalized users can be scapegoated for larger social problems. What really drove this phenomenon was a certain desperation among schoolchildren who felt abandoned by their elders — in the Oxford shooting, authorities had an opportunity to stop Crumbley, but did nothing to contain him. As we’ve all experienced, to one degree or another over the last two years, fear and the sense of abandonment by powerful authorities can drive compulsive behavior online: from doomscrolling, to sharing a viral TikTok in the desperate hope that it’ll save someone’s life. Young people — facing just as many threats, but with less power to protect themselves — are just as susceptible as their elders. 


What emerged in the wake of Oxford was what many feminists might call a “whisper network.” Though that term is often used to describe the informal network of contacts who warn one another about abusive members of an affinity group, it can also describe any informal association of people who are attempting to reverse-engineer protective infrastructure for themselves when official channels for such things have been blocked or suborned. 

Whisper networks are infrastructural desire paths created by communities that have unmet needs. In the horrible aftermath of the Oxford shooting, many students felt a spike in vulnerability, exacerbated by the pandemic, which remains a threat to their lives. With the ostentatious failure of school officials to stop Crumbley, a sense of “we can only rely on ourselves” settled upon students nationwide.

While it’s condescending to indulge in moral panic about “TikTok teens,” we do them a disservice by ignoring their agency and casting them only as scared kids indulging in antisocial behavior because adults are AWOL. There is a worthy question to be asked here about why and how TikTok is vulnerable to these sorts of potentially toxic viral challenges, and why students so eagerly shared them. 

In one sense, these challenges have less in common with other memes that bear the name — the Ice Bucket Challenge, for instance — than they do with the chain emails that still plague discourse among older generations of internet users. These emails, based on “chain letters” before them, usually consisted of a threat (of financial ruin, physical harm, etc.) if the recipient didn’t forward them along to others, along with a promise (of wealth, true love, etc.) if they did. The peer pressure, the sense of having nothing to lose from sharing and something to lose from not, all prey on the psychology of individuals together alone online. Though the medium is different, the message is altogether similar: A digital Pascal’s Wager against your own demise.

What really drove this phenomenon was a certain desperation among schoolchildren who felt abandoned by their elders

What distinguishes platforms like TikTok is the way that they have harnessed virality, something email was never designed to do. Email suffered from numerous social problems from its earliest days — spam, harassment, threats, and so on. But because it was meant to be a digital imitation of traditional on-paper post, virality was more incidental to the medium. Contemporary platforms like Twitter or TikTok, on the other hand, thrive on virality and are designed to encourage it. Every incentive impels users towards making numbers go up; like a massively multiplayer online game, there is a particular dopamine hit that comes from the high score. By contrast, a large number of unopened emails is now a byword for ennui and depression.

These platforms afford what we might call high-velocity content: short hits that can be read or viewed quickly, and travel far as a consequence. TikTok’s algorithm in particular excels at propelling content from low-follow accounts into the viral stratosphere. When the viral content feels like a game of digital Russian Roulette — share this, or you and your friends might die in a school shooting — there’s a certain impetus to keep this content’s velocity high. The frisson of gambling, combined with the status conferred by virality and with very genuine fear for one’s life, all melted together in the pressure cooker of a platform like TikTok, make episodes like this almost inevitable.

Between the dissociative effects of internet use — which distance us from the impact of our words and actions in online spaces — and the freedom from accountability that such platforms offer, it can be easy for bad actors to send a lie halfway around the world. When lies are popular, and the platform’s design greases the skids, so to speak, a whisper network, however vital, becomes just another rumor mill.


In the aftermath of events like this December’s, adults — even ones who are hardly conservative or reactionary — often fixate on the deeds of potential bad actors. In an interview with the Washington Post, information science scholar Casey Fiesler likened the sharing of this viral challenge to the pulling of a fire alarm in the school building; scare your classmates and teachers, shut down the school, get an instant day off. But while we all know some teenagers who would do such a thing, fixating on bad faith prevents us from recognizing the agency and humanity of these students. 

Banning or stigmatizing students’ backchannelling on social media will do precisely nothing to combat what is structurally making American schools unsafe

The impetus to view these whisper networks as fronts of misinformation, while understandable, obscures the deeper problem: an unwillingness to tackle the structural issues making American schools unsafe. Banning or stigmatizing students’ backchannelling on social media will do precisely nothing to combat this. Even our primary sources of information about the credibility of these threats are based on statements from local and federal law enforcement, which we are asked to accept at face value despite these agencies’ track record of spreading both mis- and disinformation themselves. Whether the reported investigations and/or arrests of students in the aftermath of these threats were actually related to the threats is unknown, and such reports should be taken with a grain of salt.

We’ve seen, from Parkland to Oakland to Brooklyn Tech, students genuinely and sincerely standing up for their beliefs as young activists, tackling issues that they have been saddled with by the adults who govern their lives. If they can act in good faith here, we should respect that this TikTok challenge, destructive as it was, might have involved good intentions gone awry as well. A mistake, to be sure. But one that was part of a larger network of problems.

In the rush to scapegoat these platforms as corrupting influences on children and teens, we smuggle in assumptions that may only create conditions that redouble abuse and compel them to suffer in silence once more.


Ours is an age saturated by fear. The Covid-19 pandemic, like school shootings before and after it began, represents a structural problem that we are encouraged to deal with individually. In response, social media is flooded with rage, anxiety, breakdowns, shaming, and terror as people struggle to find some way of taking control of the uncontrollable. They seek some means of protecting themselves, their loved ones, and their communities when the government is unwilling to do so, even if those means are dubious or outright toxic. 

There can be little question that scaremongering on Twitter — the sharing of misleading or false content designed to make people even more afraid of an already horrifying pandemic — has little to offer us beyond further eroding our already fragile collective mental health. Yet the platform itself urges this content into virality, while filling the void of structural failures. Put another way, disinformation is a symptom, not a cause, of these myriad social problems. An environment where misinformation and disinformation can flourish among individuals was created by the absence of genuine, societal-level support.

The same is true of these teenagers, cleaving to something like a nightmarish chain email in hopes that desperate Toks may save lives where government officials and school administrators willfully fail. In the face of adult and administrative incompetence, teenagers are using the tools they have access to in attempts to keep themselves safe. To whatever extent they err, or fall prey to the algorithm’s perverse incentives, cognitive biases, or even their own personal moral shortcomings, they merely reflect the same problems adults struggle with every single day on social media. If we must condemn the TikTok teens, then we must condemn ourselves as well.

21 Jan 02:39

Empathy is Not Endorsement

During a conversation in class yesterday we were talking about how we as humans react in the face of bad behavior. In the middle of the discussion someone in the class typed this in the Zoom chat:

“Empathy is not endorsement.”

This powerful statement stopped me dead in my tracks.

Very recently, I witnessed some very bad behavior from someone I care deeply about.

This person was lying and being deceitful to almost everyone they knew because they were afraid of being judged for making a massive life change, leaving a wake of heartache and frustration behind them. Instead of being honest about their situation they chose to cover it up as best they could. This behavior had gone on for months without myself or anyone close to them knowing about it.

When I discovered these things, I was absolutely floored because it was completely out of character for this person. I felt totally betrayed. Why would they behave like this? Why would they act like this to people who care about them?

When I was getting ready to have a conversation with this person about this behavior, I really didn’t know how I was going to approach things. My stomach was in knots, and I was angry and filled with judgment. But these words, “empathy is not endorsement,” made me reconsider my approach.

A lot of my work is around human behavior and how we interact with one another. Every day we have hundreds of exchanges with people; every exchange is an opportunity to learn and to connect. Some of these experiences are good, some are confusing, some are painful.

So, what do we do when we’re met with challenging behavior?

When we feel intense emotions, they flood our nervous system. Maybe we shut down (“flop”/”freeze”), maybe we yell (“fight”), or maybe we try and somehow fix whatever is wrong with them (“fawn”).

We usually want the person in this situation to know we aren’t happy with whatever “bad” behavior they’ve exhibited. Unfortunately for us, if we’re reacting with a trauma response like shutting down or yelling, we aren’t thinking clearly. We’re likely in “amygdala hijack.” This means that our frontal cortex, the logical part of our brain, can’t process things like it normally would because our amygdala senses a threat and has taken over. However, note that the logical part of our brain doesn’t equate to control - we can experience a wide array of emotions that are perfectly logical and rational. If we are reacting to something we think is a threat we react as such - we yell, we cry, we shut down - we have one or many trauma responses. And really, we’re not in a clear frame of mind. And yet, as humans, we react anyway.

For me, if I’ve given in to a trauma response in intense moments with people, I’m often filled with regret. Did I allow someone’s behavior to control my own? Now am I judging myself based on my reaction to someone else’s bad behavior?

And so, when I thought about my impending conversation, I wondered what would happen if I approached it from a place of empathy. Not that I was okay with their bad behavior, far from it - in fact, it was extremely challenging to be able to see that empathy wouldn’t just be helping them but would also be helping me. I saw that maybe I could position myself to practice a little more kindness in the face of this challenge. Maybe it could be a little less difficult for both of us, as I knew they were likely coming from a place of fear which led to these bad decisions.

So, I channeled my frustration and turned it into empathy. And since I wasn’t endorsing the behavior (quite the opposite, I was creating a conversation around it) the empathy was easier to tap into.

When the conversation finally happened, this person was expecting me to be extremely angry or hurt by their behavior, and thought I’d maybe lash out at them. While I certainly did feel anger and sadness, I was able to speak calmly about how I felt (some feedback models are easy to remember and follow, like situation/behavior/impact), and from there I was able to tell them that while I wasn’t okay with their behavior, I understood that they were having many struggles and that they’re human like the rest of us.

This was shocking to them. They told me they didn’t know what I was going to say or do, but they were preparing for the worst and felt they deserved the worst because they were steeped in shame. And I need to share how intensely difficult this was for me. I’m not a robot, I have feelings and can be wounded. The path of empathy just sent me on a very different journey than wanting to burn everything down - and left me in a better place. It’s not just as simple as two sides, “be angry” or “forgive.” There’s a lot of work to do to connect one to the other.

And so, in this instance, we were able to stop the cycle. In the end this reframing helped them to own their behavior in a way that actually made them start leading from a place of responsibility instead of shame. I certainly left the conversation feeling better than I would have if I had come from a place of anger or judgment.

These words of wisdom from a student in class are going to become a part of my practice going forward as often as I can. I’m not going to get it right every time and sometimes the “amygdala hijack” will get the best of me - but having an awareness of this approach and continuously learning from these interactions are steps toward conversations that lead to better outcomes.

21 Jan 02:39

Should bad science be censored on social media?

Rachel Schraer, BBC News, Jan 19, 2022
Icon

The article references (but doesn't link to) a new report from the British Royal Society (100 page PDF) that asserts "governments and social media platforms should not rely on content removal as a solution to online scientific misinformation" (p.10). Instead, "The UK Government should invest in lifelong, nationwide, information literacy initiatives" (p. 21). Now if you read the BBC article, you would read "the report authors believe, social media sites should adjust their algorithms to prevent it going viral - and stop people making money off false claims." That's not what it says.

The closest we get to that is a remark in the foreward by Frank Kelly saying "we will need to see legislation which can address the incentives of business models that shape the algorithms determining the spread of content." But this sentiment is found nowhere in the recommendations. And that's the problem. If regulation and even censorship for accuracy in media are being considered, then state and commercial media are, arguably, equally in need of regulation. A better approach, generally, is open access, support for media plurality, and better media literacy. Which is what the Royal Society report actually says (see especially their extended discussion on this pp. 62-28).

Web: [Direct Link] [This Post]
21 Jan 02:39

Teach in the Metaverse

Frame, Jan 19, 2022
Icon

Jennifer Gonzalez talks about "an emerging group of tools is trying to bridge that gap, using VR technology to create online spaces that feel more three-dimensional, allowing participants to move through virtual spaces as if they are physically in a room together." One such is Frame, featured here, which looks a lot like the VR rooms of old, but accessible through your browser or through a VR headset. Though that said I don't really see the point of creating a virtual environment that looks like an office or auditorium. There's a free tier, so you can go in and play and maybe make something more creative.

Web: [Direct Link] [This Post]
21 Jan 02:39

Can't finish my master's thesis. What to do?

TheManveru, Reddit, Jan 19, 2022
Icon

Good thread with what I think is a pretty typical problem and a lot of good advice in what to do. Long story short: the student is working at a company as part of his Master's Thesis, he's doing an AI project, and it's not going well, and he's having doubts about the whole thing. Most people are telling him to get his academic guidance from his professorial supervisor, not his boss at the company. That's the thing with these theses: they're usually in areas the students are really interested in (they were for me) and if they go south it can feel like an existential crisis. But in fact, there's no real need to advance the state of the art with a thesis (much less a Masters thesis).

Web: [Direct Link] [This Post]
21 Jan 01:25

Why I’m Not Too Worried About Learning Loss

John Spencer, Jan 19, 2022
Icon

Like John Spencer, I'm much less worried about 'learning loss' than many others in the field. Why? As Spencer says, "it can help to ask, “What do students need in the long run?” instead of focusing entirely on single learning standards or benchmark test results." If we're just focused on catching up with content knowledge, we may be doing more harm than good. Students need to develop a wider range of skills, they need time for deeper learning, and they need time for play. The pandemic - in my view - has given them space to realize (as Spencer says) that they're not working for the teacher, they're working for themselves.

Web: [Direct Link] [This Post]
21 Jan 01:22

Micropub Endpoint Returns 403 When POST Contains

by Ton Zijlstra

After solving the HTTPS issue I had, and reading once more the Micropub specifications, I succeeded in posting a blogpost to my WordPress site using the Micropub endpoint. This all as part of my quest to build my own Micropub Client.

Having established I could post correctly, I tried out different types of postings I think I will be making this way. Which turned up an oddity:

When the HTML I submit contains the label <svg>, or even <svg the endpoint returns a 403 error. Meaning it understands my request but isn’t allowed to execute it. This seems strange to me. I know that adding image files must be done seperately, but this is an SVG icon description in HTML with a path etc., not a separate file. On the IndieWeb chat channels it was pointed out this might be an issue with WP core, where attempts to sideload certain file types are filtered out, but as far as I can tell that is not what is happening here. Someone else on the IndieWeb chat could not reproduce the error. So perhaps it is something in the way I create my request.

I’ve posted it as an issue on the Micropub github page, including the script I use to create the request to the Micropub Endpoint.

21 Jan 01:20

Mysterious NFT project NotASecretNFT gets people to authorize a shady contract after leaving clear clues to their intentions

An Opensea landing page for the NFT project, showing a collection of black and white images

Enthusiasts rushed to buy NFTs from a project called NotASecretNFT after seeing NFT mega-whale Pranksy buy in, even though the OpenSea description was simply, "1000 secrets, endless lies... Farming $LIES starts 24 hours from mint." After funds were drained from the project, Pranksy tweeted, "Ok you may have seen me buy some NotASecretNFT's from opensea - it looks like this was a rug pull / scam, please do not buy anymore based on my purchases and revert any permissions you may have given". A note in the project's smart contract read, "Hello world, Nothing was intended to be obscured from you, you simply did not follow the clues." In a tweet thread, one buyer explained how he didn't research the project himself, but bought in after seeing an alert that Pranksy had bought NFTs. He ended the thread by writing, "Never buy into hypes and always #DYOR. Lesson learned once more!"

21 Jan 01:18

2022-01-19 BC

by Ducky

Testing

The BC CDC recently updated their testing web page to say who was eligible. Basically, if you are young, vaccinated, and not CEV, then you don’t get a PCR test (unless your job is in a special category like HCW or prison guard)

There are some people who are upset, but I am having a hard time getting upset. Almost no young/vaccinated/non-CEV people (like me) will require treatment for acute COVID-19, and the primary reason to do testing is to guide treatment. (This is why I have never been tested for the flu but I have been tested for strep throat many times: there was no treatment at the time which they would have given me for flu, but they did give me antibiotics (regularly!) for strep.)

There are secondary reasons to get tested:

  1. to allow travel (as airlines or countries might require it);
  2. to verify that you are not ill and hence will not be infecting others (e.g. at grandma’s birthday party);
  3. to provide evidence that you did in fact have COVID-19, if you should develop Long COVID at a later date.

Number 3 certainly would be a concern in the USA, where f evil insurance companies will do anything they can to avoid paying for treatment. Howver:

  • I hope that BC will be different. (If they hassle Long COVID patients because of that, that is a fight I will take on!)
  • There are antibody tests which can (usually) prove that you had an COVID-19 infection.
  • I have read a number of research which have identified blood signatures which are different for people who have had COVID-19 and/or Long COVID.

Numbers 1 and 2 seem reasonable for the province to not pay for. Think about it this way: do you want to pay for Joe Random to get tested every day just because he feels like it? Everybody every day? No? Then that means there is some level which you are willing to restrict testing, after that it’s just an argument about where the level should be. I’m okay with not paying for discretionary purposes.

Now, this could all change if effective treatments become widely available even for young/vaccinated/non-CEV people. At that point, given the spectre of Long COVID, then I think testing should get opened back up to anybody who is symptomatic. We aren’t there yet.

(If I got symptoms and Paxlovid was available, would I go get a COVID-19 test? Probbbabbbllly, but I would have to think about it. Paxlovid is a strong drug and should not be taken lightly.)

Mitigation Measures

This press release reports that the province is doubling grants for businesses which lost money because of the recent closures.


This article reports that the province changed its rules on isolation. They had recently changed the isolation period for COVID-positive to five days (down from ten) for vaccinated people. Today they changed so unvaccinated people also could leave isolation at five days. This article says that the province walked that back, and unvaxxed still need to isolate for ten days.

Statistics

 +2,387 cases, +13 deaths, +2,816 first doses, +1,726 second doses, +64,627 other doses. 

Currently 895 in hospital / 115 in ICU.

Positivity rate of 19.6%.

first doses second doses third doses
of adults 92.8% 90.2% 38.0%
of over-12s 92.4% 89.7% 35.5%
of over-5s 89.3% 83.4% *
of all BCers 86.9% 81.2% 32.3%

Charts

From this Twitter thread:


From this Twitter thread:


From the BC CDC Situation Report from 2 Jan to 8 Jan (so a week old):


21 Jan 01:17

2022-01-19 General

by Ducky

Vaccines

This preprint says that there were zero children in France who had been fully vaccinated and went on to develop MIS-C.

Pathology

This preprint says that kids recover pretty well from MIS-C.


This speculative preprint wonders if maybe the reason kids have milder symptoms and MIS-C after a delay is because their bodies make a different trade-off than adult bodies: they spend less energy on fighting disease in order to spend more energy on growth. The downside would be that they wouldn’t clear disease as fast, and that delayed disease clearance would allow occasional superantigen-mediated immune activation.

Long COVID

This paper measured a bunch of cognitive abilities in people who had had mild COVID-19 infections, and found that even thought they thought they were fine and fully recovered, there were measurable deficits in episodic memory and in “keep paying attention” task. The good news is that there were a ton of cognitive measurements which were the same between survivors and controls, and that there was a correlation between recency of infection and how poorly they did on the episodic memory and vigilance tests. (In other words, they got better over time, and were practically indistinguishable from controls at 6-9 months.)

Treatments

This article reports that remdesivir cut the risk of going on a ventilator by half.

Recommended Reading

This article talks about how hard it is to estimate what the actual COVID-19 death toll is.


This article talks about transmission from humans to animals, especially mink.

21 Jan 01:16

How to Add a Favicon to Your Django Site

How to Add a Favicon to Your Django Site

Adam Johnson did the research on the best way to handle favicons - Safari still doesn't handle SVG icons so the best solution today is a PNG served from the /favicon.ico path. This article inspired me to finally add a proper favicon to Datasette.

Via @adamchainz

21 Jan 01:15

demoncity:LOST IN TRANSLATION2003, dir. Sofia Coppola





















demoncity:

LOST IN TRANSLATION
2003, dir. Sofia Coppola

21 Jan 01:15

Schnelltests testen

by Volker Weber

Was taugt der Schnelltest, den du gerade in der Hand hältst? Das kann man schon vor dem Verkauf rausfinden. Einfach den Code scannen.

21 Jan 01:14

Captain Picard Tea Order

mkalus shared this story from xkcd.com.

b'We can ask the Earl for his order once he\'s fully extruded from the dispenser.'
21 Jan 01:09

Wordle: Revised mathematical analysis of the first guess

by Josh Bernoff

Yesterday’s mathematical analysis of the popular word puzzle Wordle was flawed. It assumed that the words used in the puzzle were similar to other word lists, but they’re not — and that changes everything. What word list does Wordle use — and why does that matter? Wordle actually uses two word lists (or properly speaking, … Continued

The post Wordle: Revised mathematical analysis of the first guess appeared first on without bullshit.

21 Jan 01:05

Inclusive hiring – employer branding

by Tara Robertson

Your employer brand is your reputation as a place to work. It’s what staff and job seekers really think of you. It includes both the stories a company tells about itself on their careers page and social media and the stories that staff share in their networks and on social media about what it’s really like to work at your company.  As I shared in my first post in this series, before you market your culture you need to have a clear understanding of your culture now, including both the things you’re proud of and the things you need to fix.

"part of our dna" ribbon banner
This phrase is such a cliché that there are literally hundreds of stock images.

DEI is core to a company’s employer brand, but it’s not enough to just say that. Almost all companies that I’ve looked at have some statement like “DEI is core to our DNA” but most do not have the receipts to back up this bold statement.

For example, Coinbase says “We are committed to ensuring that every employee feels they belong and can do their best work.” All this while an article in the New York Times documents bullying and discrimination of Black employees. How do parents and others with caregiving responsibilities fare in a culture characterized as  “the most intense place we’ve ever worked? Sure, recharge weeks are nice, but most caregivers are near or at their breaking point. Coinbase can make a claim that they are committed to fostering an environment where employees feel like they belong and can do their best work, but when I read this article and blog post it just doesn’t line up.

Coinbase reviews: 4.3/5, 83% recommend to a friend, 90% approve of CEO, Brian Armstrong 186 ratings

Glassdoor can be a useful perspective about a company, but like any information you need to view it through a critical lens. Let’s look at Coinbase’s reviews. At first glance they seem excellent: 4.3 out of 5 and 90% approve of the CEO. Their DEI score is also 4.3. That seems good, right? I have so many questions. What is being measured here? How are marginalized staff’s voices being weighed against majority voices? What does this even mean? A year and half ago I dug into this and I’m not sure 4.3 out of 5 stars means anything

For job seekers evaluating if a company is right for you, take what’s on Glassdoor with a giant grain of salt. Reach out to people in your network, especially entry level or hourly staff, and ask what their experience has been like. I also specifically reach out to women of color, queer and trans folks to hear their stories to understand if I’ll be safe, welcome and set up and supported to make the impact that I want to. 

Open book on old wooden table

Humans are hardwired for stories. So, tell the stories of the impact that your staff make in the world and how your company really lives the values that you’ve listed on your careers page. Tell the stories that illustrate how your distributed culture is awesome. Share about how your organization is deepening your commitment to anti-racism by where you bank and your other vendors. Let’s hear from the women who are part of the C-suite or are engineering leaders. Or how you show up for the LGBTQ+ community – not only for Pride month, but also all year long in your products and business. 

Your posts highlighting the accessibility team should follow accessibility best practices e.g. being written in plain English, using headings, and ensuring images have alt text and that video content has captions. And it’s great you want to hire underrepresented talent, but where are you supporting us to grow and be wildly successful? Tell those stories.

I’m not a fan of pay-to-play employer awards like:

  • Great Place to Work ($2995 CAD for a 1000 person company)
  • Fast Company Best Workplaces for Innovators (entry fee varies by date: $695-895 USD)
  • Canada’s Top Employers magazine (application fee: $1395 CAD)

I’m skeptical how objective these awards are when employers are paying for consideration. Pay to play also leaves out so many small and medium businesses. Spend your money elsewhere. 

Your employer brand also will show up in your job descriptions and your hiring process, which I’ll cover in the next two posts in this five-part series.

Thank you to Diane Tate and Rian Finnegan for feedback on this post. 

The post Inclusive hiring – employer branding appeared first on Tara Robertson Consulting.

21 Jan 01:04

the day after

by jnyyz

It was brilliantly sunny this morning and I saw it as a chance to pick up some textbooks that I needed from my office. Also a chance to check out how well the city did in the past 24 hours with snow clearance. I was thankful that the side streets in our neighbourhood had been plowed more than once. Side streets were passable to varying degrees, depending on how much packed snow was left by the plows.

As per my usual habit after a significant snowfall, I took major roads wherever possible since they were generally much more clear of snow.

Here is Annette. Although the painted bike lane is not clear, the roadway is perfectly fine, although the owners of the cars to the left might disagree.

A sign of the troubles that the TTC had to deal with.

Taking the lane on Lansdowne, and thankful that traffic is very light.

Turning east on Bloor, the bike lane has clearly been plowed, and I am a bit hopeful.

However it quickly becomes clear that I would have been much better off taking the traffic lane, which is what I did after one block.

Snowbank as kickstand at PAT central market.

The Bloor bike lanes at Spadina. I thought that this wider section might be in better shape, but no….

Overall, although I am glad that the city plowed the Bloor bike lanes, it is clear that whatever equipment they are using leaves a huge ridge of snow down the middle, making the lane unusable. Now if we could just have the snow in the bike lane melt back while leaving that lovely windrow to the left intact, that would be great.

Ride safe, and take the lane today!

Update: Shaw north of Bloor has been blocked due to demolition associated with a house fire that happened a while ago. This means little or no car traffic, and also limited plowing, and so it is basically impassable for bikes.

21 Jan 01:04

Barges and supply chains

by jnyyz

I spent a few days in Vancouver over the Christmas break and one thing on my list to do was to visit the latest tourist attraction in Vancouver, as described in this NY Times article. This of course was the barge that washed up on English Bay during a series of severe storms that hit southern BC, causing widespread flooding in areas further inland.

Conditions were better than those during this epic video of a cyclist biking by the barge shortly after it washed up.

Also, unless you actually visit, it is difficult to appreciate how large the barge is. In this photo, it is some distance back of the SUV that is parked in front.

Apparently it will take some time before they can remove it. In the meantime, the Vancouver Parks Board posted that wonderful sign seen in the first picture. Additionally, some wag had labeled the spot as “barge on the beach” on Google Maps but that tag got removed before I could get a screen shot of it; this of course is a reference to “Bard on the Beach” which is held on the other side of English Bay each summer.

Also while I was downtown, I saw this footrest on the Hornby bike lane at Robson, but it appeared to be a one off since it looked like it had been there a while, and I didn’t see any others along that stretch.

The other reason that I wanted to ride down to the water had to do with the fact that I had ordered a Swytch kit to convert one of our bikes to electric assist. The order went in back in July, and when the item was ready to ship, they sent me a tracking website that was more interesting than usual. When they said “ship” they literally meant putting it on a boat bound for North America as the first step. They provided real time tracking of the container ship.

The first thing the ship did was to dock for about a week at Tacoma, Washington. Afterwards it headed up to the coast where it lay at anchor in the Burrard Inlet.

Sure enough, you could see the ship in this photo taken from Jericho Park. It was helpful that there was “MSC” lettering on the side.

It spent a while at anchor, and then it docked near Tsawwassen where presumably the container containing my item was offloaded.

This gave me a new appreciation for transport logistics. Imagine stacking those containers in an order to facilitate unloading at the correct port in the correct sequence. It also gave a view of how much time was spent at anchor waiting as opposed to sailing. The actual crossing only took about ten days.

While I was in town, I was determined to keep my continuous days with biking streak going. This entailed a couple of days biking through a rare snowfall. I was happy that UBC did a decent job of snow clearance.

At the moment, MSC Francesca is headed to Vietnam via the Panama Canal.

I wish it and its crew safe voyage, and I await arrival of the kit, at which point I will post a review after installation.