Yes this is a huge problem. I am a software engineer working at a research institute for bioinformatic. The biggest problem I encounter in my struggle for clean maintainable code, is that management down prioritize this task quite heavily.
The researchers produce code of questionable quality that needs to go into the main branch asap. Those few of the researchers that know how to code (we do a lot of image analysis), don't know anything about keeping it maintainable. There is almost a hostile stance against doing things right, when it comes to best practices.
The "Works on my computer" seal of approval have taken a whole new meaning for me. Things go from prototype to production by a single correct run on a single data set. Sometimes its so bad I don't know if I should laugh or cry.
Since we don't have a single test or, ever take the time to do a proper build system, my job description becomes mostly droning through repetitive tasks and bug hunting. It sucks the life right out of any self respecting developer.
There, I needed that. Feel free to flame my little rant down into the abyss. :)
The second problem seems open-ended and a test of UX/creativity skills: "There is no objectively 'right' answer here, and in fact there may be multiple ways to interpret a provided list of file events."
I never understood the value of these simplified competitions. If your goal is to test implementations of approximation algorithms, then at least make the conditions realistic, like the Netflix prize.
While you might think of these sorts of problems as simplified, they really do work well to filter out the sort of programmers you definitely don't want to hire.
And for many programmers you might want, its a simple enough problem that it isn't very time-consuming for them.
I think the Netflix prize is a pretty bad comparison since it fueled years of active research from top machine learning and data mining people. It's great work, but if you're trying to find new hires the time scale is quite a ways off.
On the contrary, within a few days of the Netflix prize challenge being launched, a guy put up a detailed blog post with a simple linear algebra method that could beat Netflix's system at the time (link below). It didn't come anywhere near the 10% improvement threshold, but it beat Netflix's system with a handful of lines of C code, and it ran off his laptop. Sounds like he would have made an excellent hire.
These simplified competitions seem to filter for applicants who can recognize the canonical problems like knapsack/zero-sum/etc. and then successfully implement them.
First one is not knapsack problem (which is about packing largest possible value into available "capacity" without regard to actual geometry of considered objects), but one variant of packing problems.
Naming problem you are trying to solve does not always solve it. Even more so for problems where common belief is that only way to solve them is essentially brute-force and what counts are various tricks in the actual implementation of solution.
This looks to me as more of an argument against democracy than anything else. Not sure how you intended it. Its definitely interesting. But what would we be if not for democracy or some other form of rule? Anarchy. I don't think that is what I want, at least. It would be back to Darwin and "Survival of the fittest".
Democracy in its pure sense is quite horrible, it's commonly referred to as mob rule. That is why modern democracies are constitutional democracies, the rule of the mob is limited so that minorities are protected.
I do believe that his line of thinking exposes flaws in democracy - it's important to identify flaws in the system so that they can be addressed.
A bit of anecdotal evidence from a Norwegian citizen to counter your "doctor vs janitor" argument: I'm more than well aquainted with a doctor and she is more than happy to pay her taxes, in order to benefit the rest of society.
You should also know that even though the tax system in Norway works to even the footing of different posed people financially, it does not wipe out the class difference between a janitor and a doctor. Their net income will still differ by quite a bit (up to 400% at least).
The benefit here is that someone who is considered poor, and would perhaps be forced to live in the street, and only serve to increase the crime rate, will instead recieve help. And the doctor can sleep peacefully at night knowing that the police is out protecting. The hospital emergency staff is ready to recieve the next cardiac arrest patient, the road will be cleared from that heavy snow fall during the night, the list goes on.
In my view the philosophy of the Norwegian tax models is less worries == more happiness, and that is exactly what this model offers for everyone included.
On the other hand its very easy to paint a rosy picture of Norway in a case like this. Mostly becasue US is so easy to outcompete on many of the issues directly involved. Crime rates, mortality rates, helthcare and so on. Norway does of course, like any country, suffer from several political problems. Spending, immigration and government control is perhaps the most fleeting issues right now. But they diminish substantially compared to the issues the US has to face the next decade. And perhaps even worse is it, that the political environment in the US seems allmost hopeless. With the country polarized into two extremes. In Norway the debate is still very much alive around all of these issues. In the US you can quickly get yourself into a place you dont want to be by just shifting your perspective slightly.
Fundamentally, it comes down to the questions "Do you have the right to keep the fruit of your effort? And do you have the right to dispose of it as you see fit?"
It appears that your acquaintance agrees with having her government take away part of her income and give it to the janitor. She accepts the janitor's claim to part of her property as the janitor's right - i.e. the janitor does not owe her any gratitude, and her act is not a voluntary act of benevolence - she is simply giving him what is already his due.
So where does this right come from? The janitor's need. The question here is whether need can give rise to a legitimate right.
You say that your acquaintance thinks that her giving away part of her wealth helps prevent poorer people from becoming criminals. And that this danger gives them the right to claim part of her wealth. But if you extrapolate this thinking further, you'd get people keeping others hostage by means of a threat - i.e. if you refuse to share with me what you earned but I didn't, I'll turn into a criminal and hurt you. This way of thinking about rights is very dangerous.
My view of happiness is simply the achievement of your values, which you have defined consciously and rationally and which do not infringe on the rights of others. The questions for your acquaintance are "Is she feeling happy because she can buy a protection from criminals", or "Is she feeling happy because she truly loves all her fellow citizens (known and unknown, good and bad, lazy and hard-working)?". Regardless of the answer, the more important question is: "Why does she prefer a situation where she is given no choice, no right to refuse to give away, to a situation where she could give away voluntarily, as an act of kindness?"
The researchers produce code of questionable quality that needs to go into the main branch asap. Those few of the researchers that know how to code (we do a lot of image analysis), don't know anything about keeping it maintainable. There is almost a hostile stance against doing things right, when it comes to best practices.
The "Works on my computer" seal of approval have taken a whole new meaning for me. Things go from prototype to production by a single correct run on a single data set. Sometimes its so bad I don't know if I should laugh or cry.
Since we don't have a single test or, ever take the time to do a proper build system, my job description becomes mostly droning through repetitive tasks and bug hunting. It sucks the life right out of any self respecting developer.
There, I needed that. Feel free to flame my little rant down into the abyss. :)