Cryptographic obfuscation and 'unhackable' software - <AUTHOR> http://blog.cryptographyengineering.com/2014/02/cryptographic-obfuscation-and.html <comment><USER2> I had heard of this paper but reading a summary now makes me link the idea with secure verifiable computing [1]. This is basically the same base idea where A wants to send a program to B so that B can use the program but not know what it does. In the case of the original article, you want B to get back the results by himself (like in a conventional application).

However, there is another approach where B is just an untrusted third party where you want to outsource the computation. In other words, A wants to get back the result and check it, without B knowing anything of it. There is actually a(n almost) generic construction that allows that [2]. In short, you consider the boolean circuit of what you want to compute and transform it so that the inputs are keys necessary to unroll the computation, until getting the encrypted result. More specifically, step 1 gets the input keys and compute some new key (amongst several possible); step 2 use this key for next computation and so on.

On the one hand, this constructions are very neat because they give us a better understanding of what we can do with cryptography. On the other hand, they can be a little frightening because they are the theoretical grail for DRMs and such.

[1] [https://en.wikipedia.org/wiki/Verifiable_computing](https://en.wikipedia.org/wiki/Verifiable_computing)

[2] Part 1 of _A Proof of Security of Yao 's Protocol for Two-Party Computation_, [http://eprint.iacr.org/2004/175.pdf](http://eprint.iacr.org/2004/175.pdf)

<comment><USER3> > On the other hand, they can be a little frightening because they are the > theoretical grail for DRMs and such.

Definitely. I can't help thinking that the ones who will end up using this sort of technology are corporations who want to control their users, and malware writers. The phrase "Those who give up freedom for security deserve neither" and [http://www.gnu.org/philosophy/right-to- read.html](http://www.gnu.org/philosophy/right-to-read.html) also come to mind... it's scary, security is a double-edged sword.

<comment><USER4> Actually, I think there could be an application in gaming for this. Imagine a game that cannot be beaten with hacking or cheating (reading the code); you would have to play it correctly in order to win.

For example, an adventure game could use this to great extent. There simply wouldn't be a way to know the story until someone would actually managed to go through it and tell you. There could be hidden levels or easter eggs and no one would ever know.

(I came up with this when I was thinking of a Minecraft clone, where you would have to discover the recipes to build stuff on your own. Although I was thinking about simply using hashed input into recipe routine for obfuscation.)

<comment><USER5> Why is it good to stop people from cheating on a single player game?

<comment><USER4> You can consider it an "artist's statement", something comparable to Kryptos statue. Nothing evil in that, I believe.

</comment></comment></comment></comment></comment><comment><USER6> Perhaps this is just my Stack Overflow reflexes, but:

The string argument to SuperSecretPasswordProtectedStuff() should be const (reference, perhaps even) and of course printf() shouldn't be used in C++.

It's ... fun and interesting that such a super-minimal example of source code (from a __research professor __for crying out at 200 dB(A)) has those kinds of "sloppiness indicators" in it.

Or am I just being grumpy?

Regardless, I'm glad to see someone trying to shed some proper light over the obfuscation research, I too was underwhelmed by Wired's coverage. I'm more or less clueless when it comes to all things security-related, though.

<comment><USER7> Even grumpy people should be able to distinguish pseudocode from c++, I'd have hoped!

But yeah, great article, imho, in that it clarified these concepts a lot for me, as a non-crypto person.

<comment><USER6> Whoever writes "printf()" in pseudo-code though, and bothers with newline characters? I would expect "print" or something but of course there's no standard for psuedo-code.

<comment><USER7> I dunno, but not the author of that piece, as far as I can see; the only printf() in there is in the occc entry, isn't it?

Maybe your stackoverflow neurons put the extra 'f' in the pseudocode print() calls, or maybe the author edited it after seeing your comment :)

</comment></comment></comment></comment><comment><USER8> The article leaves me hanging. Long introduction, describes IO and EO, and when it's time to talk about their uses, it just handwaves "lots of exciting stuff coming in future!"

> obfuscating 'symmetric' primitives like pseudorandom functions

So how would be obfuscated and indistinguishable RNGs be useful, if they generate the same numbers? I'm sure there is something there, but the article doesn't tell :-/

<comment><USER9> Obfuscating a PRF turns a symmetric primitive into an asymmetric one.

You can think of a PRF as a keyed hash. Now, you can turn this into an encryption scheme by running it in counter mode:

        keystream  = PRF(K, 0) || PRF(K, 1) || ...
        ciphertext = plaintext XOR keystream

Now suppose we can obfuscate this PRF with a specific key (i.e. Obf(PRF(K, _))), in a way that makes it impossible to find out what K is. Then you can distribute the encrypted program as a public key, and the private key would simply be K. That's the gist of it.

<comment><USER10> I don't think you can do it with a stream cipher like that. Rule 1 for a stream cipher is that you never encrypt multiple messages with the same keystream. 'ciphertext = plaintext XOR keystream' means 'keystream = ciphertext XOR plaintext' and the attacker could just encrypt some arbitrary plaintext with the publicly available code and XOR the plaintext back out to obtain the keystream, even if the code itself is a black box.

You could probably manage to do it with a block cipher though.

<comment><USER9> Yes, you're right, perhaps I oversimplified too much. That is the main hurdle Waters and Sahai have overcome.

They do this by not using a counter, but randomly-selected nonces that feed a keyless stream generator (like AES-CTR with a fixed known key), and use a mechanism (puncturing) to 'blacklist' previously-used nonces so that they reveal nothing about previous keystreams used. Without being able to ask for encryptions of arbitrary messages using a previous nonce, the attacker has little options.

Granted, this is annoying because you have to 'recompile' the obfuscated encryptor for each new nonce, but that is of no concern in the model being used.

</comment></comment></comment></comment><comment><USER11> >Malware authors and DRM folks

Aren't those largely one and the same?

<comment><USER12> More precisely, the latter are a subset of the former.

</comment></comment><comment><USER13> What immediately came to my mind is the attack potential of this methodology. Is there one? Seems to me it makes possible the writing of undetectable malware, no?

</comment><comment><USER14> Disclaimer: No rhinos were harmed during the writing of this article.</comment>


Xobni Turns On Revenue - Will Outlook Users Pay Up? - <AUTHOR> http://www.xobni.com/blog/2009/07/14/announcing-xobni-plus-%E2%80%93-xobni%E2%80%99s-most-powerful-outlook-search-tool-ever/

<comment><USER3> As a Xobni user, who runs it constantly, I must say I don't find the product's prospects too great.

Most people I know who use Xobni get it because their Outlook is too old to have full text search. Sure, those graphs of when people email you are nice. So is the sometimes-working extraction of details from sigs. But they're not what you install Xobni for. Full text search is the killer feature.

As time goes on, newer versions of Outlook will be deployed. Outlook 2007 has been around for two years, Outlook 2010 is being released now. Large companies can use the newer products for no additional charge. Once they get round to doing so, Xombi's reason for being goes away.

<comment><USER4> I have been using it Xobni since it was in beta and most of the time I don't even have to search because of the way it organizes email and attachments. When I do search it is about 20 times better than outlook 2007's built in results and much more usable than windows desktop search 4. It plays much better with outlook than X1 or Google desktop search and frankly Microsoft has had years to make search not suck and they have again and again failed and have lost my trust.

So yeah, Xobni gets my 30 bucks plus much more from my clients. At the prices they are charging I won't think twice to get licenses for entire organizations. It won't even be a blip on most businesses IT budget and I think that's a really good place to be price wise.

EDIT: BTW - the auto complete for email addresses is fantastic and works really well. Have I reached fan boy status yet?

</comment></comment><comment><USER5> Why make it so absurdly cheap? It's (from what I hear) a great product, that makes using outlook substantially less painful. So why charge only $30?

<comment><USER6> I'd be very surprised if they didn't properly survey their users to calculate the optimal price point. So the answer is because they'll sell more than twice as many copies at $30 as they would at $60.

<comment><USER5> I think that's slightly naive. The schoolbook graphs of price elasticity show that there's a single maximum, that can be reached simply by walking the curve. It tends not to work that way.

You also have to consider how people react on prices (if you sell the product for $30 in the first 6 months, then start selling it for $60, the first users won't get upset. If you do it the other way around, the loyal beta users who upgraded will feel ripped off).

People also don't tell the truth in surveys. They believe they will buy it at a specific price point, but in reality they don't. In survey mode people may think about what other software products cost, and think what they consider reasonable. When people have to actually make a purchase people have to pick between going to the movies or buying a software license. Wildly different results are to be expected.

I wonder what other people's experiences with surveys are, and how people go about picking a price. It's certainly a fascinating subject.

<comment><AUTHOR> gizmo, you and the other guys (and girls) on here are all over the exact studies and discussions we had internally with respect to this product - <USER2> appreciate the discussion. Pricing and positioning this and future aspects of our business model has been my focus for the past 8 months.

The value of Xobni is built on two pillars: search and relationship management. This offering builds on that first pillar. Future offerings will build on the other pillar. We actually priced this offering below what we think was the optimal ARPU (average revenue per user). We did that for 3 reasons (1) we want a huge % of users on this paid product - upselling to future offerings will be one-click easy (2) we believe paying users are more evangelical (humans justify decisions they've already made) (3) as a business in our stage we believe it is less risky to monetize a larger user group at a lower ARPU than very few users at a higher ARPU

We are optimizing for the 2-5 year revenue scenario (not 6 month scenario) - in the not too distant future Xobni will be launching an enterprise offering, a blackberry application, and other premium offerings. I've been waiting a long time for this stage of building the business.

<comment><USER5> Thanks for the rationale. I hope it all works out.

</comment></comment></comment></comment></comment><comment><USER7> Assuming there are around 2 million active users (TC mentions a figure of 2 million downloads just last year) of Xobni, assuming a conversion rate of 1%, is 20k users that pay, which is over $500,000 in revenue. Nice change!

IMHO, outlook users would pay, considering Xobni makes their lives easier and the fact that the number of emails are increasing rapidly.

<comment><USER5> 2 million active users? I think the video said 2 million downloads total, which would put the number of active users probably at 20% of that. Given that they have accepted 15 million or so in venture funding, it really is just change to them.

<comment><USER7> It's been 2 years since Xobni was released, 2 million was just last year, so the total number of downloads are higher. The percentage of active users, IMO, would be higher than 50% initially, then tapering off to say 20%.

The revenue they get from plus is a good start.

</comment></comment></comment><comment><USER8> I'm surprised their licensing model is a one time fee rather than a subscription. Missing out on a huge opportunity of recurring revenues.

<comment><USER5> Subscriptions aren't always better. There is absolutely no reason for this to be a subscription, and I think it would be way too hard a sell.</comment></comment>


Ask HN:  What makes a programming language fun? - <AUTHOR>

I'd never really put much thought into it, but lately I've been thinking a lot about what it is that makes a language fun to use.  I've put a lot of thought into what it is that makes a language useful, but not so much about what makes a language fun.  So I figured this would be the best place to ask.
So let me put it to you this way, what features would you want to have in a language that you would hack with in your spare time?  What features would make you not want to hack with it in your spare time? <comment><USER2> jrockway makes programming languages fun!</comment>


Inter-Procedural Optimization and Derefinement - <AUTHOR> http://www.playingwithpointers.com/ipo-and-derefinement.html <comment><USER2> It seems way more to me, that the linker shouldn't merge different implementations of a function.

On the other hand the compiler maybe should rename the function when it does inter-procedural optimization on it.

<comment><USER3> The C/C++ standards require that two pointers to the same inline function are equal, even across translation unit boundaries. Therefore, in the worst case you need to pick a single implementation of the function in the linker. Of course, you could use different implementations in translation units where the address of the function is insignificant.

A similar issue affects the C++ template compilation model used in most compilers. If template instantiations weren't merged at link time, C++ binaries would be incredibly bloated (and C++ binary size is already a problem).

<comment><USER4> "The C/C++ standards require that two pointers to the same inline function are equal, even across translation unit boundaries."

Sigh. I presume this is because you can pass inline functions to callbacks, and the 6 people in the world who do

if (a == &f::foo) {do something}

want it to work no matter what?

One solution, of course, is to privatize the function you call, but still hand any code paths that escape pointers and take the address the "other" version (which is i presume what you meant)

</comment></comment></comment><comment><USER5> I don't understand the example

      bool g(bool b) {
        if (b)
          return true;
        int unused = 1 / 0;
        return false;
      }

Shouldn't it be optimized to

      bool g(bool b) {
        return b;
      }

instead of

      bool g(bool b) {
        return true;
      }

<comment><USER6> Division by zero is undefined behavior, so the compiler is free to assume that the b==false branch is unreachable.

<comment><USER7> It would also be reasonable to remove the declaration as the variable is "unused".

</comment></comment></comment><comment><USER8> I've always wondered, is there a time when assuming no undefined behavior occurs (and none does) allows the compiler to do an optimization it couldn't otherwise?</comment>


Show HN: Copy Ipsum – A landing template that comes with copywriting guidelines - <AUTHOR> https://www.copyipsum.com/ <comment><USER2> Your How it works and Pricing links are broken. Looks like a typo in domain name.</comment>


In case you're tired of expensive complicated graphic editors - <AUTHOR> http://www.vectr.com <comment><USER2> Nick, CEO @ Vectr is here.

Vectr is a free collaborative vector graphics editor, for both web & desktop, that aims to help everyone create vector graphic designs easily and intuitively, using its simple yet powerful web and desktop cross-platform tool.

Hint me up here with questions or feedback!

<comment><USER3> What happens if multiple users edit the same image? Is it like live editing on google docs?

<comment><USER2> It will be eventually, yep, but not quite yet. We've already built the majority of this technology, but we're still missing bits and pieces for true collaborative editing, so we've got this "turned off" for now.

Expect this feature, real Google-docs style editing, to drop late fall ;)

<comment><USER3> I saw the "hello" you wrote on my Vectr, "Hello, to you too."

I didn't actually see it appear at the time. Just curious, if it's not "live" how often is it updating?

<comment><USER2> It should be fairly live, must've missed it. It updates every time you make any change.

</comment></comment></comment></comment></comment><comment><USER3> Looks like photoshop, but you can edit and share.

Anyone care to work on my HN Vectr? [http://vectr.com/tmp/U7UVuEp3A5/ycH2v0832J](http://vectr.com/tmp/U7UVuEp3A5/ycH2v0832J)

<comment><USER2> Added a "hello"! [http://vectr.com/tmp/U7UVuEp3A5/ycH2v0832J](http://vectr.com/tmp/U7UVuEp3A5/ycH2v0832J)

</comment></comment><comment><USER4> Really can't wait for this to replace Sketch as my primary design software.

</comment><comment><USER5> This is cool. Got the let our designers know.

</comment><comment><USER6> luv the UX and share features, I want to share with all my friends!</comment>


Keys to Shopify's Success – an Interview with Tobias Lutke - <AUTHOR> http://www.yearonelabs.com/top-5-keys-to-shopifys-success-an-interview-with-tobias-lutke/

<comment><USER2> One other thing that Shopify did well was extract a lot of code into open source projects. Liquid, DelayedJob and ActiveMerchant are all thanks to their hard work.

So rather than just make money for themseves (which they did do), they "moved the ball forward".

</comment><comment><USER3> When I first saw Shopify I thought "That's never going to be successful". I immediately ruled it out and how wrong I've been proved! What they did, as I've watched them grow, is to launch early and then progressively make their application better and better. That is something I've read and read countless times and watching it in action has been inspiring and sobering (in that I'd not done that with my own products). I'm really pleased for them and wish them a lot of success. It has also inspired me for our new products and we soft- launched one within a month from a standing start.

</comment><comment><USER4> After wanting to just create a simple online store and initially setting up Drupal and Magento, I've found Shopify to be surprisingly customisable and easy to use. Really impressed with their product. Love the start-up story also. I can see how Tobi came to the conclusion that the stuff out there for the non-corporate market wasn't that great (even now).</comment>


F-Secure has open-sourced its Sandboxed Execution Environment - <AUTHOR> https://github.com/F-Secure/see <comment><USER2> Woah, I was not expecting that. Not only is it in Python but it's nice Python, not the bastardized "I can write C, let's try Python" style you often see from big companies.

<comment><USER3> As a C programmer who "tried" Python, I feel offended. I wrote substantial OO code using list comperhensions and other things pythonic. I am also a functional programming affectionado, though a realist, not a fan. Don't label people. Speak against companies mismanaging people by driving them to write low quality code. Be open and promote useful programming concepts and tools.

P.S. Long live static typing. Down with EcmaScript.

<comment><USER4> when you write C, you should be writing elegant C. when you write Python, you should be writing elegant Python. trying to code Python in C is about as ugly as trying to code C in Python and both should be discouraged equally.

the thing i don't understand is what you took offense at.

<comment><USER3> Swap the languages around and see if the statement doesn't sound a bit elitist to you. I feel like the parent could have chosen more neutral words if they wanted to. Their particular experience with irreverent/careless programmers just rubbed against my experience with technology fans I guess (the word fans used in the same sense as in my previous comment).

<comment><USER5> Swapping the languages fits exactly consistently with what GP said.

Trying to use first-class functions and OO paradigms in C is going to bite you in the ass, hard.

Just as iterative pointer manipulations in Python aren't preferable.

Both languages have different "styles" that suit their purposes excellently, but mixing them improperly in _either direction_ will be painful.

</comment></comment></comment></comment></comment><comment><USER6> Slightly off topic, but how well do sandbox execution environments handle malware that only execute if a VM is not detected? AFAIK most virtualization environments are easily detectable by the guest.

<comment><USER7> The sandbox just provides environment separation to run automated tests independently. How you define the environment, and how malware may react to it, is up to the user. (However, the 'hooks' could in theory be written to circumvent or detect malware looking for signs of a guest VM)

</comment></comment><comment><USER8> What are the advantages of using this over Cuckoo Sandbox, or Anubis?

<comment><USER9> Maybe the biggest advantage is the plugin system and how those can be hooked to the execution. Developer focuses on writing a LEGO brick that can be used as a part of execution. Also different plugins do not need to care about existence of other plugins, but on the other hand those plugins can be chained by firing and listening to events.

<comment><USER8> Cuckoo supports plugins too, I wrote up a summary of them here: [https://www.eugenekolo.com/blog/cuckoo-sandbox- notes/#div_cu...](https://www.eugenekolo.com/blog/cuckoo-sandbox- notes/#div_custom). Can also edit the Analyzer/monitor part to add in new function hooks.

</comment></comment></comment><comment><USER10> The tool is shown in the video at the following link.

[https://www.youtube.com/watch?v=k185OMivqbQ&list=PLJ6grbbdTP...](https://www.youtube.com/watch?v=k185OMivqbQ&list=PLJ6grbbdTPW8gX- Nl_B_ijDvwu9WoO_rG&index=103)

</comment><comment><USER11> why would they open source this?

<comment><USER9> Why not, this is just a general purpose framework for driving virtual machine execution? Hopefully someone will find this useful and write plugins and share those for the community as well.</comment></comment>


Refund policy for digital products - <AUTHOR> https://help.servmask.com/2016/04/07/picking-the-right-refund-policy/ <comment><USER2> Very helpful and it covers all of the refund areas</comment>


Show HN: A standards-compliant 3d compass implementation for *the web* - <AUTHOR> https://github.com/richtr/Marine-Compass

<comment><USER2> I'm trying to load the demo on my Macbook Pro with Chrome, but its not working for some reason. Is this broken for anyone else?

<comment><AUTHOR> Works for me on my Macbook Pro with Chrome (v19.0.1084.56).

<http://caniuse.com/#feat=deviceorientation></comment></comment>


Surprises of the Faraday Cage - <AUTHOR> https://sinews.siam.org/Details-Page/surprises-of-the-faraday-cage <comment><USER2> > And then three questions:

> Q1. How can arguably the most famous effect in electrical engineering have > remained unanalyzed for 180 years?

Faraday cages are tools used in other work; as long as they work, no one cares how.

> Q2. How can a big error in the most famous physics textbook ever published > have gone unreported since 1964?

See the answer to Q1.</comment>


Sorting in C++: 3 times faster than C - <AUTHOR> http://radiospiel.org/sorting-in-c-3-times-faster-than-c <comment><USER2> Couldn't you replicate most of C++'s optimizations by hand in C? Because that's what I always took to be the real reason C is fast--not because pretty code is fast, but because you can make the code as ugly as you want (hello instrinsics!) to optimize it.

For example, couldn't you just inline the relevant code manually in C? Sure it would be ugly, but it would be fast. Besides, in an absolute sense pretty much any C or C++ code is going to be ugly; if you want pretty code and a compiler that valiantly tries to optimize it, use something like Haskell :P.

<comment><USER3> This example highlights the reasons to avoid function pointers when possible.

An apples to apples comparison would use a handwritten sort routine for C instead of using a library function: STD::sort is closer to writing your own sort and putting in the function calls than calling an external function.

<comment><USER4> I don't agree with how you define "apples".

I would define an apples to apples comparison as "How would a typical C developer write this test? How would a typical C++ developer write this test?"

A typical C developer would use a library function. A typical C++ developer would use the stl.

This was a great article for me because I am actually about to write some very performance intensive data manipulation code that will use sorting and other similar algorithms. I was thinking about doing it in C because I always mentally associate C with performance.

This article is a reminder to me that although I could eventually laboriously hand-tweak the C to be performant, there are things in C++ that will perform better than C without my even having to do much optimization, if any.

<comment><USER3> FTA:

         By inlining C++ is able to run just the raw algorithm. On the opposite the C code has a number of indirections

The typical C developer is aware of the deficiencies and would write a custom macro to do the sort (I have a whole macro library for many small functions)

I agree that the language provides convenience, but the statement that sorting as a concept is faster in C++ than in C seems to be a stretch.

</comment></comment></comment></comment><comment><USER5> Or rather, _"Sorting with std::sort: 3 times faster than qsort"_.

<comment><USER6> Exactly. std::sort does NOT use quick sort. So all he's doing is comparing two different algorithms. It has nothing to do with C vs C++.

<comment><USER7> std::sort isn't guaranteed to use any particular algorithm, but IIRC quicksort fits the requirements and hence has been used in the past, even if introsort might be more common now.

<comment> steve-howard I believe said requirements were written to allow qsort.

</comment></comment></comment></comment><comment><USER8> To level the playing field, I took the glibc quicksort implementation from [http://sourceware.org/git/?p=glibc.git;a=blob_plain;f=stdlib...](http://sourceware.org/git/?p=glibc.git;a=blob_plain;f=stdlib/qsort.c;hb=HEAD) (which is actually a hybrid algorithm), modified it to use a comparison function with signature _Bool(const void* , const void* ) as we're only interested in whether an element is less than another, and included the source code verbatim (which is essentially what including <algorithm> does).

The C++ code still outperformed the C code, but the ratio dropped from ~2.8 to ~1.4.

40% performance gain is nothing to sneeze at, but it's far less impressive than the sensational 3x from the headline.

The remaining difference is probably due to the choice of algorithm: the GNU STL algorithm is introsort. While it's also a hybrid algorithm based on quicksort, it adds heapsort to the mix, which is known to outperform quicksort on random data.

</comment><comment><USER9> How can one "limit branching", and "optimize for the second level memory cache"?

<comment><USER10> I split the code in two binaries: "code" (qsort) and "code2" (std::sort()) and then I ran both under a profiler (based on intel's performance counters).

It seams that qsort simply executes an order of magnitude more instructions for the same result than std::sort. On the other hand std::sort() code, even if it's faster, it has more branch miss-predictions.

Here [1] are the results if you want to have a look.

[1] <https://gist.github.com/b97a6395c9a20c3d4cea>

<comment><AUTHOR> Thanks, that is quite interesting.

</comment></comment></comment><comment><USER11> every once in a while some one would come out with this kind of stupid study. please do not post these results any more, it is just a waste of time.

<comment><AUTHOR> Well, every once in a while someone comes out with "C++ is slow because of vtables". Which is false. If those guys would stop posting this I would stop writing what is true (but probably not too relevant for most screnarios, yes.)

</comment></comment><comment><USER12> This was also explained in the book "Programming Pearls".

</comment><comment><USER13> Shouldn't he be using _getrusage()_ instead of _gettimeofday()_ in his timer code (<https://gist.github.com/2057981>)?

<comment><USER14> When writing profiling code (<https://github.com/vstefan/Instrum/>), I use clock_gettime(CLOCK_MONOTONIC) as it measures elapsed time from an arbitrary reference point.

<comment><USER13> ...which is still measuring real time, not the time spent by the current process, or am I wrong? (maybe the downvoter can explain)

</comment></comment></comment><comment><USER15> Reading your blog's "About me" section makes me sad.

"I am working as a freelance software architect, IT consultant, ..."

<comment><AUTHOR> And what exactly makes you sad in this?

<comment><USER15> An IT consultant/software architect who thinks he can compare C and C++ by calling a random sort function makes me sad...

<comment><AUTHOR> People that cannot even parse headlines make me more sad: I compare sorting in C++ and C.

<comment><USER15> OMG, you really don't get it, right?

<comment><USER16> I don't get it either - whats the problem?

<comment><USER8> The headline implies that C++ as a language is superior to C as far as performance is concerned, whereas all that was shown is that the STL is superior to the libc from a batteries-included point of view.</comment></comment></comment></comment></comment></comment></comment>


Apple moves iOS to IPv6-only networks - <AUTHOR> https://ma.ttias.be/apple-moves-ios-ipv6-networks/ <comment><USER2> Not a terrible idea, but the timeline seems aggressive: _" Starting June 1, 2016 all apps submitted to the App Store must support IPv6-only networking"_

There are, for example, hosting providers that don't support ipv6. Including big names, like Amazon's EC2. That means either a pretty hasty move, or using some kind of tunnel.

Apple doesn't say when they would switch to "IPv6 only" for runtime, but it seems likely that would come with little lead time as well.

<comment><USER3> IIRC this timing was announced a couple years back at Apple's Dev conference.

Networks will still be expected to have 6-to-4 routing to get to hosting providers that don't support v6, but those will still appear to be v6 addresses to apps from the app store. Basically the commitment is "you must not write apps that assume that they can store or use only v4 addresses", and this should not be a shock to app developers.

As for when devices will see "IPv6" only networks ("runtime"), that isn't up to Apple, it's up to the cell carriers, and some cell carriers _are already there_ and only allowing IPv6 traffic. IIRC, T-Mobile in the US is IPv6 only already.

<comment><USER2> That sounds more sane. It's not the tone of the linked article, however. For example:

 _" it looks like iOS apps will only make IPv6 DNS requests and stop query'ing for IPv4 records for NSURLSession calls"_

It sounds, though, like it will (indirectly) query for IPV4, via DNS64. That's less drastic than the wording above.

</comment></comment></comment><comment><USER4> Concurrent discussion of news: [https://news.ycombinator.com/item?id=11635867](https://news.ycombinator.com/item?id=11635867)</comment>


Accept calls without revealing your phone number - <AUTHOR> http://letscall.me/ <comment><USER2> Sounds perfect for giving out your number to someone in a bar. If only telemarketing worked like this...</comment>


Seth's Blog: Dewey defeats Truman - <AUTHOR> http://sethgodin.typepad.com/seths_blog/2008/12/dewey-defeats-t.html

<comment><USER2> This link you sent me... there is no flow, or thesis. What does it say? All headlines. Trashed.</comment>


The Economy That Wasn't Supposed to Happen: Booming Jobs, Low Inflation - <AUTHOR> https://www.nytimes.com/2019/05/03/upshot/unemployment-inflation-changing-economic-fundamentals.html <comment><USER2> If the conclusions are clearly wrong or look suspicious it's high time to verify input data and methodology. In this case unemployment rate should be called active job seeking during past month rate.

<comment><USER3> The definition of "unemployed" only includes those actively looking and it's been that way, in economic parlance. It's not a new suspicious trick.

</comment></comment><comment><USER4> There was a conspiracy to de-fang capitalism after the financial crisis.

Central banks printed a tsunami of reserves to prop-up the banks, and reduced interest rates to allow debtors to survive. The well-funded banks did not foreclose on those companies who struggled despite zero rates. Companies did not lay off workers, but fixed or reduced wages, under the threat of redundancy. Workers kept their jobs in under-productive industries, but were stressed and frightened about the pressures of competition from foreign labor and technology. Many stopped looking for work and dropped out of the unemployment statistics. There was no Schumpeterian creative destruction.

The economy stabilized, but the regime of easy money and depressed wages persisted. Savers bailed-out debtors. Workers bailed out companies, whose high profits provided record returns to capital, not to workers in the form of higher wages. Low oil prices helped to reduce inflation and prevent an inflationary shock. The printed money was corralled by the elites, fuelling huge inflation in assets, and funding stock buybacks, to artificially boost share prices, EPS and the options and bonuses tied to them.

 _There is unemployment_ for those who have dropped out of the workforce.

 _There is inflation_ for assets owned by the elites closest to the trough of printed money (Cantillon Effect), and services that do not face international competition (healthcare, education).

</comment><comment><USER5> What is wrong with this Trump character? This guy actually tries to accomplish the things he said he would... WTF??

</comment><comment><USER6> I think there could be a simple explanation. There is no "booming jobs". It's an illusion. Employers just decide that they don't mind to advertise some jobs, in hopes that a cheap labor will come and they'll "optimize" their process. In fact, if nobody will come, employers will go just fine, but just in case somebody will, they keep doors open. This keeping the door open costs comparatively little, especially given the alternatives (when everybody else does the same). So, we do see some wage increases, above inflation, but only when it's really, positively critical - which in fact in many cases today is not. So - no real need, no wage increases.

<comment><USER7> Except that's not how unemployment is measured. It's measured by people seeking work, not by job openings. [0] If you really think it's an illusion, a better argument would be that people are dropping out of the workforce, i.e. no longer seeking jobs.

[0] [https://courses.lumenlearning.com/boundless- economics/chapte...](https://courses.lumenlearning.com/boundless- economics/chapter/measuring-unemployment/)</comment></comment>


Text Mate Fullscreen on Lion - <AUTHOR> http://gregosuri.com/2011/08/15/text-mate-full-screen.html

<comment><USER2> What a bizarre packaging choice: bash/curl command to pull a shell script to pull and compile a github project which compiles and installs a Text Mate plugin.

Yikes.

<comment><AUTHOR> 1) This installs EGOTextMateFullScreen plugin (<https://github.com/enormego/EGOTextMateFullScreen>). I didn't write it and author didn't put a package out.

2) URL Shortening? I didn't have time to write the CSS to format my code on the page. The long links breaks the layout

3) How does it matter how its done as long as it works, especially when I spent more time responding to your comment than writing that script.

<comment><USER3> > How does it matter how its done as long as it works

Executing unknown scripts hiding behind obfuscated URLs is generally not considered a good idea.

Given that this is a very non-standard and decidedly odd way of distributing a TextMate plug-in, a large degree of skepticism is warranted.

<comment><USER4> I also was skeptical. A quick read of the contents of the shortened urls reveals nothing nefarious, however.

<comment><USER5> Did you read the contents in your standard web browser, like I did? What if it sent back a different set of commands if the user agent matched that of cURL?

<comment><USER6> Well, you're still free to curl the contents of the URL into a standard text file, and view it with the text editor of your choice (maybe even TextMate!).

</comment></comment></comment></comment></comment></comment><comment><USER7> Piping things from curl into bash is about the dumbest thing you can do security wise. Except if you also use an URL shortener, which means that in addition to trusting the author not to be evil, you're also trusting the shortener service to deliver what you (or the author) expected.

</comment><comment><USER8> I really wish lion didn't make your second monitor useless in full screen.

<comment><USER9> It's not completely useless, you can "click and drag windows and toolbars from the primary display to the secondary display"

[http://osxdaily.com/2011/08/11/multiple-displays-full- screen...](http://osxdaily.com/2011/08/11/multiple-displays-full-screen-apps- mac-os-x-lion/)

<comment><USER10> As far as I can tell, that piece is really deceptive. You can drag floating windows from the same application that would normally float over the fullscreen app. You cannot, for example, fullscreen TextMate on your primary display and have Safari or Photoshop on the secondary.

</comment></comment></comment><comment><USER11>
        $ git clone https://github.com/enormego/EGOTextMateFullScreen.git /tmp/EGOTextMateFullScreen
        $ xcodebuild -project /tmp/EGOTextMateFullScreen/EGOTextMateFullScreen.xcodeproj -target EGOTextMateFullScreen
        $ open /tmp/EGOTextMateFullScreen/build/Release/EGOTextMateFullScreen.tmplugin

</comment><comment><USER12> Coding in full screen? For elite hackers who don't need to test the thing they're coding?

<comment><USER13> I run my tests from VIM.

<comment><USER14> You can also use multiple spaces. Fullscreen editor in one. Full screen terminal in another. Fullscreen browser in a third, to defeat the supposedly distractionless environment a fullscreen app does its best to offer you.

</comment></comment></comment><comment><USER15> My app Maximizer can do this dynamically for pretty much any app on your system (including TextMate, but also stuff like Firefox or Spotify). It's SIMBL based, but the code is clean and hopefully open source soon: <http://chpwn.com/apps/maximizer.html>

<comment><USER16> I'm using maximizer with TextMate and Chrome. Works pretty well, thanks! The only caveat is that to see the drawer, you have to hide it and show it again.

<comment><USER17> Chrome has real fullscreen and swipe gestures if you are using the dev build.

<comment><USER16> Sorry, I'm actually using maximizer with Chromium 14 and the real full screen with Chrome dev. The only difference though is the "curtain" button, for which I don't have much use.

</comment></comment></comment></comment><comment><USER18> What assurance do I have that <http://j.mp/text-mate-full-screen> will not return "rm -rf ~/*"?

<comment><USER19> You don't have that assurance whenever you install anything.

</comment></comment><comment><USER20> A screenshot would be nice.

<comment><USER21> <http://cl.ly/2M1D3k2A1Q1b132w1p3J>

<http://cl.ly/0r3O0h1T0c3T2T2M3c45>

<http://cl.ly/453a0D1k0H3v34302P3Q>

</comment></comment><comment><USER22> Chocolat (<http://chocolatapp.com>) seems like a promising replacement for TextMate, since TextMate 2 is vaporware. Lots of bugs right now though.

<comment><USER23> Sublime Text 2 (<http://www.sublimetext.com/2>) seems to be more advanced and isn't excluding users from its beta.

<comment><USER24> Distraction free mode on Sublime Text 2 is pretty awesome.

</comment></comment></comment><comment><USER25> this would be spot on if it handled the drawer nicely and the opening of folders. Mind it seems that Sublime Text 2 also poorly handles new files opened when the app is fullscreen. A proper implementation would once again make TextMate unbeatable on OS X.

Glad it's there in some way or another though. Using fullscreen a lot more than I thought I ever would.

<comment><USER26> Works well with the missing drawer plugin: [https://github.com/downloads/jezdez/textmate- missingdrawer/M...](https://github.com/downloads/jezdez/textmate- missingdrawer/MissingDrawer-0.4.0.tmplugin.zip)

</comment></comment><comment><USER27> awesome, thank you. now if only we could do split panes...

<comment><USER28> You might be interested in Chocolat[1], it's currently in alpha but I can get you an invite if you want

[1]: <http://chocolatapp.com/>

<comment><USER29> Well, if you're passing out invites... pretty please? I'm currently trying out different editors, not stuck on any particular one.

<comment><USER30> You'd perhaps have more luck if you had an email address on your profile ;)

Anyway, here's a few invite links for HN:

        [Edit: Sorry, all gone!]

I should point out that it's a bit buggy, and still an alpha. So don't expect to be able to use it as your everyday editor just yet.

<comment><USER4> Just redeemed #2 on the list, got 1 invite on signup: <http://chocolatapp.com/userspace/i/?e6cc78a7ef0db35>

<comment><USER31> Stolen. Someone PM me email if they would like the next invite on the chain.

<comment><USER32> I'd appreciate an invite too. My gmail is my username. Thanks!

<comment><USER33> If this is still going, I wouldn't mind an invite either.

firstname.lastname@example.com

<comment><USER32> Sent.

Thanks dekz.

<comment><USER34> Do you have any more invites? I've been hoping to get one for awhile now.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER35> Simple solution. Vim.

<comment><USER36> Vim has a command for putting Text Mate in fullscreen on OSX Lion? It really does have everything.

</comment></comment><comment><USER37> Who cares about Textmate nowadays anyway?

</comment><comment><USER38> Full screen? stfu</comment>


The Safest Seat To Sit On A Plane Is... - <AUTHOR> http://flowingdata.com/2008/05/20/the-safest-seat-to-sit-in-on-a-plane-is/

<comment><USER2> I saw a reasonable TV documentary on this topic some time ago entitled "Survivors Guide to Plane Crashes", which is briefly summarised at <http://news.bbc.co.uk/2/hi/uk_news/magazine/5402342.stm>

One of the more interesting aspects IMHO was the reason for turning off cabin lights when approaching for night landings: to acclimatise your eyes to the ambient light in case of crash. Of course the cabin crew don't disclose that...

A simple Google search reveals more tips: <http://www.google.com/search?q=how+to+survive+a+plane+crash>

</comment><comment><USER3> Thank you for posting this here - this is exactly the type of news that "Hacker News" is missing!

</comment><comment><USER4> I am at the airport right now and will be boarding a flight in 40 minutes.

Thank you!

</comment><comment><USER5> So a security-conscious traveler should avoid first class? I find it quite ironic that one pays for a less safe but more comfortable seat

<comment><USER6> You'd want to look at the stats another way too, though: per air mile traveled, how much more likely are you to die sitting in first class. The answer is probably "not that much", so it makes sense to enjoy the comfort.

<comment><USER7> > "not that much"

true. but, the issue here could be life&death!

...just another justification for living frugal and paying for cheap airline tickets.

<comment><USER6> If the difference is .0000001 % vs .0000002 %, then it doesn't really matter, does it? You're probably more likely to increase your statistical lifespan by taking a bus to the airport instead of driving, or eating a bit less fatty foods, or something else.

<comment><AUTHOR> One thing that always annoys me a bit is when people say "life is priceless" -- because our behavior is certainly not consistent with that. We could save many human lives via a myriad of expensive policies -- for example, requiring all cars to have tank-like protective shielding. The fact that these policies are not implemented implies that we're perfectly happy to place a price on human life -- it's just a question of which particular policies save enough lives to justify the cost.

</comment></comment></comment></comment></comment><comment><USER8> i dunno about the safest seat on the plane, but i recently found out that the most comfortable seatw on the plane--first class aside--are the exit rows seats because you get extra legroom. i used to avoid them because i thought the window seats were more uncomfortable, because they had all that exit row safety junk on them, but that's not the case.

</comment><comment><USER9> What about the top deck on a 747?

Or an A380, but I'm sure there aren't any stats for that just yet.</comment>


A Powerful Russian Weapon: The Spread of False Stories - <AUTHOR> http://www.nytimes.com/2016/08/29/world/europe/russia-sweden-disinformation.html <comment><USER2> To be said while the Russians spread stories the US spreads their ABM systems around Russia. This policy is considerably more dangerous than anything either side did during the cold war and makes a US first strike on Russia considerably more likely than ever and worse pushes the Russians into either an arms race to develop their nuclear capabilities further including producing more warheads as well as warheads with ABM countermeasures as well as pushes them to lash out with even a potential first strike as soon as they'll fear that the ABM system is about the nullify their nuclear arsenal completely.

While no one can agree if MAD is the most effective strategy it has more or less prevented major global conflicts for the past 70 years, the ideological and cultural dissonance between the US and Russia is pivotal to "world peace" just as the balance of power. If there is one thing that is worse than a single global super power is 2 that agree on everything and are besties, so at least the US is doing a good job at pissing Russia off, too bad they are doing it by destroying the nuclear balance of power between the 2 super states.

</comment><comment><USER3> Russia is being set up for another Cold (let's hope) War. The coordinated push is unbelievable (look at the Olympic ban).

The only reason I can come up with is that the political class needs an enemy to unite the populace against.

<comment><USER2> Russia isn't being set up for another cold war unfortunately, it's being set up for a very very hot war.

The US has ABM in Europe, Japan, Alaska and anywhere within 500 miles of an ocean.

While the current generation of US ABM systems isn't sufficient to counter the current nuclear arsenal of Russia within about 10 years it would be there.

Russia has either to develop an ABM shield of it's own which is both geographically and financially not feasible for them to do, or to develop new delivery mechanism and increase its warhead count to counteract the ABM.

Russia's moves in renewing their nuclear arsenal pushes even more efforts, resources and political capital into US and NATO ABM deployments and development. So the situation ends being a feedback loop which makes the situation worse and worse and worse.

Sadly Russia with 50,000 nuclear warheads with stealth, ECM, and decoy countermeasures capabilities is the good outcome of current policy, the bad outcome is that Russia loses the race and they cannot provide an asymmetrical answer to the ABM which forces them to strike first while they still can.

It appears we don't need SkyNet for judgement day we just need congress with a hardon for ballistic missile defense and defense contractors that want to make a buck.

<comment><USER3> Maybe if they stopped floating their country up so damned close to our war ships...

</comment></comment></comment><comment><USER4> With Iraqi WMDs and Colin Powell's anthrax I think we got Russians in a distant second in this weapons race.

We have a century old experience in using this weapon going at least as far back as Spanish sinking the USS Maine.

</comment><comment><USER5> From the second page: [https://news.ycombinator.com/item?id=12377097](https://news.ycombinator.com/item?id=12377097) (99 points, 90 comments)

</comment><comment><USER6> I would call it an information freedom asymmetry.

Russian current regime has thigh control over the media and social media in Russia. In addition they own many international openly Russian owned or covert Russian owned media channels that are presented in Russia as an Western media channels.

As a result, Russians living in Russia and also many Russians abroad (based on my personal observations) have completely distorted understanding of the reality (compared to the Western people).

You can imagine this as mentality of the Russian people is living in the heavily protected castle while mentalities Western people are living openly in the field near the castle.

This situation currently allows Russian government to mount an attacks from this stronghold while leaving people inside it mostly inaffected.

Naturally the situation like this is not inescapable and stories like this are good start to raise the awareness and help people to be prepared.

</comment><comment><USER7> Amazing comments in this thread. Just amazing. It's as if the weapon is working right here.</comment>


From PHP to Rust - <AUTHOR> Hi,
I am a PHP Developer who has nearly 5 years working experience from small to large PHP web application development. I started from Zend Framework & JQuery UI, then worked with different frameworks like codeigniter, Yii, Laravel and now Phalcon. But on past years I saw many revolutionary changes on web technologies and tools. Twitter Bootstrap, Backbone, Angular, Node.js, NoSQL, HHVM, Hadoop, Spark, Go, React, GraphQL, Rust, Swift and etc. But still I am a PHP developer who is becoming more outdated in IT world. About 2-3 years ago I learned at least some basics of Backbone, Node but couldn't move from PHP to Js in my carrier. Day by day I've become a self hated outdated web developer.
I believed web technologies like HTML5, CSS3 will replace native app development but it was not happened that way. I was finding a new language which I can use not only for web but also for native app development. I don't know why but I don't like Java & Go, didn't had a chance to learn Python. I heard about Rust and from syntax to concepts that is the language I was waiting for. But unfortunately still it is not ready for web.
Again I am trying to move away from PHP. I am learning Rust and blog time to time about my progress. But I really need to make it happen this time and make it faster. Please help me to make my dreams come true, guild me what I want to do if I want to move from PHP to Rust.
Thanks <comment><USER2> DO NOT LISTEN TO THE FUCKING HYPE FOR FUCKS SAKE!

I don't think you can go from PHP to Rust and expect to work on the same kind of projects! Are there any jobs in Rust for webdev currently?

Are you sure Rust is a great lang for webdev (meaning, is it worth it?)?

Regarding revolutionary tech:

1\. Bootstrap is just a theme. 2. Backbone/Angular are js libs and can be used with whatever backed lang. 3.Node IS NOT revolutionary. 4. Nosql should be used ONLY when needed (ex: elasticsearch when you want good search, redis when you want really good performance, cassandra/hbase/etc when you have more data than you can fit in a server with 1TB RAM). 5. I guess you can use HHVM with php. 6. Hadoop, is the same as 4. 7. Spark is the same as 4. 8.Go, is at most meh. 9. React:see 2. 10.Graphql I don't think php is blocking here. 11. Rust is like, a better c++/c. Are you doing any c++/c/java/low-level ? 11. Swift is not revolutionary, just a lighter objective c.

If you want a language to do everything, I'm afraid only c/java/c++ can do that. But even though the language can, doesn't mean you client will like you using c for your webdev project. What is this "didn't have a change to learn python"?.

So your dream is what ? To move off PHP? And to work on what kind of projects ?

I would recommend python (since it can do daemons etc) and is easier and there are more jobs and then go/try Rust . If you think you'll learn Rust-lang and then either find webdev jobs in rust, or find a job hacking databases/low- levely-stuff in it, you will find it's a little hard. (because there's no rust-web-dev and doing low-levely-stuff is hard, you need to know data- structures,algos,caches etc).

<comment><AUTHOR> Hi, Thanks for the reply. I agree with you about choosing Python, for the current job market. But I prefer Rust over Python. Also as I know many large web applications were rewritten using Go. But I believe Rust is better than Go, also I don't like Go without any reason :D I think rust has lot of potential for webdev, especially for larger applications. By the way I agree with you on most cases :)

<comment><USER3> > But I believe Rust is better than Go, also I don't like Go without any > reason

Well...nobody can do anything then except say that you just power through Rust tuts? What exactly are/were you expecting?

</comment></comment></comment><comment><USER4> Dude, don't hate yourself, and don't define yourself as a $LANG developer, if you want to learn new languages, do so. Learn the basics start a small project, try them out.

If you really insist on limiting yourself to a single language, PHP is just fine, big market, not going out of business anytime soon, lil ugly, sure, but pays your bills and has the great advantage of you already knowing it. Do not jump ship based on hype, try stuff out, see if it's actually better.

Also, you don't need to learn python, you already know how to program. You can probably just start writing python code and just use google if you get stuck, start with python3 tho, saves you some trouble.

I've developed my first php website when I was around 12, worked with it for many years, tried out lots of different languages and my conclusion is php has some unique advantages. It's not my go-to language, but I wouldn't mind using it.

About rust, I'm not really into low level stuff so it's one language I haven't tried out yet, but by all means, try it out, will only make you a better programmer, just don't marry it before the first date (:

</comment><comment><USER5> Do not listen ddorian. I replaced PHP by Rust and regret nothing: [https://medium.com/@eugeniyoz/restful-api-in-rust- impression...](https://medium.com/@eugeniyoz/restful-api-in-rust- impressions-63250d611d15#.j13viohu0)

<comment><USER2> Do you run it in async mode ? Why do you have nginx in front of it when you can use the http-server directly (like many do in go,java land)?

<comment><USER5> 1) Of course. 2) because nginx is much more mature and has protection against some attacks.

</comment></comment></comment><comment><USER6> Python is a great choice because it can do web dev (Django/Flask), automation/CLI type tasks, and data analysis.

I've most definitely become a better all around coder since picking up Python about 18 months ago - I was previously 100% PHP.</comment>


The Only Way You Can Delete This NSA Malware Is to Smash Your Hard Drive to Bits - <AUTHOR> https://www.vice.com/en_us/article/ypwk5v/the-only-way-you-can-delete-this-nsa-malware-is-to-smash-your-hard-drive-to-bits <comment><USER2> Anyone got any idea about how they might bridge airgapped computers like they mention in the article?

I've heard theories before about out of human hearing range audio signals acting as initiation/connection signals to laptops and that the firmware in a lot of these laptop mic subsystems has this kind of code always running and ready.

It would definitely be interesting to hear of some genuine examples.

<comment><USER3> "Much like previously discovered NSA malware such as Stuxnet and Flame, Equation Group's malware platforms can spread between air-gapped computers, ones that aren't connected to the internet, via USB sticks;"

<comment><USER2> Yeh I got that but was hoping for something more interesting

<comment><USER4> I suspect you were hoping for something like [https://www.pcworld.com/article/3173371/a-hard-drives-led- li...](https://www.pcworld.com/article/3173371/a-hard-drives-led-light-can-be- used-to-covertly-leak-data.html)

Now these are considerably more interesting methods.</comment></comment></comment></comment>


Getting Paid for Open Source Work - <AUTHOR> http://www.acucciniello.com/2017/02/11/How-to-Add-PayPal-Donation-Link-to-GitHub-Repo.html <comment><USER2> Please don't use Paypal. I know OSS does not imply "free as in freedom", but Paypal is just about as un-free as it gets.</comment>


Ask HN: What are some geeky wrist watches? - <AUTHOR> I'm looking for a digital watch that has functionality like an hourly chime, alarm clock, and reminders. When looking purely at functionality, I have no trouble finding this, but there are some aspects of regular watches that I don't want to give up either.
Functionality-wise: I want to hold on to the long battery life of regular watches. It doesn't need to last a year on a charge, but longer than a month would be nice.
In terms of style: a lot of the watches are designed to look expensive. I'm talking about things like glossy screens, fancy modern designs, and metallic bodies. These are things I want to avoid. I like the retro designs of the watches listed here[1], for example, with black, plastic bodies, and low-resolution screens.
Basically, I'm looking for a computer watch, which was the precursor to smartwatches. Is anything akin in that vein still being produced?
1. https://www.pcmag.com/feature/265834/12-ultra-nerdy-watches-of-yore <comment><USER3> Casio still makes many versions of the databank watch and, imo, you cant get geekier than that. [https://www.casio.com/products/watches/databank](https://www.casio.com/products/watches/databank)

<comment><AUTHOR> This is what I was looking for, thank you. I'm getting the DBC-32-1AES. It gives me extra nerd cred for having a model that ends with "AES".

<comment><USER4> Elliptic Curve Cryptography is the only standard I believe in :P

</comment></comment></comment><comment><USER5> Currently on IndieGoGo which I am totally rooting for: [https://www.indiegogo.com/projects/watchx-wearable- developme...](https://www.indiegogo.com/projects/watchx-wearable-development- platform-arduino)

<comment><USER6> Looks awesome for hackers, specially if you add some decent case and protective glass to it.

<comment><USER7> We will provide the exact 3D model of watchX. 3D model has everything including resistors and capacitors on the real watch. We encourage you to draw the case you need based on your application. Please see this video: [https://youtu.be/bHaP2b0yczk](https://youtu.be/bHaP2b0yczk) it's an interesting use of watchX. You can also see the 3D model on the video. We will provide different reference designs on our web site as well.

</comment></comment></comment><comment><USER8> You kids can keep your integrated circuits.

[http://www.cathodecorner.com/nixiewatch/](http://www.cathodecorner.com/nixiewatch/)

</comment><comment><USER9> I just got a Pebble 2 SE and loving it so far. I even wrote a little timer app for it; getting set up was comparatively straightforward and the API seems to be really well designed. Fun to be doing something in C again, though there's also a JS route for folks who are more comfortable with that path. The company was recently purchased by Fitbit and they are going to end official support for the Pebble devices so things like voice recognition are going to stop working. However, they released a firmware that removed the dependencies on their servers and there's a pretty substantial grassroots effort to keep things moving forward. I like it enough that I'm thinking about buying a couple more to keep in deep storage for when my current one dies. I imagine it's hard to find a more capable watch for $60, though I haven't done a super exhaustive search.

[https://www.pebble.com/pebble-2-se-smartwatch- features](https://www.pebble.com/pebble-2-se-smartwatch-features)

[https://www.amazon.com/Pebble-Technology- Corp-900-00057-se/d...](https://www.amazon.com/Pebble-Technology- Corp-900-00057-se/dp/B01KM4NFD2)

</comment><comment><USER10> Casio Gshock solar powered watch with an actual GPS chip and radio receiver. [http://www.casio- intl.com/asia/en/wat/watch_detail/GPW-1000-...](http://www.casio- intl.com/asia/en/wat/watch_detail/GPW-1000-1A/)

</comment><comment><USER11> Geeky in a very different way: I get a kick out the true atomic watches ala Bathys [https://www.hodinkee.com/articles/introducing-the-bathys- ces...](https://www.hodinkee.com/articles/introducing-the-bathys- cesium-133-atomic-clock-watch), though Hoptroff begs to differ... [https://www.hoptroff.com/collections/atomic- timepieces/produ...](https://www.hoptroff.com/collections/atomic- timepieces/products/no-10)

Not radio controlled, but actual atomic-based frequency drivers.

I know, not really what you mentioned, but cool nonetheless.

</comment><comment><USER12> What could be more geeky than a red LED Texas Instruments $9.95 watch from the 1970's?

[http://www.ebay.com/itm/Vintage-Texas-Instruments- Series-500...](http://www.ebay.com/itm/Vintage-Texas-Instruments- Series-500-LED-Watch-Working-/182757625081)

[https://www.ti.com/corp/docs/company/history/timeline/eps/19...](https://www.ti.com/corp/docs/company/history/timeline/eps/1970/docs/75-first_led_watches.htm)

<comment><USER13> Hmmm. I wonder if there'd be a market in recreating that style of push-button LED watch.

Nah.

/me thinks about how much volume it would take to make it worthwhile selling at a $100 price point.

<comment><USER14> Casio still makes the "casio classic" which is exactly what you're thinking about and is still a pretty popular watch.

</comment></comment></comment><comment><USER15> I have a Hamilton Pulsomatic [0] in my collection and for geekiness it is pretty high up the tree. A digital watch that you don't need batteries for is very nice and it gets a huge amount of (male) attention.

As an aside I have never had a woman ever comment on any of my watches - <USER2> really is a male thing.

0\. [https://shop.hamiltonwatch.com/hamilton- collection/american-...](https://shop.hamiltonwatch.com/hamilton- collection/american-classic/american-classic-timeless-classic- pulsomatic-h52585339.html)

<comment><USER16> Or, if you have happen to have infinite money lying around, a Hublot MP-07 :)

<comment><USER15> Well I am a few zeros short of infinite, but my hamilton does come with a 120 day power reserve :)

</comment></comment></comment><comment><USER17> This is not the same as what you want, but I'm mentioning it here because it is about watches, and a bit cool (IMO):

A while ago I needed a new watch, walked into a Tata Titan showroom (India) and saw some kids watches of a Titan brand or line called Zoop. Liked the bright colors and the simple designs of some of them (they have more complex ones too), and bought a couple of them to use.

Googling for "Titan Zoop watch" and clicking the Images tab will show some examples.

Might be able to get them outside India too, via Amazon etc.

</comment><comment><USER18> I have a couple of old (now discontinued) Tokyo Flash[1] watches. They are pretty neat and unique.

[1][https://www.tokyoflash.com/](https://www.tokyoflash.com/)

</comment><comment><USER19> 'Click watch' seem to make some amusing looking ones [http://www.click- watch.com/shop_cat.php?CatID=1](http://www.click- watch.com/shop_cat.php?CatID=1)

I think the nixie watch from [http://www.cathodecorner.com/nixiewatch/](http://www.cathodecorner.com/nixiewatch/) seems my favourite though.

</comment><comment><USER20> An old school Casio is a great choice. I've had a F91W for ages and the battery last years. Cheap too.

[https://www.amazon.com/Casio-F91W-1-Classic-Resin- Digital/dp...](https://www.amazon.com/Casio-F91W-1-Classic-Resin- Digital/dp/B000GAWSDG)

It has an hourly beep and an alarm but no reminders.

<comment><USER21> What I'm really waiting for is the F91W of smartwatches. I want subtle smart integrations like sleep tracking, heartrate monitoring etc but with a simple, always on screen and hardware buttons.

The Pebble watches were getting close but they were still way too big for my taste, and still too expensive.

<comment><USER22> DIY? Found this: [https://github.com/carrotIndustries/pluto](https://github.com/carrotIndustries/pluto)

But they've made different design decision:

 _Q: Why is there no accelerometer? A: Accelerometers are the most useful when they 're permanently active for applications like sleep trackers, pedometers or features like "shake to do something". Unfortunately, even accelerometers marketed as "ultralow power" draw approx 30 µA when running, draining the CR2016 coin cell in less than half a year. So we decided to dedicate the available space to a digital compass._

</comment></comment></comment><comment><USER23> I've this - [https://www.adafruit.com/product/495](https://www.adafruit.com/product/495)

Google showed me this - [https://www.tokyoflash.com/en/watches/](https://www.tokyoflash.com/en/watches/)

</comment><comment><USER24> This one just came up on Kickstarter today. Long battery life of 2 years. Hybrid analog + digital.

[https://www.kickstarter.com/projects/858167610/swings- worlds...](https://www.kickstarter.com/projects/858167610/swings-worlds-first- smartwatch-with-2-year-battery)

</comment><comment><USER25> I have the Casio B640. Has a countdown timer and the current time is shown in the top right when in the other modes.

[https://www.casio.com/products/watches/classic/b640wb-1bvt](https://www.casio.com/products/watches/classic/b640wb-1bvt)

</comment><comment><USER26> Try searching for binary watches.

[http://www.ebay.com/bhp/binary-watch](http://www.ebay.com/bhp/binary-watch)

This is also a goldmine: [https://www.tokyoflash.com/watches](https://www.tokyoflash.com/watches)

</comment><comment><USER7> Hello, This is Mustafa, Co-Founder of watchX, [https://igg.me/at/watchx/x](https://igg.me/at/watchx/x) . watchX is definitely a geek watch. I would like to answer your questions if you have one.

</comment><comment><USER7> Hi, This is Mustafa, Co-Founder of watchX: [https://igg.me/at/watchx/x](https://igg.me/at/watchx/x) . watchX is definitely a geek watch:) I would like to answer your questions if you have one.

</comment><comment><USER27> I wish this thing had made it out of crowd-funding hell:

[https://www.kickstarter.com/projects/920064946/oscilloscope-...](https://www.kickstarter.com/projects/920064946/oscilloscope- watch)

Sure would love to wear it!

</comment><comment><USER28> Doesn't have your requirements but cool as hell Urwerk UR-202 [https://www.youtube.com/watch?v=V5MExuc0hxg](https://www.youtube.com/watch?v=V5MExuc0hxg)

</comment><comment><USER29> The casio database is probably what you're looking for. They had a few different models but most deleted your list above. Luckily Casio still makes them, should be easy to find on eBay.

<comment><USER29> Typo* Casio Databank: [http://www.shopcasio.com/category/watches-databank- watches](http://www.shopcasio.com/category/watches-databank-watches)

</comment></comment><comment><USER16> Casio's g-shock line of watches should have something that matches your needs. Or perhaps a Casio Protrek PRW 2500. These watches also have solar cells so the batteries last for ages.

</comment><comment><USER30> Does anyone remember Timex Datalink? You held it up to a CRT (only works with CRT!) and the screen would flash some kind of coded lines which the watch would read to transfer your data.

</comment><comment><USER31> Nixon Dictator - [https://www.stuff.tv/nixon/dictator/review](https://www.stuff.tv/nixon/dictator/review)

</comment><comment><USER32> I used to have the Casio Flip-Top Database watch (first entry on the pcmag list). The flip mechanism wore out after a couple of months so I wouldn't recommend such a mechanism.

</comment><comment><USER33> I have a Junghans solar powered radio controlled watch. Plainly black, but it's made from space shuttle grade ceramics and it's only nerdy once you talk about it ;-)

<comment><USER17> Just googled and read about it (to get what radio-controlled meant), sounds really cool.

[https://www.junghans.de/en/junghans-news- press/artikel0/36/N...](https://www.junghans.de/en/junghans-news- press/artikel0/36/News/detail.html)

</comment></comment><comment><USER34> I wear [http://www.thinkgeek.com/product/ivsp/](http://www.thinkgeek.com/product/ivsp/)

<comment> m-p-3 That watch skipped the forehead and jumped to fivehead.

</comment></comment><comment><USER35> Chronos from TI is a great hackable watch cf. [http://www.ti.com/tool/EZ430-CHRONOS](http://www.ti.com/tool/EZ430-CHRONOS)</comment>


Retpoline: A Branch Target Injection Mitigation [pdf] - <AUTHOR> https://software.intel.com/sites/default/files/managed/1d/46/Retpoline-A-Branch-Target-Injection-Mitigation.pdf <comment><USER2> I can't shake the feeling that Intel are trying to take credit for retpoline. They make no effort to credit the folk at Google who came up with retpoline. You have to follow the reference in section 8 to infer that Google are the saviours here.

<comment><USER3> Disclaimer: I put a big chunk of that paper together.

That definitely was not the intent! Getting retpoline to the place it is today took a ton of work from a ton of people, including the awesome folks at Google like Paul Turner, and countless people in the Linux community.

</comment></comment><comment><USER4> There are already compiler patches for retpoline, but section 5.2 is alarming for Skylake and above:

"When the return stack buffer "stack" is empty on [>= Skylake] processors, a RET instruction may speculate based on the contents of the indirect branch predictor, the structure that retpoline is designed to avoid. The RSB may become empty under the following conditions:

1\. Call stacks deeper than the minimum RSB depth (16) may empty the RSB when executing RET instructions. This includes CALL instructions and RET instructions within aborting TSX transactions.

[list of ~10 other situations that empty the RSB stack]"

They describe an "RSB stuffing" procedure, but I don't see any realistic way to guarantee that it happens properly with general code. How many call stacks do you have that are more than 16 frames deep? How many of those are recursive or _dynamic_?

<comment><USER3> Disclaimer: I put a big chunk of that paper together.

You ask how it can be guaranteed with "general code". The first thing to remember is that retpoline is not for "general code". Linux, for instance, does not support arbitrary call depth and barely uses recursion.

Also, take a close look at the "Exploit Composition" section of the paper. Those five conditions are much harder to satisfy at 'RET' than they are during the demonstrated Spectre variant 2 exploit points. For instance, a long speculation window (#5) for 'RET' is interesting to generate since it means a stall while waiting on something to come off the stack.

<comment><USER5> "Linux, for instance, does not support arbitrary call depth and barely uses recursion." Perhaps there's context missing from that statement? Linux certainly can have arbitrarily deep call depth, depending on the stack size. Are you referring to the kernel? That would be odd, since the paper talks about application code needing to be fully recompiled with retpoline to be safe.

(Of course, that means that all libraries you link with or dynamically load have to be compiled with retpoline too.)

<comment><USER3> Yes, I was referring to the Linux kernel: it does barely uses recursion and has small stack sizes compared to normal applications.</comment></comment></comment></comment>


Ask HN: Resource to find and learn more about interesting companies/startups - <AUTHOR> I want to find out thing that I don't know yet about big companies and promising startups. There's a lot of companies out there. But I can only find their job posting and some relevant pages about their market, products. Those pages usually for marketing purpose, which are not what I'm looking for.
I want to know:
- Who are they, beside the well-known names like Google, Facebook, Microsoft,
  Amazon, Dropbox, Grab, Uber... - How is their financing status? - Who are they competitors, and how would they fight (the differences between
  them and competitors, the strategy, scale, R&D) ?
- Their history.
FWIW, I'm seriously looking for a new job, where I would contribute my time to build something interesting. During searching, it's feel like I'm learning about building my own startup. But I don't want to. I think it better to join an already growing company, because my network is narrow, and I know nothing about financing, funding, etc. <comment><USER2> You could try crunchbase.com - has more info about financing</comment>


List of JavaScript Game Engines - <AUTHOR> http://www.reddit.com/r/javascript/comments/f094j/list_of_js_game_engines_community_effort/ <comment><USER3> There's something totally awesome about seeing your project on this kind of thing. Almost feels like being published.

<plug> I'm delighted to see Flax on the list there, it being my own project. </plug>

Edit: removed two extraneous instances of the word "something"

<comment><USER4> Would you say that the list correctly characterized Flax as being geared towards MacOS X & Linux?

My reading of your "about" page, which the list cites for that characterization, sounds more like the 1st paragraph mentioned those platforms as topics one might also see on the blog, but didn't really say anything that married Flax itself to those platforms.

<comment><USER3> No, I wouldn't. Flax uses <canvas> when it's available, and a fallback for when it's not, so it more or less works on a decent number of browsers, platform independent.

</comment></comment></comment><comment><USER5> It takes a lot for me to recommend a product, but having played with ImpactJS (on the list) I can't recommend it enough.

Although it's commercial, $99 is cheap and it was great fun to tinker with over the Christmas holiday (I like paying for software, then I don't feel guilty if I have a question to two). The integrated level designer really made it more approachable for somebody just starting to think about HTML5 games.

<comment><USER6> Is it able to do isometric view and pathfinding ?

<comment><USER5> I'm not an expert with it - I'm in the tinkering phase only :-)

Having said that, based on what I saw on the forums it doesn't support isometric out of the box but you can create your own tile type and then work with isometric tiles (I can't speak for the creator, but the question has come up enough that I would hope he's looking at adding native support!).

The Isogenic Engine (<http://www.isogenicengine.com/home/>) on the list looks quite good for Isometric games but I haven't used it - would love to hear how people have found that library.

I'm not sure about path finding. I've been building basic platform style games where units go backwards and forwards typically.

For starting out with simple platform games though it's quite nice.

<comment><USER7> As far as I can tell, isogenicengine is not published. There's a beta signup, that's about it.

</comment></comment></comment></comment><comment><USER6> My list (no reddit account so I'll post here)

<https://gist.github.com/749734>

</comment><comment><USER8> I hate to say it, but javascript games will not be viable until browsers are willing to relinquish keyboard controls to user code. We need two things, ability to enter full screen, and ability to take all controls, in a way that still protects the end user.

<comment><USER9> Mozilla has proposed a FullScreen API. It's also in the latest Webkit nightlies iirc.

<https://wiki.mozilla.org/Gecko:FullScreenAPI>

You can also prevent the default behavior for almost all keys already (Opera is still a bit reluctant in that regard).

<comment><USER8> Firefox also doesn't like giving exclusive arrow key controls or blocking find as you type.

</comment></comment></comment><comment><USER10> [https://github.com/bebraw/jswiki/wiki/List-of-JS-Game- Engine...](https://github.com/bebraw/jswiki/wiki/List-of-JS-Game-Engines-and- Related-Tech)

direct link to the now "official" github wiki page.

</comment><comment><USER11> Very nice list. I've googled a while ago for this, and it yielded awfull results. Not that search engines were ever good at specific option comparison (think wikipedia lists), but it really got worse as more nad more people create things.

HN also had a very nice list a while ago: <http://news.ycombinator.com/item?id=2024401>

<comment><USER6> Hehe, that's my post too! I was trying to make people to contribute info!

</comment></comment><comment><USER12> Some of them are so slow. Waiting for better javascript performance optimization.

<comment><USER13> I think Javascript performance is basically here but mostly unused, destroyed by careless abstraction.

<comment><USER14> Yes, and the problem is not JavaScript performance per se. The problem is slowness in the canvas implementation in several browsers.

In my game 90%+ is spend drawing to canvas.

In some cases its better to use the DOM to render the game, especially if the platform has accelerated CSS3 transform and translate3d (like iOS).

What I did was to abstract the drawing so the game can render either to canvas or DOM depending on what is faster for the platform the code runs on.

<comment><USER10> full ack. The only way I can speed up my games is by doing less canvas calls, everything else is negligible. Although I A* often runs and a couple dozen simple state machine AIs for the actors.

</comment></comment></comment></comment><comment><USER15> We've got the engines but where are the games?

<comment><USER10> I guess like most of those projects, GameJs grew as a library while I was coding games.

Still, I have only managed to finish small games and the biggest - <USER2> RTS - is still in the making <http://gamejs.org/apps/rtsimple/> (rough tech demo)

If you do game programming as a hobby, then the only predictable way to finish a game is during a competition. It is _much_ easier to finish a game within 48 hours than with unlimited time.</comment></comment>


Blocking 500M Users Is Easier Than Complying with Europe's New Rules - <AUTHOR> https://www.bloomberg.com/news/articles/2018-05-25/blocking-500-million-users-is-easier-than-complying-with-gdpr <comment><USER2> Going out of business is easier than staying in business too.

</comment><comment><USER3> It's really not though.</comment>


OpenCat is a robotic kitten from the open source community - <AUTHOR> https://www.personalrobots.biz/opencat-robotic-kitten-from-the-opensource-community/ <comment><USER2> As a note, HN frowns upon blogspam submissions (aka, reposting on your own site and submitting it). Original sources are preferred. If you have original work, articles, etc. posted on your site, it makes sense to submit, but otherwise, you should submit the original article.

OpenCat was submitted to HN a year ago: [https://news.ycombinator.com/item?id=16466063](https://news.ycombinator.com/item?id=16466063)

<comment><AUTHOR> Hi ocdtrekkie, sorry for my enthusiasm but I think that it's not everyday that we have robotic news! about opencat before only the code was shared now we have the 3d printed stl file . so this is actually a news. Thanks!</comment></comment>


A Happy new Ruby Web Framework - <AUTHOR> https://github.com/hmans/happy More powerful than Sinatra. Much lighter than Rails. Just Happy Ruby code. <3 <comment><USER2> How does this compare to Ramaze or Innate?

<comment><USER3> Author of Happy here. I apologize, the link ended up on here too early -- I'm preparing to release & announce the first proper version some time this weekend.

To answer your question though, the way Happy works largely revolves around routing the request URL through a simple graph of controllers (instead of mapping URLs to classes, like most other frameworks do it). These controllers are essentially apps-within-apps; modular, testable, describing functionality, not data.

It's also a good Rack citizen, as each Happy controller class is also a fully functional Rack app.

Details some time this weekend.

<comment><USER2> Ramaze uses (or has as an option) regexen for mapping URLs to controllers, which is quite nice.

 _It's also a good Rack citizen, as each Happy controller class is also a fully functional Rack app._

Very neat.</comment></comment></comment>


Drug cartel 'narco-antennas' make life dangerous for Mexico's repairmen - <AUTHOR> https://www.reuters.com/article/us-mexico-telecoms-cartels-specialreport/special-report-drug-cartel-narco-antennas-make-life-dangerous-for-mexicos-cell-tower-repairmen-idUSKCN24G1DN <comment><USER2> It blows my mind that there are multiple organizations that are so large and well armed that even the Mexican government won't touch them. Keep in mind that the Mexican military has the 17th most active duty personnel _in the world_ ([https://en.wikipedia.org/wiki/List_of_countries_by_number_of...](https://en.wikipedia.org/wiki/List_of_countries_by_number_of_military_and_paramilitary_personnel)) and spent $7 billion last year ([https://en.wikipedia.org/wiki/Mexican_Armed_Forces](https://en.wikipedia.org/wiki/Mexican_Armed_Forces)), and still isn't willing to take on drug cartels stomping on their own sovereign territory.

These guys just throw up repeaters and not only do they not try to hide them, they actually mark them to show who is going to be destroying your life if you take them down. Oh, and you have to pay if you want to work on your own legitimate equipment that is rightfully on that tower.

The illegal drug trade exists on a scale unimaginable to most people. Imagine if we could figure out how to legitimize it- we'd save countless lives over stupid stuff like having your life threatened just because you work for a telecom company and need to do your job. If we could tax drug money at just a couple percent we could invest in all sorts of social programs and infrastructure, rather than funding thugs. The crazy part is that a lot of the drug lords don't even spend a good chunk of their fortune, they just store massive amounts of money in houses they'll never even live in.

Edit: To clarify my point a little, the reason the Mexican government isn't willing to do anything is that they couldn't do anything about it even if they tried. The Mexican military has fewer people than the cartels and have a smaller budget. According to this article from 2012 ([https://muse.jhu.edu/article/485071](https://muse.jhu.edu/article/485071)) the Mexican cartels employ 450,000 people and make $25 billion annually (these numbers have probably increased in the last eight years). The Mexican military would have to be incredibly skilled to take them on with 177,000 people and a $7 billion budget. And even then, that's just the Mexican cartels, there are more in South America and the rest of the world. Stopping the illegal drug trade would take a unified policy effort from every government in the world, we're past the point of being able to be able to fight the cartels with military power.

<comment><USER3> The other side is also true, the US has the largest army in the world, along with the most sophisticated intelligence apparatus, but it cannot (or doesn't want) to stop the traffic coming from outside its borders.

<comment><USER4> > it cannot (or doesn't want) to stop the traffic coming from outside its > borders

Openly turning that sophisticated intelligence apparatus against the citizenry is simply not politically tenable in the US at present. (Note that I said openly. What Snowden revealed wasn't open.)

<comment><USER5> Are you aware that there's a bit of an ongoing jackboots-gas-and-rubber- bullets crackdown happening across the United States against unarmed civilians?

The government has no problem turning its tools against the citizenry - well, particular parts of the citizenry.

These aren't hypothetical techie concerns about the NSA seeing your dick pics. This is actual police departments behaving like we live in a police state.

<comment><USER4> Indeed. In context, something that would presumably continue indefinitely (border traffic and drug consumption) was being discussed. That would require permanent legislation and normalization of extensive government surveillance.

In contrast, the current shenanigans are occurring within a declared state of emergency (pandemic) on top of which widespread protests over an unrelated topic broke out. Even then, what's happening appears to be status quo police brutality that's piecemeal. (As opposed to open, centrally coordinated mass surveillance of everyone's actions - both physical and digital - with the approval of the legislature).

</comment></comment></comment></comment></comment><comment><USER6> I don't listen to Joe Rogen much, his two interviews with Ed Calderon (former Mexican federal police in cartel areas) is incredible and highly recommended.

He talks about the corruption, the hearts-and-minds efforts of the cartels, the cartel cell networks, how they build roads, etc. absolutely fascinating.

[https://youtu.be/llhb2ymtsw8](https://youtu.be/llhb2ymtsw8) [https://youtu.be/xPBejhoKlb8](https://youtu.be/xPBejhoKlb8)

<comment><USER7> Does he cover having to pay to work on your own tower? It seems to me the cartels would need to be the ones bribing the workers to not snitch

</comment></comment><comment><USER8> What if the US had a system wherein drug addicts would register, and get their drugs for free (or at very low prices, administered by professionals)? Just take away the middlemen, and provide the drugs in safe, controlled, monitored sites. No questions asked: as long as you are over 21 and can prove a need, you can get a card. Just walk in, get your fix, and either walk out (or lay down right there).

Once you have people in this system, then you can work on them to get them off the drugs.

<comment><USER9> In European countries doing this the biggest opponents are families of addicts. This is basically a death sentence. It's society finally turning its back on them. I believe it's the right approach in the long run, but in the short run you get emotional appeals and weak politicians.

<comment><USER10> Could you point me to some reading material on this?

Because we have these schemes in the Netherlands. Opiod addicts can get their fix from municipality health centres, alcoholic homeless people can clean up parks in exchange for beer, it seems to work very well.

If you take away 'the game' of acquiring your next fix and give people structure it seems to set them up better to drop the dependancy all together.

</comment></comment></comment><comment><USER11> > _The contractor had disrupted a small link in a vast criminal network that > spans much of Mexico. In addition to high-end encrypted cell phones and > popular messaging apps, traffickers still rely heavily on two-way radios > like the ones police and firefighters use to coordinate their teams on the > ground, six law enforcement experts on both sides of the border told > Reuters._

How will Mexico ever have peace while it lives next to the largest drug consuming country in the world? While it's illegal here, the money will go to these cartels.

<comment><USER12> Why do you think Canadians don't have cartel problems like this?

<comment><USER13> It may not be 'like this' in scale compared to Mexico, but drug-related organized violent crime is a thing in Canada.

[https://en.wikipedia.org/wiki/2009_Vancouver_gang_war](https://en.wikipedia.org/wiki/2009_Vancouver_gang_war)

[https://vancouversun.com/news/staff-blogs/real-scoop- alleged...](https://vancouversun.com/news/staff-blogs/real-scoop-alleged-b-c- hitmen-murdered-within-weeks-of-dubai-slaying)

[https://www.cbc.ca/news/canada/manitoba/increase-drugs- drivi...](https://www.cbc.ca/news/canada/manitoba/increase-drugs-driving-gun- crime-1.5140196)

<comment><USER14> One of the gang leaders arrested in 2009 was finally sentenced less that two weeks ago.

Pretty crazy how long it took our legal system to prove guilt - eleven years.

[https://vancouversun.com/news/jamie-bacon-to-plead-guilty- in...](https://vancouversun.com/news/jamie-bacon-to-plead-guilty-in-surrey- six-and-counselling-to-commit-murder)

</comment></comment></comment></comment><comment><USER15> Mexico's only real chance is to raise a middle finger to the USA and legalize drugs in their own country. How can you enforce law and order when a foreign country is funding criminals in your country with more money than exists in your own budget?

<comment><USER10> The USA has a drug problem, Mexico has a kartel problem.

<comment><USER15> That would be true on another continent.

But when your neighbour has an economy 100x the size of yours, and hands your cartels several billion dollars a year, you really have not realistic chance at all.

</comment></comment></comment><comment><USER16> I don't mind lead or gold.

But in 2011 it was claimed they kidnapped and killed 12 technicians

[https://www.npr.org/2011/12/09/143442365/mexico-busts- drug-c...](https://www.npr.org/2011/12/09/143442365/mexico-busts-drug-cartels- private-phone-networks)

</comment><comment><USER17> Do the cartelsmen mount their equipment on the mast while the cell antenas are still hot 0_0

<comment><USER18> Possibly. When I worked in radio there was no shortage of engineers willing to violate all of the safety rules and do tower maintenance without shutting down the transmitter for a little extra money. They often had the RF scars to prove it.

<comment><USER11> Why would there be a market for such work?

<comment><USER19> Gangs don't need to follow safety standards and pay more than legitimate work

<comment><USER20> They also may 'pay' more if you refuse to do the work.

</comment></comment></comment></comment></comment><comment><USER21> Here in Mexico we have to copy the American narco model.

Drugs crossing the border don't just appear automatically in the consumer's hands, right?

So how do American narcos transport their drugs inside the US?

How do they transport the money?

Does the American law enforcement chooses to close their eyes to the mountains of drugs crossing the border every day and being transported everywhere in the US? Are they part of the mafia?

Let's not forget there's A LOT of money involved and a lot of consumers are millionaires and powerful people.

Why are cartels so quiet up there?

<comment><USER22> @elboru ..

Exactly, it's a pretend war on drugs, while the people at the top make millions. Moving the war on drugs overseas only serves to distract from the US home grown drug industry. And there's no problem in injecting these narco- dollars back into the economy.

</comment></comment><comment><AUTHOR> A shocking video surfaced onto social media Friday, showing a convoy of armored vehicles with dozens of combat-uniformed gunmen who expressed their support for Nemesio Oseguera Cervantes ("El Menccho"), the leader of the Jalisco New Generation Cartel: [https://www.zerohedge.com/geopolitical/mexican-cartel- displa...](https://www.zerohedge.com/geopolitical/mexican-cartel-displays- show-force-shocking-video)

</comment><comment><USER23> Multiple times they noted that they kept calm or not scared, Why would they more likely to kill them if they got scared?

<comment><USER24> Scared means you think you got caught doing something wrong a lot of times. It's an admission of guilt.

<comment><USER25> I guess I could see that- this context is about the cartels interacting with maintenance men and soliciting protection payments, not law enforcement thinking maintenance men are doing shady things.

</comment></comment></comment><comment><USER26> We could significantly diminish the cartels' powers if we legalized all drugs. It could be done with the stroke of a pen but there's no political willingness to do so.

The citizenry has been brainwashed into thinking that the war on drugs is designed to protect people; in fact it's the exact opposite.

</comment><comment><USER27> Well I think the Mexican government just got a huge clue for how to stop them

</comment><comment><USER28> While we commonly think of drugs as a sort of abstracted aggregate, in reality most of the drug trafficking in Latin America comes down to just _two_ drugs: marijuana and cocaine.

[https://www.rand.org/content/dam/rand/pubs/research_briefs/R...](https://www.rand.org/content/dam/rand/pubs/research_briefs/RB9700/RB9770/RAND_RB9770.pdf)

Marijuana is a problem that we are already addressing. A majority of Americans and Westerners in general have supported marijuana legalization for years now, raising hopes that the problem will be solved in some way. Our knowledge about the drug and experience with legal marijuana problems suggests that the downsides of legalization are not very large.

Cocaine is a little bit different. It puts severe stress on the heart because it inhibits action potentials in peripheral neurons directly via action on voltage-gated sodium channels _and_ increases metabolic rate via CNS activity. The downsides of cocaine prohibition are massive, but in this case the downsides of legalization have a large uncertainty.

However, the severe death toll associated with a $30bn market puts the onus of responsibility on any conscientious American to want to put a stop to it.

Unlike powder cocaine, coca leaf has a long history of relatively safe use in the northern Andes. Widespread coca tea use is not considered a public health crisis of any particular concern in Peru and southern Colombia:

[https://ojs.lib.uwo.ca/index.php/uwoja/article/download/8770...](https://ojs.lib.uwo.ca/index.php/uwoja/article/download/8770/6964)

[http://eva.fhuce.edu.uy/pluginfile.php/128760/mod_resource/c...](http://eva.fhuce.edu.uy/pluginfile.php/128760/mod_resource/content/1/Labate-%20Prohibition%20religious%20freedom%20%20human%20rights.pdf#page=51)

The decriminalization of coca tea in Western countries may lead to less gang activity as illegal cocaine manufacture economics shift from large-scale to small-scale extraction. The same situation occurs presently with DMT, albeit on a much smaller scale. Optimistically, addicts may substitute with oral formulations which are generally less addictive due to the relationship between reward delay and the intensity of operant conditioning. Cocaine also substitutes for methamphetamine, which may lower the street price of the latter.

However, there is also the possibility of increased crime associated with cocaine extraction, which poses another quandary. It is highly unconventional to enact a policy that will clearly empower certain types of criminals.

Nonetheless, I think we need to be open to ideas like these if we are to be ready to take responsibility for the role of US drug policy in destabilizing equatorial Latin America. The situation as it stands is not acceptable. It must be strenuously opposed.

<comment><USER29> The cartels aren't drug evangelists, they're businesses. Take away drugs and they'll violently monopolize other profitable export industries. In fact, they've already done this with avocados.

If you want to stop the violence and corruption of the cartels, you'll have to either change the culture that makes their existence possible, or defeat/imprison/kill them all. I'm not sure which of those would be more difficult.

<comment><USER30> There _are no other criminal enterprises_ that offer a comparable revenue source. Not one. It's utter nonsense to think that organized crime is just going to switch to avocado extortion and keep bribing their way out of jail.

<comment><USER29> The Sicilian Mafia has gone mostly "legit," in the sense that they operate in legal industries, e.g. olive oil. They just use criminal means to extract hugely excessive rents from those industries.

<comment><USER31> They aren't competitive internationally, though. And can't be unless they're also going to go down to Morocco, fight the Army, invade Tunisia and Algeria, and then force the extraction of high rents.

</comment></comment></comment></comment></comment><comment><USER32> Watch "Wolf of Wall Street" with Leonardo Di Caprio. That will answer all your questions why Mexico is such a paradise for cartels.

</comment><comment><USER33> Am I the only one that wishes we had something like this in the US (but without the murder)?

</comment><comment><USER34> > Their No. 1 rule when discovering cartel equipment on a tower is simple: > Don't touch it.

They never follow up on why they shouldn't touch it! [edit: OOPS yes they do, sorry!]

<comment><USER35> Later in the article.

>Cartels have kidnapped technicians doing maintenance on cellular towers to make them fix their networks, people working in the sector said. The technicians usually are released after a few days, if not sooner. Still, those who spoke with Reuters said they live in fear of being forced by traffickers to do such work, lest they be killed for knowing too much, or become targets of authorities or rival criminal groups for being complicit. Whenever possible, they said, they downplay their expertise.

</comment></comment><comment><USER36> Isn't what President Duterte is correct, now? There are lot of failings I agree but Philippines would have turned out to be another Mexico if it was left unchecked.

If the borders of the US close then the smuggling will start to go to other countries too I guess.</comment>