1,212 karma · joined January 31, 2017
Then she got a warning that the battery needed servicing. After getting it replaced (and the Apple employee warning us several times that it might not help performance), the laptop was back to its previous state. My theory is that the battery running warmer was causing the CPU to throttle. Or perhaps cleaning out the machine while replacing the battery helped it thermally. Or maybe both.
In the Southwest, I would say 95% of the places I visit have plenty of public restrooms if you count businesses that have unlocked bathrooms. Fast food, coffee shops, grocery stores, gas stations, restaurants… nearly every public business.
When my wife and I visited Scotland, we were flabbergasted at how difficult it could be to find a restroom when we were driving the countryside. Even when we would find signs of civilization, it was hard to find open businesses with restrooms.
When referring to a property or variable that does not change over time, consider the word “constant” instead of “static”. Swift has the idea of a “static property” that means a property associated with the type instead of an instance (as do many other languages).
In a saner Republican Party he would have been a good Senator or even Presidential nominee. Unfortunately, that isn’t the age we live in.
Colleges have become increasingly comfortable with accepting homeschool high school transcripts both because of their increasing regularity but also because of the actions of the HSLDA. One of the reasons we’ve been members for well over a decade.
1Password is a life-saver in this regards. All my kids have their own vaults but for the little ones I have them use a shared vault between my wife and me so we have access to their passwords. I can also easily share passwords for services like Netflix so the kids don’t have to bug me.
It has been great for teaching kids about password hygiene (what makes for a good password) and management (don’t reuse passwords!).
And it being cross-platform is great for my older kids with gaming PCs.
If the answer is “No”, it can be difficult for others to understand. Reworking that code to follow our architecture generally makes it easier for us all to follow.
One might need to not follow the architecture because it doesn’t handle something new to the app. When that happens, we try, first, to update the architecture to be able to handle the requirement and then implement the feature. But if that isn’t possible, we plan to clean up the debt as soon as we can after shipping.
Overall, it has worked remarkably well for our team and has led to what I consider the “cleanest” code base I have ever worked on. But it is dependent upon us having a shared understanding of how we implement features.
The combination of such realistic feeling gameplay and multiplayer is way more compelling than I thought it would be.
1. Create a struct (value type in Swift) that implements a protocol (interface) to serve as your ViewModel 2. The main methods to implement are both called “update”. One is called automatically by our infrastructure when Feature state (state that exists across screens) changes. The other is called by the developer in their view controllers to pass along user actions (or other UIKit events). 3. The developer subscribed to all VM changes and updates the view in response. This subscription is done via Combine which is Apple’s FRP framework.
I am planning on writing more about this and the rest of our architecture in the future, hopefully.