This article slags the province for throwing away expired AZ doses.
This really surprised me. I watch the supply carefully, noting when we got how many doses of which vaccine, and I don’t think we have much expiring.
BC has used 64K less than they have received. The expiry date is either six or seven months after manufacture. (AstraZeneca changed the expiry period in May or June, but if a lot was labelled before the change, there is some bureaucracy which needs to happen for us to be legally allowed to use that lot.) Here are the the most recent 133K doses:
Date
Amount
Probable labelled expiry
2021-05-19
88900
2021-11-19
2021-06-16
34100
2022-01-16
2021-06-24
10000
2022-01-24
recent AZ shipments
In late May, Canada did the bureaucracy to extend the shelf life of two batches by one month, from May 31, 2021, to July 1, 2021. At about that time, Dr. Henry said that this did not affect BC because BC’s vax expired at the end of June. I believe that was from a shipment which the USA loaned to Canada which arrived on 1 April — that shipment had a shorter shelf life because it had sat on the US’ shelves for a while.
However, if we are giving shots on a first-in-first-out basis, all the US shipment should have all been used by now. (And if it had not been, BC should have been able to extend the expiry date by a month.)
Now, there was a scramble to use up some AZ which expired on 1 April (I believe from the US batch). This was complicated by Health Canada suspending the use of AZ in people under 55 on 29 March. I believe that a small amount was thrown away then, but I think it was like fifty or one hundred doses, not ten thousand. You also must admit those were rather unusual circumstances.
One thing that the above article said was that there is no procedure for provinces to send back vaccines which they don’t want. This makes me wonder if the 1,116,320 Moderna doses actually arrived in Canada but BC told the feds, “no, you hang on to it for us”. The federal vaccine supply page says that there are 2,631,008 doses in reserve with the feds.
That looks likely: the federal vaccine supply page says that Ontario has gotten 2.86x as much Pfizer as BC has, with a population that is (surprise!) 2.86x as large as BC’s. However, Ontario has gotten 3.91x as much Moderna as BC has.
Variants
The variant report for the week ending 3 July is out, and the proportion of Delta cases went down, which is awesome. I hope it’s because Public Health is hammering on Delta cases: doing forwards tracing, backwards tracing, vaccinating anybody who came within six blocks of any infected person, etc.
No, I don’t know what the pink bar is.
It is encouraging that the Delta percentage went down, but note that the collection week ended just two days after our restrictions were lifted. Another oddness is that ALL of the VOCs percentages dropped, which implies that COVID Classic increased its percentage? That’s possible, but seems odd.
Maybe the province’s data is just borked? Sadly, that’s a genuine possibility.
Today: +33 cases, +0 deaths, +5,857 first doses, +57,993 second doses (+301 AZ). Note that this is FIVE days in a row without a death!!!!
Currently 66 in hospital / 14 in ICU, 639 active cases, 145,775 recovered.
first doses
second doses
of adults
80.2%
49.1%
of over-12s
79.1%
46.0%
of all BCers
72.0%
41.8%
We have 900,879 doses in fridges; we’ll use it up in 15.5 days at last week’s rate. We’ve given more doses than we’d received by 15 days ago.
We have 836,570 mRNA doses in fridges; we’ll use it up in 12.6 days at last week’s rate. We’ve given more mRNA doses than we’d received by 15 days ago.
We have 64,309 AZ doses in fridges; we’ll use it up in 153 days at last week’s rate.
Beginning in M94, Chrome will offer HTTPS-First Mode, which will attempt to upgrade all page loads to HTTPS and display a full-page warning before loading sites that don’t support it. Users who enable this mode gain confidence that Chrome is connecting them to sites over HTTPS whenever possible, and that they will see a warning before connecting to sites over HTTP. Based on ecosystem feedback, we’ll explore making HTTPS-First mode the default for all users in the future.
This is pretty much how I do most of my work these days (including some meetings, since audio and video remote devices work pretty well), except that I currently land in a corporate WVD cluster and not a dedicated instance.
It is so much better and hassle-free that I seldom give if a second thought anymore, and the “killer app” for corporate environments if I ever saw one.
(Works great on an iPad and with multiple monitors on a Mac, too).
If you buy a new car and then a week later your neighbour buys a better model of the same car, your satisfaction level with your car plummets.
If you get a pay rise and then a week later your coworker gets a bigger pay rise, your happiness has been turned to anger (perhaps fury).
After the Grenfell fire tragedy in London, I remember listening to a radio show where callers in the nearby area said they were disgusted by the idea survivors might be given new homes in their building. Apparently, callers had “worked really hard” for their home and it wasn’t fair.
Much of the anger and satisfaction we encounter in managing communities is based upon members comparing themselves positively or negatively to other members. The absolute value (points, rewards, punishment) is of lesser importance than how members relate it to the points, rewards, and punishments experienced by other members.
We once ran an interesting (if rather uncontrolled test). We gave top members in one community a big reward in private and top members in another community a much smaller reward in public. It wasn’t even close, the latter group engaged far better (and appeared far happier) with their small reward announced in public.
This a great example of how to keep your products relevant. A ten year old device now gets USB audio, making it an even better on-the-go four-track recorder and sound module. Need to update mine ASAP.
A small document scanner isn’t something that most people need most of the time, but if you’re applying for a mortgage, dealing with legal matters, or looking to archive a large amount of printed material digitally, it can certainly make your life easier.
The simple-to-use, easy-to-set-up, eminently portable Brother ADS-1350W easily won out in our testing by producing better-looking scans of various kinds of documents more quickly than competing models, whether it was tethered to our computer by a USB-C cable or sending the data wirelessly to a computer or a mobile device. Plus, its optical character recognition (OCR) was best in class, and we found Brother’s software easier to use than that of other brands.
These are complaints that afflict both educational and media web services, and though I haven't purchased $1500 of content services each year, I've still seen a lot of this for myself (and no doubt, so have you): login and authentication issues, poor site search, zero personalization, apps that don't work offline, and jittering pages. I would add slow page loads caused by tracking mechanisms, opaque site navigation, non-responsive design, and broken links. Yes, there's a lot of legacy out there, but there's a lot that could be done to fix the sorry state of the institutional web.
Donald Trump wrote a statement about the coup on January 6 — saying if he staged a coup, he’d do it differently. His language reminds me of O.J. Simpson — and shows why “If I did it” makes you look guilty to those who hate you, and heroic to those who support you. Simpson’s subjunctive … Continued
I used the opportunity to do a little bit of maintenance: I repatriated video and audio that was originally embedded from sites like YouTube, Vimeo and SoundCloud to be stored locally (for the video I used a scheme I conjured up in 2018 to automate all the steps). There were 200 videos in all, and 295 sounds.
Beyond the technical upkeep, though, the meat of the exercise was revisiting 22 years of my life.
Reading posts from the same day all at once turned out to be an interesting way to cross-cut through posts that were written in chronological order. So, for example, I’ve just finished a month or so of reading posts made from Copenhagen and Sweden on the many early-summer trips I took there over the years; back in March it was the trips I took during the school break with Olivia; in December it was 22 years worth of Christmas Days, and in June it was a year by year trip through Catherine’s birthdays.
In the winter of 2003 I attended an event hosted by ur-blogger Dave Winer in Cambridge, a gathering of the bloggers to talk about blogging. During the Q&A I made a comment that, as much as anything, I was writing for Olivia, writing the story of my life as she was growing up. What I’ve realized since is that I was, in truth, writing for myself: messages in a digital bottle that, here in the future, remind me of who I was, where I’ve been, what I did (and didn’t) do.
It’s a daunting prospect to read your 35 year old self (or to listen to your 25 year old self), and I must admit that I breezed over much of the mid-to-late aughts angry-at-Island-Tel-and-CADC-and-the-world post archive. But in addition to my angry young man self, I was reminded of some beautiful moments too, many of them. And to read myself grow up.
This blog will be, I think, the grand project of my life. I’ve been doing it for so long that writing here falls into the same category as eating and sleeping: it’s just simply how I live, and I cannot imagine not doing it.
Now that I’ve read the entire thing, I’m going to try and tamp down my predilection for nostalgia and focus forward. There’s lots more to see and do and be. And to write about.
This is a really interesting interview with SQLite creator D. Richard Hipp - it covers all sorts of aspects of the SQLite story I hadn't heard before, from its inspiration by a software challenge on a battleship to the first income from clients such as AOL and Symbian to the formation of the SQLite Consortium (based on advice from Mozilla's Mitchell Baker) and more.
The theme of the Tokyo 2020 Olympics and Paralympics opening ceremony was supposed to be diversity and harmony; the composer in charge of the music, Keigo Oyamada, tortured and bullied special needs students when he was young–and bragged about it. He literally made them eat shit, forced them to masturbate in public, ridiculed them, beat them up, and egged on other bullies. He gleefully boasted about his misdeeds in magazine interviews that resurfaced a day after his role in the Olympics was announced. The Tokyo 2020 Olympic Committee said he’s apologized, so okay, and the games must go on.
The casual attitude the Tokyo Olympics Committee shows towards what he did also shows how the ruling elite in Japan really feel about people with disabilities. They don’t care. If they did, they might have spent some of the millions of dollars wasted on building fancy Olympic stadiums to make public transport in the city more barrier free. But that’s another issue.
Perhaps, as there are with many crimes, there should be a statute of limitation on terrible things said in the past, but the problem isn’t just Oyamada’s words; it’s his actions. But in another way, maybe he really does represent the spirit of the modern Olympics: bullying, venal, ignoring the misery of others, and placing victory above all else. If winning is the only thing that matters, then hey, it’s okay to beat up the losers, right?
Here are some choice quotes from his interviews in the January 1994 issue of music magazine, Rockin’ On Japan, and the March 1995 issue of subculture magazine, Quick Japan. He was in his mid-twenties at the time of the interviews.
“Yeah, I did inhuman things. I’d strip (one guy) naked and roll him up in cords and make (him) masturbate. I made him eat shit and then performed a belly- to-back-drop wrestling move on him.”
“Remember that case where kids rolled up another kid in a mattress and killed him? We did that sort of thing (to the special needs kid) and stuffed them in the vaulting horse…” (At a school gymnasium storage room)
*A boy died in Japan Jan. 13, 1993, after being rolled up in a mattress in the school gymnasium’s storeroom by bullies.
(Quick Japan)
Keeping Oyamada on as the composer for the Olympics Opening Ceremony makes a mockery of everything the Olympics is supposed to stand for. But then again, when the government of Japan and the IOC insist on holding the Olympics in the middle of a pandemic, ignoring all warnings of the public health risk, maybe he is the perfect composer. Who better to write an ode to the callous cruelty and winning-is-the-only-thing-that matters attitude of the IOC? And like the IOC, he probably stands to earn a lot of money from the Olympics that over 70% of the Japanese people don’t want.
This preprint found that antibody levels wane over time, moreso for AZ than Pfizer, and less so in women. (BNT162b2 is Pfizer; ChAdOx1 is AZ.)
Reminder: antibodies are only one element of protection, and the body should be able make more if the B-cells are well-trained.
This article says that vaccines for kids 6 to 11 years old probably won’t come until midwinter.
Variants
There have been a few Delta case studies which have come out recently:
A wedding: Two fully-vaxxed people who had gotten vaxxed ten days earlier tested negative and went to a wedding with 90 other fully-vaxxed people. The first two later tested positive; one died. Of the other 90 people, four got sick and one died was hospitalized.
A pool party: Eleven health care workers who were at a pool party, eight of whom were fully vaccinated, tested positive afterwards. They all had mild symptoms, but fortunately (as health care workers) knew to take them seriously. It is not clear how many people were at the pool party and if it was indoors, outdoors, or mixed.
A quarantine hotel: In Australia, an outbreak has been traced (via whole-genome sequencing) to a man who was in quarantine. They cannot figure out how he passed the virus.
I want to reminder you that the vaccines are quite effective — 95% of the wedding guests and about 89% of the HMS Queen Elizabeth did not get sick. However, “highly effective” is not the same as “perfect”.
According to this article (in Dutch, use Google Translate) thousand people “proven negative” apparently got COVID at an outdoor music festival in the Netherlands. They had to be fully vaccinated, infected and recovered, or show a negative test. It is possible that they got infected in the 40 hours between their negative test and the start of the festival; it’s possible that they caught it outside the festival — presumably they went to restaurants and stayed at hotels or took trains back home; it’s possible that they forged their proof. Still, it is worrying.
Mitigation Measures
This article says that, if things keep going the way they are going:
Fully-vaccinated Americans will be allowed into Canada in mid-August for non-essential travel.
Fully-vaccinated people from anywhere will be allowed into Canada in early September for non-essential travel.
It isn’t clear if they will need to show a negative test at the border and take a test at the border, like returning Canadians now do. They also didn’t say anything about changes to the current policy for Canadians.
The danger now is in areas of vaccine hesitancy (orange in the top chart above), both to their own people and to those they visit in areas with low levels of infection (dark blue in the second chart above). So: Expect high rates and spikes in infections and deaths in central and southern US states, eastern Europe and central Asia. And if you live in Hawai’i, Canada, NW or NE US, W Europe, Japan, Korea, Taiwan, Australia or NZ, make sure you’re vaccinated before the borders are opened to those from the vaccine-hesitant areas, and keep wearing a mask in public indoor spaces and crowds, at least through the next few months. Data from IHME briefings, July 12, 2021.
One of the worst fears of public health officials seems to be coming true: the new CoVid-19 variants are so potent and transmissible that they are now dramatically increasing cases and hospitalizations in many areas where vaccinations have been low.
It was always a race against time, and it seems the forces of vaccine hesitancy and disinformation are winning the day. The fourth wave is turning into a pandemic of the unvaccinated and the vaccine-hesitant.
In the US, estimated actual deaths, which dropped to as low as 300/day at the start of this month, are now expected to soar back above 1000/day this fall and stay at that level for an extended period. This will increase the total US death toll to 1,025,000 by October 31, a full 80,000 more than the current death toll. Almost all the projected deaths will be among the unvaccinated, and over 90% of them will be in the 28 vaccine-hesitant states where levels of vaccination continue to lag as low as 35%. The 28 vaccine-hesitant states include all but the northeast (from VA north), and west coast states, Hawai’i, Colorado, Illinois and Minnesota.
New infections in the US, which dropped to as low as 78,000/day in June, are expected to soar to over 250,000/day in the fall and will stay at that level for an extended period, perhaps throughout the winter until either vaccine hesitancy abates or the % infected in vaccine hesitancy states (currently 40-50%) reaches herd immunity level — the hard way.
(Note that all numbers in this article are from IHME, which estimates actual deaths, often 1.5 to 2x the official reported numbers, and actual infections, often 3-8x the official reported numbers.)
As masks in the US come off (use nation-wide has plummeted from 70% to 25%), this poses a danger not only to the unvaccinated in vaccine-hesitant states, but also to those in states that receive a lot of tourists or business visitors and have low overall infection levels.
In Hawai’i for example, while 90% intend to be vaccinated and 62% already have been, only 7% have been infected, leaving 31% still vulnerable to infection from outsiders. As a result IHME predicts that by the time of full vaccination, daily infections will increase by a factor of 12, from the current 300/day to 4000/day, and the total Hawai’i death toll will soar from the current 500 to over 1100 by October 31. Hospitals there are expected to be overwhelmed in September through November. So the race is on to get the rest of Hawai’ians vaccinated before the unvaccinated tourist hordes arrive. For those familiar with indigenous history, there is a grim irony in this.
You might want to put off that ‘snowbird’ vacation at least until the new year.
The situation is less severe but still of concern in other states with to-date infection rates less than 20%: Washington, Oregon, Maine, Vermont, New Hampshire and Virginia, and all Canadian provinces. These areas likewise will likely face spikes in cases and hospitalizations as unvaccinated visitors come in before local vaccination is complete, though the impact should not be as severe as in Hawai’i, and the death toll in these locations is not expected to rise dramatically.
A similar situation is playing out in much of the rest of the world, with the additional complication that in many countries even those wanting vaccines can’t get them. For reasons that haven’t been fully understood, infection fatality rates seem much lower in most of Africa and south and southeast Asia, perhaps due to residents’ stronger immune systems due to prior exposure to coronaviruses. But for others: The unvaccinated in W Europe, Japan, Korea, Taiwan, Australia and NZ are at risk of infection from their own, and, as borders reopen, from the vaccine-hesitant in central and southern US states, eastern Europe and central Asia, and as well from many areas in Latin America, South Africa and south and southeast Asia where vaccines have been hard to come by.
Bottom line: The “fourth wave” of the pandemic is starting, and it will be focused largely in vaccine-hesitant areas of the world, and in areas that have low infection rates to date that are visited by the vaccine-hesitant. The US death toll will rise another 8% as a result, and the global death toll will rise another 20%, from 8.8M to 10.5M.
The Tokyo 2020 Olympics and Paralympics are turning into a coronavirus spreading festival of bullies. Despite allegedly having a theme of harmony and diversity, the Olympics appear more and more to be symbolic of cruelty and callousness. The latest case in point: this week, composer Keigo Oyamada, 52, who is the composer for the opening and closing ceremonies was revealed to have brutally tortured and bullied special needs students through elementary to high school. He said on record to two separate magazines in the 90s that he forced his victims to eat feces and masturbate in public. He ridiculed them, beat them, and egged on other accomplices. His gleeful retelling of these hate crimes resurfaced a day after his role in the Olympics was announced.
He issued an apology on Friday (July 16). He won’t step down and the Tokyo Olympic Committee issued a statement late in the evening the same day that they won’t fire him.
However, as we have already seen in the long history of Tokyo Olympic debacles, when the tone-deaf organizers finally hear the voices of dissent, they will probably eat their previous words, but unlike Oyamada’s victims—they won’t literally have to eat shit.
“I’d strip (one disabled kid) naked and roll him up in cords and make (him) masturbate. I made him eat shit and then performed a belly- to-back-drop wrestling move on him.”
That’s too bad.
The Tokyo 2020 Olympics Organizing Committee announced on July 14 that musician and composer, Keigo Oyamada, would be overseeing music at the Tokyo opening ceremony. He is a world-famous musician, also known by his moniker, Cornelius. However, it didn’t take long for his ugly past to emerge, and the hashtag “Boasting About Bullying” began to trend the next day, racking up over 10,000 retweets. The original tweet cited two interviews in the past in which he appeared to be proud of his younger years as a bully. The interviews appeared in the January 1994 issue of music magazine, Rockin’ On Japan, and the March 1995 issue of subculture magazine, Quick Japan.
In the interviews, Oyamada confessed to bullying classmates from a nearby special needs school from elementary school all the way through high school. In Rockin’ On Japan, he describes what he did as follows: “I’d strip (one guy) naked and roll him up in cords and make (him) masturbate. I made him eat shit and then performed a belly- to-back-drop wrestling move on him.” In the interview with Quick Japan, he admitted that he also made gleefully fun of kids with Down’s Syndrome attending a nearby school. He alluded to spurring others to bully the special needs children, “providing ideas”. Also, in another interview he seems to have admitted to what could be construed as attempted murder*, “Remember that case where kids rolled up another kid in a mattress and killed him? We did that sort of thing (to the special needs kid) and stuffed them in the vaulting horse…”
*A boy died in Japan Jan. 13, 1993, after being rolled up in a mattress in the school gymnasium’s storeroom by bullies. The mattress was placed vertically in the storage area and he was placed in it upside down; he died of asphyxiation and/or suffocation.
One of the magazines followed up Oyamada’s interview by contacting the family of his victims, who told the reporter that the bullying had nearly driven their son to suicide.
Here is the truth. Oyamada has confessed to committing sexual assault, assault, forcible indecency, public indecency, and attempted murder.
The actions Oyamada took would normally be crimes in Japan, but the statute of limitations has long passed.
In a statement released to the press Friday (July 16), the composer admitted that he did not show any regret when he spoke to the magazines years ago and he deserved the criticism he was receiving. He said that he would not step down and implied would atone for his past by contributing to the Olympics.
Ironically, the unifying concept of Tokyo 2020’s opening and closing ceremonies are “Moving Forward,” something the formerly respected musician must be praying for. The theme of the opening ceremony, which he is responsible for, is “United by Emotion.” The overarching disgust of the Japanese public at his criminal past has achieved exactly what the Olympic and Paralympic committee wanted. The entire country is united by repulsion.
“I am deeply sorry for how my words and actions hurt my classmates and their parents. I regret and take responsibility for taking the role of an antagonizer rather than a friend during my school years, a time that should be filled with fond memories,” Oyamada wrote in his Twitter apology essay on July 16.
However, in his sincere apologies to the world, and to the victims he traumatized, the singer clarified that not every heinous act recorded in the interviews were factually accurate.
“Regarding the contents of the article, as I was not able to confirm the final draft before it was published, there are many parts that deviate from the truth. However, there is no doubt that my classmates were hurt by my words and conduct. Therefore, I felt personally responsible, and chose at the time to not point out any mistakes or exaggerations in the story,” he defended himself in his Twitter post.
Perhaps the first magazine article published in 1994, followed up by a 22 page Odyssey retelling of his psychotic escapades in 1995, contained some factual errors that made it to copy. Instead of forcing a fellow student with a disability to eat feces, maybe he presented it to them on a clean plate with napkins.
What Oyamada did not do in his lengthy apology was resign as an Olympic and Paralympic ceremony composer.
“In hindsight, I should have declined the position offer considering some people would be displeased by my participation for various reasons. However, in these difficult times with its numerous challenges, I consulted the creators of the opening ceremonies who were making strenuous efforts to build the best event possible. After much thought, I chose to accept the job out of a hope that my music would bring some good to the ceremony,” the singer explained his noble self-sacrifice.
“In addition, I have invested considerable effort into this musical project,” he continued. Whether the Paralympians competing in this year’s games will be so forgiving is not certain.
The Tokyo Olympic Committee issued a statement acknowledging a failure to screen Oyamada properly, adding that, “We would like him to continue to do his utmost in preparation until the very end,” expressing no desire to have him resign or fire him. They also added in his defense, “Oyamada clearly regrets his past words, has reflected on them, and is currently maintaining a high moral standard while dedicating himself to creative activities.” One might note that the Committee recognizes that Oyamada regrets speaking about his inhumane activities but is vague about whether they believe he really regrets what he did. Words are cheap. The Olympics are inevitably, “Moving Forward.”
The reaction of the Japanese public has been overwhelmingly negative, calling the decision to employ him for the Olympic music “a fatal mistake in the selection process.” One twitter user, posting an article about Oyamada’s past bullying, noted wryly, “Well, after all, it’s like the Olympics itself is making the public eat shit.” A few days ago International Olympic Committee President Thomas Bach appeared to be the most hated man in Japan, but in the low-bar race for a gold medal in unpleasantness, Oyamada may now be the leading contender.
Mark Bookman, a historian of disability in Japanese and transnational contexts, and Postdoctoral Fellow at Tokyo College, part of the esteemed Tokyo University, emailed us, his understanding of the problem, taking time to explain the significance of the games. “The Olympic and Paralympic Games provide activists, policy makers, and members of the public opportunities to reflect on the past, present, and future of disability rights on local and global scales. They have helped catalyze change and lead to improvements in accessibility and social welfare for diverse demographics of disabled people in multiple countries, including, but not limited to, Japan.”
But he also points out there is a downside to the games.
“However, the games do not always lead to positive results. On many occasions, their spectacle has shifted public attention away from the needs of ‘ordinary’ disabled people in favor of elite athletes. Indeed, the games have helped to perpetuate harmful stereotypes and foster unfavorable outcomes for many individuals, in part due to awareness issues and lack of resources for carrying out reforms.”
Bookman warns that ‘going forward’ with Oyamada may actually roll back advances for the disabled in Japan, and more.
“While stakeholders involved in the games, myself included, have worked to mitigate such negative consequences and use the games as a platform to promote inclusivity, one cannot help but question the Tokyo Olympic Committee’s decision to ‘move forward’ with Oyamada Keigo as a key figure. By elevating (him), who has confessed to committing harmful acts against disabled individuals, the committee is (perhaps unwittingly) creating a space for people who sympathize with his actions. As rates of abuse against disabled persons continue to climb in Japan due to stresses on the nation’s care economy (tied to its rapidly aging population, declining birth rate, and shrinking labor force), one cannot help but wonder what kind of future might come from the Tokyo Committee’s decision. Indeed, as conversations about ‘selecting lives,’ eugenics, and equitable distribution of resources continue to unfold around us in relation to COVID–19, their decision may have dire consequences.”
Michey Peckitt, who runs the blog, Barrier Free Japan, had this to say. “I’m only disappointed. Obviously I did not grow up or go to school in Japan, but Oyamada’s behaviour does not surprise me at all. At school in Britain I was treated in a similar fashion. Being made to eat sh*t is pretty standard bullying behaviour in my experience, although being made to masturbate in public is a new one. I’m glad I didn’t have to do that as it’s difficult to masturbate when your hands don’t work because you have cerebral palsy. As a disabled person living in Japan I’m sad Oyamada’s music is being used in the Olympics, but ultimately nothing surprises me about the Tokyo Games now.”
I’m not sure whether to start summarising this week by pointing to external things in my environment or gesturing to internal changes that I’ve experienced during it. I feel like I want to write more about the latter, but I’ll start with the former as they’re easier and more tangible.
To simply say “I bought a new tent and rucksack” would be factually accurate but descriptively poor. It would be more appropriate to talk about what walking in the mountains and wild camping means to me. But let’s start with specifics: as I mentioned last week, I did plenty of research into one-person tents and, after breaking out a spreadsheet, ended up going for a Grand Canyon Richmond 1. Not only is it the perfect size for my 6’1″ frame, it’s light and compact, with a standalone inner tent. I flirted with the idea of an Alpkit Polestar, which uses walking poles as tent poles, but decided to keep things simple (plus I could buy two Grand Canyon tents for the price of the Alpkit!)
Now I just needed a new rucksack to carry the tent and my other equipment. We’re very fortunate in having a Montane outlet located only a mile away from my parents’ house, and I headed there last Sunday intending to look at their options around the 45-litre mark. When I got there, however, I discovered their ‘Medusa’ 32-litre rucksack, which now seems to be discontinued. This has great reviews, and seemed to be pretty much the perfect size for what I wanted. It was also relatively cheap at £51. I was even more delighted when I got home and realised that my Thermarest Z-Lite sleeping mat would be held securely by the bag’s ice-axe loops.
The only other thing I decided to invest it was a Snugpak Jungle Blanket, which I settled on instead of a new sleeping bag. After much introspection, I realised that I’m only likely to go camping between March and October, so this in combination with my existing (tiny!) 2-season sleeping bag should be enough. In total, then, I spent less than the Alpkit tent I’d been looking at. I’ll be testing it out in early August and very much look forward to how much faster and lighter I’ll be able to travel!
Now then to the more internal stuff, which I’ll preface with a bit of context about the confluence of circumstances which made this such an intense week. As I mentioned last week without naming specifics, my mother-in-law passed away recently, and her funeral is in Devon next Friday. My wife, Hannah, started a new contract a few days before her mother’s death and, this week, was away for a couple of nights meeting her new team within NHS Digital.
It’s been the last week of the school term for our children and we considered keeping them off for the last few days so that, should they have to self-isolate, it wouldn’t interfere with our plans for travelling to Devon. In the event, both were asked to self-isolate on Monday after someone in their bubbles tested positive for Covid. Thankfully, my parents were available to look after them for most of the week, and the experience of remote learning meant that it was a relatively seamless transition from classroom to Chromebook.
With all of this in the background, I spent this week on a Sustainable Leadership and Deep Adaptation course. I’m still processing the effect that the experience of the five days has had upon me, but it’s perhaps best summed-up for now as being more of an emotional experience than an intellectual one. We deconstructed traditional notions of leadership using Critical Discourse Analysis, engaged in debates, and formed study groups. But the Deep Relating activities, the guided meditation, and the visceral examples of how patriarchy can be constructed were, for me, key.
There was such a mix of people on the course. Of the 16 of us who attended each day, most were based in Europe while the two facilitators, Katie Carr and Jem Bendell were in Bali. There were psychospiritual counsellors, UN staff members, former investment bankers, novelists, PhD researchers, a whole panoply of occupations.
I confess to finding the first two days difficult. I realise in retrospect this is because I spend most of my time, and ascribe most of my value to others, as being located in my head. I like to think, write, and work things out logically. As I discovered on this course, that doesn’t even get me halfway to the kinds of insights we’re going to need to respond to the climate emergency. I’ve come across people talking about ‘holding space’ before but, to be blunt, I’ve considered them charlatans. It took me a while, therefore, to come round to Katie’s style of facilitation.
After leaving Moodle last year, I went back to work with We Are Open Co-op full-time. After some internal drama which ultimately led to two people leaving, I’ve inadvertently, it seems, been drawn to work around non-violent communication, consent-based decision-making, and ways in which we can bring our whole selves to work. This course built upon what I’ve learned over the past year, layering on insights about intuitive and relational ways of understanding and knowing.
I don’t think I’ve ever come across a facilitator like Katie who exudes both strength and vulnerability. She is extremely well-organised, able to tweak things on the fly, and seemed to be able to intuit when to switch things round, intervene in a situation, or give more or less time for an activity. While I’ve worked in things like check-ins and check-outs, pauses, and focusing on ‘I-statements’ in my own facilitation work, it was amazing to be able to learn from someone with such a deeper, richer experience on which to draw.
I think the only thing I wrote this week were the 23 pages of notes from the course. These included a reflection on a walk through some local woods that formed part of Wednesday morning’s activities. I didn’t post anything to Thought Shrapnel, and I paused updating extinction.fyi. What I did do, in the limited brainspace I had left at the end of each day, was flip over dougbelshaw.com to the 1024b.club version I created a couple of months ago. In addition, I’ve reduced the page load size of this blog via various tweaks. As a result, according to Website Carbon Calculator, each visit to my personal website emits ‘0.00g’ of carbon (as it’s less than 1KB), and this blog emits 0.37g. Apparently I should switch to green energy for them both, which I’ll probably look into next.
I’d like to mention that my friend Oliver Quinlan, aka Mentat, not only has a new track out on his own label but (even more excitingly!) has embarked on a new side project called Synth Soundscapes. These are 8-hour long “ambient soundscapes for focus, sleep and meditation”. I found it useful to have on Swirling Synths really quietly in the background while I was on Zoom calls to help me focus.
Next week is going to be… quite busy. My calendar tells me that, in the three days I’m working next week, I have two half-day workshops plus 11(!) other meetings. My brain is going to be fried from context-switching. On the plus side, those two workshops are with Outlandish and Julie’s Bicycle, the latter organisation having nothing to do with cycling but rather “mobilising the arts and culture to take action on the climate and ecological crisis”.
Team Belshaw then travels to Devon for my mother-in-law’s funeral. We’re then staying in Devon for a holiday that was already planned. It’s just a shame that Lorraine won’t be there. I’m going to miss the keen interest she showed in other people’s pursuits, fondness for walking, and (yes) the way she used to arrange yogurts in a basket during buffet teas.
Photo of two different cupcakes cut in half, swapped around, and sandwiched together to celebrate my daughter’s half-birthday. I celebrated mine last month, and it’s my son’s next week.
What if I told you there was a single intervention we could deliver in our cities that would cool them during heatwaves, reduce flooding, scrub pollutants from the air, boost biodiversity, improve public health, and even reduce crime? You wouldn't believe me. But it's true. pic.twitter.com/W1KWm6RHFk
Ever since I was a child in primary school, my mental image of a year has been that of a circle, with January and December at the bottom, and July and August at the top (you’ll notice that this means the months aren’t evenly spaced around the circle in my mental image, spring takes up less of the circle than the fall. It’s a mental image, not a precise graph, likely influenced by my childhood sense of the endlessness of summers, and the long period of darkening days of fall and winter).
My mental image of a year ever since childhood
This Monday I completed a full circle around that image: I’ve been reading my own blog posts from previous years on each day, to see which of those I can take an idea or notion from to convert into a note in my digital garden (named ‘Garden of the Forking Paths‘). Peter has been going around the circle with me I read today (which in turn prompted me to write this), starting from my posting about it last year. He’s been reading his old blogposts every day, not just to reread but also to repair links, bring home images to self-host, clean up lay-out etc. I’m sure I am and have been my own blog’s most avid reader ever since I started writing in this space 19 years ago, and like Peter had been using my ‘on this day’ widget to repair old blog posts since I added the widget in early 2019.
Now I’ve come full circle on reading those blogposts for a year to mine them for their ideas and notions. The next cycle until the summer of 2022 I am adding a layer.
I will of course be making another round through my own blogposts like I did before. Because sometimes I missed a day, I haven’t repaired all of them each day, and I may take new meaning from them the next time I read them.
The layer I’m adding is also reviewing the personal notes I made on this day last year. This concerns the daily notes I make (a habit I started in April 2020), the other notes I’ve created on a certain date (work notes, ideas, travel etc), and indeed the blog posts I converted to notes dated on this day last year.
I see Frank has also picked up on Peter’s posting, and is embarking on a year of reading his own daily postings as well. Like Frank, I have never blogged on this day of the year since this blog started. And like for his blog, that has now changed.
Going in circles… I suspect life is circles, not turtles, all the way down. At least when you get a bit older that is.
I've spent nearly twenty years blogging, giving talks and releasing open source code. It's been fantastic for my career, and a huge amount of work. But here's a useful secret: you don't have to put very much work at all into public creativity in order to stand out as a job candidate.
I've interviewed hundreds of people, and screened hundreds more resumes - mostly for tech roles in San Francisco, an extremely competitive job market.
The vast majority of candidates have little to no evidence of creativity in public at all. The same is true for many of the best engineers I have worked with.
As a hiring manager, this means you have to learn how to source candidates and interview effectively: you don't want to miss out on a great engineer just because they spent all of their energy making great products for prior employers rather than blogging, speaking and coding in public.
But as a candidate, this means you can give yourself a big advantage in terms of standing out from the crowd with a relatively small amount of work.
Start a blog. Post an interesting technical article to it once or twice a year - something you've learned, or a bug you've fixed, or a problem you've solved. After a few years stop bothering entirely, but leave the blog online somewhere.
Build a small personal project and put the code on GitHub. Accompany it with a README with a detailed description of the project and screenshots of it in action - almost no-one does this, it only takes a few hours extra and it massively increases the impact your project will have on hiring managers who are checking you out.
That's it. One or two blog posts. Maybe a GitHub repository. Believe it or not, if you are up against a bunch of other candidates (especially earlier on in your career) they likely won't have anything like that. You will jump straight to the top of the hiring manager's mental list, maybe without them even noticing.
There's plenty more you can do if you want to put the effort in: build an audience on Twitter, start a newsletter, make videos, give talks (ideally that get recorded and published online), release open source packages, publish TILs - but honestly if your goal is to get through the interview process more easily you will very quickly hit the law of diminishing returns.
If you're going to do that stuff do it because you want to develop those skills and share with and learn from the world - don't just do it because you think it's a critical path to being hired.
This post started out as a Twitter thread:
If you want to stand out from other candidates, having even one piece of writing or published piece of code that shows something you've built is a great way to do that https://t.co/QfYEWxfIet
I have just posted a 30-minute video of my talk “Software Engineering’s Greatest Hits”.
In brief:
software engineering researchers have learned a lot over the last 50 years,
but most working programmers don’t even know that knowledge exists.
I think the way to close that knowledge gap is to teach a bit of data science to undergraduate computer scientists
so that they’ll understand what claims are actually being made,
and then tell them what we currently think we know.
To make this work,
I think we have to teach data science using software engineering data and examples—there are
lots of good generic data science courses out there,
but most people learn best and fastest when the examples are directly relevant to their own domain.
A course like this would fit into the curriculum and be culturally defensible (“Look, math!”)
and I think it would also be very popular with students (“Look, data science!”).
And if I’ve learned anything in the last 20 years,
it’s that simply presenting the results bounces off:
if it was going to work, it would have by now.
I hope you’ll enjoy the talk - comments and feedback are very welcome.
I was intrigued by a new Amazon listing for a 3rd-party Surface Dock model 65001 that uses the proprietary Microsoft Surface Connect (aka Surflink) connector. Its sold by Gray Rabbit that also sells under the brand Onten and is manufactured by Fangweida (Thanks Kira for the tip!) Aside from an array of generic HDMI and USB adapters, Gray Rabbit/Onten also has different model of this Surface Dock that plugs in with a USB + miniDP connectors and works with Surface Pro4-Pro6.
I bought the SurfaceConnect version. Functionality is similar to the official Microsoft Dock 1. It comes with a 90W power supply where 30W is reserved for the dock/USB ports and up to 60W can be passed along to the Surface for charging. (Surface Book w/NVIDIA GPU owners should look elsewhere since you’ll get battery drain just like the MS Dock 1.)
Additional features compared to the Microsoft Surface Dock 1:
+ USB-C port that can charge with PD at 10W (5V @ 2A) and run at USB 3.x 5Gb/s for data
+ SD card reader (UHS-1)
+ Quick charge 3.0 USB port
+ 2x USB 2.0 ports
Missing features compared to the Microsoft Dock:
– Only 2 full size USB 3.x ports (MS Dock has 4)
– Surface Connector is not reversible. It will charge both ways, but USB and miniDP ports will only function when plugged in one way.
– No documentation of FCC certification
Fit and finish of the Dock is good. The ports are aligned perfectly with the openings on the front and rear of the plastic chassis. The styling matches with the Surface lineup quite well especially the air vents that are the same shape and size as the Surface Pro air vents. While considerably smaller and lighter than the Microsoft Dock, it requires the bulky AC adapter to function so you probably won’t be transporting it. Speaking of the AC adapter, it is massive and comes with a detachable AC power cable and an integrated DC power cable terminating in a standard barrel jack.
To be clear, it is still a ways off from the quality feel of the Microsoft dock. But given the additional features and reduced price point of ~$110-120 compared to the MS Dock 1, it might be worth a shot. At this price point, USB-C docks with similar functionality are available so folks with newer Surface devices should consider those as well.
Unboxing and Physical Characteristics
My unit shipped in a plain box with just a barcode on the outside – no label indicating what it was.
The connector is *identical* to the official MS Dock 1 connector. Even the feel of the plastic and sound it makes when scratching a fingernail on it is the same. This is clearly not a Microsoft Designed for Surface licensed product, so this vendor is VERY good at copying the cables or has worked out a deal with Foxconn and Lorum using surplus or QC-rejected parts or something. The bottom has two rubber feet.Rear view with 5.5mm x 2.5mm DC power, Ethernet, 2x miniDP, and 2x USB 2.0. Each port is labeled with text rather than pictograms like the MS Dock.Front view with SD card reader, USB-C port, 2x USB 3.x ports, QC 3.0 port, and a 3.5mm TRRS audio jackThe dock weighs 128g with the attached 60cm long cable (9cm shy of the official MS Dock 1).132mm x 58mm x 20mm (130mm x 60mm x 30mm for MS Dock 1)The power supply is 475g with the 1.5m detachable two-prong AC cable and 1.5m integrated DC cable. It measures 140mm x 60mm x 35mmThe user manual has some odd translations and needs an English speaker to proof-read. There is no contact information. The manual indicates a warranty card should be included in the box, but mine did not have one.The lid of the chassis is glued along the vents. Prying it open starting in the corners works to not break anything. Then four M2.5 Philips #0 screws can be removed.The PCB pops out with a little bit of force. You need to be careful of the USB-C port since it protrudes more than the others.
PCB Analysis
The PCB is stenciled with “OT-65001-V1.1 2020 05 13”. OT probably stands for the Onten brand. It appears to be 4-layer and densely populated. The SurfaceConnect cable terminates in bare wires which appear to be hand-soldered with plastic guides separating the solder pads. It looks like this could easily be swapped out for a nanopitch connector like the MS Dock 1 so hand soldering may be a cost savings choice.
A QFN-20 IC labelled AWRBUP likely a power management IC for the QC 3.0 charging port
The rear of the PCB shows that the miniDP, Ethernet, USB-C, and power connectors are through-hole mounted while everything else is surface mounted. The main +15V power rail from the DC jack all the way to the larger red wire on the cable is visible.
Since the start of this year I am actively tracking the suite of new European laws being proposed on digitisation and data. Together they are the expression into law of the geopolitical position the EU is taking on everything digital and data, and all the proposed laws follow the same logic and reasoning. Taken together they shape how Europe wants to use the potential and benefits of digitisation and data use, including specifically for a range of societal challenges, while defending and strengthening citizen rights. Of course other EU legal initiatives in parallel sometimes point in different directions (e.g. EU copyright regulations leading to upload filters, and the attempts at backdooring end-to-end encryption in messaging apps for mass surveillance), but that is precisely why to me this suite of regulations stands out. Where other legal initiatives often seem to stand on their own, and bear the marks of lobbying and singular industry interests, this group of measures all build on the same logic and read internally consistent as well as an expression of an actual vision.
My work is to help translate the proposed legal framework to how it will impact and provide opportunity to large Dutch government data holders and policy departments, and to build connections and networks between all kinds of stakeholders around relevant societal issues and related use cases. This to shape the transition from the data provision oriented INSPIRE program (sharing and harmonising geo-data across the EU), to a use needs and benefits oriented approach (reasoning from a societal issue to solve towards with a network of relevant parties towards the data that can provide agency for reaching a solution). My work follows directly from the research I did last year to establish a list of EU wide high value data sets to be opened, where I dived deeply into all government data and its governance concerning earth observation, environment and meteorology, while other team members did the same for geo-data, statistics, company registers, and mobility.
All the elements in the proposed legal framework will be decided upon in the coming year or so, and enter into force probably after a 2 year grace period. So by 2025 this should be in place. In the meantime many organisations, as well as public funding, will focus on already implementing elements of it even while nothing is mandatory yet. As with the GDPR, the legal framework once in place will also be an export mechanism of the notions and values expressed in it to the rest of the world. This as compliance is tied to EU market access and having EU citizens as clients wherever they are.
One element of the framework is already in place, the GDPR. The newly proposed elements mimic the fine structures of the GDPR for non-compliance.
The new elements take the EU Digital Compass and EU Digital Rights and Principles for which a public consultation is now open until 2 September as a starting point.
The new proposed laws are:
Digital Markets Act (download), which applies to all dominant market parties, in terms of platform providers as well as physical network providers, that de facto are gatekeepers to access by both citizens and market entities. It aims for a digital unified market, and sets requirements for interoperability, ‘service neutrality’ of platforms, and to prevent lock-in. Proposed in November 2020.
Digital Services Act (download), applies to both gatekeepers (see previous point) and other digital service providers that act as intermediaries. Aims for a level playing field and diversity of service providers, protection of citizen rights, and requires transparency and accountability mechanisms. Proposed in November 2020.
AI Regulatory Proposal (download), does not regulate AI technology, but the EU market access of AI applications and usage. Market access is based on an assessment of risk to citizen rights and to safety (think of use in vehicles etc). It’s a CE mark for AI. It periodically updates a list of technologies considered within scope, and a list of areas that count as high risk. With increasing risk more stringent requirements on transparency, accountability and explainability are set. Creates GDPR style national and European authorities for complaints and enforcement. Responsibilities are given to the producer of an application, distributors as well as users of such an application. It’s the world’s first attempt of regulating AI and I think it is rather elegant in tying market access to citizen rights. Proposed in April 2021.
Data Governance Act (download), makes government held data that isn’t available under open data regulations available for use (but not for sharing), introduces the European dataspace (created from multiple sectoral data spaces), mandates EU wide interoperable infrastructure around which data governance and standardisation practices are positioned, and coins the concept of data altruism (meaning you can securely share your personal data or company confidential data for specific temporary use cases). This law aims at making more data available for usage, if not for (public) sharing. Proposed November 2020.
Data Act, currently open for public consultation until 2 September 2021. Will introduce rules around the possibilities the Data Governance Act creates, will set conditions and requirements for B2B cross-border and cross-sectoral data sharing, for B2G data sharing in the context of societal challenges, and will set transparency and accountability requirements for them. To be proposed towards the end of 2021.
Open Data Directive, which sets the conditions and requirements for open government data (which build on the national access to information regulations in the member states, hence the Data Governance Act as well which does not build on national access regimes). The Open Data Directive was proposed in 2018 and decided in 2019, as the new iteration of the preceding Public Sector Information directives. It should have been transposed into national law by 1 July 2021, but not all MS have done so (in fact the Netherlands has just recently started the work). An important element in this Directive is EU High Value Data list, which will make publication of open data through APIs and machine readable bulk download mandatory for all EU member states for the data listed. As mentioned above, last year I was part of the research team that did the impact assessments and proposed the policy options for that list (I led the research for earth observation, environment and meteorology). The implementation act for the EU High Value Data list will be published in September, and I expect it to e.g. add an open data requirement to most of the INSPIRE themes.
Most of the elements in this list are proposed as Acts, meaning they will have power of law across the EU as soon as they are agreed between the European Parliament, the EU council of heads of government and the European Commission and don’t require transposition into national law first. Also of note is that currently ongoing revisions and evaluations of connected EU directives (INSPIRE, ITS etc.) are being shaped along the lines of the Acts mentioned above. This means that more specific data oriented regulations closer to specific policy domains are already being changed in this direction. Similarly policy proposals such as the European Green Deal are very clearly building on the EU digital and data strategies to achieving and monitoring those policy ambitions. All in all it will be a very interesting few years in which this legal framework develops and gets applied, as it is a new fundamental wave of changes after the role the initial PSI Directive and INSPIRE directive had 15 to 20 years ago, with a much wider scope and much more at stake.
The geopolitics of digitisation and data. Image ‘Risk Board Game’ by Rob Bertholf, license CC BY
In case you use Linux on the desktop, you might have been here before: When running out of memory, the system suddenly crawls to a halt and becomes totally unusable. In such cases it is often not even possible anymore to ssh into the system to reboot it. Sometimes, the system recovers after a very long time once the kernel finally gives up and invokes its out of memory procedures to terminate a process to free up memory. But that requires a lot of patience and the typical ‘quick’ solution is a power cycle. But recently I found a better way to deal with this: EarlyOOM.
Early Out of Memory (EarlyOOM) is a user space program that monitors RAM and swap. Once both fall below 10%, it selects a process that consumes a lot of memory and terminates it with a gentle SIGTERM. If the process is stubborn and remains running, SIGKILL will be sent once memory and swap fall below 5%. On the desktop, the usual culprits are Firefox, Chrome, Thunderbird or Liberoffice, as they just keep allocating more and more memory if not closed for a long time.
This works great in practice and I haven’t had a single ‘frozen’ system since I’ve started using it. Instead, I get the occasional “my Firefox has just crashed” user complaint that requires a bit of explanation that it hasn’t really crashed, but that’s much preferable from “my system has frozen again” complaint.
There are quite a number of configuration options to adapt the default options. In my case, I’ve put Thunderbird and Libreoffice (soffice) on the list of processes that should not be terminated. By default, the list already includes the init process, X, and the ssh daemon. To see how things are going, earlyoom makes a syslog entry once a minute, so the admin can observe how memory is slowly eaten bit by bit over time, and can even predict when earlyoom jumps into action to preserve sanity on the system.
It’s also good to know that EarlyOOM is not an ‘esoteric’ 3rd party program, as it’s included in many distributions. On Ubuntu, it’s only an ‘apt install earlyoom‘ away. On Ubuntu 20.04, it’s not quite the latest version, but still recent enough for me to avoid downloading and compiling it myself. More information on how to use it and the latest version can be found on Github.
Today, with the launch of Firefox 90, we are excited to announce a new version of SmartBlock, our advanced tracker blocking mechanism built into Firefox Private Browsing and Strict Mode. SmartBlock 2.0 combines a great web browsing experience with robust privacy protection, by ensuring that you can still use third-party Facebook login buttons to sign in to websites, while providing strong defenses against cross-site tracking.
At Mozilla, we believe that privacy is a fundamental right. As part of the effort to provide a strong privacy option, Firefox includes the built-in Tracking Protection feature that operates in Private Browsing windows and Strict Mode to automatically block scripts, images, and other content from being loaded from known cross-site trackers. Unfortunately, blocking such cross-site tracking content can break website functionality.
Ensuring smooth logins with Facebook
Logging into websites is, of course, a critical piece of functionality. For example: many people value the convenience of being able to use Facebook to sign up for, and log into, a website. However, Firefox Private Browsing blocks Facebook scripts by default: that’s because our partner Disconnect includes Facebook domains on their list of known trackers. Historically, when Facebook scripts were blocked, those logins would no longer work.
For instance, if you visit etsy.com in a Private Browsing window, the front page gives the following options to sign in, including a button to sign in using Facebook’s login service. If you click on the Enhanced Tracking Protection shield in the address bar, ()and click on Tracking Content, however, you will see that Firefox has automatically blocked third-party tracking content from Facebook to prevent any possible tracking of you by Facebook on that page:
Prior to Firefox 90, if you were using a Private Browsing window, when you clicked on the “Continue with Facebook” button to sign in, the “sign in” would fail to proceed because the third-party Facebook script required had been blocked by Firefox.
Now, SmartBlock 2.0 in Firefox 90 eliminates this login problem. Initially, Facebook scripts are all blocked, just as before, ensuring your privacy is preserved. But when you click on the “Continue with Facebook” button to sign in, SmartBlock reacts by quickly unblocking the Facebook login script just in time for the sign-in to proceed smoothly. When this script gets loaded, you can see that unblocking indicated in the list of blocked tracking content:
SmartBlock 2.0 provides this new capability on numerous websites. On all websites where you haven’t signed in, Firefox continues to block scripts from Facebook that would be able to track you. That’s right — you don’t have to choose between being protected from tracking or using Facebook to sign in. Thanks to Firefox SmartBlock, you can have your cake and eat it too!
And we’re baking more cakes! We are continuously working to expand SmartBlock’s capabilities in Firefox Private Browsing and Strict Mode to give you an even better experience on the web while continuing to provide strong protection against trackers.
Thank you
Our privacy protections are a labor of love. We want to acknowledge the work and support of many people at Mozilla that helped to make SmartBlock possible, including Paul Zühlcke, Johann Hofmann, Steven Englehardt, Tanvi Vyas, Wennie Leung, Mikal Lewis, Tim Huang, Dimi Lee, Ethan Tseng, Prangya Basu, and Selena Deckelmann.
mkalus
shared this story
from Comments on: Burrard SkyTrain station to close for two years for upgrades.
b'
VANCOUVER (NEWS 1130) \xe2\x80\x93 Many commuters in and out of Downtown Vancouver will have to go a bit farther to get onto the SkyTrain starting next year, as the Burrard station undergoes upgrades.
\n
TransLink says starting early 2022, the station will be closed for two years, as crews work to double the number of escalators and elevators at the station, as well as relocate the Burrard Street entrance and redesign the station\xe2\x80\x99s outdoor plaza.
\n
TransLink says the closure of the station will \xe2\x80\x9callow the work to be done safely and more efficiently than were it to remain partially open during construction.\xe2\x80\x9d
\n
The transit authority says closing the station is necessary to keep commuters and workers safe and avoid confusing passengers when changes are made at different phases of construction. It also says closing the station will speed up construction of the project by about 2.5 years and save about $36 million.
\n
During the two-year closure, passengers will have to use the Granville or Waterfront SkyTrain stations instead. TransLink says based on pre-COVID ridership data, those two stations can handle the additional volume.
\n
It adds it will increase bus service in the area.
\n\n
The Burrard SkyTrain Station was originally built in 1985. TransLink says it has not seen any significant upgrades since then.
\n
It is the fourth busiest SkyTrain station with 7.6 million people passing through every year, according to TransLink, and three escalators and one elevator isn\xe2\x80\x99t enough to handle the volume at peak times.
\n
The upgrades will also see improvements to the station\xe2\x80\x99s power supply and mechanical systems.
I have tried to make the case over the last few years that traditional media - television news and newspapers, for example - bear the brunt of the responsibility for the current environment of lies and misinformation we face today, even as that same media directs most of the blame toward the internet and social media. Now Facebook and Twitter are no angels. But the agencies most responsible for misinformation are the mass media. That's why this story is interesting to me. What if traditional news media (including especially newspapers) decided to start reporting the news responsibly? "On Saturday, (the newspaper) provided an update. The paper’s policy to 'not take the bait and give these false statements the oxygen they need to flourish' is going well. 'Readers responded quite favorably to what we are doing, and rest assured that people are not complaining that they miss Mandel’s hate-filled invective.'" I would also add that responsible journalism makes the educator's job easier and more relevant.
Believe it or not, I spent a lot of time on this subject in the 1980s (and one of my earliest published works was on the logic of conditional variability). This article takes me back to those days; skip the bit about three-valued conditionals and go right to the heart of the matter by looking at counterfactuals, possible world models, probabilistic interpretations, relevance and speech acts. Obscure, you say? Maybe. But it is difficult to understand the different and subtly distinct ways of looking at actions, intentions and causality without understanding conditionals. So much of our work, whether in writing software or designing learning theories, is based on the way we think things are connected together, on how we create outcomes, and how we explain the outcomes we've already created. You don't need to internalize all this discussion the way I did, but if you are in education and technology, you should at least be aware it exists.
I've not worked with these much before so it was a good opportunity to learn something new. Unix domain sockets provide a mechanism whereby different processes on a machine can communicate with each over over a mechanism similar to TCP, but via a file path instead.
I've encountered these before with the Docker daemon, which listens on path /var/run/docker.sock and can be communicated with using curl like so:
It turns out both nginx and Apache have the ability to proxy traffic to a Unix domain socket rather than to an HTTP port, which makes this a useful mechanism for running backend servers without attaching them to TCP ports.
Implementing this in Datasette
Datasette uses the excellent Uvicorn Python web server to serve traffic out of the box, and Uvicorn already includes support for UDS - so adding support to Datasette was pretty easy - here's the full implementation. I've added a new --uds option, so now you can run Datasette like this:
datasette --uds /tmp/datasette.sock fixtures.db
Datasette will "listen" on /tmp/datasette.sock - which means you can run requests via curl like so:
The implementation was only a few lines of code (to pass the uds option to Uvicorn) but adding a test proved a little more challenging. I used this pytest fixture to spin up a server process:
@pytest.fixture(scope="session")
def ds_unix_domain_socket_server(tmp_path_factory):
socket_folder = tmp_path_factory.mktemp("uds")
uds = str(socket_folder / "datasette.sock")
ds_proc = subprocess.Popen(
["datasette", "--memory", "--uds", uds],
stdout=subprocess.PIPE,
stderr=subprocess.STDOUT,
cwd=tempfile.gettempdir(),
)
# Give the server time to start
time.sleep(1.5)
# Check it started successfully
assert not ds_proc.poll(), ds_proc.stdout.read().decode("utf-8")
yield ds_proc, uds
# Shut it down at the end of the pytest session
ds_proc.terminate()
I use a similar pattern for some other tests, to exercise the --ssl-keyfile and --ssl-certfile options added in #1221.
The test itself looks like this, taking advantage of HTTPX's ability to make calls against Unix domain sockets:
The skipif decorator avoids running this test on platforms which don't support Unix domain sockets (which I think includes Windows, see this comment).
The @pytest.mark.serial decorator applies a "mark" that can be used to selectively run the test. I do this because Datasette's tests run in CI using pytest-xdist, but that's not compatible with this way of spinning up a temporary server. Datasette actually runs the tests in GitHub Actions like so:
- name: Run tests
run: |
pytest -n auto -m "not serial"
pytest -m "serial"
The pytest -n auto -m "not serial" line runs almost all of the tests using pytest-xdist across an automatically selected number of processes, but skips the ones marked with @pytest.mark.serial. Then the second line runs the remaining serial tests without any additional concurrency.
Documenation and example configuration for this feature can be found in the Running Datasette behind a proxy documentation. Thanks to Aslak for contributing the notes on Apache configuration.
I knew Toronto was trying to set a record for most COVID-19 vaccinations in one day at a single venue, but signups were so popular that I couldn’t get an appointment. I had managed to get on the waiting list for a pharmacy beforehand, and on the actual day, Toronto Vaccine Day, I walked by Scotiabank Arena mainly just to see the crowd. By the time I got there, the line had dwindled, but it wasn't obvious that I could waltz right in, so I walked back home and felt happy about the exercise I got. About 15 minutes after I got home, I saw a tweet1 that said they were taking walk-ins. So I biked back down, and bada bing bada boom, I now have the Moderna shot as my second shot. I couldn't believe how efficient and fast the whole process was. The only thing that seemed to have gone wrong was the music outside the stadium, in order to make it feel like a party atmosphere, made it hard to hear the attendants. This wasn’t the venue I most wanted to get a vaccine at (Rogers SkyDome was), but this’ll do just fine.
— Richard Brynj ó l f s s o n (@sillygwailo) June 28, 2021
Relating the story to my America co-workers later, they thought it was awfully Canadian of me to get a vaccine in a hockey arena.
I've always liked the British expressions for things, and "the jab" as the term for the vaccines always gave me a smile to my face. As a result of that, and influenced by the UK bot that preceded it, I created the Twitter bot Fully Jabbed Canada as to track second shot uptake as they started to become available to Canadians.
It's been two weeks since that second shot, meaning Canada considers me fully vaccinated. As a result, my morale has improved significantly. Ontario had already started allowing dining on patios (which have been taking advantage of at the diner next to my place) and in-person shopping since my last report, and as of this coming Friday, the provincial government is lifting more restrictions a few days early than planned, like they did the last time. The plan had been well-received (somewhat shocking for how it had handled the locking down in the first place), and I get the sense that they are learning to underpromise and overdeliver. The pandemic doesn't feel over for me. I'm making plans to go hiking and meeting up with local friends again, and visiting art galleries and museums and planning day trips with more confidence.
Actually I got notified by Nextdoor, which linked to that tweet in a post, so it seems a bit lucky that I saw it in time. ↩︎