HNHacker News
TopNewBestAskShowJobs

tl

2,224 karma · joined March 26, 2008

submissionscomments
tl··on Facebook bans Holocaust film for violating race policy
Facebook is the government. PRISM [1] makes it explicit in Facebook's case, but any corporation beholden to a government for its continued operation is a policy arm of that government.

[1]: https://en.wikipedia.org/wiki/PRISM

tl··on RavynOS – Finesse of macOS, freedom of FreeBSD
While there are parts of Swift that I like, I am more and more convinced as time goes on that Swift in general, and specific sub areas of Swift (like SwiftUI or Swift Charts) are destined to follow the trajectory of .NET as decried by Spolsky in How Microsoft Lost The API War [1]. To the extent this is true, it is likely smarter long term to avoid Swift except in cases where Apple has enforced its usage (like the watch).

For problem areas where Apple's frameworks provide a useful or necessary solution, accessing them from Objective-C instead of Swift is more stable. Examples like Accelerate, HealthKit, and StoreKit come to mind.

For problem areas where Apple has no advantage but you want to ship code there, oft derided but broadly usable solutions like C++ (which connects to Objective-C better than it does to Swift) or Javascript dominate.

Even Apple appears to struggle at drinking its own koolaid, given the recent criticism of the Settings port to SwiftUI. [2]

[1]: https://www.joelonsoftware.com/2004/06/13/how-microsoft-lost...

[2]: https://daringfireball.net/linked/2022/08/15/ventura-system-...

tl··on Objective-S: architecture-oriented language based on Smalltalk and Objective-C
I used to agree, but things like Jakt have an even better version:

https://github.com/SerenityOS/jakt

Notable differences:

1. param:value is used, but convention is param:value not the gratuitous Engrish verbingParamProposition:value ObjC inherited from Smalltalk.

2. param: is optional if the variable holding value in the calling function is named "param" at compile time. This pushes you to name your params "param" everywhere that makes sense.

Jakt's popularity is limited, obviously, but it's a compile-to-C++ language, so you could use it many places.

tl··on Apple is building a demand-side platform
Here's an exhaustive list of companies running ads in the Settings app:

1. Apple - examples include Apple Arcade, AppleCare+, Fitness+

I was so shocked when I saw an ad in Settings I took a screenshot. It's dated December 8th, 2020. Prosecution of Apple for abuse should have started at least that long ago.

tl··on Swift Proposal: Move Function
I agree with the premise "you don't have nils running rampant because of type safety" but the reality "Swift apps are not crashing randomly" is far from the truth.

Right now, I have a research project using Swift Charts and it definately "crashes randomly" partially because Charts expects a subset of type-safe values and does not communicate which subset except by chucking EXC_BAD_ACCESS with no usable error.

Sure, that's example of a beta framework. However, SwiftUI is the proposed Swift-y replacement to Objective-C's UIKit and is loaded with examples of "the type system we moved to should catch this but can't" followed by the even more common "the type system will catch this error in 11,000 years when it's finished failing to compile code on an M1".

tl··on Welcome to the M1 Windows project
Apple is in a very different position than they were with the switch to Intel. Some versions of Microsoft Office lack "legacy" features like Excel macros [1] and collaborative editing [2]. Microsoft would love to run Office inside a version of Windows on the Mac, as part of an on-ramp to people buying Surface-branded hardware. Apple isn't going to be an euthastic provider of this.

[1] Works-ish on Mac, not at all on iPhone.

[2] Collaborative editing on the Mac version works until you point at a file hosted on an on-premise Sharepoint instance, then it's Windows only.

tl··on The other kind of staff software engineer
> In most cases, the easiest way to tell if you are line or staff is to look at the org chart of your business. You are line if your role makes up the largest fraction of the org chart.

If anything, the opposite is true. You are "line" when you are fewer in number having a more direct line to the power structure. In business, it is this, not your contribution that changes your negotiating leverage. In the original military example, mechanics, doctors, IT staff and dozens of other roles vastly outnumber actual soldiers.

tl··on Zq: An easier and faster alternative to jq
Powershell's object pipes are more inspectable than any of Bourne's text-based decendants. But the tool itself occupies a niche between "write shell, dealing with esoteria of grep/sed/awk/jq/etc" and "write python getting constructs than handle complexity better than pipes".

Looking at the popularity of VSCode, I don't think Microsoft hatred blocks its adoption.

tl··on World military expenditure passes $2T for first time
Russian military spending: $66 billion

Ukrainian military spending: $5.4 billion

I have serious doubts the outside world dumped more than $5 billion on Ukraine's side. Russian made a serious error in how much territory they tried to hold as opposed to the re-positioning / fighting over Donbas that's happening now.

If the US ($801 billion) tried to conquer Canada ($26 billion), I would expect a similarly poor outcome based on Canada's size. If the US tried to annex specific oil rich areas under the guise of "protecting" oil pipelines, it's be reprehensible, but so was Crimea.

tl··on How to code, build, and deploy from an iPad using Gitlab and Gitpod
Not quite. Apple requires app developers to opt into Mac distribution. The non-zero cost of doing so on top of testing costs for a new platform (testers may have iPads but not Macs) in addition to fear of the new ability to access the sandbox directly (the horror if players were allowed to edit-in 100,000 gems instead of buying them with IAP) killed a large amount of potential Mac support.
tl··on Buttons as Finite Automata
Minor nit: right click is interpreted as 'press' with odd behavior if the context menu selection is 'Inspect Element'.
tl··on Apple M1 Ultra Meanings and Consequences
Target Display Mode which turns iMacs into monitors is not supported on newer iMacs (anything post 2015):

https://support.apple.com/en-us/HT204592

tl··on Apple unveils contactless payments via Tap to Pay on iPhone
That's a fairly revisionist view of history. Large partners had earlier had special pricing (ex: Netflix) lax enforcement of rules (ex: Facebook). Blowups where Apple presumed the right to levy a fee are also well known (Amazon book sales, Uber fares).

The smaller fish got consistently screwed and no one was happy per se, but the sheer stupidity of Apple's recent actions do not help matters. For example, the app store cut is 30% unless you beg for scraps as a small business at which point you can get 15% until you start making $1 million. Income cliffs aren't how real taxes work (let's be clear here: Apple is pretending to be the government with taxes and fees and shadow court system of app review), they're just how Reagan demonized them back in the day.

tl··on Push Notifications, WebXR, and better PWA support coming to iOS
> very dependent on Google being nice with Chrome

Replace Apple/Safari+Google/Chrome with Google/Gmail+Microsoft/Outlook and you currently describe e-mail. That situation is still preferable to the tons of messaging walled gardens. And the web is getting new feature albeit slowly and unevenly in a way that mail is not.

tl··on Why can't you reverse a string with a flag emoji?
This is a nice dive into limitations in Python's unicode handling and at the end, how to work around some problems. But you could use languages with proper unicode support like Swift or Elixir (weirdly HN is fighting flags in comment code which makes examples header to demonstrate).
tl··on Ask HN: How to learn about text editor architectures and implementations?
> None of my source code files are even 1 megabyte let alone 100 megabytes

Source code, sure. Log files and other kinds of text can routinely can be quite large. Also, within the context of source code, colorization and other useful features can be far less expensive if you only have to reapply them to limited section of the current file.

tl··on Simplicity of IRC
Welcome to enterprise, where breaking things is a feature so commonly used Microsoft has documentation for it [1] and things are often deployed by people whose sole concern is "minimize attack surfaces". Our Teams installation not only disables API calls (official Teams client only), chat sessions are deleted if no one posts to them meaning most chat history is lost every weekend.

[1] https://docs.microsoft.com/en-us/office365/troubleshoot/acce...

Microsoft uses these anti-features as a selling point, and in a large enough organization, it's not immediately clear who turned them on or who can turn them off.

tl··on What's the Future of IDEs?
I work "unofficially" on Java code because the Swift code I'm officially responsible for executes Java code (via HTTP request). I'm "not licensed" to use real Java IDEs.

Visual Studio Code's Java support is not great and I do not have jump to definition. Find " name_of_function(" in files is good enough and catches a few useful cases outside Java's understanding, particularly when you have naming consistency throughout a codebase.

Code's not as good as Emacs, but it's reliability installed on nearly every developer's machine regardless of discipline or at least the subset who are willing to ask for help when they encounter problems.

tl··on Apple: Ten Years Forward
> Apple already had some of the basic infrastructure in place with podcasting, but a middle aged outlook meant it missed the (mildly but interestingly) anarchic possibilities.

While I have some criticisms of Apple, impugning them for doing the best possible thing for an ecosystem seems like an odd thing to attack. Sure, Spotify, Stitcher and others have "innovated" with dynamic ad insertion and they occasionally dump massive bags of money on a few individual podcasts like Joe Rogan, but I don't view their profiteering as an improvement.

tl··on The Personal Analytics of My Life (2012)
My experience with dogsheep (healthkit-to-sqlite in particular) is there are multiple (two, in my case) show-stopping issues around usage, that have open pull requests with fixes the author is not merging despite doing occasional releases.

I ended up using it briefly but hand patched the python PIP installed to get it running. It's difficult to recommend after that.

tl··on Financial innovations brought by technology
Unfortunately the market-clearing price (in karma) for someone posting your article is greater than zero, ensuring that nothing short of regulation would prevent it.
tl··on Oculus Quest is removing the Facebook account requirement
Not really. Nintendo eShop and Google Play Service will dark pattern you towards having an account in cases where they don't outright require it like DLC expansions to the "physical" cartridge you "bought".
tl··on “If You Are Not Drowning in Demand, You Don’t Have Product-Market Fit” (2017)
Definitions help:

Start a company: You + enough business not to go under in X months = covering living expenses for one person or family = $50k / year starting negative of working up to profitable

10x = $500k / year, by the previous measure = competing with the top end of a big tech salary.

So there are people reasonably "unhappy" at 10x because of opportunity costs.

tl··on Dutch watchdog finds Apple App Store payment rules anti-competitive
We don't know yet. We live in a world where the web is seeing increased centralization on a variety of fronts with Google and Facebook among those leading the charge.
tl··on YouTube is banning anti-vaccine activists and blocking all anti-vaccine content
Your US section is mostly accurate (and mortifying for the "trust the government" argument) in terms of how it was mentioned, but I disagree the "Trump's vaccine" segment. The numbers of the rollout might fit that story after the fact, but doesn't make it true.

Moreover, the entire odyssey of you should get this vaccine but only if you're in a very specific age or risk pool and let's punish people and hospitals who violate this set of ever-evolving poorly communicated rules did happen and might be even worse.

tl··on Practical Front-End Architecture
> and (very) slowly losing it's dominance

Is it losing dominance?

https://arstechnica.com/gadgets/2021/09/php-maintains-an-eno...

tl··on Mozilla has defeated Microsoft’s default browser protections in Windows
> To add injury to insult they made OneDrive the default way to save files in Microsoft Office, but sometimes a problem with OneDrive would mean YOU COULDN'T SAVE YOUR WORK AT ALL.

It's worse than that. The change to default OneDrive breaks auto-save everywhere that isn't OneDrive. On the Mac, this includes breaking auto-save on pre-Azure Sharepoint instances and network shares, but some of that works sometimes on Windows. So Office is a worse product even if you never use OneDrive.

tl··on Steam Top 50 Games: Over 70% now work on Linux
I have previously. I'm currently not seriously involved in a competitive game. Actual serious gaming competitions (the kind with prize money) take place under circumstances where cheating is immediately obvious and gets you disqualified in a public setting. I believe the "understanding" gap is on your end; ranking the integrity of systems above the integrity of gaming is a common sense stance before you realize you don't need to compromise one for the other.
tl··on Steam Top 50 Games: Over 70% now work on Linux
You misspelt corporations.
tl··on The Elements of Typographic Style Applied to the Web
I like Adam Withan's free components (Tailwind), but his paid content is problematic. From the your link the left example is both clearer and more compact then the right version that is a supposed "improvement".
← PreviousPage 4 of 14Next →