skysight-inc/HackerNews huggingface dataset:
It's interesting to me that they are going down this path instead of the microservices path. This seems like something ripe for slowly breaking down into microservices.

Someone made a change that took down production because of non-deterministic outcomes? How about break out whatever they were changing into it's own service? With proper fallbacks, breaking that part shouldn't take down all of production again.

To be clear, I'm not saying microservices will solve all their problems or be less work. I'm just saying that with an equal level of effort, they would probably get more overall reliability by having multiple services, they'd be able to use multiple languages, whatever is suited to the task at hand, be able to deploy even more often with less risk, and be able to isolate these types of "change on import" behavior to a much smaller surface on any given deployment.
The more important question is: how do we know whether these devices (or a particular subset of them) record all the time or only after the trigger word?
Twitter, and they write some really good open source stuff too. If you're writing rpc services in java I'd almost argue you should default to considering Finagle:

https://twitter.github.io/finagle/
I write JavaScript all day and wish I could write in Java.
Not the OP, but I understood their comment to mean 'a rewrite in Java of a legacy system written in some other language'?
Believe it or not, not everyone's top priority is money. There are some people who hold their ideals above money. Louis literally has made videos against YouTube and in favor of vimeo, all of his content is mirrored on vimeo, and everyone of his videos have a watermark promoting vimeo. My whole point was that he makes his videos to educate. I'm sure the extra revenue is nice but that's not his daily gig and I don't think money is the prime reason for why he makes the videos. Otherwise he wouldn't be actively driving people to look at his content on vimeo instead of YouTube.
There is no second bubble, just a waxing stage approach. Some of those internet companies were leveraged 1000 to 1 . Not even WeWork or Uber is close to that. There are revenues in even the worst cases unlike back then. So please don't exaggerate.
Blender 2.8 is much easier to pick up after a major revamp of the interface, it's far more friendly to get into.

Eventually you'll move on from using any of the icons and shortcut everything anyway, because you can be so blazing fast.

Try it out, it's fun and free.
What I find most interesting is the avoidance of any mention of drugs. It’s a rather large omission from a historical perspective.
Granted, in python, I'd call the use of a typed dict a smell. If you're able to spend the time creating the typed dict, just promote it to a dataclass. Using python ~3.9, this will look like

@dataclasses.dataclass # or @attr.s
class MyStruct:
a: List[str]
b: int|float

t: MyStruct|Tuple[str,str]

But MyStruct will be an actual object that can be manipulated as an object. And if you want to accept any object that fits that interface, instead of just instances of MyStruct,

class MyStructTmpl(Protocol):
a: List[str]
b: int|float

Then

def f(thing: MyStructTmpl|Tuple[str,str]) -> bool:
return True

f(MyStruct(a=['a'], b=2))

would typecheck.

In JS having the typed-dict type makes sense because you're often working with arbitrary objects with who knows what attributes, but in python that isn't the case. There's fairly succinct and powerful tools (now, anyway) to define record types.
It’s something that you are allowed to discriminate on at hiring, but can get in trouble for later.

Some contracts also make it difficult for companies to do business with them if they hire someone with a criminal record. Government contracts in particular.
Here is the paper:

Long-term implant fibrosis prevention in rodents and non-human primates using crystallized drug formulations
:

> https://www.nature.com/articles/s41563-019-0377-5
Right. And water pipes are sized to the demand, which means water will be moving in them. The water pipe feeding your house isn't a foot in diameter.
Same here. My digestion was worse when I was on it, as well as my overall energy levels.

It seems there is a gene that determines whether someone is a fast or slow metabolizer of caffeine. If I ever get such a test done I'll definitely check if I'm on the slow spectrum. It's associated with worse coffee outcomes.

https://well.blogs.nytimes.com/2016/07/12/for-coffee-drinker...
Citybound: Delivering on the Failed Promises of SimCity
I have been a big advocate for testing only the public interface of your code, but sometimes you can't just avoid it, when you have a really complex piece of function, you got to test it to gain confidence.
Other than that, I hope these are not a surprise for anybody who is writing tests on a daily basis.
Django doesn’t create database connections on import. That would be madness.

It does create an object that can (lazily) connect to the database, so it needs the required database drivers installed. It also needs the required information about _how_ to connect to the database, so it needs the settings loaded.

That's why you need to use `django.setup()` before, to tell it what settings to load. You should never be importing random Django models without this configured, simply because they cannot be used and will not work. We think an exception saying "don't do this, call django.setup()" is less confusing at import time is than "Databases not configured" at runtime. Not that it would even reach that, because you might be using a field from a third party application that needs to be initialized (i.e INSTALLED_APPS configured) or that relies on a configured settings (maybe an encrypted field that needs your SECRET_KEY available).

Stop making it hard, just write a management command. It's super easy.
Device manufacturers. Play nice, or we won't grant you the magic pixie dust to play our content in glorious 4k.
Yes, I agree with you that what is effectively financial blackmail or coercion matters. It's among the most accessible and effective tools historically.

Point remains that as a government China has considerable means and impunity at its disposal.

The fact that numerous non-state actors also do is a key extension of free-speech concerns I find poorly addressed. The NBA as a media platform (among its chief roles) is an example. FAANG similarly. There are numerous others.
And landing rocket on boats before refitting and relaunching them into orbit, but yeah... totally hyperbole.
As a business owner and former SV software engineer that regularly hires former convicts, I can speak to this a bit.

Hiring ex-cons will make your life harder. At least it has made mine. Many times, ex-cons aren't given the practical skills to get by as an adult. They may not have a bank account, understand taxes, have a driver's license and so many other practical skills.

They're also more likely to steal from you, hurt or harass other employees and more. So why hire ex-cons? Well I don't on purpose, I just don't do background checks. I have everyone on a paid trial their first week. We make the decision based on work. I only find out later.

Why do I do this? Because I want to live in this type of world and it's good for my business. My business only cares about the work being done, not the personal history of the employees. Hiring ex-cons will create more work for you but it's led to me finding some of my best employees.

I think it's easy to say we should hire felons but it's not easy for businesses to do this. Prison should be adult school instead of gang summer camp.
> After all, I get paid to solve problems with code, not interpret customer requests.

But how to know what to solve... At least for my job, interpreting customer requests is key. The customer knows what they want, but they don't always realize what they want is not the best solution.

Often I can steer the customer to a vastly superior solution to what they initially had in mind. Not seldom this superior solution can re-use existing code, sometimes entirely.
I agree with everything you say. What does Imgur have to say about it? When it's a business the question in mind is not what's best for the user, but what's best for the business and the user. After all that's the reason you do whatever it is you work for right? They are providing a service.

I personally have no idea why they did this, but I don't presume to know either. However I can add my two cents from the peanut gallery. When it comes to doing something right or wrong, or complex or simple. The bottom line is what does it cost? If you can't finish it in a reasonable amount of time with a reasonable to little or no tech debt, then it's not sustainable for a business. That's the part that literally every level of the peanut gallery ignores when looking at issues like this. And having said all that I still can't seem to imagine why they would want to put that much unnecessary load on their servers, perhaps they get something out of it in return? Perhaps they wanted more control over access to their content, and that required this waterfall loading?
Detroit-area men who sent millions to Yemen spared prison
The Dina font is free. You are welcome to use, distribute
and modify it however you want, just don't use it for
anything illegal or claim that you made it.*

https://www.dcmembers.com/jibsen/download/61/
For large scale projects, Java and C++ remain the go-to languages. I've seen a little bit of Go start to show up but no others. Other languages are used for libraries (Rust, C), only at certain employers (OCaml, Erlang), or for small-scale projects (nearly everything else).
And yet you only offered a misinformed platitude in the form of a question.

Google does all kind of new Java work (Golang contrary to myth, is just one of the languages Google uses for internal stuff, and niche at that), Amazon of course, most of Apple's backend services are Java, Twitter, AirBnB, Uber, LinkedIn, TripAdvisor, and tons of others use Java, and write green stuff in it all the time...
Sorry for not being clear. I agree that "affordable housing" is not a particularly useful starting point for addressing housing insecurity in a meaningful way. I agree that it is a way of maintaining wealth and power.

I think in the context of homelessness, "affordable housing" is used to muddy the waters. "Affordable housing" gets people off on the tangent of home ownership and the American Dream expectations of FAANG engineers. And when that connotation starts to gain traction, "affordable housing" can be used to derail that conversation by bringing homelessness into the mix. No matter what I mean, "affordable housing" has another meaning that can be used to derail my point.

I am really glad you are writing what you are writing and sharing it on HN. It makes Hacker News a better place.

My perspective on housing has developed over the thirty years since I studied architectural drafting at vo-tech and later an MArch. I worked nearly exclusively in housing from 2001 until just a few years ago. With and for developers and homebuilders plus some time in government as a planner and building plans examiner. I watched Hope VI go down in grad school. I worked on some Tax Credit housing projects when I had an independent practice.

Anyway, if I can help, my email is in my profile. Thanks for making HN better.
Artist uses ‘historic’ markers to raise climate awareness
DRM punishes paying customers and does nothing to stop piracy. It reminds me of those "you wouldn't kill" segments at the start of DVD's that you couldn't skip, but just moaned at you to not pirate the DVD. But the only people they were telling this to was paying customers who bought the DVD. People who pirated the DVD, just plugged it into their computer, ripped out the content then published.
In this context "formal" just means that no parts are left open to interpretation [1]. While proof systems are definitely formal that implication doesn't work the other way around.

Under normal circumstances programming code is unambiguous and should therefore suffice as a formal definition / specification (with most programming errors stemming from the fact that this formal definition doesn't match the informal definition the programmer or customer had in mind).

[1]: For comparison, https://en.wiktionary.org/wiki/formal defines 'formal' as: "(mathematics) Relating to mere manipulation and construction of strings of symbols, without regard to their meaning".
Milan seeks US apology for WWII bomb that killed children
Can you cite a law?

For future reference.
Oh come on, “Disney won’t stream their stuff to my niche OS” is not a reason to get their stuff without paying. You can wait for a DVD, you can scrounge a used device that will run their DRM, or you can decide you hate all DRM and boycott their stuff until the unlikely event they offer a copyable version. Lots of people work hard making this shit, and they have bills to pay, these things don’t just spring fully-formed onto a hard drive like Athena from Zeus’ skull. Maybe there’s some morality going on if you buy a ton of merch for what you watch. Maybe.

Or you can reward the companies that do support your niche OS by paying for their stuff, that’s pretty unassailable.

I am far from without sin in this area, but I don’t try to make excuses. Watching stuff without paying its asking price is stealing.
[0] https://www.sciencedaily.com/releases/2017/09/170926105448.h... - "Household chores: Women still do more"

Study confirms that women tend to do more housework than their male partners, irrespective of their age, income or own workloads

[1] https://link.springer.com/article/10.1007/s11199-017-0832-1 - "Time, Money, or Gender? Predictors of the Division of Household Labour Across Life Stages"

Results indicated women performed more housework than men at all ages.

[2]. https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4584401/ - "The Production of Inequality: The Gender Division of Labor Across the Transition to Parenthood"

Mothers, according to the time diaries, shouldered the majority of child care and did not decrease their paid work hours. Furthermore, the gender gap was not present prebirth but emerged postbirth with women doing more than 2 hours of additional work per day compared to an additional 40 minutes for men. Moreover, the birth of a child magnified parents’ overestimations of work in the survey data, and had the authors relied only on survey data, gender work inequalities would not have been apparent.
I wrote those. If anything my views, based on evidence and understanding, have strengthened.
I saw a Reddit post saying the same thing as my post here (CS is nice, try it out). I did and I just liked it. It's not ugly.
Surely this is a typo and you mean “functional language”, as mutability and state is the main issue here, not dynamic typing.
"Humans just might be the first intelligent life." is incompatible with the notion that life is common (which may or may not be true) - our planet is a bit older than the average (e.g. the examples in the article are suns/planets which have already gone through all the lifecycle that Earth will have eventually), so it's probable that we're the first intelligent life in the galaxy if and only if it's likely that we're the only intelligent life that the galaxy will ever spawn.

If there's no great filter before our current stage, then it's extremely unlikely that we're the first intelligent life in galaxy, and either there's a great filter after that or many civilizations have risen already (and have had more than enough time to colonize the whole galaxy a thousand times over at a relaxed, leisurely slow pace, if any of these civilizations wanted to) but we just don't see them for some reason.
I don't know about other countries but the USA is very very lenient on how companies split up stocks and how they condition them. Especially with LLCs. What the Walton's did is perfectly legal and no one is forcing anyone to purchase the public shares. Walmart is actually doing pretty well.
What you describe is illegal in certain manifestations. It's called predatory pricing.
>Someone made a change that took down production because of non-deterministic outcomes? How about break out whatever they were changing into it's own service? With proper fallbacks, breaking that part shouldn't take down all of production again.

Yeah, now you'll have 10 interconnected services, 10x the complexity, and everything will have the ability to take down all of large parts of production, plus all the extra pain points of a distributed system...
It would be reasonable I think, to extend to the woman who devised the concept enough charity of interpretation to believe that she is capable of understanding the nuance involved in discussions and arguments of this sort.
Don't the majority of people still watch TV on their TV? I don't care if their service runs on my computer because it's confirmed they will have an app for PS4, which is how I already watch Netflix and Hulu.

I know there are people out there who refuse to run any non-free software anywhere, and it is a good thing they exist, but I would guess that the majority of people who have Linux on their laptop are willing to use a Fire Stick or their TV's builtin OS or whatever to stream TV and movies.
The author's point is that your job is not to produce code, but rather to produce good business outcomes. Obviously you do that by producing code (and participating in design meetings and collaborating with other parts of the company in various ways).

Firefighters don't call themselves ladder and hose operators. Those are just the tools they use. Their job is to fight fires so they call themselves firefighters.
Reading that interview leads me to assume that it must've been emotional labor for Hochschild to keep her cool at how badly people can misinterpret it.

There's physical, mental and emotional labor. The first is pretty self-explanatory, the second involves thinking and the third involves keeping your emotions in check in order to complete a task.

Whenever you have to put up a fake smile, that's emotional labor. Whenever you have to be tough, but don't want to, that too is emotional labor. If your emotional stability (or lack of) aligns with the task, it isn't. So if you're a flight attendant and smile without forcing it (thus it isn't a fake smile to begin with), there's no emotional labor involved. If you're a drill sergeant and naturally grumpy and condescending, there isn't any either.

EDIT: In the cases above, when I meant that there's no emotional labor involved, I meant that there's no effort involved. The value of the labor is still derived from the emotions nonetheless.
Thanks for the detailed response. Point about treating math notation as a compact way of writing makes complete sense.
I think you are on the right track here.
Energy, energy efficiency, Distribution in a system.
The more centralised, the more uneven the distribution. Decentralised localism might be solution.
Beyond increasing complexity, I think this also assumes a dependency graph that _can_ be broken down into microservices by the author/the author's team. From my experience a lot of things at this scale have such complex dependencies that unteasing those dependencies is difficult if not impossible without asking several teams to do something differently. And who knows how long that will take?
New information is constantly becoming available, therefore more requirements are revealed. That's exactly the same as saying the set of requirements constantly changes.
I mean, we incarcerate people for two reasons... to protect society from criminals and to deter others from being criminals. How good the system works is up for debate, but that is the idea.

Why would providing people info on past incarceration history be contrary to either of those goals?
You have no idea about their codebase, the implementation details of their features nor how they counted the lines (comments included?). So stating that it’s dumb is beyond ridiculous.

You are right in that it’s certainly a high LoC count for Python, but still...
I have a question about a detail in the article:

> But if we moved the log_to_network call out into the outer log_calls function, [...] this would no longer compile as a strict module.

My current understanding is that the log_calls method would NOT get executed during module load time!?!

Why would having a side effect in this function violate the intention of __strict__ ?
It sounds to me like the poster did the emotionally intelligent thing of reading a room and realizing a flame war was about to break out, and thus put in the labor to prevent it- which is a really normal thing for humans to do in social dynamics. It's literally a leadership quality. Later, this poster comments that it was emotionally exhausting- not a complaint, since I don't see them blaming anyone for their exhaustion besides themselves.
Generally, I find that those who fall back on emotional labor as a concept, are work-multipliers. They generate more work that needs to be done and kept track of than they clear, and usually they are the only ones that actually care that that work is done. There's a lot of empire-building in play too.

It's really obvious when you come up with more efficient ways to get what they want done done, and they get angry that it isn't being done exactly as they wanted.
Excellent post! If there's one overarching complaint about the tech community (and HN specifically), it would be this tendency to claim being completely rational, while faulting others for supposedly being corrupted by emotions.

It's wrong both in assuming that emotions are necessarily inferior to other modes of thinking, as well as in not recognizing that everyone makes decisions primarily on emotional grounds (smart people only get to make up better rationaizations).

Related: "advertisement doesn't work on me", "I only review primary data and come up with my own opinions", and every claim ever that some organization is a strict meritocracy.
I'll give you that in controlled code the use of typed dicts would be a symptom of a code smell, but in less controlled environments where you're dealing with eg. JSON inputs, form inputs, SQL table results and so on … not so.

I'm also not onboard the "it's a code smell, it doesn't matter" train. IMO if python adopted the typescript typing syntax we'd all be better for it.

I also forgot to mention the atrocious typing syntax for functions. Once again, typescript is a lot more succint and readable.
> if I sell $2 for $1 that’s a false market

You're assuming that there is some objective value of a dollar, and that all dollars are worth that same. These assumptions are not necessarily true. Rather, they are myths that are propping up the current system.
I imagine sometime in 2030 when a 60 yo uncle/aunty sees this "38 people are looking at it", calmly right clicks on the HTML elements and sees the use of math.random and says "Nope, bye bye stupid website".

I think these tricks are closing on their end of life as percentage of internet-native people are increasing.
Was waiting for this reply, happy to see it come from the mighty jedberg. For those that don't know, click on his bio, he's definitely 100% spot on here
Yes, it was directed at you (and others who act similarly.) I also am glad you shared your experience and liked your comment.
I can't seem to find even one variable-width font with programming ligatures.
There really isn't much to compare to theranos, as it was based completely on a lie. The only thing in common here is just a crappy CEO. WeWork has a solid premise, it's just highly over-leveraged and over-valued.
Could someone explain the symmetry in figure 2? Why top-bottom is so strongly linked seemingly completely ignoring the middle two quartiles?