skysight-inc/HackerNews huggingface dataset:
"pretend to be ATC"

Pilots are really good at pretending to be ATC because of training to handle CTAF MULTICOM UNICOM all of which is basically the same idea despite some paperwork differences. I guess CTAF is what it is, and the COMs are individual technical implementations. Its been a long time since student pilot days and I remember UNICOM had flight service stations and I don't think MULTICOM allows FSS chatter about fuel prices and car rentals or whatever on freq.

I live nearby and did student pilot training at an airport that doesn't have ATC staffing over 3rd shift. There was only perhaps one landing per hour overnight, so they don't staff the tower. Pilots just kinda broadcast off into space, listen to each other, and talk to each other.

I guess you'd describe it as a quiet party line rather than the formal meeting of staffed ATC communications.

Contrary to popular belief pilots listen constantly to each other and will get sorta-complaints from the tower if they haven't been paying attention to other pilots... Cessna 1234 do you have Cessna 6789 traffic in sight to your SW? And if you haven't been paying attention to the conversation between ATC and 6789 such that you don't know 6789 exists or is to your SW, then ATC is going to be kinda sorta pissed. This is why you can't replace ATC with a cellphone, at least not practically.

Another popular, weird, belief is ATC is like radio control and shutting down radio control makes all the planes fall out of the sky. Without the "meeting coordinator / committee chairperson" effect of the ATC, everything will happen in agonizing slow motion with massive distraction, but it'll all happen perfectly well. The reason ATC exists is it saves the pilots time, lets them focus on flying the plane a little more than focusing on commo with every other plane in the area. Its the cognitive difference between a hub-spoke topology and a full mesh. At 2am when there's only 0, 1, or 2 planes up in the airspace over the field, there's not much difference.

ATC does occasionally fail and there are procedures for load sharing.

One interesting EE problem is good luck talking over a 500 watt ATC tower at the field, from a couple miles away and 1 watt handheld. Just saying. Sure you can piss a lot of people off, but complete and utter long term takeover is going to be rather non-trivial. And there are a huge number of planes and sites with DF gear for tracking the old fashioned emergency beacons, so of all the things to jam, aircraft freqs are probably the one freq band likeliest to result in your demise ... You'll live a lot longer jamming the FM radio band or CB or the cops. Maybe not long, but longer.
It doesn't.

Systemd's pid 0 process does not do anything with or about PPPoE. Networkd does. Networkd is a daemon which manages the network configuration and PPPoE makes sense in that context.
In Silico Cognitive Biomimicry: What Artificial Intelligence Could Be
Nuremburg was an exception to the general rule that you couldn't prosecute soldiers for carrying out the orders of their superiors - establishing that the mass genocide of innocent people crosses a line. However, the torture of a handful of active enemy participants might not.
I've started a similar project some months ago, however, my idea was to put the crawl- and search-software on a server so that the search engine can be used even on mobile devices, tablets and so on. On server installation could serve all devices in a household or in a small company then.

The software is far away from being ready, esp. the kernel, the distributes search is not really implmented, the last months I had not much time to contribute, however, what is done is available here under an open source license: https://github.com/r10s/gosearch
> I'm forced to use OS X at work.

I'm using Linux at work (or school -- PhD student here) and having only a non-root user account is a big pain for me. Package managers are unavailable, direct hardware access as well (I can't update my keyboard's programming, for instance), the software is old (debian stable) and you have to clash either with the administrators or have a shadow copy of each application you want to have up to date (emacs, Mono, and others).

Having root on my computer would solve a lot of those things (but the administrators are strongly against that). Still, I write this to stress that no OS is perfectly ready for power users (without root).
> the skills of software engineers are tied to the particular language or framework they are using

Well, not all of them of course, but yes, knowledge of a particular language matters.

For example:

a) idiomatic code in a given language is easier to maintain, a programmer who doesn't know this language won't write idiomatic code for awhile

b) lack of knowledge of available libraries may result in reinventing them poorly, leading to NIH syndrome, which is bad for maintainability... and just bad in general

c) std lib of a language is a special case here: without having memorized what it has to offer you're going to work many times slower due to having to google all the time

and so on.

You can either know a lot of languages and technologies and bet your career on ability to learn new things very quickly, or you can be content with one language and become a master in using it. In the latter case much of your skills do become tied to the language and particular technology, so just be sure to pick one which is not going to stop being popular in a year.
How is it so? Recursion is the only possible form of iterative control flow in the functional languages. If you do not want to allow any forms of recursion, you cannot use functional languages at all.

Of course, you can explicitly demand totality, and it's perfectly fine, but still it is quite a severe limitation, and you'll have to allow optional unrestricted recursion if you want to have (at leat local) Turing completeness.
Increasing Rigor in Huntington’s Disease Research
For information, if other's are on a system with an SSD that's filling up: that's 26.9 GiB.

Thanks for the link, btw :)
I don't know the situation in India, but there are a whole lot of horror stories of startups (and non-startup companies) in the US exploiting employees. Just because you earn more freelancing for US companies doesn't necessary mean coming working for startups in the US will give you higher living standard, Silicon Valley - and California on average - is ridiculously expensive to live in. Again, do your research, I'm not in a position to know your situation.

That actually ties to the part of "H1B is evil". I'd rather not bring up that discussion, just search on HN (in both stories and comments) for "indentured servants" and/ or "H1B" to see all the comments from both sides in the past.

Anyway, the general advice for young-ish (I assume you are) programmer wanting to work for startup is to find not early stage startups, but mid-size one (think of current Uber/ Lyft/ Wanelo, or Facebook 2006-2007 etc.). As you will learn more, have an easier life (not that the work is not as challenging as early stage startup, but early stage startup is quite ... insane in some aspects), and further more, you can already filter out the crappy companies.

Remember, most startups die in the first two years or so, and if us programmers can pick who doesn't... well, I think I have a better job for you :-)
Vermont.
Send me an example of your Python work.

I have visas available for Python devs from India or Eastern Europe.

In depth knowledge of systems programming and distributed computing, and familiarity with cloud service provider APIs and automation frameworks (e.g. Ansible/Chef) a plus.
Although I can agree to the fact that most "startups" (or better say, run-of-the-mill tech firms) here will see programming as just another manufacturing process and won't respect what a good programmer can bring to the table but there still are startups who are awesome and struggling to find good developers.

If you wish, you can contact me, email is in my profile.
The scale-up nation
Could we please not pretend the failings of capitalism are entirely coordination problems and/or eldritch abominations? I mean, come on, your average capitalist society is actually very well-coordinated when it comes to the interests of big banks or agribusiness.
Fields in quantum mechanics really just describe the ways that the force fundamental forces (gravitational, electromagnetic, strong nuclear, and weak nuclear) travel around.

The double slit experiment, which this article focusses on, looks at photons. Photons, are carriers of electromagnetic energy – they're their own field.

The field though isn't really a fluid or medium – thinking about ripples moving across a pond won't help you. The field is just the distance over which the photon will travel. It's more about an area of opportunity for something to happen (e.g. in the event that something gets within range of the photon) rather than a big blobby mass actually hanging around in space.

There's no such thing as "pure energy" (although the fundamental forces are probably the simplest forms of energy). Energy is an emergent property of a system (it is a function of how things in one part of a system are arranged with respect to another part of the system).
Search is an incredibly difficult space to delve into, and Facebook’s search products will face their own unique challenges in that the closed network, with over 1 billion active users, is home to more than a trillion posts. Zuck said on an analyst conference call in July that his search engineers often remind him that Facebook represents the biggest web search corpus out there.

Assuming Google indexes 150B urls, 1K content/url avg on very low end, it's 150T corpus. Assuming even nominal 200 byes per post FB has 200T corpus. It's truly amazing to me that FB content now rivals rest of the entire Internet!
Cognitive dissonance and beliefs-as-attire are a nasty thing to fall victim to. Yes, diet and exercise are the most effective longevity interventions we can possibly take on an individual scale. Unfortunately, that doesn't mean every self-proclaimed "transhumanist" or whatever will actually take the most effective action for their own health and longevity when it conflicts with long-built-up bad habits.
IMHO it's the "artificial" part we need to worry about. Those machines that turn themselves off every time you switch them on (as invented by Minsky and Shannon)? Imagine that kind of logic accidentally controlling a crucial system, and operating too quickly to be interrupted.
My company (startup within big co) just opened an office in APAC and we hired a remote-with-travel engineer. We ended up going with someone who is located in Singapore, but I interviewed people from Malaysia and India, it might be worth looking out for similar opportunities of companies expanding into asia.

Also, there's a growing startup scene in KL, which I'm sure is easier when it comes to getting a work visa.
This still smells funny. The fact that the whole project is handle as one may make the communication between developers and also program component too easy (coupling). Personally I'm a bit overwhelmed by all the 'special strings', flags and options added at each release.
Dependency injection in practice is almost always implemented for tests.

In terms of architecture, it's usually a case of YAGNI. Every dependency injected is a configuration point that is almost never altered, except for mocks in testing. When this style infects a whole codebase, it makes it far harder to read and navigate, because code flow is dependent on runtime data flow. Heavy use of indirections that only ever go to the one place is a bad code smell, and it's a stench over the entire field of enterprise Java.

Code that is easy to read is easy to refactor. Except for natural architectural chokepoints that are typically intrinsic to the problem being solved, you're fooling yourself if you don't think architecture changes are needed for most refactoring - dependency injection isn't buying you what you think you're buying. Every injection point you create is a prediction about the future, about the possibilities of change, but there's one gotcha: the future is hard to predict, so most of your decisions are wrong.

You're better off being agile, following YAGNI, doing the simplest thing that will work, and altering it when requirements change.
Care to elaborate on your sarcasm? I'm interested to know how Microsoft is no different than they were 10 years ago because of an employee dispute.
Aren't you also outside far outside your expertise?

Oligarchy is a political form. Capitalism is an economic form. They are neither incompatible nor mutually exclusive.

Consider that China is often used an example of state capitalism, and Russia as an example of corporate oligarchy.

Even North Korea has capitalists in all but name. See http://www.theguardian.com/world/2014/apr/29/north-korea-cap... .
>Right now, the young have the ability to progress in the economy because older people eventually leave the workforce through retirement or death.

You're kidding, right? This is some kind of bad joke in which longevity is blamed for the shitty labor market faced by Millenials?

>Though the more likely proposition would be that the wealthy who could afford the treatments would never die, and the rest of the population would. That's an even worse scenario in my opinion.

Yes, that's why we should smash capitalism.
The way your scalar multiplication is performed leaves you open to two attacks:

- Scalar multiplication is variable-time, with the variation being correlated with the position of the most significant bit of the exponent (see https://github.com/Bren2010/ecc/blob/bd75261b6fe7839ddc751d6...). An attack like [1] on ECDSA seems plausible.

- The Montgomery ladder uses different code paths depending on whether the exponent bit is 0 or 1; this makes FLUSH+RELOAD attacks possible, as in [2].

[1] https://eprint.iacr.org/2011/232

[2] https://eprint.iacr.org/2014/140
> Recursion is mostly an academic tool.

Wrong.

> In the real world it is a bad idea.

Wrong. Your view of the real world is severely distorted.

> yet not one person offered a non-trivial use of recursion in commercial, medical or military software.

I suspect your 35 years of experience was 1 year repeated 35 times. Otherwise you would have known thousands of cases where recursion is unavoidable.

Take any real world compiler, for example. People nowadays are spoiled, they want meaningful error messages, they want semantic highlighting in IDEs, and so on. So forget about the dragon book, automatons and all such crap - your only option is a recursive descent parser.

If you want a guaranteed quality and proven correctness of your software (since you've mentioned medical and military), you have no other option but to use total languages. It's just too hard to reason about anything else. Which means - you only have recursion and no other means of control flow. Want your software to be 100% correct, robust and predictable - use recursion. I can go on forever, but things I've listed are already more than enough to debunk your point.

> It wastes resources

Wrong.

> and it simply isn't safe.

Wrong.

> Used in the wrong place it can actually kill people.

Incompetent coders kill people. Epileptoids suffering from severe forms of Dunning-Kruger effect kill people. Those who repeat 1 year of experience instead of building experience progressively kill people.
There is a little bit more nuance to it. Everybody knew but the time line is critical and congressional oversight didn't just approve torture, they found out after it happened and there was maneuvering to keep those who knew quiet. They told congress it would be illegal to reveal clandestine information and such, congress didn't exactly go to the mats to change anything though.

Overall, yes, everybody knew "enhanced interrogation" was in use and was effectively "okay" with it. Not that many knew what that was or what it included beyond sleep deprevation and water boarding. I think the way it was out sourced is absolutely interesting, there is a lot more than meets the eye there...

A lot of people involved sure aren't proud of it all though
Can someone suggest a sim that handles real procedural / system design issues properly, like the difference between being a terminal ATC or a ARTCC ATC?

The real world is more of a team approach and most game sims have a pretty distorted view of reality. The guy who's doing ground taxi control at a tower doesn't usually moonlight at simultaneously running approach control while also simultaneously running departure control and enroute. A dude running approach 200 miles away usually doesn't get to play tower 200 miles away to tell a plane when they get to take off.

In my experience with aviation and ATC games, I haven't found one yet where the game designer was a pilot or ATC or listened on a scanner to pilots and ATC during the design phase.

I've also never seen a sim that handles dynamics for anything but planes. Real ATC is all about handling very local weather, and NOTAMS, and hot/cold MOAs (military training areas, if cold you just fly thru, if hot you get out of the way or get shot down). And of course it changes in real time not just once at game start. Also you trade / share space with other ATCs, so that dynamic would be interesting. And your shift doesn't end when all the planes land, you'll always both start and end a shift with planes in the air.

I don't expect much from the arcade games but there have been some sims out there that at least graphically have tried to look realistic and have at least sorta realistic procedures and limitations.
>Namely, we as a society expend a lot of resources on prolonging our lives (in the form of health care costs). We're probably about as far as we can go on life expectancy using cheap/preventative methods like antibiotics and diet/lifestyle changes.

Quite the opposite in the US and Europe, actually: most health-care money is spent in the last few months of life, when disease is severe and medical care is intensive. Much of this could be avoided, to a benefit in both currency and quality-years-of-life, if we employed a lot more preventative and lifestyle-focused medical interventions rather than racing desperately to save someone with heart problems at 63 or a stroke at 88 that could have been prevented by jogging more at 24.

Japan is an examine of where this approach has been tried and succeeded, with the result that they have one of the longest expected lifespans in the world.
Ok, try to blow the stack in a stackless language implementation.
You might try to enter the US through another country. Have you considered Canada, Australia, or England?
ok, will shoot you an email as soon as possible.
Master short story scifi writer Sheckley, R. has this covered:

Bad Medicine

http://www.gutenberg.org/files/9055/9055-h/9055-h.htm
Could you explain your position a little better? Maybe I'm misunderstanding you, but it's not immediately clear to me how the proof being asked for was already obvious.

Also, I'm wondering how you know for sure that someone is a so-called "sockpupppet"? This is a skill I'd really like to master because reading people over the Internet is so difficult.
I think http://www.londoncontrol.com/ is the closest one out there to what you're looking for
> Anyway, tail call optimization only works when you can rewrite the code as a loop

You cannot turn a virtual tail call into a static jump.
Why is this generally more attractive than launching off a long track? I would think the structural engineering challenges would be simpler.
One issue is that in most companies in the US most employees get annual salary increases, 5-6% is a common baseline for people who are doing their jobs well in a company that is successful. Sometimes people get much more.

This means that someone who had been getting annual increases for 20 years is paid approximately 4X as much as a new hire. In addition, their annual increases, being a more or less constant rate, are also 4X as much... and if the pattern continues, by the time they've been working 40 years they'll be making 16X as much as a new hire. Are older workers really that much more valuable? And if they are, as I think is often the case, will management see it when looking at their payroll expenses?

You might think one solution is too stop giving them raises, or even cut their pay, but there's a strong reluctance to do that, even if the employee is willing. Add to all of this a culture of youth, which exists in tech, and you can see a potential problem.

Note, however, that it's not universal. I'm 45 and have no concern about my employability. I work with many people who are much older than me, up into their late 60s, even. In my experience, good software engineers can find employment regardless of age, though it does get harder as your income rises. At some point people may need to either move into management or switch to freelancing, trading steady employment for a much higher wage, working for people who judge your cost against what you achieve for them.

Note that I've dramatically oversimplified the annual salary increase situation, but it's a useful approximation.
Show HN: RiQ – An Arduino based robot with a tablet based programming interface
For people supposedly so intelligent, programmers often appear quite foolish, at least when compared with other professionals.

They give away enormous quantities of their labor for free through open source (some even going so far as to sign one-sided contracts granting the copyright to for-profit corporations without compensation). They openly denigrate their own skills by spreading egalitarian myths like "everyone can be a programmer" (whereas I doubt many doctors or lawyers would make similar declarations concerning the practice law or medicine) and by preferring the title "coder" over its considerably more prestigious alternatives like "programmer" or "software engineer." They promote bootcamp-style vocational schools to flood the market with cheap labor to compete with them and to further bolster the perception that programming is an easy, low-skill trade, perhaps a rung or two above mere clerical work.

And then when it becomes apparent that they are getting screwed by their employers who collude with one another to drive down wages with no-poaching agreements, H-1B visas, and by firing senior devs in favor of 20-somethings, the long-ignored subject of unionization is revived.

And of course, being programmers and therefore unsavvy, the model proposed is invariably that of a blue-collar trade union like the United Auto Workers Union and never an innocuous-sounding, white-collar "professional association" like the American Bar Association, American Medical Association, or American Dental Association. These outfits are so successful in both their lobbying and PR that they've made their members among of the highest paid practitioners in the world (particularly doctors), and the gullible masses remain wholly ignorant of their true nature and consequently spare them from the condemnation usually heaped upon unions, both public- and private-sector alike.

In fact, their PR has been so successful that I wouldn't be surprised if someone responded to this very post contesting my characterization of them as unions, despite evidence of their anti-competitive practices being trivial to come by: http://www.usdoj.gov/atr/public/press_releases/2006/216804.h...
yes, mid-size startups are what I meant by working at US based startup. I dont want to risk coming to US to work for a startup who is at very early stage until and unless I believe in the idea and seem doable as a startup.
> But hastening the movement of money creates risk for banks, because it generally means less time to catch fraudulent transactions.

Less time to make money on the "float"?