Remember how I found that Spotify requires up to 30 days to provide me with a copy of my personal data? It turns out they turned it around in 6 days. Still longer than makes any sense at all, but, still, faster than a month.
The download link I was emailed today provided me with a ZIP file with these JSON files compressed inside it:
FamilyPlan.json
My mailing address.
Follow.json
How many people I’m followed, how many people are following me (but not their names, in either case) and a list of the bands I’m following:
{
"followerCount": 10,
"followingUsersCount": 57,
"followingArtists": [
"Anna Of The North",
"Ben Lee",
"Craig Cardiff",
"Port Cities",
"Siv Jakobsen",
"The Weather Station",
"William Prince",
"the bird and the bee"
]
}
Identity.json
The basics about me:
{
"displayName": "",
"firstName": "",
"lastName": "",
"imageUrl": "https://profile-images.scdn.co/images/userprofile/small/d8ef6639b84a9ca697c456f3cfad144cb4d7e917",
"largeImageUrl": "https://profile-images.scdn.co/images/userprofile/default/355873943e7307fffd422ca1d3e80ea8950d241b",
"tasteMaker": false,
"verified": false
}
I suppose I’ve never given Spotify my first or last names; it came up with its own determination that I’m not a “tasteMaker.”
Payments.json
My payment information (with all but the last four digits of my credit card redacted). Oddly, my credit card is out of date, but they keep billing me anyway.
Playlist.json
All of the my playlists and all of their tracks, like this:
{
"playlists": [
{
"name": "DinnerParty",
"lastModifiedDate": "2018-08-28",
"items": [
{
"track": {
"trackName": "Small Victory",
"artistName": "Garnet Rogers",
"albumName": "All That Is - The Songs Of Garnet Rogers"
},
"episode": null,
"localTrack": null
},
SearchQueries.json
The last 90 days of my search queries. For each query there’s the date, the platform (DESKTOP, ANDROID), the country, the query (typed or selected) and something called userIntent, which is one of “navigate-forward,” “nav-back-up-toolbar-button,” or “play.”
{
"date" : "2019-07-02",
"platform" : "DESKTOP",
"country" : "CA",
"terminationReason" : "INTERACTION",
"msDuration" : 0,
"typedQuery" : null,
"selectedQuery" : "lovers in a dangerous time",
"userIntent" : "navigate-forward",
"viewUri" : "spotify:search:lovers in a dangerous time"
}
StreamingHistory.json
A list of all the tracks I’ve streamed, the date and time I streamed them, and how much of the track I listened to (in milliseconds) like this:
{
"endTime" : "2019-07-12 18:41",
"artistName" : "Henry Jamison",
"trackName" : "Real Peach",
"msPlayed" : 151837
},
{
"endTime" : "2019-07-12 18:44",
"artistName" : "This Is The Kit",
"trackName" : "Bullet Proof",
"msPlayed" : 17452
},
{
"endTime" : "2019-07-12 18:44",
"artistName" : "Maisie Peters",
"trackName" : "I'll Be There For You - Recorded at Metropolis Studios, London",
"msPlayed" : 9503
},
The streaming history continues up to yesterday, despite my request for the data being submitted on July 6.
I got a quick overview of which artists I’ve been streaming a lot of with:
grep artistName StreamingHistory.json | sort | uniq -c | sort -rn | more
which showed me these as the top 10:
59 "artistName" : "Port Cities",
42 "artistName" : "Thomas Newman",
35 "artistName" : "Max Richter",
30 "artistName" : "Mark Isham",
26 "artistName" : "Ingrid Michaelson",
23 "artistName" : "Jane Siberry",
21 "artistName" : "Ólafur Arnalds",
19 "artistName" : "Barenaked Ladies",
17 "artistName" : "Christine and the Queens",
15 "artistName" : "The East Pointers",
I went on a Barenaked Ladies kick this week when I got a little obsessed with the line “I just made you say underwear” in the song Pinch Me.
Userdata.json
Some more information about me (I’ve redacted a few bits myself):
{
"username": "peter.rukavina",
"email": "XXXXX",
"country": "CA",
"createdFromFacebook": false,
"facebookUid": null,
"birthdate": "YYYY-MM-DD",
"gender": "male",
"postalCode": "C1A 4R4",
"mobileNumber": null,
"mobileOperator": null,
"mobileBrand": "Android",
"creationTime": "2014-08-06"
}
YourLibrary.json
All the tracks in my “Library.” To be honest I’ve never understood Spotify’s high-level concepts, including “Library.” But certainly I have some things in it, like:
{
"artist": "The Weather Station",
"album": "The Weather Station"
},
{
"artist": "Jóhann Jóhannsson",
"album": "Orphée"
},
{
"artist": "Martha Wainwright",
"album": "Goodnight City"
},
Oliver’s Data
On the same day I requested my data, Oliver requested his, and he got his download link today to.
The structure of his dump is identical to mine, except that he has a lot more of everything. For example, his Playlist.json file is 2.9 million lines in it, and contains 4,582 playlists containing a total of 318,762 tracks.
Unfortunately, going back to the spark that took us down this road in the first place, nowhere in the data dump is anything about the podcasts Oliver has subscribed to.
Further confirming that Spotify is, indeed, a prison for podcasts.
As a kind of beta test of a possible cycle ride from Charlottetown to South Melville, we drove the route in our car this afternoon as our way of getting from town to Crapaud for Oliver’s weekly art lesson.
If you remember grade 10 geography, you will recall that the closer together contour lines are, the steeper the terrain: as you can see on the map here, which overlays our route (in red) on top of the province’s 2 metre contours layer, you can see that we got into some serious steepness once we turned left off the Kingston Road and entered the northern Bonshaw Hills.
Here’s the trip GPX file (recorded with OsmAnd) converted to an elevation profile by Trackreport.net (don’t compare the map above to the chart below, from left to right, as they run in opposite directions!):
Not alpine terrain, certainly. But also not flat.
Once we left the Kingston Road it was mostly clay roads through to South Melville–some of the most beautiful roads you’ll ever drive. Not ideal terrain for a first-time longer-distance bicycle ride, electric-assisted or not. But certainly something to aspire to.
One of the less-recognized shames of the Plan B highway project is that there was no provision whatsoever made for cyclists when the new highway was constructed, despite that being the ideal–and perhaps only, in our lifetimes–opportunity to do so. Wouldn’t it have been amazing to have a separated cycleway running parallel to the route?
I did meet a gaggle of professional-looking cyclists in Victoria, and they’d cycled from town along the south shore, and spoke of the beauty of the route; perhaps that should be our next beta test.
Good on Hon. Brad Trivers for speaking the truth about the truly inane move to use carbon tax revenue to make driver’s licenses free-of-charge enacted by the previous government.
While it would be an exaggeration to say that the Liberal government lost the election on this issue, I know it was a galvanizing “wait, what!?” moment for many.
“Obviously, one of the ways to reduce carbon emissions is by burning less fuel,” Trivers said.
“If you’re actually giving people free drivers’ licences and discounts on registrations to go drive, you can see that it actually doesn’t help with decreasing the amount of fuel they’re going to burn in their vehicles.”
Exactly.
Sign me up to pay for my license again; let’s use carbon tax funds for real action on climate change.
While we’re talking about infrastructural evolution, here’s something I stumbled across the other day.
Here’s a 2010 aerial view of the Coles Building, current seat of the Legislative Assembly of PEI:
Detail from 2010 high resolution orthophoto of Charlottetown downtown area
Dept. of Environment, Water and Climate Change
Forests, Fish & Wildlife Division
If you’ve visited the Coles Building, you’ll remember that the front yard is a lovely greenspace, with a canopy of mature trees; an excellent place to seek shelter from the hot summer.
Only 42 years earlier, however, when the 1968 aerial survey was done, this same area was home to parking spaces for 39 vehicles:
Detail from 1968 high resolution orthophoto of Charlottetown downtown area
Dept. of Environment, Water and Climate Change
Forests, Fish & Wildlife Division
Visiting the area today there is no hint whatsoever of the former design; it is a landscape transformed.
So we are capable of making positive changes that increase our quality of life and decrease (or, given the construction of parkades nearby in ensuing years, at least consolidate) parking.
Another excellent film about cycling and urban design from Street Films, Utrecht: Planning for People & Bikes, Not for Cars, dropped a couple of weeks ago.
My favourite passage comes near the beginning (emphasis mine):
I’m really fond of cycling, because it has so many positives: it’s about the noise, it’s about clean air, about climate, but also about how friendly it is. You really have the idea that people are the boss on the street, not machines.
Watching stories about dramatic and positive improvements in infrastructure and culture is inspiring, especially when you learn that they have taken place, in large part, within one generation.
We could do exactly the same thing here.
Yesterday’s trip to pick up Oliver at Stars for Life followed much the same template as the day before: I took the bus out, we took the bus back.
This method is proving to be quite workable: it’s much less stressful than driving (especially as the combination of tourist traffic and public servant quitting-time traffic is at its peak this week), it gives Oliver and I a good chance to chat while waiting for the bus, and it only takes about 15 minutes longer than driving our car.
Really the only fly in the ointment is the stress of watching the stop sign at the corner of Beach Grove Road and Maypoint Road be ignored almost universally. Like this:
That SUV’s “what stop sign?!” passage through the intersection wasn’t atypical: over 20 minutes of waiting for the bus, approximately 100% of cars turning right off Beach Grove Road did not come to a complete stop. Including an RCMP cruiser.
I am not, by my nature, a reliable rule-follower, but when it comes to traffic laws I am a strict constitutionalist, and I deeply believe that responsible driving and cycling requires that we all follow the rules all the time.
The Highway Traffic Act defines “stop” as “the complete cessation from movement” and there’s very, very little “complete cessation” happening on Beach Grove. The Driver’s Handbook points out why this is a bad thing:
Rolling a stop sign is illegal. Remember that stop signs are placed at those intersections where extra hazards exist, such as heavy traffic or limited visibility. Slowing rather than stopping for stop signs is a dangerous practice and one that will eventually lead to collisions. If you are a beginner, develop the habit of always making a full stop. If you have driven for some years, you may have developed the habit of “rolling” through stop signs; this habit must be corrected.
I completely agree with that; indeed I witnessed a near-collision yesterday, when a commercial pickup-truck rolled through the stop sign and almost collided with a pedestrian who was crossing Maypoint Road.
On Monday I emailed Councillors Bob Doiron (Chair of the Protective and Emergency Services Committee) and Alanna Jankov (Councillor for my ward) to request that this situation be taken up for consideration; as it happened, City Council was meeting at the very moment I sent my email, and so within minutes this happened:
After the meeting I received follow-up emails from both Councillor Doiron and Councillor Jankov. And then, later that evening, an email from Deputy Police Chief Brad MacConnell, indicating that Charlottetown Police would step up enforcement. True to his word, as I dropped Oliver off on Tuesday morning there was a ticket being given out, and the Deputy Chief confirmed to me today that additional tickets have been issued since.
Of course this isn’t an issue that enforcement is going to solve: the amount of enforcement at that corner to actually change behaviour, to get the word out that you better stop, or risk a ticket, and to have that stick, would consume all the resources the police department has. And more.
Which makes me wonder whether this is a problem that could be solved through design, not enforcement.
Here’s what the approach to the stop sign looks like (from Google Street View):
While the stop sign is visible, everything else about the structure of this intersection could be construed as telegraphing “you don’t really need to stop here.” The road bends rather than angles, and there’s a continuous white line, with no pedestrian crossing lines visible, that serves to draw the eye around the corner.
This effect is only enhanced as you draw closer to the intersection:
By the time you’re this far in, it looks like a pretty clear “glide on through here, no need to stop” swath of pavement, no matter the stop sign.
I’d like to see what a squared-off corner, and clear pedestrian zebra-crossing across both Beach Grove and Maypoint would do to the stopping rate.
In the meantime, if you happen to be driving through this intersection yourself, I surely would appreciate it if you would step on the brakes until you feel a “complete cessation from movement” and then not proceed until it’s clear you’re not going to run me, Oliver and Ethan over.
Bonus Tech Tip
If you want to pixelate a video, and you have ffmpeg, try this (from here):
dimensions=$(ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of "csv=p=0:s=\:" rollingstop.mov)
ffmpeg -i rollingstop.mov -filter_complex \
"[0:v] scale='iw/15:-1', scale='$dimensions:flags=neighbor'" pixellated_rollingstop.mov
That’s how I preserved the anonymity of the scofflaw in the white SUV.
David Remnick interviewed Alexandria Ocasio-Cortez for The New Yorker Radio Hour, and asked her about what it was like being in Congress after a year in office:
David Remnick: What shocked you the most… in holding this office, and the political office once you’re in office?
Alexandria Ocasio-Cortez: I think, when I first got into office, after getting sworn in, I struggled with a large deal of imposter syndrome. Do I belong here? They’re going to find out. As soon as they find out they’re gonna…
DR: Take it back?
AOC: Exactly. Like it’s gonna get taken back. And so I struggled with that a lot, but after acclimating to the actual functions of this job and this role, I think one of the things that has been shocking to me is how normal it is, like the…
DR: Normal in what sense?
AOC: In how enormous decisions are made in ways that feel like a typical office, sometimes, you know…
DR: For example…
AOC: And so, there will be, miscommunications, or there will be debates, or there’s that guy you don’t like on the second floor, or… things like that, and they all have real dynamics and real consequences for decision-making. For example, last week was the Border Supplemental, which was this big controversy, both within the party but also nationally.
DR: This is the conflict between the Senate Democrats and the House Democrats, as well as with the Republicans as well?
AOC: Right. And so the ways that this very flawed supplemental, which I personally voted against, along with many other members, the way that it came to the floor, like “what’s going on?”, “who’s saying what?”, and you’re hearing, second hand, about what might be happening, and it kind of unfolds within 30 minutes and, before you know it, Congress has voted on $4.6 billion, with no accountability.
DR: So you’re saying “government is a mess,” in a way.
AOC: Ah, yeah, it’s a mess. It’s a mess.
I thought of this exchange last night when the Legislative Assembly of PEI passed second reading of the Bill No. 102, An Act to Amend the Climate Leadership Act, a bill that has, perhaps, the fewest words a bill could have:
Subsection 2(1) of the Climate Leadership Act R.S.P.E.I. 1988, Cap. C-9.1, is amended by the deletion of the words “1.4 megatonnes” and the substitution of the words “1.2 megatonnes”.
Few words, but important ones.
Subsection 2(1) of the Climate Leadership Act currently reads:
The purpose of this Act is to provide for a price on carbon for purchasers and consumers of fuel in an effort to reduce greenhouse gas emissions in the province to less than 1.4 megatonnes of carbon dioxide equivalent per year by 2030.
According to the 2018 Prince Edward Island Climate Change Action Plan:
Prince Edward Island’s GHG emissions were 1.8 million tonnes of carbon dioxide equivalent (CO2 eq) in 2016.
As such, this amendment, should it proceed, will change our target for 2030 from a reduction of 22% to a reduction of 33%.
This proposed amendment, the CBC reports, “has been one of the most debated topics of this sitting of the legislature,” and earlier in this debate it appeared as though Hon. Brad Trivers, Minister of Environment, Water and Climate Change, would not support it.
Here, for example, is a comment on July 2 from Minister Trivers during an exchange with MLA Lynne Lund (who introduced the bill):
Mr. Trivers: Thank you, Chair.
I just wanted to take that opening statement and look at that, because I think it illustrates a point that I want to make. And this idea that by potentially not supporting this amendment, we’re taking a gamble with the future and that to me, that’s not what this amendment is really about, in my opinion.
I mean, if you look at very specifically what you’re doing and the clause you’re trying to amend, you’re looking at a clause that talks about tying the price on carbon, the carbon tax, for producers and consumers, to a greenhouse gas emission target, and this is a target that you have said and admitted has changed. It’s a moving target.
Now, granted it seems to be getting stricter and stricter the further we go, right? But that’s the problem, and this was the problem I had with the act initially, was putting this target like that specifically in the act.
A better target would be − we want to be a carbon-neutral society by 2050. Because that’s actually what the end goal is. And there’s a lot of work to be done I think, again, by your own admission, to figure out how we get from here to there. And whether this goal of 1.4 megatonnes versus 1.2 megatonnes of carbon dioxide equivalent by 2030 is going to make or break that is debatable.
And then, a few moments later:
Mr. Trivers: Yes, so we’re all here collectively representing Islanders, Prince Edward Islanders and any target we set has to represent them as well, right. There are a lot of different opinions out there and I do appreciate your comments about, we have to be a leader. I don’t believe it’s up to us necessarily to tell Islanders that this is the target we’re going to set because even if it is, as strong evidence as you have, because that’s what the United Nations paper said, or the report said.
This did not sound like a Minister prepared to support the setting of a more ambitious target.
But, between July 2 and 10, something changed for the Minister; the CBC reports:
Minister of Environment, Water and Climate Change Brad Trivers had previously said he likely would not support the bill without it going to a standing committee. However, he said he had changed his mind.
Prior to the vote, he told a group rallying outside the legislature that his decision came in part out of conversations with his children.
I don’t know what Minister Trivers’ children said to him, but my hat is off to them for convincing their father of the value of supporting the bill that made our push toward climate change mitigation a more substantial one. Maybe his kids didn’t “save the climate,” but they helped. More conversations with your father, please.
Government may be, as Alexandria Ocasio-Cortez suggests, “a mess,” but in a way that’s kind of the point: hold ideas up to the light, debate them vigorously, hear all views. Maybe have a conversation or two with your kids. Then vote.
In this case the mess is working, the vote passed 18 for, 6 opposed. Hats off to Lynne Lund for having faith in the mess, introducing the bill, and then working hard to get it passed.
I’ve been watching my way through the BBC-Netflix co-production Wanderlust this week, a program that The Evening Standard called, accurately, a “meandering polyamory drama.”
I’ve never had the constitution for polyamory, and the polyamory is the squidgiest part of the show: the reason to watch is for the children of the main characters, played by Emma D’Arcy, Joe Hurst, and Celeste Dring.
They are each accomplished actors–considerably more compelling than any of their elders in this situation. Alas their interesting subplots get far too little time; I would happily watch a full series where the polyamorous adults were excised and the children took centre stage.
My friend Valerie pointed me to the Sustainable Transportation Vermont blog, and I’ve found it refreshingly grounded and practical. My favourite post so far as been Walking the Walk, about the appointment of Curt McCormack as chair of the Vermont House Transportation Committee:
Representative McCormack does not own a car.
In past years, the main function of the committee has been to approve the state’s $600 million transportation budget, most of which has been dedicated to making it easier for people to get places in a car.
Which makes sense, given the fact that for almost a century this country has enabled the automobile to permeate every aspect of our lives. Pretty much anytime we go anywhere, it’s in a car.
But Speaker of the House Mitzi Johnson wants to shift the Transportation Committee’s focus this year to offer Vermonters, especially those living in more rural parts of the state, more affordable travel options. McCormack, she said, is the ideal person to oversee an effort to expand rural public transit because of his lived experience. He’s not just an occasional bus rider. He depends on transit to get around, which is the status of the many bus riders who cannot afford their own vehicle. McCormack’s years riding the bus, getting to know his drivers and fellow passengers, experiencing the system’s frustrations as well as its benefits, will bring a unique and valuable perspective to his chairmanship.
I’m convinced that we would have significantly better infrastructure in place for walking and bicycling Charlottetown if we hadn’t had generations of city councillors who’ve seldom if ever walked or bicycled as part of their daily commute.
I’m hopeful that we’ll be able to see this change now that we have a mayor who’s also a cyclist: I’m joining the Mayor’s Task Force on Active Transportation this month–we meet for the first time next week–and I hope this group can be part of making that change.