But there’s a base at the South Pole and people climb Everest
I think these are substantial engineering issues, but I think he must be kidding. They are obviously solvable.
I read, for example, that you can put a nuclear powered electromagnet in one of the Lagrange points that will protect Mars from solar wind.
Of the 90’s era deck building games it had the most advanced mechanics. The unique, beautiful, brilliance of the game was an element of randomness built into the game be the cards themselves.
Your deck was a stack that you would often draw the top from to determine random elements. Then place the card on the bottom (there’s more to this rule, but good enough for now).
Experienced players could learn to count cards in the end game, creating either fast, dynamic play or hard fought chess battles, jockeying for positions slowly undermining your opponent.
Tournament games had a time limit, but I’ve played regulation decks for 3 hours.
Lucasfilm eventually pulled the license for lesser games, but for a while it was amazing.
1. What do you do to avoid massive view controllers? I have found that a lot of iOS apps I have worked on end up having the view controller be responsible for doing everything from fetching data from an API to setting the corner radius on some component. This leads to view controllers being really big and not unit tested.
2. Do you do anything to explicitly keep your application state in one place? I find that state in iOS apps ends up being scattered between a data store, singletons and view controllers. This is a lot more cumberesome than something like Redux where state is just in a single store.
3. I am pretty excited about SwiftUI as it addresses a lot of these pain points and brings iOS development into a more modern era similar to React. What is your opinion of SwiftUI? Are you using it on your apps? If so, what have been the challenges of introducing it into existing apps? If not, why not?
2. No. Again not helpful. This is a domain specific problem. I will say I'm waging a now multi-decade war against singletons. Dependency injection is the way to go. For Swift checkout Swinject, it really superpowers your testing.
3. Haven't touched it... yet. My primary projects need to ship and my secondary projects haven't hit the point of UI. Won't until later this year. Then I'll deal with SwiftUI. Combine, however, is my new hawtness and I recommend diving into.
Deleted Comment
The ecosystem is amazing. I love the tools. Xcode is a joy of an IDE to work with. There's some room to improve, but compared to everything else... it's not even a question. The community is full of people who are full of wonder and excitement.
As a web dev, you probably already know some Ruby and have some familiarity with some build tools that I didn't when I came to iOS dev. That'll help. You won't be exclusive to Apple. You'll be using CocoaPods and Gradle and Bazel and Jenkins and Travis and god only knows what else. On any given day I code in Swift, Objective-C, Ruby, Kotlin, and Groovy.
At the end of the day, remember you'll be doing this 40 to 80 hours a week. Make sure you enjoy it.
Now "home made pasta" starts with flour and eggs.