Shared posts

18 Jun 22:19

Five-word movie review: “Curvature”

by sheppy

Twisted time, entertaining and quick.

18 Jun 22:18

Entropy as Power Difference, or Why It’s Always Easier to F Things Up

by Ton Zijlstra

Since you ask, Roland, I think free commenting platforms are overrun because of the fundamental asymmetry between the energy it costs to make a mess and the energy needed to clean things up. Increasing entropy is always easier than decreasing it. This introduces a power difference in favour of the trolls. Such differences can be lessened somewhat by things like making services paid, or by using less mainstream services (how you use GitHub), better yet self-hosting, or other things that mean an additional cost for entropy-spreaders. Which is why I host my own comments and use outside help only to weed out those commenters that leave additional entropy in their wake (one of the things it does is make the cost lower for known commenters, than for others). Which is also why I’m answering here, and not on GitHub as you suggest. (And hopefully you have something like Webmention enabled so you’ll know)

18 Jun 22:18

The Easy Target

The United States of America was the easy-to-choose target for the fascists.

It was the richest and most powerful country in the history of countries. How could any fascist not want to take it over?

It was the work of several decades.

They built up a giant military/industrial partnership — mixing government and unaccountable corporations with secrets — with almost no resistance.

Sure, they faced some setbacks from time to time: the end of apartheid in former slave states, for instance. But they fought back by privatizing the prisons, instituting mass incarceration, and militarizing the police force — and ensuring that it remained a tool of white supremacy.

They stoked fear of communism, as if adding just a penny of tax meant imminent Sovietization; as if labor unions were anti-American insurgents; as if a social safety net would make Jesus cry. As if “equal opportunity” meant Fidel Castro walking into your house with a machine gun.

They gutted the education system and fought knowledge with mass disinformation. They made sure that corporations could and would hook Americans on opioids and blather and outrage.

While some of us did learn that the beauty of America is our constant striving to better understand our founding creed — and finally live up to it — they made sure that half of us believed in America as a land and as a race.

And now that they’ve won — they’ve gotten their orange leader with the red cap, they’ve gotten their system of cruelty — they’re carving it all up for themselves. They’re cutting it all up with jigsaws and burning what they can’t use right now.

There were, and still are, leaders who could fight back, but who just plain refused.

If we’re lucky enough one day to have a true history, those people will go down as among our greatest traitors. Every day I long for that day.

18 Jun 22:18

Mother tongue and identity

by admin

Still, for many of us, our mother tongue is bound up with our deeper identity, our memories and sense of self.

The article, Can you lose your native language?, is about language attrition, but my brain picks up this piece, because it’s something I’ve been thinking a lot recently.

I speak Russian to our kids, but we live in the Netherlands and recently I started to get more pressure to speak Dutch to them when other people are present.  I do – when speaking to a group that includes my kids or, occasionally, when I want to be sure that others understand what is being said. But switching into Dutch completely when in public is out of question at this point: that part of my identity, which is about being a mother, is in Russian, our relation is in Russian and my part of facilitating their learning is also in Russian. Speaking Dutch to them would turn me into somebody else 🙂

A quick search on “mother tongue” and “identity” brings a bunch of interesting things to read, but I shouldn’t now: it’s late in the night and our suitcases for Russia are not packed yet.

18 Jun 22:18

Fascism These Days

I can write just about anything I want to on my blog for the simple reason that it doesn’t matter.

Times change. Fascists learn. There’s no pressing need to cut off any websites.

* * *

Fascists don’t leave so many fingerprints these days.

Example: there’s no actual agreement anywhere that makes Twitter a de facto arm of the Trump Executive Branch and all its unofficial partners — but it is.

Twitter bans the people who report abuse and it retains the Nazis and Russians. It amplifies the distractions and fills the pipe with lies and outrage. (And gives us special emoji as rewards.)

The truth can’t be found in the ever-thickening fog.

Though Twitter has been used for good, I’m more and more convinced that giving it anything just feeds it. If the medium is the message, then the message is lies, lulz, and bullshit, no matter what you put in.

* * *

That’s not to say that fascists won’t ever take our freedoms away. The fascists grow stronger and bolder, and those who would check their power chicken-out.

But it won’t usually be laws, or even executive orders, that take away freedoms. Think of the NFL, which — utterly disgracefully — now mandates against kneeling.

Samantha Bee survives on TV this year — but will she survive next year?

* * *

What if agents in the Secret Service or FBI begin quietly talking to bloggers or tweeters who express an anti-Trump point of view? No law needed. No take-down notice. It’s just agents doing their jobs.

Would you keep blogging after having a quiet meeting with a couple armed men who — politely and calmly — explain that they’re just checking to make sure you’re not a threat to national security?

Would you even tell anyone about the meeting?

This hasn’t happened to you. Okay. (Or to me.)

But how would you know if this is already happening to other people? If a friend told you a rumor that it was happening, what would you think? Is it plausible from the team that already works so hard to discredit the free press? If you thought it might be true, would it change how and what you write?

Consider that there wouldn’t have to be any order or directive at all from the White House to the Secret Service or FBI. The White House wouldn’t even have to know about it.

This is one way fascism works. It leaves no marks. It doesn’t even have to lift a finger sometimes.

They don’t have to do this at all, in other words. They just have to get to the point where you wouldn’t put it past them. At that point they can let our imaginations and rumors do the rest — and people will surrender their voice.

For the record — and this is super-important — I do not believe this is happening. This is merely illustration, and I’m not that paranoid, and you shouldn’t be either.

18 Jun 22:17

An ode to King James

The NBA season is over and, once again, what I will most remember are King James’ heroics. As a lifelong Boston Celtics fan, I am supposed to hate LeBron James. But I don’t. As a fan of the game of basketball, and a statistician, I just can’t help but be in awe of the best player ever to play the game. Also how can you hate this guy (don’t miss the wrist watch)?

Of all the ridiculous stats one can rattle about LeBron, to me, the most impressive actually relate to a simple one: career totals. The graph below shows you his total points, assists, steals and rebounds as a function of time. The consistency, durability, and all-around production is simply unprecedented. At 33, he is already top 25 all time in three categories: points, assists and steals. If he can keep up his current pace for five more years (I know it’s a big if), he will be top 3 in points, assists and steals, and top 25 in rebounds. No other player comes close.

Here is the code that produces the graph above:

library(dplyr)
library(rvest)
url <- "http://www.espn.com/nba/player/stats/_/id/1966/lebron-james"
h <- read_html(url)
lebron <-html_nodes(h, "table") %>% .[[3]] %>% rvest::html_table(fill=TRUE)
names(lebron) <- lebron[2,]
lebron <-lebron[3:17,1:17]
ind <- 11:17
lebron[ ,ind] <- apply(lebron[,ind], 2, as.numeric)

stats <- c("pts","ast","stl","trb")
full_stats <- c("Points", "Assists", "Steals", "Rebounds")
urls <- paste0("https://www.basketball-reference.com/leaders/",
              stats, "_career.html")
tabs <- lapply(urls, function(url){
  tab <- read_html(url) %>%
    html_nodes("table") %>%
    .[[2]] %>%
    html_table()
   tab <- tab %>% mutate(Player = gsub("\\*", "", Player))
   names(tab)[3] <- "Value"
   tab
})
names(tabs) <- stats
names(lebron)[11] <- "TRB"
ind <- match(toupper(stats), names(lebron))

rafalib::mypar(2,2)
for(i in seq_along(stats)){
  y <- lebron[[ ind[i] ]]
  r <- mean(y)
  x <- 2004:2018

  YLIM <- c(min(y), max(tabs[[i]]$Value))
  YLIM[2] <- YLIM[2]*(1.05)
  XLIM <- c(min(x), 2018 + 5)
  plot(x, cumsum(y), xlim = XLIM, ylim = YLIM, xaxt="n",
       main = full_stats[i], xlab="", ylab="Total")
  axis(side=1, 2004:2023, 2004:2023, las =2)
  abline(-2003*r, r, lty = 2, col = "red")
  j <- c(1:3,25)
  the_names <- tabs[[i]]$Player[j]
  the_names[4] <- paste0("Top 25")
  z <-  tabs[[i]]$Value[j]
  abline(h = z, lty = 2)
  text(2008.5, z, the_names, pos=3, offset = 0.1, cex = 0.7)
}
18 Jun 22:17

The Scooter Economy

by Ben Thompson

As I understand it, the proper way to open an article about electric scooters is to first state one’s priors, explain the circumstances of how one came to try scooters, and then deliver a verdict. Unfortunately, that means mine is a bit boring: while most employing this format wanted to hate them,1 I was pretty sure scooters would be awesome — and they were!2

For me the circumstances were a trip to San Francisco; I purposely stayed at a hotel relatively far from where most of my meetings were, giving me no choice but to rely on some combination of scooters, e-bikes, and ride-sharing services. The scooters were a clear winner: fast, fun, and convenient — as long as you could find one near you. The city needs five times as many.

So, naturally, San Francisco banned them, at least temporarily: companies will be able to apply for their share of a pool of a mere 1,250 permits; that number may double in six months, but for now the scooter-riding experience will probably be more of a novelty, not something you can rely on. In fact, by the end of my trip, if I were actually in a rush, I knew to use a ride-sharing service.

It’s no surprise that ride-sharing services have higher liquidity: San Francisco is a car-friendly town. The city has a population of 884,363 humans and 496,843 vehicles, mostly in the city’s 275,000 on-street parking spaces. Granted, most of the Uber and Lyft drivers come from outside the city, but there is no congestion tax to deter them.

The result is an urban area stuck on a bizarre local maxima: most households have cars, but rarely use them, particularly in the city, because traffic is bad and parking is — relative to the number of cars — sparse; the alternative is ride-sharing, which incurs the same traffic costs but at least doesn’t require parking. And yet, San Francisco, for now anyways, will only allow about 60 parking spaces-worth of scooters onto the streets.

Everything as a Service

This is hardly the forum to discuss the oft-head-scratching politics of tech’s de facto capital city, and I can certainly see the downside of scooters, particularly the haphazard way with which they are being deployed; in an environment built for cars scooters get in the way.

It’s worth considering, though, just how much sense dockless scooters make: the concept is one of the purest manifestations of what I referred to in 2016 as Everything as a Service:

What happens, though, if we apply the services business model to hardware? Consider an airplane: I fly thousands of miles a year, but while Stratechery is doing well, I certainly don’t own my own plane! Rather, I fly on an airplane that is owned by an airline that is paid for in part through some percentage of my ticket cost. I am, effectively, “renting” a seat on that airplane, and once that flight is gone I own nothing other than new GPS coordinates on my phone.

Now the process of buying an airplane ticket, identifying who I am, etc. is far more cumbersome than simply hopping in my car — there are significant transaction costs — but given that I can’t afford an airplane it’s worth putting up with when I have to travel long distances. What happens, though, when those transaction costs are removed? Well, then you get Uber or its competitors: simply touch a button and a car that would have otherwise been unused will pick you up and take you where you want to go, for a price that is a tiny fraction of what the car cost to buy in the first place. The same model applies to hotels — instead of buying a house in every city you visit, simply rent a room — and Airbnb has taken the concept to a new level by leveraging unused space.

The enabling factor for both Uber and Airbnb applying a services business model to physical goods is your smartphone and the Internet: it enables distribution and transactions costs to be zero, making it infinitely more convenient to simply rent the physical goods you need instead of acquiring them outright.

What is striking about dockless scooters — at least when one is parked outside your door! — is that they make ride-sharing services feel like half-measures: why even wait five minutes, when you can just scan-and-go? Steve Jobs described computers as bicycles of the mind; now that computers are smartphones and connected to the Internet they can conjure up the physical equivalent as well!

Indeed, the only thing that could make the experience better — for riders and for everyone else — would be dedicated lanes, like, for example, the 900 miles worth of parking spaces in San Francisco. To be sure, the city isn’t going to make the conversion overnight, or, given the degree to which San Francisco is in thrall to homeowners, probably ever, but that is particularly a shame in 2018: venture capitalists are willing to fund the entire thing, and I’m not entirely sure why.

Missing Moats

Late last month came word that Sequoia Capital was leading a $150 million funding round for Bird, one of the electric scooter companies, valuing the company at $1 billion; a week later came reports that GV was leading a $250 million investment in rival Lime.

One of the interesting tidbits in Axios’s reporting on the latter was that each Lime scooter is used on average between 8 and 12 times a day; plugging that number into this very useful analysis of scooter-sharing unit costs suggests that the economics of both startups are very strong (certainly the size of the investments — and the quality of the investors — suggests the same).

The key word in that sentence, though, is “both”: what, precisely, might make Bird and Lime, or any of their competitors, unique? Or, to put it in business parlance, where is the moat? This is where the comparison to ride-sharing services is particularly instructive; I explained back in 2014 why there was more of a moat to be had in ride-sharing than most people thought:

  • There is a two-sided network between drivers and riders
  • As one service gains share, its increased utility of drivers will restrict liquidity on the other service, favoring the larger player
  • Riders will, all things being equal, use one service habitually

This leads to winner-take-all dynamics in a particular geographic area; then, when it comes times to launch in new areas, travelers and brand will give the larger service a head start.

To be sure, these interactions are complicated, and not everything is equal (see, for example, the huge amounts of share Lyft took last year thanks to Uber’s self-inflicted crises). It is that complication, though, and the fact it is exponentially more difficult to build a two-sided network (instead of, say, plopping a bunch of scooters on the street), that creates the conditions for a moat: the entire point of a moat is that it is hard to build.

Uber’s Self-Driving Mistake

This is why I have long maintained that the second-biggest mistake3 former Uber CEO Travis Kalanick made was the company’s head-first plunge into self-driving cars. On a surface level, the logic is obvious: Uber’s biggest cost is the driver, which means getting rid of them is an easy route to profitability — or, should someone else deploy self-driving cars first, then Uber could be undercut in price.

The mistake in Kalanick’s thinking is two-fold:

  • First, up-and-until the point that self-driving cars are widely available — that is, not simply invented, but built-and-deployed at scale — Uber’s drivers are its biggest competitive advantage. Kalanick’s public statements on the matter hardly evinced understanding on this point.
  • Second, bringing self-driving cars to market would entail huge amounts of capital investment. For one, this means it would be unlikely that Google, a company that rushes to reassure investors when it loses tens of basis points in margin, would do so by itself, and for another, whatever companies did make such an investment would be highly incentivized to maximize utilization of said investment as soon as possible. That means plugging into the dominant transportation-as-a-service network, which means partnering with Uber.

My contention is that Uber would have been best-served concentrating all of its resources on its driver-centric model, even as it built relationships with everyone in the self-driving space, positioning itself to be the best route to customers for whoever wins the self-driving technology battle.

Uber’s Second Chance

Interestingly, scooters and their closely-related cousin, e-bikes, may give Uber a second chance to get this right. Absent two-sided network effects, the potential moats for, well, self-riding scooters and e-bikes are relatively weak: proprietary technology is likely to provide short-lived advantages at best, and Bird and Lime have plenty of access to capital. Both are experimenting with “charging-sharing”, wherein they pay people to charge the scooters in their homes, but both augment that with their own contractors to both charge vehicles and move them to areas with high demand.

What remains under-appreciated is habit: your typical tech first-adopter may have no problem checking multiple apps to catch a quick ride, but I suspect most riders would prefer to use the same app they already have on their phone. To that end, there is certainly a strong impetus for Bird and Lime to spread to new cities, simply to get that first-app-installed advantage, but this is where Uber has the biggest advantage of all: the millions of people who already have the Uber app.

To that end, I thought Uber’s acquisition of Jump Bikes was a good idea, and scooters should be next (an acquisition of Bird or Lime may already be too pricey, but Jump has a strong technical team that should be able to get an Uber-equivalent out the door soon). The Uber app already handles multiple kinds of rides; it is a small step to handling multiple kinds of transportation — a smaller step than installing yet another app.

More Tech Surplus

More generally, in a world where everything is a service, companies may have to adapt to shallower moats than they may like. If you squint, what I am recommending for Uber looks a bit like a traditional consumer packaged goods (CPG) strategy: control distribution (shelf-space | screen-space) with a few dominant products (e.g. TIDE | UberX) that provide leverage for new offerings (e.g. Swiffer | Jump Bikes). The model isn’t nearly as strong, but there may be other potential lock-ins, particularly in terms of exclusive contracts with cities and universities.

Still, that is hardly the sort of dominance that accrues to digital-only aggregators like Facebook or Google, or even Netflix; the physical world is much harder to monopolize. That everything will be available as a service means a massive increase in efficiency for society broadly — more products will be available to more people for lower overall costs — even as the difficulty in digging moats means most of that efficiency becomes consumer surplus. And, as long as venture capitalists are willing to foot the bill, cities like San Francisco should take advantage.

I wrote a follow-up to this article in this Daily Update.

  1. That article is perhaps more revealing than the author appreciated
  2. Note: this article is going to focus on San Francisco for simplicity’s sake, although the broader points have nothing to do with San Francisco specifically; I am aware that the transportation situation is different in different cities — I do live in a different country, after all, in a city with fantastic public transportation and a plethora of personal transportation options.
  3. The first was not buying Lyft
18 Jun 21:53

Has Google Become a Journal Publisher?

files/images/iStock-113030995-1024x685.jpg

Kent Anderson, The Scholarly Kitchen, Jun 14, 2018


Icon

The answer to this question is "no". But Google does publish a fascinating journal called Distill - this article on AI and Interpretation distracted me for a good fifteen minutes before I could finish this post. And Distill seems to bother Scholarly Kitchen writer Kent Anderson a lot. The Scholarly Kitchen is, of course, largely an advocacy blog for publishing companies, so the take is not unexpected. If Distill wants to be taken seriously, writes Anderson, "adding an editorial board, a management layer, and more of the things publishers do would only help if they are serious about having a true academic journal." But Anderson's problem is that Distill is already taken seriously. Distill doesn't need to adapt. Scholarly publications do.

Web: [Direct Link] [This Post]
18 Jun 21:53

Digital Portfolios and Content

files/images/Documenting-Learning-Digital-Portfolios.006-400x300.jpeg

Silvia Tolisano, LangWitches, Jun 14, 2018


Icon

This is a good article introducing issues and approaches to content in digital portfolios in schools. "The content created and chosen to include in a digital portfolio can be free flowing or follow a more rigid structure... it depends on what the learner craves and feels more comfortable with. The worst seems to be, when a portfolio owner feels a lack of ownership, is so paralyzed and constrained from a given structure or to the contrary, a lack thereof, that they don’t create and publish anything" (the writing style is similar thoughout, different enough to be noted, a stringing together of phrases, conjoined with commas).

Web: [Direct Link] [This Post]
10 Jun 17:58

The true meaning of unit testing

You probably already know what “unit testing” means. So do I.

But—what if our definitions are different? Does unit testing mean:

  • Testing a self-contained unit of code with only in-memory objects involved.
  • Or, does it mean automated testing?

I’ve seen both definitions used quite broadly. For example, the Python standard library has a unittest module intended for generic automated testing.

So we have two different definitions of unit testing: which one is correct?

Not just unit testing

You could argue that your particular definition is the correct one, and that other programmers should just learn to use the right terminology. But this seems to be a broader problem that applies to other forms of testing.

There’s “functional testing”:

  • It might mean black box testing of the specification of the system, as per Wikipedia.
  • At an old job, in contrast, we used the term differently: testing of interactions with external systems outside the control of our own code.

Or “regression testing”:

  • It might mean verifying software continues to perform correctly, again as per Wikipedia.
  • But at another job it meant tests that interacted with our external API.

Why is it so hard to have a consistent meaning for testing terms?

Testing as a magic formula

Imagine you’re a web developer trying to test a HTTP-based interaction with very simple underlying logic. Your thought process might go like this:

  1. “Unit testing is very important, I should unit test this code—that means I should test each function in isolation.”
  2. “But, oh, it’s quite difficult to test each function individually… I’d have to simulate a whole web framework! Not to mention the logic is either framework logic or pretty trivial, and I really want to be testing the external HTTP interaction.”
  3. “Oh, I know, I’ll just write a test that sends an HTTP request and make assertions about the HTTP response.”
  4. “Hooray! I have unit tested my application.”

You go off and share what you’ve learned—and then get scolded for not doing real unit testing, for failing to use the correct magic formula. “This is not unit testing! Where are your mocks? Why are you running a whole web server?”

The problem here is that the belief that one particular kind of testing is a magic formula for software quality. “Unit testing is the answer!” “The testing pyramid must be followed!”

When a particular formula proves not quite relevant to our particular project, our practical side kicks in and we tweak the formula until it actually does what we need. The terminology stays the same, however, even as the technique changes. But of course whether or not it’s Authentic Unit Testing™ is irrelevant: what really matters is whether it’s useful testing.

A better terminology

There is no universal criteria for code quality; it can only be judged in the context of a particular project’s goals. Rather than starting with your favorite testing technique, your starting point should be your goals. You can then use your goals to determine, and explain, what kind of testing you need.

For example, imagine you are trying to implement realistic looking ocean waves for a video game. What is the goal of your testing?

“My testing should ensure the waves look real.”

How would you do that? Not with automated tests. You’re going to have to look at the rendered graphics, and then ask some other humans to look at it. If you’re going to name this form of testing you might call it “looks-good-to-a-human testing.”

Or consider that simple web application discussed above. You can call that “external HTTP contract testing.”

It’s more cumbersome than “unit testing,” “end-to-end testing,” “automated testing”, or “acceptance testing"—but so much more informative. If you told a colleague about it they would know why you were testing, and they’d have a pretty good idea of how you were doing the testing.

Next time you’re thinking or talking about testing don’t talk about "unit testing” or “end-to-end testing.” Instead, talk about your goals: what the testing is validating or verifying. Eventually you might reach the point of talking about particular testing techniques. But if you start with your goals you are much more likely both to be understood and to reach for the appropriate tools for your task.



It’s Friday afternoon. You just can’t write another line of code—but you’re still stuck at the office...

What if every weekend could be a 3-day weekend?

10 Jun 17:57

Alaska Trip: Part 1

by Stephen Rees

We returned to Vancouver on Wednesday from a trip to see glaciers, railways and the history of The North. We flew up to Anchorage and then took the train to Denali, and from there went on to Fairbanks by bus. Air North flew us to Dawson City then it was back on the bus for Whitehorse and Skagway where we joined our ship, MV Volendam. We had expected to ride on the White Pass and Yukon railway, but a huge boulder on the tracks was blocking traffic, so we had to stay on the bus. The ship took us to Glacier Bay (also a National Park) and Ketchikan (quite the opposite), and then traversed the Inside Passage. That was also a bit of a nonevent, as the first section was overnight and the day was socked in by the weather.

I will be posting pictures to flickr, but I have learned that little attention is paid when a large quantity of images get posted there all at once. It is also necessary to do some editing, adding map tags and commentary. But this morning I was in my storage locker looking for the screen I used to use for slide shows. That was in the days when my pictures were transparencies on film, but they were rarely seen by more than a small audience. I thought a slideshow here might get some more attention

Since the way slideshows work on WordPress also requires some effort, and I am sure you will appreciate at least some indication of what you are looking at, I am going to try a series of short slide shows with a little text. Feedback is encouraged, if not a comment then at least a “like”. If this works for the first day or so, then I will post more.

Click to view slideshow.

Flying in to Anchorage one of the first things you see is the wind farm on an off shore island. Alaska has huge amounts of oil and coal, yet they are also under threat from rising seas and melting permafrost.

The stuffed moose is in the middle of the airport lobby – as is the float plane which is unique. 

The little locomotive was used in the building of the Panama Canal and subsequently on the construction of the Alaska Railroad. Both of these were US federal government initiatives, back in the day when this was about the only feasible way to achieve such results.

“People Mover” is a term of art in the transportation business and usually refers to rail based, driverless vehicles in airports and theme parks. I quite like the use of the term by the local transit agency: it does not just cover full sized buses but also vans and shuttles.

The large locomotive was built for the use of the US Army in the second world war and then worked on the Alaska Railroad for another ten years.

Click to view slideshow.

We arrived in Anchorage a day before the start of the land tour to give us more time to explore the town. This meant we were able to rent bikes for a couple of hours to ride the shore line trail which includes a very interesting area where we found the explanation of the very strange topography of the waterfront.

Click to view slideshow.

That evening we were staying in the Captain Cook, the best hotel in Anchorage, and far better accommodation than the Ramada. We had a room near the top floor with a view over the ocean. The hotel naturally features a portrait of the great explorer – and there is a lovely piece of public art between the hotel and the car park of the small fleet of ships he commanded on three round the world voyages

Our after dinner walk enabled me to get some shots of the Alaska Railroad – and we also visited the area where most of the townspeople were fishing for salmon. The next morning we joined the train – just two dome cars – with at seat service of drinks and snacks throughout the day and lunch served in the lower deck dining room. The views are spectacular – with glimpses of passing trains in the loops – and the ability to move around and a lower deck open viewing platform.

Part two will cover the Denali National Park and our Tundra Wilderness Tour.

10 Jun 17:57

Instapaper Liked: Vancouver Public Library's massive new rooftop garden to open in the fall

Yes, really // Vancouver Public Library's massive new rooftop garden to open in the fall | Daily Hive Vancouver https://t.co/aCQrSB2kf3 — Cecily Walker 🍔…
10 Jun 17:57

Recommended on Medium: The Burden of Being Bourdain

Bourdain is dead. I’m devastated.

There is no death closer to home for me. For some it was Robin Williams that left them gasping, but this is the one by which all others will measure.

If you’re new to me, I’ve been travelling the world alone for nearly three years now. 22 countries. I’m a journalist and writer by trade.

I find my life experiences through words, food, and places, like Bourdain. I feel injustices deeply and rage against the storm. I’ve spoken truth to power and shouted with futility into the wind.

All these things are evocative of the path Bourdain has blazed before me, and his death fucking rocks me to core. And I’m over 10,000 kilometres from nearly everyone I love and I feel so goddamned alone after this news.

Today, I acknowledge I’ve been suicidal before and there are no guarantees I won’t feel that way again one day. This is not that day.

Still. I just discovered this horrific news while walking along the Sava River in Belgrade, Serbia to reach a Latin gastropub in the sweltering sun. The first song playing here is some electronic dance number that keeps repeating the phrase “Keep yourself together. Keep yourself together.”

Fitting, that. I’m trying, song. I’m trying.

I woke this morning in a foul mood, and I shouldn’t have. Yesterday was a good news day. A free trip to Poland is coming my way: Great! I couldn’t fathom why I woke so foul. I woke and the world felt wrong to me.

It was one of those Things Don’t Feel Right mornings where the mood’s oppressive and non-explanatory. The heat is choking Belgrade today. Feels like 102 F, and I hate it. I do badly in this heat at the best of times.

But this news explains why I woke feeling like there was a disturbance in the Force.

Understanding What We Don’t Understand

I can’t understand what drove Bourdain to his death. I understand depression. I understand, too, the futility that must come from so long of travelling.

Jaded. Jaded as fuck, is what I can describe my worldview as, some days.

There are times when I feel like history tempers all things and despite every obstacle we face, humans rumble on. The world just keeps moving. We survive, we persist. The bastards die and new bastards are born. The heroes die and new heroes are born.

Then there are times when I rage against the world, angered that someone like Trump can be in power, that we can be so blind to hate and fear and injustice and corruption. I travel through places where corruption is as much a part of the fabric of life as the air we breathe, and people shrug in the face of it. I see poverty that makes me wonder how life is such a lottery of luck, and how that can be okay in the scheme of things.

I see enough to convince me that I don’t think there’s a god. Not in the benevolent way we dream, anyhow. Delusional is what I feel most faith today is. I think of the Cambodian man with arms blown off and no eyes, thanks to an American landmine, and I question that there’s a god. I see a child beggar bawling in hopelessness and I think there must be no god, because how could there be?

But some people seem like they’re the guard on the wall, the check to the power, the shouter in the storm, and Bourdain was that guy for me.

And it’s frustrating to me because I understand depression. I do. Deeply. So deeply.

I understand the futility of sanity and how it can slip away so goddamned fast. I understand that suicide and depression are often a chemistry question that can’t be solved.

I think about time a lot. A shop in Sarajevo, Bosnia, where I visited in May, 2017.

Eenie-Meenie Miney-Mo

Sometimes I wonder what the variant is. Is there a variant? Why him? Why not me? Is it just a matter of time? I have to believe there’s something in the cosmic mix that distinguishes us. Like, I’ve never done heroin or cocaine or any kind of hard drug. I never will. Bourdain has, and so have many of those who’ve killed themselves in the public circle of late.

Maybe drugs affect our mind more. Who knows. I remember a guy told me, when I was 21, that the secret to surviving drug use was to never take anything not grown by a Grateful Dead fan. I’m 45 in September and that has served me well, yet I cowered in the corner in August, 2006 as I called a therapist to say I feared I would kill myself that day, and I meant every word of it.

The thing about Bourdain that makes me think today is that he seemed to talk about so much, about everything, except about mental health. I’ve never really seen him talking about depression or anxiety — just misery and mood. There’s a big difference between being a curmudgeonly person and owning your depression. They’re arguably both caused by the same thing — mental health — but one involves ignoring the overall roots and implications. The other involves understanding that the mindset can sometimes be bigger than you are, a problem of chemistry, a defect of cells, a matter of interrupted neurons.

I’ve been there and understand Cambodia and Kissinger from Bourdain’s perspective. I guess that bothers me today, that I’ve been to more and more places where he’s walked the walk, and I hope we’re not going in the same cosmic direction.

Standing in the Picture

And that’s somewhere Bourdain and I have always differed. I think about the internal factor. I put myself in the picture and I think about how it all impacts me — how it will always impact me, especially in travel. I filter the world through my eyes, because what the fuck else have I got?

There’s a mentality growing in travel writing today about trying to erase colour lines and shunning the colonial perspective of the Great White Traveller, but I’m not going to go that way.

It’d be nice to pretend I can, but the reality is, I am white. I am fish-belly white. I’m so white, I make white look tan. I am the Great White Traveller.

Then there’s my Vancouver-Canada birth thing. I go into these countries from the perspective of someone who’s life has been shaped by one of the most peaceful countries in the world, born in a city with only 130 years of history. To pretend I’m anything other than white and privileged is ridiculous. To pretend I somehow have a collective, all-encompassing view on the places I’ve been, that’s moronic.

All I can offer the world is my experience, and I’m not going to apologize for it. But should people look for more than just my white perspective? Goddamned right. Celebrate writers for who they are, the variety they bring to the experiences. Read writers from other cultures too.

Did Bourdain do enough of that? Putting himself in the picture? Accepting that he could be relevant to the story too? Did he forget who he was in the process? Did his celebrity make him feel he had lost the ability to be vulnerable? Did we hold him up as the answer to injustice, to be the keeper at the gate, and was that pressure too great for him?

Bourdain in Trinidad.

There Ain’t No Saviors, No How

I’m thinking a lot right now of a woman I told off a few months ago. Bourdain had come up in conversation and she railed against him because he didn’t “do enough” about the situations he saw in the world.

Really? And how does one “do enough”? How does one shine the spotlight on all things while trying to fix them too? It’s impossible. Some of us are meant to hold the mirror, and others are meant to get in there and tinker. Bourdain was a mirror-holder. He did it so well. So many of us learned more about the world around us, and shattered our illusions, thanks to mirrors held by the likes of Bourdain.

I’m a mirror-holder. It’s hard work enough. I can’t tell you how much some of the shit I’ve seen while travelling weighs on me. A friend of mine did a whirlwind trip through troubled countries and now is in counselling because he feels he’s suffered PTSD from all the terrible things he’s learned about what’s possible for humans to do to others. “Man’s inhumanity against man,” and all that.

We can question morality forever and I don’t think we’ll ever understand the conflict of good and evil, or the way in which we reconcile the two existing in the same space.

My heart goes through the ground every time I see a child on the streets, begging. And I don’t mean just sitting there, asking for money — I mean the child who epitomizes, in a single glance, all the horrors that exist in humanity. Rage explodes within me when I know it’s someone exploiting that child and forcing them to be that way. Helplessness roars when I know it’s a no-win situation; I can’t contribute to them or I’m making exploitation pay. I can’t report them, because the system already knows, and the child just keeps falling through the cracks. I walk away. There’s nothing I can do. And I fucking hate myself every time, but that’s all a traveller can do, sometimes.

Yet someone like that woman can’t understand that the best someone like me or Bourdain can do is to keep pointing out how this situation hasn’t improved with modernity, it’s still there, it needs fixing.

And maybe, in the end, what got Bourdain is the futility of repeating the message. The fatigue of being demanded to do more, and the hopelessness of knowing he couldn’t. Perhaps it’s the uneasy burden of machismo and the inability to be vulnerable in a sea of scrutiny and hero-worship.

Talk, Talk, Talk

And so today I’m doing the only thing I know how to do to keep me from being in that situation:

I’m talking about it.

I’m flawed. Moods get the better of me. But I know how to fight them. I own them. I accept them. I don’t apologize for them. I speak to them. I blow off steam. I call out bullshit when I see it. I say fuck off to people who expect me to be more even-keeled or together. I let my vulnerabilities show — probably not as much as I should, but enough that they drown out the mental noise of anger and depression.

I understand that not all depression responds to these efforts. That’s the problem. Sometimes it’s not enough. And that’s why I know I need to do this when I’m cognizant of where I’m at, because there’s only so much I can do and for so long. One day, maybe I hit that point that Bourdain hit yesterday, and I hope if I do, this groundwork I’ve lain will help me rise against it.

So, today, I’ve talked about it. I’ve written about it. I’ve tried to understand why it’s devastating me that this moody fucking light I loved so much has been snuffed out in France. And maybe I don’t understand it a lot better, but I understand it a little better, and I’ve put a name to it and I’ve owned it and I’ve shared it.

Life will always be daunting and scary and lonely, especially for someone like me who’s travelling alone and challenging the night in so many unfamiliar, unsettling ways day after day after day.

But hopefully sharing my vulnerabilities and failings will keep me from ever feeling the kind of pressure someone like Bourdain does.

The trouble with travel is you start understanding the evils and cruelties that befall so many, and it’s hard to see a man, like this man I met in 2016 inSan Miguel de Allende, Mexico, where so many wealthy expats consider their playground, and not think there’s something incomprehensibly wrong about this world. Keeping that in check with the beauties of life can be a struggle for me. I find myself wondering how that was for Bourdain.

Fuck Your Hero Worship

You know, I don’t talk about things with my stalling writing career a lot. In some ways, I find my vulnerability is my saving grace, but it’s also my burden, because it makes people feel more entitled to my personal space and my mental real estate. (Newsflash, you’re not entitled to shit.)

I get flak from some people for not having released my ebook on my travels yet. I get flak from others for not trying to promote myself more because they think I should be more successful than I am.

But my past is weird. It’s a long story, but in 2005/2006, I had between 5,000 and 10,000 readers a day on my original blog. I remember the pressures that came with it. Becoming suicidal in 2006 put an end to that popularity and freed me from those pressures.

Still, I know what it’s like to get angry as fuck about injustice, like in the Jian Ghomeshi assault case in Canada, where 300,000 people turned to my words on my blog in three days, and then wrote to me about all matter of injustices they wanted me to speak about, like I was somehow the only person who could carry the cross and fight the fight.

I’m just a girl with words, man. That’s all it is. I got my words. You got words too. Use yours, don’t demand mine.

I’ve never wanted to be anyone’s hero, and yet I’ve had people say that’s what I am. What the fuck? I’m so imperfect, it’s crazy. Aim higher, people. The only heroes out there are the ones on the page of Marvel and DC Comics, man.

Everyone else is a mistake on legs.

But Bourdain was hero to so many. They expected so much of him, wrongly.

Maybe that’s why I keep treading water as a writer — because I like not having to be more than what I am.

But Bourdain lived with those pressures for the last 17 years. I can’t imagine that. I never want his life. There’s only so much any of us owes anyone else, and maybe Bourdain just stopped feeling like he had that in him to give.

Never forget that your heroes have flaws. They have weaknesses and stupidities and imperfections. You aren’t your ideal self every day, and you sure as hell have no right to demand it of them.

Celebrity today means living under a magnifying glass, being inescapably under scrutiny by people who couldn’t live under the same judgment for a week, let alone a year or a decade. The hypocrisy is legion, and yet the public demands perfection of its idols.

Someone like Bourdain, well… I’m just some blogger girl with barely an audience and I can’t tell you how often someone tells me off for disappointing them because I’m imperfect and normal. What the hell did he have to endure?

That was saw so much of Bourdain, in so many moods, in so many revealing times, is why we’re so broken and distraught by this news.

Accept Imperfection — Your‘s and Others’

Live your own life. Stop expecting your idols and celebrities to be the crutch that props you up through it all. Their humanity will surely have you falling down, because there’s no way that crutch doesn’t one day break.

I’m sorry that one of my perfectly imperfect heroes didn’t have it in him to get through the struggles of life, but I can’t say I’m unable to imagine why, either. I’m just sorry, is all.

I hope his pain is over. I hope his family finds a way to carry on. I hope you do too. I hope you speak your truths, however uncomfortable they are, because it helps.

But I hope you find a light in the darkness too. I know I often do, and expect I’ll continue to, because where there’s evil, there’s good. Where there’s pain, there’s often joy too. It’s a complicated life of contradictions, and sometimes I find the best thing for my mental health is to remember how chaotically contrasting life has always been and always will be.

But ultimately, I try to remember that it’s okay to be vulnerable — not just for me, but for my heroes too.

Stop expecting perfection from people. Stop expecting them to somehow have it more together than you do. Nobody does. We’re all fucked up. We’re all trying to navigate a life that’s often hard and unthinkably cruel. Understanding that is what can get us through it together.

Talk about it. End the stigma.

I’m fucked up. I bet you are too. And that’s okay. Just own it.

(If this resonated for you, please “clap” for it so it gets a wider audience. Stigma’s easier fought with a megaphone. Thanks.)


The Burden of Being Bourdain was originally published in Noteworthy - The Journal Blog on Medium, where people are continuing the conversation by highlighting and responding to this story.

10 Jun 17:56

Twitter Favorites: [bmann] This is interesting. More interesting if @decentraland and other times use an RSS feed or JSON API and let all cli… https://t.co/gXAMWwgemJ

Boris Mann @bmann
This is interesting. More interesting if @decentraland and other times use an RSS feed or JSON API and let all cli… twitter.com/i/web/status/1…
10 Jun 17:56

Twitter Favorites: [nep] When Susie left me, my friend Steve flew in and stayed with me a few days and also helped me to adjust things. Take… https://t.co/Yn7LmhLZrm

Travis Smith @nep
When Susie left me, my friend Steve flew in and stayed with me a few days and also helped me to adjust things. Take… twitter.com/i/web/status/1…
10 Jun 17:56

A bit of biking in Tokyo

by jnyyz

During a quick trip to Tokyo, I took advantage the one day where the forecast didn’t have rain to do a little biking with my brother’s family. They live in an older section of Tokyo east of downtown between the Sumida and Arakawa Rivers. This section is criss crossed with small canals, and there are some nice multiuse pathways along some of them.

My niece has a nice new minivelo branded as Bianchi with very sweet details. However, I don’t think the fabric seat and grips are going to stay clean for very long.

DSC02671

These sharrows go in both directions even though this street is one way in the facing direction for car traffic.

DSC02676

Here we are on an east west section of a multiuse path that goes within about 1 km of the Arakawa River. What is great about this section is that almost all the intersections with streets use underpasses.

DSC02678

There are many clever features built in to slow down bike traffic to make things safe for all users. Here are some very closely spaced bollards.

DSC02677

Many chicanes as well.

DSC02689

Cyclists of all ages were out today.

DSC02687

Here is a map of this particular greenway system.

DSC02686

Reaching the Arakawa River, there are ramps over the flanking levees for bike access.

DSC02679

Here at the top of the levee.

DSC02680

At this point I ran into two bike enthusiasts with a Brompton and a Tikit.

DSC02682

Here we go along the river. Nice wide open spaces for everyone.

DSC02684

My brother took this picture of me taking pictures.

IMG_0738

On the way home, I met one more bike guy who was riding a nice Birdy. He also was wearing a folding helmet. He had just gone to a shop to buy some upgrades for his Birdy; notably some drop bars.

DSC02694

It being a Saturday, the pace of car traffic was slower, and many people were out and about. Tokyo is a pretty civilized place to bike on weekends.

 

 

10 Jun 17:56

Nudgestock 2018 notes and links

Thanks for coming to my Nudgestock 2018 talk. First, as promised, some links to the signaling literature. I don't know of a full bibliography for this material, and a lot of it appears to be paywalled. A good way to get into it is to start with this widely cited paper by Phillip Nelson: Advertising as Information | Journal of Political Economy: Vol 82, No 4 and work forward.

Gardete and Bart "We find that when the sender’s motives are transparent to the receiver, communication can only be influential if the sender is not well informed about the receiver’s preferences. The sender prefers an interior level of information quality, while the receiver prefers complete privacy unless disclosure is necessary to induce communication." Tailored Cheap Talk | Stanford Graduate School of Business The Gardete and Bart paper makes sense if you ever read Computer Shopper for the ads. You want to get an idea of each manufacturer's support for each hardware standard, so that you can buy parts today that will keep their value in the parts market of the near future. You don't want an ad that targets you based on what you already have.

Kihlstrom and Riordan "A great deal of advertising appears to convey no direct credible information about product qualities. Nevertheless such advertising may indirectly signal quality if there exist market mechanisms that produce a positive relationship between product quality and advertising expenditures." Advertising as a Signal

Ambler and Hollier "High perceived advertising expense enhances an advertisement's persuasiveness significantly, but largely indirectly, by strengthening perceptions of brand quality." The Waste in Advertising Is the Part That Works | the Journal of Advertising Research

Davis, Kay, and Star "It is not so much the claims made by advertisers that are helpful but the fact that they are willing to spend extravagant amounts of money." Is advertising rational- Business Strategy Review - Wiley Online Library

New research on the effect of ad blocking on user engagement. No paywall. Ben Miroglio, David Zeber, Jofish Kaye, and Rebecca Weiss. 2018. The Effect of Ad Blocking on User Engagement with the Web. In WWW 2018: The 2018 Web Conference, April 23–27, 2018, Lyon, France. ACM, New York, NY, USA, 9 pages. https://doi.org/10.1145/3178876.3186162 (PDF)

Here's that simulation of unicellular advertisers that I showed on screen, and more on the norms enforcer situation, which IHMO is different from pure signaling.

For those of you who are verified on Twitter, so haven't seen what I'm talking about with the deceptive ads there, I have started collecting some: dmarti/deceptive-ads

I mentioned the alignment of interest between high-reputation brands and high-reputation publishers. More on the publisher side is in a series of guest posts for Digital Content Next, which represents large media companies that stand to benefit from reputation-based advertising: Don Marti, Author at Digital Content Next Also more from the publisher point of view in Notes and links from my talk at the Reynolds Journalism Institute.

If you're interested in the post-creepy advertising movement, here are some people to follow on Twitter.

What's next? The web advertising mess isn't a snarled-up mess of collective action problems. It's a complex set of problems that interact in a way that creates some big opportunities for the right projects. Work together to fix web ads? Let's not.

10 Jun 17:55

The Google H1 Fritz Chip.

by Stanislav

Edit: Step-by-step replication instructions for the skeptical experimenter.
This article is a review of what I have been able to discover regarding the Google H1, aka Cr50, aka the “G Chip”, found in all Chromebooks of recent manufacture, including the Asus C101PA, my current candidate for a full delousing attempt.

To my knowledge, there has been no detailed public discussion of this NSA-imposed atrocity anywhere on the Net, aside from The Logs. This article is intended as a reference point for the aficionado, the casual explorer of pseudo-”open” hardware, and the merely curious. The Chromebooks are probably the closest thing to be had on the current market to an inexpensive, portable, and “cleanable” computer with reasonable performance.

However, the Cr50 — a recent addition to the product line — is explicitly designed to get in the way of a full “liberation”. It is an item quite similar, in purpose and scope, to Intel’s “glued on with broken glass, For Your Own Good!” on-die “ME” boobytrap.

Yet, unlike Intel, Google — in its fetishistic pseudo-openness — appears to have published at least a portion of the source for the device’s firmware, making it a somewhat more promising target for attack and demolition than Intel’s equivalent CPU-integrated turd. But we will dig deeper into this, further below. First, let’s review the “big picture”:

The Cr50 device is a classic “Fritz chip” — i.e. a hardware “policeman”, built into a computing device (typically, though not always, a consumer product), so as to specifically and deliberately act against the purchaser’s interests, by subverting the Laws of Sane Computing in these three ways:

  1. Prevention of the full control of the machine by its physical owner, typically by inhibiting attempts to install modified firmware. This practice is also known as “Tivoization”, and is often justified to the gullible under the banner of “security”.
  2. Enablement of one or more types of “NOBUS” back door (Official NSA terminology! “No One But US“, a kind of NATO Reich “Gott Mit Uns” motto.) In practice this means that the folks with the magic keys, can trivially circumvent any and all protection mechanisms on the box, locally and often remotely; while the uninitiated — including the person who bought and paid for the hardware — typically remain unaware of the backdoor’s very existence.) A Fritzed machine serves its true master — USG — first, and only secondarily serves the hapless purchaser.
  3. Last but not least: prevention of a clueful hardware owner’s attempts to “jailbreak” — to disable, remove, or circumvent the Fritz chip itself. Often there is an attempt to conceal the very existence of the mechanism. (Google is peculiar in that it is fond of deliberately, if subtly, taunting the purchaser of its pseudo-open devices with the existence of its Fritz chip.) Perpetrators will often deliberately litter the Net with disinformation regarding the nature and purpose of the Fritz chip, in an effort to discourage circumvention and spur on sales; the chumps will “buy their own cross” while there is still a semblance of choice on the market; afterwards, the choice evaporates, and only Fritz-laden products remain available. The latter process has already run its course in the x86 PC world; and is verging on completion in the low-power ARM portable market.

So, back to the Cr50: this device appears to be present in all of the currently-produced Chromebooks, and is — per the vendor’s published source — able to rewrite all firmware, under the control of an external debug snake, or other, yet-undiscovered triggers; start and stop the CPU; master the I2C bus, on which, among other things, are to be found the sound card’s microphone; upgrade its own firmware; and other interesting things that may or may not align with the machine owner’s wishes at a particular moment. Possible usage scenarios include, but are not limited to, enablement of “lol enforcement” surreptitious searches and buggings of “borrowed” machines (and this is merely one obvious scenario.)


b0

In re “glue with broken glass”, the machine owner cannot simply remove or cut the traces to the Cr50: it has been placed in control of power supply bringup; the valuable debug interface; and other essentials.

But it is the upgrade process in particular that interests me, as it is the locked gate to potentially neutering the boobytrap. But can the end user rewrite the Cr50 firmware?

Let’s begin with the disinfo! A Google employee informed me that “nobody has the cr50 key”. Is this actually true?

How about No?

From the horse’s mouth:


static const uint32_t LOADERKEY_A[RSA_NUM_WORDS + 1] = {
0xea54076f, 0xe986c871, 0x8cffffb4, 0xd7c50bda, 0x30700ee0, 0xc023a878,
0x30e7fdf8, 0x5bb0c06f, 0x1d25d80f, 0x18e181f7, 0xfbf7a8b0, 0x331c16d4,
0xeb042379, 0x4cef13ec, 0x5b2072e7, 0xc807b01d, 0x443fb117, 0xd2e04e5b,
0xcb984393, 0x85d90d9d, 0x0332dcb8, 0xd42ccacf, 0x787e3947, 0x1975095c,
0x2d523b0b, 0xf815be95, 0x00db9a2c, 0x6c08442b, 0x57a022bb, 0x9d5c84ed,
0x46a6d275, 0x4392dcf8, 0xfa6812e3, 0xe0f3a3e6, 0xc8ff3f61, 0xd518dbac,
0xbba7376a, 0x767a219a, 0x9d153119, 0x980b16f8, 0x79eb5078, 0xb869924d,
0x2e392cc2, 0x76c04f32, 0xe35ea788, 0xcb67fa62, 0x30efec79, 0x36f04ae0,
0x2212a5fc, 0x51c41de8, 0x2b0b84db, 0x6803ca1c, 0x39a248fd, 0xa0c31ee2,
0xb1ca22b6, 0x16e54056, 0x086f6591, 0x3825208d, 0x079c157b, 0xe51c15a6,
0x0dd1c66f, 0x8267b8ae, 0xf06b4f85, 0xc68b27ab, 0x31bcd5fc, 0x34d563b7,
0xc4d2212e, 0x1e770199, 0xaf797061, 0x824d4853, 0x526e18cd, 0x4bb8a0dc,
0xeb9377fe, 0x04fda73c, 0x2933f8a6, 0xe16c0432, 0x40ea1bd5, 0x9efcd77e,
0x92be9e55, 0x003c1128, 0x48442cf9, 0x80b4fb31, 0xfe1e3df3, 0x1d28e14d,
0xe99c0f9d, 0x521d38c2, 0x0082c4f1, 0xcff25d56, 0x0d3e7186, 0xe72b98f0,
0xefaa5689, 0x74051ed5, 0x6b7e7fff, 0x822b1944, 0x77a94732, 0x8d0b9aaf,
0x7a8ee958
};

const uint32_t LOADERKEY_B[RSA_NUM_WORDS + 1] = {
0xeea8b39f, 0xdfa457a1, 0x8b81fdc3, 0xb0204c84, 0x297b9db2, 0xaa70318d,
0x8cd41a68, 0x4aa0f9bb, 0xf63f9d69, 0xf0fe64b0, 0x96e42e2d, 0x5e494b1d,
0x066cefd0, 0xde949c16, 0xc92499ed, 0x92229990, 0x48ac3b1a, 0x1dfc2388,
0xda71d258, 0x826ddedf, 0xd0220e70, 0x6140dedf, 0x92bcdec7, 0xcdf91c22,
0xaa110aed, 0xc371c2f9, 0xa3fedf2a, 0xfd2c6a07, 0xe71aabce, 0x7f426484,
0x0ac51128, 0x4bab4ca2, 0x0162d0b9, 0x49fef7e3, 0xeda8664e, 0x14b92b7a,
0x0397dbb7, 0x5b9eb94a, 0x069b5059, 0x3851f46b, 0x45bbcaba, 0x0b812652,
0x7cd8b10b, 0xcaeccc32, 0x0ffd08e3, 0xfe6f0306, 0x8c02d5f7, 0xafdc4595,
0xe0edda47, 0x0cc821db, 0x50beeae5, 0xb9868c18, 0xefd2de11, 0xdfecd15c,
0xa8937a70, 0x223d9d95, 0x1b70848b, 0x54fa9176, 0x8bf012ef, 0xd37c1446,
0xf9a7ebeb, 0xbf2dfa9a, 0xdc6b8ea0, 0xe5f8bc4d, 0x539222b5, 0x192521e4,
0xe7088628, 0x2646bb56, 0x6fcc5d70, 0x3f1cd8e9, 0xae9cec24, 0xf53b6559,
0x6f091891, 0x5342fa61, 0xbfee50e9, 0x211ad58a, 0xd1c5aa17, 0x252dfa56,
0x17131164, 0x4630a459, 0x2f681f51, 0x3fb9ab3c, 0x6c8e0a70, 0xa34a868b,
0xe960e702, 0xa470d241, 0x00647369, 0xa4c25391, 0xd1926cf9, 0x5fce5488,
0xd171cb2e, 0x8a7c982e, 0xc89cbe39, 0xc0e019d8, 0x82cd1ebe, 0x68918fce,
0x5ec138fd
};

Anyone with the private factors to either RSA modulus, can reflash the Cr50 firmware trivially, via the debug cable. The vendor’s flash update utility accepts any candidate update that passes the board revision and version increment check; however, the update will be written to a temporary buffer, and RSA-signature-tested prior to being copied into the “read only” (i.e. active) partition of the flash. Got the key? reflash to your heart’s delight. No key? no update. Just like in other “Tivos”, e.g., the Apple iPhone, but in this case with an extra helping of Open Sores artificial flavouring!

But this is not even the only backdoor: there are at least two. The second one known to me thus far is the “RMA unlocker”. Anyone with access to a certain elliptic key can reset the Cr50 into a manufacturing test mode, and do whatever he likes.

Google even seems to offer an accidentally-”public” API for requesting this type of reset. Let’s try it and see what happens:


$ python cr50_rma_open.py -g -i "BOB E25-A6A-A7I-E9Q-A4R"
Running cr50_rma_open version 2
SERIALNAME: 02034029-90EBD060
DEVID: 0x02034029 0x90ebd060
testing /dev/ttyUSB0
sysinfo
Reset flags: 0x00000800 (hard)
Reset count: 0
Chip: g cr50 B2-C
RO keyid: 0xaa66150f(prod)
RW keyid: 0xde88588d(prod)
DEV_ID: 0x02034029 0x90ebd060
Rollback: 2/2/2

found device /dev/ttyUSB0
DEVICE: /dev/ttyUSB0
RMA support added in: 0.3.3
Running Cr50 Version: 0.3.4
RLZ: ASUO
Cr50 setup ok
ccd: Restricted
wp: enabled
rma_auth output:
rma_auth

ABXFG CMDAD UJFPQ 7J8MQ
UUSTG XGTRT VJ6Z5 48PWC
8AGMG T2QJ4 BT3TW 4HJVU
4XLPA SB4GE 78RSB KYEHC
RLZ: ASUO
CHALLENGE: ABXFGCMDADUJFPQ7J8MQUUSTGXGTRTVJ6Z548PWC8AGMGT2QJ4BT3TW4HJVU4XLPASB4GE78RSBKYEHC
HWID:BOB E25-A6A-A7I-E9Q-A4R
GOTO:
https://www.google.com/chromeos/partner/console/cr50reset?challenge=ABXFGCMDADUJFPQ7J8MQUUSTGXGTRTVJ6Z548PWC8AGMGT2QJ4BT3TW4HJVU4XLPASB4GE78RSBKYEHC&hwid=BOB
E25-A6A-A7I-E9Q-A4R
If the server fails to debug the challenge make sure the RLZ is
whitelisted

Sadly, the result of loading this URL was… a GMail login prompt. So I log in with a GMail account, and get:

Failed to start authentication.

Quod licet Iovi, non licet bovi! or what exactly did you expect?

And so, dear reader, if you know how to disable this landmine — or are merely interested in advancing the state of the art in vermin removal — join us on #trilema! (Ask one of the speaking folks, for voice.)

To be continued.

10 Jun 17:55

Self-care while doing fieldwork: A first-person, first-hand account

by Raul Pacheco-Vega

Fieldwork  June 8 2018I just returned to Aguascalientes (literally, I walked through my house’s door less than 10 minutes ago) from a gruelling, one-day field trip. A good friend of mine from the Universidad Autonoma Metropolitana Xochimilco (UAM-X) had invited me to join her, one of her PhD students, and two other professors on a trip to three small municipalities in northern Zacatecas. We are all interested in doing work with communities affected by mining activities, from various perspectives. Having had a fantastic experience undertaking fieldwork with Dr. Jaime Hoogesteger from Wageningen Universitaet last fall in San Miguel Allende, I’ve always felt that going on the field alongside fellow faculty from other universities allows me to see things and have questions answered that I probably wouldn’t have thought about otherwise.

I jumped at the possibility, and thus I travelled to the city of Zacatecas on Thursday night to prepare for the one-day trip. I have to recognize that I was not prepared for what I saw, and the conversations I had, and the things I heard. I study marginalized individuals, vulnerable communities and the challenges that people who have no access to water, sanitation or energy face. Nevertheless, over the years and throughout my career, I had not entered a mine-centred community like the ones I visited yesterday and was not ready to see the complexities of a strange relationship between mining towns and the multinational corporations that allege being good corporate citizens but whose activities are highly polluting.

I took courses in acid mine drainage and “Mining and the Environment” when I did my graduate coursework at The University of British Columbia. I am a chemical engineer who did his undergraduate degree in what used to be a colonial mining town and is now a world heritage city. My Mom did her Masters’ degree studying the politics surrounding the Canadian mining industry. I understand all the chemical processes necessary to extract minerals from ores. I know how to assess the negative environmental and human health impacts that mining can have on individuals and communities. Not my field of specialization, but I know a lot about it.

And yet, despite all my expertise, I felt deeply unprepared for the eventualities associated with doing this fieldwork. I arrived late to my hotel in Zacatecas, after having dinner with one of my PhD students. We HAD to meet up as I wanted to hear how she was doing. Then, after dinner, I worked on a Revise-And-Resubmit and went to bed at 12:30am. As anybody who reads my blog or follows me on Twitter will know, my sleep time is usually 9pm. I woke up normally at 4:30am. I went to do fieldwork on four hours of sleep. Not by choice, by circumstances and happenstance.

As I said on Twitter, I can’t reconcile the fact that we keep pushing faculty to do more, to write more, to publish more, to engage with the public more, to mentor more students, more, more, MORE, with the reality that we are human beings.

As Dr. John Ronquillo (University of Denver) said on Twitter:

Even though I have a lot of training in research methods, ethnography, fieldwork, and I had already read Dr. Kimberly Theidon’s paper on doing fieldwork in conflict-afflicted zones, this particular field trip took me by surprise, and was a punch in the gut.

It was also a humbling experience and a lesson for me. I’m an experienced fieldworker and ethnographer, and witnessing marginalized and impoverished people’s pain deeply affects me. But that’s the kind of research I love doing and I’m committed to continue doing it.

I’m not sure I’m the best person to provide suggestions on the best self-care strategies while doing challenging fieldwork but debriefing, taking time away from research and having a personal life have helped me cope with this work. And writing this blog post really helped me center exactly what I was concerned about: real attention to issues of mental health in academia needs to include an honest conversation around necessary changes to the way in which academia works.

We need a more human and humane academia. I’m done hoping for it. I demand it.

10 Jun 17:53

Google Pixel 3 series could feature wireless charging

by Dean Daley

Android P’s Beta 2 points towards the wireless charging functionality making its way to the Google Pixel 3 series.

With the update came code for a new class of smartphone under a “Connected Devices” settings, specifically for wireless charging docks.

Further, coding suggests Google is working on its on wireless charging dock, according to the folks at XDA DevelopersXDA continues and points out that Google is testing the product internally. Within the coding there’s also information that suggests that Google can be working with multiple partners to create docks.

Google may also accompany its wireless chargers with an app. The app, currently named ‘dreamliner’ was referenced within the ‘AndroidManifest’ files as well as the SettingsGoogle APK.

It wouldn’t be the first time a Google device featured wireless charging. The Nexus 4, Nexus 5 and the Nexus 6 all featured wireless charging.

However, as of right now it’s currently unclear if there will be a Google-made wireless charging dock or if the Google Pixel 3 will feature wireless charging.

Source: XDA Developers

The post Google Pixel 3 series could feature wireless charging appeared first on MobileSyrup.

10 Jun 17:53

Freedom Mobile completes Band 4 spectrum rollout, updates network coverage map

by Sameer Chhabra
Freedom Mobile

Canadian regional carrier Freedom Mobile has completed its Band 4 spectrum rollout, and has updated its network coverage map to reflect changes made in Alberta and Ontario.

MobileSyrup was made aware of changes to the carrier’s coverage map thanks to a June 8th, 2018 post in the Freedom Mobile subreddit by Redditor dojo_mojo88.

A Freedom Mobile spokesperson later confirmed to MobileSyrup via email that the network map was updated on June 7th.

The spokesperson stated that the changes reflect “the completion of our Band 4 spectrum roll-out, the addition of new sites in the outskirts of urban areas and equipment upgrades that have enhanced overall network performance.”

Freedom Mobile first launched its LTE network in 2016. However, only devices that were compatible with Band 66 LTE were initially supported by Freedom.

Since then, the carrier has worked on expanding the number of devices support by its network, and has also purchased spectrum licences from other carriers — including Quebec-based Quebecor — in order to roll out 700MHz (Band 13) and 2,500MHz (Band 7) spectrum to its customers.

A Redditor discovered in March 2018 that Freedom Mobile had begun to test Band 13 spectrum in select markets — including Vancouver, British Columbia.

Source: Reddit

The post Freedom Mobile completes Band 4 spectrum rollout, updates network coverage map appeared first on MobileSyrup.

10 Jun 17:53

Apple adds new ‘Today at Apple’ prototyping session for developers

by Jonathan Lamont
Apple Park

Apple’s ‘Today at Apple‘ educational program is getting a new prototyping session to help developers.

The sessions will start later this month. While there’s no mention of the sessions on webpage yet, it will likely fall under the ‘Signature Programs’ category. The category also features Sketch Walks, Photo Walks and Music Lab sessions.

Angela Ahrendts, Apple’s vice president of retail announced the new session via Twitter. The session focusses on helping developers get started with prototyping. Ahrendts calls it “one of the most important steps of the design process.” The session is based off of a talk from Apple’s 2018 WWDC.

Today at Apple offers a number of developer-oriented sessions. The program has Swift coding sessions as well, and has added a number of sessions since it started a little over a year ago.

Along with the coding sessions, Today at Apple offers Studio Hours. The program offers people advice from experts on their creative projects.

Additionally, Today at Apple offers Kids Hour with sessions about creating music and movies. Furthermore, some of the Kids Hour sessions cross over with entry-level coding, allowing kids to program Sphero robots.

It’s awesome to see Apple working developer content into the sessions. That kind of support for the people who make the iPhone great with apps and services is really good. Not to mention it encourages young people to engage in software and development.

Hopefully we’ll see more of these developer sessions from Apple retail stores as the program continues to mature.

Source: 9to5Apple

The post Apple adds new ‘Today at Apple’ prototyping session for developers appeared first on MobileSyrup.

09 Jun 02:31

PixelBook’s power button now works as a two-factor authentication key

by Patrick O'Rourke
Pixelbook

I may be in the minority when it comes to my fond feelings for Google’s Pixelbook, but I really like the Chrome OS-powered laptop — and now, it looks like a new feature is headed to the device.

Two-factor authentication is becoming increasingly popular, whether the security comes in the form of a U2F USB key or a one-time use code setup through an app like Google’s Authenticator. As first reported by 9to5Google, it looks like it’s now possible to use the Pixelbook’s power button to mimic a USB key’s two-factor authentication functionality. The feature was first discussed in a Medium post by Lukas Karlsson.

This means users now have the option to turn the PixelBook’s power button into a two-factor authentication key (U2F) if they’re willing to take a few extra steps and set up Chrome OS’ Developer Channel.

First, download the latest version of Google Chrome and opt into Chrome OS’ Developer Channel — which is a somewhat complicated process outlined here by 9to5Google. Nextenter u2f_flags g2f into a Chrome shell by pressing Ctrl + Alt + T simultaneously. After that step has been completed the U2F feature is now enabled.

9to5Google says that this feature should in theory work with other Chromebooks as well as the Pixelbook, but in the publication’s tests that doesn’t seem to be the case.

It’s likely that at some point in the future the Pixelbook’s two-factor authentifaction feature will get a more wide release.

Source: 9to5Google, Medium (Lukas Karlsson) Via: Android Central

The post PixelBook’s power button now works as a two-factor authentication key appeared first on MobileSyrup.

09 Jun 01:58

Urbanist Abroad: Day 4 – Hong Kong

by colinmstein

Hong Kong’s public transit system is like the island territory’s central nervous system — essential to everything — and yet there’s also a dark side.

What’s the link between transportation and new housing development, and to what degree is the local transit authority actually part of the problem? Price Tags editor-in-chief Gordon Price captures some of the drama.

Instagram Photo

Instagram Photo

Instagram Photo

Instagram Photo

Instagram Photo

09 Jun 01:58

Google Keep adds indenting to checklists

by Igor Bonifacic
Google Keep

In a long overdue change, Google has finally added the ability to for Google Keep users to indent checklists in its popular note taking app.

The update is rolling out now on iOS, Android and the web.

To indent an item, simply swipe it toward the right side of the screen. Conversely, to move it back, swipe the item toward the left side of the screen. It’s currently only possible to indent items one level.

Grab Google Keep from the iOS App Store and Google Play Store.

Via: Android Police

The post Google Keep adds indenting to checklists appeared first on MobileSyrup.

09 Jun 01:58

Active Edge might return to the Google Pixel 3 series

by Dean Daley
Pixel 2 XL

One of my favourite Google Pixel 2 series features is Active Edge and now it looks like the functionality may return with the Pixel 3 series.

Active Edge allows users to squeeze the sides of their handset to launch Google Assistant.

This report comes courtesy of the folks at XDA Developers and XDA senior member meraz9000, who revealed images of the Google Pixel 3 XL earlier this week. Meraz9000 claims that he squeezed the phone and it vibrated, indicating the presence of Active Edge.

XDA took it one step further by diving within the SystemUIGoogle APK and noticed modified coding. Within the ‘WakeMode’ class of code is reference to ‘Elmyra’ — the codename for Active Edge, according to XDA.

Further digging suggests that users will be able to wake the Google Pixel 3 by squeezing the device’s frame.

While Google can get rid of the squeeze function on its upcoming device at any moment, it’s definitely a feature I’d welcome back to the Pixel series.

Source: XDA Developers

The post Active Edge might return to the Google Pixel 3 series appeared first on MobileSyrup.

09 Jun 01:58

Worker-co-operative succession.

by William

After meeting with CoopFund, where in addition to understanding their model we learned of their support for Worker Buy Outs, we met with Arbizzi Cooperative Society. This is a packaging company whose founding owner sold the company to his employees who mutualized this small business and run it as a worker co-operative.

Visiting Arbizzi Co-operative Society in Emilia-Romagna.

They spoke of their challenges in shifting their mindset from employees working 9-5 to worker-owners who run the company and make key decisions together. It took quite a bit of effort from the owner, the staff and their financial partners to make it all happen, but the results are extraordinary.

In Emilia-Romagna, similar to BC, most people are employed by small businesses. We are expecting a Silver Tsunami, a wave of retiring age small business owners who either started their business, or who took it over from their parents. In many cases the children of these owners don’t want to run the business. They are seeking a transition, selling the company to keep their life’s work intact.

In places like Vermont (go Matt!), we see success of worker co-op succession of small businesses. In these businesses, the people who tend to know the current state, operations, challenges and opportunities best are the staff. They are in a unique position to run it together and share in profits from their labour. Business successIon like this serves many purposes: it fits what many young people want from workplaces today, it creates greater entrepreneurialism, it serves to mutualize part of the economy for future generations, and it spreads wealth and profits more equitably amongst staff.

This has been a big focus for CoopFund, who have done 60 Worker Buy Outs since 2008, and most of those since 2012. Most of these companies have 15-20 employees. If you do the math, admittedly, that’s only 1,200 people who have been impacted since 2008, which doesn’t sound like much. But when we think of that kind of impact, there are a lot of downstream benefits that need to be considered, like the suppliers who don’t lose a contract causing them financial hardship, the purchasing power of all those new worker-co-operatives to purchase for their needs, and the families who don’t suffer from loss of employment.

I think this is a great opportunity, directly relevant to BC, as we face a similar societal pressure. We just need some intrepid business owner looking towards retirement to give it a shot to see how it can work and then promote the model  to others to try and replicate it.

09 Jun 01:58

Headless at VCU’s ALT Lab

by Reverend

VCU ALT Lab R&D4EDU

Tim and I had the good fortune to be able to head down to Richmond on Wednesday to catch up with the Research & Development group of VCU’s ALT Lab. We basically sat in awe for over two hours while Tom Woodward and Matt  Roberts (unfortunately the third pillar of this amazing triumvirate, Jeff Everhart, was unavailable) took us through the seemingly endless parade of awesome projects this team has been cranking out for the last year or so. The trip was wild because it struck me that this is what folks must have felt when they visited UMW’s DTLT in 2011 or 2012 when we were in full blown ds106/domains discovery mode—there’s an energy that drives a shared sense of mission and purpose that is so very hard to find (no less sustain) when in comes to any working group—-and this one has it in spades right now. I left there inspired and re-energized. 

R&D4Woodward

I was happy to see my good friend and long-time colleague/collaborator Tom Woodward rise from the ashes of ALT Lab’s re-organization a few years back. Much digital ink has been spilt about thought leaders and their ilk, but nothing can replace a group that finds their rhythm and puts in the work. There is no substitute for that simple formula, and when it happens it’s special and needs to celebrated. So, this is my paean to VCU’s R&4EDU group—and I think I have embarrassed them enough, and I can almost make out Tom muttering “Ayyyy kinda half-way sorta know what I’m doing…” all the way up here in Fredericksburg 🙂

So, let me get specific. I was nothing short of blown away but what they have been able to do with WordPress from afar, and a scan of Tom’s blog posts documents that work quite well. But going there reinforced for me that what VCU has on their hands (whether they know it or not is another thing) is one hell of a web dev group for edtech. Let me give you an example of what I am talking about, which may also help disambiguate my post title. The site they built for VCU’s Digital Sociology program beautifully demonstrates what headless web development means. Let me try and explain, although I think Tim’s recent post on the trip down does a better job illustrating how this group is really walking the walk of intelligent, future forward web development. 

So, what is headless web development? Basically it decouples the forward facing website presentation from where folks author and store data (i.e. the content management system (CMS) and database). So, in the case of the Digital Sociology program site, that content is authored through their WordPress site on Rampages, but that is not where the content is shown. On a different server there are HTML/CSS files that are regularly using the WordPress API to poll the Digital Sociology site on Rampages. What does this mean?  Well, the site is a straight-up HTML that use javascript to call the database using the WordPress API. What’s nice is that should the WordPress site go down for any reason, a cached version of the HTML site would be unaffected. What’s more, you could store a synced JSON file with all the database content on a server that would stand-in almost like a failover switch.

I really appreciated this overview because it has helped me wrap my head around what headless web development means through a tool I know and love (i.e. WordPress) which is part of what made it comprehensible for me. What’s more, it goes a long way towards explaining things like WordPress’s Calypso. The idea of using the WordPress API to republish data in various locations seamlessly suggests some of the possibilities for aggregating and syndicating data many of us have been relying on RSS to accomplish for many a year. And while there has been a lot of talk about these possibilities with APIs, this is one of the first examples I’ve seen where the idea really clicked. So, all this to say kudos to the Research & Development for EDU group at VCU’s ALT Lab, the force is strong with you all. And there is much more to say about there work, but let me stop here lest this post never see the light of day.

09 Jun 01:57

The Case for Carsharing: The Numbers All Go to 11

by colinmstein

Vancouver’s home-grown carsharing cooperative, Modo, issued a press release this past week with the results of a multi-city member survey that spoke to the overriding reasons for the move away from car ownership — cost.

Of the 3,500+ respondents, 42% said the cost savings is why they prefer to use the 2-way service, just edging out convenience (39%).

But what about carsharing’s other role, beyond getting us from A-to-B cheaply? As in actually removing cars off the road — that’s where it’s at, and we found that while it’s not high on the list of influencing factors for Modo members, it’s a reportable outcome.

Almost half of respondents (47%) disclosed that their carsharing membership allowed them either to get rid of a car, or avoid purchase in the first place. And of course, within that, the cost factor comes up again; 63% of the “car-shedders” did so because of cost.

But Modo’s head of PR Selena McLachlan made one other thing very clear in a follow-up convo to this release — the gain to society from carsharing is exponential when measured in environmental impact, and has the potential to drive population-level effects over the long term.

This is hardly appreciated, or even understood. But the information is out there, waiting to be considered alongside, or maybe in place of, the financials.

As shown in a 2016 study by University of Berkeley professor Susan Shaheen and co-author Elliott Martin — focused on car2go, and now well-known and much-cited in transportation circles — a single, well-utilized carshare vehicle removes as many as 11 personal vehicles from city streets.

Not just any city streets, either; Vancouver is one of the cities Shaheen and Martin studied. And building on this stream is the work of UBC graduate Dr. Michiko Namazu (now a research scientist at Uber). Her 2017 thesis, focused in part on resource management, specifically cites Vancouver as having the most carshare vehicles per capita than anywhere else in the world (39 per 10,000 people), includes a remarkable statistic: “80% of people who join Modo sold or donated their cars.”

No wonder she suggests, “Vancouver is one of the most advanced [carsharing] cities in the world, and can serve as a model for its implementation.”

Personal transportation sits just behind commercial goods movement and heavy industry as a significant contributor to greenhouse gas emissions in British Columbia. A more significant, collective shift to carsharing could similarly have an exponential impact on GHG emissions.

Further, Metro Vancouver accounts for almost 60% of BC’s population, and with 3,000 carsharing vehicles, leads not just the province but comes in second in North America (behind New York City). So it still comes as a surprise that carsharing accounts for just one-tenth of 1 per cent of the total number of registered vehicles in the province.

What will it take to spread the word — that, beyond the solving the cost-crunch of motor vehicle ownership, carsharing could also be a wonder drug for what ails the environment?

What we do, if we need that extra push over the cliff, we turn it up to eleven. …These go to eleven.

Nigel Tufnel

09 Jun 01:56

MIT researchers create transmitter that can protect devices from hackers

by Bradly Shankar
lock over data

When they’re not creating psychopathic artificial intelligence, MIT researchers can usually be found trying to figure out solutions to some complex problems.

Most recently, a team from the prestigious research university has created a transmitter that moves data between radio frequencies at a rapid enough rate to protect it from hackers.

MIT’s transmitter, referred to as the Novel, is able to bounce each individual bit of data every microsecond across 80 different channels, making it too fast for hackers to follow. To support this high-speed frequency jumping, the MIT team also developed a new type of Bluetooth-esque wireless protocol.

“By developing this protocol and radio frequency architecture together, we offer physical-layer security for connectivity of everything,” said Rabia Tugce Yazicigil, a postdoc in the Department of Electrical Engineering and Computer Science and first author on a paper detailing the transmitter. According to Yazicigil, this could initially help secure smart metres that read home utilities, control heating, or monitor a grid.

Over time, however, Yazicigil said the Novel’s applications could become more varied. “More seriously, perhaps, the transmitter could help secure medical devices, such as insulin pumps and pacemakers, that could be attacked if a hacker wants to harm someone,” Yazicigil says. “When people start corrupting the messages [of these devices] it starts affecting people’s lives.”

The MIT researchers will present a paper on the Novel transmitter at this weekend’s IEEE Radio Frequency Integrated Circuits Symposium in Philadelphia.

Image credit: Pixabay — typographyimages

Source: Eurek Via: Engadget

The post MIT researchers create transmitter that can protect devices from hackers appeared first on MobileSyrup.