Shared posts

29 Apr 05:37

NYC in the 21st Century, Part 1

by Jonathan Blaustein

 

I’m just back from New York, and am off to Portland tomorrow, where I’ll be when this article drops.

(Yes, I have a headache.)

I’ve been traveling a lot lately, and there’s plenty more to come, so today it’s time to tell you what I observed, as a journalist, in New York and New Jersey earlier this month.

It’s important to date it, because in 2019, these places I know so well have finally stood up tall and joined the 21st Century.

Proudly.

They’ve developed, or grown, in ways that feel authentic, and at times exciting. (As someone who grew up and lived there.) It’s a funny word to use, development, because among a certain political class, it’s almost always seen as a bad thing.

Gentrification –> Development = Low-income residents getting pushed out.

That’s normally the equation, and I get it. (My MFA thesis project in 2004 was about corn fields in my suburban hometown getting turned into McMansions.)

Sure, it was a Dutch farming village for 300 years before my parents got there, but I didn’t want those farms to become more suburbs.

No more people like me moving in to spoil it!

I gentrified the Southern end of the Mission District in San Francisco in 1999, and then Greenpoint, Brooklyn in 2002, and left both places as they were getting too trendy.

Hell, Jessie and I moved back to Taos in 2005 expecting hordes of Gen Xers to follow us, but instead it’s been the Millennials who’ve gotten in on the action in the last three or four years.

All of which is to say, I’ve been a gentrifier, and one who took pains at each new farm that was plowed under for another house like my own.

In general, over the course of my life, I’d say I tended towards the condemnation of massive real estate developments, and appreciated when things stayed the same, as they did in San Francisco for 10 years after I left.

But now, the San Francisco skyline has been ruined by Salesforce, the local culture is supposedly all about tech bros, and I’d have to think hard about how many people I know who live in the city these days, rather than in the surrounding area.

New York City, though, is something different. (As is New Jersey, which we’ll get to in Part 2.)

Yes, it’s my home turf, and I’m biased. I’ve written before that I grew up able to see the Twin Towers from my hometown, gleaming across the bay.

I took it personally when the towers were destroyed in 2001, but I think something of New York’s soul was taken too. Not that it’s people were cowed, because that will never happen.

(Not in my lifetime, anyway.)

Old New York near Herald Square

Rather, the skyline was ruptured so badly, and then the local politicking, which is always dirty in New York, kept the Freedom tower from getting built FOREVER.

Really, you can look it up.

When did the Freedom Tower open to the public?

(Rare Google break…)

OK. I’m back. 2014.

That’s when the first tenant moved in.

It took New York City 13 years to replace it’s iconic Southern anchor to the skyline.

And even then, the building is just OK.

In the interim, there was a phase where some very average looking, minimalistic residential super-towers were built, which made the city lean wrong, and all that visual weight went towards the super-rich, with their part time crash pads. (I accidentally wrote cash pads, which is a good Freudian slip.)

Looking South from the mouth of the Lincoln Tunnel

Nowadays, in 2019, finally, I’m thrilled to report that New York City has grown in exciting and beautiful ways. (Revitalizing growth that sometimes gets a bad rap, I think.)

In my experience, New York City has become a global tourism Mecca. In the sense that, like Paris, it now belongs to everyone.

And sometimes that comes at the expense of the locals.

Certainly, Manhattan, Brooklyn and now probably Queens are not affordable for “regular” people. Not unless you live “all-the-fuck-out-there” by the ocean.

And even where I’m from, in New Jersey, or in other outlying areas like Long Island or Westchester, the cost of living is high across the board. (Food, rent/home prices, transportation…)

Manhattan just adopted congestion pricing for the first time, to charge people for driving in the heart of the city, and the cost of tolls at bridges is nearly $20 as is.

In particular, though, I’d like to discuss Hudson Yards, the new mega-development by Stephen Ross, which recently opened in what used to be called Hell’s Kitchen on Manhattan’s in Midtown’s Far West Side.

Approaching Hudson Yards from the North

It was supposedly built on a $1 Billion platform over a railyard, and I’ve seen that tactic used in public parks in Chicago and Dallas to good effect. (In Dallas it was over highway, but still…)

Hudson Yards has gotten panned, from what I’ve heard, because it really was built for rich people, and tourists. (I guess I’m kind of the latter, these days.)

 

Looking East towards Old New York

Looking West to Hudson Yards

Looking up at the Hudson Yards skyscrapers

There are something like six new blue-glass skyscrapers by Starchitects, and they surround a big public courtyard with the the Shed, a public art space, and the massively expensive “Vessel,” a glowing bronze public art project for which you have to get a free ticket.

The Vessel

Getting the shot for Instagram

View from inside the Vessel

Looking down off the platform


It is literally a stairway that goes nowhere, built to be an Instagram backdrop, and it does that job well. I was little confused by the physical placement within the city skyline, if it’s meant to be iconic, but then I noticed this ad in The New Yorker, which about sums up the demographic.

The Vessel is apparently visible from New Jersey

On the lower levels of one of the buildings is a huge shopping mall and food court featuring very expensive and/or trendy brands. (Muji is not fancy, but it is cool.)

I understand my point may be somewhat controversial, but I’ve been to that part of town, over the years, and it was a bit of a wasteland.

I can also attest, at 45, that New York has always been about money.

It’s the heart of Capitalism, for crying out loud.

So as a former resident, and now regular visitor, I accept that it was always going to become too expensive for people like me to actually live there.

Hell, I don’t want to live there.

The air quality and weather suck, and it’s too busy for every day.

But seeing such beautiful, gleaming buildings in Hudson Yards, it inspired me.

They’re gorgeous.

And everywhere you look, including in odd places like the Lower East Side, there are new-looking skyscrapers that balance the Empire State and Chrysler buildings, and support the Freedom Tower, which was never meant to carry downtown alone.

(Brooklyn has tons of new hi-rise buildings too, so many that when my father-in-law last visited in 2004, there were none, he confirmed.)

Sticking with Manhattan, though, Hudson Yards blends right into the northern end of the High Line through Chelsea, which is itself a phenomenal piece of design and public space.

Whereas in the past, right at the junction between the two, there might have been a locally owned pizza place, now, it’s a restaurant by Jose Andres and the Adria Brothers. That’s a massive change, and I can see how some people might hate it. (I still miss the ubiquity of a great slice.)

Between the architecture that’s grown around the High Line, like the Zaha Hadid masterpiece, to the nature planted within it, the High Line is always popular, and rightly so.

(We went twice, and each time it was wall-to-wall people, speaking countless languages.)

The High Line ends in the new Whitney, which conveniently flows into Hudson River park, which goes south along the waterfront along the city.

Looking North from the beginning of the High Line

Zaha Hadid building along the High Line

It’s fantastic, frankly.

And none of it was there when I moved back to town in 2002.

I haven’t mentioned Hurricane Sandy, yet, which hit in 2012, but that was a real punch in the nose for the Tri-State Area.

Given that New York is a money town, between 9/11, the following market crash, the 2008 crash, and then Sandy, the city was properly down on its knees.

Maybe not like the big bad 70s, but New York looked stale, visually, and I’d argue maybe it was.

As cities like Shanghai and Dubai raced towards the future, New York seemed stuck in the past.

But no longer.

On a Pier looking South towards the Freedom Tower

These days, I think it’s pretty badass that New York has opened itself proudly to the world.

It’s thriving, and looks pretty great too. (Except for the garbage on the streets, because New York is always gonna New York.)

There’s so much more to tell, (including a few anecdotes about AIPAD,) but we’re nearing 1500 words, and I’ve got photos this time!

There’s no need to over-do it, so I’ll run it back with Part 2 next week.

Have a good one.

The post NYC in the 21st Century, Part 1 appeared first on A Photo Editor.

------------------------

Visit our sponsor Photo Folio, providing websites to professional photographers for over 10 years. Featuring the only customizable template in the world.

------------------------

29 Apr 05:37

Samsung makes iFixit remove Galaxy Fold teardown

by Rui Carmo

I’ve been following this unmitigated disaster for a few days now, and I just can’t wrap my head around how they actually thought the device was ready in any practical sense.

As much as I would love a WestWorld-style foldable tablet (hint: but not running Android), mechanically it makes exactly zero sense for the screen to be a single panel–aiming for that introduced fatal compromises to durability that will take a long while to fix at an acceptable price.


29 Apr 05:37

Victory at Pancake Ridge

by peter@rukavina.net (Peter Rukavina)

If you Google “pancake recipe,” the first search result, for the past couple of months at least, is this one from Allrecipes.

The flour-milk-egg ratio of that recipe produces batter with the consistency of molasses, and, try as I might, I’ve been unable to get pancakes made with that recipe to be anything other than burnt, raw on the inside, or both.

Two nights ago, lacking other options, I decided to make crepes for supper, and I figured that crepes are really just thin pancakes, so I freestyled a recipe, using a cup of flour, a single egg, and considerably more milk than that pancake recipe calls for. The batter was the consistency of motor oil. And the resulting neo-pancakes were thin, cooked right through, and as different from the disastrous pancakes of yore as to be an entirely new species. With a little bit of dried basil added to the batter, and some of Paul Offer’s mushrooms fried up and placed on top, the result was very tasty.

So much so that I switched out cinnamon for basil this morning and we had blueberry pancakes from the same ad hoc recipe.

29 Apr 05:37

Connectivism and Scale

Martin Weller, The Ed Techie, Apr 26, 2019
Icon

Martin Weller offers a response to my suggestion that connectivist MOOCs ought to be used to scale learning. "I’m uncomfortable with this over-reaching of connectivism," he writes. "Open universities across the world have been operating large scale, open, equitable learning for decades." Have a look (it's well-argued). Then you may want to consider my response. I write, "the cost of educational labour is what makes it so expensive... (but) The connectivist approach is to do whatever can be done to help students perform this labour themselves."

Web: [Direct Link] [This Post]
29 Apr 05:37

Retro-Modern Country Campeur with Porteur Bars

by noreply@blogger.com (VeloOrange)
by Igor

I'm really enjoying how prevalent retro-modern design is in so many facets of our lives. Whether it's architecture, knives, watches, household fixtures, and of course bikes, there is something a bit warmer, more individualistic, and approachable about something that exudes class while having a modern functionality. Case in point is Dhiren's new Campeur.


We started the conversation with a few photos of how he wanted the bike to look: traditional country bike, thumbie shifters, Porteur Handlebars, and lots of polished components and accessories. The end result is a timeless combination of traditional style, hints of new, lots of personality, and loads of versatility.

Porteur Bars make for a super comfortable position with multiple hand positions for long rides.


The shifters are Shimano 11 speed bar-ends fitted to our Thumbie Mounts. The idea is that he can hang on to the bar pods and go to drop handlebars in the future if he so chooses. Thus keeping the drivetrain in tact and only needing to get brake levers and a handlebar to make the switch. Neat idea!


Our Leather Bar Tape is supple and very comfortable. It'll age and develop a lovely patina over time. The housing runs under the tape and makes it very easy to get a grip.


We re-rediused a set of our 52mm 650b Zeppelin Fenders to really match the style of the build. They were drilled and perfectly mounted to a Constructeur Rear Rack for commuting and light duty touring.





Cable management was interesting. We to make the right angle for the cable stop, we routed the front brake over the stem, and the rear brake followed. It looks a bit crazy, bit all the arcs are graceful and friction is super low.



The drivetrain is our 50.4 Crankset paired to an 11-32 cassette and 105 derailleurs. Plenty of range, super crisp shifting, and terrific look.


Since the fenders are a bit too wide for the frameset, we indented them so they fit perfectly. These are the little details that make my heart go pitter-patter.


A Brooks Antique Brown Saddle pairs exceptionally well to the brown bar tape.


For a complete build list, click here! Interested in your own custom VO build? Shoot us an email and we can get the process started!
29 Apr 05:37

Firefox Origin Telemetry: Putting Prio in Practice

by chuttenc

Prio is neat. It allows us to learn counts of things that happen across the Firefox population without ever being able to learn which Firefox sent us which pieces of information.

For example, Content Blocking will soon be using this to count how often different trackers are blocked and exempted from blocking so we can more quickly roll our Enhanced Tracking Protection to our users to protect them from companies who want to track their activities across the Web.

To get from “Prio is neat” to “Content Blocking is using it” required a lot of effort and the design and implementation of a system I called Firefox Origin Telemetry.

Prio on its own has some very rough edges. It can only operate on a list of at most 2046 yes or no questions (a bit vector). It needs to know cryptographic keys from the servers that will be doing the sums and decryption. It needs to know what a “Batch ID” is. And it needs something to reliably and reasonably-frequently send the data once it has been encoded.

So how can we turn “tracker fb.com was blocked” into a bit in a bit vector into an encoded prio buffer into a network payload…

Firefox Origin Telemetry has two lists: a list of “origins” and a list of “metrics”. The list of origins is a list of where things happen. Did you block fb.com or google.com? Each of those trackers are “origins”. The list of metrics is a list of what happened. Did you block fb.com or did you have to exempt it from blocking because otherwise the site broke? Both “blocked” and “exempt” are “metrics”.

In this way Content Blocking can, whenever fb.com is blocked, call

Telemetry::RecordOrigin(OriginMetricID::ContentBlocking_Blocked, "fb.com");

And Firefox Origin Telemetry will take it from there.

Step 0 is in-memory storage. Firefox Origin Telemetry stores tables mapping from encoding id (ContentBlocking_Blocked) to tables of origins mapped to counts (“fb.com”: 1). If there’s any data in Firefox Origin Telemetry, you can view it in about:telemetry and it might look something like this:

originTelemetryAbout

Step 1 is App Encoding: turning “ContentBlocking_Blocked: {“fb.com”: 1}” into “bit twelve on shard 2 should be set to 1 for encoding ‘content-blocking-blocked’ ”

The full list of origins is too long to talk to Prio. So Firefox Origin Telemetry splits the list into 2046-element “shards”. The order of the origins list and the split locations for the shards must be stable and known ahead of time. When we change it in the future (either because Prio can start accepting larger or smaller buffers, or when the list of origins changes) we will have to change the name of the encoding from ‘content-blocking-blocked’ to maybe ‘content-blocking-blocked-v2’.

Step 2 is Prio Encoding: Firefox Origin Telemetry generates batch IDs of the encoding name suffixed with the shard number: for our example the batch ID is “content-blocking-blocked-1”. The server keys are communicated by Firefox Preferences (you can see them in about:config). With those pieces and the bit vector shards themselves, Prio has everything it needs to generate opaque binary blobs about 50 kilobytes in size.

Yeah, 2kb of data in a 50kb package. Not a small increase.

Step 3 is Base64 Encoding where we turn those 50kb binary blobs into 67kb strings of the letters a-z and A-Z, the numbers 0-9, and the symbols “+” or “/”. This is so we can send it in a normal Telemetry ping.

Step 4 is the “prio” ping. Once a day or when Firefox shuts down we need to send a ping containing these pairs of batch ids and base64-encoded strings plus a minimum amount of environmental data (Firefox version, current date, etc.), if there’s data to be sent. In the event that sending fails, we need to retry (TelemetrySend). After sending the ping should be available to be inspected for a period of time (TelemetryArchive).

…basically, this is where Telemetry does what Telemetry does best.

And then the ping becomes the problem of the servers who need to count and verify and sum and decode and… stuff. I dunno, I’m a Firefox Telemetry Engineer, not a Data Engineer. :amiyaguchi’s doing that part, not me : )

I’ve smoothed over some details here, but I hope I’ve given you an idea of what value Firefox Origin Telemetry brings to Firefox’s data collection systems. It makes Prio usable for callers like Content Blocking and establishes systems for managing the keys and batch IDs necessary for decoding on the server side (Prio will generate int vector shards for us, but how will we know which position of which shard maps back to which origin and which metric?).

Firefox Origin Telemetry is shipping in Firefox 68 and is currently only enabled for Firefox Nightly and Beta. Content Blocking is targeting Firefox 69 to start using Origin Telemetry to measure tracker blocking and exempting for 0.014% of pageloads of 1% of clients.

:chutten

29 Apr 05:36

How Much Water Will Wreck Your Gadgets?

by Lauren Dragan
How Much Water Will Wreck Your Gadgets?

If you’re like me, you take your gadgets with you everywhere you go—inside and outside, from the beach to the bathroom. (Hey, I like singing in the shower.) The problem is that dust and especially water can be kryptonite to electronics. So if you want gear that can handle a spill, some sweat, or an unexpected rain shower, look for products that have some level of water resistance.

How do you know whether a given item can endure your particular lifestyle? Well, there’s a helpful standard called the IP or IPX rating that evaluates products according to how resistant they are to moisture, sweat, and dust. Note that a product lacking an IP rating may still be resistant to water or dust; however, the IP rating offers assurance that a manufacturer’s claims are based on actual testing. To find out more about IP ratings and what they mean when you’re shopping, watch the video above.

It’s important to remember that no matter how high the rating, there are always limits to a product’s water resistance. You should always let your gadgets dry thoroughly before charging them, and in between uses. Make sure the port doors are fully closed before you use your device. And keep in mind that IP ratings refer only to resistance to clear, fresh water. Sweat has a low enough saline component that it’s usually fine, but ocean saltwater, soda, shampoo or conditioner, and other liquids could still cause problems for your device. So feel free to soak in a tub or rinse in the shower with your waterproof headphones, but please take them out when you lather, rinse, and repeat.

29 Apr 05:36

Brain Implant Can Say What You’re Thinking

Megan Scudellari, IEEE Spectrum, Apr 26, 2019
Icon

This is pretty impressive. "Today, in the journal Nature, scientists at the University of California, San Francisco, present a new type of brain-computer implant (BCI), powered by neural networks, that might enable individuals with paralysis or stroke to communicate at the speed of natural speech—an average of 150 words per minute." Instead of 'reading thoughts' and trying to infer linguistic representations, it instead "it translates brain signals into movements of the vocal tract, including the jaw, larynx, lips, and tongue." These movements are then translated into speech. The approach requires electrodes implanted directly in or on the brain; "external electrodes simply cannot provide precise enough data from small brain regions, experts agree." 

Web: [Direct Link] [This Post]
29 Apr 05:36

Some Thoughts on OER or Why Capitalists Can’t Cook

Geoff Cain, Brainstorm in Progress, Apr 26, 2019
Icon

Geoff Cain responds to David Wiley's post from yesterday. "We need to bring OER out of the teaching & learning communities that use them, not the corporations," writes Cain. "David’s post is overly-concerned with business interests. I think we need to get away from commercial publishing because of costs and that it is an out-dated and inauthentic model for teaching and learning." Moreover, " By focusing on justifications for commercial models, we do a great injustice to all of the great work that is being done in Open Pedagogy." Quite so.

Web: [Direct Link] [This Post]
29 Apr 05:36

Learning Alignment Model

Tom Barrett, Tom Barrett's Blog, Apr 26, 2019
Icon

I like the thinking here even if I'm not keen on the overall result. The thinking begins with a set of astute observations about what students actually learn in a classroom. It proceeds by identifying several layers of curricula - the recommended curriculum derives from experts in the field, the written curriculum is found in the documents produced by the state, the taught curriculum is the one that teachers actually deliver, etc. What the students learn is ultimately different from any of these - as Dylan Wiliam says, “children do not learn what we teach.” John Barrett concludes by proposing, in diagram form, a 'learning alignment model' (based o John Biggs's. constructive alignment). It has the usual failings of educational theory - it's a taxonomy, in the form of a pyramid, that is ultimately unsatisfying.

Web: [Direct Link] [This Post]
29 Apr 05:36

Another university ranking – really?

Roger Smyth, Education Central, Apr 26, 2019
Icon

I can't resist posting this, even if only because "the countries that had the highest average scores were Canada, Ireland and Australia." The article is referring to "the Times Higher Education (THE) university impact rankings, released for the first time on 3 April" where "THE has tried to measure universities on what matters, rather than on what can be counted." And what does matter? "Rankings are aligned to 11 of the UN’s 17 sustainable development goals.  These goals – no poverty, zero hunger, good health and wellbeing, quality education etc – matter to us as a nation." Now while I like this ranking system, it does underscore a point about rankings made previously in this newsletter - ranking systems are advocacy instruments, where publications define their own version of 'good', and then attempt to convince institutions to align with them in order to improve their ranking. This remains true, whether or not I like the measurement or the outcome.

Web: [Direct Link] [This Post]
29 Apr 05:34

The Best Rechargeable Battery Charger (for AA and AAA Batteries)

by Sarah Witman
The Best Rechargeable Battery Charger (for AA and AAA Batteries)

If you want to start using rechargeable AA and AAA batteries, you need a charger to keep them powered. We spent five hours researching and 16 hours testing AA and AAA battery chargers, finding that the Panasonic BQ-CC55 is the best for most people. It’s compact, has a fold-out AC plug, charges up to four batteries at a time, and has lights to tell you when each battery is dead, midway, or fully charged.

29 Apr 05:34

All-Up: What the Moon Landing Can Teach Us About Design

by Neale Van Fleet

At the start of the ’60s space race, NASA was wary of changing too many things during any one launch. The intention was to keep each launch controlled, much like a scientist only changing one variable in each iteration of an experiment.

This conservative approach was safe, but it was also very, very slow. To hit the goal of putting a man on the moon by the end of the decade, the head of the Office of Manned Space Flight George Mueller knew that NASA needed to change its approach. He instituted a new testing philosophy dubbed “all-up”. This involved including many systems in each launch, even if they weren’t fully baked. If they weren’t believed to be a large liability, they flew. This strategy ultimately saved both time and money, and it’s hard to argue with the results:


Buzz Aldrin getting results.
[Photo credit: NASA]

Using All-Up in Design

Audio software isn’t rocket science, but it can still get pretty complicated. I try to embrace an all-up mentality wherever I can here at Rogue Amoeba.

Let’s take, for example, one of our product pages. After our initial planning session, I first do a super quick pass on all the elements. I make rough versions of everything I can. I use stock icons, I improvise text, I cobble together code from other projects or snippets. If I don’t have a good feature icon concept, I don’t dwell on it. I just use a placeholder and move on. The goal is to get everything up, connect links between pages, and establish a rough aesthetic.

Worth noting, except for longer passages like articles, I try hard to avoid using designer crutches like lorem ipsum. The eventual text is part of the design, and so we try to make even the first draft mimic what we expect to eventually see.

Sometimes, quickly writing in placeholder text can even result in usable copy. I improvised the first draft of what would become a tagline for SoundSource, “Sound control so good, it should be built in”, and it stuck.

My intention with this process is to get things “all-up” and have a passable first draft. Once we have that, we can work on improvements.

Iteration

Those who follow popular design chatter might recognize all-up as a form of iteration, and that’s exactly right. The goal is to get as much up as fast as possible, and then build on it. Part of the key to this is to iterate on things in place as much as possible.

In his architecture book “The Timeless Way of Building”, Christopher Alexander advocated starting work on a design for a building by visiting the construction site, walking around, and placing wooden poles in the ground to represent the different rooms and spaces the building would have. Alexander found this helps him visualize things at the real scale the building will eventually have.1

Alexander wrote:

Then we began with the design itself.

It took a week, Monday to Friday, out on the site itself, walking around parked cars and obstacles, overcoats against the fog, walking, walking all day long, cups of coffee, crazy dancing around, as the building took shape, chalk marks on the ground, stones to mark corners. People wondered what on earth we could be doing out there in the fog, walking around, all day long, for so many days.

The point of Alexander’s exercise is to remove as much abstraction from the process as possible. Rather than focusing solely on blueprints, he keeps everything at a human scale, and also going to maximum length to make sure the building design takes into account the context of the environment around it.

In a similar way, I like to design with the least abstraction possible, and like to jump pretty quickly to working in the direct medium. I often jump into the HTML and CSS early on, instead of making a pixel-perfect site mock-up with a design app like Photoshop or Sketch. This makes updating text pretty quick, and helps create a good sense of how the pages will work alongside the rest of our site.

Working Through Issues

One big benefit of the all-up process is that it leaves fewer places to get stuck, because getting everything perfect right away is not the goal. I’m a big advocate of quickly moving on to the next task the second you get stuck on something.

There will always be stumpers that threaten to derail the design process. Following this all-up thinking and having everything roughed out in place means there are many different elements to look at and work on improving. Stuck on icons? Work on the layout. Stuck on designing an interaction? Work on improving the writing.

Building Trust Within the Team

The all-up approach requires a fair amount of trust between team members. As a designer, I find it nerve-wracking to present anything that isn’t super polished. The whole team needs to have enough trust in the process and the design team for it to work. I have to trust that the team will see what I intend, and the team has to trust that I can get us where we need to be in the end.


[Photo credit: NASA]

Try All-Up Yourself

In the right context, all-up can be a super-effective process. It worked to put astronauts on the moon, and it can work for designing web sites, audio apps, and almost anything else you’re working on.


Footnotes:

  1. While designers and information architects often love Christopher Alexander, almost every architect I talk to hates him with a strange passion. Beware of this when trying to seem cool to your architect friends. ↩︎

29 Apr 05:34

The way of the remix

by Bryan Mathers
The way of the remix

Do you remix?

If so, how do you remix? What is your remix trigger? Is it curiosity or simply joining the dots as you see them? Do you like to layer-up? Or strive to simplify? Is it a tickly thought? Or a random one from left field?

I’d like to know, because I think we’re all different. This is part of what I’m exploring with the gradual launch of The Remixer Machine.

The post The way of the remix appeared first on Visual Thinkery.

29 Apr 05:34

Week in Review: 4/20-4/26

by John Stewart

What I’m Working On

I’ve spent most of the week thinking about the four projects listed out below. I also migrated a couple of websites into and around OU Create. For one of these migrations, I manually copied over both the file structure and the SQL DB from an external server, and then I changed the domain by rewriting more than 1200 SQL cell values. I don’t know if that’s actually impressive, but I was kind of surprised that it went so well. Here’s the instruction set I followed.

Creaties

This week, we reviewed over 100 nominees for the 2019 Creaties, decided on the winners, and started producing a video to recognize the winners. I’ve been working with my colleague, Andy Vaughn, and we’re hoping to have the video out at the beginning of next week.

Architecture College Website

The Gibbs College of Architecture here at OU has a really nice WordPress-based web site: architecture.ou.edu. My colleague Angela Person has done a great job building out the site and assembling a team of undergraduates to maintain a blog that I helped them build last semester.

This week, I sat in as they went through the process of creating site backups and updating the theme and plugins. Like any big WP site, there are a lot of plugins, so we wanted to be extra careful about compatibility during the upgrade. I had told them that I was at least 90% confident that nothing would break, and, for the most part, that held. The GUI that we’re using in place of WP’s default classic or Gutenberg editors didn’t update properly, but nothing broke from the user perspective. We’re working on contacting the GUI plugin’s maker to get that update completed.

Italian Website

I’m still working on the Italian program’s website. In fact, I should be working on that right now, but I wanted to write this post instead. I’m optimistic both will be finished by the end of the work day.

GOBLIN 2.0

Last week I started talking to Keegan about rethinking one of our favorite faculty development programs, GOBLIN. The first version of this program centered on having faculty play a Dungeons and Dragons themed game as a way of exploring what games have to teach us about onboarding, scaffolding, overcoming failure, assessment, group building, storytelling, etc.

Keegan and I had been talking to a couple of different schools about the program, and I started thinking about what if each school played a different storyline, with all of the storylines being intertwined somehow. This might have been spurred in part by the new Avengers moving coming out and the Marvel Universe’s model of 21 films all intertwining and leading to one culminating event.

This week, Keegan and I met with Maddie Shellgren from Michigan State to see if she would help us think through the game design. Maddie did a fantastic job designing escape rooms for the recent OLC Innovate 19 conference. Those escape rooms required multiple groups to work together in separate locations, then come together and work as a team to ultimately escape. Maddie thinks a lot about games and pedagogy, and she’s a badass, so we’re really excited that she wants to work with us on this.

I’m going to try to write up a separate post more fully explaining Goblin 2.0, and I’ll link it here when it’s done.

What I’m Reading

I’m trying to read a book every week this year. This week I read:



Tressie McMillan Cottom, Thick

At OLC Innovate 19, we were lucky enough to have Tressie McMillan Cottom give one of the keynote presentations.

I’ve been reading Prof. McMillan Cottom’s articles for a few years, so I was happy to hear she had a new book of essays. I read the entire book over the weekend and really appreciated Tressie’s candor. The epigraph for the opening essay includes a quote from Lucille Clifton, and her strong, affective voice was a clear influence throughout the book. Tressie’s essays are both intellectual and personal, an embodied take on race in modern American society.

I’ve already recommended this book to several people. I was in a panel on media literacy on Thursday and brought up one of the essays in which Tressie calls for a woman of color to write op-eds for the NYT. Her point, which I was reiterating, was that we’ve read plenty of David Brooks’ inane takes on life. If we make space for a woman of color to write, and give her the same latitude to over extend metaphors about modern society, we will have taken a small step towards racial and gender equality.

I’m reading several other books, but haven’t finished any of them. I did read my first article by Ellen Meiksins Wood and loved it. It typifies a broader set of readings that critique modernity. I am integrating all of this reading into my own writing right now, and I hope I will have more to share on that in the coming weeks and months.

29 Apr 05:33

Arguing with Ms Thunberg

by Stephen Rees

Screen Shot 2019-05-08 at 6.00.08 PM

I just came across a quote from the highly intelligent, well informed climate campaigner. It was on Twitter

Yesterday, Thunberg repeated the phrase. “Avoiding climate breakdown will require cathedral thinking,” she said. “We must lay the foundation while we may not know exactly how to build the ceiling.”

You can see the whole thing on the New Yorker who are impressed by her rhetoric.

So I do not really want to get into an argument with her and on media like Twitter and Facebook these things can get out of hand quickly. But I am pretty sure that the guys who built cathedrals knew exactly how to build the ceiling even as they were working on the foundations. You may recall that I recently posted my pictures of the ceiling of Notre Dame.

Ceiling

If you have been in the crypt of any medieval cathedral you will note a similar form of construction. This is not my picture. It is by Michael Gabelmann who uses a Creative Commons license for his picture of the crypt of Pecs cathedral built in the 11th century.

Crypt

Abundant Transit on Twitter also wrote today

We have everything we need to solve the climate crisis. Only politics and culture stand in the way.

And that was in reply to Jennifer Keesmat

The fact that #Vancouver has made creating walkable communities a central big move of it’s #ClimateEmergency plan is both a clue + an inspiration to cities around the world. We don’t need gadgets. We don’t need to invent something new. We know exactly what to do.

And, by the way, the record breaking increase in transit ridership here was not due to making it free. Lots more people are using the system because it is convenient, reliable and less hassle than driving. It also looks to be better value for money than owning a car and then trying to find a parking spot for it. In fact we are becoming the victims of our own success as the biggest problem now is overcrowding.

But to return to the climate crisis, what we need to do is first stop subsidizing fossil fuel use. Renewables are already cheaper than coal – and most people who are serious about energy efficiency find that an easier way of saving money than almost any other alternative. We do have to get serious too about inequality. Our society is headed in the wrong direction not because most people are unaware of the need for change, but a few, exceedingly wealthy people, have been working hard to confuse the issue while making unconscionable profits and avoiding paying tax. Tackling that is actually more important than trying to persuade everyone else that they have to change their lifestyle. Although carbon tax has been remarkably effective at quite modest levels. And because we have done not nearly enough for the last thirty years (other than have fairly silly arguments when the science was unequivocal) we now must move faster. But no-one has to freeze in the dark. But bicycles, buses, protected lanes for both – and more passenger trains in North America will all work very well indeed because we know how to do that. We know how to build better places too. Batteries are getting better and cheaper: so are solar panels and wind turbines. We haven’t even started on geothermal – unlike Iceland. It really does look like we will see commercial electric aircraft and ferries here soon too. Everyone loves to point to cruise ships – but they are actually already using electric drives. We just need to change the way they generate the power. Not rocket science. And that is something else we really don’t need. Setting up home on another planet is not necessary – or even very practical.

POSTSCRIPT

Ms Thunberg posted to her Facebook page recently. I decided to cut and paste it here. I have no argument at all with her. You should read this

As the rumours, lies and constant leaving out of well established facts continue, please share this newly updated clarification about me and my school strike.
Please help me communicate this to the grown ups who lie about me and family so that I can focus on school instead:

Recently I’ve seen many rumors circulating about me and enormous amounts of hate. This is no surprise to me. I know that since most people are not aware of the full meaning of the climate crisis (which is understandable since it has never been treated as a crisis) a school strike for the climate would seem very strange to people in general.
So let me make some things clear about my school strike.

In may 2018 I was one of the winners in a writing competition about the environment held by Svenska Dagbladet, a Swedish newspaper. I got my article published and some people contacted me, among others was Bo Thorén from Fossil Free Dalsland. He had some kind of group with people, especially youth, who wanted to do something about the climate crisis.
I had a few phone meetings with other activists. The purpose was to come up with ideas of new projects that would bring attention to the climate crisis. Bo had a few ideas of things we could do. Everything from marches to a loose idea of some kind of a school strike (that school children would do something on the schoolyards or in the classrooms). That idea was inspired by the Parkland Students, who had refused to go to school after the school shootings.
I liked the idea of a school strike. So I developed that idea and tried to get the other young people to join me, but no one was really interested. They thought that a Swedish version of the Zero Hour march was going to have a bigger impact. So I went on planning the school strike all by myself and after that I didn’t participate in any more meetings.

When I told my parents about my plans they weren’t very fond of it. They did not support the idea of school striking and they said that if I were to do this I would have to do it completely by myself and with no support from them.
On the 20 of august I sat down outside the Swedish Parliament. I handed out fliers with a long list of facts about the climate crisis and explanations on why I was striking. The first thing I did was to post on Twitter and Instagram what I was doing and it soon went viral. Then journalists and newspapers started to come. A Swedish entrepreneur and business man active in the climate movement, Ingmar Rentzhog, was among the first to arrive. He spoke with me and took pictures that he posted on Facebook. That was the first time I had ever met or spoken with him. I had not communicated or encountered with him ever before.

Many people love to spread rumors saying that I have people ”behind me” or that I’m being ”paid” or ”used” to do what I’m doing. But there is no one ”behind” me except for myself. My parents were as far from climate activists as possible before I made them aware of the situation.
I am not part of any organization. I sometimes support and cooperate with several NGOs that work with the climate and environment. But I am absolutely independent and I only represent myself. And I do what I do completely for free, I have not received any money or any promise of future payments in any form at all. And nor has anyone linked to me or my family done so.
And of course it will stay this way. I have not met one single climate activist who is fighting for the climate for money. That idea is completely absurd.
Furthermore I only travel with permission from my school and my parents pay for tickets and accommodations.

My family has written a book together about our family and how me and my sister Beata have influenced my parents way of thinking and seeing the world, especially when it comes to the climate. And about our diagnoses.
That book was due to be released in May. But since there was a major disagreement with the book company, we ended up changing to a new publisher and so the book was released in august instead.
Before the book was released my parents made it clear that their possible profits from the book ”Scener ur hjärtat” will be going to 8 different charities working with environment, children with diagnoses and animal rights.

And yes, I write my own speeches. But since I know that what I say is going to reach many, many people I often ask for input. I also have a few scientists that I frequently ask for help on how to express certain complicated matters. I want everything to be absolutely correct so that I don’t spread incorrect facts, or things that can be misunderstood.

Some people mock me for my diagnosis. But Asperger is not a disease, it’s a gift. People also say that since I have Asperger I couldn’t possibly have put myself in this position. But that’s exactly why I did this. Because if I would have been ”normal” and social I would have organized myself in an organisation, or started an organisation by myself. But since I am not that good at socializing I did this instead. I was so frustrated that nothing was being done about the climate crisis and I felt like I had to do something, anything. And sometimes NOT doing things – like just sitting down outside the parliament – speaks much louder than doing things. Just like a whisper sometimes is louder than shouting.

Also there is one complaint that I ”sound and write like an adult”. And to that I can only say; don’t you think that a 16-year old can speak for herself? There’s also some people who say that I oversimplify things. For example when I say that “the climate crisis is a black and white issue”, ”we need to stop the emissions of greenhouse gases” and ”I want you to panic”. But that I only say because it’s true. Yes, the climate crisis is the most complex issue that we have ever faced and it’s going to take everything from our part to ”stop it”. But the solution is black and white; we need to stop the emissions of greenhouse gases.
Because either we limit the warming to 1,5 degrees C over pre industrial levels, or we don’t. Either we reach a tipping point where we start a chain reaction with events way beyond human control, or we don’t. Either we go on as a civilization, or we don’t. There are no gray areas when it comes to survival.
And when I say that I want you to panic I mean that we need to treat the crisis as a crisis. When your house is on fire you don’t sit down and talk about how nice you can rebuild it once you put out the fire. If your house is on fire you run outside and make sure that everyone is out while you call the fire department. That requires some level of panic.

There is one other argument that I can’t do anything about. And that is the fact that I’m ”just a child and we shouldn’t be listening to children.” But that is easily fixed – just start to listen to the rock solid science instead. Because if everyone listened to the scientists and the facts that I constantly refer to – then no one would have to listen to me or any of the other hundreds of thousands of school children on strike for the climate across the world. Then we could all go back to school.
I am just a messenger, and yet I get all this hate. I am not saying anything new, I am just saying what scientists have repeatedly said for decades. And I agree with you, I’m too young to do this. We children shouldn’t have to do this. But since almost no one is doing anything, and our very future is at risk, we feel like we have to continue.
And if you have any other concern or doubt about me, then you can listen to my TED talk ( https://www.ted.com/…/greta_thunberg_the_disarming_…/up-next ), in which I talk about how my interest for the climate and environment began.

And thank you everyone for your kind support! It brings me hope.
/Greta

Ps I was briefly a youth advisor for the board of the non profit foundation “We don’t have time”. It turns out they used my name as part of another branch of their organisation that is a start up business. They have admitted clearly that they did so without the knowledge of me or my family. I no longer have any connection to “We don’t have time”. Nor does anyone in my family. They have deeply apologised for what has happened and I have accepted their apology.

 

29 Apr 05:33

Walking the Great Wall

That was the name of the tour and that’s what we did, on each of five successive days. It was exhausting and thrilling and educational and yielded more good pictures than good stories. So herewith an illustrated narrative of what you might expect to do and see if you take this sort of tour.

[This is part of The Surface of China series.]

Tour stuff

Our party comprised 14 and our tour-guide Lijuan, of whom more later. We piled into a little minibus with our backpacks in the first couple of rows and headed north out of Beijing.

Inside the tour bus

The party included four Canadian tech geeks and their two 12-year-old daughters and a wine merchant from Sydney; The rest were from the south of England. They included a contractor/handyman, a rental-real-estate manager, four golfing friends, and young person between jobs. We were lucky; they were all good company.

The first thing you learn about the Wall is that it doesn’t run across the Chinese flatlands, but from mountaintop to mountaintop. So before you can start walking, you have to climb a mountain. Then you proceed up a steep slope to the mountain’s top, then down the other side and up to the top of the next. Which is to say, it’s tough walking.

Uphill on the Great Wall

慕田峪

In our letters, Mutianyu. It’s not the main close-to-Beijing tourist destination that World Leaders visit, but neither too distant nor too difficult. It’s pretty civilized; you can take a lift to the top of the wall and a weird sort of tube-slider down. You can buy a nice cold beer up on top and enjoy the view. We did all those things.

View from the Mutianyu Great Wall

Yeah, those views, they’re definitely the thing you’ll remember if you visit the Wall, which while impressive is basically just a wall. But the mountains and skies are different every minute. On about the twentieth occasion that after climbing up some brutally steep staircase I said “Oh… wow” a tourmate said “The views don’t get tired, do they?

箭扣

In our letters, Jiankou. After we got off the wall we drove there, not that far, to a guesthouse in the village of 西栅子 (Xizhazi), which is too small for a Wikipedia entry. Here’s the lane up to the guesthouse.

In Xizhazi village

It’s really small, and the guesthouse was, uh, rustically sincere. It’s a regular stop for climbing clubs, whose banners festooned the central courtyard.

Guesthouse in Xizhazi

Just down the lane from the guesthouse was this thing, which I had to walk right up to to figure out.

Chicken coop in Xizhazi

Chicken coop in Xizhazi.

That place may have been primitive, but they served us what I remember as the best food we got on the whole vacation, including Hong Kong and Beijing. We had lots of beers and then it turned out Mr Fong, our driver, had a karaoke machine. Festivities broke out. Lauren sang Both Sides Now. A few of the tourist ladies sang Dancing Queen and Valerie. The two twelve-year-olds sang Shut Up and Dance. Mr Fong sang a romantic Chinese song by himself — a real crooner’s voice — and then a duet with Lijuan the guide.

Karoke duet in Xizhazi

I want to stop and pay tribute to her. Lijuan Duan, is a special person, with endless expertise and energy. She also owns the Meking Cafe, a well-reviewed restaurant in Southern China, and is generally an excellent person.

Speaking of excellent people, so is Mr Fong. Among other things, a fantastically deft driver and a fine singer. Well, as far as we could make out, because he doesn’t speak much English.

It was a freezing cold night and the guesthouse was mostly unheated. We were bundled up, enjoying the company, eating and drinking, and the guesthouse owner joined us. Then I saw a lovely tired lined face looking at us from out in the unsheltered courtyard, looking amazed at the blonde people and the singing, not daring to come in. I’m betting she’s the one who made that excellent food. In the villages of China you see the occasional child but no young people.

Anyhow, we got up the next morning to start climbing, and found that it was snowing pretty hard.

Snow in Xizhazi

Fortunately, the guesthouse was not completely without heat.

Stove in Xizhazi

It was an hour’s pretty ambitious hike up to the Wall in the snow.

Climbing up to the Jiankou great wall Climbing up to the Jiankou great wall Climbing up to the Jiankou great wall

See Mr Fong there with his umbrella? What you can’t see is that he’s wearing shiny street shoes. In spite of which he was by a mile our best climber on the scary parts of the climb. And boy, were there ever a lot of them.

The Jiankou Great Wall in snow The Jiankou Great Wall in snow

I think that was our best day on the Wall. I’ll never see anything like that again.

When we came down, we were exhausted. What with all the snow and having taken a few minor tumbles and general exhaustion, my hands were sufficiently beat-up that for two solid days I couldn’t fingerprint-unlock my phone.

古北口

In our letters, Gubeikou. We drove there after we came down off the snowy Wall, and the guesthouse was a little more modern but not as welcoming nor was the food as good. But it’s got a nice little riverfront park and some excellent temples.

Cooking rice in Gubeikou Drying cabbage in Gubeikou

The Long March

The Gubeikou wall is OK, nothing special, neither the views nor the Wall itself equaled what we’d already seen. But that day was brutal. We walked for six hours cross-country along the wall, or beside it in ruined sectors, to our next stop, and it was really cold and windy nearly every step. It was about 12km, which I’d have no trouble walking horizontally at a decent temperature, neither of which applied here. Here’s our tour-group, and a section of the Wall that we walked every inch of.

Tour group on Gubeikou Great Wall Gubeikou Great Wall

Finally, we limped down the mountain, and I have rarely been as happy to see a human face as Mr Fong’s, waving “come this way!” at the bottom of the path.

金山岭

In our letters, Jinshanling. Probably the nicest and best-maintained part of the Wall. When we stumbled into our guesthouse there, it was under construction outside, but squeaky-clean inside, and in our room the heater had been turned on and set to 30°C, unreasonably warm unless you’ve just spent six hours trudging over Chinese mountaintops in a freezing wind. After 45 minutes or so, I was somewhat thawed.

Here’s the dining room, where we got in a few games of Mah Jongg. You don’t see a ceiling like that every day.

Guesthouse in Jinshanling Guesthouse in Jinshanling

If you wanted to make a one-day Wall visit and maybe didn’t want to take on the near-verticals of Jiankou, I’d say Jinshanling is the place to go.

Jinshanling Great Wall Jinshanling Great Wall Jinshanling Great Wall

There was one more day on the wall, at 黄崖关 (Huangyaguan) in Tianjin province, but meh, nothing to write home about after what we’d already seen.

Take-aways

It’s fantastic. Belongs on most bucket lists. Take a guide.

Lijuan says the best time to go is in Autumn, and I think that’s probably right. I’ll never forget those views.

29 Apr 05:33

Micro SD Card Speed Comparison

by Martin

A couple of years ago I bought a fast 32 GB USB3 Flash stick so I could quickly transfer really large files of several GB. The investment was well worth it, the stick was much faster than anything I had before. Another thing I do quite often is to create bootable micro-SD cards, e.g. as system volume for Raspberry Pis or as boot disks to install Ubuntu on notebooks. This was often a tedious exercise as the micro-SD cards I used so far could only be written to with speeds of less than 20 MB/s. However, manufacturers claim that there are much faster micro-SD cards on the market so I recently bought myself a new USB3 UHS-1 capable micro-SD card reader and somewhat more expensive (but still cheap) micro-SD cards to see if those small cards could really reach higher speeds.

The Test Setup

The micro-SD card reader I bought for the purpose was a cheap Hama USB3 card reader for 11 euros. The reviews were good, otherwise I would have been skeptical given the low price. The fastest card I bought for my test and for immediate and future use was a 32 GB SanDisk Extreme for 12 euros. Again, not very expensive, such cards used to cost a lot more. To compare I bought a 16 GB Transcend ‘Premium’ card for 4 euros.

Gigabyte Files

To test read and write performance of large files and partition dumps I generated a 16 GB random file which I then wrote to several micro-SD cards and then read back. I made sure that the 16 GB of data were correctly written to the card and read back by comparing the md5 hash of the original file with the hash of the data that was read back. In all cases the hash was correct so even my old and slow micro-SD cards I used for the comparison could still store the data without any problems.

The Results

The following table shows the performance of four different cards. The SanDisk Extreme almost reached the advertised data rates, I could measure a sustained data rate over several minutes of 92 MB/s for reading and 62 MB/s for writing. Another important value that is often reported is the number of IO operations a card can handle per second when a lot of small files are transferred. I didn’t try that as this is not my use case. The following table shows how other micro-SD cards I had compare to the SanDisk Extreme:

Card Type Read Speed
Write Speed
SanDisk Extreme,
32 GB
92 MB/s 62 MB/s
Transcend Premium, 16 GB 91 MB/s 26 MB/s
SanDisk Ultra
16 GB
47 MB/s 17 MB/s
Kingston, Low end,
16 GB, Cat. 4
23 MB/s 13 MB/s

Quite a difference! And here are the commands I used to generate the 16 GB random file in case you’d like to do the same exercise, how I wrote it to the different micro-SD cards and how I read them back straight into the md5hash generator:

# Create the random file
dd if=/dev/urandom of=rnd_data-16GB.img bs=1024 count=15187968

# Write the data to the micro-SD card
sudo dd status=progress bs=4M if=rnd_data-16GB.img of=/dev/sdX

# Read the data back, get the speed and the md5 hash
sudo dd if=/dev/sdX bs=1024 count=15187968 | md5sum


# Note: Replace /sdX with the device ID assigned by the OS to the micro-SD card and be careful not to overwrite partitions on the wrong device. dd is dangerous! Think before use!

29 Apr 05:33

It’s King’s Day #koningsdag in the Netherlands....

by Ton Zijlstra

It’s King’s Day #koningsdag in the Netherlands. And this year the royal family is visiting our hometown Amersfoort. Despite the rain the country will turn orange in most places. (below screenshot of the rain radar, #opendata ftw) The little one has been asking to go into town since 8am this morning.

29 Apr 05:32

Pre-game brunch Acorn [Flickr]

by vanderwal

vanderwal posted a photo:

Pre-game brunch Acorn

I'm at Acorn! 4sq.com/2eGEYEv

29 Apr 05:32

Quick Hit: Scraping javascript-“enabled” Sites with {htmlunit}

by hrbrmstr

I’ve mentioned {htmlunit} in passing before, but did not put any code in the blog post. Since I just updated {htmlunitjars} to the latest and greatest version, now might be a good time to do a quick demo of it.

The {htmlunit}/{htmunitjars} packages make the functionality of the HtmlUnit Java libray available to R. The TLDR on HtmlUnit is that it can help you scrape a site that uses javascript to create DOM elements. Normally, you’d have to use Selenium/{Rselenium}, Splash/{splashr} or Chrome/{decapitated} to try to work with sites that generate the content you need with javascript. Those are fairly big external dependencies that you need to trudge around with you, especially if all you need is a quick way of getting dynamic content. While {htmlunit} does have an {rJava} dependency, I haven’t had any issues getting Java working with R on Windows, Ubuntu/Debian or macOS in a very long while—even on freshly minted systems—so that should not be a show stopper for folks (Java+R guaranteed ease of installation is still far from perfect, though).

To demonstrate the capabilities of {htmlunit} we’ll work with a site that’s dedicated to practicing web scraping—toscrape.com—and, specifically, the javascript generated sandbox site. It looks like this:

Now bring up both the “view source” version of the page on your browser and the developer tools “elements” panel and you’ll see that the content is in javascript right there on the site but the source has no <div> elements because they’re generated dynamically after the page loads.

View Source & DevTools Elements Views

The critical differences between both of those views is one reason I consider the use of tools like “Selector Gadget” to be more harmful than helpful. You’re really better off learning the basics of HTML and dynamic pages than relying on that crutch (for scraping) as it’ll definitely come back to bite you some day.

Let’s try to grab that first page of quotes. Note that to run all the code you’ll need to install both {htmlunitjars} and {htmlunit} which can be done via: install.packages(c("htmlunitjars", "htmlunit"), repos = "https://cinc.rud.is", type="source").

First, we’ll try just plain ol’ {rvest}:

library(rvest)

pg <- read_html("http://quotes.toscrape.com/js/")

html_nodes(pg, "div.quote")
## {xml_nodeset (0)}

Getting no content back is to be expected since no javascript is executed. Now, we’ll use {htmlunit} to see if we can get to the actual content:

library(htmlunit)
library(rvest)
library(purrr)
library(tibble)

js_pg <- hu_read_html("http://quotes.toscrape.com/js/")

html_nodes(js_pg, "div.quote")
## {xml_nodeset (10)}
##  [1] <div class="quote">\r\n        <span class="text">\r\n          “The world as we h ...
##  [2] <div class="quote">\r\n        <span class="text">\r\n          “It is our choices ...
##  [3] <div class="quote">\r\n        <span class="text">\r\n          “There are only tw ...
##  [4] <div class="quote">\r\n        <span class="text">\r\n          “The person, be it ...
##  [5] <div class="quote">\r\n        <span class="text">\r\n          “Imperfection is b ...
##  [6] <div class="quote">\r\n        <span class="text">\r\n          “Try not to become ...
##  [7] <div class="quote">\r\n        <span class="text">\r\n          “It is better to b ...
##  [8] <div class="quote">\r\n        <span class="text">\r\n          “I have not failed ...
##  [9] <div class="quote">\r\n        <span class="text">\r\n          “A woman is like a ...
## [10] <div class="quote">\r\n        <span class="text">\r\n          “A day without sun ...

I loaded up {purrr} and {tibble} for a reason so let’s use them to make a nice data frame from the content:

tibble(
  quote = html_nodes(js_pg, "div.quote > span.text") %>% html_text(trim=TRUE),
  author = html_nodes(js_pg, "div.quote > span > small.author") %>% html_text(trim=TRUE),
  tags = html_nodes(js_pg, "div.quote") %>% 
    map(~html_nodes(.x, "div.tags > a.tag") %>% html_text(trim=TRUE))
)
## # A tibble: 10 x 3
##    quote                                                            author         tags   
##    <chr>                                                            <chr>          <list> 
##  1 “The world as we have created it is a process of our thinking. … Albert Einste… <chr […
##  2 “It is our choices, Harry, that show what we truly are, far mor… J.K. Rowling   <chr […
##  3 “There are only two ways to live your life. One is as though no… Albert Einste… <chr […
##  4 “The person, be it gentleman or lady, who has not pleasure in a… Jane Austen    <chr […
##  5 “Imperfection is beauty, madness is genius and it's better to b… Marilyn Monroe <chr […
##  6 “Try not to become a man of success. Rather become a man of val… Albert Einste… <chr […
##  7 “It is better to be hated for what you are than to be loved for… André Gide     <chr […
##  8 “I have not failed. I've just found 10,000 ways that won't work… Thomas A. Edi… <chr […
##  9 “A woman is like a tea bag; you never know how strong it is unt… Eleanor Roose… <chr […
## 10 “A day without sunshine is like, you know, night.”               Steve Martin   <chr […

To be fair, we didn’t really need {htmlunit} for this site. The javascript data comes along with the page and it’s in a decent form so we could also use {V8}:

library(V8)
library(stringi)

ctx <- v8()

html_node(pg, xpath=".//script[contains(., 'data')]") %>%  # target the <script> tag with the data
  html_text() %>% # get the text of the tag body
  stri_replace_all_regex("for \\(var[[:print:][:space:]]*", "", multiline=TRUE) %>% # delete everything after the `var data=` content
  ctx$eval() # pass it to V8

ctx$get("data") %>% # get the data from V8
  as_tibble() %>%  # tibbles rock
  janitor::clean_names() # the names do not so make them better
## # A tibble: 10 x 3
##    tags    author$name   $goodreads_link        $slug     text                            
##    <list>  <chr>         <chr>                  <chr>     <chr>                           
##  1 <chr [… Albert Einst… /author/show/9810.Alb… Albert-E… “The world as we have created i…
##  2 <chr [… J.K. Rowling  /author/show/1077326.… J-K-Rowl… “It is our choices, Harry, that…
##  3 <chr [… Albert Einst… /author/show/9810.Alb… Albert-E… “There are only two ways to liv…
##  4 <chr [… Jane Austen   /author/show/1265.Jan… Jane-Aus… “The person, be it gentleman or…
##  5 <chr [… Marilyn Monr… /author/show/82952.Ma… Marilyn-… “Imperfection is beauty, madnes…
##  6 <chr [… Albert Einst… /author/show/9810.Alb… Albert-E… “Try not to become a man of suc…
##  7 <chr [… André Gide    /author/show/7617.And… Andre-Gi… “It is better to be hated for w…
##  8 <chr [… Thomas A. Ed… /author/show/3091287.… Thomas-A… “I have not failed. I've just f…
##  9 <chr [… Eleanor Roos… /author/show/44566.El… Eleanor-… “A woman is like a tea bag; you…
## 10 <chr [… Steve Martin  /author/show/7103.Ste… Steve-Ma… “A day without sunshine is like…

But, the {htmlunit} code is (IMO) a bit more straightforward and is designed to work on sites that use post-load resource fetching as well as those that use inline javascript (like this one).

FIN

While {htmlunit} is great, it won’t work on super complex sites as it’s not trying to be a 100% complete browser implementation. It works amazingly well on a ton of sites, though, so give it a try the next time you need to scrape dynamic content. The package also contains a mini-DSL if you need to perform more complex page scraping tasks as well.

You can find both {htmlunit} and {htmlunitjars} at:

29 Apr 05:32

Art expedition

by Liz

The other day I took the afternoon off and went on an expedition with friends for Tara’s birthday. We went to the Museum of Craft and Design first – two exhibitions, one of large pieces that kind of explored different materials, and the other of ceramic sculptures by Wanxin Zhang. I liked both exhibits. In the first I especially felt happy looking at the giant mat of tangled pink thread by Mi-Kyoung Lee. It was so viscerally soft and fluffy and I thought about how you’d make it and the skill to spread it evenly and get an interesting texture. I could practically feel the process in my hands. The coral-like ceramic extrusions with light behind them were also pleasing – going back and forth and seeing how they changed depending on perspective.

The ceramic sculptures were great. Tara remarked that she doesn’t usually like representations of women made by male artists but these were great. I agreed – he not only avoided the usual annoyances but had something interesting to say in the sculptures. The female figures were profound. Here’s one called Mulan (Pussy Hat II),

mulan ceramic sculpture

I liked studying the textures of the ceramic & how they were finished in some places and then became rough and slabby and thumbed-looking.

The museum curator or docent giving us a tour mentioned that the sculptor often creates people in this pose with their hands somewhat held away form the body but at their sides and that it is homage to the Tank Man of Tiananmen Square as he carried his grocery bags. Once she pointed that out I really saw and felt it! Wow.

We had ice cream, then went to the Minnesota Street Project galleries which are spacious & beautiful. They were setting up a very fancy looking catered dinner in the central space and as we rolled around to all the galleries (keeping in mind we were hot, disheveled, and all 4 in powerchairs and I had my boots off, attractive pedicure in the breeze… perhaps a bit disreputable) we realized that the fancy dinner was for Christie’s which had some sort of special event coming up with the world’s fucking fanciest paintings, which I admired (Renoir, Monet, other fancypants stuff) Also caught a whole gallery of amazing photos by Louis Stettner and a Ferlinghetti exhibit which were mostly trash (but, fine, homage to the beats and hippies…. ok) The only good Ferlinghetti painting was 20K but… weirdly i could have more or less afforded some of the Stettner photos. Then I thought about, if I were going to buy something amazing yet might possibly be able to “afford” it, what would it be? (Answer: Something by Francesca Woodman and/or Sandow Birk.) Fortunately our cyborg bohemianism was welcomed by the fancypants gallery people and I did not (despite great temptation) steal any of the flower arrangements from the catering carts.

It was so lovely spending the day with friends despite that we all nearly died of heatstroke and the bad pavements of the Dogpatch.

crip crew

29 Apr 05:31

Moto G7 Play

by peter@rukavina.net (Peter Rukavina)

My Nextbit Robin phone gave up the ghost this spring: as an orphaned product, it hadn’t received software updates for several years and, perhaps because of this, as well due its aging battery, it started to do some annoying things. Like spontaneously restarting when the battery was below 25%. And not allowing me to make telephone calls because the “Phone” app kept crashing.

I was reluctant to replace it because, for most other intents and purposes, it was a perfectly acceptable Android phone that worked well and was pleasant in the hand.

But when a phone stops being able to be a phone, then it’s time to look elsewhere.

I am, I have found, constitutionally unable to conscience the notion of having a “flagship” phone in my pocket. Phones from OnePlus, Samsung, Google and others cost $1000 or more, and the idea of being responsible for not losing such an expensive thing in my day to day life (to say nothing of affording it in the first place) is anathema.

So on my recent trip to New England I stopped in at Best Buy, a store that, in the USA at least, has a wide selection of phones in its “unlocked phones” section of the store. I sampled phones by Sony, Nokia, and some of the brands-nobody-has-ever-heard-of, and my eyes started to settle on the Moto G7 Play.

Oliver’s been using the larger Moto G7 for the past few months and it’s served him well. I liked the feel of the smaller “Play” variant in my hand, and testing it out in Best Buy showed it to be zippy and capable and matching my Robin almost feature-for-feature (the only thing it lacked was NFC support, which I almost never used anyway on the Robin).

So I bought one. For $199 US. That’s the kind of phone price I can handle, both financially and constitutionally.

My specific model, for posterity, is the XT1952-4.

I’ve been using the phone every day for almost a month, and I really, really like it.

Pros

  • At 149 grams, it’s a gram lighter than my Nextbit Robin, and it’s about the same size. I like lightweight phones that fit easily in my hand.
  • It’s battery life, at least compared to my aging Robin, is amazing. For the last year I was ending the day with the Robin dead or almost dead; I rarely find the G7 below 50% battery by day’s end.
  • The fingerprint reader on the back is positioned in the right place for me, and is quick.
  • The Android is essentially “stock,” with no additional cruft, spam, launcher, etc.

Cons

  • For reasons I’m not sure whether to ascribe to the phone, to the Public Mobile (Telus) network I’m using it on, or a combination of the two, I’m getting more dropped calls and outbound calls that don’t complete. It’s not frequent or annoying enough to be a deal breaker, at least not yet.
  • The back of the phone is unusually slippery, which has proved not so much a problem in my hand as for the phone’s propensity to slide off the chair, bed, table, ottoman that I place it on. I’ve “solved” this by keeping it in my pocket more.
  • As a non-flagship phone with less horsepower, some of the UI animations aren’t as seamless as I’d like; for example rotating the phone from portrait to landscape can manifest some very obvious stuttering of the UI. This is more “not as smooth as butter” and not really into “so annoying as to be unusable” territory.
  • The phone has a 2018-style wide camera notch at the top rather than a 2019-style cutout, and I initially thought I would find this infuriating. But I don’t. Except for the placement of the clock relative to the rounded corner on the toolbar, which is a perpetual source of visual stress to me for its clunky “kerning.”

I’ll report back more after I’ve some more months of experience with the phone but, for the time being if you’re looking for an inexpensive very usable Android phone, I recommend you consider the Moto G7 Play.

29 Apr 05:29

Twitter Favorites: [ReneeStephen] I hereby declare the word microsites dead, and are forthwith to be known as smolwebs

Renée Stephen @ReneeStephen
I hereby declare the word microsites dead, and are forthwith to be known as smolwebs
29 Apr 05:29

Twitter Favorites: [Lesley_NOPE] https://t.co/rq9ShRP2Ro

29 Apr 05:28

Twitter Favorites: [CDNBaseballHOF] Arrived in the mail today. Our 2003 inductees Vancouver Asahi received their @canadapostcorp stamp this week and we… https://t.co/dm70V2JIb3

CDN Baseball HOF @CDNBaseballHOF
Arrived in the mail today. Our 2003 inductees Vancouver Asahi received their @canadapostcorp stamp this week and we… twitter.com/i/web/status/1…
29 Apr 05:27

Three Apple industrial designers to exit the company

by Bryson Masse
iPhone XS

The Wall Street Journal is reporting changes to Apple’s venerable industrial design team led by Jony Ive.

The report says three team members have decided to exit the company. Rico Zorkendorfer told the WSJ he was leaving to spend more time with his family. Daniele De Iuliis and Julian Hönig didn’t end up providing reasons to the WSJ.

The three were involved with the ID group at Apple, which was central to designing products from the iPhone to the original colourful iMacs in the 90s. Analyst Neil Cybart told the WSJ that the moves make sense as the company shifts to creating augmented reality and autonomous vehicle products.

But there is optimism with the change, happening in the middle of a changing business for the California-based iPhone maker.

“We have incredible new designers—a new generation,” Mr. Zorkendorfer said. “What we’ve been able to do the last few decades will continue. The talent is there.”

Source: Wall Street Journal

The post Three Apple industrial designers to exit the company appeared first on MobileSyrup.

29 Apr 05:26

Google Chrome 74 brings dark mode, Translate shortcut to Android

by Jonathan Lamont
Google Chrome

After hitting desktops with night mode earlier this week, Chrome 74 brings the dark to Android along with a new translate feature, accessibility options and more.

First and foremost, dark mode is officially here. You can enable it by turning on battery saver or, if your Android device has a dark mode toggle, turning that on. Alternatively, you can force it by enabling the ‘#enable-android-night-mode’ flag in ‘chrome://flags.’ However, this didn’t work for me — I still had to turn on battery saver to get dark mode. Your mileage may vary.

While it’s a welcome addition, at this point Chrome’s dark mode only affects the new tab page, tab switcher and settings. Websites still look normal, which means all-white pages are still white.

Google Chrome 74 dark mode

Hopefully, the Chrome team follows the lead of Safari and adds support for the ‘prefers-color-scheme: dark’ CSS media query, which requests sites use a dark mode.

Further, Chrome 74 adds a shortcut to the built-in Translate feature. Now, users can call up Translate at will by tapping it in the overflow menu.

Previously, the Translate bar only appeared when users went to a page that wasn’t in their language.

Google Chrome translate feature

Finally, Chrome now supports a new ‘prefers-reduced-motion’ CSS media query. Essentially, if you enable the Accessibility setting to remove animations, this media query makes it easier for sites to detect that and limit animations accordingly.

There are several smaller features as well, including new PDF annotation tools, under the hood improvements and the renaming of the data saver feature, now called Lite mode.

You can grab the update from the Play Store as it rolls out.

Source: Android Police

The post Google Chrome 74 brings dark mode, Translate shortcut to Android appeared first on MobileSyrup.

26 Apr 14:49

ME!

by peter@rukavina.net (Peter Rukavina)

The video for Taylor Swift’s ME! is a stunning visual tour de force that demands watching and rewatching. The effort expended on small details that are on screen for only a second or two is boggling.

The song itself is catchy, and has a great hook in “I’m the only one of me, baby that’s the fun of me.”

But the rest of the lyrics—“And you can’t spell ‘awesome’ without me,” “I know that I went psycho on the phone, I never leave well enough alone,” and even the “you’re the only one of you, baby, that’s the fun of you” corollary—seem lazy and made up on the fly.

I would happily trade half the visual razzmatazz for some effort to craft more cogent lyrics.

26 Apr 14:49

Realme 3 Pro FAQ

by Rajesh Pandey
Following the launch of the Realme 3 last month, Realme has now launched the Realme 3 Pro in India. The handset will take on the likes of the Redmi Note 7 Pro in India which is currently the most popular mid-range smartphone in the region. If you are interested in buying the Realme 3 Pro, check out our detailed FAQ which will answer all your questions surrounding the device. Continue reading →