HNHacker News
TopNewBestAskShowJobs

cookiecaper

15,526 karma · joined July 20, 2008

Always interested in hearing criticism and feedback. Please don't be shy and send me a mail at hn@jeffcook.io.
submissionscomments
cookiecaper··on Why Top Posting Has Won (2018)
The reality is that since 99% of email users are "post-Outlook", one must "top post" or the others on the mail assume it's blank and just skip over it -- even if you "top post" a message about how you've replied inline.

If I'm on a list with established conventions or if my email partner requests it, I'm happy to have old-style "pre-Outlook" conversations, but I've learned my lesson in trying not to do it by default. It's not a convention that we're going to change.

cookiecaper··on Jitsi Meet – Improving Scale and Media Quality with Cascading SFUs (2018)
FYI -- I tried this in a fresh Ubuntu 18.04 LXC container and it failed spectacularly.

There's a weird interaction between the NOFILE security limit (`ulimit -n`), Java 8, and Linux-based containers (noted on both LXC and Docker). If NOFILE is too high, Java 8 will paradoxically run out of memory as it tries to allocate some huge number of file descriptors. That took a while to figure out, since generally when you get an error about exhaustion of file descriptors, you expect the opposite!

So just set a lower security limit, right? It doesn't seem to work, I'm assuming because something in the Jitsi install process decides it needs to set them really high for the install session. I haven't debugged what component specifically is doing this yet. This results in the install scripts crashing when the installer tries to initialize the Java CA store.

In theory one could wait for that crash, reset the file limit, and then resume the install process. This works to a certain point, but every time I tried it, the crash in the CA store initialization would leave the dpkg database in a badly broken state that `apt-get --fix-broken install`, `aptitude`, and some manual dpkg futzing wasn't able to fix in the course of the 3-ish hours I spent working on it (complains on libc6-linux-dev package install that /usr/include/linux/something-something.dpkg-new doesn't exist; that folder structure isn't present on disk).

Technically Jitsi is set up by this point because the crash occurs as part of the certbot bootstrap, but I was working on getting Janus to work anyway and just tried out jitsi-meet because they had an autoinstaller that would set up Prosody, JVB, and all that good stuff anyway, so it wasn't really worth plugging through the rest of the way or dealing with the broken half-installed Jitsi, especially since there are many warnings about how you must configure the SSL bits properly in the install documentation.

But it'd be great if someone wanted to fix all that and make my life easier. :)

cookiecaper··on Eclipse Theia 1.0 – Open-Source Alternative to Visual Studio Code
They don't have to be mutually exclusive, do they? You can surely learn some things from large-scale telemetry collection that you can't learn from user studies (e.g., semi-representative "in the wild" performance metrics).
cookiecaper··on NASA to launch 247 petabytes of data into AWS, but forgot about egress costs
Yeah. It seems like everyone is hopping aboard that bandwagon and doesn't remember a world before 2009. For $1M, you can get yourself a very beefy server farm.

AWS accounts still take management and a team of people that need to maintain a whole lot of different aspects of it, so you're not really saving on headcount. You're just moving that capex to opex.

It's important to be flexible enough to be able to deploy onto a cloud provider if the situation demands (e.g., new client demands infrastructure run in $FOREIGN_REGION_X where you don't already have a DC), but everyone's insistence on going 1000% AWS is absurd and IMO totally unjustifiable.

cookiecaper··on Discord Is Having an Outage
Counter-Strike predates Steam by at least a few years. There was a time that game servers were fully independent and you could use third-party game browsers or even just go port scanning to find 'em.
cookiecaper··on AvastSvc.exe contains a full, unsandboxed JavaScript/DOM implementation
Generally true, but we both know that it's not so simple, and I'm surprised HN took this bait so readily.

With JS, you have to worry way less about hardware-specific builds, platform-specific linking implications, differing system behavior and intrinsics, or any of the other substantial hangups that become relevant when you need to distribute a native application across a wide range of devices.

We don't need to repeat the rest of the thread where everyone hops in and says "tut tut, hypothetically, it would be possible for it to not be that way". We're talking about the way things actually are. In an ideal world, JS would've been out of the picture about 3 years after it was born. :)

cookiecaper··on AvastSvc.exe contains a full, unsandboxed JavaScript/DOM implementation
JavaScript is the only thing that you can really run on any semi-modern device. TVs, phones, laptops, desktops, servers, the only thing you can expect to execute on all of them is JavaScript. If you write your core libraries in JavaScript, you'll have that much less to worry about re-implementing and maintaining in something else. You'll have flexibility to potentially execute the same code on either client or server, phone or desktop. There are situations where that's pretty useful.

More than that, at least last time I checked, V8 is really fast. It is many times faster than the usable Python implementations, or practically any other memory-managed runtime. Only luajit seemed to sit in the same ballpark when I pulled up the shoot-out a couple years back.

I personally hate all of these facts, but sometimes, they really do mean that prioritizing JavaScript, or at least something that compiles down to JavaScript, is the best choice.

cookiecaper··on A Peek Into Graviton2
I hope that Bryan isn't going to make that mistake. Love it or hate it (personally I definitely lean toward "hate it"), BigCloud is here to stay.
cookiecaper··on A Peek Into Graviton2
Which isn't an accident, to be fair. AWS pricing is deceptive on purpose, with many cross-dependencies that each have their own price points, exclusions, and caveats.

Only this many cents to use this thing, which, heh, I guess it requires this thing too, and this thing, and this thing ... man, some of these cents are adding up. Oh, a "NAT Gateway" is $30/mo? Well, OK. Keep going for a few weeks and you're staring down a bill for a rather scary number of cents while the CFO's angry rants can be heard half-way across the office.

There are entire consultancies that specialize in decoding AWS bills. Let's not pull leg here.

cookiecaper··on Open Source Initiative bans co-founder, Eric S Raymond
The problem is exactly the opposite of authoritarianism. People don't believe that any person can be trusted with authority, so it was all transferred into the dead letter of a massively generalized district-wide policy which, of course, says "anything bad is bad and should be punished".

Administrators and teachers have very little leeway to ascertain circumstances, utilize context, or employ personal judgment. They feel obliged to follow the letter of the policy because they have no authority.

A little more "authoritarianism" -- trust that the authorities positioned to ascertain the facts will do so competently and shouldn't be trivially second-guessed -- would probably help a lot.

cookiecaper··on Open Source Initiative bans co-founder, Eric S Raymond
Yeah, you see this everywhere -- "filter bubbles" and all that. People have been trained to expect protection from anything that even vaguely intrudes on their own sense of self-righteousness, and consider this breach the failing of Someone Else (TM), generally the platform operator (whether that's an employer, school, webmaster, mailop, etc.).

People expect a mechanism to first, punish the offending author (block, downvote, whatever), and then hide the offending content, and they refuse to engage on any platform that doesn't accommodate this. Not only that, but they often seem to try to destroy the platform for allowing the travesty of frank and honest discussion to take place.

There's a part of me that believes the restrictions of the physical world are really necessary for a productive dialogue. You can't stop anyone else from showing up, and the limits of dialogue are how far you can go before someone is throwing punches and you're both getting hauled off to jail. It seems to have a much better track record of producing acceptable middle-ground outcomes than "flag, block, ban".

cookiecaper··on Open Source Initiative bans co-founder, Eric S Raymond
More than that, once some entity is in power, language policing and other types of arbitrary rulemaking are widely-deployed to allow the power broker to quickly expose troublemakers and wrongthinkers.

Failure to adhere to arbitrary vocabulary blacklists shows at least that you aren't just totally mindlessly executing directives, which is a bad thing to show powerful people, and in many cases, it betrays your true loyalties to "not-them", because if you really believed the "them" were noble and great, well, you'd be happy to learn that WordX is naughty and WordY is approved.

Look for this in a company near you. It's used frequently.

Is it any surprise that the hackers who built the open-source movement fail tests explicitly designed to fail anyone whose default mode is not just mindless complicity? These guys spent most of their lives slinging rocks at the multi-billion-dollar proprietary OS juggernauts and generally completely obliterated them. I think it's safe to expect that "complicity" isn't very high in their value system.

cookiecaper··on Twitter locks WikiLeaks account days before Assange's extradition hearing
The technical underpinnings of the internet are decentralized well enough. The reality is that these aren't technical problems, and any technical workaround will ultimately become circular. We have to come up with the necessary legal and social innovations that will allow people to cope.
cookiecaper··on Trying to sneak in a sketchy .so over the weekend
Also, depending on how long ago this was, may not have been as bad as it sounds -- MyISAM doesn't support foreign keys, and it was the default all the way until MySQL 5.5 in 2010.
cookiecaper··on Linux 5.6 is the most exciting kernel in years
Most kernel devs have Intel processors, and anecdotally, it does seem like you see more AMD-specific patches coming in the changelogs as people with the chips get new kernel versions and find new breakages.

Another side effect of Intel's market penetration is that the Intel implementation of any given featureset is targeted first. Things like nested virtualization may work mostly-OK on Intel by now but are still in their infancy on AMD; for example, it appears that MS still blacklists AMD from nested virtualization. [0]

[0] https://github.com/MicrosoftDocs/Virtualization-Documentatio...

cookiecaper··on FLIF – Free Lossless Image Format
It's a win from the implementation side because you can support all three use cases with one format, reducing code duplication and at least hypothetically leveraging the same improvements across the three use cases with no additional effort.

The UX concern you're describing doesn't necessarily have to have anything to do with the implementation details themselves, as demonstrated by sites like imgur rebranding silent mp4/webms as "gifv". As long as the new format makes it reasonably easy to access data about its content (e.g., header field indicating animation/movement), there shouldn't be any issue with collapsing the use cases into a single implementation and simultaneously addressing the UX concern you mention.

cookiecaper··on Ask HN: Advice for a new and inexperienced tech lead?
Become a student of psychology. If you're coming from an IC->management role for the first time, expect your worldview to be broken, and let it happen so you don't have to have a spectacular flame-out to allow it to reset (happened to me, and very common for people coming from the very unambiguous world of "code compiles" to the very loose world of human interaction, where people can't even understand their own motives, let alone anyone else's). Even a modicum of authority changes the way people interact and respond to you, and that's not going to change. Work within it, meet people where they're at, and understand that when it comes to dealing with reports, they're usually right and you're usually wrong.

People are the only thing that matters. Deadlines come and go, companies go bankrupt or get their entire C-suite arrested in midnight raids, competitors come in and break everything and turn the company into a zombie. The thing that endures is the people. If you have good people on your team, consider yourself lucky; being a great boss is one of the best ways to cement a lifelong connection to the best people, and you'll get way more benefit from it than you deserve.

Nothing is straightforward or face value. Understand this and don't try to change it. There's a lot that you'll have to learn for yourself, but keep your priorities and loyalties straight, don't buy into anyone's bullshit too far, and you'll be fine. Good luck.

cookiecaper··on Ancestry lays off 6% of staff
Yeah, it's a tad hyperbolic, but mainly with regard to the proximity. It's likely that more competitive employers will not be in walking range, especially not in this week's weather! ;)

It also depends on how long you've been at your current employer. Conventional wisdom is that once you're somewhere ~2 years, you're automatically leaving 10-15% on the table, because most companies are very stingy with raises. In an overheated market like SLC, that estimate is probably quite low.

Here's an anecdote: recruiters are so desperate that one of them spammed myself and several associates for a specific role, and this particular solicitation contained an apology that the base was "only" 135k. I know that's "just out of school" rate in SF/LA, but in most of the country, that's considered pretty darn good. And this recruiter is here pre-emptively apologizing to every stranger she spams for the "low" rate.

I got a lot more anecdotes, most of which are substantially better than that, but that's a quick simple one indicative of the kind of market we're in right now.

At a recent-but-former employer, we routinely hired in new people at +40% more than their peers who'd been there for >3 years, simply because the market wouldn't accept anything less and HR was hyperskeptical of any raise >2%.

My advice to anyone unhappy with their current compensation or employer is to go out and ask for the most ridiculous number you can think of. You may be surprised.

cookiecaper··on Ancestry lays off 6% of staff
The market here in Utah is bananas. I could walk down the street and get a 30-60% raise easy. Indeed there have been a few layoffs in the last month or so, but the companies aren't really a surprise and the market is still blazing. New companies are moving in literally daily.

SLC has been a great underground tech market for a long time, but word is getting out. California companies can't get away from the intractable chaos out there fast enough, and SLC is just an hour's flight away. New companies are pouring in much faster than we can handle 'em.

If you're a good tech worker in SLC, first, get in touch with me because I like meeting cool people, and second, if you've been affected by these layoffs, chin up, go to the next building over, and there's a realistic chance you'll have a better job in a matter of days.

cookiecaper··on Justice Department meeting state AG offices Tuesday to discuss Google: sources
Do we really trust that a politician who finds them helpful is not going to overlook certain misconduct that is politically beneficial (e.g., suppressing the statements of their major opponents)?

It's certainly not a forgone conclusion that investigations led by "friendlier" administrations are necessarily fairer. I doubt there's any way to have a purely unbiased investigation into an entity as prominent and influential as Google.

cookiecaper··on Justice Department meeting state AG offices Tuesday to discuss Google: sources
It's relevant in this case because the premise of the first comment is that this administration is particularly and uniquely unqualified to perform an investigation. It's comparative by nature, and therefore information about the disposition and behavior of other administrations is the relevant basis to determine whether the initial proposition is applicable.
cookiecaper··on Starlink Is a Big Deal
fwiw, I appreciated it. I just wrote this in a separate forum:

> don't miss out on this chance to see Elon Musk's secret plans for world domination before he goes full megalomaniacal evil Iron Man, when we can still naively look up in the sky and pretend it's nice

While I'm sure this is mostly not-that-likely, I totally agree that a discussion about the vulnerability of such systems would be intriguing. What kind of cyberpunk future are we developing as a check against the inevitability of some billionaire's less-than-wholesome private interstellar armament? I'm sure such a discussion may provide a modicum of comfort to Johnny Depp's ex-wives, at least.

cookiecaper··on 23andMe lays off 100 people as DNA test sales decline
Yeah, this isn't science fiction or conspiracy theory anymore. Several high-profile cold cases have gone hot as police have been trawling the datasets submitted to 23AndMe et al and investigating the family trees of persons whose DNA is similar-ish to the samples in unsolved cases. [0]

The results are mainly bupkis anyway, and you're paying for the privilege of having police agencies across the country (world?) give extra scrutiny to you and all of your relations. No thanks.

[0] https://www.washingtonpost.com/news/true-crime/wp/2018/04/27...

cookiecaper··on Mozilla lays off 70
> If you think that there's some kind of connection between the (alleged) illusory nature of consciousness and practical issues of workplace politics, then you've probably gone off on an enormous tangent.

Yeah, I absolutely did. Upvoted.

> In any case, I have no idea how you think your main argument gets from A to B, so I can't usefully respond to it.

It boils down to "professionals should not allow differing opinions on non-work-related issues to negatively impact their working relationships, no matter how strongly they disagree." The fact that no one knows anything about anything just helps people cope with that reality.

> I assume that you don't intend this as a characterization of the beliefs of actual white supremacists (?), so I'm not sure what you're getting at here.

It's a placeholder for any ideology, at least insofar as it remains in the realm of ideology and isn't unduly brought into the professional environment by the accused ideologue.

If someone starts bringing up politics, religion, or other controversial topics at work, redirect the conversation and ignore. If someone dispenses of their personal time advocating for causes that some others may find distasteful or even repugnant? Ignore, live and let live. It's not a professional issue.

Taking adverse action against an employee for using their private time to participate in the political process is not only already illegal in many states, but it's also hugely counterproductive. The ideologue is essentially compelled to lay their career at the problem ideology's altar (often post-facto, because the muckrakers are digging up some ancient LiveJournal entry or whatever). This creates fertile ground for a new internal narrative of heroic and principled self-martyrdom in behalf of the problem ideology. It's a fast track to radicalization, and you've likely just made the ideologue unsure how they're going to pay their rent next month. Bad scene.

If someone really hates the problem ideology and not the individual currently fascinated with it, "fire ideologue" will be pretty far down on the todo list.

tl;dr, If the employee is doing good work and they're not disrupting the work environment, leave them alone.

------

Pre-edit: harassment, stalking, direct interference with other employees' lives, threats of violence, and other types of red-flag behaviors should never be ignored, no matter how professionally someone behaves during business hours. Dangerous behavior should always be reported to HR and any applicable civil organization.

Pre-edit 2: This is not medical advice and I'm not your attorney. I'm not a psychologist, psychiatrist, or counselor of any type. As discussed in the grandparent comment, I made all this up mostly on accident, everything I think is surely wrong and dumb, and everything I type should be ignored.

cookiecaper··on Mozilla lays off 70
> curiously, none of them want to do this.

How do you know? If you ask someone whether they're harboring murderous intent, they're obviously going to say they aren't. Most people that actually commit murder will go on to claim that they never had murderous intent, and in the majority of cases, they're probably not even lying. Yet they still murdered.

We can't even understand our own motives and intentions. The internal monologue is a parlor trick, consciousness is a lifelong self-delusion. If we can't accurately conceptualize or reliably control our own behavior, despite living inside of ourselves all the time, what makes us think we can do it for others?

When you're working to accomplish a specific end with a specific group of people, as long as they're providing useful work, adhering to social norms, and not otherwise exhibiting specific malice or triggering physiological fight-or-flight responses within the group, there's no sense getting worked up about whether or not the neuronal spasms that produce consciousness may've been yielding some unconventional theories lately.

"I have this really high-level theory that I feel may characterize typical variations among several major human ethnotypes" -- well, shit man, my brain is doing weird stuff today too. I dreamed about computer-birds. Now, can we stop talking about this and go over your commit from yesterday?

In general, everyone is wrong about everything all the time, and that ought to be good enough for all of us. Let's stop firing useful people over it.

cookiecaper··on Mozilla lays off 70
If you've got beef with someone, take it up with them while they're living. Once they're dead, you missed your chance.

If Baker thought he was damaging the org, it was her legal duty to protect its interests and terminate him. Not only did this never happen, but per Baker's account, Markham was repeatedly rehired.

If Moz changed their mind at some point and wanted him gone, well, he's gone -- crapping all over his legacy accomplishes nothing other than exacerbating the grief of survivors and potentially opening up legal liability.

Should someone allege that Baker's horrific "memorial" rises to the level of actionable defamation, she'll have a hard time winning the sympathy of the court. "Don't kick someone while they're down" and all that. You can't get any more down than "literally dead". If you can't settle the personnel file before the employee dies, just let it go.

Ultimately, it is pretty simple: a corporate officer publishing a barrage of criticism against a deceased subordinate can only be described as chickenshit.

cookiecaper··on Mozilla lays off 70
Not Brendan, but I don't think anyone doubts that Brave would break from the Chromium homogeneity if it were practical to do so.

Production-quality browser engines are not basement projects. Even Google waited until they were the big kid on the block to undertake the project. Per Wired at [0]:

> "The browser matters," CEO Eric Schmidt says. He should know, because he was CTO of Sun Microsystems during the great browser wars of the 1990s. Google cofounders Larry Page and Sergey Brin know it, too. "When I joined Google in 2001, Larry and Sergey immediately said, 'We should build our own browser,'" Schmidt says. "And I said no."

> It wasn't the right time, Schmidt told them. "I did not believe that the company was strong enough to withstand a browser war," he says.

Piggy-backing on Google's engine for the time being is effectively turning the Goliath's momentum against itself. If Brave gets a sustainable revenue model and good-enough market penetration, I'd have every expectation that they'd feel liberated to take more direct control over the platform.

[0] https://www.wired.com/2008/09/mf-chrome/

cookiecaper··on Mozilla lays off 70
> And what if the deceased's actions DID cause damage (e.g. Brendan Eich and Gervase Markham)? Wouldn't that count as provocation?

No -- employees cause damage all the live long day. There's nothing unusual about that. Furthermore, discretion and secrecy are indispensable components in any professional environment; you don't have to make a publication about negative experiences just because they happened.

If the aggregate effect of an individual's employment is net negative, you start the prescribed HR processes to accommodate, adjust, cross-train, improve, and/or re-assign. If worse comes to worst and none of that works, you'd initiate processes for involuntary termination of employment.

I don't know about you, but personally, I've never seen an HR process that includes publishing a condemnation of a recently-deceased employee's political or religious views.

Hypothetical events that may provoke negative statements from an employer would be things like becoming deceased shortly after being arrested for some well-publicized crime, especially if the crime impacted the employer's business (e.g., money manager accused of embezzlement, arrest goes awry and suspect is killed). "Dying after decades-long battle against terminal cancer" doesn't feel likely to enter provocation territory to me.

> Just because you happen to agree with their views on morality doesn't mean that their contempt for their fellow coworkers should be whitewashed.

You're ascribing motives that don't exist here. I don't know Eich and I didn't know Markham. I haven't read extensively about their private views and I'm sure that I disagree substantially with many of them.

Fortunately, you don't have to know anything about anyone's politics or religion to understand that it's incredibly crass for the CEO to a) publicly enumerate the managerial difficulties imposed by the deceased; b) publicly offer negative characterizations of the deceased's net impact on the organization; or c) really do anything except offer condolences and ensure prompt handling of the family's benefit claims.

cookiecaper··on Mozilla lays off 70
> I guess that would depend on whether they skipped over the same parts you did.

I read the whole post.

The parts you've quoted are rote recitations of assignments and employment history. They could've been derived from an HR file.

A list of assignments is not a discussion about how his work product helped move the platform forward.

Stating that Gerv had to go to the doctor sometimes and that he was good about giving notice is not talking about the resilience inherent in maintaining a productive career and an apparently-happy family while simultaneously battling a terminal illness for 18 years.

> Where does it say this?

You quoted the last sentence of the paragraph above. Here:

> > Gerv’s default approach was to see things in binary terms — yes or no, black or white, on or off, one or zero. Over the years I worked with him to moderate this trait so that he could better appreciate nuance and the many “gray” areas on complex topics. Gerv challenged me, infuriated me, impressed me, enraged me, surprised me. He developed a greater ability to work with ambiguity, which impressed me.

Baker lists 5 things Gerv did and you quoted only the last one. 3 of the things are definitively negative: "challenged", "infuriated", and "enraged". One is neutral: "surprised". The only positive one is "impressed", but she immediately explains that she was impressed re: his "greater ability to work with ambiguity", which she had mentioned "work[ing] with him to ... better appreciate" two sentences earlier, i.e., she's impressed that some small portion of it appeared to finally stick.

Then, in the next paragraph, she immediately caveats her impression over his improved grasp of ambiguity with: "Gerv’s faith did not have ambiguity at least none that I ever saw." and "He was adamant that his interpretation was correct[.]" At least to my ears, that sounds a lot like "So I just said I was impressed, but I wasn't that impressed; he just wasn't smart enough to grasp the ambiguity that would've made it obvious that his personal beliefs were invalid".

cookiecaper··on Mozilla lays off 70
Well, to be specific: by "common decency", I mean that the CEO should refrain from a publishing an infantilizing and derogatory post about a deceased employee. They should especially refrain from doing so days after the employee's death.

Employees dedicate roughly half of their waking hours to the employer, entailing much sacrifice from not only the employee themselves, but also their family. Regardless of the employee's competence, it insults that sacrifice when the employer comes out and denigrates the employment record of the deceased.

Bottom line: making an unprovoked publication indicating that the deceased's efforts caused damage to the organization as a whole is not a decent thing to do.

Just as a rule of thumb, if you can't memorialize a person without talking about how much damage was caused or how you just couldn't get him to understand "nuance", it's probably best to leave the memorializing to others.

← PreviousPage 4 of 34Next →