Whenever I create a new file in Xcode and choose Objective-C as the language, I laugh a little. Am I creating more technical debt or am I saving countless hours of time not dealing with the sharp edges of half-baked new tech? Zig when they zag.
Whenever I create a new file in Xcode and choose Objective-C as the language, I laugh a little. Am I creating more technical debt or am I saving countless hours of time not dealing with the sharp edges of half-baked new tech? Zig when they zag.
@manton As a Mac developer since 1994.. Iād say that Swift has been out of the half-baked stage for a few years now.. and that even on the Mac š.
When I drop back into Obj-C these days, Iām struck by just how weird it is.. with all its semicolons, header files, etc.
Iāve still got 20 years of Obj-C code in my apps, but Iām much happier in Swift despite its over-enthusiastic correctness fetish.
Itās much easier to write clean code, which isnāt always quite the same as writing simple code.
@manton IMO, Swift is fully-baked if you avoid the very latest language gizmos, and I much prefer it to Obj-C.
SwiftUI either hasnāt gone in the oven yet, or they put it in before adding all the ingredients.
@frankreiff I agree, Swift is mature and I like it. Itās more SwiftUI that Iām always hearing people run into problems with very basic things.
@jmwolf Yep, that sounds right. SwiftUI was such a different architecture, Iām honestly surprised it works as well as it does. Still avoiding it except where required.
@manton I avoided SwiftUI for a while, like I did for Swift for the first few years, but nowadays I prefer using SwiftUI. I have decades of legacy ObjC AppKit, but SwiftUI is the way of the future. But yes, when you hit a wall, it can be a big one. I can usually find a solution online, though.
@manton Iām a long-ish-in-the-tooth developer (pro since 1997), so Iām always curious about this kind of stance. How unproven was AppKit when you jumped in? Did it have analogous ārough edgesā in the early days?
Honestly asking / curious.
@muncman Itās a good question. When I started with AppKit, it was already far along from the NeXT days, but it wasnāt as full-featured as it would become when integrate into the Mac. I mixed AppKit and Carbon for a while. Except for widgets, I donāt see much new with SwiftUI that is comparable.
@manton Thanks for the answer+insight! š
I feel like my āold man perspectiveā has served me quite well (so far!) when adopting āthe latest & greatest/cutting edge.ā
Still, as an independent consultant at least, Iāve seldom felt I leapt to āthe newā too soon, as everything has some warts to it.
@manton Absolutely. Not really an option for macOS at all yet, but I also think itās ultimately a blind alley even though Apple is fully invested in it. Declarative programming (just like visual prof.) always sounds like magic, until you realize that the internal workings of the engine is actually crucially important. Then the whole house of cards collapses and you add annotations, etc but itās still a black box that makes debugging, scaling and performance tuning impossible.
@manton Worst of all is the fact that a minor change in your declarations can have huge performance impacts, so your code is now always fragile.
@frankreiff That is something Iāve wondered about⦠Declarative is so different. Iām not sure itās actually better. I embrace it with React Native because the win is cross-platform mobile apps. Personally for me, iOS + macOS (and worse Mac apps) is a harder trade-off.
@manton CSS and SQL are the most universally used declarative languages.. and while they work, actually dealing with them is rarely as straightforward as ājust express what you wantā. For SQL there are literally jobs that consist of optimizing query performance despite the whole point of it being that āthe engine can just figure out the detailsā. CSS is very powerful, but itās also fiddly and fragile.