The few middle-class housing efforts lead to donut-hole problems (e.g. you are allowed to live here if you make less than $140k, but one dollar over and you’re back with impossibly high rents) and outright abuse (e.g. “It’s not me making $400k, that’s my LLC.”) Bonus 3/2
I suspect many don’t understand how much wealth is necessary to comfortably raise a family in NYC with minimal risk. Most couples making $250,000 cannot raise family without significant sacrifices to either their livelihood and/or longterm financial stability. 2/2
New York City has become family hostile unless you are fortunate enough to either luck into a situation and/or be exceedingly wealthy (or be able to absorb a ton of risk/debt.) 1/2
New York is a place to meet people, build a career, and find your place in your field. Increasingly convinced that when that’s done, it’s a place to leave — or in our case, a place to have an office but not a home. https://t.co/3gqQdS1hVd
— Ames Grawert (@AmesCG) September 12, 2018
Siri went been 2 for 2 on these sports questions:
How tall is Joe Montana? (6’ 2”)
”Who is the University of Houston football coach?” (Major Applewhite)
While not much, I was pleasantly surprised.
Let’s see if this WordPress plug-in to post to Twitter works.
I was feeling particularly tired and unmotivated this morning, but then I wrote some stupid stuff on the internet and now I feel energized. It’s amazing what even a tiny amount of creative time can do.
This is why I have started writing non-Worms and Viruses posts (even short Tweet-like ones) on JackWellborn.com. I can easily share and still have conversations over various social networks while keeping my writing in one place that I control and can easily come back to.
John @gruber uses words very effectively. Well said…. pic.twitter.com/vGZpjayjWQ
— OM (@om) September 5, 2018
Capturing Responses from Dialogs using MacOS JavaScript for Automation
I had to make my first dialog using MacOS’s JavaScript for Automation, and quickly ran into the question of how to capture its response. Take this example:
var choice = app.chooseFromList(["a","b","c","d"], {
withTitle:"Hey you",
withPrompt:"Select something",
okButtonName:"Do It",
cancelButton:"Spoilsport"
});
In JavaScript this would involve using either handler, something like:
choice.onSelect = function(event) {...}
Or it would involve a listener like:
choice.addEventListener("select", function(event){...});
In both cases, it’s still unclear where on the event I would get the response to tell me that a selection happened or that the dialog was cancelled. On a lark, I tried just querying my variable for the dialog (“choice” in this case), and found that the result was available directly from there. The resulting working code:
if(choice){
response = choice;
} else {
response = "user cancelled";
}
This syntax for what is ultimately asynchronous input is a bit crazy for any longtime JavaScript web programmer like myself. That said, I love the simplicity, and suspect that it’s more intuitive for someone without a history web programming.
Neat to see Polygon do away with scoring – https://www.polygon.com/reviews/2018/9/4/17689100/polygon-reviews-no-scores. I actually wrote about some of the issues with scoring in my Review of their Bayonetta 2 review in 2014 – https://wormsandviruses.com/2014/11/a-review-of-a-review/.
I understand why many other fans of the NFL don’t like preseason. It’s a series of sloppy and ultimately meaningless games that aren’t even any real indicator of how good a team actually is. That said, one aspect of preseason I do enjoy is watching long shots make the team.