skysight-inc/HackerNews huggingface dataset:
I wouldn't ask this question but I don't think it's irrelevant.

It shows you that the person understands concepts like recursion, is familiar with data structures like trees, and understands how to express and work with those concepts in code.

Completing this problem should take only a few minutes and tells you whether a candidate has a basic degree of competence. When someone breezes through a problem like this, you learn something. If someone struggles with it, you also learn something. You can use that knowledge to calibrate subsequent questions and find the limits of their knowledge.

I would be skeptical about the effectiveness of software engineer candidate who isn't comfortable with trees or recursion or algorithms like search. It's a weed-out question like FizzBuzz.

I wouldn't ask this question because I think there are better questions available that allows candidates to demonstrate mastery of concepts like these and also have depth so you can go into substantially more detail when the candidate performs well. (And questions that permit multiple solutions, etc.)
Pied Piper's New Internet Isn't Just Possible–It's Almost Here
Another one is Goldbach's Conjecture, which has been verified upto 4E18, but is still unproved.
Marriage must be a happy coexistence with another person in the same household, and that's exactly what I have.
Statisticians call this inverse transform sampling [0]. The dual result, that Y = F(X) is uniformly distributed for F the cdf of any random variable X, is called the probability integral transform [1].

0. https://en.wikipedia.org/wiki/Inverse_transform_sampling

1. https://en.wikipedia.org/wiki/Probability_integral_transform
I chuckled at the bit about a bluetooth connected salt-shaker because I thought it was a joke, after watching the video part of me still really wants to believe it's some sort of weird joke.

Thank you for the elaboration in your comment above, very useful in my journey as software focused consultant!
If what we're talking about is the societal impact of people's behavior, does the genetic basis matter?

Maybe AnthonyMouse could've been more precise and said "personal behavior opposite of behaviors characteristic of people on the autism spectrum", but that's awfully wordy and pretty clearly what he was getting at.
Just to add, I forgot about office spaces.

We're all remote and most everyone works from a home office- except myself and one of my developers. Our combined office space leases (WeWork and Regus) in Seattle and Portland still don't eclipse what we pay the likes of AWS, DO, and Vultr.
Surprised? Absolutely not. Even the greatest love can wither away if there's no diversity in the way a couple spends their life.

Stasis is death, movement is life, applies to all areas of human life.
CM-2 was also SIMD, but with different hardware (in particular, it had an actual hardware FPU associated with each group of 32 bit-serial processors). CM-5 was the MIMD version (nodes were SPARCs with a custom vector processor add-on).
The only work environment viable engineering answer is to get a library to solve whatever the problem at hand.

At best a top candidate should be able to turn a whitepaper into working code. Knowing trivia rarely translate in solid, productive teams.

Very, very few companies are pushing the what's known barrier.
In the US, sure. In Canada, we have differing labels because it's a different model.
Wikipedia claims it's a far right party. Is Wikipedia wrong?

https://en.wikipedia.org/wiki/Liberal_Democratic_Party_of_Ru...
> all computer hardware is essentially equivalent.

This is quite inaccurate. Hardware directly influences software. "if" statements, functions, and threads didn't exist at one time, and all require explicit hardware support. I believe that as we come up with different abstract constructs at the hardware level, we'll influence the possible software that can be written.
From my subjective experience, most relationships' future is known no later than year two.
Does anyone know the name of the app that's listing/displaying fonts? It looks pretty neat, and I haven't found anything good-looking like that for Linux/*nix.
That's a sad and miserable existence. :(
Exactly that is my point, not having a job offer is not a deal breaker. You can get points for other requirements and apply.

> it shouldn't be a problem for you to get a job upfront also.

That is not true, majority of smart people do not get job in CAN or AUS if they are not in the country. Most HR will simply throw away your resume if you are not in the country.
I interpreted Mz's comment as a somewhat facetious internal monologue I myself am all too familiar with. I agree with you, most people don't believe that, but it is nonetheless a belief that some women internalize after years of the socialization I described above. Yes it's not true that we're not good at anything, but there are subtle and pervasive forces at work in groups that cause women to believe this about themselves.
I buy it. Relationships are hard and marriages are harder, even for partners trying to make things work. It was shocking to me that my friends who are married also have their own struggles. In hindsight, it is normal. I used to think, "well, those guys should have a better marriage", and now I realize how difficult it actually is, and how widespread. The parents from Rick & Morty? Yeah.

My wife and I had tried a lot of things. What seems to be working is applying the practices laid out in "Crucial Conversations". That has been helping both at home and work. It isn't magic sauce, though it helps that even after all that, we still want to try. It feels like the eigenvector is pointing towards a better relationship.

(We both work from home).
> asymptotic complexity

If it hasn't mattered to you, it's probably because you are using libraries or apis which have solved for optimal performance.

In short, performance mattered a lot to you code. Only, you didn't slog long hours to make it so.

Back to the topic at hand, if you didn't spend time to understand why a particular module or library is part of your code base - be it for performance or maintainability or any other -ities - you're halfassing your job as a software engineer. Would a structural engineer ever claim with a straight face that they have never worried about the integrity of their struts? That's basically what you said with your claim.
diversity != black and latino
Computer engineer != programmer.

1. Computer engineer is someone who knows computer science. Acquires knowledge that survives when tools die. Hired by Google and other firms.

2. Programmer. Blue collar worker writing bean counting programs. Mainly writes customer software for order. Gets shit done. Becomes difficult to employ when he turns 40 if the shit he does is outdated.
Agreed. Engineering is a "profession". You wouldn't call medicine or law "trades". In some jurisdictions (Canada for example) calling yourself a "software engineer" without having a professional engineering license is unlawful (although lots of people still do it and it's difficult for the regulatory agencies to enforce it at scale).
Agree fully. I think this is abundantly evident in the fact that there is usually very little social and individual push back when exploring the cognitive/physical/behavioral differences between the sexes of almost any other animal. It's just when these differences are explored in humans that it becomes an issue.
I got into Linux (and now a long systems administration career) quite literally because I wanted to run eggdrop bots on a shell server. Programmed in TCL :-)

Quirky bit of personal history that amuses me to no end.
Hello, wondering if the authors are from Mexico. My hometown is called Morelia in the state of Michoacán, it popped right out.
I think you may be taking the word oddity different than I meant it. These are things that trip up my students when they're learning Python.

I left out error messages (and occasionally other things) because Twitter.

I don't think any of the ones I put in this moment should be considered bugs. Many of these are core language features.
I was pleased to see how well these criteria apply to software development:

"fearlessness in the face of symbols: the ability to read and understand notation" -> the ability jump into a new code base and figure out what it does

"introduce clear and useful notation when appropriate (and not otherwise!)" -> the ability to create new abstractions when required, but to use well-known abstractions when possible (and to not obfuscate code with unnecessary abstractions)

"a general facility of expression in the terse—but crisp and exact—language that mathematicians use to communicate ideas" -> the ability to express ideas concisely and elegantly in a programming language

Etc...
> But Ruby [...] did all that stuff much better and more cleanly.

But it's taken Ruby a lot of years to get there. And even now, I'd suggest Ruby's `refinements` need more maturing for it to be clear. "uplevel" was wonderfully powerful for creating DSLs, even if rather sharp-edged to develop with.
I think most people who use SDF are aware that it is a public good whose existence depends on its users not drawing too much fire to it. If you want to do evil and/or illegal things, there are better places to host content.
Students are taught to write in a special way, using lots of fancy words; those words are seen as having some special value in and of themselves, even though the words do not contribute to the writer's self-expression. The author calls this kind of writing Engfish.

To make it worse, all the teachers (having previously been good students) use these same words, and so the students naturally try to mimic the teachers. (Personal observation: science writing is like this x100, packed to the gills with unnecessary words.)

Further, the author contends the problem isn't just too much complexity, but that mimicking this form distracts from the important pursuits in writing: telling a story, expressing your own unique experience, writing something memorable and enjoyable.

A phrase that stuck out to me was: "Most English teachers have been trained to correct students' writing, not to read it" – which is challenging, because to read the writing you have to engage with the content not just the form, and then having engaged with the content you can critique the form now that you have some idea what the writer is trying to say. The reading can't be rote if the writing isn't to be rote, but try that when you have a stack of poorly written stuff made by kids. It's also challenging because the writer doesn't necessarily have anything to say when the writing is assigned, so you might search for something that isn't there.
Where are you working that you don't have tree structures, nor can't recite the generic three lines of pseudocode to traverse it?

I have used trees in almost every moderately complicated program I've ever written, both for fun and at the office.
Agreed. Days of Rage is an amazing look into groups I had never heard of prior to reading it. Got it for chapters on the Weather Underground and SLA, but thought the whole thing was very well done
I don't understand why the author is so suspicious of formal methods. Other engineering disciplines are based on the application of solid, well-understood principles from the natural sciences to practical problem domains. There are few solid, well-understood principles in computer science that are directly and obviously applicable to software engineering so far.

I vigorously contest the idea that software engineering cannot be rigorous and so shouldn't try.
How does copying the english words from the image to english words as text help non-English speakers?
Not Building a Unicorn
I'm convinced that the only useful definition of a Software Engineer is "someone who has 'Software Engineer' in their job title". Most other Engineering disciplines are far more rigorously defined. That said, observing a disconnect between theory and application is hardly novel or unique to software disciplines.
I'm saying take that into account if you decide to be self employed. If you're not prepared to pay your own insurance when you decide to go out on your own, you're probably not expecting the extra 9% in self employment taxes....

I'm not a liberal or progressive - I'm a bleeding heart libertarian. For instance I don't believe in the minimum wage (libertarian) but I think the Earned Income Tax Credit should make up the difference and it should be a monthly credit so people can have a livable wage if they work (bleeding heart) and don't have a problem paying taxes if it helps people to help themselves.
Makes it easier to look up (copy/paste) and/or use dictionary tools.
They can copy and paste them into google translate?
Then you want to hire people are good at interviewing; not necessarily people who are good at their job.
A "computer engineer" is someone who designs microprocessors and physical computational hardware - not software. (And for the laity, it is not someone who fixes your broken desktop PC either).

Even if you meant SE instead of CE, I feel your distinction is arbitrary and almost classist - while it's true that the top notch folks hired by Google and Microsoft could write "bean counting programs" its fallacious to assume the contrarywise - major accounting and business software firms are just as picky when it comes to hiring - similarly I know plenty of small startups writing exotic software that are able to ship without needing to hire everyone from MIT an Stanford - I also know plenty of very intelligent and capable minds going to waste at companies like Google, MSFT and Facebook working on projects they dislike or for low-impact internal systems - while their contemporaries who went to a coding boot camp got picked up by Snapitterbook and become hot stuff despite never having read the Mythical Man-Month.
that's really sad. it's like they've been domesticated.
It's toxic to assume these opinions are not honestly held and write them off simply with another buzz word.

You keep saying this, but nobody did that. Maybe that's where your anger is coming from. I clarified in my last comment that their opinions are honestly held, so at this point it seems like you're trying to misunderstand me.

I think you really dislike the term "virtue signaling." That's fine, but it doesn't change that that's what is happening here.

The fact that all of this stemmed from the idea that he is a terrible person for threatening to destroy an album as a joke is what makes this situation ludicrous. When the witch hunting mindset is so engrained in our culture, it becomes dangerous to those it targets.
This is great information. Thank you for putting it together I'll bring it up on the Tcl'ers chat !
Authentication is hard. And that's exactly why you should never have to be writing your own auth code, but rather, use existing frameworks.

There's so many tiny details and edge cases that can have such catastrophic results, it's too much of a risk to do it yourself. Unless writing auth frameworks is your job, for course.
Marketing and ads and site Support. All other expenses like hosting, rent, etc are very small compared to these two.
> The GPL is a set of conditions that others have to obey if they want to use your code.

Or distribute it. If someone distributes something to you under a license that explicitly states that it gives you certain permissions, they can't arbitrarily decide to retract that license. That's sort of like saying "if I write a song, and give you a license that allows you to get the sheet music from me, I can refuse to give you sheet music if you ask". If you didn't want to give me sheet music, why did you explicitly give me the right to do it? On some level it sounds like a breach of contract, though of course licenses aren't contracts.

Also you've forgotten that maybe Publii is based on some GPL source code, so they might not be the sole author and thus are infringing on someone else's copyright by not obeying the GPL.

> So Microsoft is bound by the license on MS Word?

Yes, of course they are! That's the whole point! If you read Section B of the Microsoft Word 2013 License[1], it states quite explicitly that:

* In §B4, all disagreements outside of small claims or negotiations will be handled in a binding arbitration. This applies to both parties.

* In §B5, neither party can engage in a class-action suit (they must all be done on an individual basis).

* In §B7, it states that claims have to be filed within one year. That also will apply to both parties.

They also give you a limited warranty for non-trial software in the last section, which obviously they are also bound by. Obviously terms in the license that don't limit Microsoft don't affect them. But with the GPL, it explicitly states that distributors must provide the corresponding source code.

I think I know what you're trying to say, "are you saying that Microsoft employees are bound to the single-seat terms of the license". But that's missing the point -- Microsoft employees aren't given software under the license I just discussed, they're given software under a different license (implicitly) because they work for Microsoft.

[1]: https://www.microsoft.com/en-us/useterms
While I agree I think it's safe to say that in mammals the differences are pretty district, at least physically. A male cannot generally carry, birth, or initially feed offspring. This gives females a very distinct reproductive function over relatively long periods of time. It seems natural that evolution would enhance traits in females (physically and cognitively) that would make them best at that task.
Will Shortz: A Lifelong Crossword Puzzle Master
My wife and I recently took a trip together involving hours of driving throughout western Europe. We were glad to find we enjoyed just being together, even at the end of the trip.

I think it's important to keep building that relationship (courting) throughout the working years, not just to avoid hitting retirement and thinking, "What am I going to do with this person for the rest of my life?" but also just to enjoy all the years along the way!

You wanted to be together enough to get married - isn't it worth investing time and effort to keep enhancing that, rather than just letting it wither?
Nah, that isn't what was claimed. What you describe is more like claiming an engineer is half assing it if he doesn't verify that a given strut (library) that has been analyzed to death (already verified to have characteristics meeting the requirement) in fact meets them.
I don't think you understand DRY. It's a concern within the code you write rather than without. Whether you choose to freeze your dependencies is an entirely different concern.

Say, for example, you have a complicated condition you test for frequently within your code. DRY is when you decide to extract that condition into a testable function you can rely on everywhere in your code (e.g. `isLastThursdayOfMonth(date)`) You can extend this same DRY thinking to all the other abstraction tools (e.g. types/classes) you have as an engineer too. I'm sure you'd agree that it would be an enormous liability and maintainability nightmare to rewrite the logic for that function everywhere. God forbid you're ever asked to change your littered logic to the equivalent of `isLastWeekendOfMonth(date)`.
It said so right in the article: "Social psychologists and sociologists pooh-poohed the notion of any fundamental cognitive differences between male and female humans, notes Halpern"
This is around the multiple definitions of empathy. To quote:

I am staunchly with Bloom here: it is undoubtedly a valuable gift, but only provided it is fortified by a prior rational moral position and appropriately judged action. And there are many arguably moral actions that have nothing to do with empathy or even sympathy – paying one’s taxes, or picking up litter are not glamorous activities but they stem from a rational perception of what is for the general good.

https://www.theguardian.com/books/2017/feb/06/against-empath...
Society says you need to pay money to not be lonely. It also says that anyone that wants to have a conversation with you in a coffee shop is crazy.
Well by definition there have to be biological differences in the sexes so I'm not sure how anyone could argue that.
How to Recover Deleted Text Messages from iPhone
The article explicitly mentions this.
Google has such a vast amount of data on users that its search really can't be beat right now. If you're fully in the ecosystem with mail, maps, contacts, calendar, smartphone, apps, etc. you're going to get better results -- not to mention switching could mean giving up these integrated products.
I think there are some parallels between the cryptocurrency shift and US internal frictions today. The government now is like a machine running without a master, and that's hurting its ability to respond to this development in more than a basic bureaucratic sense of getting tax money and arresting criminals. Stronger control would take a coordinated effort across several arms(propaganda, legislation, backdooring and attacks on the network, seizures). The capability is there in theory, but it's going to other perceived threats with more short-term political value.

On the other hand, if the tech hockey sticks in adoption, that's basically the end of the world order as we know it and the start of one where economic value skips around between different cryptocurrencies, never really staying in anyone's control. In effect a "marketplace for power consolidation".

It's not quite like the gold standard, because liquidity between cryptocurrencies is a software feature, not a physical constraint, and a perpetual stream of speculative ICOs discourages capital pooling. If you're poor in the dominant currency, you simply adopt the underdog to even the odds. Everyone will be writing themselves blank checks through chain forks, in effect encouraging a demurrage economy.
Do power tools really use LiFePO? Based on everything I have seen they all use the common Li-ion chemistry cells. For example a common cell in power tools is the Samsung INR18650 25R, which is not LiFePO I think.
Anything is possible, but I really doubt you'll find those 80 digit numbers. Maybe the sat solver includes some serious number theory though. I doubt it.
It's hazing.
Any questions/answers in particular you would recommend reading?
> but about as useful to a software engineering project in most cases as the ability to smelt and construct a screw is to an automobile engineer

I strongly disagree. Having a deeper understanding of how the data structures you use day-to-day (whether or not you implemented them or not) is vital to you picking the correct structure for any particular task. Not knowing the basics of how to implement a binary tree, a singly or doubly linked list is a massive red flag in terms of the competence of a candidate in my humble opinion.

I think absolutely there are classes of data structures that are obscure or leftfield that shouldn't be asked of a candidate, but there's a hell of a lot that a professional should know, regardless of whether they're using a library that does it for them.
There are many abstract concepts that need to be realized before we can usefully call a particular device a 'computer'. Many, but certainly not all, of these, are gathered up into things like Turing Completeness, Von Neumann Architecture, etc. On that (admittedly mostly theoretical) scale, it is meaningful to discuss computers as a broad class having certain characteristics. That's what allows us to reason effectively about things like efficiency and correctness in computer algorithms. They even allow us to meaningfully compare digital, analog, mechanical and quantum computers, despite radical differences in the physical hardware. If the object you're showing me doesn't support conditional behaviour ('if' statements), it's going to be pretty hard to convince me to discuss it as though it were a computer.
It is both reasonable and unfortunate that TrueType & OpenType fonts can have no more than 65,535 glyphs. That said, probably the logical font made of multiple physical fonts can be probably made to support all available planes.