skysight-inc/HackerNews huggingface dataset:
90% of my software engineering is fighting with incomprehensible framework magic to automates simple tasks that don't need to be automated, to "save me" from just writing some simple code. It's literally rube goldberg all the way, the most over complex contraptions to achieve the simplest of tasks.

"You don't want to write "raw" html/js/sql/Java" Uhm I thought that was my job.
Wrapping everything in a euphemism does not make it more professional.

Finding a way to speak clearly and truthfully without being outright rude, as appropriate for the culture and situation, is important. Speaking up when necessary is important. But it's a lot more nuanced than phrase substitution.

Some of these are pretty good. Some would make you sound extremely passive-aggressive. Some of them imply your own attitude problem ("I told you so...").

A lot are most professionally handled by saying nothing at all. While it is important to speak up truthfully when there would be some positive outcome for you or me or your team, some of these fall into a category where the best outcome is to leave it. It's either irrelevant, unhelpful, or a self-solving dilemma ;-)

Pretend Nice ! => Professional - you're fooling no one
I do not think this can be emphasized enough. Encourage her to pay attention to the things/ideas/puzzling/problem solving processes that bring her joy. Technologies change, but figuring out what engages you will make it much easier to make good decisions about what to explore next. Encourage her to find things she likes to do, and to think a bit about why she likes to do them.

Some woodworkers like their product, others like the process. Recognizing the things that resonate with you is key.
Thank you for the suggestion, definitely makes sense to me.
A couple of the suggested answers are in passive voice. IMO in addition to being poor stylistically in business communications, passive voice conveys apathy and disclaims responsibility. In some of these cases that may be the intent but as other examples show there are ways to do that without passive voice.
Which is why you write, "November 20, 2000", which is easier to read and unambiguous.
Nah, that's just 20%. The other 80% is dealing with the Scrum Agile bullshit.
C++ objects are values.

E.g. in

std::string str;

str is never null, and always a valid object, because it's a value, not a pointer like in most GC'ed or dynamic languages
To Reduce Growing Climate Danger the World Needs to Consider Sunlight Reflection
In practice, there is no problem to be solved here.
I have used a Magic Mouse for at least five years. It has never run out of juice while I’m using it, and I simply plug it in at lunch or overnight or on a Zoom call for a bit when I start getting notifications about the battery.
It runs for three weeks of daily use without need for a charge.
Yes. These roles are more accepting for self-taught people than most software roles (not saying it's wide open). Anyone can email me (last name at gmail) if they want to chat.
In general, the solution to your problem is to hire an attorney. They're expensive and overkill for most things, but they know how to "talk" to the government. And just as you'd expect from Vogons, it's painful to watch.

Otherwise you're effectively left as your own lawyer, having to know tricks of how to communicate/escalate and doing online research to find out. In general if you can get a government agency on the phone they can be quite helpful (their customer service hasn't been optimized away like private companies), but you still need to know what to ask for and how to work with their bureaucratic minds.

For example, for something like a car's title, you could probably apply for a duplicate title from the DMV and get another one sent. But for immigration problems I've got no idea.
I find the people my age (old) can take a lot of crap, whereas I'm treading on eggshells with the young engineers.
I feel that there are things that democratically elected governments is not entitled to do, like denying my basic human rights, which include my right to inform myself about world affairs from sources that do not align with said government's desired narrative, especially so when such methods could lead to a population making democratic decisions on falsified or misleading information. Manufactured consent is just as dangerous as allegedly fake news from outside actors.
A hold of ~100B and Chase’s reply that it is for different reasons. I’m sorry, what is a valid reason?
Getting messages from spammy recruiters is a poor signal about whether you will get hired. Recruiters cast a wide net.

Anecdote: I’ve gotten messages from internal recruiters twice on LinkedIn from Amazon Retail about “exiting opportunities” - while working at AWS. It’s clearly stated on my profile where I work.
If this is truly location independent - in other words Global, then how is this any different from the offshoring or outsourcing that’s been the bane of western tech employees for the last 2 decades?
Because their awful system didn't make it clear what was happening.
It makes me so sad that people get fired in team meetings of any size...

Not your fault, I am sure - and I much prefer your version of the meeting! But it should always be a personal conversation with HR support.
> so the math works out such that if you buy before May this year, you get a guaranteed ~8.5% return over the next 12 months, but if you miss this month you might get screwed.

Can anybody elaborate on this? If I buy on Monday what’s the rate?
First Steps with Nix – Building Emacs
This reminded me of a video I watched recently about the most common form of cheating in Magic: The Gathering: stacking the deck.

The video, by NuxTaku, did a great job of explaining how this method of randomizing the deck actually leads to a distribution which is uniform rather than random and which in turn is effectively cheating.

I haven't played MTG since the early 2000s but the video struck a chord with me because I remembered using this method and not even thinking about it (in my defence, I was a teenager) as being a problem.

So yeah, reading this article I was instantly like "er....yeah...don't ask people to make random sequences because they often have an incorrect idea of what that actually means".
In primary/secondary school? And that was ok?

Most of us made an attempt at homework, but it certainly wasn't because it was richly entertaining.
Yeah, I have no idea who Proust even is, and the extent of my Latin knowledge is that I can usually spell "per se" correctly, but the centurion scene is still one of my favorites, and the Proust one is worth a few chuckles.

I think you just have to be willing to figure out the context from feel.
I saw an article where someone rigged the magic mouse so that the cord was not on the bottom. They found that the mouse was unable to be used while charging. So putting the charge port on the bottom may have been driven by larger design decisions that made use while charging not possible.

https://9to5mac.com/2022/03/25/unnecessary-inventions-magic-...
If we legally mandate this what will the consequence be for small businesses that can't afford the cost to comply? (Even if you mandate it for only the big players - what if there end up being only three players who can afford it, they do it well, no one else does and you end up with only three banks?)

I'm super supportive of banks opening up their data for the reasons in my prior post. But the second order effects of regulation are often overlooked--this is exactly what has gone wrong in the US financial industry where we used to have thousands of credit unions across the country and since 2008 most of them have been driven out of business by compliance costs. Naturally the handful of banks that remain are the ones that were the biggest and had the best lobbying effort in Washington...
There’s definitely a lot of stories were person A recounts their meeting person B by saying “I almost didn’t meet your [father|mother] if it hadn’t been for…” where the meeting was almost blocked by some arbitrary prejudicial filter due yo inexperience. I think it can work to your advantage as a filter but given how poorly online dating works for anything but matching on superficialities you might practically end up filtering out everyone.
I was a happy client of Maslins when I switched from sole trader to limited company. I was doing freelance software development so the switch was a doddle. You get a FreeAgent account as part of the deal and they have access to it to oversea your accounts. They will also do your personal self assessment for you too.

I’m sure they will be able to advise on your situation.
I completely disagree. Java, C# and Python are all dramatically less complex than C++. And there is an additional issue: lack of knowledge about something in one of those languages might lead to a suboptimal implementation, but it is unlikely to lead to anything akin to undefined behaviour. As such, there is a sense in which you need to know everything about C++ in order to use it safely that isn't true of almost any other language.
While there’s an argument about hours, there’s also quality of sleep. Especially REM and Non-REM. It’s still a very interesting comparison.
Nope, not a caricature. Read, for example https://www.atlassian.com/engineering/post-incident-review-a...

This is held up as a great example of transparent communication. For me, this is true, but only for the meaning of 'transparent' which equates to 'you can see right through it, to the extent there is effectively nothing there'.

But as per the article this comment thread is about, this kind of response apparently the 'professional' state-of-the-art.

Yes, I despair too...
I have many of the same thoughts.

Personally, I’m very lucky/fortunate/happy: great family and friends, in a longterm relationship, a stacked social calendar, good job and generous pay, a home I like in a city I love, and the luxury of financial security.

Even still, I can’t help that think the world is falling apart at the seams, or at least heading in that direction. It sounds bleak, but I really have absolutely no faith in elected politicians, billionaires, corporations, the media, our system of democracy, really anything institutional. This isn’t based on some political ideology or a pendulum swinging to the right/left, or some “both sides”/“run to the center” plea (Maybe controversially, I think the “center” is only good at maintaining the status quo, and I think the status quo is not sustainable).

I’m only in my 20s, I am more than personally fulfilled, yet I can’t shake that feeling that everything in the world is going to collapse spectacularly.

No matter who advocates for change, it seems modern society has adapted to either selectively sideline it or co-opt it, with no real change in either direction (see: healthcare in the US for an example; both sides dislike the current system completely, which itself was a compromise around keeping the existing private system, and we’re still in the same mess with even less political will to fix it). My opinion is that polarization is not a “cause” of all of this. It’s a symptom. Nothing is changing and most everyone is unhappy with the way things are.

What I’ve found helpful is making peace with that, in the same way that life itself is temporary. We’re only here for a short time, and so are our institutions. It’s still not a solution, and I still fear for the future, but accepting there’s only so much I can control ( / aspire to control) has helped. It doesn’t feel so much like “giving up” so much as “being practical”, or so I’ve convinced myself.

But hey, if/when the world gets even worse or outright collapses, at least I won’t be too shocked.
I think the confusion here is that traditionally a feature flag is part of the source code, or potentially deployment configuration. Not something that should be modified during runtime of production code, but only during deployments/releases.

It seems that the modern interpretation is much more fluid, where a feature flag can be toggled on and off during runtime over multiple services. It seems logical that you would then want a "command and control" API that flips these things on a larger scale.

However, to me this still sounds very strange. If you have 5k feature flags, do you really have any idea of what is running at all, at any time, anyway? What if you get a bug ticket from last week? Is there such a thing as a "deployment" if the code you execute is dependent on 5k bits that can be flipped and alter execution at any time? If you really need this much runtime configuration shouldn't it be part of some admin workflow that is just inherent to your application? Why would you even risk synchronizing another piece of state over a distributed system that alters the code? Wouldn't you want this stuff to just be part of your data model?

Seems its no longer about feature flags, but about having a global table of bits you can abuse from any and all elements of your architecture, as a shortcut to actual good data design.
> I guess most other people would read it that way

Not me. But as I said upthread, that's the only way I can construe the question as being coherent. And I agree that the question thus construed invites the experimental subject to make predictions about the behaviour of others; so the question tests the subject's accuracy in psychological judgements.

If you construe it as being a coherent question.

I think it's silly to construe it that way; I just think it was a crap question, and you can't draw any conclusions at all from the results.
If you want to find inner peace, you'll need to accept that your expectations for society were never realistic in the first place. Corporate media promotes feel-good optimism because there is a lot of money to be made in making people feel better for an hour or two. But unbridled optimism only sets you up for depression when reality sinks in. If you want to be happy, you need to either keep yourself blissfully ignorant (too late for that, you've already perceived too much), or you'll need to make peace with the shittyness of the world. Focus on improving whatever is in your power to improve, and don't dwell on that which you can't change.
df.pipe(f, ...) is just syntactic sugar for f(df, ...). Nothing slow about it.
Me too. It would be even better if we could disable mouse acceleration on MacOS, it's terrible and drives me nuts.
KDL is a variant of SDLang that’s worth checking out.

https://github.com/kdl-org/kdl
If you phrase it that way, you make it seem that somehow the poor documentation has anything to do with it. It does not and thinking that wat leads to horrible mistakes like HATEOAS.

90% (not really, but some arbitrary and probably admittedly high percentage) of software engineering is integrating API's. You could state that as a problem but it's not really. Integrating API's is just a highly effective thing to do as a programmer. Consider the alternative, if 90% of software engineering is writing things from scratch that likely already exist elsewhere.

Integrating API's is also not a trivial sort of cost that we need to eliminate from our daily work to be more efficient. Integrating API's requires the same sort of deep thought and careful consideration as do the other types of programming we do in our profession. Sure it could be made easier often, but really the part where we have to figure out the finicky details of some API is not the hard part. The hard part is figuring out if and how we can make our use the API within our requirements. That doesn't change even if all API's were some click and drag Lego block system.
> I don't know if it's possible to make a die that always rolls the same

The easiest way would be to put the same number on every side, which would probably fail a superficial human inspection (but might pass a surprising number of machine inspections).
Completely disgraceful, but not totally unexpected for a company led by a 25 year old "crypto intern".
Begin to practice Stoicism. You will always be miserable if your happiness depends on external factors. Humans in general will never change their ways, just learn to accept this fact.
Here in Finland, if you honestly think something sounds like a horrible idea, you're essentially duty bound to say "that sounds like a horrible idea". Be prepared to say why, but don't mince words.

Even I as a New Yorker had to acclimate to that level of bluntness.
Thanks for sharing more sources to help provide light on the potential reality of the student population.

Here's more data I was able to find, from Harvard itself [1]. This enrollment data breaks out by College vs Graduate/Professional vs Extension. In Fall of 2021, African-Americans represented 9.37% of College enrollment, 6.12% of Graduate/Professional enrollment, and 4.11% of Extension enrollment. From looking at this data, it seems like the original 8.5% number is likely in the ballpark for those enrolled.

The picture that is emerging from the data points shared is that the percentage drops at each stage of the educational journey (The share admitted is not holding to those enrolled in the College, and it's not holding to those enrolled in graduate/professional degree programs).

[1] https://oir.harvard.edu/fact-book/enrollment
Online dating sucks because of its emphasis on quick and easily verifiable external traits. The mitigation is to avoid it.
It looks like it's secret. I couldn't find in GitHub anything related with reversed engineered bluetooth cubes.
If someone says the original, I'd assume they're impolite but good at their job,

If someone says the "corrected" version, I'd assume they're impolite, but bad at their job.
It's no wonder that people vote for less government influence in the US. They just never had a good experience with it so they want to get rid of it as a band-aid solution.
When taken together, your observation and GP's form a phenomenon called the "fundamental attribution error":

https://online.hbs.edu/blog/post/the-fundamental-attribution...
... to 0% documented enterprise applications. But, you know, it's "clean code", right?
> but for actually assembling toolchains you generally only need one

Not if you intend to ship on multiple platforms. Having to run builds on the native platform or install a separate cross-compilation toolchain is incredibly annoying (and difficult to get right to the point that it's common to not even try). It would be a big usability win if C toolchains could get cross-compilation to Go or Zig levels of "just works".
Hahaha Mike the logic on display in this comment would indeed make one despair. To the post original author: the temporary boon of cheap oil to burn has reached its end, the century will cleanse all excesses, and what's left of humanity will be wiser and kinder.
? I don't actually know. Is an elderly neighbor and we couldn't find the cable at the house while I was there.
Depends on the context I think.

Step one is for everyone to agree the outcome was poor (or for the client to say so, or the market, or senior leadership, etc.).

Otherwise writing that report is very literally "I told you so", written to make a point.

(I do think it is a related scenario where the outcome was fine but you still believe an alternative approach has value; so you then have to make a choice between accepting "my way is not the only way" and moving on or repeating your point)
Rephrasing, I can understand perfectly from the context of motives and incentives, where a company's incentive is to maximize their bank account regardless of the law. The confusion comes from why they bothered with this particular explanation. Usually, maximizing a company's bank account in the face of potential legal threat either means ignoring somebody entirely for the case of small fry, or starting the PR posturing that will eventually become a full legal defense.

If the legal defense is as flimsy as it seems to me, then the only reason for this type of PR statement would be to demoralize others. To send a message that their actual legal defense doesn't even matter, because they'll win anyways. This seems like a pretty strong statement to make, so I'm trying to figure out where my misunderstanding lies.
> Only people who don't actually use an Apple Mouse think that this matters.

I use one (several, actually — that’s what work provides) and I absolutely think this matters.

I forget to charge it. I don’t check the battery level. I don’t remember to plug it in at the end of the day.

I also shouldn’t have to. That’s an annoying, unnecessary cognitive load.

If it dies in the middle of something important (and it does), stopping for some unknown number of minutes to let it charge is not a suitable option.

Currently, my fix is to have two magic mice; when the battery in one dies, I swap it out for the other one.

This is the only solution that doesn’t offload the cognitive burden of remembering to charge something at the end of the day onto me.

This is also a ridiculous solution to that problem.
You really can simulate laziness in a strict language at the small cost of wrapping things in lambdas yourself -- you don't have to figure out what operations you can do yourself so long as you make everything that should be deferred deferrable (for example, if you're trying to do monadic fixedpoints you need to be careful). If you create your own lazy data structures, if your language supports it you can even have those thunks be forced for you automatically. For example, lazy streams (infinite lists) in Python with memoized thunks:

class Thunk:
def __init__(self, f):
self.evaluated = False
self.val = f
def __call__(self):
if not self.evaluated:
self.val = self.val()
self.evaluated = True
return self.val

class Cons:
def __init__(self, x, xs):
assert isinstance(xs, Thunk)
self.head = x
self._tail = xs
@property
def tail(self):
return self._tail()
def nth(self, n):
for _ in range(n):
self = self.tail
return self.head

ones = Cons(1, Thunk(lambda: ones))

print([ones.nth(i) for i in range(10)])
# [1, 1, 1, 1, 1, 1, 1, 1, 1, 1]

def lazy_map(xs, f):
return Cons(f(xs.head), Thunk(lambda: lazy_map(xs.tail, f)))

nats = Cons(0, Thunk(lambda: lazy_map(nats, lambda x: x + 1)))

print([nats.nth(i) for i in range(10)])
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

def lazy_zip(xs, ys, f):
return Cons(f(xs.head, ys.head), Thunk(lambda: lazy_zip(xs.tail, ys.tail, f)))

fibs = Cons(0, Thunk(lambda: Cons(1, Thunk(lambda: lazy_zip(fibs, fibs.tail, lambda x, y: x + y)))))

print([fibs.nth(i) for i in range(10)])
# [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]

I think laziness is pretty cool, but it does mix up two notions that turn out to be individually important: data and codata. Mixing them together makes a language's type system logically inconsistent, in the sense that you can't use Curry-Howard isomorphism anymore (nonempty types <-> true propositions). Data is, essentially, anything you can do structural recursion on and evaluate in finite time, no matter the evaluation strategy. Codata is fuzzier to me, but the canonical example of codata is the lambda abstraction. Haskell smears a layer of codata over all its algebraic datatypes (data) to make everything lazy.

I once took advantage of this in a light way when designing a compiler targeting C in Haskell, with a goal of making beautiful-ish C code. The language, unlike C, was expression-based, so everything could evaluate to a value. The step that lowered expressions into C syntax returned a struct with multiple fields, each giving a piece of C syntax depending on how the expression was going to be used in context -- was the value of the expression going to be used? or just its side-effect? Then, due to laziness, only one of the fields of the struct would actually be evaluated. (It also handled other cases: lvalues and whether the expression's value was going to be immediately stored somewhere, since then the expression could use that location directly rather than creating a temporary variable if it might have needed one.)
We refunded all our users a week after launching Dashibase