Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API

From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "#xcode #💩"
-
Q: How do you know Xcode 16.2 is a mess?
A: The code it generates for a new project is rejected by the compiler.
You generate a framework project, and besides having to manually sign the damn thing (really, can't setup for success?), it won't compile and link due to some other obscure error IT generates.
/<pathToFramework>/<ProjectName>.framework: resource fork, Finder information, or similar detritus not allowed
Command CodeSign failed with a nonzero exit code
Yes, boys and girls, Xcode is broken right out of the gate on building a framework template it creates!
I'll tell you what is "detritus", it's Xcode. Hint to Xcode team: "Just Say NO" - Nancy Regan10 -
Gotta say, Arduino IDE is a hobbyware at best, but in my not so humble opinion, is a completely pile of chocolate pudding.
OMG, it can only target one type of hardware at a time. It has to apparently be completely reconfigured when you use different hardware. Libraries and the like that are loaded for one board cannot be loaded and available if you are building for a different board. I mean seriously, what the ... is wrong with these developers.
Imagine if Xcode would allow only one library load for any given hardware target.
💩ware.
Don't get me going with the editor... the inept "debugger" which NEVER works.
They need to fix this hobbyware or shut it down.5 -
I'm trying really hard to like Swift but every time I open the hood on this bird, it takes a shit on my windshield.
For example:
struct ContentView: View {
var body: some View {
let kFontPointSize = 25.0
var theFont: Font = .system( size: kFontPointSize )
theFont = .custom("Helvetica", size: kFontPointSize )
Text("Hello, World!")
.padding(.horizontal, 20.0)
.font( theFont )
}
}
... in spite of how wonderfully self documenting (🐂💩) Swift is, that dirty bird converts the 'var' to a 'let' and "theFont" cannot be reassigned after declaration.
3 things:
1. invisibly converting the 'var' to a 'let' and not indicating 'var' can't be used... really?! Suppose to just "know" these obscure inconsistencies? (sloppy design)
2. then the error Xcode presents on "theFont = ..." line is : "Type '()' cannot conform to 'View'"!? How about "can't use a 'var' here"? God forbid it should make sense. (sloppy design)
3. "var" means variable and "let" means letstant? If you are going to use "var", better use "const", or be consistent and use "set" and "let" instead of "var" and "let" (sloppy inconsistency)
4. and ".horizontal", who owns that? Self documenting?. It is owned Edge Set aka Edge.Set.horizontal and effectively a "global".
5. And reading the Swift coder's mind... No, you should NEVER NEVER NEVER use "25" as a constant literal passed like .system( size: 25 ). (magic numbers not aloud)
Have all best engineering practices been simply tossed out the window? Rule #1 in software "engineering": Globals are BAD. Corollary: magic numbers earn you a one-legged A on your project.
I am so incredibly disappointed in the Swift community right now. Swift designers are honestly earning a "script kiddy" badge of dishonor.6