skysight-inc/HackerNews huggingface dataset:
Noted the first two bits in the post. Did you read it? :)

As far as SPM goes: they've got it built into Xcode at this point, and are doing WWDC sessions about it. At what point does it become "official" enough to warrant "This needs to be better" criticism?

As far as "useless internet karma points": I couldn't care less. History has shown that when people make enough stink about this kind of thing, it sometimes—rarely, but sometimes—gets to the ears of people high enough in the management chain that it ends up shaking things loose at the mid-level spots where poor decisions around these things tend to get made.

I don't work at Apple. I can't go fix most of this stuff. In my day job, I spend a lot of time on these kinds of concerns. In this context, though, the only thing I can do is shout a bit and hope it shakes things up a bit.
>> What exactly are you bringing to the table.

> In general, knowing what NOT to do. Finding out & solving the right problem, not the one that was given to me.

So true.

I would add the ability to look farther ahead at potential problems.
I have seen so many young people blocked by some issues that should have been spotted way earlier.
Every C-level tech executive schedules two hours a day of reading HackerNews, right?
Symbian was plain horrible. I tried a project but gave up quickly.
This comment has nothing to do with apple, but about documentation in general.

I was trying to get into Kubernetes world via kubeflow, a machine learning platform that works on top of the Kubernetes. Well, I have run into a bunch of the missing examples, outdated articles, and things that just don't work (all of that in official documentation).

I decide to change this a bit and start working on a small tool [1] that can help check documentation (at least reduce deadlinks in the documentation, when someone moves git files or just original source of info dies). Since I start working on it, I meet only one project without issues, all others.. well, they all had issues.

Maybe one day I post it on HN as a standalone link, but now here we go [1]

[1] https://github.com/butuzov/deadlinks/tree/develop
It's cute but I can't recommend it for a project with more than one developer. Lack of TypeScript support and the hacky component model (specifically, Svelte's equivalent of React props) are the two big deal-breakers.
Yq is a portable command-line YAML processor
I'll bite: What is the maximum size of a process’s address space on an iPhone?
I cannot understand why there aren't more retirees moving en-mass to Europe right now for medical care.
If you're new to the idea of locality sensitive hashes and want to learn about them, or would like to use one on on massive sparse data and a key-value store, I wrote up a post that walks through all the families of minhashing algorithms starting from the beginning (and culminates in our work extending them to probability distributions.) https://moultano.wordpress.com/2018/11/08/minhashing-3kbzhsx...

This is my favorite algorithm. It's so stupid simple, just a handful of lines of code, and makes intractable problems tractable.
They may be old, but what major advances in monolithic kernels have there been to invalidate them now? There seem to have been significant advances in microkernels. (I was glad to have been using fast microkernel-ish systems daily in the 1980s, and not VAX/VMS.)
Indeed. The US could very well fund a generous welfare state like Europe, but that won’t be done by increasing taxes on the rich, but rather on the middle class (like in Europe).
Think the ternary operator, but worse.

In Swift, this is expressed by "??".

It means "If the previous test returns nil, then execute what is after the ??".

For example, if you have a concrete Int, but the source might be an optional, then you could do something like this:

let a = b ?? 0

That means that if b is nil, then set a to 0. Otherwise, set it to whatever value b has.

You can chain these, like so:

let b: Int? = <something from somewhere>
let c: Int? = <something from somewhere>
let a: Int = b ?? c ?? 0

So you have a couple of optional values coming in, but they could be nil, so you chain them.

You can have a lot more going on in the handlers than simple assignments, but this gives you an idea.
How has been your experience with flutter? Are you a native developer? How does it compare?
The same roads that you use to drive to the liquor store every day before posting this inane drivel.
Well, if those foreigners aren't using our services why are we taxing them?
Cheers, thanks a bunch.
Isn't what you're describing precisely what senior ICs should be doing more of?

I agree with OP, the purpose of a manager isn't to manage the technical side of things but rather the people side. It's why they have direct rapports: to manage the people.

A better use of the IC's time is to unblock them so they can meet with stakeholders and develop a rich understanding of the work in order to do it most effectively.

In trying to "shield" the IC from developing an understanding of the landscape they'll be working on, the manager may accidentally be preventing the IC from getting the information they actually need to do their job well.
If these are the 'best worst examples' you can come up with after ~3 years of iOS work, they are not really convincing. I just scanned the CoreLocation docs, and while it is true they do not explicitly state what sources are used for getting a certain accuracy, the documentation makes it very clear and unambiguous what you should use. You use kCLLocationAccuracyBest if you need to be absolutely sure you have the highest accuracy, otherwise you use one of the distance-based accuracy settings. How these get the location should be irrelevant to any application that doesn't need to force 'best available', and it's pretty clear from how the API is structured that iOS will combine whatever data is available to give you the accuracy you asked for (ie: if there is no cell tower or WIFI geolocation available, it will fall back to GPS even for the lower-accuracy setting). It took me only 5 minutes of reading the documentation to figure this out, I would say its an example of good documentation, not bad documentation.

As for 'how large is the maximum iPhone process address space', I don't really know how bad it is that you cannot easily find this documented. It doesn't really seem like something many apps need to know about, and highly specific to the iOS version and maybe even hardware it is running on. Not saying your app or whatever you are making doesn't need it, but I estimate this kind of information is irrelevant for close to 99% of apps. I don't think the iOS programming model is such that you can derive any kind of guarantees how much you can allocate from that number. What do you want to use it for?
> most of these data structures end up sharing a lot of data, and a “new” structure is often only the diffs from the previous version.

Like everything else in life, those data structures come with tradeoffs. Accessing an array element is an indexing operation into a continuous block of memory. The indexing is built into the instruction set as an addressing mode, the array's memory is continuous (so better locality of reference for caching), and if you're traversing it predictably, prefetch hardware can being it into cache before you issue the instructions that do the read.

The same operation in a persistent vector is a function call, several pointer dereferences, and a more complex on-memory structure with more overhead. It works elegantly, but it's a completely different (and likely slower) level of abstraction from a simple in-memory vector.

A few years ago, I switched a toy search program away from ImmutableJS and over to naive copying of raw JS data structures. I don't remember the exact performance delta, but it was something like an x10-100 speedup, for code that was otherwise structurally identical:

https://github.com/mschaef/react-matchstick/commit/070802b69...

In this case, I had a goal to achieve, a timeline on which to achieve it, and it was the ability to switch to simpler, closer-to-the-metal data structures that made it happen. Had I needed more optimization, the most logical approach would have been to remove even more copying and rely even more heavily on mutation. This shouldn't come as a surprise, because at their core, these machines are fundamentally built on mutation, and there's a cost to pretending otherwise.

Now, in fairness to the persistent structures, this is something like a worst case scenario for their use - the algorithm is almost entirely dominated by manipulating relatively small data structures without much opportunity for sharing. It was also single threaded, small, and developed by a single developer in a small amount of time, so the organizational benefits of immutability were not apparent either.

If this was a huge redux state shared across a team of 100 developers and updated only a few times a second, I could probably tell a completely different story. It's easy to imagine (based on firsthand experience!) the kind of havoc that can be inflicted on a project with an erroneous update.

I get the enthusiasm for functional programming and persistant structures, etc., but at the end of the day it's just an engineering approach. One of many, and there's room to do the work to choose between them.
You are both correct. Obviously a factor is specific to each individual, as to the cost benefit ratio of that person.

Oh, come to think of it, that could be a concern in some countries. Maybe in say, China, if your social score is not high enough, it might be illegal for you to extend your life.
And to think that I once got a job interview question that asked me to invent a spell-checker in 45 minutes.
Lightform launches second generation all-in-one projection mapping hardware
Fair note. I've just pushed an update clarifing that sentence!
> It's a simple recursion. why wouldn't I be able to do it? I fully expect to solve algorithms & data structures questions into my 60s faster than the average 20yo can (because of my background. Point is, it doesn't correlate with age, if you can't do it at 40 you probably weren't great at it at 20).

ok. I was being facetious with that (particularly famous) example.

you are able to breeze through hard leetcodes in your 40's in a tech interview setting?

Why would you be faster at 60's vs 20's , not sure i follow the line of reasoning.

> So don't write CRUD apps if you're better than that.

Can you give me some examples of better things that actually require 20yrs of experience ?
I'm not sure how it looks in ObjC but in Typescript you could write something like:

let studentScoreFormatted: string = student.formattedScore ?? 'Student has not taken this test yet.';

Whereas if the score is null it will return the value after `??`.

It is awfully helpful for ensuring you handle error states in displaying API values. Additionally if you want this behavior but when the value is falsey, then you can use `||` instead.
AI Terms Demystified
A bunch of double question marks with some optionals in between would be my guess.

optional1 ?? optional2 ?? optional3 ?? ifeverythingelsefailsvalue
It's Swift's equivalent of Rust's `unwrap_or`, or the trick in python where you write `None or "Hi!" == "Hi!"`.
The Problem with Product Leaks
Every search engine that uses ads and affiliate links as primary method to monetize searches is in essence owned by advertising company which includes Google and DuckDuckGo.
They pay sales tax at the state and some times city level which is effectively VAT
People would still buy iPhones even if Apple decided to purge 99% of apps from their store.
What's the way in? Hope you find yourself in a job where there are leadership positions open and the stars align and you're promoted into one?

In corporate jobs, this is rarely the way in. Most likely, you'll have to convince your current manager (and maybe theirs) that you're ready to be a manager and look for a manager opening elsewhere in the company. If you think you're ready and your current employer does not, you'll have to look outside.

Years of leadership seems like a purposefully vague credential. It's not about a title; if you don't think you've been a leader at work, you probably weren't (or maybe you were and your talent just wasn't managed properly ¯\_(ツ)_/¯ ).
> Isn't what you're describing precisely what senior ICs should be doing more of?

Yes, and I think the point I'm driving towards is that if this is the stuff you want to do, you're really not an IC at all -- you're an engineering manager with zero reports who doesn't have any authority, so you're making life 10x harder for yourself.
This is just optionals chaining, not nil coalescing.
Arthur C Clarke did the same thing in 1974 [1]. The reprint of the Steve Jobs interview is a good read nevertheless.

[1] http://youtu.be/OIRZebE8O84
> Apparently the whole bid process is now on hold, not because of anything AWS did wrong, but because, well, Jeff Bezos also owns the Washington Post, which Donald Trump does not appreciate, and so it’s all a mess.

This isn't even Amazon's problem, I'm not sure what anyone is meant to do about the President of the USA being a petulant child, other than just take their lumps.

Whole article is a bit odd tbh, doesn't seem like AWS is really struggling.
Virgin Galactic to begin trading on the NYSE as the first space tourism stock
Go really is the easiest language I've used. It installs with no fuss. The VSCode extension sets everything up and works perfectly. The library documentation is so clear that it usually answers any question I have without having to dig up blog posts and without dodging top search result Stack Overflow pages closed without answering the question. The highly opinionated nature means I can go into any Go code base and make sense of it quickly.
Most clients want to use UID, and it’s a good key for the same reason a SQL row number is, and inconvenient for servers for the same reason consistent hashing schemes don’t have it. I’m not sure what you mean about a cursor. I’m sure clients use UIDs as cursors. They’re good for that.
> A self-driven car with ML decision making is still bounded by some rules we will be forced to compromise on.

The atom in the molecules in the neurons of your brain are bounded by the laws of Physics. They can't disobey them, they are as free as the coefficient of the ML tables.

> If all the humans left the planet, the car wouldn't be described as understanding the world, it'll be seen as a generic device sitting in a garage somewhere waiting for orders from a human.

Unless some car have setup an alarm to go to pick you from work at 5pm, you are not there but it goes anyway. After some time (1 hour?) it gives up and return home to get charged and wait for the next day. The waiting time depend on the weather (if it is cold or rainy) and the battery charge and perhaps the congestion of the roads.

Once per year they go to the robot-mechanic for the anual service. They also go when a tire or something get broken. They can call the autonomous crane in case it is needed. During the repairing time, they call a replacement and send all your info and schedule, so you would not miss your appointments (in case you were still there).

The car also negotiates automatically the insurance with the company web service, and pays the registration fees. Your autonomous house pays the electricity bills. Until your bank account is empty.

If you have some money in a good investment found this can last for a long time, until your car is too old and decides to retire and buys a replacement.

We are still very far from this scenario, but it is not so difficult to imagine that a bunch of small features compose nicely.

Somewhat related: https://en.wikipedia.org/wiki/Hachikō
What I saw on the first two pages of Customers who bought.... list was:

Database Internals,
Snowden book,
Algorithms book,
BPF Performance tools,
Your Linux Toolbox,
The Go Programming Language,
The Pragmatic Programmer,
Quantum Computing,
A Programmer's Introduction to Mathematics,
An Elegant Puzzle

I had to go up to page 14 of the items list to find all of the items you listed and to find the wire-type soldering iron tip cleaner.

Edit: Took out unneeded snark. It seems I fell prey to Amazon algorithms.
+1 for Warren’s market-led idea of splitting the tech giants.
The iconic Motorola walkie-talkie is entering the smartphone age
How to Transition Individual Contributors to Leadership Roles
It's not the most altruistic thing. If the problem is that their new expensive house has inadequate firefighter coverage, helping fund a closer one is very much in their interest. Having the locals fund it after you've helped get it off the ground and the charitable write-offs you could probably get aren't either.

If they were funding a fire station in a third world country where they have zero business interests, than sure, call it altruism. But I was just trying to show that there are more options, some potentially even better for everybody.
I agree failure is a failure but not that it's bad. Failure is neither good nor bad by itself. I think it's important to learn that a failure is not a reason to hate yourself - which is what usually feeds the depression. It's not constructive to dwell on the failure. It's necessary in fact to find out what the learning is and then see what strategies exist to minimize harm. That's not glorifying it in anyway. Falling down, for example, is not a beautiful thing but it's imperative to learn to get up - otherwise, what's the alternative? The article seem to make the claim that setbacks train your mind to accept failure as part of the process and not treat it any differently. What's wrong in that? There's no need to be a contrarian in everything.
yes but that doesn't work if it's not a boule
You just fell hook-line-and-sinker for that clickbait headline.
> the internet was already around by 1985

Sort of.

https://en.wikipedia.org/wiki/History_of_the_Internet

"In 1986, the NSF created NSFNET, a 56 kbit/s backbone to support the NSF-sponsored supercomputing centers."

That was a year after the interview. I think you have to give the man some credit for forecasting that this particular technology would be the one to break out of the geek circle to really change the world for everyone.
Someone that works in a Matryoshka doll factory?

Just a guess. I'm not a CS major either.
She's coming from Github/Microsoft. That is a very different environment than most of us. A company of that size has more money to pay people who live outside the regular product org and more opportunities to do "strike teams".

The bullet point list of strategic work that she provides mostly overlaps with what engineering managers do. It's valid to point out that you don't need people reporting to you to do it. It's very cool that she's been at companies that made that possible. But I think it's a mistake to say, as I think many commenters here are saying, that that's the only valid approach.
> They just tell you “use what you need”.

Huh? How is that not exactly the right answer? You tell the API how accurate you need it to be, iOS will get you that accuracy with the minimum energy consumption necessary.

It makes sense to not document the thresholds because they probably aren’t constants. (Or even if they are, they might not be in iOS 14.) It’s entirely possible that the accuracy of non-GPS methods may improve over time.

And they would certainly vary greatly depending on the environment. Who knows, if you’re in a concrete jungle with very dense wifi coverage, it could even be more accurate than GPS.

Conversely if you’re in a tiny rural town with one cell tower and no wifi, it might have to turn on GPS even if you only need 50 meter accuracy.
This isn't convincing.

Donald Trump doesn't like the Washington Post so it lost a contract and protestors interrupted a talk about AWS facial recognition.

How will this be solved by spinning it off? The first is that he thinks a different CEO would be better and the second isn't going to change because AWS is a huge cloud company and people aren't stupid that they won't realise the name has changed.

And it's known as Amazon Web services even if they rebranded to just AWS.

It would be a stupid move to change such a strong brand name to something else.
Makes sense I missed it then, I hate using the assistant. It feels like asking someone else to scratch my nose.
I haven’t seen any studies showing Facebook is a net win for anyone. But I search pubmed and see page after page showing it actively harms those that use it. A close analog is the literature for tobacco smoking.
Website Accessibility: Ensure Your Website Is Accessible
No kidding... it would be hard to find that number of engineers at the level Apple needs, much less organize them all, so they're pulling in the same general direction.
As my employer has tried to define the principal IC roles, I've actually seen the perceived qualifications of the original roles go down. IE, what would have been consider senior qualities are now principal qualities, and seniors need supervision. I believe it extends from the same root cause: not knowing how to get value out of a more senior role.
looks like certificate for ai.google expired today, what a coincidence!
The most succinct way I have seen it put thus far is "Trump Derangement Syndrome" or TDS for short.
Yes. I have dozens of domains that I use for email. I create throw-away addresses per-site, per-use-case. If one of them starts getting abused, I either remove the alias, or set up filters to only allow specific content to that address. One of them is in my profile here.

As a bonus side effect, I can tell when a business or organization has either been "pwned" or has otherwise sold my email address to other entities.

Some domains I point to fastmail so that family members have an alternate to gmail. The remaining just point to my VM that runs postfix and drops all the email into virtual mailboxes and I read them from the shell. This has worked great for decades.
Yes, if AWS is losing out because a politician doesn't like the founder that's a failure of your country's democratic process and defies everything the US purports to stand for. Sure, spinning AWS might be the prudent thing to do from shareholder's point of view in the short term. But doing so, makes things extraordinarily hard for the very same shareholders in the medium to long term.
Then wouldn't the most effective help for these people be a shipment of butter and multivitamins?
It depends on the device. I think low double digit GB for the current big ones (maybe 10-15 GB). Don’t remember the details though.
5G inherits some 4G vulnerabilities
a = b ?: c;

if b is not nil, then a = b
else a = c
There is one implementation of hints available as an extension: https://github.com/ossc-db/pg_hint_plan

It's unfortunate that it comes off as if maintainers think planner is good enough, because that is demonstrably not true. And from my discussions there is wide agreement that the planner will never be perfect. But agreeing that it's something that needs work is not enough, someone actually has to do the work too. Reality is that implementing any feature to PostgreSQL quality standards is hard work.
Of course it’s sarcasm. It’s just like people who sat that the iPhone is a “status symbol”. How can something be a status symbol when 50% of smart phone users have it in the US and that anyone on any of the four major carriers can buy one an interest free 24 month loan.

Geeks can’t stand to face the fact that people who can afford to have a choice, overwhelmingly shy away from Android.
> If you think you're ready and your current employer does not, you'll have to look outside.

Is it even possible to find a management position outside without management experience?