Ever Better Cryptanalytic Results Against SHA-1 - <AUTHOR> http://www.schneier.com/blog/archives/2009/06/ever_better_cry.html <comment><USER2> Just to clarify, this makes a collision attack feasible, not a preimage attack.

That means (iirc) someone can create two messages that have the same hash - but not create a message that has a particular hash.

Still not ideal - but not terrible. It still wouldn't be feasible, for example, to bruteforce a password from its hash.

<comment><USER3> You can still inflict a lot of damage if you can create collisions. Producing a rogue CA is just one possibility.

<http://www.phreedom.org/research/rogue-ca/>

The potential for intentional collisions makes it critical that an attacker cannot control or predict all of the inputs to your signing operation.

</comment></comment><comment><USER4> <http://news.ycombinator.com/item?id=606026>

collision attack is enough to break git.

<comment><USER5> Any git developers here? How much work would it be to swap SHA1 with something stronger?

<comment><USER6> I'm not a git developer, but I remember from linus's google tech talk that it would be pretty trivial, and you can already use your favorite hashes. I don't know anything about repo compatibility. But this wont break git, your source files will still have the same likely hood of producing a collision as they always have, nil. This just means that git could possibly be subject to attack, and that gpg signing sha1 hashes may not be 100% the best method of saying the following code is trusted. But I seriously doubt any sort of injection would compile.

 _EDIT:_ Thinking about it, you could have a commented area somewhere where you put in garbage characters to try to generate a collision, not unlike producing two word documents that read slightly different (different clauses in a contract for example) but have a ton of random metadata that causes the collision. But this isn't an attack on SHA1 just on hashes in general.

</comment></comment></comment><comment><USER7> An attack would be if I build a two documents with the same hash and get someone to sign one of them.

Why would anyone do that? Perhaps they open the document and see its all good stuff, but don't spot all the hidden comments (like HTML's <!--) which are there to make the collision work.

It would be a good practise anyway, that if you routinely sign files other people produce, to add your own blob of randomness as an extra hidden comment to the document you sign.

<comment><USER8> _An attack would be if I build a two documents with the same hash and get someone to sign one of them._

That is not possible using this attack. This is just a collision atttack, not a preimage attack.

 _It would be a good practise anyway, that if you routinely sign files other people produce, to add your own blob of randomness as an extra hidden comment to the document you sign._

I don't think people will trust you anymore if you start adding your own data to the documents you sign.

<comment><USER9> I'm confused, doesn't "collision attack" mean being able to create two (or more) documents with an identical hash? (As opposed to preimage attacks which involve creating documents that have a given hash).

So why would that prevent the attack billpg described?

<comment><USER8> You are correct. That is exactly why this attack cannot be used to forge documents (at least in a direct way)!

To forge a document, you need to find another document having the same hash. So it is a preimage attack.

Using a collision attack you can find collisions in the hash space, but that is not useful directly.</comment></comment></comment></comment>


The Anonymous are petitioning to legalize DDoS attacks - <AUTHOR> https://petitions.whitehouse.gov/petition/make-distributed-denial-service-ddos-legal-form-protesting/X3drjwZY

<comment><USER2> DDoS attacks can trivially go on indefinitely; protests that actually require physical presence don't go on forever. Bogus analogy.</comment>


State of Real-Time feeds : less polling - <AUTHOR> http://blog.superfeedr.com/Real-time/market/statistics/state-of-real-time-feeds/

<comment><USER2> One thing that seems to be missing in the discussion of real-time feeds and other such technologies is any analysis of concentration of power associated with using hubs and superdistribution points. Any centralized distribution point is vulnerable to malicious filtering and political pressure.

Real-time updates are a very good idea, but we haven't yet reached the point where anyone can run a PUbSubHubbub hub, without some fairly capable technical assistance.

<comment><AUTHOR> Well, technically, nothing prevents every publisher from running their own hub (we host some at Superfeedr).

Also, we even encourage publishers and subscribers to both publish to several hubs and subscribe to several hubs as well, so that they can avoid any bottleneck or reliance to a single hub. The only 'burden' on their side is to deal with de-duplication, but that's quite easy.</comment></comment>


Microsoft launches Hotmail app for Android - <AUTHOR> http://www.fonearena.com/blog/42669/microsoft-launches-hotmail-app-for-android.html

<comment><USER2> A little late Microsoft. I guess better late than never. Oh wait...noone uses hotmail.

I'd be surprised if anyone endured hotmail this long, let alone logged in all this time from their android browser.

</comment><comment><USER3> Why? Surely android has a built in mail client and a built in contacts app, that can connect to servers over imap, exchange, etc?</comment>


Our "No Asshole" Rule (2014) - <AUTHOR> http://www.adventur.es/adventures-blog/2014/12/22/no-asshole-rule <comment><USER2> Ehhh.

I work at a company that has a similar policy. What ends up happening is:

1) Everyone becomes conflict-averse for fear of looking like an asshole, so bad ideas often go unchecked

2) People find other ways to be assholes when they want to be, they're just passive-aggressive about it instead

3) It becomes a conversation-terminating cliche. Want to stifle someone disagreeing with you? Accuse them of phrasing something in a way that might be considered remotely hostile.

I'm not saying it's a bad policy, but I don't think it necessarily solves much. It trades one set of problems for another.

What you really want is a "no assholes whose behavior interferes with business," which doesn't really roll of the tongue quite as nicely I suppose.

<comment><USER3> > Everyone becomes conflict-averse for fear of looking like an asshole, so bad > ideas often go unchecked

While assholes are probably necessary for a functional society, in the context of business the No Asshole Rule refers to things like sexually harassing your coworkers. Calling out bad ideas wouldn't qualify.

<comment><USER4> Why do you need a "no assholes" rule for sexual harassment to be unacceptable? Sexual harassment is unacceptable, regardless of policy.

(does this criticism make me an asshole? What if I added an ad hominim)

</comment></comment></comment><comment><USER5> I've seen this at two shops now, verbatim (indicating that the phrase is cut- n-pasted from some management self-help book).

In both cases, it translated into, " _The assholes who have the most seniority or the ear of executives are 'team players'. The team players who do not have those things are 'assholes'_".

It's just a verbal tool and political weapon for bullies to encourage sycophants... and for me is more of a red flag than a recruiting tool at this point.

<comment><USER6> Yes, precisely. It irks me how this concept is always stated so matter-of- factly, like they just discovered some objective fact of the universe and you're an idiot if you're not on board. "No assholes! Like, duh!"

All I can think is, let me guess: when you get rid of perks and don't promote people that should be promoted, and generally treat employees like cattle, you're not being an asshole. But if someone is not prim and proper about disagreeing with you on some issue they are an asshole.

Also, I had to laugh at this absolute ridiculous gem of a sentence:

> Almost everyone, including jerks, agree that a workplace free from assholes > is attractive.

So, is that "jerks" as distinct from "assholes", or... ? The liberal employment of the word "asshole" gives the impression that this is direct, simple talk, that there is no wiggle room here. But the rub is always in who gets to decide who is an asshole and who isn't.

<comment><USER7> Does this mean that they still hire jerks just not assholes? Also what's the cut off point between jerk and asshole?

</comment></comment></comment><comment><USER8> > The other test is to meet their significant other. What qualities did they > choose in the person with whom has the most influence over them?

Am I the only one bothered by such a request? I wouldn't want to bring my SO, not only because I wouldn't want to mix my private and professional life, but also because it seems incredibly weird to me to have my private relationships being used to judge me.

Weird and creepy.

<comment><USER9> I agree, and I find this incredibly invasive. I agree the "how they treat wait staff" test, and sharing a meal with someone to give you some idea of what their personality is like has _some_ merit in my experience, but no, you can't meet my SO or invade my personal life.

The fact this is even considered is appalling, let alone publishing a blog post about it.

</comment></comment><comment><USER10> If you want to see a place that has a toxic culture because it is filled with, well, arseholes - then you need to have a look at Wikipedia.

In fact, if you want to see how bad it can get, then you need to look at something I'm unfortunately responsible for starting - the Wikipedia Administrators' Noticeboard:

[https://en.wikipedia.org/wiki/Wikipedia:Administrators%27_no...](https://en.wikipedia.org/wiki/Wikipedia:Administrators%27_noticeboard)

Even worse is the incidents section of that noticeboard:

[https://en.wikipedia.org/wiki/Wikipedia:Administrators%27_no...](https://en.wikipedia.org/wiki/Wikipedia:Administrators%27_noticeboard/Incidents)

It's very, very hard to edit on Wikipedia these days. If you have any mental instability whatsoever, I strongly urge you to avoid editing Wikipedia like the plague. It's very unlikely you'll be able to change the culture, good people with great reputations in the community have tried but the culture is so bad now that it's impossible to fix it as it stands.

<comment><USER11> _> If you have any mental instability whatsoever, I strongly urge you to avoid editing Wikipedia like the plague_

Case in point: [http://motherboard.vice.com/read/wikipedia-editor-says- sites...](http://motherboard.vice.com/read/wikipedia-editor-says-sites-toxic- community-has-him-contemplating-suicide)

<comment><USER10> Well, yes. Quite. Trust me, I suspect that nobody on earth is more aware of that article than I am.

</comment></comment></comment><comment><USER12> Always remember, to the Emperor, Luke Skywalker was an asshole.

Policies like this have nothing to do with "assholes". They're about control and groupthink.

<comment><USER13> I don't think that's a standard reading of the movie.

</comment></comment><comment><USER14> With a passive aggressive policy, how would one expect anything but a bunch of assholes?

Negative rules are always a problem, because there's no consensus about what they mean. What does "playing politics mean"? Or "obnoxious"?

You know what's easier? Have a "treat your colleagues with respect" rule. Define that as "treat others as you would have them treat you".

<comment><USER15> > "treat your colleagues with respect"

It'd be more respectful to assume that. Writing down basic social and professional skills as rules is patronizing.

</comment></comment><comment><USER16> FYI, Professor Sutton from Stanford wrote a book about this very same idea: [https://www.amazon.com/Asshole-Rule-Civilized-Workplace- Surv...](https://www.amazon.com/Asshole-Rule-Civilized-Workplace-Surviving- ebook/dp/B000OT8GV2?ie=UTF8&colid=2OTNF1Q6XNEHU&coliid=I2KFH2MQ0GT0W6&ref_=wl_it_dp_o_pC_nS_ttl&tag=hizook-20)

I didn't know about Sutton's book at the time, but we used the same rule when raising our seed round. We rejected more than one VC firm based on this rule.

<comment><USER5> Ah, I knew it had to come a management book. Whenever you see managers at multiple companies reciting the same phrases in their speeches, it's always a lazy cut-n-paste from a recent self-help book.

There may actually be good material in that book. However, what gets written down by consultants and professors, and what is actually applied in typical practice, are two separate things (e.g. every "agile" methodology book ever).

</comment></comment><comment><USER17> I'm sure their intentions are good but the approach comes across as facile. What's an asshole?

Instead of saying "no assholes", just list the behaviors that define assholes and just say "don't do these things."

</comment><comment><USER18> Ironically while reading this I got the distinct impression that the writer was a manipulative asshole.

<comment><USER19> How did you get that impression?

<comment><USER10> I don't think he's a manipulative arsehole, but it does seem very aggressive and judgemental to use the term arseholes. Normally it's only arseholes who tend to call other people arseholes, after all :-)

<comment><USER20> I disagree. People intuitively know or quickly learn when others are socially trying to cause them harm. Classifying anyone doing that as an asshole is putting a word on a reflexive assessment even non-judgmental people do and understand. They might choose to take it a different direction in how they respond. They know person was being an asshole in that moment.

From there, we could say someone who consistently performs asshole behavior is straight-up an asshole. Whereas, others just act like them on occasion.

<comment><USER21> People actually suck at (a) knowing when they are being an asshole, and (b) not interpreting anything that doesn't benefit them as hostile to them. @see Why Everyone (Else) Is a Hypocrite: Evolution and the Modular Mind, by Kurzban. [https://www.amazon.com/Why-Everyone-Else-Hypocrite- Evolution...](https://www.amazon.com/Why-Everyone-Else-Hypocrite-Evolution- ebook/dp/B004KZQKDC?ie=UTF8&btkr=1&redirect=true&ref_=dp-kindle-redirect)

<comment><USER20> Re-read my comment. You're addressing a strawman. I said most can pick up when people are repeatedly causing them harm in social situations. There's grey areas but ask random people you'll get a bunch of common answers.

<comment><USER21> If you think people only assign the asshole label to someone who does them repeated harm you should try driving in Massachusetts.

</comment></comment></comment></comment></comment></comment></comment><comment><USER22> Wait, isn't refusing clients/opportunities/etc. because of "asshole-ness" in its own right also an asshole move? I mean sure you have good intentions, but isn't "no I'm not letting you into my lane cause your an asshole" kind of a hippicritical thing to say?

<comment><USER23> Bad customer behavior aways seems to go along with ending up with less money for the job in the end.

Particularly as a freelancer, you only have so many billable hours in a week. You can spend those hours with people you enjoy, and make more money, or with people who make you miserable, and make less money. Pretty obvious choice.

<comment><USER22> Ya, it all makes sense, not saying it doesn't, I just mean its kind of ironic and an asshole move in-and-of-itself. Sometimes the right thing to do isn't always the nicest.

</comment></comment></comment><comment><USER24> Problem is, most people don't know what a real asshole is.

I mean, seriously. I dated so many people who were angry at me because I was honest and wanted to work on the relationship issues and don't just sweet talk everything.

</comment><comment><USER7> I find it curious that company so concerned about culture and behaviour is so gratuitous with profanity. Do you really need to swear here? I think if I read this I wouldn't be interested in the company but this whole piece is completely ridiculous anyway.</comment>


How the CIA Might Target Apple's XCode - <AUTHOR> https://www.schneier.com/blog/archives/2015/03/how_the_cia_mig.html <comment><USER2> The article is very short and vague...just go tot the direct link it is referring to: [https://firstlook.org/theintercept/2015/03/10/ispy-cia- campa...](https://firstlook.org/theintercept/2015/03/10/ispy-cia-campaign- steal-apples-secrets/)

I think this part is the most interesting: _by manipulating Xcode, the spies could compromise the devices and private data of anyone with apps made by a poisoned developer_

I know iOS allows us to block an app from utilizing data over cellular, I guess the concern would then be on wifi networks.

</comment><comment><USER3> This has been released about Xcode - but it's likely that any major development platform has been targeted, especially those for cellular phones.

As always you can never be certain, but assuming Android has also been targetted would help to explain some odd bits compiled into things like the Android Uber app [1]. My gut tells me that researchers ought to look at the Apple version.

[1] [http://www.gironsec.com/blog/2014/11/what-the-hell-uber- unco...](http://www.gironsec.com/blog/2014/11/what-the-hell-uber-uncool-bro/)

</comment><comment><USER4> Cause this is exactly what the US needs... another intelligence agency running wild unchecked on the internet.

</comment><comment><USER5> i feel that if this was done, it was done 'over the wire', more or less on the fly, and not by wholesale appstore replacement but by mitm of internet traffic streams looking for xcode binary material and replacing it, or portions of it, transparently.

</comment><comment><USER6> Sorry to be the one... but it's "Xcode" with a lowercase "c".

<comment><USER7> I'm baffled why people post this kind of correction on aggregators and not the article's own comment form. It's like mumbling while reading a newspaper on public transport.

</comment></comment><comment><USER8> Unless they can force me to download XCode from someone other than Apple, or somehow hack Apple or force them to support this (not likely), this is a pointless exercise. If you distrust all software that isn't open source and validate it yourself, then I suppose anything is possible. I don't wear foil hats though.

<comment><USER9> They've already demonstrated that they have the means to inject into a binary stream, so unless Apple start encrypting everything - and I mean, _everything_ \- that happens between the App store and dragging the App into /Applications, there's little we can do to resolve this issue.

This is one of those cases where the betrayal of the NSA/GCHQ/Spy-Agencies-of- the-5-eyes-nations is really obvious. We can no longer trust our developer tools...

<comment><USER10> Encrypting that entire process doesn't strike me as excessive, I kinda assumed that was already how it's done anyway.</comment></comment></comment>


Language Design: Use [ ] instead of < > for Generics - <AUTHOR> https://soc.me/languages/stop-using-for-generics <comment><USER2> Yes, let's move away from the standard syntax used to specify generics, which is used in virtually every widely-used programming language of the past 15-20 years I can think of, and instead redefine the most common syntax used for array indexing (oh, and make array indexing look like a function call).

This fixating on relatively inconsequential issues, while totally missing the forest for the trees, is a dangerous attribute I've found in a small subset of programmers.

<comment><USER3> I would say it's in a small subset of people who think like computer scientists rather than like software engineers. Computer scientists think about better syntax for computer languages. (I don't think that this is actually a _better_ syntax, especially given the already-established conventions. But thinking about array indexing as a function call is, in my view, an interesting take.)

Software engineers, on the other hand, worry about how to efficiently write non-trivial programs. For that problem, this change doesn't move the needle whatsoever.

Most non-junior programmers think more like software engineers than like computer scientists. And even many who think like computer scientists can see the forest, not just the trees.

<comment><USER4> I've never seen a computer scientist put a lot of effort into syntax. The POPL people are more interested in type systems and semantics than they are in syntax.

</comment></comment></comment><comment><USER5> This article completely loses me at the end where it suggests that using square brackets for assignment and collection access is an unnecessary/dangerous convenience.

It might not be the author's preference, but the argument made about it getting abandoned as the language ages anyway is demonstrably false with the most popular languages in the world (Python, JavaScript, Java, C, C++), and in languages with operator overloading it could never be true no matter how far the language evolved.

<comment><USER6> Exactly. Array indexing with [] feels ok to me.

> someList(0) /* instead of */ someList[0]

This is worse. How do you disambiguate that from a function call? It's now just abusing ()

<comment><USER7> > How do you disambiguate that from a function call? It's now just abusing ()

You don't. If you apply an integer to an array, it will return an entry. To me, it makes perfect sense to use a(i) instead of a[i]. In fact, in case you need some more complicated data structure to organise your data one day, you could switch to a function call for lookup without rewriting the code that uses a(i).

The question is not 'how do you disambiguate?', but 'why do you want to distinguish?' Because an array is just a special case of a function that maps an integer to something else. It is logically not different from a function with a large contiguous switch statement.

<comment><USER8> > To me, it makes perfect sense to use a(i) instead of a[i].

I disagree. Square brackets links to memory, paren just returns data. Of course you could implement the paren function to return a reference, but it makes the code a lot harder to read since that is not the normal case. See comparison:

        a[i] = 3;

or

        a(i) = 3;

</comment></comment></comment></comment><comment><USER9> I think the tone of this post is insufferable, and the arguments have little merit presented this way.

The alternative suggested is also non ideal, since array declaration/indexing is semantically different than a function call, not all languages have method calls, not all languages have _postfix_ method calls, I can think of a few ways to break that syntax (what if the type has a call operator and indexing operator?), and it is hypocritical.

The problem with <> is that they are used elsewhere. If you use [] by sacrificing arrays, () will cause problems because they're used elsewhere.

The lowest friction solution would be to introduce a new two character bracket. How about <: or :>? (: :)? I don't know but writing about it in that tone won't get anyone to do something different.

</comment><comment><USER10> > Use [] instead of <> for generics. It will save you a lot of avoidable > trouble down the road.

D uses !() for generics. It looks odd at first, but soon becomes completely natural:

        struct S(T) { T t; }

        auto a = S!(int);
        auto b = S!int;   <= when only one argument is needed

Since ! is not a conventional binary operator, this:

1\. parses without lookahead and ambiguity issues

2\. stands out in the code as being a template instantiation

Well over a decade of experience with it (and D code typically makes heavy use of templates) with no issues shows that it works.

<comment><USER11> From a computer science standpoint it is obvious that generic declarations are just functions that accept type parameters and return a declaration according to the type parameters. So the only reasonable suggestion would be to use the same syntax for both type parameters and normal parameters and optionally add something that distinguishes between the two (like your !).

Meanwhile picking either <> or [] feels like that decision is based on personal preference. Obviously, you can justify choosing the most popular syntax because of familiarity but then [] was never an option to begin with.

<comment><USER10> > From a computer science standpoint it is obvious that generic declarations > are just functions that accept type parameters

I'm ashamed that realization was slow in coming to me. But once it did, it was key to greatly simplifying the D template syntax.

</comment></comment></comment><comment><USER12> I tried (lightly) to convince people to switch from <> to [] well before Rust 1.0, but even when many (not sure if it was most) agreed that square brackets were superior, there was no will to make such a radical syntactic change, for two main reasons:

1\. Angle brackets are also not _uniformly_ superior. _Technically_ , I think it's fair to consider them uniformly superior, but social aspects are important too; there was reasonable concern that Rust had exhausted its weirdness budget. (Of the most common languages people may be familiar with when coming to Rust, I think Scala is the only one that uses square brackets for generics; the likes of C++, C and Java are much more common and use angle brackets.)

2\. For Rust specifically, it wouldn't actually have been just a syntactic change—if you want to change array indexing to use function call syntax, you've got to sort out more technical challenges there, things that would be approaching trivial in full-GC languages but which are actually rather difficult in Rust. Specifically, function calls are rvalues only (`… = f()`), but array indexing can be an lvalue also (`a[i] = …`). So you need to more or less unify the Index and Fn trait families, auto-ref/-deref might cause trouble, and placement might make an appearance in it too for best results (and that's something that still isn't resolved). Now I'm inclined to believe that these changes would have been a really good thing and resulted in a more coherent and incidentally slightly more flexible language (and not in a dangerous way), but it would now be even more difficult to achieve (though _not_ impossible; the edition system could be used for the syntax side of things, and Fn/Index implementations are still mutually exclusive, because you can't implement Fn manually on stable, so you could blanket-impl Fn traits for types implementing Index traits without breaking backwards-compatibility).

I'm simplifying the story a bit. Others may fill out more history and technical detail if they desire. I'm going to bed.

<comment><USER13> Rust did have [] at some point. It was switched well before 1.0.

<comment><USER12> It was switched from [] to <> before 0.1, i.e. unfathomably ancient history.

More information on this and other Rust-related stuff, from a couple of years ago (thus, well after Rust 1.0): [https://old.reddit.com/r/rust/comments/6l9mpe/minor_rant_i_w...](https://old.reddit.com/r/rust/comments/6l9mpe/minor_rant_i_wish_rust_had_gone_with_square/)

</comment></comment></comment><comment><USER14> Can't say I agree with most of the last paragraph. I much prefer to have my function calls easily differentiated from my array indexing / hashmap keying.

Though I do agree that array/object literals using [] and {} are probably not necessary.

</comment><comment> F-0X My personal anecdatal arguement against "Hard to parse for humans" is... I actually really like generics residing within <>. It's actually harder for me to read generics denoted otherwise (D uses parentheses)

As for the last paragraph, I'd implore language implementors to continue using < > lest we get that awfully ambigous nonsense.

<comment><USER15> Scala uses brackets for generics and parens for array accesses. It works nicely, I think.

The primary argument against < and > as generic brackets is that the ambiguity can make for some confusing error messages. It also prevents you from pre- matching your braces before the parsing phase (a technique that enhances error recovery).

<comment><USER16> Maybe it's my bias of having been introduced to parameterized types via C++'s template mechanism, but I find that <> looks natural to me and Scala's use of square brackets feels off. In general, I find myself preferring C-derived syntax.

</comment></comment></comment><comment><USER17> I find it extremely ironic that Hackernews has swallowed angle brackets from the title (the article rants about ambiguity during parsing)

<comment><USER18> Yes. You can't use HTML in postings here, but the site still eats angle brackets.

Let's see if this will work.

<

Nah.

<comment><USER19> <>

Some of the modifications done to titles are indeed weird and contraproductive IMHO.

</comment></comment></comment><comment><USER20> If this had been published in, like, 1982, maybe the author would've had a point. But by now we're all so used to <> for generics, especially when scanning code rapidly, that I can't imagine the meager benefits of switching would outweigh the cognitive cost.

<comment><USER21> I don't think in 1982 they had issues with it - most problems that this article purports angle brackets to have are problems we have recently invented.

As for HN not being able to handle having them as characters in titles, one would hope that would be a "simple" matter of escaping the characters at time of submission and parsing them at time of rendering.

</comment></comment><comment><USER22> Try using verilog where <= is both the non-blocklocking assignment operator and the less-than-or-equal operator. At first it might sound/look weird, but you can get used to it easily.

It's all about the context; I think it would actually be more confusing to go with the author's suggestion.

Furthermore, I can't think of a place in code where the generic and comparison use cases of < or > would be ambiguous or even adjacent.

<comment><USER23> > Furthermore, I can't think of a place in code where the generic and > comparison use cases of < or > would be ambiguous or even adjacent.

Most languages that use angle brackets for generics (e.g. C++, Rust, Swift) also allow you to explicitly instantiate generics, which leads to a syntactic ambiguity, e.g. is

        a < b > (c)

a function call or two comparisons? The usual way to disambiguate in these cases is to check whether b is plausibly a type and treat it as a generic, but this is ugly on a few different levels.

<comment><USER9> Rust uses the "turbo fish" to get around this. Your example wouldn't compile unless a and b where valid variable names.

        a::<b> (c)

Is how you instantiate a generic. It's not that ugly. Bigger problem is value type generics/const generics where you want to do some logic like

         a<b > c>

<comment><USER23> > Bigger problem is value type generics/const generics

How does Rust solve the ambiguities with const generics?

<comment><USER24> The ambiguous const generics have to be surrounded by { }:

      fn function<T, { ambigous const generic expression }>(arg1: T) -> T {

</comment></comment></comment></comment></comment><comment><USER25> It looks like the < and > characters need to be escaped because they're missing from the story title when viewed on HN.

<comment><USER26> One more reason why they shouldn't be used for generics??

<comment><USER3> When I write code, whether I can easily make an HN headline out of the code is _nowhere_ on my list of concerns.

<comment><USER12> But when I write _articles_ , how it will be handled by various platforms _is_ on my list of concerns. _So many platforms_ damage things with & < > ' " in them, stripping angle brackets and maybe their contents, and possibly entity- encoding all of those characters. (I find that curly quotes are harmed less often than straight quotes these days!)

When I wrote [https://chrismorgan.info/blog/rust-artwork- owl/](https://chrismorgan.info/blog/rust-artwork-owl/), which has the title "<_>::v::<_>", I thought carefully about how it would be handled by feed readers, &c. Fortunately I had already been very careful in the site implementation (e.g. I support HTML in my titles and can strip it or have a different plaintext title, so angle brackets were definitely handled correctly) and had made the deliberate decision that my feed was Atom and uses <title type="html">, so feed readers _should_ all get it right (though doubtless some will ignore the declared semantics and butcher it); if it had been an RSS feed (which doesn't support declaring the type of a title), some feed readers would have stripped it to "::v::" (and been justified in so doing). Reddit handled it just fine, but maybe it's just as well I didn't submit it to HN!

</comment></comment></comment></comment><comment><USER27> The bracket ambiguity in C++ is much worse than the article describes.

        Foo < a , b > x;

This can be either a template installation or a sequence of comparisons.

</comment><comment><USER28> That's the most ridiculous article I read this week. At this point the fact I can't input < and > with my virtual Azerty on physical Japanese keyboard could make in it to make it more substantial.

</comment><comment><USER29> IMO haskells way of defining type parameters with forall is the best option. It doesn't fit with C-style function definitions though.

It's kind of a stupid thing to rant over. Whether a language uses <> or [] is the least interesting thing about it, but that doesn't stop everyone from bikeshedding.

</comment><comment><USER30> D language lets you define your template(s) in the following format:

        auto add(T)(T lhs, T rhs) {
            return lhs + rhs;
        }

and to instantiate it you do the following:

        add!int(5, 10);
        add!float(5.0f, 10.0f);
        // won't compile; Animal doesn't implement +
        add!Animal(dog, cat);

Personally, as a C++ adventurist I find the instantiating syntax a bit confusing, but quite tolerable.

I wonder whether anyone attempted to use "|T|" as their template syntax...Ruby uses it in iterators (I think) and if I'm not mistaken Rust uses it with closures.

Wouldn't be a bit cleaner to have something like the following?

        |T| something (T foo) -> T {
          // do something in here
          return foo;
        }

Personally I prefer it.

<comment><USER31> > Ruby uses it in iterators (I think) and if I'm not mistaken Rust uses it > with closures.

Ruby and Rust both use them for closures (I assume Rust took them from Ruby). Nearly all of Ruby's iteration constructs are based on closures, so it makes sense that you understood them as for iterators.

</comment></comment><comment><USER32> I agree with some parts of the problem (those < > chars already have other uses), but not others (guillemets are even shorter and they read just fine). I don't care for the proposed solution: it's just robbing Peter to pay Paul.

Now people are proposing digraphs and trigraphs as alternatives. Have we learned nothing from C?

I'm annoyed that (even in 2020) every programming language restricts its syntax to ASCII characters (1967) which can be typed on an IBM Model F keyboard (1981). Unicode has dozens of unique styles of brackets. Everybody's using an OS that supports Unicode, and an editor/IDE that autocompletes most of their source code anyway. We're even using programming languages which allow Unicode identifiers, so ASCII-only viewers have been in trouble for 25 years already. People are even using emoji in commit messages. That ship has sailed. Unicode is safe to use.

It could be List⟦Int⟧ or List⟬Int⟭ or List「Int」 or dozens of others. They're big, they're clear, they're easy to parse (one char, no other uses). All you need to do is pick one and make it part of the language, and update a few editor modes to support it in some templates.

<comment><USER5> the question for _programming_ is not solely about readability, it's also about writability.

imagine being a beginner programmer and not even being able to find the character you need to make your program work without learning about Unicode...

<comment><USER33> Just allow both. [https://docs.raku.org/language/unicode_ascii](https://docs.raku.org/language/unicode_ascii)

</comment></comment></comment><comment><USER34> It's not going to happen, but my favorite solution to the parsing ambiguities would be to parse < as a comparison if there is whitespace around it, and as a template bracket otherwise. Kind of how "puts -1" in Ruby prints -1, and "puts - 1" tries to subtract 1 from the result of puts.

</comment><comment><USER35> Fun fact:

        Array(1, 2, 3)
        someList(0)
        array(0) = 23.42
        map("name") = "Joe"

All of this is valid MUMPS syntax and does what you'd think.

I'd loooove to hear the author's thoughts on the above then extending weird parentheses syntax crap to function calls, MUMPS style too:

        USER>s foo(1) = "hi,there"
        USER>s $p(foo(1), ",", 2) = "you"
        USER>w foo(1)
        hi,you
        USER>

Maybe I'm warning of a slippery slope here, but this is a direction that I'm not sure you'll want to go down.

Also a fun fact, MUMPS has very dynamic typing and thus very much no type annotations.

</comment><comment><USER36> I think that describes Scala:

\- [https://docs.scala- lang.org/overviews/collections/arrays.htm...](https://docs.scala- lang.org/overviews/collections/arrays.html)

\- [https://docs.scala-lang.org/tour/generic-classes.html](https://docs.scala- lang.org/tour/generic-classes.html)

Unfortunately, scala caused parsing problems by allowing alphabetic function names as operators, grabbing implicit arguments from all over the place, and leaving out () in function calls (I think they reversed the latter decision)

</comment><comment><USER37> I personally like the way D handles it.

<comment><USER38> Which is

<comment><USER10> [https://dlang.org/spec/template.html](https://dlang.org/spec/template.html)

</comment></comment></comment><comment><USER39> Article about a complete non issue.

</comment><comment><USER40> Python's typing package (mypy) uses indexing or square brackets for generics. Not sure if I find it confusing in complex situations.

</comment><comment><USER41> For God sake generics is just a function over types. Use () like Haskell do.

</comment><comment><USER42> Why does it have to be an enclosing pair of infix characters?

<comment><USER43> Generally, I think Type<Param, Param> is like a function call, you are applying two parameters to a generic type to get a concrete type.

But, you could curry generic parameter application, and then have a simple operator, so it'd be Type ! Param ! Param. Thus:

        Map ! Str ! Int a = 5

Not sure I like that.</comment></comment>


Show HN: Find Corporate Housing Near Your Office in San Francisco - <AUTHOR> https://www.nestapart.com/go/cities/san-francisco <comment><USER2> The site looks quite clean and intuitive. I'm impressed that you already have 36 properties. That must have taken a while to set up. How long have you been working on this?

</comment><comment><AUTHOR> Did you try the move office and find route feature ? Those 36 are the buildings in San Francisco where we have instant book (many properties per building). There are about 400 buildings but most are not automated in booking as of now.

</comment><comment><AUTHOR> Appreciate any feedback on our mapping / route implementation. Thx! Sam

</comment><comment><AUTHOR> anyone out there ? Thanks for feedback !</comment>


Know Before You Go: Ulaanbaatar - <AUTHOR> http://roadsandkingdoms.com/2016/ulaan-baatar/ <comment><USER2> WTF I'm just starting to read when they distract me with some overlay. That's when I closed the tab. I've encountered this shit a few times now. What gives?

I was just starting to gain interest in what I was reading. Then BAM distraction. I guess it wasn't that important to me after all.

<comment><USER3> Install adblock?</comment></comment>


Ask HN : What are the most annoying issues you run into when writing code? - <AUTHOR>

I'm looking to identify problems that our startup KrashKart can solve.. any ideas..<p>here are some we've come up with...<p>- errors in tools<p>- libraries (& web browsers) that don't comply with standards<p>- have to deal with complexity in order to do a simple task<p>- significant portion of code may be parameter marshalling<p>- large number of files required for typical project<p>- text is subject to typos & encoding problems<p>- can't find example/testbed code for a library/standard<p>- poor/nonexistent documentation <comment><USER2> Most of these aren't really things that a startup can solve, since to be useful, you need to integrate with all the other crap out there, and once you do that, you find you're just as crappy as they are. But I'll chip in with my biggest pain point:

It's discontinuities in the development process. Y'know, those little features that seem like they should be easy to implement, but aren't.

The particular discontinuities differ between languages, but here are a few that really bug me:

Java, C, C++, and JavaScript: Converting a plain old field to a method that computes the property. This is why Java books tell you to always use accessors.

Any OO language: Adding a new method to an interface implemented by lots of classes

Java/C++: Adapting a 3rd-party class to an interface that it doesn't natively support.

Haskell: Converting a pure function to a monadic one

Haskell, Ocaml, & Erlang: Adding a new field to an ADT or tuple.

Any language without a refactoring browser: renaming a method, field, or variable.

All languages: converting prototype code written with ad-hoc data structures (tuples, lists, dicts) to production code with formal data structures (classes, ADTs)

All languages: changing the order of function arguments

All languages: internationalizing strings

</comment><comment><USER3> Not what you are looking for, but inaccesible documentation is my biggest irritant. I'm talking to you broadcom and a lot of USB peripheral chip vendors as well. And now the PowerVR keepers.

</comment><comment><USER4> All languages: O/R mapping

<comment><USER5> O/R?

</comment></comment><comment><USER6> Debugging a class with several levels of inheritance</comment>


SXSW: Is Twitter the next Napster? - <AUTHOR> http://www.itworld.com/internet/100843/sxsw-is-twitter-next-napster <comment><USER2> Napster failed because it was closed down, as it was found to engage in illegal activities. So: no, Twitter is not the next Napster. Comparing Napster and Twitter is like comparing a tree to pair of scissors. I'm sure you can find some analogy between the two, but that doesn't make them related.</comment>


Moore's Law Is Alive And Well, And Intel Will Prove It Today - <AUTHOR> http://newenterprise.allthingsd.com/20110504/moores-law-is-alive-and-well-and-intel-will-prove-it-today/ <comment><USER3> GODDAMMIT, Moore never 'observed' this: "Perhaps you've heard of Moore's Law. This was the observation in 1965 by the Intel co-founder Gordon Moore (pictured at the Intel Museum in 2005) that the number of transistors that could be crammed onto a chip doubles and the size of those chips tended to shrink as manufacturing technology improved on a fairly regular basis: About every 18 to 24 months."

Moore's observation was that the density yielding the minimum cost per transistor doubled with each generation (which doesn't actually predict that the density itself will double, only the point at the bottom of the cost curve will move to 2x density), not that the density doubled or that everything got 2x MOAR AWESUM in some random way.

Yes, it's sad, but it's true. The number of mis-statements of Moore's Law in the computing press will double every 18 to 24 months.

<comment><USER4> Moore's Law has become synonymous with any technology getting faster/smaller/cheaper logarithmically.

<comment><USER5> There are several exponential growth laws in computer science: for example, Nielsen's law for bandwidth, Kryder's law for storage. It's misleading to address them all as Moore's.

<comment><USER6> Also (George) Gilder's law.

</comment></comment></comment></comment><comment><USER7> Perhaps the announcement will be more concerned about the chip stacking (i.e. that is a bigger deal than going 22nm):

[http://semiaccurate.com/2011/04/07/intel-goes-finfet- on-22nm...](http://semiaccurate.com/2011/04/07/intel-goes-finfet-on-22nm- somewhat/)

</comment><comment><USER8> The current prediction among computer architects I've talked to is that Moore's Law will go for another 10-20 years. I don't think anyone's surprised to hear about 22nm being achieved (not to say that these continual technology shrinkings aren't hard).

<comment><USER9> I thought the long term trend has shown for a long time the size of chip components converging to the size of an atom by the late teens. A little hard to imagine how physical transistors can get smaller than that. Possibly qubits could built from smaller particles: photons, electrons

<comment><USER10> We could still get speed ups from higher electron and/or hole mobility after we stop shrinking things by going to different materials, but yeah - <USER2> really won't be Moore's law any more.

</comment></comment></comment><comment><USER11> Here's a video explaining the new transistor design: [http://www.youtube.com/watch?v=YIkMaQJSyP8&feature=playe...](http://www.youtube.com/watch?v=YIkMaQJSyP8&feature=player_embedded)

Pretty cool stuff.

</comment><comment><USER12> 22nm is exciting to me for power consumption.

Imagine a computer that uses nearly 50% less power than even the current 32nm state-of-the-art.

But the problem is the support chipsets (north/southbridge) aren't keeping up?

ARM is going 28nm next year too.

</comment><comment><USER13> I wonder if this is not just the 22nm process. I wonder if they'll be unveiling something to do with memristors.

<comment><USER8> From talking to people working on on-chip non-volatile memory, my impression is that memristors are still too immature for production. If anything, phase- change memory seems more viable at this point in time.</comment></comment>


Ask HN: How to leave my country? - <AUTHOR>

I am from Brazil.
For many years I've been wanting to leave, now I think I finally can, because I finished last month paying all my student debt.
I have no assets, no money, no job, no friends here or abroad, I want to start a life somewhere safer than here and somewhere with easier upward mobility, so anyone can help me? How I leave my country? <comment><USER2> I recently moved to Denmark for a job and I have met a lot of people here who came from their nations in order to get into Scandinavia. If you can put up some money, you should get a Green Card which allows you to look for jobs. Beware though that the job market in Scandinavia is quite competitive because of the high wages. Australia and Canada are giving out visas as well for many workers. Look those up too.

</comment><comment><USER3> Do you have any European relatives like grandparents? I know a lot of Brasilians get into Italy that way.</comment>


A man owns the most advanced private air force after buying 46 F/A-18s - <AUTHOR> https://www.thedrive.com/the-war-zone/32869/this-man-owns-the-worlds-most-advanced-private-air-force-after-buying-46-f-a-18-hornets <comment><USER2> His company buys these things and then has a contract with the Navy for when they do training. So IF I'm reading this correctly, it's not just some random dude buying all this stuff for fun, it's his company and they have a very clear business purpose for doing this.

"He was also one of the early pioneers of the then-fledgling, if not wholly experimental, adversary air support market. In the early 2000s, he joined forces with the Airborne Tactical Advantage Company (ATAC), which was blazing a trail with their contracts with the Navy to supply fast jet targets and electronic warfare pod toting adversaries that mimic everything from enemy cruise missiles to fighters for Navy and Marine fighter aircraft and Navy surface combatants to train against. "

<comment><USER3> Yeah I had to follow a bunch of the links to figure this out, but in short, he runs an air combat training company, and the Air Force and Navy pay him to field a training "adversary" for the military pilots to fight in mock combat.

From further reading it sounds like the idea here is to get a diverse and different field of aircraft. I guess the NATO forces can practice against each other, but it's not realistic in the sense that any opposition they would face in a real war would theoretically be using very different equipment. So guys like Air USA are paid to conjure up a fleet of all kinds of aircraft, and pilots to fly them, which will act as more legitimate test.

<comment><USER4> > Yeah I had to follow a bunch of the links to figure this out, but in short, > he runs an air combat training company, and the Air Force and Navy pay him > to field a training "adversary" for the military pilots to fight in mock > combat.

The thing that I don't get is why would the US hire him to provide adversary aircraft that it already operates? I could totally understand them hiring someone who operated a bunch of ex-Russian aircraft, but if they wanted F-18s why not just call the Navy?

<comment><USER5> It's often more expensive to create specialized training capabilities in house. Contractors have an advantage with both equipment and personnel costs.

A contractor can maintain their jets however they want as long as it's safe and they can meet their contract requirements. The contract maintainers can stay at their job as long as they want. The USN and USAF maintainers move every few years and have pretty good retirement benefits (which used to be better but are still better than what most private companies give), and have to get lots of additional training and all that needs to be paid for. A contractor is still supposed to follow all the safety regulations, but contractors seem to be able to generate sorties at rates that military units couldn't manage even with double the manpower.

Contractor pilots are paid strictly to fly. Naval aviators and USAF pilots are both subject to "up or out" policies, where officers that aren't promoted are told to leave. This means military pilots have to serve as staff officers to keep themselves promotable. During a staff tour they either quit flying or they fly less, which kind of wastes the money spent on training them. There are good reasons for requiring this (and some good arguments against it), but the bottom line is that contractors don't have to worry about it and can operate cheaper because they aren't wasting 20% of their personnel budget with a fighter pilot working behind a desk.

<comment><USER6> It might also be beneficial to have a training combatant, who is not in the same chain of command as the trainees. Gives external perspective, and reduces the chance of collusion to show "good results" if done right.

<comment><USER7> That's what I was thinking initially.

However, wouldn't the same pressures that apply to someone in a chain of command, also not apply to a contractor?

So, for example, if someone tasked with testing the current military strategy comes up with a wargame tactic that would embarrass the military (i.e. their bosses) they may not want to do that because embarrassing their bosses is probably not good for them.

However, in the same vein, someone reliant on those military bosses awarding them contracts would also not want to embarrass them, because it wouldn't be good for their ability to get contracts in the future.

In the former scenario, you at least have the case of a conscientious individual or team still going forward with what they think is the right thing to do.

In the latter there is no such compulsion either, so if anything, the chain of command argument makes things worse for contractors.

<comment><USER8> As a field grade officer having just recently finished an NTC rotation, the OPFOR has zero qualms about embarrassing BLUFOR.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> I think a lot of folks are skimming the top of this and missing the really interesting parts.

Their focus doesn't seem to be providing adversaries against pilots, but adversaries against weapons systems.

He's essentially selling organic data to train JTACs against.

The goal here isn't as much great avionics, but great combinations of sensors and sensor jamming.

The military focuses on having a combat ready fleet, while he focuses on a fleet that can provide lowest cost options to provide appropriate training data.

A lot of that fleet is made up of trainers fit with electronics packages and Cessnas similarly Frankensteined. Then the military and manufacturers rent it out vs maintaining their own limited-use fleet.

The hornets are great, not just because they're sweet jets, but because of the electronics packages and maintainability.

...and then he has a paramilitary nut/Bond villain vibe that keeps the story less dry and probably appeals to the intended audience.

<comment><USER10> I read it all and while it's great that he has a legitimate reason to own these, it doesn't change the fact that he owns a private air force, heavy weapons and state-of-the-art countermeasures. It's a terrifying legal precedent and he's opened the door for a new market niche that less savory people can sneak into.

The US already has ludicrously expansive personal rights to weapons ownership for any reason. We have a guy buying up a private air force. We have several guys building space vehicles. If Elon Musk or Jeff Bezos wanted a nuclear- armed ICBM could we actually stop them? Or, maybe more likely, some QAnon nutjob getting his hands on an armored vehicle and driving it through a shopping mall in Atlanta?

<comment><USER11> You do realize that there's a ton of precedent for privately-owned heavy weaponry in the US, right? As the 2nd Amendment folks would point out, there used to be US citizens who owned _warships_.

F/A-18s without guided weaponry aren't really that much of a change. (they've got cannons, but afact no JDAMs, JSOWs, AMRAAMs or even dumb bombs)

> Or, maybe more likely, some QAnon nutjob getting his hands on an armored > vehicle and driving it through a shopping mall in Atlanta?

Well, you can literally buy WW2 era tanks. And it doesn't take all that much to make them street-legal. This isn't new. And yet, we DON'T see nutjobs abusing it.

<comment><USER10> I know. There's a document out there somewhere with John Adams signature telling a merchant captain it's fine to put cannons on his vessel. Privateers were even recruited to fight the British in 1812. That's what the 2nd amendment was actually written for. And the last time it was relevant.

And I think just saying it hasn't happened yet is like saying we haven't had a giant pandemic yet in 2019. I'd rather not wait for a catastrophe to decide we should do something about it.

<comment><USER12> "Do something about it" like what? The 2nd amendment specifically says the right to bear arms shall not be infringed. If some nutjob wants to hurt people, he can figure out a way to do it with some household chemicals and gasoline. And if we're truly worried about that, shouldn't we be addressing the mental health problems that would cause somebody to drive a tank through a mall? I know it's a cliche, but guns don't kill people... people do.

<comment><USER13> Have you ever killed someone without a gun? Not trying to be metal, but I was in a self defense situation many years ago and and something terrible happened.

Shooting a gun vs using "household chemicals and gasoline" to attack someone, to say nothing of knives or bare hands, are so apart from each other that I know for a fact that you have no experience with violence or how much easier it is to do violence with a gun vs other methods. You are just parroting teenager-level philosophy.

Besides all that, we have huge amounts of data over more than 100 years. Turns out, and this will shock you, when you have more guns you are more likely to shoot people and kill overall.

I don't want people to die because Bubba finds it badass to own an AR-15 they will never use except maybe to kill themselves or a family member (statistically, these are the no1 and no2 most likely people an American is to kill with their gun). Do as you will I guess but almost nobody needs to own a gun privately.

<comment><USER12> And I don't want people to die because a tyrannical government decides it needs to occupy the population. It's acceptable to me that some people will die as a result of gun violence, if it means the citizenry keeps its right to bear arms. Every homicide is a tragedy, but the weapons are not the problem nor the cause.

If you want to restrict the rights afforded by the 2nd amendment, would you like to restrict some others too? After all, the "freedom of the press" was designed at a time when newspapers were literally printed on a printing _press._ The founders couldn't have imagined the internet, so do people really need access to such a powerful way of disseminating information?

<comment><USER10> I would like to restrict only the second amendment. I don't see how a slippery slope argument is remotely relevant. There are dozens of liberal democracies in the world that have robust personal freedom and no right to bear arms. In fact, our right to bear arms is a direct descendent of the British Common Law version that existed for centuries and has been almost completely removed in the 20th century with no loss of free speech or press and no descent into tyranny. The country whose tyranny the founders were worried about.

<comment><USER12> > I would like to restrict only the second amendment.

At least you admit it.

There are ways to do this. You can get a supermajority in congress to agree with you, or you can get 34 state legislatures to agree to call a convention of states. Then, and only then, you can change the constitution.

Barring that, no law or executive order can restrict the second amendment and be constitutional. Fortunately our current president has appointed justices who will ensure this remains true.

<comment><USER14> > Then, and only then, you can change the constitution

You can also just suspend parts at will during a pandemic.

<comment><USER15> Or any time a state of emergency is declared. Which, according to the Supreme Court, is pretty much whenever the executive wants it to be.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER16> Air USA (Don Kirlin, president), along with a bunch of other companies were selected as contractors for the U.S. Air Force to provide "Red Air" (adversary training) services. This is not new; the Air Force uses private companies for training as the cost savings are immense:

• Reduced flight hours and maintenance on fleet aircraft.

• Instructors do not need to be pulled from schedules.

• Fleet aircraft do not need to be hard scheduled.

• Cost per flight hour is much lower for common aggressor platforms (A-4, L-39, F1M, and now these legacy F-18s) than the aircraft the Air Force is training in.

• Private companies can more easily maintain and source parts for aircraft the military cannot (Migs, for instance).

This particular sale was the remainder of the RAAF's retired F-18 fleet, which Canada started buying in early 2019. These are _not_ Super Hornets.

Some of these companies have been around for decades. Some competitors:

• ATAC

• Top Air

• Draken

<comment><USER17> Let us not forget the hemorrhaging of pilots from the USAF, largely due to the hostile work environment and the general bullshit they have to endure. They simply don't have enough experienced people to provide this function.

<comment><USER18> This is interesting. Anywhere I can learn more about this or if you have the chance, would you expand?

<comment><USER17> [https://warontherocks.com/2018/03/air-force-in-crisis- part-i...](https://warontherocks.com/2018/03/air-force-in-crisis-part-iii- dear-boss-its-all-about-the-culture/)

[https://federalnewsnetwork.com/dod-personnel- notebook/2019/0...](https://federalnewsnetwork.com/dod-personnel- notebook/2019/04/new-study-shows-grim-outlook-for-future-of-air-force-pilot- shortage/)

[https://www.businessinsider.com/us-air-force-considering- sto...](https://www.businessinsider.com/us-air-force-considering-stop-loss-to- keep-pilots-2017-4)

[https://www.stripes.com/news/air-force/air-force-is-still- sh...](https://www.stripes.com/news/air-force/air-force-is-still-short-more- than-2-000-pilots-1.621269)

[https://www.rand.org/content/dam/rand/pubs/rgs_dissertations...](https://www.rand.org/content/dam/rand/pubs/rgs_dissertations/RGSD300/RGSD397/RAND_RGSD397.pdf)

And that doesn't even touch the shitshow which is drone crew morale.

<comment><USER19> > What if you could fly the F-22, the preeminent fifth-generation air > superiority fighter in the world? According to internal data from the > Aircrew Crisis Task Force, last year even that community retained just 30 > percent of pilots eligible to leave.

... Wow.

Years ago I read a discussion between two people interested in USAF careers. One of them wanted to fly the F-22. The other told him to get the credentials and apply for the position. I remember wondering: you can just _apply_ to pilot the world's most advanced supermaneuverable stealth fighter? Why would any F-22 pilot want to give up their position? I assumed it was because of the problems with the life support system:

[https://en.wikipedia.org/wiki/Lockheed_Martin_F-22_Raptor#Op...](https://en.wikipedia.org/wiki/Lockheed_Martin_F-22_Raptor#Operational_problems)

I never thought the USAF could have morale problems...

</comment></comment></comment></comment></comment><comment><USER20> I'm amazed that this is even possible. I seem to recall that there are countries with unusable fighter jets, because the U.S. will no longer supply parts and expertise for maintenance. The article indeed states: "the purchase does include all of the RAAF's F/A-18 spare parts inventory and test equipment, valued at over a billion dollars alone."

<comment><USER21> I too am amazed that this is even possible, but for different reasons. Do other first world countries allow non-government companies to hold this much sophisticated military hardware? Maybe so, I just haven't heard of it.

The other day I was reading about some Saudi prince's half a billion (!!!) dollar yacht.

Sometimes I wonder if I live in the same planet as these people. It is hard for me to imagine such wealth and power

<comment><USER22> > Do other first world countries allow non-government companies to hold this > much sophisticated military hardware?

No, they don't. And neither does the US.

The F18 is now nearly 40 years old. Typically the advanced and sophisticated aspects of airframes are not allowed for sale, to private entities, or even non-us government ones.

The advanced avionics, weapons systems, etc, are all tightly controlled.

<comment><USER23> The article claims that the configuration will not change from what the RAAF had been flying, and that the planes have been more or less fitted with the most modern upgrades available.

So, nothing rivaling next generation hardware but also nothing to sneeze at either.

<comment><USER24> Also no munitions. Unless you are worried about info leaks to China (who else is sophisticated enough to take advantage of it?) I'm not seeing your concern.

<comment><USER17> The munitions come from the US. They can be fitted if desired.

</comment></comment></comment></comment></comment></comment><comment><USER25> I grew up in the town where Mr Kirlin and his businesses are based, have lived there on-and-off, and know him through various personal and professional circles. I also am formerly of the aerospace industry myself.

I'm happy to answer questions people may have.

<comment><USER26> Ditto, (hi fellow Gem City-er?)

The Kirlin's occupy a very particular role in the city.

once operating the largest franchise of Hallmark stores for nearly 60 years before quickly going out of business a few years ago. Other Kirlin defunct businesses include "The Fly", a Blue jeans only store in the 80's, KSNI (Kirlin Super Net Inc) a dial-up ISP in the 90's.

The mentioned Kirlin of the story used to run "The World Freefall Convention" the largest skydiving convention in the world. For about a week and a half the small Airport would be beset by 10,000 skydivers and cessnas. One quirk of Quincys airport is a super long runway that can support a DB Cooper style 737 jet landing, so one would be chartered to allow 100s of skydivers to do high altitude jumps.

Unfortunately the convention ended because of the Bible-thumping city leaders didn't care for the weeks of debauchery that were part of the festival attendees.

<comment><USER27> I lived in Quincy for about ten years and grew up in Hannibal.

I've met several members of the Kirlin family and Don's a sharp, cordial guy. I find it interesting that he's made so good a go at such an unconventional business when other members of the family have had such problems in speciality retail. I wonder where the Hallmark store business would be if Don had been in charge.

I'll not comment on the ISP because I used to work for a competitor with a fierce rivalry.

</comment></comment></comment><comment><USER28> But surely the private pilots training against US military pilots get to see the current tactics, and the private radars and electronic warfare pods get to record the current combat settings of US military radars and electronic warfare systems. There is no way this is not all classified top secret and a major target for foreign intelligence. So all his personnel, pilots and technicians, need clearance as if they were active military (maybe more, because advanced tactics and information on all different NATO allies and aircraft, not a single squadron like most service member know).

Even if for some reason it is cheaper for the US military to have this in a private company instead of maintaining aggressor squadrons with Migs, how is this secure?

<comment><USER29> That's not the secret sauce, in the same sense that keeping source closed doesn't usually improve code quality from a security standpoint.

The other counter is there are 26 operators of the F-16. Frankly it would be easier both in practice and legality to get cooperation from some dude in Pakistan or Venezuela than a US citizen who can at least sorta be watched over.

Most of the tactics are not terribly advanced in the sense of some mysterious secret martial arts kick that defeats all. Most of the time battles are won logistically long before the fighting starts. Everyone in the business kinda knows what F16s do, not any more of a secret than knowing what Mig29s do, the struggle is always having enough resources in the right places at the right times to do anything about it.

Something that often surprises civilians is most US military manuals are freeware and have always been that way. If you want to learn how an Army Brigade Combat Team operates, you don't join the KGB and steal documents, you just download FM 3-96 and read it. This is why actual veterans get annoyed about fictional hollywood military stuff; if you don't understand the role of a BCT's information operations officer sufficient to portray one in a movie, its just sheer lazyness to make something up instead of simply reading the FM.

Its all part of the interesting strategy to handling massive public communications networks; half a century ago you could have an edge if it depended on having a secret sauce. Now that anyone with a web browser can download the official F-16 flight manual your strategy for having an edge relies on other forms of secret sauces.

A good analogy for the problem is that excellent world class scientific documentation exists for weight loss and athletic performance, yet most people will not train in those areas. Olympic athletes are not high performers because the textbooks for weight lifting are kept secret and only for their reading.

<comment><USER28> Sigint agencies hoard 0days and know they get "burned" by using them against a serious opponent that records traffic and can analyze and reverse engineer malware. If the 0day is useful against your own systems, you would hesitate to use it before your systems are patched. I think electronic warfare and ECCM systems can have similar dynamics.

I always assumed (without any evidence) there is secret firmware or settings for these systems that will only be used in time of war and not used during training.

I guess Israeli Air Force knows countries like Iran have the Russian hardware and personnel/training for dealing with the Elta gear that Israel exports, but I also guess the Israeli Air Force has secret sauce, maybe using the same hardware, that they don't export and use only for striking strategic targets, knowing each strike teaches the opponent something.

<comment><USER30> >I always assumed (without any evidence) there is secret firmware or settings for these systems that will only be used in time of war and not used during training.

I believe the military takes training realism incredibly seriously, and wouldn't dream of "testing in production" with a weapons system.

</comment></comment></comment></comment><comment><USER31> It's not really an "air force" in the military sense, as these planes are unarmed and can't shoot anyone down unless the pilot carries a handgun or rifle.

EDIT: Actually it looks like they do have machine guns with rounds, but nothing such as guided missiles.

<comment><USER32> On the contrary, the cannons are still intact and functional and they have over 74,000 high-explosive rounds for them. This is in the article.

<comment><USER31> I stand corrected.

</comment></comment></comment><comment><USER33> I don't understand what's the point of having a private contractor instead of say, a dedicated Air Force squadron. A private contractor who effectively has a monopoly is necessarily more expensive, as he needs to make a profit, while an Air Force squadron doesn't.

Looks like some sort of elaborate public money scam to me.

<comment><USER34> It ends up being a cost optimization & liability thing. Lets be honest, at least in the USA, our Government isn't terribly efficient with money. However, a corporate is driven by profit so they will be smarter.

If you had an Air Force squadron of older planes, they need their own dedicated mechanics who are certified. Government certified vendors, who've gone through the vetting/price bidding process (likely the vendors selling you the latest F35 or whatever will want in on it too...). Dedicate pilots certified to fly these planes and likely only these planes... etc. Instead you shift the logistics to a smaller and more agile group who can optimize for their very specific and small use case.

The private contractor can also go out and train people from other military forces (like Canadians, eh?). That allows them to make money from multiple sources, where as the US Government would not. Sure maybe join training exercises, but that's not the same thing.

There are a lot of cases in business where outsourcing something specialized to another party makes a lot of sense - unless there is a huge scale for it. Just look at The Cloud. For a lot of companies, it doesn't make sense to pay the overhead of datacenters, datacenter techs, etc etc. For a few companies, that do it at scale, it makes a ton of sense (Ex FAANG).

<comment><USER35> Smarter = pay less and give workers less rights and benefits than the US Government.

<comment><USER36> The US government significantly overpays most of its employees.

<comment><USER35> By what metric?

</comment></comment></comment></comment></comment><comment><USER37> It's quite interesting that Australia wants to let these go in favor of the F-35, rather than maintaining them in a reserve capacity. Letting the F-111 go in favor of the F/A-18 made a lot of sense because they were obsolescent and expensive to operate. In this case, I wonder if they might regret it if they ever face a period of increased military tensions.

<comment><USER38> As early as 2012 the RAAF Hornet fleet flight activities (12-13000 hours per year) were estimated to exhaust the fleets' lifetime airframe limits (6000 hours) in 2020.[1] Keeping them in the air beyond this year was going to get more and more expensive and consume maintenance resources (and pilot training) that could otherwise be directed to the Super Hornets and F-35s.

Frankly I'm kind of glad someone took them off our hands before they became even more of a liability. We've got enough on our plate dealing with the F-35's corrosion issues (most of the fleet will be kept in moist salt air at Williamtown and be plugged into big dehumidifiers when not flying) and other things like its limited range.[2]

Which, now I put it that way, makes me wonder if maybe we should have kept a few Hornets.

[1] "43\. The F/A-18A/B Hornet was designed for a safe life of 6000 airframe hours. At the current fleet flying rate of 13 000 hours per year, reducing to 12 000 from 2013–14, there is capacity on that basis for the Hornet fleet to continue flying until the end of 2020." [https://www.anao.gov.au/work/performance-audit/management- au...](https://www.anao.gov.au/work/performance-audit/management-australias- air-combat-capability-%E2%80%94-fa-18-hornet-and-super-hornet)

[2][https://www.aspistrategist.org.au/projecting-power-with- the-...](https://www.aspistrategist.org.au/projecting-power-with- the-f-35-part-1-how-far-can-it-go/)

<comment><USER37> That all makes sense, and I guess I agree on all points. Not knowing anything about the RAAF's resources (or the buyer's feelings on the deal), I would have leaned toward selling half and keeping half in a reserve capacity if it were at all feasible. If you need a reserve, you probably need it really badly, and it's not exactly unfathomable that the fancy-but-fragile F-35 might be grounded someday because of some automotive airbag recall-like "whoops" screwup by the manufacturer.

edit: it looks like you've still got two squadrons of Super Hornets until 2025, so you've got that going for you

</comment></comment></comment><comment><USER39> > He now holds eight licenses with the Bureau of Alcohol Tobacco and Firearms > (ATF), allowing him to own military machine guns and cannons, as well as > thousands of rounds of ammunition to fire through them.

I'm very curious what these licenses say about how he is allowed to use these machines.

What kind of work is he allowed to take? Who is he allowed to shoot at?

<comment><USER40> Just to answer. None of your concerns are covered by the license he has (Special Occupation Tax aka SOT). With a SOT7 + one of the other ones you can own and transfer machine guns and Destructive Devices legally. This is the same license a gunsmith will get to manufacture and sell(transfer) firearms incidentally.

No this is not a license to kill.

</comment></comment><comment><USER41> The temptation to become a Bond villain must be strong.

<comment><USER42> It didn't seem that long ago that having an island shaped like a skull was a cost-prohibitive proposition, but seems we're almost there.

<comment><USER43> Oh, it's still unimaginably expensive. Some people just have that much money.

</comment></comment></comment><comment><USER44> > He also mentioned that a jet-black Hornet would be fun to have, just for the > heck of it.

What a boss.

<comment><USER45> A businessman and aircraft collector in South Africa has one of the last flying examples of a Blackburn Buccaneer [0] and English Electric Lightning... Paint scheme on both: Jet Black!

[0] - [https://www.youtube.com/watch?v=jXLBhBz_2tE](https://www.youtube.com/watch?v=jXLBhBz_2tE)

<comment><USER44> Gotta love South Africa. A land where they let civilians own and fly a nuclear bomber

</comment></comment></comment><comment><USER45> Interesting. A good family friend of ours is a maintenance supervisor in the RAAF. Last time he invited me down to the hangar to let me see the F/A-18s up close, he was lamenting how the first batch that the RAAF purchased (which I assume are among the ones this guy bought) were getting really fatigued and increasingly difficult to maintain. He mentioned that instead of the routine 4 hours maintenance required for each hour of flying time, they were requiring upwards of 10+ hours maintenance per flying hour.

Sounds like these beasts will be expensive money pits to operate nowadays.

</comment><comment><USER46> This is also a great way to keep several squadrons of reasonably capable fighters maintained and in operation. In a time of national emergency they (and their pilots) could be drawn on.

</comment><comment><USER47> This fleet, if armed, would stand a chance against my country's air force.

<comment><USER48> are you a fellow Canadian?

<comment><USER47> Nope, Poland.

We have some MiG-29s which were essentially gifted by none other than the German Luftwaffe and a few F-16s bought in the mid 00's.

Overall not bad, but this one guy has more than half the number of our aircraft.

</comment></comment></comment><comment><USER49> This man is an inspiration. He has a clear purpose for doing this incredibly fun thing. Living the dream!

</comment><comment><USER50> F/A-18's are a dime a dozen right now (not literally obviously). There's a bunch of old ones coming off the line and being refit as ... no joke, drones for target practice for other drones.

There's a remote-fly-by-wire package they install that apparently has been around for quite a while. I guess this means they're also developing a remotely controlled or AI based fighter platform but they wouldn't confirm, just that these new "drones" get shot down by other "drones".

Source: I was given a tour of the facility and told what they were doing with the old F-18's. Pretty wild.

<comment><USER37> They did the same thing with a lot of classic fighter jets, including all of the century series and the F-4. (I imagine plenty of F-16s have been used as drones as well.)

It's reminiscent of the way you can buy spectacular used luxury cars for a song once they've got a certain amount of wear and miles on the odometer. Maintaining them and accounting for the future cost of repairs makes their value drop precipitously.

</comment></comment><comment><USER51> I just saw a netflix documentary, 'operation odessa', where two guys were buying russian helos and even a sub for the Cali cartel. I am not amazed at the resourcefulness of the human animal. Anything we make (including information) gets weaponized for bad actors. And that's only the stuff we know about.

</comment><comment><USER52> Any chance a FSDO or DPE is on here? What's the registration process for these aircraft? Do they get N-numbers? I'm assuming they're registered as experimental or experimental-exhibition. Do the pilots need type certificates? Who provides the training?

</comment><comment><USER53> This is clearly some guy and his buds who _love_ flying combined with the niche need for adversarial aircraft.

Though it's surely very expensive to operate these things, it's also probably cheaper than if the USAF had to do it.

Risky business though.

</comment><comment><USER54> Kind of weird title. Of all the private air forces, one has to be the most advanced. And it will be owned by _somebody_.

I guess the title is saying that it's specifically a male adult?

</comment><comment><USER55> Did anyone else notice the mention of the M61 20mm Vulcan cannon that's staying installed? Have these guys got live weapons and ammunition for these craft?

</comment><comment><USER56> I wonder if this guy is able to get insurance on the planes. I'd imagine that if a single plane was destroyed he'd be out millions of dollars.

<comment><USER57> You typically can't get insurance on race cars either, but that doesn't seem to stop anyone.

</comment></comment><comment><USER58> Doesn't this breed a false sense of security? Unless you train against the cutting edge mig, how do you know you can wax its tail?

</comment><comment><USER59> Appropriate, albeit cheesy, Netflix movie to watch along with this - Angel has fallen

</comment><comment><USER60> Red team contracts are fun and pay well. Even moreso when you run a red team company

</comment><comment><USER61> He may own fighter jets, but actual weapons are sold separately.

</comment><comment><USER62> Dang! This guy can wage wars against small countries!

</comment><comment><USER63> Why the hell does the pentagon outsource this?

<comment><USER64> It's a great solution to a problem of conflicted interests. If the USAF gets a massive budget to protect us against air threats, how can you trust them to conduct honest tests? They are motivated to only ever report great news on how awesome a job they are doing always. Here you create an incentive structure for people to really try to figure out how to beat them.

It's the same reason a company might hire an outside firm to do penetration testing, rather than ask its head of cyber security, "Hey why don't you conduct a test to see if you are doing an awesome job, as we need to figure out whether to fire you or give you more money".

<comment><USER65> not to sound condescending, but i've got news for you:

outsourced contractors will tell you what you pay them to tell you

of course all that depends on the contractor, who's doing the hiring, and the industry etc

but the point is, just because it's outsourced doesn't mean the incentive structure will "work" any better than internally

</comment></comment></comment><comment><USER66> Air King

</comment><comment><USER67> It's not clear aside from the fig leaf of 'being a Navy contractor' whether this is a mercenary for hire airforce. I wonder what regulatory control there is on a private airforce located in the US?

<comment><USER68> It's actually pretty clear, since it says what they do right in the article:

> He was also one of the early pioneers of the then-fledgling, if not wholly > experimental, adversary air support market. In the early 2000s, he joined > forces with the Airborne Tactical Advantage Company (ATAC), which was > blazing a trail with their contracts with the Navy to supply fast jet > targets and electronic warfare pod toting adversaries that mimic everything > from enemy cruise missiles to fighters for Navy and Marine fighter aircraft > and Navy surface combatants to train against.

In other words, they provide targets for training for Navy aircraft.

<comment><USER69> Just because they have been hired to pretend kill Navy pilots doesn't necessarily rule out that they are a "mercenary for hire airforce" that could also be hired for other more violent tasks. OP was questioning what regulation exists to stop that from happening.

<comment><USER70> A big one is that you can't buy air to air missiles.

There's talk that these types of aggressor squadrons might be a last-ditch aircraft reserve for the US or allies, but they're not exactly primed/ready for war without armament or modern radars.

(No, the fact that some of their aircraft have functional cannons and cannon rounds doesn't count).

<comment><USER69> Do these not have modern radar? The article said they were being purchased without any downgrades from their time flying with the RAAF.

Also does this mean they can be legally outfitted with air to ground armaments? I don't know much about these aircraft, but I imagine since they are used for simulated combat that they have decent evasive capabilities even if they can't directly engaged other aircraft.

<comment><USER11> > Do these not have modern radar? The article said they were being purchased > without any downgrades from their time flying with the RAAF.

They have something that would be considered a nice radar for a 4th gen fighter, 20 years ago. Whether that's a modern radar today...

And I imagine they can legally be outfitted with all sorts of things! Getting approval to actually _use_ those bombs would be a bit touchy though. (And it's not like these have a huge strike radius, either - without tanker support, they won't be making it much past 500 miles before having to turn for base)

</comment></comment></comment></comment></comment></comment><comment><USER71> > He now holds eight licenses with the Bureau of Alcohol Tobacco and Firearms > (ATF), allowing him to own military machine guns and cannons, as well as > thousands of rounds of ammunition to fire through them.

Dude is totally not an intelligence asset of any kind. Just an enthusiast.

<comment><USER72> Right? How does one "contractor" obtain so much power?

<comment><USER73> You are aware that the vast majority of defense articles employed by the military are not manufactured by the military right? Lots of companies have such licenses. The article even lists his competitors in this particular space.

</comment></comment></comment><comment><USER72> I used to have a single shut-down in 2nd amendment arguments. When my opponent would claim that the 2nd amendment gives civilians the power to overthrow a government, my favorite response was to compare poorly armed and trained americans to essentially the Taliban, and follow that up with: and then the US would drone/bomb you to oblivion with their air force superiority, like how Israel dominated the no-air-force Middle East in The Six Day War

Looks like the joke is on me, now: People now actually have an option of building their own Air Force. Greaaaaaat,

<comment><USER74> It's not about the civilians being able to overthrow the government, it's about the government not being able to overthrow the civilians. When wrongthink starts being criminalized, would you prefer to be defenseless in your home, or have some - feeble sure, but some - means of protecting yourself? Or would you rather just prefer to think wrongthink will never be criminalized?

I believe The Clash puts it best:

        When they kick at your front door
        How you gonna come?
        With your hands on your head
        Or on the trigger of your gun

        When the law break in
        How you gonna go?
        Shot down on the pavement
        Or waiting in death row

        You can crush us
        You can bruise us
        But you'll have to answer to
        Oh, guns of Brixton

The Clash - The Guns of Brixton

<comment><USER75> Do you want every police encounter to turn into Ruby Ridge?

A non-insignificant number of people would consider criminalizing drugs criminalizing wrongthink.

<comment><USER74> The criminalization of drugs was put in place to target hippies and minorities. So... yes.

"We knew we couldn't make it illegal to be either against the war or black, but by getting the public to associate the hippies with marijuana and blacks with heroin, and then criminalizing both heavily, we could disrupt those communities. We could arrest their leaders, raid their homes, break up their meetings, and vilify them night after night on the evening news. Did we know we were lying about the drugs? Of course we did."

\- John Ehrlichman, Nixon's Aide during time of the war on drugs.

[https://harpers.org/archive/2016/04/legalize-it- all/](https://harpers.org/archive/2016/04/legalize-it-all/)

Aside:

Liberty - the state of being free within society from oppressive restrictions imposed by authority on one's way of life, behavior, or political views.

What the hell ever happened to "give me liberty or give me death"?

<comment><USER75> The key word is oppressive. I don't believe not allowing people to own weapons of war is oppressive. Especially so to their (non-)victims.

<comment><USER74> The "oppressive restrictions" was actually regarding drugs, not guns.</comment></comment></comment></comment></comment></comment>


British cabinet uses Zoom for first digital cabinet despite privacy risks - <AUTHOR> https://mobile.twitter.com/BorisJohnson/status/1244985949534199808 <comment><USER2> Imagine the commentary if Julian Assange published the cabinet meeting id like Boris just did.

Remember believing equality before the rule of law? I'd be really nice if we could believe in that again.</comment>


OpenWrt is proud to announce the third service release of OpenWrt 19.07 - <AUTHOR> https://openwrt.org/releases/19.07/notes-19.07.3 <comment><AUTHOR> For a detailed list of all changes since 19.07.2, refer to [https://openwrt.org/releases/19.07/changelog-19.07.3](https://openwrt.org/releases/19.07/changelog-19.07.3) Or navigate directly in the list of firmware images: [https://downloads.openwrt.org/releases/19.07.3/targets/](https://downloads.openwrt.org/releases/19.07.3/targets/)</comment>


Show HN: Free Code Editor for Pair Programming with Compilers and Autocomplete - <AUTHOR> https://codepad.remoteinterview.io

<comment><USER2> I think projects like these hold an academic value. As a programming tutor at my college, sometimes we have to aid students online due to xyz reasons that they just cannot come into our open lab to get help. To be able to see what they're attempting and give them feedback through Skype is a huge factor. Although only relevant to Python, one project I enjoy (yet haven't truly used with students yet) is Python Tutor, great to show the student what is happening.

Oh, and nice job on CodePad :)

<comment><USER3> Not exactly pair programming, but I give assignments to my students via my own system and give feedback remotely.

[http://pags.cs.bilkent.edu.tr/](http://pags.cs.bilkent.edu.tr/) (and a video from old version: [https://www.youtube.com/watch?v=fFy8LHQ6EtI](https://www.youtube.com/watch?v=fFy8LHQ6EtI))

</comment></comment><comment><USER4> I'm here: [https://codepad.remoteinterview.io/#?roomid=UpHnDhPnNU](https://codepad.remoteinterview.io/#?roomid=UpHnDhPnNU). Who wants to code?

<comment><USER5> Lol It's going crazy there!

<comment><AUTHOR> somebody did while(true) in that html. Crashing everyone's browsers.

<comment><USER6> i don't know the tech you are using but you can prevent that by running the code in a sandboxed worker, at least it won't crash, like [https://github.com/asvd/jailed](https://github.com/asvd/jailed) (i don't know how secure is that though)

anyway cool program

<comment><AUTHOR> Thanks. We are using compilebox[1] for languages which is sandboxed in Docker. But html is still rendered in everyone's browser. I am looking into solutions for preventing this.

[1]: [https://github.com/remoteinterview/compilebox](https://github.com/remoteinterview/compilebox)

</comment></comment></comment></comment></comment><comment><USER7> It's hard for vim users to use in-browser text editors without vim-key support.

<comment><USER8> Vim keybindings can and probably should be handled with a browser extension.

<comment><AUTHOR> Agreed! But I guess adding them won't be trivial since we are using CodeMirror.

[https://codemirror.net/demo/vim.html](https://codemirror.net/demo/vim.html)

</comment></comment></comment><comment><USER9> It would be really helpful to make the url easier to read to a candidate over the phone. Sometimes we don't get to correspond over email.

<comment><AUTHOR> You are right. Check now, there is a "Short URL" button at the top.

</comment></comment><comment><USER10> This looks a lot like CoderPad [https://coderpad.io/](https://coderpad.io/)

Don't know which came first, but one of you should change your product name.

Maybe you guys could meet at the Starbucks on 2nd (halfway between your two offices) and hash it out.

<comment><USER11> I'm the CoderPad guy. Besides RI's obvious ripoffs, they really should change the name if for no other reason besides: [http://codepad.org/](http://codepad.org/)

<comment><USER12> I don't see the ripoffs... I mean it's an online code editor... Many of these around, many way before you.

</comment></comment></comment><comment><USER13> Great! I wil; definitely use it in interviewing process over Skype.

<comment><USER13> However, as far as I understand, remote code editing is free, and this is the all functionality which I really need for interviewing process.

<comment><AUTHOR> Yes! this is our side project which will be free forever. We also have an advanced offering for pre-screening and more interviewing features like web calling, code playback, admin mode for taking notes etc.

Feel free to try that as well: [https://www.remoteinterview.io](https://www.remoteinterview.io)

<comment><USER14> Nice work AsadLionPk :P</comment></comment></comment></comment>


SOPA markup to continue this coming Wednesday - <AUTHOR> http://www.techdirt.com/articles/20111216/11102617108/sopa-markup-runs-out-time-likely-delayed-until-2012.shtml?r

<comment><AUTHOR> Stream live at: <http://judiciary.house.gov/hearings/mark_12152011.html></comment>