HN user

nhojb

39 karma
Posts2
Comments9
View on HN

Swift is collapsing under the weight of its increasing complexity. So many, many special cases & they keep adding more!

As a developer it becomes so very hard to reason about code behaviour. This is especially true with concurrency, which was meant to simplify concurrent operations, but in actual fact is a nasty can of worms. In an effort to "hide the complexity" it just introduces a huge amount of unexpected & hard to grok behaviour. The new "immediate" Task behaviour & non-isolated async behaviours are good examples of this.

Brad Cox has died 5 years ago

I've spent pretty much my entire career (20 years!) writing Objective-C: first for macOS, later iOS. Of course Swift is now the new kid on the block, and has lots to recommend it. But there's something about the simplicity and purity of Objective-C that has a special place in my developer's heart (despite its flaws & imperfections).

So thank you Brad, you've influenced my entire career. RIP.

Nova by Panic 6 years ago

I've been a professional macOS developer for almost 20 years now and I can't tell you the number of times that this has been an issue.

With no access (or ability to patch) the platform source code you are left with a) hacky work-arounds, b) re-implement the component or c) change the app's design or feature to compensate. All of which are a pain / more work / risky etc, etc - just to work-around bugs in the platform.

Sure you can file radars (I do), but whether something gets fixed or not, is up to the gods...

Author mentions web browsers and extensions in the context of barriers to creating a successful malleable system.

Surely the web browser - considered in relation to web pages & technologies (HTML, Javascript etc), rather than extensions - is perhaps the most successful malleable system in history.

The core browser "functionality" has been and can be extended in an almost infinite number of ways via web "pages". You could consider his dichotomy between "foundational" features (unavailable to the user/tinkerer) and extendable features to be comparable between Emacs (C vs elisp) and the Browser (C++ [for example] vs HTML/Javascript/CSS).

I realise that to "extend" the browser by building a web page includes a great deal more friction than playing with elisp in scratch. Does this rule out the browser as a "malleable" system?

Exactly. This is advertising people.

Since the dawn of time advertisers have over-exaggerated and over-sold products. Call it an art (I might, but not in this case), call it a sham. It is what it is. No surprises here.