"The rep made it sound like there was free money on the sidewalk each night." - <AUTHOR> https://slate.com/technology/2018/05/charging-bird-scooters-overnight-is-like-a-much-less-fun-version-of-pokemon-go.html <comment><USER2> Why can't they hire a small number of people like normal to find and charge them, instead of making charging part of the gig economy?

Would be interesting when self driving scooters become available and the scooters can drive to a nearby charging post to charge itself.

</comment><comment><USER3> How have things changed since the May announcement noted at the end of the article?

<comment><AUTHOR> Haven't seen any changes. They still seem not active in SF. Charging situation is same from people I talk to.

</comment></comment><comment><USER4> > By clicking "Agree," you consent to ...

And no "I don't consent" button. Why put up such a message in the first place if they don't care about complying with the GDPR?</comment>


Alternative JavaScript Module Pattern - <AUTHOR> http://taskq.ibrahimtanyalcin.com <comment><USER2> No. JS already has plenty of terrible module patterns. It is 2018, just use ES2015 modules. Yes, transpilers are needed for a bit longer in browsers, but tools like webpack, rollup, etc are already proving the worth of ES2015 modules and it past time to converge to the standard. For node, no transpilation needed for further back than LTS (6+): [https://www.npmjs.com/package/esm](https://www.npmjs.com/package/esm)</comment>


Clang++ Builds Boost - <AUTHOR> http://blog.llvm.org/2010/05/clang-builds-boost.html <comment><USER2> Awesome! Just as I'm working on my own toolchain, and the day before a long weekend! HaaaaaaaaaaaaaaaaaaaaaaaaackBoom!

</comment><comment><USER3> congratulations! Does this mean that Clang project will finally has some spare hands to work on something like OpenMP?

<comment><USER4> Consider that compiling Boost gets them _up to_ compilers like gcc and MSVC for _the current_ standard of C++. There's still the upcoming C++0x standard that both gcc and MSVC have made big progress in supporting.

Also, something like OpenMP is light on the actual compiler support (compared to, say, handling Boost or some of the upcoming C++0x features). Most of the work goes into the runtime system. The expertise needed to build a good runtime system for OpenMP is different than the expertise to build a good C++ compiler. There's significant overlap, no doubt, but I doubt this development will "free up" anyone.

<comment><USER5> Considering this in combination with the recent announcement of libc++ (<http://libcxx.llvm.org/>), and the fact that the chair of the library working group for C++0x is on the team, I'd venture to guess that support for C++0x is probably a pretty high priority. (At least, probably higher than OpenMP.)

</comment></comment></comment><comment><USER6> I can't wait until Clang++ is a standard part of CEDET and Code::Blocks and even Qt Creator and Eclipse. (Heck even Netbeans, I feel charitable today :)</comment>


What it's really like to work for a tech giant - <AUTHOR> https://medium.com/@tommycm/what-it-s-really-like-to-work-for-a-tech-giant-4462fd18ce19

<comment><USER2> The title bugs me. I don't think this story describes a standard experience working for a tech giant.

</comment><comment><USER3> There are tech giants like this? How bizarre. Why would anyone spend even a week working for such a place?

</comment><comment><USER4> Kind of depressing, reads like 1984.

<comment><USER5> I think that was the point. But this really is about what it's like to have a bad manager.

Good places couldn't give two figs if you miss the team softball meeting or have/don't have coffee.</comment></comment>


75-year study on what men require to live a happy life. - <AUTHOR> http://www.feelguide.com/2013/04/29/75-years-in-th-making-harvard-just-released-its-epic-study-on-what-men-require-to-live-a-happy-life/ <comment><USER2> Harvard undergrads from the 1930's are not a representative sample of any group other than that specific group. The sample is in no way random or representative of the general population in the least bit. I can't believe that anyone thinks that this study has any meaning towards the population in general.

I'm sorry if that's overly cynical, but why is it so hard for Harvard academics to understand that the factors affecting people from the Mid-Western middle class, Southern urban poor, New England suburban wealthy, etc. are all very different? Not to mention the factors affecting various cultures internationally.

This is a study of similar people with relatively similar genetics, backgrounds, upbringing, values, wealth, intelligence, and overall lifestyle. How is this of any value to people who aren't like them?

EDIT: I'm realizing that the study's conclusions might be getting exaggerated in the media. I haven't read the actual study, so I'm not sure if the authors are claiming anything as significant as the media is.

<comment><USER3> In general I agree with you that this is unrepresentative for a nation as a whole - see my other comment for that.

However one advantage of a sample like this is that significant independent variables like the ones you mentioned are widely held constant, which means that the evaluated variables will have a stronger power. So it is informative relative to others.

It would be best to take this study into context with other studies which compare educational achievement and poverty level.

<comment><USER2> Agree that there are other things this study may be beneficial for. I edited my initial comment to acknowledge that this study and its conclusions are probably being hyped by the media, and it's actual value and the limitations of the study may be addressed by the authors in the study.

Unfortunately, the authors' words will be replaced by journalists to get attention.

</comment></comment></comment><comment><USER3> I can't help but think that, given the sample chosen, the results are significantly skewed towards the WEIRD [1] population.

Not to say there aren't generalizable conclusions, however I would guess it is less informative for those living in poverty or in historically oppressed communities.

[1][http://lesswrong.com/lw/17x/beware_of_weird_psychological_sa...](http://lesswrong.com/lw/17x/beware_of_weird_psychological_samples/)

</comment><comment><USER4> 200 people isn't a huge sample size, but the study is still very interesting. This part made me laugh:

 _With regards to sex lives, one of the most fascinating discoveries is that aging liberals have way more sex. Political ideology had no bearing on overall life satisfaction, but the most conservative men on average shut down their sex lives around age 68, while the most liberal men had healthy sex lives well into their 80s. Vaillant writes, "I have consulted urologists about this, they have no idea why it might be so."_

<comment><USER5> It definitely is not a big sample size. However, considering that 200 people participated in the study for this many years.. I would say it is a big sample size just in terms of practicality (how many people would agree to participate in this? This study essentially becomes a part of their lives.. for all the time they live.)

<comment><USER6> Yeah, the profile of people who would agree to participate in this study is certainly "biased". Not sure what you can do with the results.

<comment><USER5> This may be true, but I'm not sure how they are biased (what factors? Are these men more likely to be married because they're willing to go through such a study? More likely to not..).

</comment></comment></comment></comment><comment><USER7> Website is down. Google cache link: [http://webcache.googleusercontent.com/search?hl=en&q=cache%3...](http://webcache.googleusercontent.com/search?hl=en&q=cache%3Awww.feelguide.com%2F2013%2F04%2F29%2F75-years- in-th-making-harvard-just-released-its-epic-study-on-what-men-require-to-live- a-happy-life%2F)

The key point: _In Vallant's own words, the #1 most important finding from the Grant Study is this: "The seventy-five years and twenty million dollars expended on the Grant Study points to a straightforward five-word conclusion: Happiness is love. Full stop."_

<comment><USER8> It's hard to take a "scientific study" seriously when the researchers claim the results to be some worthless platitude like "happiness is love." That is hardly an objective conclusion from the findings.

</comment></comment><comment><USER9> This article doesn't get anywhere close to encapsulating the study. I suggest people read [http://www.theatlantic.com/magazine/archive/2009/06/what- mak...](http://www.theatlantic.com/magazine/archive/2009/06/what-makes-us- happy/307439/) for a better coverage.

</comment><comment><USER10> cache link: [http://webcache.googleusercontent.com/search?q=cache:tuBAAbS...](http://webcache.googleusercontent.com/search?q=cache:tuBAAbSPjXUJ:www.feelguide.com/2013/04/29/75-years- in-th-making-harvard-just-released-its-epic-study-on-what-men-require-to-live- a-happy-life/+&cd=1&hl=en&ct=clnk&gl=us)

</comment><comment><USER11> I find it amusing that the vast majority of the comments here are critiquing the methodology (nothing wrong with that), instead of discussing the conclusion: "Happiness is love. Full stop."

HN will be HN.

<comment><USER3> Well, with a flawed or skewed methodology, the conclusion isn't nearly as relevant.

<comment><USER11> Yep, that is a good point.

</comment></comment></comment><comment><USER12> TL;DR Things will turn out fine if you don't become an alcoholic and maintain family relationships adequately. Going to Harvard doesn't hurt either.

Let me rephrase that, the most common way to screw up your life badly after you've gone to Harvard is to become an alcoholic.

</comment><comment><USER13> Interesting study! The question is of course how applicable the results are...

I realize Facebook and Twitter are not around long enough to perform a similar study on their data, but I wonder if it would be possible to test just some of the findings using the data mining techniques?

</comment><comment><USER14> [http://www.businessinsider.com/grant-study-reveals-what- make...](http://www.businessinsider.com/grant-study-reveals-what-makes-us- happy-2013-4) Original article.

</comment><comment><USER15> Vedanta + Buddha's teaching?) ( _not_ any particular Tibetan sect)

<comment><USER16> That might sound cliche but I wanted to add that it really helped me. I used to have a very negative/unhappy general conditioning but the basics of Buddhism have helped me make my life more pleasant/happy in general.

<comment><USER15> A cliche is about chanting Om [mani padme hum] without any understanding or sitting on a cushion [in special yoga pants] for $30/h ,)

<comment><USER16> Well, that too :)

</comment></comment></comment></comment><comment><USER17> I fully expected this entire article to contain only 3 characters, ending in ex.

</comment><comment><USER18> And for most of those 75 years, marital rape was legal.</comment>


RQ – A small JavaScript library for managing asychronicity - <AUTHOR> http://www.rq.crockford.com/ <comment><USER2> I think I must be missing something, because this looks to me like a less- elegant reinvention of the functionality of a handful of already extant promise libraries. A library like 'when' already does all of this, and is much more composable. As an obvious example, there is no reason to clutter up your interfaces with specialized things like timeout parameters when a timeout something you can transparently wrap on any promise without changing its interface one bit.

<comment><USER3> Yeah I feel the same way. So many others do this; hell I'm even building a few of these into my current library. Seems like better language constructs for handling asynchronous stuff will be nice (like ES6 promises though obviously it doesn't do everything this library does but it does enough to make it easier to do when needed).

Edit: Also where are the unit tests?

<comment><USER4> From a quick glance over Crockford's other repositories on GitHub, it doesn't seem like any of them have unit tests. Is this something he's known for not believing in?

<comment><USER3> I thought he may have used JSDev[1] to do some unit testing (which I understand why he set it up but it feels so awkward to me) but I don't see anything. No idea; he's certainly talked about the privacy of closing methods and unit testing but I thought he still did it just with JSDev.

[1] [https://github.com/douglascrockford/JSDev](https://github.com/douglascrockford/JSDev)

</comment></comment></comment></comment><comment><USER5> People keep comparing this to Bluebird, which is great and all, but Bluebird's JS is 72KB minified, whereas this library is just 3KB.

That's what makes this a "small" JavaScript library for managing asynchronicity. And when you're using it for things like choosing which ads to display, etc (like some of the examples) you really don't want your JS load overhead to be very high.

<comment><USER6> That's true, but given the gradual shift to ES6 features over time you're more likely to end up using something like Bluebird (e.g. to complement your generators) and so having another library to then handle asynchronicity (and that too with callbacks) would be redundant.

</comment></comment><comment><USER7> Looking at the commit log [1], this code started in May 2013. That might explain why you might be thinking - why not async|bluebird|Promises? It looks like bluebird didn't start until Sept 2013 [2].

[1] [https://github.com/douglascrockford/RQ/commits/master](https://github.com/douglascrockford/RQ/commits/master) [2] [https://github.com/petkaantonov/bluebird/commits/master?page...](https://github.com/petkaantonov/bluebird/commits/master?page=42)

<comment><USER8> I was thinking "Why not q?" That was started in 2010.

[https://github.com/kriskowal/q](https://github.com/kriskowal/q)

</comment></comment><comment><USER9> Looks interesting but some direct comparisons to es6 promises would really help.

Favourite function description quote: "RQ.parallel does not add parallelism to JavaScript. It allows JavaScript programs to effectively exploit the inherent parallelism of the universe."

Favourite variable name: untilliseconds

<comment><USER10> That opens the door for a whole bunch of portmanteau names for common time- related variables:

afterilliseconds sincilliseconds againilliseconds beforilliseconds pollilliseconds intervilliseconds

(I may start using intervilliseconds, just to drive some people crazy.)

</comment></comment><comment><USER11> Must be frustrating for Crockford to be in TC39.

He didn't like class keyword, thought typing (TypeScript etc) is a wrong direction. This (albeit it began 2013, but it was just updated) library does not mention ES6 Promises, proposal for async await, or the yield hack.

<comment><USER12> could you please explain why you think typing is a wrong direction?

<comment><USER13> The reference is to Crockford not liking typing. Here is one link backing that up: [https://plus.google.com/u/0/+DouglasCrockfordEsq/posts/MgzNU...](https://plus.google.com/u/0/+DouglasCrockfordEsq/posts/MgzNUSTwjRt)

</comment></comment></comment><comment><USER14> There is also [https://github.com/mbostock/queue](https://github.com/mbostock/queue) 415 bytes minified and gzipped!

</comment><comment><USER15> errr. require('async')?

<comment><USER16> exactly what i was thinking.

seems like some NIH thinking in crockford land

<comment><USER17> Maybe Crockford is a bit behind the times. In the good old days, if it were still 2011, this wouldn't be NIH. Back then, everyone was still writing their own async flow control libraries. It was like a rite of passage into the node world. I remember my first one: [https://github.com/chjj/N](https://github.com/chjj/N)

I'm sure every early node person here has one, even if they didn't push it to github.

Looking back at it, I'm suddenly feeling a bit nostalgic for those days.

</comment></comment></comment><comment><USER18> It is kind of nasty to break your code into basic blocks, and tie them using library functions. This will certainly not make things much cleaner!

I was hoping one day Javascript could support "deep" coroutines, so we can keep on programming "sequentially" as we did before while still using asynchronous mechanisms.

Perhaps there exist languages that compile to Javascript, that offer deep coroutines (?)

<comment><USER19> ES7 async/await functions? [https://github.com/jaydson/es7-async](https://github.com/jaydson/es7-async)

Babel already enables them.

</comment></comment><comment><USER20> I'm not sure I'll start using RQ all the time over Promises, but this does offer two nice features that Promises don't: optionals and timeouts. Optionals could easily be implemented as some like Promise.some(), while Promise.[all|some|race]() could all start taking an optional timeout parameter.

<comment><USER21> The most popular[1] promises library (Bluebird) already has support for all of that, I think? .timeout() can be added to any promise chain to add a timeout, and there's .some(), .race(), .settle(), and .any(), etc. to handle various flavours of optionality.

[1]: Well, based on comments on HN and Reddit. Not sure about hard numbers, but it certainly gets talked about a lot.

<comment><USER20> I'm more interested in these sorts of features being in the ES6 Promises implementation. I expect that given a lot of new Web APIs are going to be using the native promises, these features being in the ECMAScript promises implementation is pretty important.

<comment><USER21> For good or ill, it's not going to happen. ES6 is meant to have a VERY small promises API (although you can use a library like Bluebird as a wrapper around the native implementation to provide a better API). A more full features promises API will be coming in ES7.

See, for example, the discussion about adding a .any() method to the ES6 promise spec: [https://esdiscuss.org/topic/promise- any](https://esdiscuss.org/topic/promise-any)

The conclusion basically that yes it would be useful, but it'll have to be ES7 not ES6.

<comment><USER22> The good news is ES7 is actually named ES2016, and will come out in one year.

The bad news is nobody has actually stepped up to champion such an addition, so it's looking unlikely that such a feature would be implemented in 2 browsers by the mid-2016 deadline necessary for it to be part of ES2016.

<comment><USER20> ES2016? As far as I knew, the ES7 name was being kept, but the ECMAScript script would be updated yearly, as opposed to the 5 or 6 years between ES5 and ES6.</comment></comment></comment></comment></comment></comment>


Microsoft Teams Now Available for Linux - <AUTHOR> https://techcommunity.microsoft.com/t5/Microsoft-Teams-Blog/Microsoft-Teams-is-now-available-on-Linux/ba-p/1056267 <comment><USER2> I predict that in 5-10 years from now, Microsoft will return to its roots as a general-software company producing apps that run on multiple operating systems. Its main cash-cow however, will be software running on Linux.

</comment><comment> blaser-waffle Neat. One step closer to using my own Linux laptop in lieu of the companies standard-issue M$ laptop.

Would still rather use Slack though. Teams needs to work on their interface.

<comment><USER3> This is a pretty common sentiment whenever Teams comes up on HN. In what ways is Slack's interface better?

<comment><USER4> In my opinion:

\- Teams does not keep that much history on the computer and needs to go very early to the internet and retrieve more history (basically as soon as you start scrolling). Slack keeps quite much history on the computer.

\- Teams does not support simultaneous logins. Need to switch to another account - log out and log in again! Slack supports that since quite some time.

\- I'm not actually sure whether Teams supports threads or not. If they do, that speaks for the UI (i didn't find it then). If they don't, it's a feature I love in Slack.

\- Generally I think Teams can do quite a lot ot of stuff but everything needs a bit more clicks than Slack. Channels are hidden behind "Chats" rather than having a shortcut, ...

<comment><USER3> \- Yeah it's a little annoying

\- This is currently my only notable complaint about the platform. This is kind of a pain point with anything MS/365 these days. Some things will let you switch accounts no problem, others not so much

\- Teams does have threads. It was one of the features that made it stand out when it first release. I'm not sure why it would be considered bad UX/UI though, you just click reply under someone's message?

\- I can understand the confusion to this sort of, but ultimately it comes down to the purpose of Slack vs Teams. Teams isn't just chat, it's positioning itself to be essentially your company intranet. Being able to pin OneNote notebooks, DevOps boards, Word Docs, etc to the tabs on the top bar has been very useful for us. MS also seems to be working on some very deep integration/features tat have yet to fully materialized. Kaizala is something that has been deprecated and all effort is being pushed to bring its features to Teams.

One more thing I'd like to throw in is I've never had an issue with the quality of calls, be it audio or video. We also use Microsoft Phone System so Teams ends up being our virtual handset. It's pretty fantastic and has been the best implementation I've seen.

All this being said, if Discord had an enterprise solution I'd almost prefer it. The ability to just drop into a voice channel and the management of roles is just SO good.

<comment><USER4> I'm probably a bit biased because I use Slack a lot and when I'm using Teams it's more because I'm forced to.

The thing about threads is that they don't behave the same as in Slack. It's not that they are shown as a single entry inside the history (collapsed), rather they are responses which contain the original message in it. Of course, opinions differ and sometimes I think Slack threads confusing. But it's how I grep up and what I got to like.

I think that is also the one thing that makes Teams very bad (not in comparison, but in absolute terms): it tries to be a lot of things but does not really excel at something. For example, calls have amazing quality but it's just not possible to share more than 1 screen at the same time. So we still have to use TeamViewer to control anothers computer. Document integration feels a bit like Sharepoint and OneDrive, but it's really sonething in between.

In general, I think Teams biggest advantage is just the close integration into the whole Microsoft stack. That is something they can do quite well. I also think it's not something to boil down on Teams vs. Slack because they try to be something different even when they have similarities.

</comment></comment></comment></comment></comment><comment><USER5> Meanwhile half the signup flow of Teams still tries to convince you that using Edge is the only way to continue.

</comment><comment><USER6> Is Teams not an Electron app? I gather that it's not otherwise it would have been on Linux long ago...

<comment><USER7> It is an Electron app. A couple of simple online searches lead to that conclusion. It may be that MS still wanted to test/tweak it before packaging or releasing it for Linux</comment></comment>


Moscow's blockchain voting system cracked a month before election - <AUTHOR> https://www.zdnet.com/article/moscows-blockchain-voting-system-cracked-a-month-before-election/ <comment><USER4> The paper notes another, distinct, attack possibility:

> Before going to this, we mention quickly another mistake in the design that > could in itself have led to devastating attacks. The generators that are > given in public- key.json are generators of the whole multiplicative group. > However, due to the Chinese remainder theorem, it is a good practice to use > a generator of prime order. In the present case, the generators will have > their order divisible by 2, and therefore there is a huge risk that one bit > of information leaks from a ciphertext. In a context like e-voting where a > ballot can have a very simple form, this bit of information could reveal a > lot of the vote (or even all of it in the case of a yes/no question). In > principle, we would have had to investigate more in this direction. But due > to the main attack that is much easier and far more powerful, we keep this > as a remark.

[https://arxiv.org/pdf/1908.05127.pdf](https://arxiv.org/pdf/1908.05127.pdf)

This still leaves the question why the developer(s) decided to roll his/her own crypto in this way:

> A possible explanation is a confusion with the key size that can be used > when using elliptic curves for which the Number Field Sieve algorithm does > not apply.

This is such an obvious mistake that the entire protocol (whether or not it's ever documented) might be vulnerable.

> Another less excusable but still possible explanation might be related to > the use of the Ethereum blockchain. In the Solidity programming language > that is used to write smart contracts, the bit size of the largest supported > integers is 256. Maybe the authors did not want to write a multiprecision > arithmetic library that would have been required to deal with larger key > sizes. This hypothesis is supported by frequent tests in the source code, > checking that the big integers they manipulate are not bigger than > SOLIDITY_MAX_INT.

This seems more likely. However, that last sentence checking for overflow sounds like another trove of vulnerabilities.

Moreover, the claim by the developer in the ZDnet article that a patch is forthcoming seems suspect given that it will need to also include multiprecision arithmetic functionality, where there are still more opportunities for snafu.

<comment><USER5> It seems they covered the other attack possibility with the new update as well but another researcher from Harvard was able to break the system so he could count the votes before the election was over. Plus, now there is a new big update and writing code for numerical methods in such a short period is never bug-free. Let's see how it plays.

</comment></comment><comment><USER6> Here is the original blog post by the french researcher (in english) [1]. In an update, he says the updated system with a 1024-bit key was also compromised, on august the 24th [2].

[1]: [https://members.loria.fr/PGaudry/moscow/](https://members.loria.fr/PGaudry/moscow/) [2]: [https://golovnev.org/papers/election.pdf](https://golovnev.org/papers/election.pdf)

</comment><comment><USER7> Is this the key? [https://github.com/moscow-technologies/blockchain- voting/blo...](https://github.com/moscow-technologies/blockchain- voting/blob/master/encryption-keys/keys/private-key.json)

<comment><USER8> Ok. What's going on here? There's just no way this is real.

<comment><USER9> It's intentional. They post public key, let people crack it for 12 hours, then post private key at the end of the day.

</comment></comment></comment><comment><USER10> I'm not surprised.

But this sure surprised me:Pierrick Gaudry, from Lorraine University, was able to break the Ethereum-based smart contract encryption in only 20 minutes using nothing more than an average desktop computer and free, publicly available software. Gaudry estimates more modern equipment and sophisticated techniques could crack the encryption in only 10 minutes."

<comment><USER11> Poor programming and cryptography by the contract developers is always going to be the biggest weakness of smart contracts. This one was developed by a government entity so the quality issue is not really surprising...

> It was developed in-house by the Moscow Department of Information Technology

The developers claim [1] they were only using a weak private key during a "trial period" which doesn't really make sense. Who releases a different public/private key scheme before launching into production?

If the development team doesn't hire outside security testing or request public review - to test the real software - then it's pretty useless. Their response notes a meetup in Moscow in Sept (which is the same month as the election?) which seems like a strange requirement if they were expecting solid public feedback.

1\. [https://medium.com/@unassuming_teal_crab_127/dear- julia-7bac...](https://medium.com/@unassuming_teal_crab_127/dear- julia-7bac3612b178)

</comment></comment><comment><USER12> OK, so I think a little political context about this would be useful.

On September 8th, Russia has "universal voting day", with elections to different regional parliaments, heads of some regions and even additional members of parliament. This year, the campaign have been very political because of Moscow parliament - which was for years treated as a completely uninteresting event with very low news coverage and turnout. This year, however, in response to opposition candidates getting a serious momentum, many have been disallowed to run, triggering escalating protests - some legal, some illegal, with sometimes brutal reaction to the police, which, in turn, led even more people to take part in the protest. This amount of people in the street haven't been seen since 2011 protests.

So, after the trust in the elections, rule of law and democracy process have been eroded this much, I'm genuinely surprised that they even bothered to build a buzzword-fueled voting system.

<comment><USER13> They were making this voting system since the last year.

</comment></comment><comment><USER14> Researchers overlook more important issue. As the government controls the servers, it can impersonate any number of users.

Users submit an application to vote remotely through a government-controlled site and confirm it by receiving a SMS with code. It is obvious that government is able to submit such an application to its own server without bothering the real user.

The users vote remotely and confirm their identity by providing a code from SMS (again) and the government can just look at the code on the server. It isn't important what cryptography is used there. You don't need to guess random numbers when you have root access to the server.

The observers are supposed to see a tape where some hashes will be printed when someone votes. Maybe they will be allowed to see the registry of voters who chose to vote remotely, maybe they will not be allowed.

I cannot prove this, and this is my personal opinion, so you shouldn't believe me, but I think the government wants an opaque procedure to produce legitimate looking election results with desired outcome. With paper voting, there are too many points of failure: it is difficult to throw the ballots in the box when there is a vigilant observer. Remote voting doesn't have such flaws.

If there was a fraud, it would be difficult to explain to a non-programmer. They don't understand anything, they just see how the program says "hash doesn't match". But maybe it is just a program written by foreign agents (and stored on foreign "Github" servers) producing fake results. For comparison, with paper voting anyone can understand that there is a fraud if you show them the video.

Also, the government party is slowly losing its rating and starts losing regional elections. Remote voting might be a cure for this undesired situation.

And probably any other government (for example Estonian) that implements such an opaque system has similar aims.

<comment><USER15> Excuse me, please, are you living here? Do you really think there is a possibility the majority (or even 10%) of voters will vote digitally? It's so out of character of Russian voters, that I honestly suppose you're a Prigozhin's troll.

<comment><USER16> I've never been to Russia and don't know the Russian attitude towards tech or voting. But I'm confident that if the US had a system like this and made a reasonably usable phone app to be the front end, almost no one under the age of 60 would bother to wait in line for a physical voting booth ever again.

<comment><USER17> >would bother to wait in line for a physical voting booth ever again

As someone living in a state with mail-in ballots, it still boggles my mind waiting in line for physical voting is a thing. Mail-in ballots seem to be the best of all worlds. It's easy. I have time to do the research for who I want to choose. It's all backed by USPS so it's pretty damn secure- as secure as everything else we trust in the mail.

<comment><USER18> Yeah. Washington state is all mail-in ballots, once you try it, other ways just seem stupid.

<comment><USER14> Aren't mail-in ballots too easy to falsify? You take a database of voters and send mail under their names.

<comment><USER18> They have proven not to be. Here you sign them and add phone number or email. An advanced state could copy my signature but they verify I am a voter so double voting would be detected.

<comment><USER18> Also paper ballots make it possible to recount or verify something if the race was really close.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER19> I'm definitely missing something here. The standard size of both Ethereum and Bitcoin private keys is a 256bit secp256k1 key. If a 256bit key is guessable within 20 mins then the entire Blockchain is also broken.

<comment><USER20> The article doesn't mention this, but if you look at the paper[1] it turns out they aren't using ElGamal with elliptic curve fields -- instead they're using prime fields. In that case, you'd want similar key sizes to RSA. (The "less than 256 bit" part is a red herring, the problem is that they are using key sizes that would only be safe if they were using elliptic curves.)

[1]: [https://arxiv.org/pdf/1908.05127.pdf](https://arxiv.org/pdf/1908.05127.pdf)

<comment><USER21> Wow. Even I know this. It's mentioned in every entry level text on EC cryptography.

<comment><USER22> Haha same. You know it's bad when someone with only an introductory course in cryptography understands what the problem is

</comment></comment></comment></comment><comment><USER23> There's just no way any elections in Russia would produce the results not approved by the government. Government controls the entire chain of custody, from ballot counting to final vote tallies, and has been routinely falsifying the results at all levels. It often doesn't even need to tell those in charge to do anything: they "know" who should win and they make sure it happens. They also know they will have significant issues, career, legal, and otherwise, if it doesn't happen.

Funniest thing is, they don't even need to do this. Because nearly all of the mass media is under government control, the incumbents have overwhelming support of the people as it is.

<comment><USER5> How do you know that, though? Are you a citizen of Russia? Because if you are not, I'm suspicious.

I live in an undemocratic country but even then, we have a fairly good opposition and kind of a free media thanks to the journalists taking the risk of prison and social media so I was really surprised to find out there is no powerful opposition in my country, all of the media belongs to him and we citizens are just dumb people who wouldn't know our country better than outsiders.

The thing is, a leader can't hold that much power. If he lost the election, s/he can play dirty, fight etc. but wouldn't be able to do as s/he pleases with the results. There is always a balance they need to be careful about and not everything is black and white.

<comment><USER23> Yes I am, in fact, a citizen of Russia. I'm also a US citizen. I know this because there's been both video and statistical evidence, as well as numerous reports of electoral district vote counters simply falsifying final vote tallies, people being bused around to vote in multiple districts, etc, etc. Statistical evidence of vote count manipulation is actually pretty damning. If you calculate the distribution of vote count _percentages_ across all electoral districts, you will see that there are spikes around multiples of 5 and 10%. That means the vote for the "right" candidate was rounded up to an even number on a statistically significant number of them.

<comment><USER24> Don't those spikes happen in small districts though, where you're likely to have 1,2,4,5,10,or20 votes which would all guarantee a result with a multiple of 5 or 10%?

<comment><USER14> I don't have those graphs with spikes at the moment, but there are more interesting ones.

Here is an article in Russian with graphs [1]. This [2] is a graph where axis X contains a turnout percent (how many voters took part in voting at a polling station) and axis Y contains a number of polling stations with that value of turnout.

Here is another graph [3]: axis X contains turnout percent, axis Y contains number of people registered at the polling stations and each point is a station (there are about 90 000 total in Russia). You can see that there are large polling stations with turnout above 90% and number of voters above 2000. You can also see that elections seem to be very popular as majority of the points lie in the right part of the graph.

This graph [4] is built by the same rules, but contains data only on polling stations from one southern region - Ingushetia. You can see how neatly points align along the line at 80% turnout. People of Ingushetia are very active.

These graphs [5] are built by the same rules, but for other region - <USER2> and for 4 different elections in 2011, 2012, 2016 and 2018. The perfect line in 2011 becomes diffused by 2018 and slightly shifts to the left. On the graph for year 2018 one can see that there are "atypical" polling stations who have suspiciously low turnout. One of possible explanations for this could be that in 2018 several dozens of brave volunteers decided to take a risk to go to Chechnya as observers.

[1] [https://habr.com/ru/post/352424/](https://habr.com/ru/post/352424/)

[2] [https://hsto.org/webt/2y/xh/wf/2yxhwffbr7oy0escvp1ecvmcjdc.p...](https://hsto.org/webt/2y/xh/wf/2yxhwffbr7oy0escvp1ecvmcjdc.png)

[3] [https://hsto.org/webt/4h/3e/ko/4h3ekola6f-to10zgpvlbg9bd1g.p...](https://hsto.org/webt/4h/3e/ko/4h3ekola6f-to10zgpvlbg9bd1g.png)

[4] [https://hsto.org/webt/ri/c6/ul/ric6ulcyzuefrxvnjm7n6g7qcz8.p...](https://hsto.org/webt/ri/c6/ul/ric6ulcyzuefrxvnjm7n6g7qcz8.png)

[5] [https://hsto.org/webt/dw/j2/bl/dwj2blnsrah7_fwkzbqk4eyucga.p...](https://hsto.org/webt/dw/j2/bl/dwj2blnsrah7_fwkzbqk4eyucga.png)

</comment></comment></comment></comment></comment><comment><USER25> Can someone explain what the GitHub org and GitHub repo for [https://github.com/moscow-technologies/blockchain- voting](https://github.com/moscow-technologies/blockchain-voting) is about?

If this was about to be used for elections, shouldn't such a critical piece of software have more developers working on it? Why is there only one contributor to the whole project? Why does it have only 37 stars? Is this project well known among the citizens?

<comment><USER26> This is a small pilot project, it will be run in just a few districts of Moscow for municipal elections this September. Also, as of now, only about 1% of the population of those districts have registered for online voting, around 500 people.

So it's more like a proof of concept, and a first step in making larger-scale electronic elections possible in the future (from technological, political, organizational, and public trust standpoints).

</comment></comment><comment><USER27> Electronic voting should be used to forecast votes and offer confirmation/more data points, and nothing more. It's just too hard to secure currently, and the influence problems (lack of anonymity, possibility of election tampering) isn't worth the risk currently.

Electronic voting could _also_ be used simply as a way to save and fast-track the voting process, making it more convenient. Confirm your votes on the app, get to upload them in-bulk to the machine (via QR code or something), and all you have to do is confirm. Lots more time to _think_ about the vote, but you still have t confirm in person.

Longer, more casual access to voting booths and mandatory paid time off is the best thing most democratic/semi-democratic systems could do to help voting these days.

</comment><comment><USER28> The only benefit a "Blockchain" can provide is decentralized time ordering.

All other properties must be verified by the client, don't require a blockchain, and are typically some other cryptographic proof.

There are many properties of a blockchain that are an anti-feature of voting.

<comment><USER29> > There are many properties of a blockchain that are an anti-feature of > voting.

I don't know much of anything about blockchains and voting. What properties do you consider antifeatures?

<comment><USER14> Blockchain is used in cryptocurrencies to have a shared registry modified and verified by independent nodes who don't trust each other. Using it, you can prove to anyone that you have X bitcoins, and anyone who received them from you can prove this too.

In case of voting, there are no independent nodes, all modifications to the registry are done by the election committee (or authorised by them) and users can only verify the transaction list. So it would be easier to just present election events as a Merkle tree (voter X has submitted an encrypted ballot Y, and the hash of the registry before this was Z).

But in this case there would be no "blockchain" and no feeling of reliability and security.

If I made a mistake here, I would be happy if someone would point at it.

</comment></comment></comment><comment><USER30> It has nothing to do with the blockchain though, they just used weak cryptography

</comment><comment><USER31> My old country as always at its best when it comes to propaganda. This elections will be noted in history for the first usage of blockchain instead of for the brutal suppression of opposition [https://www.cnn.com/2019/08/14/europe/russia-protests- arrest...](https://www.cnn.com/2019/08/14/europe/russia-protests-arrest-gbr- intl/index.html) (note the helmeted Russian storm-troopers don't have any ID on their uniform, so they are practically unpunisheable for their actions - <USER3> mean there is even no guarantee that it is actual law enforcement and not just some dressed up guys who enjoy beating people )

</comment><comment><USER32> Meta: Where's the manual for administrating Moscow's elections? What portion of election administration was this applied to?

Thru recurring embarrassment, I've learned that you start with the jurisdiction's laws, rules, procedures, manuals.

Update: Julia Krivonosova, cited by this OC paper, appears to be doing excellent work, and does cover some of the context, assumptions. She'd definitely a better election integrity advocate than I ever was.

Internet voting in Russia. How? [https://medium.com/@juliakrivonosova/internet-voting-in- russ...](https://medium.com/@juliakrivonosova/internet-voting-in-russia- how-9382db4da71f)

The Dizzying Whimsy of Russia's Electoral Laws [https://medium.com/@juliakrivonosova/the-dizzying-whimsy- of-...](https://medium.com/@juliakrivonosova/the-dizzying-whimsy-of-russias- election-laws-761449a7495a) [https://www.ridl.io/en/the-dizzying-whimsy-of- russias-electi...](https://www.ridl.io/en/the-dizzying-whimsy-of-russias- election-laws/)

\--

It's _possible_ (however unlikely) that a voting system built on top of Etherium is perfectly reasonable for Moscow, Russia, where ever.

Even in the USA, where the Australian Ballot (private voting, public counting) is the gold standard, there are many, many exceptions (compromises made). For very good reasons. For instance, postal balloting. Originally implemented to enfranchise soldiers kept away from their homes for long durations.

Further, even in the USA, YMMV. Local variations impact election administration. For instance, how "voter intent" is adjudicated (when a mistake is made by the voter).

If we don't start with the context and assumptions, we end up talking past each other, and getting no where.

\--

Though I am a blockchain skeptic, for voting and tabulation, there are other exciting potential applications. Election administration is a big, complicated problem. While tabulation is the most important step, it's also relatively minor.

Since blockchain is just a shared ledger, it could help with pretty much every other step: candidate filing, political boundaries (GIS), voter registration (eligibility), reporting campaign contributions and expenses, publishing reports (certification), audit of material handling. Etc.

</comment><comment><USER33> How can a blockchain-based voting system be a good idea if it invites an attacker who can afford lots of ASICs, e.g. a hostile nation who like to interfere, to launch a 51% attack?

</comment><comment><USER34> But why ElGamal?

<comment><USER35> Probably for its homomorphic encryption properties. Used in the correct setting with the appropriate Generator ( ElGamal on Elliptic Curve Fields) it is very secure but limited in use beyond Set Intersection as the results cannot be decrypted.

</comment></comment><comment><USER36> It's shame that this wasn't used in production and then nefariously used against Putin.

<comment><USER37> Ah yes, the best way to deal with semi-autocrats, if people still vote them, you manipulate the election - but of course for democracy!

Seriously?

<comment><USER38> This election is already a sham since some opposition candidates were illegally prevented from participating in it.

<comment><USER39> >some opposition candidates were illegally prevented from participating in it

Can you provide a source for that?

<comment><USER40> [https://www.washingtonpost.com/opinions/2019/07/22/protests-...](https://www.washingtonpost.com/opinions/2019/07/22/protests- return-moscow-opposition-candidates-are-banned-crucial-election/)

</comment></comment></comment></comment></comment><comment><USER41> > _the voting system 's protocols weren't yet available in English, so Gaudry > couldn't investigate further._

What's the relevance to a French researcher of publishing Russian protocols in English?

<comment><USER42> Presumably they weren't available in French either but Gaudry knew English.</comment></comment>


Lytro plenoptic light-field camera pre-orders begin today at $399 - <AUTHOR> http://thisismynext.com/2011/10/19/lytro-plenoptic-light-field-camera-pre-orders-today-shipping-2012/

<comment><USER2> This is (yet another) good example of a computational camera: where you can exploit megapixels, physics, and computation to build more capable cameras. There was a really good plenary talk by Prof. Nayar (Columbia) about other techniques a few years back:

[http://www.hizook.com/blog/2009/06/26/computational- cameras-...](http://www.hizook.com/blog/2009/06/26/computational-cameras- exploiting-megapixels-and-computers-redefine-modern-camera)

My personal favorite is the "flexible depth of field," where you can actuate the imaging element during image acquisition and then use DSP techniques to create an image that is in focus across all depths simultaneously.

Also... if you'd like to get involved in these type of projects, a team from Stanford is working on the "FrankenCamera" -- a open-hardware and open-source effort:

<http://graphics.stanford.edu/papers/fcam/>

</comment><comment><USER3> I rather like the design. It reminds me of using a scope, rather than a camera. Holding it up, looking at the end, and seeing what's on the other side has a very retro-telescope kind of appeal to me. Plus, I'm not sure people will recognize it as a camera, so it might be good for grabbing candids. Kudos to them for trying something new.

</comment><comment><USER4> I am hoping to see some cool hacks be created using this. I imagine that with a few pictures from different angles, you might be able to make a nice 3D model with pictures taken with the camera. I'm sure that folks will come up with other cool things.

<comment><USER5> Check this out:

[http://www.youtube.com/watch?v=cclpQ1pI0xQ&feature=playe...](http://www.youtube.com/watch?v=cclpQ1pI0xQ&feature=player_embedded)

Very cool video of Adobe tool for playing focus and deriving 3D info from an image.

</comment></comment><comment><USER6> I've been pretty excited about the idea of light-field photography/Lytro, but this thing looks pretty awkward to carry/use :(. I look forward to seeing reviews when they start to trickle out. Hopefully Lytro can figure out how to make it more compact in the next iteration.

<comment><USER7> This is about the same size as a normal point-and-shoot, isn't it?

<comment><USER6> Perhaps in length, but it looks much thicker. It seems like it would be awkward to carry in a pocket.

<comment><USER8> I understand the reason for its shape is because of the giant lens it has, but I do admit it's a bit awkward to carry because it feels like you're carrying a giant lens. Anyway, I'd love to play with it in person and have a realistic feel for it.

Does anyone know if you can refocus on the camera screen itself? Is it touch screen?

<comment><USER9> _Does anyone know if you can refocus on the camera screen itself? Is it touch screen?_

Oh come on, you only had to read the first paragraph of the linked article!

</comment></comment></comment></comment></comment><comment><USER10> Their picture gallery is worth checking out:

<http://www.lytro.com/living-pictures>

(Click on any part of the image to set focus there)

<comment><USER11> The one with the reflection off the car bumper is CSI-amazing. Can't wait till we have this in normal DSLRs.

</comment></comment><comment><USER12> I think they went all in with this. Not only are they revolutionizing the concept of what a digital photo is and how it can be captured, they decided to introduce a new form factor for cameras.

Is it the most comfortable, ergonomic grip out there? Certainly not, but it is definitely memorable.

My hunch is that the lens assembly and light field technology requires a long barrel, and this is the best they could do. Perhaps if the next version were a tube?

<comment><USER13> They could easily have added a grip system, and based on the linked hands-on, which states that shake-induced blur is an issue, they should have.

I think the design is novel to prevent mental comparison with a "real" camera, which presumably performs much better in terms of image quality (especially in low light).

Avoiding "real camera" thinking also highlights the device's unique aspects and lets them sell this first version as a less-serious novelty at a relatively low price.

I really hope this isn't their end-game play and that they'll introduce something more "prosumer" in an intelligent, useful form factor next (and something that doesn't require integration with a bogus social network).

</comment></comment><comment><USER14> Cool tech, but the design is... I don't know... dorky? At the very least it attracts attention, which is something that in great many cases not needed when making photos.

</comment><comment><USER15> To people complaining about the form factor: _most cameras look like this_. It's only consumer cameras (low and high end) that have the typical form you can hold in your hands comfortably. Industrial cameras for machine vision often have this "rectangular tube" form.

That said I don't know what their target market is...

</comment><comment><USER16> I like this technology, but it's really a rare occasion that I've taken an out-of-focus photo. In fact, I can hardly think of one out of nearly a thousand pictures I've taken the last year, except for a few where I've used manual focus.

Are there any other photographers that really would find this useful? The only thing that I could gain from it is the fact that it looks like it has a relatively shallow DOF, which is a nice effect. But in some ways, it makes the camera feel gimmicky to me -- the DOF on all their photos is extremely shallow (aperture size???)

<comment><USER17> It's a constant f/2 lens, but that's fairly irrelevant as, given the way the camera works, you could use focus stacking to get the whole frame in focus if you wanted.

Of course, that depends on either software features or a lot of manual labour, which is why my main question about the device is how open/hackable the image format is.

I'd love to see the applications that come out of this - eg. ultra high-res 3d scanning from only a handful of photos - so I hope they've created it with a view to encouraging indipendent development.

It seems the examples are there just to showcase after-the-fact focusing, and that's clearly most easily done with a shallow DoF.

</comment></comment><comment><USER18> Just watching that thing being used gave me carpal tunnel. For Christ's sake its an LCD screen and can go anywhere. Why not put it on the side/top of the camera?

This makes me so grumpy.

<comment><USER19> Optics.

(There's more to a camera than just a sensor and an LCD screen...)

</comment></comment><comment><USER20> Notice how resolution isn't mentioned anywhere. It means it's low.

<comment><USER10> It's unconventional, not low:

"Light Field Resolution: 11 Megarays: the number of light rays captured by the light field sensor."

<comment><USER20> It doesn't matter how it's represented internally. The end goal is a digital photo that you will print or post on facebook/flickr.

What I don't get it who their market is. If you aren't taking serious photos, nobody really cares if it's perfectly focused. And I doubt pro photographers will want it because of the low resolution.

<comment><AUTHOR> I don't think it's about getting print resolution or perfect focus.

The idea seems to be to add a playful kind of interactivity to photos. With their Facebook app, you can click around a photo and "discover" different views. "Look, there's Mark in the background. What _is_ he doing? I didn't even see that before..."

I don't know if it will be a success, but I really like this concept. It's sort of like Instagram but with amazing science behind it.

</comment></comment></comment></comment><comment><USER21> cool but doesn't look very ergonomic. grasping rectangular blocks isn't very comfortable

</comment><comment><USER22> Why not just use a normal camera and focus it right the first time?

<comment><USER23> because there might be more than one type of right

<comment><USER24> to some extent, though, this devalues lytro pictures as "photograph-as- artistic-statement" in favor of the much more contemporary "photograph-as- infallible-chronicler-of-the-coffee-you-got-this-morning."

(that said, I really want one of these.)</comment></comment></comment>


Kernel RCE caused by buffer overflow in Apple's ICMP packet-handling code - <AUTHOR> https://lgtm.com/blog/apple_xnu_icmp_error_CVE-2018-4407 <comment><USER2> Ouch, this is really bad.</comment>


San Bernardino survivor's husband backs Apple in battle with FBI - <AUTHOR> http://techcrunch.com/2016/02/29/san-bernardino-survivors-husband-backs-apple-in-battle-with-fbi/#labnol <comment><USER2> This man is very brave for taking a stance with which some of his wife's coworkers may not agree. He already had to be brave to be there for his kids and now he is opposing the DOJ. Full letter:

[http://s3.documentcloud.org/documents/2729428/KondokerLetter...](http://s3.documentcloud.org/documents/2729428/KondokerLetterToJudgeSheriPym-02292016.pdf)

<comment><USER3> He is acting with _integrity_ , which, arguably, is even more significant than bravery by itself.

</comment></comment><comment><USER4> Why is it important what do the survivors of the attack think? Justice system is supposed to be objective - we don't ask a widow what should we do with a murderer.

<comment><USER5> Because the director of the FBI said one one of the reasons they were pursuing this was so they could look the families of the victims in the eye and say they'd done all they could to bring them justice.

If the families say, actually, we'd rather you didn't do this, then that makes that particular argument less effective.

<comment> white-flame That's purely a marketing & power play statement, not one of meaningful decision making.

<comment><USER6> Sure. But this battle between the FBI and Apple is at least as much a PR and Political battle as it is a legal battle.

The FBI's proposed interpretation of the AWA's powers is going to be a tough sell to appellate courts, as far as I can see. Their main play here has been to try to generate enough of a PR shitstorm that Apple decides not to challenge the writ and just plays along. And if that doesn't work, they're hoping to provoke enough outrage when Apple wins that congress is nudged into giving them the powers they want.

<comment><USER7> > Their main play here has been to try to generate enough of a PR shitstorm > that Apple decides not to challenge the writ and just plays along.

Insofar as there is a political/PR battle, I think its just as likely that they want to lose publicly and use that to reinforce moves under way for getting specific new authority legislated. It's perhaps not coincidental that the various All-Writs Acts cases all came up _after_ discussion of Congress adopting rules regulating provision of consumer end-to-end encryption.

<comment><USER8> From the statements thus far, it seems that the FBI has neither given much thought to unintended consequences such as foreign governments demands for similar access, nor been able to stay on message whether this is 'just for one phone' or for many. If the idea is to lose the case, which it could possibly be, they've executed that plan poorly because its now a PR fiasco.

To be clear, I'm assuming when you say 'lose' you mean the case, not lose the PR battle. The latter is of course always a bad idea when you want to get your way.

</comment></comment></comment></comment></comment></comment><comment><USER9> Things like this make me proud to be an American -- seeing my countrymen do the right thing and take a stand for freedom.

<comment><USER10> Hard to argue for american pride when the US goverment is the danger

<comment><USER11> Defining nations as their government, and not their people, is a dangerous thing.

</comment></comment></comment><comment><USER12> Probably a bit late in the game to ask this, but I haven't seen it discussed elsewhere.

Why is it possible for Apple to update the software of a locked phone?

Is this something we expect to change in future releases of iOS given recent events?

<comment><USER13> It's something that has already changed. This is only happening because the iPhone in question is a 5C, which doesn't have a Secure Enclave.

<comment><USER14> Sure about that? I thought they could still issue firmware updates to the SE without password.

Do you have a source available?

</comment></comment></comment><comment><USER15> More to the point would how do the survivors feel about it.

</comment><comment><USER16> If the FBI really wanted to save lives, they would put governors on every vehicle and make owning a lighter require a license.

The lies of the tobacco industry, lead industry and food industry have killed millions of people. And the selfish desire to drive personal automobiles have killed millions of people.

If we are going to restrict human freedom for safety, let's do it in a way that saves the most lives?

<comment><USER17> All right, inmates. We have a new job opening up soon in the prison, that pays $2.00 per hour! By a show of hands, how many of you have a medical degree with experience in oncology? And any in vascular surgery? Any medical degree at all? Psychiatrists, even?

Ok, looks like just those two. Anybody else? Maybe just a B.S. in chemistry or biology?

If you lack existing qualifications, and are still interested, the state has given us a grant to provide a twelve week training course to make some of you inmates into bona fide researchers, to investigate cures for cancer and vascular disease. You cannot have any disciplinary infractions for the _entire_ twelve weeks if you want to graduate.

If you know someone who is a doctor, please also look into our referral program, wherein if you can successfully frame or entrap a physician into committing a felony, you can receive furlough days, conjugal visits, or even sentence reduction.

~</comment></comment>


Tox – An encrypted P2P chat protocol that does not rely on central servers - <AUTHOR> https://tox.chat/ <comment><USER3> [https://news.ycombinator.com/item?id=17686516](https://news.ycombinator.com/item?id=17686516)

</comment><comment><USER4> I'll be the downer here and point out that Tox (both the specification and the c-toxcore implementation) have never undergone a security evaluation, and there are well-understood weaknesses in its security model _right now_ [1].

If you feel inclined to use Tox at all, you should do so _as a curiosity only_.

[1]: [https://github.com/TokTok/c-toxcore/issues/426](https://github.com/TokTok/c-toxcore/issues/426)

<comment><USER5> What do you recommend instead?

<comment><USER6> Matrix/Riot.im is federated and has E2EE. It also has brigdes for IRC, Telegram etc. Here's a native client for macOS: [https://neilalexander.eu/seaglass](https://neilalexander.eu/seaglass)

Web client: [https://riot.im/experimental/](https://riot.im/experimental/)

<comment><USER7> Matrix is also experimental. About a year ago it kept losing my key meaning I couldn't decrypt old messages. I still use matrix, but I don't have any illusions that it's more secure than tox.

<comment><USER8> We're not aware of any bugs where Matrix clients lose your e2e keys (other than one where changing your password may cause clients to log out and remove keys for safety). If you saw it keep losing keys, i'm going to guess you configured your browser to delete local storage when you close the tab... in which case, unless you export the keys, we have nowhere else to store them.

That said, we've also just implemented the optional ability to encrypt and backup your keys on the server, but obviously comes with other tradeoffs.

In terms of security, the core crypto has been audited, as per [https://matrix.org/blog/2016/11/21/matrixs-olm-end-to-end- en...](https://matrix.org/blog/2016/11/21/matrixs-olm-end-to-end-encryption- security-assessment-released-and-implemented-cross-platform-on-riot-at-last/)

<comment><USER9> I tested riot.im in a private Firefox window recently, obvious with hindsight but it didn't occur to me I should export keys and I didn't spot anything in the interface to make me aware or prompt me to action.

Great to hear you've added the option for server stored keys now.

<comment><USER8> yeah, it's a tricky one because by the time you've closed the window, it's too late to export keys.

The new online key backup stuff landed a few weeks ago on the develop branch, and will be making it onto the main release over the coming weeks :)

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> Nice!

Pretty easy to roll your own, these days, in less than 90 LOC: [https://gist.github.com/amark/7dceae874a20878fdb9e2a8eed109b...](https://gist.github.com/amark/7dceae874a20878fdb9e2a8eed109bb5)

Here is a quick video demo of it in action: [https://www.youtube.com/watch?v=gmdXU82vcbE](https://www.youtube.com/watch?v=gmdXU82vcbE)

Warning! Ugly simple. So glad to see a full featured app like tox, use that instead. But for anyone interested in how they work or building their own... it is all Diffie-Hellman!!! :)

<comment><USER11> Tox in specific lets libsodium/nacl do all the cryptography and provides little above the core methods, the more complex parts were the networking

<comment><USER10> libsodium is great! We're considering supporting it in conjunction with WebCrypto. Yeah, networking is hard, but is the main thing we've worked on over the years.

We're using WebRTC and fallback to decentralized WebSocket relays (you can use multiple / nothing exclusive, run your own, etc.). What are you guys using?

</comment></comment></comment><comment><USER12> This is great — funnily enough, this is a thing my project ([https://getaether.net](https://getaether.net)) is often mistakenly thought of as. I'll link to Tox in my FAQ. Mine is more like a decentralised Usenet, not real time chat.

<comment> nv-vn Wow totally forgot about Aether. I still have it installed on an old laptop somewhere. I remember I really enjoyed posting on there but then I'd have trouble connecting to the network and stopped using it. Will have to check it out again

</comment></comment><comment><USER13> people like to point out the weaknesses in this every time it is submitted, but the fact is: it's the only example in its class, and that makes it interesting. it would be amazing to see a funding drive and some experts improve it, but for whatever reason, that is not happening. it seems like any kind of desktop skype alternative takes a back seat to mobile apps

</comment><comment><USER14> What's this have that Signal doesn't?

<comment><USER15> Many people that are interested in privacy and security consider server based software to be problematic. Even when server based software is open source, as Signal is, you are required to trust that what is being run on a server is the same code that they have released. And you are also required to trust that it is the _only_ software they are running as it relates to your usage. This requires substantial trust which in modern times has, time and again, been shown to be something that should not be given.

Signal is server based. Tox is serverless.

In the case of Signal they also had unusual peculiarities. They have framed themselves as a privacy and security oriented company yet the first thing they require when signing up is a mobile number. And for years they required Google Play Services and were dependent upon Google Cloud Messaging. These sort of things send quite mixed signals, though to Signal's benefit they no longer require Google Play Services.

Finally there is one practical issue with centralized services. They need to make money. Servers cost money. And as the popularity of a platform grows, the amount of money they need to earn also continues to grow. And that's just to exist - not to make a profit. For free services their most valuable resource that can be spun into money is user information. Signal for now has managed to get by on donations and grants. The vast majority of their funding coming from the "Open Technology Fund" [1], which is a US government program. If their funding dries up you risk seeing their ideological views change as a means of self preservation, or the entire service become unusable. This is not a problem with decentralized services.

Ultimately it all comes down to what you'd prefer - centralized or decentralized. Signal is centralized, Tox is decentralized. Ideologically I believe the future of all digital technology ought and eventually will be decentralized, though the time scale of "future" there is quite immense. Nonetheless, I like to do my small bit today and support decentralized tech whenever possible.

[1] - [https://en.wikipedia.org/wiki/Open_Whisper_Systems#Funding](https://en.wikipedia.org/wiki/Open_Whisper_Systems#Funding)

<comment><USER9> The linked page says their funding from OTF was between 2013-16. You've managed to omit the fact that in Feb 2018 the Signal Foundation was formed - <USER2> non profit with $50m initial funding. I see that its nonprofit status is still pending however.

<comment><USER15> And here we could get into all sorts of back and forth. For instance while it says OTF was from 2013-2016, there is also nothing listed after 2016. Does this mean that OTF cut funding for some reason, that future donations were not listed, that Signal was able to coast just based upon the relatively large OTF donations, or something altogether different? Who knows.

And similarly the problem with funding is not one that's paradoxically not solved by money alone because it then raises new questions. In particular _why_ would you put $50 million into a project like this? Is it simple good will and benevolence expecting that money to simply be gone but in exchange society gains a great centralized communication medium? Well, maybe - but it's also possible that there are different motivations. And when this money runs out what happens next?

Ultimately I'm not trying to convince _you_ not to use Signal, I'm explaining where _I_ see problems with Signal. And with all centralized services it's going to come down to trust. If you trust Signal then you might answer the above questions in one way. If you don't trust them, then your answers would probably be quite different. In my _opinion_ no tech company deserves the benefit of the doubt when it comes to trust anymore.

</comment></comment></comment></comment><comment><USER16> What is the definition of central server? What happens when an adversary eavesdrops on a router in a tier 1 network provider?

<comment><USER17> A central server forces all traffic to route through hardware and software owned by the maker of the technology and the attack vector there is usually logging. A router at an ISP is not a central server. The attack you're speaking of is a real possibility which is why end to end encryption exists. But p2p is meant to solve a different privacy threat than e2ee.

<comment><USER16> So the central server definition is a server located in a datacenter?

</comment></comment></comment><comment><USER18> Surely they could have come up with a name that isn't so close to toxic. I think it will be an uptake barrier.

<comment><USER19> > I think it will be an uptake barrier.

If someone is silly enough to let this be a factor when adopting a new technology, then I'd say that person has more important things to worry about than some encrypted messenger. Fortunately for Tox, the amount of people like this seems very small.

</comment></comment><comment><USER20> Seems like a decent Skype substitute, at least.

</comment><comment><USER21> anyone knows how peer discovery works without any central servers ?

<comment><USER11> it has core bootstrap nodes[https://wiki.tox.chat/users/nodes](https://wiki.tox.chat/users/nodes) , and a pretty bad DHT formation, so by distributing a few nasty clients with bad bootstrap URLs you could easily cause multiple splits in the network

<comment><USER21> Thx for the link.

Do you know if there is some sort of routing taking place ? Or all client are trying to consolidate a full Hash Table ?</comment></comment></comment>


Meet the Foreign Tech Workers Left in Limbo by Trump - <AUTHOR> https://www.nytimes.com/2017/04/19/technology/h1-b-tech-worker-life.html <comment><USER2> Most H1B visas are used by outsourcing firms to move American jobs overseas, in operations such as this one:

[https://www.nytimes.com/2015/06/04/us/last-task-after- layoff...](https://www.nytimes.com/2015/06/04/us/last-task-after-layoff-at- disney-train-foreign-replacements.html)

We don't need H1B.

</comment><comment><USER3> >[T]he Bay Area attracts the smartest engineers from all over the world because it is known as "a magnet for technical skill."

What a statement...

This is an op-ed disguised as a human-interest story disguised as technology journalism.</comment>


Ask HN: What do you look for in a company you want to join? - <AUTHOR> What do you look for in a company you want to join?
Is it the values (which?), benefits, average skill level?
Context: We're looking to hire a significant number of people in my companies, and want to make it the best place they can wish to work. So in a bet to continuously improve, I'm turning to HN to bring up key points. <comment><USER2> I look for a company that doesn't make me sign all of my rights away. I recently had a job offer I accepted, but after seeing the fine print, I had to tell them I couldn't work there.

They wanted me to sign away all rights to all inventions I'd ever made in the past, while I would have been working there, and six months into the future. When I asked for a revision, they informed me that they expected my full time dedication to the company.

My suggestion was to limit the scope of surrendered inventions to those created on company time, using company resources or directly relating to company business. So..

1\. A morally acceptable company. 2\. Rate of pay/ Salary. 3\. Flexibility of work. flex hours, or work from home. 4\. Workstation/laptop 5\. Office lighting. 6\. I don't care for open offices.</comment>


Executing gradient descent on the earth - <AUTHOR> https://fosterelli.co/executing-gradient-descent-on-the-earth <comment><USER2> One big problem with the conclusion is that intuitions from low dimensional spaces often don't carry over to high dimensional spaces. e.g. common example is how the volume of the unit hypersphere intersected with hypercube ratio goes to zero. One funny thing I saw once was something like "the real curse of dimensionality is how different optimization in high dimensional spaces is compared to low dimensional spaces".

<comment><USER3> > One big problem with the conclusion is that intuitions from low dimensional > spaces often don't carry over to high dimensional spaces. e.g. common > example is how the volume of the unit hypersphere intersected with hypercube > ratio goes to zero.

Is that un-intuitive, or am I looking at it the "wrong" way? I'm imagining the overlap of a 2D square/unit-circle versus the overlap of a 3D cube/unit- sphere, and from those two data points there's already a downward trend.

I mean, the 2D case is really just the single cross-sectional slice from the 3D case through the middle, the one that that has the _greatest_ possible overlap. All other possible slices will less overlap.

Following that logic, a 3D square/cube overlap is likewise the the "middle cross-section of greatest overlap" for a 4D scenario, etc.

<comment><USER4> Try this one.

I give you a megabox: a million dimensional hypercube spanning one meter along each axis. I also provide a bunch of megaspheres, million-dimensional hyperspheres scaled to be 0.99 meters in diameter. How many megaspheres can you fit into the megabox?

<comment><USER5> I'd love to hear the correct answer to this, with explanation.

<comment><USER6> I can't tell you the exact answer, but it's at least 10^100000.

The coordinates of the centre of each megasphere have to lie in the range [0.49,0.51]. Let's just think about megaspheres which are pushed as far as they will go into some corner, so their coordinates are each either 0.49 or 0.51. For each of the one million directions, the distance between the centres of two megaspheres in that dimension will either be 0.02 or 0, depending if their coordinates are the same or different. So by Pythagoras' Theorem the total distance between their centres will be sqrt(n)0.02, where n is the number of dimensions in which their coordinates differ. In order for them to fit the distance must be at least 0.99, so we need sqrt(n)0.02 >= 0.99, which means we need n >= 2451. But we have 1000000 coordinates to choose from, so it's not hard at all to make sure that at least 2451 of them differ. We can start with the sphere whose centre has all coordinates equal to 0.49. Then the sphere with coordinates 0.51 in the first 2451 dimensions, and all others 0.49. Then the sphere with coordinate 0.51 in the next 2451 dimensions. And so on.

That squeezes in at least 1000000/2451 = 407 spheres, but even after that there's loads more room. How about the sphere that has coordinates 0.49 and 0.51 alternating? Or changing every 3? In fact if we just assign coordinates at random then each dimension has a 50/50 chance of being different, so we would expect them to be different in 500000 dimensions. The probability of them being different in only 2450 dimensions is given by (1000000 C 2450)/(2^1000000) = 10^-293570. The number of pairs of spheres is quadratic in the number of spheres. So if we just shove the spheres into corners at random we can expect to place about sqrt(1/10^-293570) = 10^146785 spheres before two of them collide.

And that still leaves loads of room away from the corners! The point at (0.5,...,0.5) is still a distance of sqrt(1000000)0.01 = 10 away from the centre of any sphere we've placed so far, so there's still plenty of space for more spheres.

EDIT: The coordinates should actually be 0.495 and 0.505, but the principle is the same.

</comment></comment></comment></comment></comment><comment><USER6> The actual global minimum isn't the ocean but rather the Dead Sea. I imagine this is rather hard to find, since you have to be fairly close to it before the gradient leads toward it rather than the ocean.

In fact we can be very precise. The Dead Sea has a catchment area of 41650 km^2, which is 0.0000816 of the Earth's surface. So we need on average 12200 random initializations in order to find the Dead Sea by gradient descent.

<comment><USER7> Well, the Dead Sea is certainly below mean ocean level. But the deepest oceanic trenches are far deeper (~11 km below mean ocean level) than the bottom of the Dead Sea (~0.74 km below mean ocean level).

<comment><USER8> Except its pretty clear that for this problem, as posed, we're considering the surface of the ocean to be the "ground".

<comment><USER7> OK, sure. But the site talks about energetic boulders. And they wouldn't stop at sea level.

</comment></comment></comment></comment><comment><USER9> Finding ocean is easy: water and gravity have formed the surface to have few local minima. It would be much more interesting finding peaks: there are many local maxima.

And the most important maxima are often surrounded by lots of local maxima. They may also have some steep slopes so gradient methods can easily overshoot. Sometimes the surface function is not even continuous (overhanging walls).

<comment><USER10> _water and gravity have formed the surface to have few local minima_

From the article: "It turns out that the earth is _filled_ with local minima"

(I suspect the deal is that you're right that water always flows downhill to the ocean; but that it often happens at scales too small to capture in the GIS data, or underground.)

<comment><USER11> Yeah you got it! Water moves in ways that are not captured by the resolution of the elevation dataset. Also, water moves into/through the ground.

</comment></comment></comment><comment><USER12> Well, in a large scale, performing a gradient descent on the earth should always end at an ocean or at an endorheic basin.

Sure, when you increase the "resolution" to meters or smaller, there will be an endless number of mini-endorheic basins. For example, the former Collect Pond in NYC:

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

<comment><USER13> Any lake or pond is a local minimum. If it has an outlet it's only because the water level has risen to the point that it can escape.

<comment><USER14> Which if we want to continue this analogy, when GD finds a local minimum, it needs to start filling that basin so it can escape.

</comment></comment></comment><comment><USER15> OK, I didn't run through the math on this but I have spent a lot of time walking around the Olympics and the computed path from the summit of Olympus looks extremely inefficient. Also there's a point east of Forks that looks as if the path was close to getting trapped. The example does not seem compelling as a proof of convergence, especially if you reduce the momentum component to a point where you can't just hop over 4000' ridges as this path does.

For now I'm sticking with the path down the Hoh River. ;)

edit:typo

</comment><comment><USER16> Maybe use a different dataset with the levels of the oceans, and see if you can find the lowest point on earth (Challenger Deep) from the peek of the Everest ? :P

And now, do Adagrad, RMSProp, RMSProp + Nesterov and Adam, and maybe Newton, BFGS, L-BFGS and conjugate gradients, and then coordinate ascent :)

It would be a pretty good educational tool to teach people the different gradient descent methods, though it's probably too simple of a problem for these methods to be at all useful.

</comment><comment><USER17> >The earth should actually be a very easy function to optimize. Since the earth is primarily covered by oceans, more than two thirds of possible valid inputs for this function return the optimal cost function value.

I guess if you're going to count the surface of the oceans as part of the descent you have to remember the surface of the ocean is not uniform in altitude neither due to tidal forces nor other factors.

</comment><comment><USER18> "We have success!"

Ehm, no. The lowest point should have been somewhere 413 meters below sea level (Dead sea depression).

Earth is actually a very difficult place to perform gradient descent on, due to its very large plateau (oceans).

(Edit: lowest point is 413 meters)

<comment><USER11> The lowest point would be in the ocean, if you want to consider elevations below 0. In this implementation everything under 0 is rounded to 0. Otherwise, you'll have negative loss.

<comment><USER18> Obviously I considered the lowest point on land.

</comment></comment></comment><comment><USER19> While there are good reasons to use gradient descent on neural networks, finding the global minima of the surface of the earth would not be my first choice. Various metaheuristics would do much better.

</comment><comment><USER20> "We have success! It's interesting watching the behaviour of the optimizer, it seems to fall into a valley and "roll off" each of the sides on it's way down the mountain"

Anyone sitting at a computer right now have a few minutes to make an animation of this? I'd love to see it in action.

<comment><USER21> The last image in the article is an animation with a tiny red dot following the path.</comment></comment>


Fast Multiplication with Slow Additions - <AUTHOR> http://loup-vaillant.fr/tutorials/fast-scalarmult <comment><USER2> That article could have benefited by some benchmarking to see the gain or cost of the different methods.</comment>


UX and UI Design Tips That Always Deliver Growth - <AUTHOR> https://medium.com/design-for-growth/16-ux-and-ui-design-tips-that-always-deliver-growth-6bacd9fd25fe <comment><AUTHOR> Check out this selection of 16 UX and UI tips and tactics that deliver product growth results and save your brainpower for more complex UX and product challenges.</comment>


Real Viking Ship Completes North Atlantic Crossing - <AUTHOR> https://gcaptain.com/ship-photos-of-the-day-real-viking-ship-completes-north-atlantic-crossing/ <comment><USER3> This is really cool. That voyage must be pretty brutal compared to modern sailing vessels - if you look at this video [1], the galley is basically a sink with a tarp over it :). I wonder if the ship has an inboard engine or a GPS for safety reasons. I imagine that turning this thing around in a crew overboard scenario would be pretty much impossible with a square-rigged sail and no engine.

[1] [http://www.drakenexpeditionamerica.com/2016/06/07/cooking- on...](http://www.drakenexpeditionamerica.com/2016/06/07/cooking-onboard-a- viking-ship/)

<comment><USER4> It does look like it has some modern equipment, probably for the reasons you mention. In this picture you can see a wheel, some throttle controls, and some screens which I'm guessing are for GPS and/or sonar. It's still an amazing feat, much respect.

[https://c2.staticflickr.com/4/3888/14916240637_e3f3afb9c7_b....](https://c2.staticflickr.com/4/3888/14916240637_e3f3afb9c7_b.jpg)

<comment><USER5> It would be interesting to see how much of the structure is modern as well. It isn't unusual to see fiberglass and other modern materials on replica ships like this.

<comment><USER6> None of it, according to TFA.

</comment></comment></comment></comment><comment><USER7> Fun fact: The ship's name _Harald Hårfager_ is the name of a great Viking king, whose name literally means "Fabulous Hair Harald". [https://en.wikipedia.org/wiki/Harald_Fairhair](https://en.wikipedia.org/wiki/Harald_Fairhair)

</comment><comment><USER8> Look, I love the pictures, and the spirit of the endeavor. I don't so much love this:

> _Draken Harald Hårfagre is actually not a replica, rather a real-life Viking > ship built based ancient Norwegian boat building techniques dug up from the > history books and archaeological findings_

So... a replica. A very faithful replica, made with care to historical accuracy.

<comment><USER9> There is a fairly detailed set of rules about restoration vs replica vs original. Things built with the same materials using the same tools and techniques are "originals". I did a bit of research on this when trying to buy an original Scottish Claymore sword. I had a great discussion with a curator at the British Museum (which has an excellent arms and armor exhibit) about my conundrum and he suggested having one forged, in the same way and with the same materials, was in fact getting an original. The difference being that it didn't have a "past" or sets of stories to go with it, but as I was looking for something that would have its own stories that wasn't the important bit. He referred me to a craftsman that I commissioned to make one, it took about 9 months from start to finish.

Then there are "restorations" which are original parts with non-original parts. The Hiller Air museum had a docent who was working on restoring a WWII P-40 which had the original number plate, firewall and seat frames, but the rest was fabricated using more modern means. The plane would still be a P40 but as a restoration it would be a mix of older and newer parts some of which had been manufactured using techniques or materials that were unavailable during the war, so not "original".

<comment><USER10> Strange choice of language. What word do they use for things that are "original" in the ordinary sense of the word? Surely there's something less awkward than "original with a past"?

<comment><USER9> There are "historically significant" artifacts which are things that are both original and something about them was also historically important or interesting. And of course artifacts that are historically insignificant but original and so sometimes good examples of items from the time. The Steamboat Arabia museum has a lot of stuff you would find in the 1850's version of WalMart, none of it is historically significant but the items are great examples of what the stuff people were talking about when they wrote letters and books probably looked and felt like.

The key is separating the item (which can be an original, a re-creation[1], a restored original, or a replica) and the context (the item's history)

[1] I believe, but am not sure, that this was the term for something made with the original materials but using different techniques. Some things like Samurai swords have a gap where it was lost _how_ they were made, and so all you get are recreations of swords of that type rather than new original swords. And yes, I know, its all semantics really, but archivists are nothing if not sticklers about details.

<comment><USER10> That's not the distinction I'm talking about. I'm talking about the distinction between an object that actually was created at the relevant time period, and one that was created later to mimic one (perhaps indistinguishably so).

<comment><USER9> That is the thing though, there is no distinction. Try the following thought experiment, "Hagar the shipwright makes a boat for Eric the Red, then trips and falls into a frozen lake where he is frozen for 1500 years, when he is discovered he is thawed out, whereupon he goes to the same forest he always goes to, cuts down the same kinds of trees he always cuts down, and builds another boat." Both boats are original, one is "old" and one is "new", but their time of creation has no impact on their originality.

You are perhaps seeking a distinction that does not exist.

<comment><USER10> No. We have a continuum of examples connecting almost all distinction we draw. The existence of continuums is not evidence against the supreme usefulness of identifying extremely bimodal distributions. Ring species do not negate the meaningfulness of species. "Number of parts replaced" interpolates between restorations and original, but it doesn't invalidate the distinction. Hypothetical time-traveling vikings does not invalidate the distinction between "original", as the word is commonly understood, and "original", as you've insisted it should be used.

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> There was a crossing from Trondheim, Norway to the Isle of Man in 1979 and the ship is now housed at the House of Manannin. It's hard to imagine what being on one of these things would be like for any length of time.

There's a very old BBC article on the voyage here: [http://www.bbc.co.uk/isleofman/content/articles/2009/07/02/o...](http://www.bbc.co.uk/isleofman/content/articles/2009/07/02/odinsraven_feature.shtml)

</comment><comment><USER12> Really looking forward to seeing this when it reaches Bay City, Michigan in two weeks.

(And, leaving an ad in a very unlikely place, my band is part of the International Maritime Music portion of the Bay City Tall Ship Celebration.)

</comment><comment><USER13> [https://en.wikipedia.org/wiki/Tim_Severin#The_Brendan_Voyage...](https://en.wikipedia.org/wiki/Tim_Severin#The_Brendan_Voyage_.281976.E2.80.931977.29)

That is also a great book and similar adventure.

</comment><comment><USER14> Why do they say "approximately 32 crew members"? One would think an accurate head count could be achieved for this ship.

<comment><USER15> Qualified guess: As the support ship presumably had some creature comforts missing on the replica viking ship, they probably rotated the crew - say, four days on the replica, a day for a shower and some proper sleep on the support ship, another four days on the replica...

Doesn't lessen the accomplishment in any way in my book if my guess turns out to be correct.

</comment></comment><comment><USER16> And yet try only evidence that the Norse ever made it beyond Newfoundland is pseudo science (or as Samuel Eliot Morrison said, 'scandiknavery'). Even if they did, it had zero impact on the future of the continent.

<comment><USER15> -If nothing else, it may suggest that you claimed independence from the wrong colonial power.

We'll come over to incorporate you in Greater Norway any day, now.

      ;-)

<comment><USER17> I'm thinking you already have a beachhead in Minnesota. But at the time, wasn't Norway a colony of Sweden? Or was it Denmark then? I'm fuzzy on when the switch happened.

In any case, if you do take over, at least then we'll be able to get decent lefse in California.

<comment><USER15> First of all - there is no such thing as decent lefse.

Back in Viking times, the nation state as we know it today didn't exist - <USER2> Norway was under Denmark between 1387 (methinks) and 1814, when we declared independence only to find ourselves handed over to the Swedes as war booty. Then in 1905 we told the Swedes where they could stuff their union. They promptly did.

<comment><USER18> I'm a little shocked that no one's pointed out that Harald Hårfarge is the name of the king that's credited with making Norway one nation (some bitter people claim this isn't true just because it was made up in the 1300s, some 300 years after Harald died).

Fitting that it is the name of the ship that's sent to re-capture Vinland.</comment></comment></comment></comment></comment>


World's first 256GB USB Flash Drive - <AUTHOR> http://www.physorg.com/news167461888.html

<comment><USER2> I'm finding conflicting reports on price various places online. ($800/$900) But at only 200mb/s transfer speed this isn't useful to me, especially not at that cost. It's certainly no plug-in SSD, which is what I was hoping for when I read the headline.

<comment><USER3> Note a slight error the transfer rate is 20mb/s not 200mb/s.

<comment><USER4> It's actually 20MB/s not mb/s

</comment></comment></comment><comment><USER5> There's no way I'd keep that much data on something that easy to lose / have stolen.

<comment><USER6> A few HD movies would fit well on it. It doesn't have to be important data, just _big_ data. To the people of 10 years ago, a 16GB flash drive would seem similarly ridiculous, but we've found uses for them.

</comment></comment><comment><USER7> A year's worth of xvid movies on something the size of a keychain.

</comment><comment><USER8> This flash drive is all about the bragging rights. Until they come out with a 512 GB one.</comment>