skysight-inc/HackerNews huggingface dataset:
Health Union | Data Engineer & Analytics Engineer | Philadelphia PA | PA or possible REMOTE |

We are building some super cool stuff to help people living with chronic medical conditions find community. You get to drive Open Source Software and proprietary projects we maintain, build cutting edge stuff in microservices and work with a badass data team. Check out this video walkthrough of our tech stack and codebase to see what you'll be doing if you join us:

https://www.loom.com/share/7b8cfb1135a344d6b9be733505aef2fd

We have an amazing office in Philly, and remote is quickly becoming an option as the cultural tides shift. Hit me up for details, or if you want to talk shop about the company or what we're building before applying.

The jobs:
https://www.linkedin.com/jobs/view/1891264629/
https://www.linkedin.com/jobs/view/1880735568/

Health Union:
https://health-union.com/
https://www.glassdoor.com/Reviews/Health-Union-Reviews-E1800...

Me:
https://www.linkedin.com/in/ethan-knox/
https://medium.com/@ethan.m.knox
Make works pretty well, that's why it is used. But there are a few points it does not cover:

- Recursive building is complicated. it is not really easy to compose a small unit into a larger project, so that one just needs to copy the sub-unit into a folder.

- in some instances, it is necessary to type extra instances of "make clean", because the dependency analysis of make does not understand that dependencies have changed.

- say you build a program which includes /usr/include/ncurses.h. Then, you do a system update which replaces your ncurses library. Or, you do a git pull which changes that header. Make will not rebuild your binary without "make clean".

- files appearing or disappearing along the include path can change the result of a "make clean;make all", but are not detected by make's dependecy analysis. Here an explanation of D.J. Bernstein: http://cr.yp.to/redo/honest-nonfile.html

- doing atomically rebuilds: http://cr.yp.to/redo/atomic.html, so that a new dependency is either there, and complete, or not there

- parallel builds (which is related to the previous point, and also to the necessity to have complete dependency information).
I remember the CEO asking me that question.

However, the context was that I was walking towards the parking lot at 14:00. And so was he.
Not when you can get a better job in another place
What Causes Bugs, Anyway?
Manufacturers commonly include software in their products but no one buys a Mercedes for its software.
Absolutely right. In my marriage we never sat down and talked about not joking about divorce, but after 25 years it's evident we both know that's the rule.
I agree. It's especially difficult since the "S" word has become synonymous with "anti-American" due to (mostly) conservative rhetoric.
>Remember to upvote every HN climate change article. A decade from now we can all look back at how little we accomplished.

Any climate change that grows too conspicuous is flagged. This post is an example.

@dang Is it possible to unflag this thread?
The closest open source project is probably https://github.com/mozilla/LPCNet/
This could be extremely useful. I tried it on one physics paper and the results made sense, and led to discoveries of relevant publications. Very nicely done.
Autonomous Zone forms around emptied East Precinct in Seattle
Please go outside and talk to all the homeless people. It doesn't matter to the rest of us how high the GDP is if it's not evenly distributed.
I don't think anyone inherently needs what we think of as jobs. What we actually need is a way to provide for our own and our families' livelihoods, and the currently in-fashion way to do this is with "jobs".

If everyone were magically able to live without jobs, some would still go off and do things productive out of an innate desire to be productive, but many wouldn't.
I think a good parallel would be how would you feel as a manager if your employee jokes about quitting to go get more money somewhere else?
Last time I tried out Ant Design (about two years ago) I also tried out BizCharts, alibabas library for plotting charts. However, I noticed that it was making requests to kcart.alipay.com servers whenever it was loaded in some weird obfuscated code. Long story short, there was a microscopically tiny mention of it on the Docs in the Mandarin only section. Thus, whilst not the exact same repo, it was part of the same ecosystem of libraries and I have not touched one of them since. Does anyone know if they've made the 'anonymous telemetry' opt-in now?
We're they spending a lot on junk?

It's fair to have a small "fee" for hosting. And if they are buying food things and then giving them away, that's two social interactions!
With modern monitors being as large as they are already, I'd say the need for a landscape monitor is likely an indication you are working in callback hell.
> because there is a lot of appeal to HTTP/3

I thought the primary appeal of HTTP/3 is for mobile clients, and bad connections in general, because it circumvents TCP head of line blocking and connections can persist across networks.

That doesn't feel terribly relevant in corporate networks.

(not disputing that it's not comparable to the v6 transition)
I think, in practice, "justice" has always been a mediated form of vengeance. The state maintains its monopoly on violence by extracting enough vengeance from criminals that individuals (i.e. victims or their families) are willing to subcontract revenge to the state. In other words, the "justice" system has to provide enough vengeance to retain the consent of the victims, or those offended on their behalf. The benefits to society are large; total violence is much lower once it's able to break the cycles of private retaliation and avoid endless bloodfeuds. But it is an uncomfortably pragmatic equation.

I don't think there's any other consistent way to look at the issue though. Treating murder as the ultimate crime, as almost all justice systems do, makes sense in terms of the cost to the victim and the desire of societies as a whole to see murderers punished. But most murders are unplanned, and most murderers are no more likely to murder again than any other member of the population. Given the above, long sentences for (unpremeditated) murder just do not make sense; they probably have little value either as deterrence or prevention, and they certainly don't rehabilitate. But would a victim's associates stand idly by if their murderer was free after five years?
You don't, you run them in parallel to HTTP/3 and it shouldn't add any cost for you. The work is done in the browser (or any client) to fallback to whatever works.

Then, in a few years, when you notice that most of the traffic is done over QUIC, you still won't do anything as it has no significant cost anyway and helps the few % of people who haven't upgraded their network. And customers who can use it won't notice much as your website still works anyway, but your latency metrics should be better for those users.
A fast, privacy-focused commenting platform
Cheers! Well done!
Business models for mobile app monetization
Yes, the vast majority of software engineers in the 90's were working on really mundane products guided by selling units. I would argue it was significantly worse back then because it was a lot more difficult to engage with peers outside your own company and the tooling people used was significantly more likely to include a lot of proprietary niche products.
That's possible, but not the argument being made here. This is a hypothetical loss.

And it doesn't change the fact that if you have open content then you have open content.
....at the White House Correspondent's Association Dinner, which is known for bad jokes?
But your people don't see the checks in action. For all they know, you've passed those already.

The main thing is, there is a power differential, and "firing" jokes are, at their core, saying "I have power over you". It's just not that funny. And for new managers who feel compelled to make them, "why does my power make me giddy" is a good introspective question to ask.

No, that doesn't imply they are bad people. New power does things to everybody's mood. But asking the question helps remind yourself. (For an entire framework to keep that impulse in check, servant leadership works pretty well, IME)
> Isn't the punishment a way to stop people from trying to commit a crime?

There are different opinions on what the main purpose of incarceration is (punishment, deterrence, rehabilitation, protecting society), but let's for a minute assume it's deterrence, aka "stop people from trying to commit a crime".

How well would you say incarceration as deterrence is working so far? Regarding shootings, muggings, robbery, murder, rape, even "white collar" crimes. Would you say prison (and even the death penalty) as deterrence has significantly helped reduce or stop crime in the US?
I think the difference is, that Apple threw everything they could to fix iOS13, as their survival depends on it, so it did stabilize, while Catalina still hasn't recovered.
I can understand the sentiment. My own view is that the industry has seen a dwindling of opportunity that really started with the dotcom boom in 2000. Every year, startups target smaller and smaller opportunities while the big monopolies take an ever increasing share of the pie.

What is needed is a return of anti-trust legislation in the US. Someone should write an opera called Schmidt in Washington.
FB didn't have a breakthrough tech at their beginning.
The Math(s) Fix
My dearest friend -
I feel like I want time to stop -
Breathing again after holding your breath for eternity -
I keep quiet, but I can time travel -
Completely spoilt, like a kid again -
That's cute but I don't want one -
I feel like I have to smile -
I love you.
Are you sure this email exists? info@panoptyc.co
A good approach used in industrial/embedded applications: use a read-only root volume. If you don't write to your SD, you don't wear it out and have no risk of file system corruption either. It's quite a lot of work though, since most packages assume they're installed on a writeable file system.

Debian wiki has a (pretty bad and outdated) page on the subject https://wiki.debian.org/ReadonlyRoot#Enable_readonly_root
Love it, this is the one I got:
Dearest friend,
I feel like I deserve it
Excited
Don't tell anyone but, I can fly.
Losing energy, becoming a child again
Warmth
Sweaty hands
I can't believe I get to spend my life with you.
Perhaps https://plantuml.com/sequence-diagram ?
> Avoiding trigger words and peoples’ sensitivities is frustrating and further complicates complex discussions

I wonder if that is a result of believing having a thick skin is important and anything otherwise is now found frustrating.
I don't think the issue is that it wasn't recognised as a joke. It was clearly a joke. It's more about what the topic of the joke was.

Think of holocaust jokes.
Sounds kind of like a newsgroup, with every client also being a server. I think torrents can be dynamically updated now.[1][2] Maybe we already have the tools we need, we just haven’t put all the pieces together yet.

[1] https://www.bittorrent.org/beps/bep_0039.html

[2] https://www.bittorrent.org/beps/bep_0046.html
Not sure if you're interested in having people here contact you, but if you are, make sure your profile has the right info.
That's really what you took from this? Is it possible in your mind there may be some usefulness from the admonition to new managers in the blog post in treating people with bare minimum decency in not joking about firing them, even if one were to frame it differently, or is this what you've decided is the only possible takeaway here? That people are easily offended?

I'm not offended by the comment, just kind of amused someone went this far out of their way to miss the point.
> The problem with PHP is that there's a huge amount you have to know about the corner cases and edge cases that could cause you to write a bug or security flaw into your application.

The amount of PHP you need to know to avoid the sharp edges depends on the complexity of your application and what you're trying to do.

I don't make assumptions about what people are trying to build.

> I will judge people for it, in the same way I would question someone's judgement if they insisted against all evidence that there was nothing wrong with their shoe-hammer.

I also don't make assumptions about how a person evaluated and/or prioritized the tradeoffs involved with their choices, because their choice in itself doesn't tell a complete story.

Sometimes what might appear to be a bad choice was well reasoned at the time it was made. When Twitter was made, "Rails doesn't scale" was a common insult against it. But Twitter might not have been built they been forced to make it in Java.
I'm a big fan of Graphviz. My old team created a library called Loman, which we open-sourced, which uses DAGs to represent calculations. Each node represents a part of the calculation and contains a value, similar to a cell in an spreadsheet, and Loman tracks what is stale as you update inputs. Loman includes built in support for creating diagrams using Graphviz. In our quant research we have found that invaluable when revisiting old code, as it allows you to quickly see the structure and meaning of graphs with hundreds of nodes, containing thousands of lines of code.

We've found it quite useful for quant research, and in production it works nicely because you can serialize entire computation graph which gives an easy way to diagnose what failed and why in hundreds of interdependent computations. It's also useful for real-time displays, where you can bind market and UI inputs to nodes and calculated nodes back to the UI - some things you want to recalculate frequently, whereas some are slow and need to happen infrequently in the background.

[1] Github: https://github.com/janushendersonassetallocation/loman

[2] Docs: https://loman.readthedocs.io/en/latest/

[3] Examples: https://github.com/janushendersonassetallocation/loman/tree/...
The Maths Fix Campaign for Core Computational Curriculum Change
We goof off at work.
That's exactly what I've been doing almost unconsciously, I'm adding "wiki" or "reddit" at the end of every query except for programming ones.

The only time I'm using the search as intended is for programming error queries where it's way too niche for Google to append low quality news farms / ecommerce websites. That's the only type of query I still get good results.
Yeah, not funny because Presidents can, and often do, kill people with drone strikes. It would have been funny if he pointed the joke at a hurricane or shook his fist at God while saying it.

If he wanted to make a dad joke he could have said he had a shotgun or would box them or challenge them to a duel or something. That implication of superiority with balance can be funny, like Mike Tyson joking that he was going to kick your ass if dated his kids. Enough of a flex, but the balance is maintained because if you train hard enough or knew enough kung fu maybe you could take him.

Joking about firing people and calling a drone strike on them are not funny if you can actually do it but they can't do it back to you.
How about we extend this to sarcasm in general. It’s super easy to not understand when to take sarcasm seriously, especially if you have team members on the autism spectrum. Furthermore, sarcasm is often rooted in negative feelings about yourself or others. It’s just generally a poor communication tool, which is tolerable if you’re a worker making gallows humor with other workers, but way too easily misunderstood if you’re not on the bottom of the hierarchy.
I sold my B2B business. I achieved my dreamed, meaningless life
Communist China doesn't want to share or work on Open Source, eh?
Curious, why fallback to /1.1 over /2?
This is like a whole giant blob of assumptions and cultural bias. The only thing thats natural is law of the jungle, and the wish of the strongest. Otherwise known as the monarchy.

No need for a capitalist revolution? Did the monarchy give up power willingly? The french revolution, the american revolution, etc.

The only 'freedom' that exists in the natural world is the law of the jungle. You want freedom but want to live in a society?
The idea of police and public prosecution, of justice and judges are all recent inventions. Without them, what stops me from taking whatever is yours and assures your freedom. How do you even come into possesion of land, water or any resource in the natural world?

Apparently some people's idea of freedom means they can wonder around the city spreading deadly disease. I would very much like freedom from them coughing in my vicinity and infecting me.

Some people think they have freedom to shoot me in the face if they feel 'scared', while i value freedom from getting shot.

Some people believ they have freedom to pollute the air with sulphur oxide, while i believe they should have to pay the cost it takes to clean up their pollution.

Any freedom for you is an obligation on me, and vice versa.
> Why are you building arrays with mixed key types?

It happens on accident. All keys are converted to ints if they can be. So if you read a file that is called "123", it'll suddenly become an int key whereas all the rest will be strings. That's absolutely insane.

> Why do you want type hints?

The same reason anybody does. It is a contract and it makes your code more well-documented, more robust, and more correct. There's a reason that PHP has typehints and the consensus in all major, current, PHP projects is that they are good.

> Php has pthreads. They just arent needed that often.

Pthreads is garbage. Always has been. Never worked on servers. Is deprecated, finally: https://github.com/krakjoe/pthreads/issues/929
https://www.php.net/manual/en/intro.pthreads.php

> Async is being worked on You didnt mention it but immutable types are also being worked on.

PHP will be less awful when they're done. It's still awful today. I don't revel in PHP being bad. If it's good some day, I'll be happy.

> Everything people complain about php over tends to actually make its way into the language eventually.

25 years. 25 years and the language still sucks. Just use Java (or better yet, Kotlin).

> I dont know when you tried php, but I dont really think it was in earnest. It sounds like you had problems keeping your types straight.

I've been doing PHP dev for years now. Of course I had trouble keeping my types straight. PHP turns everything into a string whenever it can. Except sometimes it turns strings into ints for some unholy reason. Also, the type system (like Java's) sucks. It's not expressive at all and I can't even return a collection of a single type without resorting to language extensions.

> I agree its not super natural to deal with the php type system but once you learn it its pretty simple to keep things in order.

Not being natural is not the same thing as being broken. And being able to remember all of the gotchas doesn't make it simple.

> I see most messes arise when people mix types, mutate variables carelessly, or otherwise over leverage things they shouldnt (e.g. globals)

Agreed. So how do we avoid mutation? Use `clone`? Nope. It's shallow and everything is mutable by default. Overload `__clone()` on every class you write? Okay, but you better hope that your classes don't have fields that DON'T implement deep cloning...

> But these are hygiene problems, and all languages have these.

Bull. No language is perfect. But tell me, what's worse: 1 issue or 1,000 issues? Come on.

> Ive seen garbage java, ive seen hairballed rust, ive seen pretty much any c, ive seen wanky golang and ive seen babel-typescri-rea-tsx

See above. This is the most bottom-of-the-barrel excuse I keep reading over and over. PHP ENCOURAGES garbage code. Rust does not. Not even in the same ballpark. Not even playing the same GAME.

> The only thing that really annoys me about php these days is the dollar signs.

lol
PHP as a programming language is... okay. And it has come a long way in recent years to become "okay". But frankly, wasting another keystroke regurgitating to tired old "PHP sucks" trope would be to completely miss why PHP is so great (hear me out).

PHP as a development paradigm is second to none. The reason to choose PHP isn't because it is such a great language, the reason to PHP is because it gives you the most power for the least effort compared to any platform targeting the web (fight me).

PHP is dead simple. I can make a new directory with a single index.php file and view it in my browser in less than 10 seconds. I can then change/add more files, hit F5, and immediately see those changes reflected on my screen. It is the tightest feedback loop possible. I didn't have to remember/rely on any CLI helpers or package managers or debug tools. I didn't have to redeploy or recompile or restart anything... none of the bullshit. Just one file in one directory with zero indirection. And we aren't even done yet!

PHP also gives you a built-in web framework out of the box. It automatically parses server/request information and hands it to me for processing into a response. What's that? I don't need a special templating engine to format my output nicely either? PHP is a templating engine! Did I mention routing is also built-in (and transparent) as well?

The above is why PHP has become so popular/beloved by so many (and hated by many more). Everyone complaining about the language features ("array doesn't work the way I want it to!") is simply putting their ignorance on full display. There is nothing wrong with wanting something else out of your development environment/paradigm (heck, I've moved on too!), but don't blame PHP because it doesn't conform to your idea of how an application should be written.

The above is also why I am so disappointed by the direction the PHP community seems to be taking the language. I am all for improving PHP as a language, but to be honest, I have a feeling the maintainers are going to prove all of those people that claim "PHP is just a worse Java" right... PHP will never be as powerful of a language as Java or C#, and for the reasons I explain above, it doesn't matter! Nobody is choosing PHP because of the language (if they were, they would have chosen Java/C# in the first place).

If you want to improve PHP, improve upon the things that make it great. Lean in to templating. Lean in to a more functional approach. Lean in to includes. Screw it, add some more magic! Make the platform more ergonomic. It was always the draw anyway. Who cares about the language...
> A more desirable situation is to have your needs such as housing, food and healthcare already taken care of irrespective of what you spend your time on.

What you are describing is already a reality for our house pets. I don't find becoming a house pet to some AI/automated machine to be desirable in any way shape or form.
At my current position it's quite usual for my manager to ask why I'm still at the office when it's 3:30PM on a friday.
One of the reasons I'm still working where I am.
> No "clean" command is needed.

I don't see how this follows from what you've said. IME, `clean` is for when I want things rebuilt despite "nothing" having changed. Maybe it's actually the case that nothing's changed, and I want a full build because I want to know how long my build takes. Or maybe I've changed implicit dependencies - compiler version or similar.

Could you elaborate?
Facebook Helped the FBI Hack a Child Predator
Or people with autism spectrum disorders, or other issues (just being tired, say), who might find the nuance of your joke impossible to gauge?

Your job as a manager, with "sensitive" reportees is not to be a dick and make things uncomfortable for them, it's to help them do the work they're employed for.
I've been using Google Hangouts, doesn't look like this option exists here...