Good error messages are hard. You want to tell the user what to do, but if you knew that the error could be thrown, you probably should have been gracefully handling the problem. You don't know what information is useful to a hacker and you don't know how your error will be propagated. Meaningful errors at one level ("incorrect parameters passed" when calling an API) is perfectly useless at another level ("incorrect parameters passed" when interacting with a React UI). And if you respect all of the above, at some point you'll end up with an error message that basically says "I can't tell you what, why or how something went wrong, but it did."
all information is useful to a hacker. if you can find a way to use information beyond creators intent, to achieve your goals regardless of hat color, you are hacking.
We still default to Objective-C in our SDK. We still support iOS 11, and I don't think we've been bothered enough by Objective-C to check which versions of Swift can be used on the versions of iOS that we support (I last checked a couple of years ago when we supported iOS 8, where the compatibility matrix was a problem for us). However, the examples are in Swift, and we're using Swift wherever the language doesn't matter. iOS's Objective-C support and Objective-C/Swift interoperability is good enough that there aren't business pressures to switch, and the code isn't changing frequently enough that refactoring to Swift would save us in overall time/effort.
That being said, we are going to refactor from Google's Closure Compiler to TypeScript on the JS side of the project: surprisingly, we've seen more discomfort with developing with Closure Compiler than we've had complaints with developing with Objective-C.
Objective-C is a really neat, old language. Initially I was very gungho about switching to Swift, but all of my pain points are with the Apple APIs that we're accessing (and not Objective-C itself). If Objective-C had dot-syntax for calling methods, some more modern typing, and the less verbose Apple APIs, I would have been very happy sticking to Objective-C.
Amazon has for years been saying that they think that Twitch is under monetized. In their minds, 20% of watch time could be ads, just like regular TV. Streamers don’t like ads: it kills the vibe when your audience gets a 2 minute timeout. So streamers aren’t running enough ad breaks, and try to support themselves via memberships, merch and other alternative monetization methods. And for some, Twitch is only advertising for the real money-maker on another site. So Amazon doesn’t get the ad money they think they should get, and they only get a cut of memberships.
So then it’s a question of how many servers and engineers are needed to support Twitch, because that will determine profitability.
As far as I can tell most streamers most times are, or would be, fine with having roughly 3min of ADs per hour. If it's at an predictable time they can slightly shift around to match up with their content. It's a amount of time perfect to standup, stretch drink, something and similar healthy things you really should do every hour. (You can setup twitch that way.)
But that's just 5% of ads.
And if you change that to 10% it is, as far as I can tell, already in a area where most would seriously consider leaving the platform for good and at 15% I think hardly any streamer would still be on twitch.
Lets be honest the only reason normal TV got away with 20% is because it had no alternatives, and often anyway just ran in the background.
But most funny because how few companies buy ADs on Twitch you might just end up seeing the same 3 ADs in a loop for 20 minuts. As far as I can tell at least outside of the US twitch is sometimes even incapable to run a 3-5min AD break properly due to the lack of bought ADs...
It depends on the mode. They can choose the time, but then get awful poor ad-revenue. Or they take the juicy contract, and are forced to let twitch decide when ads are rolling. And with gaming content, even choosing the time is not always flowing well with your content.
It’s too bad they are so unimaginative when it comes to that. I mean at the very least they should hand controls to the streamer to run an ad: right now it’s the algorithm that does it.
Also they should primarily look at other ways to monetize. Subs are still the best way, but not everyone has that kind of money.
One other big problem is that there former heads just didn’t get streamers and they ran a lot of big ones out of the building. One streamer with a crazy amount of paid members was treated poorly in an amateurish way.
I think they have new management now which at least seem to be a bit more in tune with what streamers needs are and some of the painpoints.
> I mean at the very least they should hand controls to the streamer to run an ad: right now it’s the algorithm that does it.
They do: as a streamer, you've got a button to trigger an ad break at any time. But the streamers rarely push it, for the reasons already mentioned. Video ads pay so little that it's not worth it to streamers to annoy their audience that way, when direct monetization methods which depend on happy viewers (subscriptions, shout-outs, merch) are much more profitable to them.
There's a real problem of incentive misalignment between the streamers and the platform re: monetizing the stream by sticking ads in it, and I don't think it can be resolved; hence the layoffs.
They do give streamers a button to run an ad break, but they force ads on you if you don't run them often enough. That is very common for many streamers, because the ad breaks hit a large fraction of your viewers and it sort of kills the conversation for everyone.
Is there a button? I recently became affiliate but haven’t seen one, there is just controls for setting the intervals and the amount of time, with more perks as you increase the timeslots.
I roughly remember that there was one for a time which allowed you to somewhat shift the scheduled hourly ads, but I think they might have removed it after testing. Through I think it also never worked really well either.
Twitch should have offered a merchandising business via Amazon. It feels like Twitch should have understood how their streamers make money, and ensure that all of that monetization happens via Amazon in some way shape or form, whether that’s a print-on-demand business or facilitating product placements.
Absolutely! That would be a great idea. They could leverage their know how to scan for product placement depending on category you are in. It would seem far more in line.
I first bought YT premium after I found out the YT model of ad-free is ONLY the equivalent to buying Twitch turbo. A membership to the channel will still get you ads.
And having YT premium changed the game of how I consume all media.
Twitch gets 50% of subscriptions. "Bits" go to the streamer, 100% unless they used a third party app.
Streamers have to run a certain amount of ads per hour or they both lose a larger "share" of the ad revenue, and there is a preroll. Prerolls cause a huge impact in viewership so streamers don't want it.
The problem Twitch faces is that it now has multiple competitors: tiktok, youtube, and kick.
It's not just servers/engineers. Twitch has a lot of moderation issues and that requires a lot of labor. That's partly why the others are eating their lunch - little moderation.
Assuming 1k viewers, 2/3 of them watching on 'source' quality (6 mbps). In that case, a 4h stream nets 7.2TB! of egress to end users on highest quality on one channel alone.
Mechanical ventilation refers to just using fans. The comment you’re replying to is suggesting that heat recovery ventilators (HRV) be used to transfer heat from the warm exhausted to the incoming outside air via a heat exchanger (or cools incoming outside air in hot climates). It reduces the need for heating or cooling while still getting fresh air into the building.
That distance is London to Stockholm by road, which is going to be unfathomably far for most Europeans. Maybe that could be a road trip across the full length of Norway or Sweden, but generally that’s a once-in-a-lifetime multi-country road trip that one will want to enjoy.
I’ve travelled London to Stockholm before, and the only reason to do it is to travel with a family pet. Otherwise flying or taking the train will be faster, and cheaper.
While for Americans, that is a comfortable middle distance for a family vacation. My family used to drive that far two or three times a year to visit family in Florida when I was a child.
This highlights why range anxiety is a much bigger issue for Americans than Europeans. That, combined with the considerably higher fuel prices, are why EVs do so much better in Europe than they do here in the USA.
I really liked the idea of a generator that could go in the truck bed for the F-150 Lightning. You could convert your car from EV to gas powered for those 2-3 times a year that you need to, while still charging at home and getting the benefits of an EV the rest of the time. You could even rent or borrow the device from dealerships. Alas it seems like this early concept will not be included in the final vehicle.
> While you are not wrong, those requirements are the same for all houses.
Not every house needs triple-pane windows and R25 insulation in the walls, sitting on a 8-ft deep basement, with a steep roof pitch for snow to slide off of. Generally, you want to cut corners, because building to code in New York would be overkill in Texas.
You could have unique plans for each climate zone, but then the slope of the land and the shape of the lot also matters. Ideally, you'd want to be situated on a southward facing slope, beneath the road, so you could have huge windows towards the back of the house to taking in winter sun, natural insulation from the hill, and smaller windows facing the street. If you can't, you'll have to compromise on something that makes the house less pleasant to live in and/or harder to heat/cool.
At this point, we might actually have 100 distinct home designs, for each climate zone and slope. If you're lucky, these standard might actually be compliant with zoning for your lot, and maximize the allowable use of the lot. Every town is different, and who knows what silly rules your town requires.
At this point, you still need a design that local builders know how to build. Builders talk about "communities of practice", where they know how to build a certain way in response to how all of the other contractors in that area will also build, so that a subcontractor doesn't ruin another subcontractor's work. If you hire builders to build in ways they're not familiar with, they'll make mistakes. Most mistakes will be fine, but they could add up to failing to meet the code or standard for which the house was designed.
Ideally, you want to find an architect and a builder who have worked together before, to design and build the kind of house that you want using the techniques appropriate for that design, with the builder having crews of subcontractors that he/she has worked with before. If you've reached this point, you might as well take the extra step to building the perfect house for you, and customize it just a little more.
>Ideally, you'd want to be situated on a southward facing slope, beneath the road
If you casually assume everyone lives in the northern hemisphere.
Don't worry, we're already used to it with you all decorating websites with snow-themes in December, and saying "releasing this spring!" when what you actually mean is "April".
Very good points. Though I would point out that insulation is still very important for Texas houses to keep cool in the summer. I’d also add that local soil and ground conditions are going to affect how you build the house’s foundation.
> Not every house needs triple-pane windows and R25 insulation in the walls
Yes they do. Cooling is a large energy cost. Besides, you end up with that much space in your walls anyway just because for material strength reasons you need wide walls.
> sitting on a 8-ft deep basement
A basement is a line item that can be added or deleted at will. If you don't have stairs to the basement you still need that space except it gets a floor and is marked tornado shelter.
> with a steep roof pitch for snow to slide off of
They still build the same roof pitches so rain runs off.
> you want to cut corners, because building to code in New York would be overkill in Texas.
Not really because much of house design that matters is about structural matters where thickness matters. Other parts are about standard parts, you can buy a 2x4 off the self. While 2x3s exists, they cost more than a 2x4 and are generally lower quality.
> A basement is a line item that can be added or deleted at will.
If you already need a deep foundation and basements are common enough in the area so people know how to do them well, maybe. For other areas, it's a significant expense, a lot of work, might require design changes, and it'll probably leak.
Basements are always expensive. They are common where the soil demands a deep foundation as when you already need to move a lot of dirt you may as move more and get something useful out of it. Realistically though even in places that need deep foundations you are probably better off building a floor up and no basement.
Either way though, they are easy to remove from plans if you don't want one.
> you end up with that much space in your walls anyway just because for material strength reasons you need wide walls.
For material strength, walls are fine with 2x4 framing. However, 2x4 framing is limited to R19. So this is actually not true. The reason builders went to 2x6 framing is entirely to allow for a larger insulated cavity.
> They still build the same roof pitches so rain runs off.
Roofs do not require the same pitch to dispel snow as they do to shed snow. Roof pitches are genuinely steeper in areas that see particularly high snow loads.
Builders have gone back to 2x4 in cold climates. They put 2 inches of foam outside. The wood of studs is r5 even though the insulation is r19, so the continuous foam is better.
And in warm climates there were going to 2x6 as well as air conditioning needed the r value.
I love my DF64. I found it on sale, and informed my wife that it'd be her Christmas and birthday present to me: totally worth it. Even with a $100 DeLonghi EC155, the difference from the grinder is incredible.
Sweden abolished inheritance taxes because the cost of enforcing the tax was greater than the taxes raised, and was passed by a left-wing coalition. At the time, it was considered a success of social democracy to not need inheritance taxes (and in fact, everyone, including the law, referred to dödsskatten - the death tax).
20 years isn’t ready enough time for wealth to consolidate like that via inheritance alone, and similar countries (like Norway and Germany) are seeing similarly rapid raises in their Gini Indexes for wealth, without chances to their inheritance tax systems. Something is broken in Western economies, but unfortunately, inheritance taxes in Sweden aren’t the problem.
"The question we set out to answer in this study is how the Swedish personal wealth distribution has evolved since 2007. This year, a right-wing party alliance was elected after a long period of Social Democratic rule and among its first reforms was to repeal the wealth tax ... Our main result concerning wealth inequality in Sweden is that it appears to have increased since 2007. The recorded rise in the Gini coefficient and top wealth shares is about ten percent"
Note that the study above only analyzed wealth in Sweden over the time period of 2007 (when the wealth tax was repealed, not 2005 as I erroneously wrote in my earlier comment) and 2012.
Germany and Norway don't share a comparable Wealth Gini (like I said above, it's WEALTH Gini, not Income Gini).
While absolute wealth inequality did grow in both NO and DE since 2008, SE's Wealth Concentration also at a much higher starting position than either NO and SE in 2008
And finally, roughly the same old money families/nobility that existed in Sweden c. 1700 continue to have a roughly similar impact in Sweden c. 2012 from a social mobility standpoint.
Good point. Based on this paper from HHS back in 2000, the Wealth Gini in Sweden in 2000 was around 0.790 [0]. Btw this wealth Gini disparity between the 2000 and 2008 numbers is because the NBER's 2008 model used PPP I believe while HHS and Credit Suisse used nominal.
That said, even in 2000 there was a recognition that there is an intergenerational wealth transfer competent via foundations and families.
And clearly, the big picture takeaway that has been open knowledge in the economics world is that Sweden has consistently had extremely uneven asset ownership - at a level comparable to the United States and Netherlands, two other first world countries dealing with extreme amounts of instability due to asset ownership inequality. And at the end of the day, assets matter more than income.
> Ironically, this tells me some... awkward things about how the author relates to their kitchen.
It also says a lot about how the author relates to restaurants, where a faster dishwasher is a selling point. Faster is separately important from throughput, because if it the takes 3 hours to run the dish washer, that’s a lot of plates that need to be washed and stacked all at once for a restaurant, and a lot of dishwashers needed to handle that volume.
Even within the commercial dishwasher space, there's some pretty different versions. I worked at a hotel where we had normal smallish cube dishwashers [1] for some of the smaller restaurants, but they also had an ~8foot long conveyor belt dishwasher for one of the busier restaurants, and for the banquet section they had a ~20+ foot conveyor belt dishwasher[2].
They also had multiple dishwasher stations just to deal with pots and pans that were similar to 1, but way bigger. I once fit a huge stainless steel butchers sink in one (iirc it was like 6.5x4ft? They could fit a whole pig, or half a cow in it)
>>so they always stink of gunk after they have been cleaned
No, that's just the issue of detergent people use, some brands are perfumed to high hell and more because people have this weird idea that the stronger it smells the better it cleans - which is obviously nonsense. You should be aware that with some smells it's not an issue of not enough rinsing - they linger no matter how much you rinse and rinse and rinse - it's not a safety issue.
If you want to have clean dishes with zero smell afterwards, get something like the Finish 0% tablets, they aren't perfumed at all, so there is no smell when you open the dishwasher. I use them for that reason alone.
You should clean your dishwasher, and check you aren't using too much detergent. (You know you aren't supposed to fill up the detergent holder to the top?)
Personal experience is that a build server normalizes deviance. "But it works on the build server" we used to say, as, with time, it become harder and harder to build locally. "Just fix your environment!" we used to say, when it was the build system that was actually at fault. "It's all so fragile, just copy what we've done before!" we then said, repeating the mistakes that made the build system so fragile.
Eventually, the build system moved into a Docker image, where the smells where contained. But I'm still trying to refactor the build system to a portable, modern alternative. If we hadn't had a build server, we'd have fixed these core issues earlier and wouldn't have built on such a bad foundation. Devs should be building systems that work locally: the heterogeneity forces better error handling, the limited resources forces designing better scaleability, and most importantly, it prevents "but it works on the build server!".
"But it works on my macbook" is even worse than "but it works on the build server". If you have a build server you're at least forced to make sure it builds in two places (your own machine and the build server) before you merge rather than only one.
> “But it works on the build server" we used to say, as, with time, it become harder and harder to build locally
This got me puzzled for a couple of minutes. Yeah, that “WTF, WTF” moment. Then I realized that our build “server” comprised of 12 different platforms (luckily reduced to just 6 in the later years), so to pass a build in production was a bit harder than to build locally.