Shared posts

23 Mar 21:04

Brexit: What's the f**k is going on?

mkalus shared this story from tomwalker78's YouTube Videos.

From: tomwalker78
Duration: 07:43

By taking back control the UK has shown that it's out of control.

For more info go to:

23 Mar 20:50

Why Apple AirPods Came to Be Everywhere :: GQ

by Volker Weber


AirPods have also altered the expectations of how increasingly complex headphones and intensely complex smartphones should work together, on your behalf. They’ve done what no other Bluetooth headphones ever had: make Bluetooth not suck (assuming you have an iPhone). They connect, immediately. They hiccup less. They require almost none of your attention for annoyances and instead deliver little moments that feel, to get a little Disney World here, delightful. They’re awkward and magical in equal measure.

If you have an iPhone and no AirPods, you are missing out.

More >

23 Mar 20:49

Zane Lowe on Why Apple Music Is in the Storytelling Business

by Federico Viticci

Speaking of Apple Music and Billie Eilish, Tim Ingham, writing at Music Business Worldwide, has an interview with Zane Lowe. It's a good interview that covers a range of topics from how Lowe builds relationships with artists to what differentiates Apple Music and what they see in Billie Eilish.

An artist like Billie Eilish thinks in sounds, she thinks in colors, she thinks in visuals, she thinks in collaborations, she thinks in all kinds of different forms of creativity. When you’re dealing with an artist like that, it opens all these other areas that you can help build things around.

With Billie, there’s color everywhere, this attitude and it’s like, ‘Wow, this is really interesting.’ At Apple, because of where we’ve all come from, we understand streaming, but [we’re thinking], ‘How can we make a streaming service that is deeper and more layered and speaks to the aspects of music we grew up loving?’

I don’t ever want to look back on my time in the streaming era and think, ‘Yeah man, great job at just building a utility.’

Functionality is so important; [a service] needs to work and it needs to be intuitive. But there should 100% be room for creative discovery and it should be 100% driven by the artists, or at least in collaboration with artists.

See also: this interview with Billie Eilish and her brother/co-writer Finneas and Zane Lowe from last month. It was originally posted on Beats 1 but you can also watch the YouTube video below.

→ Source:

23 Mar 07:27

Thoughts on Apple's Revised iPad Line

by Neil Cybart

In what has become something of a trend, Apple once again unveiled a few iPad strategy adjustments in March. This year’s changes include an update to the 7.9-inch iPad mini and altering the 10.5-inch iPad Pro to arrive at a lower-priced and rebranded 10.5-inch iPad Air. The best way to analyze these updates is to look at Apple’s broader iPad strategy and the significant amount of change that the product category has undergone in just the past two years.


iPad mini. The most noteworthy change to the iPad mini was that it received an update in the first place. The last time the iPad mini received an update was in September 2015. Over the subsequent three years, iPad mini sales have steadily declined and now represent a small fraction of overall iPad sales. As smartphone screen sizes increased, the market for a tablet with a 7.9-inch screen shrunk. Sales for the iPad mini won’t surpass record level put in years ago, a claim referred to as Peak iPad mini. However, there was likely still enough demand for a 7.9-inch iPad to warrant an update.

The most noticeable update to the iPad mini will be found on the performance front related to the A12 Bionic chip. The iPad mini 4 had an A8 chip. The new iPad mini also has an improved display and Apple Pencil support (1st generation). Apple maintained the $399 price for iPad mini while cutting entry-level storage in half to 64GB. In addition, Apple removed the number nomenclature, instead opting for the much simpler and cleaner “iPad mini.”

iPad Air. Apple positioned the new 10.5-inch iPad Air as the successor to the 9.7-inch iPad Air 2 that was discontinued back in early 2017. In reality, the new iPad Air is more of a 10.5-inch iPad Pro successor that had components removed in order to have a lower price. The new iPad Air retails for $499 while the 10.5-inch iPad Pro went for $649.

  • Primary addition (from the 10.5-inch iPad Pro): A12 Bionic chip

  • Primary subtractions (from the 10.5-inch iPad Pro): 12MP camera, quad speakers, ProMotion, less RAM, 4K video recording.

Another minor change includes Apple removing the 512GB capacity option.

Three Sales Phases

When looking at the broader iPad category, there have been three distinct sales phases over the years:

  1. Rocket launch

  2. Implosion

  3. Stabilization

Exhibit 1: iPad’s Three Sales Phases

iPad's There Sales Phases

Rocket launch. The iPad was Apple’s best-selling product out of the gate with 22M units sold in the first twelve months. It is going to be difficult for another Apple product to come close to achieving iPad’s early sales success. While there were likely a number of factors that came together to produce a perfect storm for iPad’s record launch, fascination with iOS on a large screen (the iPhone had a 3.5-inch screen when the iPad launched) and a thriving iOS app ecosystem provided plenty of fuel for the iPad rocket.

Implosion. iPad sales peaked at the end of 2013 at 74M unit sales on a trailing twelve months (TTM) basis. Three years later, the iPad sales runrate stood at 41M units. Three factors are behind the dramatic decline in sales: less demand for iPad mini, a longer upgrade cycle, and the broader iPad category being cannibalized by more capable iPhones.

Stabilization. The iPad business has been trending at a 44M annual unit sales run rate for the past two years. The combination of sales to new users and sales to existing users is roughly flat year-over-year. Apple’s decision to bifurcate the iPad line with more capable and powerful models at the high end and increasingly lower-priced models at the low end has played a major role in stabilizing sales. It also hasn’t hurt that the sales headwind associated with declining iPad mini demand has ended.

Current Line

The iPad line currently consists of five models and a few dozen SKUs when considering storage options and case colors.

  • iPad Pro (11-inch and 12.9-inch)

  • iPad Air (10.5-inch)

  • iPad (9.7-inch)

  • iPad mini (7.9-inch)

It may be easy to look at the five preceding models and conclude that Apple is aiming to copy the Mac line with a few “Pro” models at the top end and lower-priced models branded as “Air” and “mini” at the other end. Some may even think Apple is trying to recreate the 2x2 matrix Mac quadrant from the late 1990s in which Apple sold four Macs, two portables, and two desktops, targeting the consumer and professional markets.

However, there is one critical error in the preceding assumption.

Touch-based computing has blurred the line between consumer and professional devices. Each iPad model is used by a wide range of users. In addition to being a content consumption device, the iPad mini is utilized in various enterprise settings. Meanwhile, the 12.9-inch iPad Pro, combined with the Apple Pencil, can be either used for a wide range of content creation tasks or simply web browsing and content consumption. There isn’t one device that ultimately targets just consumer segments or enterprise use cases.

Instead, Apple’s iPad strategy seems to be following more of a hybrid approach, taking elements of both the Mac and iPhone lines.

In terms of nomenclature, there is no question that Apple is borrowing from the Mac. The MacBook Air is the best-selling and most popular Mac. The popularity is one reason why Apple decided to stick with the Air branding following last year’s update. Similarly, Apple is likely positioning the iPad Air at $499 to be one of the better-selling iPad models. Similar to the Mac mini, the iPad mini will then likely represent a smaller percentage of overall sales while handling a variety of enterprise use cases.

The strategy found with taking the 10.5-inch iPad Pro form factor and removing components and technology to lower the price and arrive at the 10.5-inch iPad Air is reminiscent of the iPhone SE strategy. The move to unveil the latest industrial design with the Pro models at the top is also something seen with the iPhone.

Borrowing from both the Mac and iPhone playbooks make sense when considering the iPad has a user base that measures in between that of Mac and iPhone. At end of the 2018, the iPhone, iPad, and Mac user bases were as follows:

Consumer Choice

One of the largest complaints facing the iPad line over the years has been the complexity and confusion in terms of the number of models available for purchase. Apple has done a few things to add clarity. Instead of keeping older models in the lineup at lower prices, management has moved to having a few new iPad models at prices ranging from $329 to $999. In addition, Apple has worked on reducing price gaps between models. The $250 price gap that had existed between the 10.5-inch iPad Pro and iPad mini 4 has been reduced to $100 with the new iPad Air and iPad mini.

  • iPad Pro (12.9-inch): $999

  • iPad Pro (11-inch): $799

  • iPad Air (10.5-inch): $499

  • iPad mini (7.9-inch): $399

  • iPad (9.7-inch): $329

There is no question that some customers use price to select the best iPad. Accordingly, the $329 iPad and $499 iPad Air will likely be strong sellers. In order for Apple to reach these lower prices, the company had to make some difficult product marketing decisions in terms of components, industrial design, and subsequently, Apple Pencil support. The non-Pro models work with Apple Pencil V1 while the Pro models are designed to work with Apple Pencil V2.

Another variable that may guide a customer’s buying decision is screen size. As with price, Apple has done a good job of covering the screen range from 7.9 inches to 12.9 inches.

  • iPad Pro 12.9-inch

  • iPad Pro 11-inch

  • iPad Air 10.5-inch

  • iPad 9.7-inch

  • iPad mini 7.9-inch

Apple continues to position the larger 9.7-inch iPad, instead of the new, smaller iPad mini, as the entry-level option. This is done because larger iPads have become vastly more popular than the iPad mini. Apple did not want to sacrifice that popularity just to have screen size correlate directly to price. In addition, the larger 9.7-inch iPad is marketed to educational institutions (special pricing brings the 9.7-inch iPad to $299).

Ready for WWDC

In recent years, the iPad line has undergone transformational changes. Apple management has not only bet on higher-priced, larger iPads with the Pro segment, but also doubled down on lower-priced iPads in an attempt to compete against Chromebooks and even hand-me-down iPhones.

From a unit sales perspective, the iPad mini’s best days are clearly behind it, and a $999 iPad Pro will likely end up representing a small fraction of overall iPad sales. However, from a hardware perspective, it’s hard to argue we aren’t looking at the strongest iPad line to date. Apple has spent the past three years expanding the iPad line in order to appeal to hundreds of millions of people.

This takes us to software - the missing link. All of the signs point to Apple getting the iPad line ready for new software features unveiled at this year’s WWDC. This week’s hardware updates cap off the first half of Apple’s two-part iPad show.

Receive my analysis and perspective on Apple throughout the week via exclusive daily updates (2-3 stories per day, 10-12 stories per week). Available to Above Avalon members. To sign up and for more information on membership, visit the membership page.

23 Mar 07:05

NAHBS staff pic(k)s.

by brandon

As many of you may or may not know, last Saturday our staff had the chance to take a field trip up to Sacramento and witness the wonder that is NAHBS (North American Handbuilt Bicycle Show.) We saw old friends, drooled all over new bikes, and greased many, many, palms along the way. Literally, we had greasy hands from the burger spot we hit just before entering the venue.

The show itself was nothing short of amazing. Artisan builders from as near as our neighborhood and as far as Japan, all in one space to show off the best of the best of whatever bicycle beauty they're able to conjure up with their own two hands. 

There were, of course, oodles of different awards being given out for number of categories...but there are simply none more prestigious than those of the coveted Mission Bicycle Company staff picks.

Let us begin... 

Nick's Pick: Weis Cycles "Super Magnesium" Track

Nick's pick for top prize at NAHBS is an unconventional (in more ways than one) build from Weis Cycles, based out of Brooklyn, NY. This is their signature Hammer Track frame, which has raised eyebrows for its asymmetrical rear triangle, but built out of an intriguiging new alloy – "super magnesium." 

Joe's Pick: Gaulzetti "Mama Duck" Track

One would be obliged to believe Joe picked his favorite bike of the show based purely off its name if we didn't have photo evidence of how next level the paint job was on this Gaulzetti track machine. Flaunting a gold disco ball-esque chainring and a #matchymatchy Silca pump, the Mama Duck looked like it was just as well suited for the art gallery as it was the velodrome.

Josh's Pick: Stinner "Lemond Homage" Road

The last two bikes in our staff picks were found at the same Team Dream/Mavic shared booth, which was a crowd pleaser in and of itself. Josh's pick of the pack is a modern steel frame roadie built by Stinner Frameworks of Santa Barbara, CA. The build pays homage to one of the most classic paint jobs ever (90's Lemond Team Z colorway) and spared no expense on the components set. This is one of those kinds of builds that makes you want to sell your car and put a deposit down on a new bike.

Brandon's Pick: Fat City Cycles "Slim Chance" Road

Far from new, Brandon's pick of the litter was a mega-rare Fat City Cycles "Slim Chance" absolutely dripping in vintage Mavic components – you see that starfish crank? Not a build for everyone, and in fact only 11 or so were made according to the little placard sitting below the bottom wheel. This one is for all the vintage heads out there.

23 Mar 07:05

Philosophers On a Physics Experiment that “Suggests There’s No Such Thing As Objective Reality”

Justin Weinberg, Daily Nous, Mar 22, 2019

MIT Technology Review recently published an article entitled “A quantum experiment suggests there’s no such thing as objective reality. Of course, the suggestion fell far short of a proof, but that didn't stop people from speculating. I personally fall into the 'no objective reality' camp, but not because of quantum physics. Anyhow, what's interesting about this set of short articles is that they make clear how important is the interpretation of any objective evidence. No data, no matter how concrete, speaks for itself; what it means depends on what we recognize it to be.

Web: [Direct Link] [This Post]
23 Mar 07:05

Who will really determine our response to climate change

by Gordon Price


Munich Re (the insurer’s insurer) may have more impact on society’s response to climate change than scientists and legislators.

From The Guardian:

Insurers have warned that climate change could make cover for ordinary people unaffordable after the world’s largest reinsurance firm blamed global warming for $24bn (£18bn) of losses in the Californian wildfires.

Ernst Rauch, Munich Re’s chief climatologist, told the Guardian that the costs could soon be widely felt, with premium rises already under discussion with clients holding asset concentrations in vulnerable parts of the state. …

After comparing observational data spanning several decades with climate models, the report concluded that the wildfires, which killed 85 people, were “broadly consistent with climate change”.

Nicolas Jeanmart, the head of personal insurance, general insurance and macroeconomics at Insurance Europe, which speaks for 34 national insurance associations, said the knock-on effects from rising premiums could pose a threat to social order. … 

“The sector is concerned that continuing global increases in temperature could make it increasingly difficult to offer the affordable financial protection that people deserve, and that modern society requires to function properly,” he said. …

Dr Ben Caldecott, the director of Oxford University’s sustainable finance programme, said: “Company directors and fiduciaries will ultimately be held responsible for avoidable climate-related damages and losses and urgently need to up their game to avoid litigation and liability.”

Munich Re has divested its large thermal coal holdings. However, it maintains some gas and oil investments.


23 Mar 07:05

2018 iPad Pro to Add Support for the Logitech Crayon in iOS 12.2

by Federico Viticci

In addition to the new iPad Air and iPad mini, it looks like Logitech's Crayon stylus, first introduced with the 6th generation iPad last year, will be compatible with the 2018 iPad Pro line too thanks to the upcoming iOS 12.2 software update. Jason Snell writes:

Over at 9to5 Mac, Zac Hall noticed that a few of us—at least myself and Nilay Patel from the Verge, and possibly others—have been passing along an interesting new iPad tidbit after meeting with Apple about the new iPad models this week. I realize that people may have missed the brief parenthetical in my Macworld story this week, so it’s worth restating here…

Logitech’s $70 Crayon, an interesting stylus that originally was available for education only and worked only with the sixth-generation iPad, will now be supported by all of Apple’s current iPad models. So not only do the new iPad Air and iPad mini work with the Crayon, but so does my 12.9-inch iPad Pro running a beta version of iOS 12.2, which should be released next week.

(I haven’t been able to test if earlier iPad Pro models will also add compatibility via this update, or if compatibility is limited to the 2018 and 2019 models.)

If you don't like the design of the new Apple Pencil and would rather use a thicker stylus based on the same drawing tech but that charges via Lightning, the Crayon is a very good alternative to Apple's device. Just keep in mind the differences between them.

→ Source:

23 Mar 07:05

What Happened Next, Apparently

by Dave Pollard

image by amira_a from flickr, via pixhere, cc by 2.0

What apparently happened was that among the eight humans who had seemingly gathered on the beach to watch the sunset, it was suddenly realized that there was no one. That nothing was real, or unreal. That there was only everything — everything apparently happening.

At first, nothing was said about this. There was just looking in awe at everything, that had always been there but never seen. This was not an awkward silence, as there was no one left to be awkward.

There was much smiling, but not by anyone, or towards anyone or anything in particular, since there was nothing particular to smile at.

No one remarked about how astonishing it was that everything could not have been seen before when it was now so obvious, because there was no one to remark about it, and never had been. Everything had seemingly changed, but it was actually quite ordinary, and nothing had actually changed at all. Just some illusions had disappeared.

The behaviour of the humans did not seem to change at all. As before, the eight humans did what they were conditioned to do, the only things they could have done given the circumstances of the moment, or so it appeared. A careful observer might have detected more (or fewer) far-away looks, less urgency, less anxiety, but the two couples still acted like couples, and the others still acted very much as they seemed to have before, even though there was no longer anyone purporting to inhabit these humans’ bodies.

There was no inclination to start a movement to tell people how awesome it was to see everything, and how tragic it was that, being people, they could never hope to see it. There was no need to do anything. It was just suddenly obvious, but not worth talking about, and besides, there was no one to talk about it, or talk about it with.

None of this happened for a reason. There was nothing special about these particular eight humans, or where they were, or what they were doing, or had been doing in past, when it was realized there was no one. It just happened, apparently. Nothing remarkable at all.

When nothing is real, anything is possible.

23 Mar 07:05

NetNewsWire Sync Diary #1: It Starts with NSBezierPath

In my Vesper Sync Diary I wrote about designing and writing both sides of a syncing system. I could make syncing work however I wanted it to work, and I had control of all of it.

Which is a great way to go. But it’s also terrible, because it means writing and running a server.

With NetNewsWire, I’m lucky in that there are existing systems — such as Feedbin, Feedly, Newsblur, and others — to use. I only have to write the client side.

I’m starting with Feedbin as the first syncing system. The first one is the hardest, of course — since there are a bunch of things the app needs for syncing that can be written once, but that do still need to be written.

How syncing will work

Users will add accounts to NetNewsWire — much as you do in Mail. Each account will have its own section in the sidebar (again, like Mail), which means you could have an On My Mac and a Feedbin account both active at the same time. (Just like you might have work and home email accounts active at the same time in Mail.)

You could even have multiple On My Mac and multiple Feedbin accounts. And, later, accounts with other systems.

When you make a change to the structure of your feeds and folders, the app will communicate immediately with the syncing system to perform the appropriate action. When you make a change to the metadata of an article (such as read/unread/starred status), the action will be coalesced and periodically (though fairly quickly) sent with other actions to the syncing system.


So I got started working on this, and almost immediately I found myself doing some custom drawing using NSBezierPath (which is a thing you use to fill and stroke lines, rectangles, circles, and other shapes).

Which sounds crazy, right? NetNewsWire has almost no custom drawing — in fact, before this, the only custom drawing was for the unread indicator (a circle).

And — bigger point — what does drawing have to do with syncing, anyway?

Well. There’s UI. Of course there’s UI — there’s always UI.

Users need to be able to add and edit their sync accounts, and I decided to do it the same way (surprise!) as in Mail — because this way the UI will be familiar to people who use Mail, which is surely a lot of Mac users.

I added a preferences pane called Accounts, and it uses the system-supplied icon for this exact case, and it has a thing like this on the left side…

Screenshot of the table and buttons on left side of the Account preferences


Screenshot, in dark mode, of the table and buttons on left side of the Account preferences

Looks much like Mail, right? (Not exactly the same, but it’s not important to make it exactly the same.)

The big space on top is a standard NSTableView, and the two buttons underneath are standard gradient buttons.

But what about that bordered gray thing to the right of the buttons? It has a background color and a border on top, right, and bottom edges — but not on the left edge, because that border belongs to the button.

There are a bunch of different ways I could have composed this whole thing, but in the end I just made that a custom view — AccountsControlsBackgroundView.swift — that draws its background and draws those three lines as a border.

(There’s probably an even simpler way using just one NSBezierPath instead of three. Or even a few NSBoxes used as lines. Whatever.)

My point isn’t that there’s anything interesting about this drawing — it’s that, when you go to work on a feature like syncing, the actual meat of the feature (communicating with sync servers) is often very small and easy.

User interface — design and implementation — tends to take up the bulk of the time, by far. By an amount that would surely surprise the heck out of people who don’t make apps.

In other words, it should never be surprising that work on a feature like syncing starts with an NSBezierPath.

Next step

What you see in the screenshots above is as far as I’ve gotten so far. The table view is empty; the buttons aren’t hooked up to anything.

The next step is to make that table view show a list of accounts, which, at the moment, is just the default On My Mac account. It should show the name and type of the account, along with an icon which represents the fact that it’s local-only and not synced.

23 Mar 07:05

A Quick and Tidy Look at the 2018 GSS

by Kieran Healy

The data from the 2018 wave of the General Social Survey was released during the week, leading to a flurry of graphs showing various trends. The GSS is one of the most important sources of information on various aspects of U.S. society. One of the best things about it is that the data is freely available for more than forty years worth of surveys. Here I’ll walk through my own quick look at the data, in order to show how R can tidily manage data from a complex survey. I decided to revisit a topic that came up a few years ago, in the New York Times and elsewhere, regarding the beliefs of young men about gender roles. The idea was that several surveys seemed to point to some increasing conservatism on this front. The GSS has a longstanding question named fefam:

It is much better for everyone involved if the man is the achiever outside the home and the woman takes care of the home and family.

Respondents may answer that they Strongly Agree, Agree, Disagree, or Strongly Disagree with the statement (as well as refusing to answer, or saying they don’t know).

We’ll grab the GSS Cumulative Data File in Stata’s .dta format, and work from there in R, using the Tidyverse tools, Thomas Lumley’s Survey package, and Greg Freedman Ellis’s srvyr package, which provides a set of wrappers to survey functions that allow them to be piped and worked with in a way familiar to tidyverse residents.





We also load some libraries that aren’t strictly needed, but that will make our plots conform to the house style.



This is a quick-and-dirty function we’ll use to clean some age group labels we’ll create in a minute.

convert_agegrp <- function(x){
    x <- gsub("\\(", "", x)
    x <- gsub("\\[", "", x)
    x <- gsub("\\]", "", x)
    x <- gsub(",", "-", x)
    x <- gsub("-89", "+", x)
    regex <- "^(.*$)"
    x <- gsub(regex, "Age \\1", x)

my_colors <- _function (palette = "cb"){
    cb.palette <- c("#000000", "#E69F00", "#56B4E9", "#009E73", 
        "#F0E442", "#0072B2", "#D55E00", "#CC79A7")
    rcb.palette <- rev(cb.palette)
    bly.palette <- c("#E69F00", "#0072B2", "#000000", "#56B4E9", 
        "#009E73", "#F0E442", "#D55E00", "#CC79A7")
    if (palette == "cb") 
    else if (palette == "rcb") 
    else if (palette == "bly") 
    else stop("Choose cb, rcb, or bly only.")

The names of some of the weighting and stratifying variables.

cont_vars <- c("year", "id", "ballot", "age")

cat_vars <- c("race", "sex", "fefam")

wt_vars <- c("vpsu",
             "formwt",              # weight to deal with experimental randomization
             "wtssall",             # weight variable
             "sampcode",            # sampling error code
             "sample")              # sampling frame and method

vars <- c(cont_vars, cat_vars, wt_vars)

Load in the data to gss_all and create a small subset of it, gss_sm containing just the variables of interest.

gss_all <- read_stata("data/GSS7218_R1.DTA")

gss_sm <- gss_all %>%

Let’s take a look at it:


## # A tibble: 64,814 x 14
##     year    id      ballot   age    race     sex       fefam        vpsu
##    <dbl> <dbl>   <dbl+lbl> <dbl> <dbl+l> <dbl+l>   <dbl+lbl>   <dbl+lbl>
##  1  1972     1 NA(i) [IAP]    23 1 [whi… 2 [fem… NA(i) [IAP] NA(i) [IAP]
##  2  1972     2 NA(i) [IAP]    70 1 [whi… 1 [mal… NA(i) [IAP] NA(i) [IAP]
##  3  1972     3 NA(i) [IAP]    48 1 [whi… 2 [fem… NA(i) [IAP] NA(i) [IAP]
##  4  1972     4 NA(i) [IAP]    27 1 [whi… 2 [fem… NA(i) [IAP] NA(i) [IAP]
##  5  1972     5 NA(i) [IAP]    61 1 [whi… 2 [fem… NA(i) [IAP] NA(i) [IAP]
##  6  1972     6 NA(i) [IAP]    26 1 [whi… 1 [mal… NA(i) [IAP] NA(i) [IAP]
##  7  1972     7 NA(i) [IAP]    28 1 [whi… 1 [mal… NA(i) [IAP] NA(i) [IAP]
##  8  1972     8 NA(i) [IAP]    27 1 [whi… 1 [mal… NA(i) [IAP] NA(i) [IAP]
##  9  1972     9 NA(i) [IAP]    21 2 [bla… 2 [fem… NA(i) [IAP] NA(i) [IAP]
## 10  1972    10 NA(i) [IAP]    30 2 [bla… 2 [fem… NA(i) [IAP] NA(i) [IAP]
## # … with 64,804 more rows, and 6 more variables: vstrat <dbl+lbl>,
## #   oversamp <dbl>, formwt <dbl>, wtssall <dbl+lbl>, sampcode <dbl+lbl>,
## #   sample <dbl+lbl>

The read_stata() function has carried over the labeling information from Stata, which might be useful to us under other circumstances. Columns with, e.g., <dbl+lbl> designations behave like regular <dbl> (double-precision floating point numbers), but have the label information as metadata.

Now we clean up gss_sm a bit, discarding some of the label and missing value information we don’t need. We also create some new variables: age quintiles, a variable flagging whether a respondent is 25 or younger, recoded fefam to binary “Agree” or “Disagree” (with non-responses dropped).

qrts <- quantile(as.numeric(gss_sm$age), na.rm = TRUE)

quintiles <- quantile(as.numeric(gss_sm$age), probs = seq(0, 1, 0.2), na.rm = TRUE)

gss_sm <- gss_sm %>%
    modify_at(vars(), zap_missing) %>%
    modify_at(wt_vars, as.numeric) %>%
    modify_at(cat_vars, as_factor) %>%
    modify_at(cat_vars, fct_relabel, toTitleCase) %>%
    mutate(ageq = cut(x = age, breaks = unique(qrts), include.lowest=TRUE),
           ageq =  fct_relabel(ageq, convert_agegrp),
           agequint = cut(x = age, breaks = unique(quintiles), include.lowest = TRUE),
           agequint = fct_relabel(agequint, convert_agegrp),
           year_f = droplevels(factor(year)),
           young = ifelse(age < 26, "Yes", "No"),
           fefam = fct_recode(fefam, NULL = "IAP", NULL = "DK", NULL = "NA"),
           fefam_d = fct_recode(fefam,
                                Agree = "Strongly Agree",
                                Disagree = "Strongly Disagree"),
           fefam_n = car::recode(fefam_d, "'Agree'=0; 'Disagree'=1;", as.factor=FALSE))

gss_sm$compwt <- with(gss_sm, oversamp * formwt * wtssall)
gss_sm$samplerc <- with(gss_sm, ifelse(sample %in% 3:4, 3,
                         ifelse(sample %in% 6:7, 6,

Now we need to take this data and use the survey variables in it, so we can properly calculate population means and errors and so on. We use svyr’s wrappers to survey for this:

options(survey.lonely.psu = "adjust")

gss_svy <- gss_sm %>%
    filter(year > 1974) %>%
    drop_na(fefam_d) %>%
    mutate(stratvar = interaction(year, vstrat)) %>%
    as_survey_design(id = vpsu,
                     strata = stratvar,
                     weights = wtssall,
                     nest = TRUE)

Now gss_svy is a survey object:

## Stratified 1 - level Cluster Sampling design (with replacement)
## With (3585) clusters.
## Called via srvyr
## Sampling variables:
##  - ids: vpsu
##  - strata: stratvar
##  - weights: wtssall
## Data variables: year (dbl), id (dbl), ballot (dbl+lbl), age (dbl+lbl), race (fct), sex (fct), fefam
##   (fct), vpsu (dbl), vstrat (dbl), oversamp (dbl), formwt (dbl), wtssall (dbl), sampcode (dbl),
##   sample (dbl), ageq (fct), agequint (fct), year_f (fct), young (chr), fefam_d (fct), fefam_n
##   (dbl), compwt (dbl), samplerc (dbl), stratvar (fct)

We’re in a position to draw some pictures of fefam trends now.

out_ff <- gss_svy %>%
    group_by(year, sex, young, fefam_d) %>%
    summarize(prop = survey_mean(na.rm = TRUE, vartype = "ci"))


## # A tibble: 168 x 7
##     year sex    young fefam_d   prop prop_low prop_upp
##    <dbl> <fct>  <chr> <fct>    <dbl>    <dbl>    <dbl>
##  1  1977 Male   No    Agree    0.726    0.685    0.766
##  2  1977 Male   No    Disagree 0.274    0.234    0.315
##  3  1977 Male   Yes   Agree    0.551    0.469    0.633
##  4  1977 Male   Yes   Disagree 0.449    0.367    0.531
##  5  1977 Female No    Agree    0.674    0.639    0.709
##  6  1977 Female No    Disagree 0.326    0.291    0.361
##  7  1977 Female Yes   Agree    0.415    0.316    0.514
##  8  1977 Female Yes   Disagree 0.585    0.486    0.684
##  9  1985 Male   No    Agree    0.542    0.496    0.587
## 10  1985 Male   No    Disagree 0.458    0.413    0.504
## # … with 158 more rows

facet_names <- c("No" = "Age Over 25 when surveyed", "Yes" = "Age 18-25 when surveyed")

p <- ggplot(subset(out_ff, fefam_d == "Disagree"),
            aes(x = year, y = prop,
                ymin = prop_low, ymax = prop_upp,
                color = sex, group = sex, fill = sex)) +
    geom_line(size = 1.2) +
    geom_ribbon(alpha = 0.3, color = NA) +
    scale_x_continuous(breaks = seq(1978, 2018, 4)) +
    scale_y_continuous(labels = scales::percent_format(accuracy = 1)) +
    scale_color_manual(values = my_colors("bly")[2:1],
                       labels = c("Men", "Women"),
                       guide = guide_legend(title=NULL)) +
    scale_fill_manual(values = my_colors("bly")[2:1],
                      labels = c("Men", "Women"),
                      guide = guide_legend(title=NULL)) +
    facet_wrap(~ young, labeller = as_labeller(facet_names),
               ncol = 1) +
    coord_cartesian(xlim = c(1977, 2017)) +
    labs(x = "Year",
         y = "Percent Disagreeing",
         subtitle = "Disagreement with the statement, ‘It is much better for\neveryone involved if the man is the achiever outside the\nhome and the woman takes care of the home and family’",
         caption = "Kieran Healy\nData source: General Social Survey") +
    theme(legend.position = "bottom")

ggsave("figures/fefam_svy.png", p, width = 8, height = 6, dpi = 300)

Let’s take a closer look at the age breakdown.

out_ff_agequint <- gss_svy %>%
    group_by(year, agequint, fefam_d) %>%
    summarize(prop = survey_mean(na.rm = TRUE, vartype = "se")) %>%
    mutate(end_label = if_else(year == max(year),
                               socviz::prefix_strip(as.character(agequint), "Age "), NA_character_),
           start_label = if_else(year == min(year),
                                 socviz::prefix_strip(as.character(agequint), "Age "), NA_character_))
## Warning: Factor `agequint` contains implicit NA, consider using
## `forcats::fct_explicit_na`

p <- ggplot(subset(out_ff_agequint, fefam_d == "Disagree"),
            aes(x = year, y = prop, ymin = prop - prop_se, ymax = prop + prop_se,
                color = agequint, group = agequint, fill = agequint)) +
    geom_line(size = 1.2) +
    geom_ribbon(alpha = 0.3, color = NA) +
    scale_x_continuous(breaks = seq(1978, 2018, 4)) +
    scale_y_continuous(labels = scales::percent_format(accuracy = 1)) +
    scale_fill_manual(values = man_cols) +
    scale_color_manual(values = man_cols) +
    guides(fill = FALSE, color = FALSE) +
    annotate("text", x = 1974.5, y = 0.58, label = "Age at time\nof survey", size = 3, hjust = 0, fontface = "bold", lineheight = 0.9) +
    annotate("text", x = 2020.8, y = 0.95, label = "Age at time\nof survey", size = 3, hjust = 1, fontface = "bold", lineheight = 0.8) +
    geom_label_repel(aes(label = end_label), color = "white", nudge_x = 1) +
    geom_label_repel(aes(label = start_label), color = "white", nudge_x = -1) +
    coord_cartesian(xlim = c(1976, 2019)) +
    labs(x = "Year",
         y = "Percent",
         title = "Changing Attitudes to Gender Roles, by Age Quintiles",
         subtitle = "Percent Disagreeing with the statement, ‘It is much better for everyone involved if the man is the\nachiever outside the home and the woman takes care of the home and family’",
         caption = "Kieran Healy\nData source: General Social Survey. Shaded ranges are population-adjusted standard errors for each age group.") +
    theme(legend.position = "right")

ggsave("figures/fefam_age_quin_svy.png", p, height = 7, width = 12, dpi = 300)

## Warning: Removed 100 rows containing missing values (geom_label_repel).
## Warning: Removed 100 rows containing missing values (geom_label_repel).

Finally, we can make a plot to get a sense of generational replacement and cohort effects. We’ll make two panels. First, a comparison of more or less the same cohort (though not of course the same individuals): these are people who answered the fefam question in 1977 when they were aged 18-25 and those who answered in 2018 and were aged 63 or older. We’ll also look at two very different cohorts: people who were over 63 in 1977, and people who were aged 18-25 in 2018.

cohort_comp <- gss_svy %>%
    filter(year %in% c(1977, 2018) &
           agequint %in% c("Age 18-29", "Age 63+")) %>%
    mutate(cohort = interaction(agequint, year),
           cohort = droplevels(cohort)) %>%
    group_by(cohort, fefam) %>%
    summarize(prop = survey_mean(na.rm = TRUE, vartype = "se")) %>%
    mutate(cohort = fct_relabel(cohort, ~ gsub("\\.", " in ", .x)),
           cohort = factor(cohort,
                           levels = c("Age 18-29 in 2018", "Age 63+ in 1977",
                               "Age 18-29 in 1977", "Age 63+ in 2018"),
                           ordered = TRUE),
           compare = case_when(cohort %in% c("Age 18-29 in 1977",
                                          "Age 63+ in 2018") ~ "Comparing Approximately the Same Cohort in 1977 and 2018",
                            cohort %in% c("Age 18-29 in 2018",
                                          "Age 63+ in 1977") ~ "Comparing the Old in 1977 vs the Young in 2018"),
           end_label = if_else(fefam == "Strongly Disagree",
                               socviz::prefix_strip(as.character(cohort), "Age "), NA_character_))

p <- ggplot(cohort_comp,
            aes(x = fefam, y = prop, group = cohort,
                color = cohort, fill = cohort, ymin = prop - prop_se, ymax = prop + prop_se)) +
    geom_point(size = 3) + geom_line(size = 1.2) +
    geom_ribbon(alpha = 0.2, color = NA) +
    scale_color_manual(values = my_colors()) +
    scale_fill_manual(values = my_colors()) +
    guides(fill = FALSE, color = FALSE) +
    scale_y_continuous(labels = scales::percent_format(accuracy = 1)) +
    geom_label_repel(aes(label = end_label), fill = "white",
                     size = 2.2, segment.colour = NA, nudge_x = 0.6) +
    facet_wrap(~ compare) +
    labs(y = "Percent", x = NULL,
         title = "Generational Replacement, or, People Don't Change Much, They Just Get Old",
         subtitle = "Responses to the statement ‘It is much better for everyone involved if the man is the\nachiever outside the home and the woman takes care of the home and family’",
         caption = "Kieran Healy\nData source: General Social Survey. Shaded ranges are population-adjusted standard errors for each age group.")

ggsave("figures/fefam_age_quin_svy_synth.png", p, height = 7, width = 13, dpi = 300)

## Warning: Removed 12 rows containing missing values (geom_label_repel).

23 Mar 07:04

SUMO A/B Experiments

by Madalina

This year the SUMO team is focused on learning what to improve on our site. As part of that, we spent January setting up for A/B testing and last week we ran our first test!

The goal of the test was to run a series of experiments on individual Knowledge Base articles to:

  • Improve navigation from KB article to KB article (in-article suggestions)
  • Improve design of KB articles to ensure users better understand content and can engage with content faster

The two tests we are running are trying a bunch of different things, such as screengrabs, video clips, highlights, better feedback options on articles, and better navigation.

Version A: Breadcrumbs

  • Screengrabs
  • Ratings at different parts of the page
  • Highlights
  • On both experiments we have a section of related articles at the bottom.



A breadcrumb menu should make it clearer to users where they are.





Feedback points through up/down icons with a follow up question to understand to allow for more feedback.





Highlights in the text to help the user see the important areas.


Version B: Hamburger menu – Categories

  • One rating at the end of the page
  • No highlights in text
  • On both experiments we have a section of related articles at the bottom.


Hamburger menu to allow for users to focus on the content not the menu.





Drop down to see wider menu.




The test will run for the next 2-3 weeks and we will report back on here and our weekly SUMO meeting on the results and next steps.

The test is currently serving for 50% of visitors and you can ‘maybe’ see the tests by going here or here.

SUMO staff team

23 Mar 07:03

B.C. Supreme Court says having a phone in sight not distracted driving

by Brad Bennett
distracted driving

A British Columbian Supreme Court Judge ruled on March 1st that the “mere presence of a cell phone within sight of a driver is not enough to secure a conviction,” according to court documents from the ruling. 

This case sets a precedent in B.C. and possibly the rest of Canada that merely having your phone or some other kind of electronic device on the seat of your car within line of sight doesn’t constitute a distracted driving charge.

It’s still illegal to “use” your phone while driving, according to section 3.1 of the B.C Motor Vehicle Act.

B.C.’s Traffic Court initially found Philip Partridge guilty. He then brought the case before a B.C. Supreme Court judge and won, according to Global News.

A police officer charged Partridge with distracted driving when the officer saw him looking down.

When the officer charged him his phone was wedged in the passenger seat, according to the court documents, but he was never actually seen using it.

If drivers want to use their phones in B.C. and they’re not legally parked they have to make sure “that is configured and equipped to allow hands-free use in a telephone function, is used in a hands-free manner and is used in accordance with the regulations, if any,” according to the B.C. Motor Vehicle Act.

While that line of the law is very vague, it means you can have your phone mounted to the dashboard of your vehicle, but you can’t physically interact with it.

Failure to comply with these rules nets you a $346 fine in B.C. and three penalty points.

Source: Supreme Court of British Columbia, Global News

The post B.C. Supreme Court says having a phone in sight not distracted driving appeared first on MobileSyrup.

23 Mar 07:03

Panama Canal

mkalus shared this story from

Once they selected the other proposal, we could have kept shopping ours around, but we would had to modify it include an aqueduct over their canal, which would be totally unreasonable.
23 Mar 07:03

Zoning Walls Going Up

by Gordon Price
mkalus shared this story from Price Tags.


By the post-election decisions being made by some of the smaller, more affluent municipalities in Metro, the messages seem to be: no more density, no more height, no more affordable housing (and, rarely stated but assumed: the people who might live in it if they come from ‘outside’).

In North Vancouver District, as previously reported in PT:

District of North Vancouver council has spiked another affordable housing project, this time before plans for it were released to the public.

Council voted behind closed doors in January to terminate a proposal from the non-profit Hollyburn Family Services Society for a 100-unit, all-below market rental building on a piece of district-owned land on Burr Place.

In Port Moody:

A proposal to build 45 townhomes on six properties along St. George Street in Port Moody is “far too dense,” with not enough green space, said city councillors who rejected the project at their meeting last Tuesday. …

Mayor Rob Vagramov criticized the proposal for being too dense even though it’s located in Port Moody’s Transit Oriented Development (TOD) zone, which encourages higher density living.

In White Rock:

Brent Toderian comments here.


Leaving aside issues of fairness, openness and good planning, small communities failing to take their share of growth, particularly in relation to the Frequent Transit Network, assume that other parts of the region will take commensurately more, even as more vehicle traffic is generated as a consequence.  (Irony altert: one of the most frequent arguments against denser development is the assumed traffic it will generate.)

23 Mar 07:02

Why Python uses 0-based indexing

by Guido van Rossum
This is a repost of something I wrote on Google Plus long ago, in October 2013. Thanks to for reminding me of it before G+ goes down for good!

I was asked on Twitter why Python uses 0-based indexing, with a link to a new (fascinating) post on the subject ( I recall thinking about it a lot; ABC, one of Python's predecessors, used 1-based indexing, while C, the other big influence, used 0-based. My first few programming languages (Algol, Fortran, Pascal) used 1-based or variable-based. I think that one of the issues that helped me decide was slice notation.

Let's first look at use cases. Probably the most common use cases for slicing are "get the first n items" and "get the next n items starting at i" (the first is a special case of that for i == the first index). It would be nice if both of these could be expressed as without awkward +1 or -1 compensations.

Using 0-based indexing, half-open intervals, and suitable defaults (as Python ended up having), they are beautiful: a[:n] and a[i:i+n]; the former is long for a[0:n].

Using 1-based indexing, if you want a[:n] to mean the first n elements, you either have to use closed intervals or you can use a slice notation that uses start and length as the slice parameters. Using half-open intervals just isn't very elegant when combined with 1-based indexing. Using closed intervals, you'd have to write a[i:i+n-1] for the n items starting at i. So perhaps using the slice length would be more elegant with 1-based indexing? Then you could write a[i:n]. And this is in fact what ABC did -- it used a different notation so you could write a@i|n.(See

But how does the index:length convention work out for other use cases? TBH this is where my memory gets fuzzy, but I think I was swayed by the elegance of half-open intervals. Especially the invariant that when two slices are adjacent, the first slice's end index is the second slice's start index is just too beautiful to ignore. For example, suppose you split a string into three parts at indices i and j -- the parts would be a[:i], a[i:j], and a[j:].

So that's why Python uses 0-based indexing.
22 Mar 18:00

Apple Revamps Browse Tab in Apple Music to Surface More Content

by Ryan Christoffel

Today Apple has rolled out an update to the Browse tab in Apple Music, which all users should see soon. The new Browse tab surfaces a lot more content up front without requiring tapping through other menus first; it does, however, retain the same basic design language and feel as before.

The new Browse tab starts off the same as it always has, with a collection of featured banners up top to highlight new releases, Up Next artists, or newly updated playlists. After that is where things are different though: currently, the second section in Browse features Apple's Daily Top 100 playlists, followed by thematic sections like Weekend Warrior and Visionary Women, then Just Updated, Hot Tracks, and New Music, all of which come before the familiar More to Explore section where you can visit dedicated Genres, Moods, Top Charts, and Music Videos pages. Following that list of other pages, there are even more curated sections in Browse: We're Loving, Get Down Tonight, On Beats 1, and Coming Soon.

Several of the newly surfaced sections of Browse seem particularly relevant to the weekend, or to a specific culturally relevant topic, so it'll be interesting to see how often Apple's editorial team updates Browse with new sections to explore. The tab was refreshed regularly before, but it contained much less content than it does now, so there was less reason to check it out often. Now, however, it could become a near-daily destination if Apple updates it often enough, similar to the App Store's Today tab and Apple News' Digest tab.

Exposing more content from Apple's editorial team and making it more accessible to users is a good thing. Personally, the one drawback of this change for me is that because there are so many sections inside Browse, it can be more cumbersome to find my favorite sections. For example, if someone visited the Genres screen a lot, they now have to do a lot more scrolling to get to that option. Ultimately, this is the same basic problem I've had with Apple Music's For You tab for years: amidst the wealth of content available, only a select few sections are my favorite, but I currently have to scroll through a lot of content I don't care about to find those sections. My biggest wish for Apple's Music app is that it would enable custom reordering of the For You and Browse tabs so that users can put the sections they care about up top, similar to what's possible in the third-party client Soor.

Support MacStories Directly

Club MacStories offers exclusive access to extra MacStories content, delivered every week; it's also a way to support us directly.

Club MacStories will help you discover the best apps for your devices and get the most out of your iPhone, iPad, and Mac. Plus, it's made in Italy.

Join Now
22 Mar 17:57

Write what you know. (But what if all you know is the inside of your own brain?)

by Josh Bernoff

They tell fiction authors to “write what you know.” The same obviously applies to non-fiction. But it’s all too easy to go from that to “Write about yourself” — especially when it comes to self-help books. If you know about marketing strategy, write about marketing strategy. If you know about startups, write about startups. Just … Continued

The post Write what you know. (But what if all you know is the inside of your own brain?) appeared first on without bullshit.

22 Mar 17:57

The Case of the Late-2012 iMacs

by Stephen Hackett

The recent iMac updates brought additional power and flexibility to Apple's all-in-one desktop, but didn't redesign or modernize the iMac as we've known it for many years.

As the 21.5- and 27-inch machines are here to stay for at least a while longer, I thought it would be a good time to look back at the first of their kind, introduced at a press event in October 2012. You probably can't tell if the press image above is from 2012 or 2019.

We Gotta Go Back in Time

Before we get to that 2012 event, we need to roll the clock back a little further to August 2007, when Steve Jobs unveiled the first aluminum iMacs. These machines came in 20- and 24-inch variants, keeping the 16:10 aspect ratio from the white iMacs before them, but now included glossy displays complete with cover glass.

Late 2006 vs. Mid 2007 iMacs

Late 2006 vs. Mid 2007 iMacs

Apple was rightfully proud of the design, as this language from its website indicated:

iMac sets new standards for elegance and power. It packs a complete, high-performance computer into its all-in-one design. With its anodized aluminum frame and glass cover, it’s striking to behold. The glossy widescreen display — available in 20- and 24-inch sizes — makes photos and movies come alive with rich color. The use of recyclable glass and aluminum makes iMac friendlier to the environment, too.

It was one of those times when a new Apple product instantly made the old one look old, a trick Apple would repeat with the Late 2012 machines.

Two years later, in October 2009, Apple redesigned the iMac again. This time, the materials stayed the same: the front of the iMac was still carved out of aluminum (and now the back was too, as opposed to the black plastic used on the old design), and the screens were still covered in glass. However, the new screens used LED backlighting and IPS technology for better brightness and viewing angles. And, of course, they were in the now-familiar 21.5- and 27-inch configurations, using a 16:9 aspect ratio.

2009 iMacs

2009 iMacs

Apple raved about the design on its website, and for good reason. The more modern aspect ratio breathed new life into the machine, but the company wasn't done quite yet.

Thin Is In

Finally, we can talk about the Late 2012 iMacs. In a special press event, Phil Schiller took the stage to announce some big changes to the desktop machines.

Sometimes a picture is worth 1,000 words.

Not pictured: the giant hump at the back of the 2012 design.

Not pictured: the giant hump at the back of the 2012 design.

For this revision, the iMac received faster processors as expected, but to hear Apple tell it, they remade the entire machine:

Creating the stunningly thin design of the new iMac took some equally stunning feats of technological innovation. We refine, re-imagined, or re-engineered everything about it from the inside out. The result is an elegant, all-in-one computer that's as much a work of art as it is state of the art.

Flowery language aside, the design really was impressive. In addition to some of the obvious changes like ditching the SuperDrive that had graced the right side of the iMac since the iMac G5 days, Apple really dove into the machine's components to make the edges just 5mm thick.

A lot of work went into the screen. The new LCD was 5mm thinner then before, and Apple eliminated the 2mm air gap between it and the cover glass by laminating them together, something Schiller said hadn't been done with a screen of this size before this product. A nice side effect of this work was fewer reflections were created, making the new iMac easier to use in more environments.

The majority of thick components were bunched together near the foot's mounting point, but that thin edge took an advanced manufacturing technique named friction-stir welding to attach the chin to the back case. This made the enclosure both seamless and strong. Apple did its best to minimize the hump at the back of the case, but it does make an appearance in this media image:

This is a 2019 iMac, but it doesn't really matter.

This is a 2019 iMac, but it doesn't really matter.

It's What's Inside That Counts

The thicker aluminum iMacs included an access door under the chin for upgrading RAM. The thin iMacs didn't have any room for that, so Apple added a memory access door to the back of the machine, but only on the 27-inch models, as noted by this support article:

Memory is not removable by users on iMac (21.5-inch, Late 2012), iMac (21.5-inch, Late 2013), iMac (21.5-inch, Mid 2014), iMac (21.5-inch, 2017), and iMac (Retina 4K, 21.5-inch, 2017). If the memory in one of these computers needs repair service, contact an Apple Retail Store or Apple Authorized Service Provider. If you’d like to upgrade the memory in one of these models, an Apple Authorized Service Provider can help. Before you schedule an appointment, confirm that the specific Apple Authorized Service Provider offers memory upgrade services.

This got under my skin back in 2012, and it still bothers me. If you have a 21.5-inch iMac, the RAM is sealed into an aluminum and glass tomb.

I should also note that these iMacs were the first outfitted with a Fusion Drive, marrying an SSD to a spinning hard drive for the best of both worlds: fast disk access for things like the OS and commonly-used applications and files, and a ton of storage for media libraries and older documents. The Fusion Drive was optional in 2012, but has been the default on 27-inch iMacs for years now.

Oh, and they used NVIDIA graphics. 2012 was a different time.

Time Is a Flat Circle iMac

This case design continues today, basically unchanged, even through the transition to Retina displays. The iMac has gotten much faster and has traded its Thunderbolt 1 ports for Thunderbolt 3 ones, but the enclosure has stayed the same ever since.

It even carried over to the iMac Pro, despite its overhauled internal design and Space Gray tint. Apple pointed out that they were able to cram the new machine into the old case:

Featuring next-generation Intel Xeon processors up to 18 cores, iMac Pro is designed to handle the most demanding pro workflows. With an all-flash architecture and all-new thermal design, iMac Pro delivers up to 80 percent more cooling capacity in the same thin and seamless iMac design. And with a new space gray enclosure and gorgeous 27-inch Retina 5K display with support for 1 billion colors, iMac Pro is as stunning as it is powerful.

I would love to see Apple modernize the iMac with better cooling, all-Flash storage, and the T2 chip. That didn't happen this time, and I understand that the low prices on the 21.5-inch machines probably prohibit such advancements, at least for now.

However, the outside of the iMac could use a refresh as well. The design is fine, but I think it could be modernized in a couple of areas. The bezels were fine in 2012, but seven years later, they look ridiculous. The integrated foot is sturdy, but I miss the days of more adjustable desktops. The built-in iSight camera is...not great, and the fan noise generated by high-end models is a non-starter for many of us.

It's time for Apple to do what it does best: make something look instantly old by unveiling something new.

Support MacStories Directly

Club MacStories offers exclusive access to extra MacStories content, delivered every week; it's also a way to support us directly.

Club MacStories will help you discover the best apps for your devices and get the most out of your iPhone, iPad, and Mac. Plus, it's made in Italy.

Join Now
22 Mar 17:55

The Outspoken Women of the House | Michelle Cottle debunks the conventional wisdom about women being...

The Outspoken Women of the House | Michelle Cottle debunks the conventional wisdom about women being...
22 Mar 17:54

Manche Dinge ändern sich nie

by Andrea

Deutsche Welle: Erneute Datenpanne bei Facebook. “Facebook hat eingeräumt, die Passwörter von Kunden unverschlüsselt auf seinen internen Servern gespeichert zu haben. Es könnten bis zu 600 Millionen Nutzer weltweit betroffen sein.”

“”Wir gehen davon aus, dass wir hunderte Millionen Nutzer von Facebook Lite, Dutzende Millionen weitere Facebook-Nutzer sowie zehntausende Instagram-Nutzer benachrichtigen werden”, erklärte das Unternehmen.

Facebook habe bislang keine Hinweise darauf, dass jemand intern missbräuchlich darauf zugegriffen habe, hieß es weiter. Die Passwörter seien auch für niemanden außerhalb des Unternehmens sichtbar gewesen. Die betroffenen Nutzer sollen dennoch “als Vorsichtsmaßnahme” benachrichtigt werden, obwohl es keinen Hinweis auf einen Missbrauch der Daten gebe.”

22 Mar 17:54

Mac Sound Sorcery

by Paul Kafasis

In the very near future, we’ll be unveiling a brand-new product. While some of our audio tools are aimed at niche markets, this app is built for wide appeal. If you use audio on your Mac in any way at all, you’re going to want to hear all about this.

Stay Tuned

We’ll have more news next week, but for now, we’re just encouraging you to stay in touch via:

It’s going to be magical!

22 Mar 17:53

Suddenly, we kind of know what's going on

mkalus shared this story .

This morning, the world was full of certainty. It flipped just like that.

Yesterday evening we were awash in the same old uncontrollable variables, drowning in them, not knowing whether we'd fall out on no-deal next week, or if the EU would accept a change from Westminster, or what on earth Theresa May would do if it came to the cliff edge. And today, our clothes have dried out, we're on land, the sun has come out, and we can see several things quite clearly.

Everything's relative of course. We're still in a chaotic muddle of national horror. But it's a bit better than it was before.

The first thing we know is the timetable. After late-night talks yesterday, the EU has offered a flexible extension. If May somehow passes her deal, Article 50 is extended until 22 May, the day before the European elections. If not, it is extended until April 12th, the last date at which Britain can pass legislation for taking part in those elections.

As ever, the elections are the singular point in the future through which all the alternate timelines converge. You cannot stay an EU member state, even in Article 50, without taking part. But you can if you do. So if Britain comes up with some kind of plan and agrees to take part in the vote, it can extend to the end of the year and possibly longer.

This was as good an offer as we were likely to get from the EU. It actually showed a remarkable degree of patience. It was one last opportunity for MPs to find some nerve and take control.

But it was also an act of self-preservation. They weren't going to get landed with the blame for no-deal. They compromised where possible and did not where it wasn't. Now the ball is back in our court.

As a side point, it is quite dispiriting to see how effectively, sensibly and fairly these 27 different countries can work together, to tight time frames, when we cannot even get that degree of performance out of our Cabinet. But that is another matter, for another time.

The timetable is now set. Unless something is done by April 12th, we fall out the EU with no-deal. This date cannot be moved. It is hard as a rock. There will be no more extensions.

We know something else too: the prime minister is a busted flush. There is no secret plan going on in her head. There are no hidden depths, no alternate strategies. She is completely absent.

This should've been obvious for ages, but her deadening manner has a weird effect on the brain. It somehow suggests there is a master plan behind the surface. She gives so little away, you presume there is something there to conceal. But there isn't. There's nothing. She is the packaging for a product which does not exist.

Consider the last few weeks. She  pursued a work-down-the-clock strategy immediately followed by a humiliating request for more time. Just let that sink in for one moment. Her behaviour makes no sense on its own terms.

This week, she alienated the MPs she needs to pass her deal, in a bid to appeal to a public who she will not allow to vote on it. That is simply nuts. It makes no sense.

The same was true behind closed doors. Last night she gave EU leaders a 90-minute speech - those poor people - on her extension request. "It was 90 minutes of nothing," one EU source told the Guardian. "She didn’t even give clarity if she is organising a vote. Asked three times what she would do if she lost the vote, she couldn't say. It was fucking awful. Dreadful. Evasive even by her standards." Another said: "She was not convincing. It was not clear if she had a plan B; it was not clear if she had a plan at all."

There is, on a basic objective level, no point listening to the words that come out the prime minister's mouth. On Wednesday, MPs were the enemies of the people. Yesterday, they had "difficult jobs to do". Last week, MPs were going to be given indicative votes. This week, those votes had already been rejected. Last week, she put forward a motion on a long or short extension. This week she said she would only ask for a short one. Nothing she says means anything. You can't believe a word of it, good or bad.

So that's the second certainty: May has nothing else to offer. The government is dead. It has no plans and no idea what to do.

Put these two certainties together and you get a third: The EU have passed the ball back and provided the timetable. The government is dead and cannot catch it. So it follows that there is only one way out this mess: parliament.

It's easy to be cynical. They have had plenty of other opportunities to grasp this moment, even in such stark circumstances and with a prime minister so transparently not up to the job. But it is also wrong, on the basis of the evidence.

On Monday, Oliver Letwin and Hilary Benn will put forward an amendment for MPs to take control of the parliamentary timetable. This same amendment was defeated by only two votes last time. That is plainly winnable. And after the changes we've seen since last week - May's duplicitousness, her attack on MPs, and the clear offer provided by Europe - you would expect it to pass this time.

There is then, finally, a positive structure in place for how to proceed. It doesn't solve everything. We still need to find a majority for an alternative. But with MPs formally in charge, no-deal fades as a prospect, and the deadening hand of the government is finally removed from the wheel. Now we just need to hope they take it, because if they don't the only certainty left is that this country is about to take a severe beating.

Ian Dunt is editor of and the author of Brexit: What The Hell Happens Now?

The opinions in's Comment and Analysis section are those of the author and are no reflection of the views of the website or its owners.

22 Mar 17:53

Friday Funny

by Gordon Price

From Durning, of course:

That feeling you get when you go out for a private meal and someone at the next table starts painting you …

22 Mar 17:53

by HumansOfLate
mkalus shared this story from HumansOfLate on Twitter.

Posted by HumansOfLate on Friday, March 22nd, 2019 8:48am

263 likes, 73 retweets
22 Mar 17:36

IFTTT to remove all Gmail triggers and more ahead of Google API changes

by Jonathan Lamont
IFTTT app icon

‘If This Then That’ (IFTTT), a free web-based service for creating conditional action chains involving web apps, will lose a significant portion of its Gmail support on March 31st.

For those unfamiliar with the service, a conditional action chain — or as IFTTT calls it, an applet — is basically an ‘if statement’ related to web services. One example of how this could work would be setting IFTTT to send an email if you post a tweet with a specific hashtag.

Unfortunately, some of the critical Gmail functions are leaving the service later this month. In a post on the service’s online help center, IFTTT notes the removal of services is due to Google’s changes to the Gmail API ecosystem.

Specifically, IFTTT will remove all Gmail triggers and the ‘create a draft’ action, but the Gmail actions for ‘send an email’ and ‘send yourself an email’ will remain intact. Additionally, IFTTT says the change won’t affect any other Google integrations.

IFTTT says that when the service started, it built most of the available integrations. However, since launching the IFTTT Platform, most of the companies behind services and integrations on IFTTT now own and maintain them.

Further, IFTTT says it worked with Google to try and maintain the services, but it could only keep the ‘send an email’ and ‘send yourself an email’ options without significant and unsustainable infrastructure overhaul.

IFTTT caps off the post by saying it respects Google’s efforts to improve privacy and security despite how the change will affect users.

You can learn more about Google’s API changes in this blog post. Further, you can log in to IFTTT to see which of your applets will be affected by the change.

Source: IFTTT

The post IFTTT to remove all Gmail triggers and more ahead of Google API changes appeared first on MobileSyrup.

22 Mar 17:36

ActiveDock (just $27) is what the stock MacOS dock should’ve been

by MobileSyrup

Apple invests thousands of hours into making their experiences seamless and intuitive, earning Apple its reputation for creating products and apps that “just work.” However, the dock on MacOS, one of its core experiences, leaves much to be desired, especially if you’re migrating from a Windows or Linux environment. Thankfully, ActiveDock resolves these issues for just $26.67.

ActiveDock is a replacement for the stock MacOS experience. On the surface, it looks like the regular dock, but it’s packed with additional features that make accessing your favorite files and apps easier. For example, Window Preview lets you quickly navigate to the windows you want to see, while Groups and Folders better organize your dock elements and reduce clutter. Best of all, ActiveDock lets you install custom icons and themes, letting customize it to fit whatever aesthetic you’re looking for.

If you’re hoping for an intuitive way to navigate between folders and apps, the stock Mac dock just won’t cut it. Instead, get yourself a fancy, customizable ActiveDock for just $26.67 CAD [$19.99 USD], or 60% off.

Like this deal? Check out Vault, the best way to secure your online data for just $9.99/mo.

ActiveDock For Mac: Lifetime License – $19.99

See Deal

The post ActiveDock (just $27) is what the stock MacOS dock should’ve been appeared first on MobileSyrup.

22 Mar 17:36

Google Assistant complimented Cortana to tease Stadia gaming service

by Igor Bonifacic

Earlier this week. Google unveiled its Stadia game streaming service.

It goes without saying, but it’s likely Google has been working on Stadia for the past several years. It turns out the company has been teasing the service for a while, as well.

On Friday, Reddit user ‘dustxx’ shared a response Assistant used to give when users asked about Cortana, Microsoft’s digital assistant.

“Cortana is so cool. She gets to assist in the Halo games and in real life. Maybe someday I can help out in video games too 😊

It just so turns out that helping in video games is exactly what Assistant will get to do once Stadia launches later this year. Google’s Stadia controller features a dedicated Assistant button, which allows users to ask Assistant for help if they’re stuck on a particularly tricky puzzle or boss.

Following the announcement, Assistant now says: “Cortana works for Microsoft. Plus she’s got her own video game franchise, she’s got it all 😊

Well played, Google.

Source: Reddit

The post Google Assistant complimented Cortana to tease Stadia gaming service appeared first on MobileSyrup.

22 Mar 17:36

Activate a new BYOP plan with Freedom and get $10 off for 12 months

by Jonathan Lamont

Shaw-owned Freedom Mobile is offering a discount for customers who bring their own phones (BYOP), plus a 3GB data bonus and more.

Right now, when you activate on select Data + Talk, Data or Home BYOP plans with Freedom, you can get up to $10 off for 12 months.

Data + Talk plans include the Big Gig + Talk 5GB, 10GB, 15GB and 20GB plans. All plans come with unlimited Canada-wide calling and global text, the listed data amount plus a 3GB bonus.

That means you can get as much as 23GB of data.

Additionally, all those plans receive a $10 credit each month for your first 12 months. Users can also get another $5 off per month with Freedom’s Digital Discount, which requires you sign up for Auto Pay. The $10/12 month discount is only available on new Pay Before or Pay After lines.

Freedom BYOP discount

All in, that means users can get the Big Gig + Talk 5GB plan, regularly $55 per month, for $40 for 12 months. Plus, the 3GB bonus makes it an 8GB plan.

The $10/12 month discount and 3GB bonus also apply to Freedom’s Big Gig 10GB, 15GB and 20GB data plans. These plans don’t include a calling package — users pay $0.05 per minute for Canada-wide calling — but do have unlimited global texting.

Freedom’s 1GB Data plan includes a $5 discount for the first three months instead.

Freedom’s ‘Home’ plans can get a $5/12 month discount

Finally, Freedom’s ‘Home’ plans include $5/3 month discounts on the Home 250MB plan, which includes 250MB of data, 100 minutes of Canada-wide talk, unlimited incoming calls and unlimited Canada and U.S. texting. The Home 500MB plan, which offers 500MB of data, unlimited Canada-wide talk and unlimited Canada and U.S. texting also benefits from the $5/3 month discount.

The Home 2GB plan offers a bonus 2GB — giving you 4GB in total — plus $5 for the first 12 months of your plan.

Freedom also has a limited-time LTE + 3G promo, which nets you 3GB of LTE data, 6.5GB of 3G data with no overage fees, unlimited Canada-wide talk and global text for $43 per month after the Digital Discount. Subscribers can also get the $5/12 month discount on this plan.

Like the $10/12 month discount, the $5/3 month and $5/12 month discounts appear as $5 credits on your bill for the first three and twelve months respectively.

On top of this, Freedom has a ‘Multi-line Offer’ that nets users a 15 percent promotional discount plus a $2 per month ‘Better Together’ savings discount. Coupled with the $5 Digital Discount, that means you can get the Big Gig + Talk 10GB $65 plan for $48.25 per month when you activate more than one line.

You can learn more about these deals and discounts over on Freedom’s website. These prices and offers may vary depending on location.

The post Activate a new BYOP plan with Freedom and get $10 off for 12 months appeared first on MobileSyrup.

22 Mar 17:35

Here’s what to expect from Apple’s streaming video service event

by Patrick O'Rourke
Apple TV

With Apple’s big streaming video service reveal event just around the corner on Monday, March 25th at 10AM PT/1PM ET, now is a good time to take a look back at the rumours surrounding the platform.

Along with the streaming service, it’s also possible the company has a few other surprises in store, including a news subscription platform and a final release date for its AirPower charging mat.

Here’s everything we know so far about the upcoming event.

Movie and television streaming service

Following Planet of the Apps and Carpool Karaoke, two original Apple TV shows that can only be described as critical failures, it’s somewhat difficult to get excited about the tech giant’s expanded original content ambitions.

This apprehensive feeling surrounding the streaming platform is exacerbated by reports Apple is “difficult” to work with and “conservative and picky” when it comes to the original content currently in development for the service.

That said, rumours indicate there are dozens of television shows and movies in the works, including the Stephen Spielberg-helmed Amazing Stories, an untitled CIA drama with Brie Larson, an Untitled M. Night Shyamalan-directed series and a high-profile project co-staring Reese Witherspoon and Jennifer Aniston.

Apple TV 4K Siri Remote

In total, Apple is rumoured to have spent over a billion dollars in 2018 on the development of original video content. While a massive number on its own, Netflix, arguably Apple’s main competitor in the streaming video space, spent $8 billion USD (roughly $10.7 billion CAD) during the same year.

Given the ‘family-friendly’ image, Apple aims to convey with its products, it’s likely that the company’s streaming platform will make an effort to push the same ethos. Further, the relatively big names involved in the tech giant’s original content plans, including Steven Spielberg, JJ Abrams and Oprah, indicate Apple is going after crowd-pleasing concepts rather than the gritty nature of HBO or Netflix’s top-tier productions.

For a complete list of all the original programs that have leaked over the last few years, check out this Wikipedia page.

Along with its own original content, Apple is also reportedly partnering with established premium video platforms like HBO, Showtime and Starz. While this might be the case in the U.S. and other regions where Apple’s streaming service is set to launch, the situation in Canada will likely be different.

It’s unlikely that Apple’s service will feature all or even any of these premium providers in the Canada as Bell holds the rights to HBO’s content in Canada following the signing of a licensing agreement back in 2015.

Showtime’s content remains mostly exclusive to Bell, as a result of deal signed back in 2015 between the two companies. That said, popular Showtime television show Shameless is available on Netflix in Canada.

Starz is in a similar situation, with the premium television service signing an “exclusive long-term alliance” with Bell in January 2018 to launch its content in Canada. Bell recently announced that most of Starz’s content on its Crave streaming platform will cost an additional $5.99 CAD per month on top of its standard $9.99 CAD subscription fee as of March 1st.

As a result of these Canada-specific content deals and licensing agreements, it’s possible Apple could plan to delay the release of its streaming service north of the U.S. border until the majority of its original content is ready to drop. On the other hand, there’s also a likelihood these deals aren’t entirely exclusive and that Apple could find a way license at least some television shows and movies from HBO, Showtime and Starz.

To the surprise of absolutely no one, Netflix recently confirmed that it isn’t partnering with Apple’s streaming platform in any way.

Along with Apple’s streaming TV and movie app being available on Apple TV and televisions from various manufacturers, there are also rumours circulating that the company could be working on a low-cost streaming stick to expand the reach of its upcoming streaming video platform.


We already know that Apple’s ‘TV and Movies’ app is coming to Samsung televisions. Apple’s AirPlay 2 wireless casting protocol is also releasing on a number of manufacturer’s televisions, including TVs from LG, Samsung, Sony and Vizio.

These two uncharacteristic moves by Apple, which are examples of the tech giant’s walled-garden approach to software begining to crumble, is an effort to expand the reach of its streaming video service. This is similar to how Apple offers iTunes on Windows and Apple Music on Android.

While Apple will probably play a sizzle real of clips related its original content during the company’s keynote, reports indicate the actual service won’t launch until sometime this summer or in the fall. It remains unclear how much Apple’s video platform will cost and whether it will be bundled with Apple’s upcoming news subscription offering.

News subscription platform

Along with its streaming service, there’s a possibility Apple could also reveal more information about its rumoured news subscription platform.

Apple plans to launch an all-in-on subscription platform that includes Texture’s magazine offerings and various news sources. The company purchased Texture, which was partially owned by Rogers, back in March of 2018.

The company reportedly will allow publications to charge subscription fees through the platform but also aims to take a 50 percent cut of all revenue earned through the service. Although reports indicate many publications have signed up for the platform, notable publications such as The New York Times and The Washington Post still haven’t come to an agreement with Apple.

It’s also possible Apple will finally publically release Apple News in Canada either during the company’s Monday keynote or shortly after. While various publications reported weeks ago that Apple News is now officially available in Canada, that isn’t entirely true.

Tim Cook

The news aggregation platform is only available in Canada if you have the latest iOS 12.2 public beta installed on your device. It’s also worth noting that it the current Canadian version of Apple’s News doesn’t feature many Canadian publications. As it stands right now, only CTV News, TSN, The National Post, CBC News and the Toronto Star are present in Apple News in Canada.

There’s also a possibility we could catch a glimpse of AirPower, Apple’s often-delayed Qi wireless charging pad, as well as an iPod Touch with revamped internals, at the upcoming keynote.

I’ll be on the ground at Apple’s upcoming event next week bringing you all the news directly from the keynote.

Source: Bell, The Globe and Mail, (1), The Information, Wikipedia, Twitter (@stroughtonsmith)

The post Here’s what to expect from Apple’s streaming video service event appeared first on MobileSyrup.