Command-line Bitcoin price board - <AUTHOR> https://github.com/turingou/btc <comment><USER2> Speaking of BTC tickers, I also recently discovered this amazing, pure HTML, Bloomberg-terminal-like realtime BTC price site:

[http://bitcoinwisdom.com/](http://bitcoinwisdom.com/)

<comment><USER3> I like this one as well. I doesn't have as much data, but I think the area chart is easier to read than the candlestick.

[http://bitcoinity.org/markets/](http://bitcoinity.org/markets/)

<comment><USER4> Bitcoinwisdom lets you change the chart style under settings.

</comment></comment></comment><comment><USER5> It saddens me that so much focus is being put on the _price speculation_ aspect of Bitcoin. 9 out of 10 articles I see about Bitcoin are about its price. The last Senate hearing on Bitcoin was already quite aggressive about this, and some suggested that maybe Bitcoin should be regulated as a commodity instead.

Hopefully this price speculation frenzy of Bitcoin users won't lead to its demise, and to Bitcoin being declared (or at least thought about) as irreparably _not a currency_.

<comment><USER6> If its use as a medium of exchange continues to spread, it is quite possible that the volatility will go away. Even national fiat currencies have some volatility, but it's vastly subdued due to the sheer amount of people using it as a currency, I believe

<comment><USER7> I don't see how the volatility will ever go away when the supply of the currency is fixed; that's a recipe for volatility.

<comment><USER8> Volatility won't "go away", but it _may_ diminish over time _if_ bitcoin becomes a currency and not a commodity. It will, however, still be a deflationary currency which means the value of an amount of bitcoin should trend upwards. So if this gains traction as a currency and the speculators stop rushing the numbers up higher than what the economy can actually support, BTC might find a stable deflation rate and its volatility should diminish. (I'm actually very skeptical of both deflationary currencies and bitcoin in particular, but this is the bitcoin proponents' theory as I understand it.)

<comment><USER7> To think bitcoin can acquire a stable deflation rate is to assume that the economy stops cycling, that's simply not going to happen. Every boom will cause a massive deflation period, it can't be stable.

Speculation is the least of bitcoin's problems. I think a crypto-currency is inevitable, but it'll be one that has a mechanism in it to inflate and deflate to match the demand for currency in the market. During a boom there's a higher demand for currency and the supply must increase if prices are to remain stable, otherwise deflation is going to happen in an amount that matches the boom; that's not stable.

<comment><USER6> So you're saying the Fed prints dollars by the millions during booms and destroys them again by the millions during busts?

Who cares if prices stay stable or not? The value represented by whatever price is attached to those things won't change

<comment><USER7> The government has more than one control over the current money supply, fractional reserve lending allows the money supply to grow and shrink as demand requires while the fed attempts to maintain an overall small inflation rate to avoid the ill effects of deflation.

> Who cares if prices stay stable or not?

Everyone who understand economics even a little bit.

> The value represented by whatever price is attached to those things won't > change

People aren't paid in value and they don't spend value, they're paid in currency and they spend currency and they all care that prices are stable because their paychecks aren't going to suddenly change.

<comment><USER6> If it is not useful as a value store except to speculators, then it still has plenty of utility as a value transfer mechanism or a universal FOREX.

<comment><USER7> No one said it didn't have value, merely that it's not a good currency because it won't have a stable value if used as a currency.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> Looks nice- Everyone just remember that if you don't understand the source code or download it in a way that allows a "man in the middle" attack, there's nothing to stop this kind of program (or an MITM-altered version of it) from emptying out every bitcoin wallet you have installed on your computer.

(I for one will install this program though, on my non-wallet pc)

<comment><USER10> The same goes for any software

<comment><USER9> Agreed, the risk is just particularly high for little gizmos targeted especially at bitcoiners.

<comment><USER11> The risk seems higher, but I'm not convinced that's anything but cognitive salience.

</comment></comment></comment></comment><comment><USER2> Nice work, quick & simple. Installed. Step 2: Make an ncurses version.

<comment><USER12> I love ncurses. I love it so much, that on my Ubuntu laptop, on startup I swap over to tty1 and fire up WordGrinder to work on my novel, or Tmux + TextAdept to do some web dev. It's soothing :)

</comment></comment><comment><USER13> Somewhat unrelated, but I made a bitcoin LED ticker, here's a link to an early testing video: [https://www.youtube.com/watch?v=qxRIeb22QGI](https://www.youtube.com/watch?v=qxRIeb22QGI)

I later added some other price information (gold, usd, s&p500)

<comment><USER14> This is great. Do you have any source code hosted anywhere? Or the software/hardware stack used?

<comment><USER13> I haven't put up the source because it's pretty coupled with the hardware, that sign in particular is a BetaBrite. I used a Raspberry Pi and a ruby script to drive it. I was able to find a ruby library for the sign.

</comment></comment></comment><comment><USER15> CLI application in javascript? It's official - we're doomed. There is no hope.

<comment><USER16> don't know if this is much better but, [https://github.com/Newbrict/bitcoin- prices](https://github.com/Newbrict/bitcoin-prices)

</comment></comment><comment><USER17> Interesting for Gnome3 users: [https://extensions.gnome.org/extension/648/bitcoin- markets/](https://extensions.gnome.org/extension/648/bitcoin-markets/)

</comment><comment><USER18> Just pushed a tool that shows you your margins using the MtGox streaming api: [https://github.com/tmc/btcmargin](https://github.com/tmc/btcmargin)

</comment><comment> vezzy-fnord Not bad. One of the better price tickers I've seen.

<comment><AUTHOR> thank you for trying :p

</comment></comment><comment><USER19> How come btc-e is missing?

[https://btc-e.com/api/documentation](https://btc-e.com/api/documentation)

<comment><AUTHOR> it will be supported in the next version :)

</comment></comment><comment><USER20> Just what I've always wanted :) :) :) :)

</comment><comment><USER21> I wot my own... And was displaying the prices at the desktop... It's just 10 lines of ruby and geektool.

</comment><comment><USER22> Why do I need NPM for this?

</comment><comment><USER23> curl --silent [https://bitpay.com/api/rates](https://bitpay.com/api/rates) | jq '.[0].rate'

Is what I use to get the current BitPay rate in USD

</comment><comment><USER24> How would one install in OSX? Do you need nmp first?

<comment><USER21> Macports or home brew for npm and you are fine.</comment></comment>


Show HN: Markdownbox – Securely hosted Markdown documents - <AUTHOR> https://www.markdownbox.com/ <comment><USER2> Will it support chinese in utf-8?

<comment><AUTHOR> You should now be able to use chinese also :)

<comment><USER2> wow, it's awesome!</comment></comment></comment>


Molekule: The worst air purifier we've ever tested - <AUTHOR> https://thewirecutter.com/reviews/best-air-purifier/#molekule-the-worst-air-purifier-weve-ever-tested <comment><USER2> I bought one during the Northern California fires in 2017. It was ok in what it did. I liked that I could remotely turn it on and have it clean the air before I got home. It was the first air purifier I owned so I didn't know what to expect in terms of how clean and quick it should be.

Somewhere between moves someone stole it from me so I was without one. 2018 we had more fires so I went to Home Depot and bought a Honeywell for a small/med sized room. Like night and day. The Honeywell had noticeable results especially as bad as the air was in 2018 fires in NorCal.

I think Molekule is just marketing hype.

</comment><comment><USER3> Dead link? Can't seem to find it through a search engine either.

<comment><USER4> [https://thewirecutter.com/blog/worst-air-purifier-we-ever- te...](https://thewirecutter.com/blog/worst-air-purifier-we-ever-tested/)</comment></comment>


Why we ask people to sign in (Quora) - <AUTHOR> http://ghost.quora.com/Why-we-ask-people-to-sign-in

<comment><USER2> Unless things have changed recently, Quora requires users to sign in to simply _read_ a post. The problem with that should be obvious. A user is not there to serve Quora. Quora is (theoretically) there to serve the user.

Users not familiar with Quora (i.e. outside the SV bubble) may not have any idea what Quora is, or what value it provides. Upon stumbling on a link from Google, they click it, are sent to Quora and are _immediately_ asked to create an account. Or maybe Quora will show a portion of the post or a few comments, but you have to establish an account to read more.

Quora is essentially asking to have sex without a first date.

At its core, Quora is (roughly) Stack Overflow: knowledgeable answers to questions, albeit across a broader spectrum of topics. There's good stuff in there. I established an account about a year ago. But when I'm presented with a prompt to log in to simply read something, I don't. And yet I have an account. I simply move on. I can't explain it but it feels offensive, like I'm being gamed.

Stack Overflow and HN provide enormous value to lurkers. I barely comment on things here on HN...but I visit daily. Multiple times a day. Every day.

When I feel the need to comment on HN, I log in. It's actually a pretty simple concept that somehow eludes Quora. One can't help but question why are they so insistent on requiring a user to log in to simply read. Reading is not participating. It is consuming. Imagine requiring a user to login to read a blog post. That's crazy.

There is some motive to requiring a user to login to read. I don't know what it is, but it feels wrong. At the very least, it's not user-friendly. They are discouraging visits and turning people away.

The closest example I can think of to requiring a user to sign in to consume content is Twitter. Somehow it feels different, maybe because Twitter is a microphone for anything you want to say vs. writing up an intelligent answer to a question (or asking a question). Folks can spout out nonsense on Twitter. And part of it is gossip/entertainment. That content won't fly on Quora which desires quality content.

I don't know. That's just one perspective.

</comment><comment><USER3> My rule of thumb with startups: if a UX interaction seems intrusive or unintuitive, it's probably "growth hacking."

</comment><comment><USER4> What a waste of a post. There is absolutely no "meat" in that post; it's all marketing fluff. Boo. Like minimaxir said, it's probably growth hacking.</comment>


Fulcrum: Open-source Pivotal Tracker clone (RoR) - <AUTHOR> https://github.com/malclocke/fulcrum

<comment><AUTHOR> The documentation is sparse, took me a minute to figure out (especially email settings), but works fine. Imports CSV from Pivotal Tracker, just needs some UI/UX work, not very polished.</comment>


A reprieve for Moore's Law? Work on gallium nitride semiconductors - <AUTHOR> http://arstechnica.com/information-technology/2016/06/cheaper-better-faster-stronger-ars-meets-the-latest-military-bred-chip/ <comment><USER2> It's not as if Intel and others haven't looked at this and other III-V materials.

These GaNs seem to be more suited towards amplifiers and a replacement for the kinds of components that GaAs is currently used - not digital logic.

For a look at a potential III-V materials for use in digital logic, have a look at this article. [http://www.extremetech.com/gaming/203926-analyst-intel- will-...](http://www.extremetech.com/gaming/203926-analyst-intel-will-adopt- quantum-wells-iii-v-semiconductors-at-10nm-node)

IMHO, Moore's Law will end in about 2019-2020. No exponential can go on forever. This will have huge ramifications for silicon valley. You're already seeing a slow-down. Ever wonder why Intel chips aren't getting all that much faster?

<comment><USER3> My take on what it will mean:

(1) It will now make sense to invest in the development of higher-order compute architectures that take advantage of truly massive parallelism. In the past such efforts (connection machine, etc.) were killed by Moore's Law-- by the time they hit the street CPUs had already gotten so much faster their advantage had disappeared.

(2) It will also make sense to prioritize parallelism in software to a much greater degree than it has been historically.

(3) "Software Moore's Law" type efforts will get a huge boost. In the past we've almost had an "Eroom's Law" in software: it bloats in proportion to faster chips and more RAM. Expect to see performance in software become a real feature. (I think we're already seeing this.)

(4) Slow languages will become considerably less shiny. Fast languages that take good ideas from slower dynamic languages like Rust, Go, Swift, etc. will become much shiner. C/C++ might also see a renaissance in mainstream interest. (This is already happening.)

(5) Once fabs all catch up to the state of the art endpoint fab tech for conventional chips, silicon fabrication will become a commodity service subject to commodity market forces. It will get _cheap_. This will accelerate even more as patents expire (or China ignores them).

(6) China (and specifically the Shenzhen ecosystem) has a _very_ good chance of eating semiconductors due to #5. Nobody does manufacturing scale like the Chinese and once they catch up they'll own it unless players like Intel get serious about getting ahead of this.

(7) Also due to #5, the price per unit of compute may continue to fall for some time after Moore's Law hits the wall -- and partly _because_ Moore's Law has hit the wall. Something akin to the current top-end Xeon could easily cost under $20 in 10-15 years. Smallish ARM chips could be priced by weight like a building material.

(8) As a consequence of #7, we might see what I call "Moore's Mushroom" \-- a geometric fall in the price of massively parallel machines (also see #1). If the equivalent of a 48-core Xeon is $20, then a 1200-core monster might cost under $1000. For $10k you'd be able to buy your own equivalent of a decently sized data center.

(9) Power efficiency of chips may continue to improve for a while to the extent that this can be pursued without increasing density, and it might make sense to make this a huge priority once density is stable. Power/compute might still have a ways to go.

(10) As a consequence of #5, open source core designs will really hit the mainstream. You'll be able to take an open reference chip design and have it fabbed by the lowest bidder. "White label" OSS chips will appear.

(11) Finally, also due to #5 ASICs will get cheaper to make. Expect to see more of them, especially since it will now make sense to make an ASIC to speed up an algorithm as you can no longer just wait on Moore's Law to give you that speed for free. You'll see AI ASICs, crypto ASICs, graphics ASICS, data compression ASICs, even language specific 'accelerator' ASICs like JavaScript coprocessors, etc. With OSS core chip designs these could easily get bolted on, leading to weird custom cores like a "JavaScript optimized OpenRISC white label CPU."

(12) It might still be possible to push single-threaded performance by improving cooling, e.g. by mainstreaming liquid or active refrigerated cooling. The current overclocking record for cryogenically cooled Xeons is around 6.2ghz. Will we see liquid nitrogen in data centers as a common thing?

(13) The PC and mobile device upgrade cycle will slow _a lot_ , which will further kill profits in hardware all the way up the stack. Hardware's about to become a _hard_ business.

TL;DR: price/compute and power/compute will continue to improve for a while; semiconductor margins will get squeezed; software efficiency will matter more; ASICs will get more common; open source chips might finally arrive.

All of this might actually be good for Silicon Valley, which mostly does software not hardware. Software's about to get even more important.

<comment><USER2> Great list! To quote Bob Colwell (former Intel fellow and DARPA director), it's hard to replace an exponential. There will be non-uniform improvements and "one-off" type of breakthroughs but a sustained 2x every 2x years is just not going to happen ever.

As a thought experiment, what if Moore's Law scaling had ended in 2000? No smartphones.

I agree that the value of software engineering and computer architecture in general will increase as the transistor-scaling free ride ends. We have to make more efficient use of existing transistors that will no longer scale going forward.

<comment><USER3> Quibble: I disagree about 'no smartphones.' Look at what is possible on a 64K/8-bit machine in the 1980s:

[https://en.wikipedia.org/wiki/GEOS_(8-bit_operating_system)](https://en.wikipedia.org/wiki/GEOS_\(8-bit_operating_system\))

An iPhone could be done on a single core 100mhz system _if code is efficient_. That would mean forfeiting some amount of eye candy and developing more efficient GUI layers.

I do agree that some smart phone functionality like super-high-end 3d maps apps might not exist, but a basic map with basic turn-by-turn directions could be built for the Commodore 64 by programmers who actually think about performance.

This is why I think a "Software Moore's Law" and performance is going to matter _a lot_. Premature optimization might no longer be the root of all evil. It might be a skill programmers need to have.

<comment><USER2> I agree here with the word "possible".

However, progress on this front would be slow due to the increased cost of software development. Software would be much more difficult to write leading to longer lead times for applications.

I don't think the app stores would scale at the same rate that it did for iPhone or Android.

One analogy is parallel programming. This is generally very difficult, so people avoid it, even when hardware vendors give you get a bounty of cores. Another example is GPGPU - very slow progress on mapping data-parallel apps to the GPU (image processing etc.).

We may not know what future devices and applications are not possible due to Moore's Law's end. Another example is the recent explosion in deep learning - this was only possible due to the increase in FLOP density as a direct consequence of Moore's Law. These algorithms were around in the 80s.

<comment><USER3> "Software would be much more difficult to write leading to longer lead times for applications."

This is a problem we will need to solve. So far we've increased programmer productivity by sacrificing code efficiency because Moore's Law gives us more speed for free. We'll have to find ways to reduce this trade-off in the future by thinking harder and deeper about software since the hardware's not going to save us anymore.

</comment></comment></comment></comment></comment></comment><comment><USER4> Another wrinkle in GaN semiconductors is GaN RF power transistors with grown- on diamond heat spreader layers. Increases RF power density by 3x over GaN on SiC. Brief overview here (2014):

[http://www.edn.com/design/wireless- networking/4435899/Histor...](http://www.edn.com/design/wireless- networking/4435899/History-of-GaN-on-Diamond-Technology)

</comment><comment><USER5> As far as i can tell this has no relation to moore's law. Moore's law currently suffer mostly due to:limits of manufacturing small things, and mostly because of energy consumption and delay of wires. Without solving those, it would be hard to offer big improvements.

And GaN can't solve those afaik.

<comment><USER6> For a given size transistor the GaN element will switch considerably faster than the Silicon equivalent. We have an enormous amount of knowledge about the Silicon based process though and it's a bit like trying to come up with a better combustion engine: it may not be the best material to begin with but it will be very hard to catch up with 50 years of materials science and process technology on Silicon. It's a huge head-start, but I'm happy that people are looking at alternatives to Silicon. Bismuth based compounds are interesting as well.

<comment><USER5> Sure it's great that people research things.

>> For a given size transistor the GaN element will switch considerably faster than the Silicon equivalent.

Most of the delay today is because of wires, not transistors.

See figure 1 at [http://www.monolithic3d.com/blog/previous/3](http://www.monolithic3d.com/blog/previous/3) .

</comment></comment></comment><comment><USER7> Maybe this shouldn't have been called a law. Maybe, "Moore's observation" or "Moore's postulation" would have been more apt.</comment>


IPhone v Android debate 'not important' - <AUTHOR> http://www.thedailymash.co.uk/news/science-&-technology/iphone-v-android-debate-not-important-201101173436/

<comment><USER2> Arguments like this are enjoyable so long as they're argued with a spirit of fun. But I think too frequently people forget the insignificance of the debate and begin really getting angered and hurt over the other side's arguments.

I mean, it's a phone OS. Neither iOS nor Android is going to have a monopoly. Some people really don't like the idea of a locked-down phone, and they're completely happy with Android. Some people care more about the excessive polish that Apple's so good at delivering, and they're completely happy with the iPhone. Some people aren't completely happy with either, so they either jailbreak iOS or they come up with some other compromise. But really as long as there's something for everybody, it doesn't matter if other people are enjoying their other phone.

<comment><USER3> I try not to get too involved, but sometimes I think people don't realise what they're paying for... If you buy an iPhone, then jailbreak it, you just paid Apple some money. Part of it will be used to sponsor lawyers and lobby who will actively fight against jailbreaking and try to introduce laws which makes jailbreaking illegal. You're additionally sponsoring research on further closing down systems.

So basically you funded some people to prevent you from doing what you've just done. If they succeed with any similar laws, they'll be also extended to other systems, so even if google won't sue someone for jailbreaking Android, another producer might.

</comment></comment><comment><USER4> Yes, life is so much bigger than arguing which phone is the best. Until it matters again.

See: <http://imgs.xkcd.com/comics/hamiltonian.png>

<comment><USER5> Would just like to note that [in the xkcd comic] he should have used her abdomen or back to take notes. The chest has an unfavourable topology for that kind of thing.

Yes I have empirically proven this.

<comment><USER6> [pedantic]

Topology? AFAIK, all of these are homeomorphic to a piece of paper.

Topography != Topology.

<comment><USER7> While I'm not sure if there's an actual fusion in the depths of the naval, for practical purposes, the abdomen can be considered homeomorphic to the punctured plane, and treated accordingly.

... "for practical purposes" ...

Sigh. I guess I'll have to turn in my pure math degree.

</comment></comment></comment></comment><comment><USER8> Does anyone think the debate as to what platform a developer should be targeting (assuming they are trying to earn a living from it) is important?

The reason I ask is I'm currently developing an Android app (as I have an Android phone and no mac) but I keep wondering if it's worth getting hold of a mac and iPhone sooner rather than later.

<comment><USER9> I don't think it matters where you start as long as you think through design and architecture to be as cross platform as possible. You have got to start somewhere.

</comment></comment><comment><USER10>
       "A phone's a phone. In two year's time they'll all be buried in a
       landfill with a load of dirty nappies and rotting chicken carca[s]ses."

Ignorance at its greatest. As long as millions of people continue to use smart phones, the OS will continue to hold great significance. What ever replaces iOS or Android will be based off them, so it's important not to pass of these OS's just because a new OS will replace them. People are spending a huge portion of their lives on their phones. The OS is what they are interacting with, and even a slight change in the interface or functionality can leave a lasting impression on users. Mobile OS's are very, very important, and concluding that they're useless without any justification whatsoever is simply crazy.

</comment><comment><USER9> Interesting that this would run on the same day Jobs takes a leave of absence. Talk about reinforcing what matters.

</comment><comment><USER11> It is of some importance to people yet to upgrade to either one. Google's voice translator app & rush poker tipped the balance for me.</comment>


Thanks goes out to the YC community for all the help... - <AUTHOR> http://www.theother9to5.com/ <comment><USER2> please, please, PLEASE write you as you, not u. That's a definite turn-off for me.

<comment><AUTHOR> Sorry, changed copy in a rush.

</comment></comment><comment><USER3> You definitely should include some geo-location, google maps.... Would be cool to type in your zip code and see nearby events and integrate the voting feature you have already made. Keep up the good work.

<comment><AUTHOR> oh those are coming... i wanted to make it simple and to the point... so i have to find out a way to incorporate that and not get in the way of users

<comment><USER3> Cool man...I think your approach is right, traffic is irrelevant right now, just get it up, get feedback, and keep on improving it. Looking forward to see what you come up with.

</comment></comment></comment><comment><AUTHOR> I bumped up the font... better search.. a little bit higher contrast.. no registration required to post or vote (events only)... not just limited to boston anymore...

<comment><USER4> Contrast still not enough. See my recent comment on your other thread. <http://news.ycombinator.com/comments?id=23231></comment></comment>


Buttons on the Web: Placement and Order - <AUTHOR> https://medium.com/@GreatUX/buttons-placement-and-order-bb1c4abadfcb <comment><USER2> Let us not forget GoneME: A fork of GNOME that started with the "Buttonorder" patch, a patch to revert the then recently committed change from "OK"/"Cancel" to "Cancel/OK".

> Reverting the Buttonorder is one of the things that I would like to see done > and the first approaches into that direction has been started. When the > specific MacOSX way of Buttonorder was introduced it so what caused troubles > for me and other participants of GNOME that people filled pages with > complaints and rants because it irritates them when they use GNOME > applications together with KDE, MOTIF, GNOME 1 etc. applications. They are > not consistent anymore and that's an argument for me to revert back. All > these nice usability studies - good or bad - but changing something a user > got used too for many years is not the best decision and then trying to > enforce the same on KDE isn't good either. Some of these people are even > going that far that they tell everyone that everything else as order is > wrong and must be reported as bug. It's totally regardless for them what the > opinion of users are, what only matters is that they must be right because > they say so.

[https://web.archive.org/web/20180902122151/http://www.akcaag...](https://web.archive.org/web/20180902122151/http://www.akcaagac.com/index_goneme.html)

</comment><comment><USER3> This is a very complex topic that's been studied and discussed for decades. Further study and discussion is great, but this article didn't add much beyond some opinion.

The author misses half the concern of button layout: target acquisition, or "how long, once I've found the button I want to use, does it take to tab to it/move my mouse to it/tap it and how likely am I to miss (and potentially hit a different element/button with potentially frustrating or disastrous results)?"

<comment><USER4> As for mouse path, it is right in the beginning of the article, images with green dashed "paths".

<comment><USER3> Those are the paths traced by your eyes. It does say "and often the mouse," but it's describing reading, and the common habit of following along with the mouse cursor as you read. IF you are the kind of person who does this, it puts the mouse cursor in the right place for you when you're ready to click. This does not help, A) people who don't do that, B) people who are using a keyboard or assistive device, or C) people using a mobile/touch device.

</comment></comment></comment><comment><USER5> For me personally left buttons are often annoying on mobile as I have a wide phone (like lots of people) which I hold with my right hand (like lots of people) meaning I'd need to stretch or use my other hand to press the button.

</comment><comment><USER6> Much of what is discussed in this article as something "we should try out" is already a well-researched topic: [https://en.wikipedia.org/wiki/Principles_of_grouping](https://en.wikipedia.org/wiki/Principles_of_grouping)

</comment><comment><USER7> Forms on the early web almost always had everything left aligned. There simply wasn't that much formatting to begin with. I know it is gross over- simplification, but it felt like the first half of that article spent a ton of time just telling us to go back to our roots.

<comment><USER8> I wonder how true this is across human languages and cultures.

</comment></comment><comment><USER9> I feel like unless you are Microsoft, Google, Apple, or similar, you should opt for whatever is most intuitive to your audience, and that will be whatever convention is predominant in the other products they use. An analysis of the most rational, internally consistent usage is moot. If your customers have been trained by Apple to expect "first right" in horizontal button layouts and "first top" in vertical button layouts, it's irrelevant that this is inconsistent with English reading order of left-to-right and top-down. Unless you have the power to move the entire culture, such considerations shouldn't enter the picture.

<comment><AUTHOR> I don't see any issue when you have one order for horizontal layout and another for vertical as well. But there are examples in acticle that show inconsistency in horizontal layout for different cases and this can be an issue.

</comment></comment><comment><USER10> The meta-observation here is that before you think about whether you need a dialog, consider whether you can design the system such that it doesn't need one in the first place.

</comment><comment><USER11> From the images one can make conclusion that positive button is closer to the corner. So when buttons left, positive will be left, when buttons are right positive is also right

</comment><comment><USER12> The button which generates the most revenue for the web site will be largest, first, and the default.</comment>


PHP's weird Comparisons - <AUTHOR> We all know that PHP's comparisons my feel kind of weird but at least i thought it would follow some reasonable rules.
Recently i came across some comparisons, that may follow rules, but make me feel really uncomfortable using the == operator, when comparing strings:

  // true
  var_dump("+09"=="009");
  var_dump("  09"=="009");
  var_dump("  -09"=="-009");
  var_dump("\t-09"=="-009");
  var_dump("\t\n-09"=="-009");
  var_dump("+0"=="-0");
  var_dump("09"=="009");
  var_dump("9"=="009");

  // false
  var_dump("+  09"=="009");
  var_dump("- 09"=="-009");
 Keep in mind: I am comparing strings, NOT numbers. <comment><USER2> You're really just comparing thingies as interpreted by PHP, not strings. If you want to compare strings, use ===.

<comment><AUTHOR> Yeah thx, I already knew === but i still think it is strange behaviour :-)</comment></comment>


Ask HN: How does an online game with AIs manage so many AIs? - <AUTHOR> Each AI should use up a pretty significant resource of the server running the AI. How do the games possibly manage so many of them? Most education on AI is how to make them smarter, not how to make them cheaper. There has to be well known tips and tricks about scaling AI. What are they? <comment><USER2> It's not 'AI' (what actually is?), but mostly hand-crafted state-machines trying to achieve game-specific goals, which directly inspect the current game state instead of trying to build their own 'world model' (of course with restrictions like fog-of-war, visibility-checks and so on so that the cheating isn't too obvious).

Really no _that_ much different from what the Pacman ghosts did, just developed further from there (especially during the Golden Age of strategy games during the late 90's and early 00's).

With this base, scalability is achieved through fairly traditional performance optimizations (mostly using the right algorithms and data layout, especially for path-finding and 'visibility checks').

Also in strategy games, AI is often layered like a military chain of command, where the "commander AI" only makes high level strategic decisions and only has a very 'sparse' world model, while the lowest level 'soldier' AIs are mostly occupied with pathfinding but only know about their immediate surroundings.

Also, each game genre has their own highly specialised, hand-crafted "AI" algorithms. A first-person-shooter AI is completely different from a car- racing-game or realtime-strategy game.

<comment><USER3> Exactly this. It's also worth mentioning that 'true AI' would be an absolute nightmare in terms of delivering a game, the QA testing burden would be so enormous for any reasonably large game that it'd be difficult to get it out the door.

I remember working at a games studio years ago and a kid straight out of university joined us after doing a degree in AI - assuming that games used real AI. Nope, it's all smoke and mirrors.

<comment><USER4> No one has managed to create a real AI (as in strong AI). Machine learning, deep learning is smoke and mirrors too.

<comment><USER5> ...and in games, you actually _want_ smoke and mirrors:

[http://www.techradar.com/news/gaming/shouldn-t-our- enemies-b...](http://www.techradar.com/news/gaming/shouldn-t-our-enemies-be- smarter-by-now-gaming-ai-s-tricky-problem-of-smoke-and-mirrors-1245180)

If you really had hard and strong AI, a lot of games certainly wouldn't be as much fun to play anymore for casual players (spare some games you want to be frustrating). You want the protagonist to eventually conquer the enemies and win.

<comment><USER6> Yup. Imagine a boss in a game decides it's not in his best interest to be predictable, or take matters in his own hands and attack the players when they aren't ready. Or any number of things that sounds cool on paper, but would be exceedingly frustrating when actually playing the game.

<comment><USER7> Imagine a boss in a game tired of fighting every day, and just giving up and not fighting back.

<comment><USER8> That's essentially the plot of Wreck-It Ralph.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> Most of the work needed for decisions is shared between AI instances using a few tricks:

1\. Precomputing information for all agents, like using global shortest path (Bellman-Ford).

2\. Abandoning per-unit subjectivity (a lot of units will share same view) or in other words: limiting internal unit state, using a shared state between groups of units.

3\. Decoupling expensive algorithms into multiple simple steps. (Like state machine simplifies regular expression.)

4\. Using separate AI and visualization thread, and using low amortized cost data structures (priority queues etc.).

You may observe all these three rules by anomalies in unit behaviour. Play [http://www.screeps.com](http://www.screeps.com) to learn a lot about modern RTS AIs :-).

<comment><USER10> For an online game, an additional trick could be to run the AI code on the users' computers.

</comment></comment><comment><USER11> "AI" is a ridiculously general term. People use it to talk about everything from line-following robots to machine vision and speech / natural language recognition.

Most game "AI" has nothing to do with the currently trendy "AI" based on linear algebra and neural nets. It's much, much simpler, partly because it has direct access to the game state and doesn't have to do any sensor processing.

"GameAI" tends to be a bag of puppetry tricks. You don't even need the strategic depth of chess, just something that gives you an interesting enough and varied enough move/fire pattern.

<comment><USER12> I vaguely remember something like an interview where a dev told the story of how by making their bots cleverer the player satisfaction had gone down.

<comment><USER10> If the relation was monotone, this would mean that playing against real humans is less fun than playing against a stupid AI. Which is not the case, so I guess we have something like an "uncanny valley" here.

So making the bots not a little bit more clever, but _really_ a lot more clever, would improve the game.

<comment><USER12> In what I remember, they made their bots so clever it wasn't fun because it overpowered any player in their tests. Humans want to win, so losing every time wasn't fun.

I'm trying to find that interview.

<comment><USER13>
      Humans want to win, so losing every time wasn't fun.

This needs to be a bit more qualified.

I personally love games where the skill gap is SO HUGE it seems impossible to win at first. I get my ass kicked for months and years before becoming any good. Go, Quake, Elastomania... Losing doesn't trouble me at all.

On the other hand, "reasonable" games where advancement is assured, the skill curve mostly flat (I can beat top players with a bit of luck or the right items / grind / setup), hold no appeal to me whatsoever. Diablo & co.

<comment><USER14> > Losing is fun ~ Dwarf Fortress Motto

I'm on basically the same boat. One of my biggest frustrations with my gaming friends is that they can't ever lose. Sometimes they can't even win unless they win by enough.

When I play games I'm there to have fun. Trying to win is fun, winning is fun, losing is also fun. It's all fun.

DotA, LoL, etc would be games I'd play a lot if the community weren't the shining example of "can't lose, or even win by less than they `should have`".

</comment></comment></comment></comment></comment></comment><comment><USER15> There's a number of tech solutions to scaling mob AI. Most of these are also applicable to non-online games as well:

\- Running AI at a different frequency than the game. The network event loop might run at 30Hz (33ms tick delta) but AI doesn't need to make decisions that often, maybe every 100ms or 500ms etc.

\- Separate decision making from performance. A cheap execution system can run at a high frequency, while an expensive decision making system runs at a lower one.

\- AI LOD. Mobs that are far away run much simpler AI that doesn't try to perform detailed animations etc. Mobs that are in unpopulated areas get frozen, and thawed once somebody enters.

\- In instanced dungeons, mobs don't even exist until the players enter, and once players leave, the mobs just get unceremoniously killed.

\- Offloading. Mobs are just game agents so in online games it's possible to offload them to other servers that get load balancer as players move about, areas get frozen etc.

Basically the big question is: if nobody is interacting with a mob, does it need to exist? In most online games they do not. And even in sim heavy games, maybe they don't need to run the same high fidelity AI when nobody is watching.

Then the last tip is:

\- Make the AI as cheap as possible for the task at hand, but no cheaper. A mob in MMO that is all aggro and easy to kite doesn't need to have complex strategic cognition, and it would probably be a detriment. Everything need a to match it's context.

Source: I make games. :)

</comment><comment><USER16> Most AI in games are simple.

Either state machines or behaviour trees. So they're designed to be quick to execute by design :)

<comment><USER16> Also they tend to have manager classes iterating over a list of NPC data, rather than lots of NPC classes and executing "run" methods.

Edit: undo autocorrect typos

<comment><USER17> And while you're iterating the same code over many NPCs, you could take great advantage of GPUs and gain significant performance by running all those NPCs in parallel.

</comment></comment></comment><comment><USER18> Two things:

1) Like 'opless wrote, AIs in most games are simple; they're designed to execute in real-time.

2) From the point of view of a networked game, AIs and players are the same - the server(s) only care about inputs. The difference between keyboard input and AI input need not to be relevant, and this suggest a trivial approach - execute AIs on clients, and send their inputs along with players' inputs.

<comment><USER19> >execute AIs on clients, and send their inputs along with players' inputs

That seems strange, you'd be sending multiple times the same AI's actions to the server, in which case you better be certain that it's deterministic, not to mention the security concerns. It seems far easier to execute the AI on the server and send its actions to each player, especially if it's a trivial AI.

<comment><USER20> I wonder what you might actually do is execute AIs on both, and send occasional snapshots of the AI state from the server to the clients.

This gives you the benefit of low-latency on the client (don't have to wait for the server to tell it what the AI is doing) but also avoids security and non-determinism worries. (Although the AI might still be non-deterministic, it probably can't diverge too much before the client receives the next snapshot from the server).

This might be more effort than it's worth, though...

<comment><USER21> > benefit of low-latency

you achieve the benefit by loosening consistency, i.e. the local ai will have to react to local events before those are acknowledged by the server to see any gain, and the server might come to different opinions because it sees a different state of the game considering multiple clients who are constantly out of sync.

That leads to warping. A rocket, to take an example of an extremely simple entity, might fly a few meters on your screen only to explode right in front of your face because the server sent a message that the flight path was blocked by an online enemy that your client didn't predict.

</comment></comment></comment></comment><comment><USER22> For many games (shooters etc) making a smart AI is relatively easy. What's hard is making an AI that's provides a realistic and interesting challenge. These "AI"s don't use much in the way of machine learning however.

I feel like this isn't what you're getting at though. Perhaps there's a specific example you have in mind?

</comment><comment><USER23> Most comments here are explaining what's meant by game AI's and how they're not closely related to "AI" as understood in other fields.

There definitely is lots of room for interesting applications of "real" AI in games. Apart from NPCs, learning and building models about the player has lots of potential too.

The interesting-game-ai field is of hard to keep track of, because the search resuls are full of combat AI discussions, which is pretty uninteresting.

</comment><comment><USER24> Could you provide examples of games? The answer is very different for, say RTS or Shooter, MMO or match-based, etc.

</comment><comment><USER25> You'd be surprised at how devious some of the tricks are. I'll give you an example from Startopia: visitors want particular services. These have queues. If the queue is too long, the visitor looks for a shorter line. Except... this led to them aimlessly wandering in circles. Oops.

So, instead, when they decide they want a service, they reserve their place there and then and then just walk to their spot. A completely hidden variable, cheap to compute, and the AI now behaves "sensibly".

In general, the AI of the average opponent in a computer game is way less complex than that of a housefly. Primitive communication and responses to external stimuli is about all there is.

</comment><comment><USER26> > Each AI should use up a pretty significant resource of the server running > the AI.

The premise is wrong, in many games AI can be extremely cheap. It's usually not the same "AI" as in other fields. Game dev is a completely different dimension.

</comment><comment><USER27> I've started playing Destiny 2 and wondered the same thing. There are enemies seen by me and other players at the same time.

So the enemies have to be controlled server side not locally. Also there can be (and will be) a lot of enemies around the "Destiny world" at the same time. What kind of servers do you need for that? That's not just processing HTTP requests and fetching data.

</comment><comment><USER28> Could there be a not mathematical model of AI

</comment><comment><USER21> besides the other sensible opinions on the engineering, if those fail, the far simpler answer is to pay for server farms.</comment>


2012 Personal Annual Report - <AUTHOR> http://jehiah.cz/one-two/ <comment><USER2> Cool, beautiful, clever, engrossing, and yet something about it bothered me.

It took me a while, but then it hit me: This is a beautiful display of _inputs_.

Where are the outputs?

Where is the gorgeous dashboard that shows the results of all your hard work and the benefits that others got from them? That's something I'd love to see.

<comment><USER3> <http://statuschart.com> would be the ideal presentation medium for this. I'm a fan.

</comment></comment><comment><USER4> Beautiful design, but a little depressing as a picture of a life: work, transit, texts, coffee, neutral facial expressions.

<comment><USER5> I disagree. I think the interesting part is in the blanks in most graphics. He does a very good job at keeping his computer use to work hours, so I think it's safe to assume he has a life outside work. He sends a good amount of texts which means he has people in his life. He drinks coffee mostly in the morning which is good.

<comment><USER4> I'm not trying to say he has a "bad" life or is doing a "bad job" at something. But he seems to be saying that these things are meaningful as a representation of a year in his life. It's not bad to text or drink coffee or ride the bus, but I wouldn't want to think of a year in my life in these terms.

<comment><USER6> Just because these metrics show evidence of how his time was spent, doesn't mean that's how he thinks of the year. He might think of it as time spent staying connected with far-away friends, while writing awesome code for a company he loves.

As a parent, I have often wondered how much of my time is spent changing diapers, getting water/milk/juice for my kids, overseeing clean-up time, doing bathtime, reading, etc. I'd love to be able to look at a metric of this over the course of a year. If, at the end of the year, I had an annual report which included all of that (and work time), it would be very interesting to me as a way to understand my life better. I already think of myself as a parent, and know that these are the costs of being one, but that's not the only way I think of my life in a year.

<comment><USER7> Exactly. The reality is that we do spend most of our time doing rather mundane things, but that's not a bad thing. Characterizing a year in those terms is often really useful, and always interesting!

</comment></comment></comment></comment></comment><comment><USER8> This is amazing! For those who haven't seen this already, Stephen Wolfram's been tracking such data for over 20 years ([http://blog.stephenwolfram.com/2012/03/the-personal- analytic...](http://blog.stephenwolfram.com/2012/03/the-personal-analytics-of- my-life/)).

I'm going to try to track some of my data this year. I'm more interested in health data - sleep, exercise etc. It'll be interesting to see how other activities relate to sleep and exercise.

<comment><USER7> I really love the data you linked to, that's quite the commitment to keeping track of data, and it's very interesting to read his anecdotes on it.

I'd love to do some of this information tracking, but nearly all of the data that I've seen comes from DIY setups, with custom tracking systems. Does anyone know of any open source projects that do this, or are willing to post their own solutions?

</comment></comment><comment><USER9> Beautiful. I would pay for a product that I could just turn on in the background and get reports like this daily.

<comment><USER10> Manic Time. Just google it

<comment><USER11> I second Manic Time. It's offline, so your data remains with you. Plus in addition to graph visualizations, it also allows you to track what applications, documents and websites you spend most time on.I reckon they have a portable version of it too.

<comment><USER12> my problem with these tracking apps is that it's too easy to "cheat" the system if you have more than one monitor. I typically have a video or stream open on one monitor while I have focus on a window in another monitor so the app doesn't log my distractions.

</comment></comment></comment></comment><comment><USER13> What tools do you use to collect this data? Looks great, by the way.

<comment><AUTHOR> a lot of it is just simple python scripts to download/convert data to csv files, and do some simple post processing.

for the computer activity i took a snapshot every 30seconds of what program was active, and how long my laptop was active.

<comment><USER13> So you parse your credit card statements (or equivalent) for the coffee & travel costs? I thought the travel was by distance (not cost) at first, which is what I was curious about because it would require a more active role in logging on your part.

Is this purely for kicks, or are you trying to use it to drive behavioral changes (e.g. spend less on coffee)? I ask because I always think about doing this, but I get a stuck on the "why".

<comment><AUTHOR> coffee data is more driven from foursquare checkins, and only partially credit card transactions.

The motivation for me is a way to learn about my year (not directly to change my actions), and part a fun exercise to get better at data processing, javascript, and UI Interaction/charting. I like the hard deadline that a personal annual report creates naturally (ie: it's no good if i release it in june).

</comment></comment></comment></comment><comment><USER14> Has a use been found for this visualization, or is it simply info-porn? What lessons can be drawn from this data? I must admit, I'm having trouble not classifying this as a waste of time--the result of the evolution-bred desire for tool-making, misapplied.

<comment><USER13> I asked the same question and he replied...

<http://news.ycombinator.com/item?id=5021896>

I think that _"to get better at data processing, javascript, and UI Interaction/charting"_ is a perfectly valid answer. But in general, I tend to be wary of visualizations that don't ultimately inform some decision making process.

</comment></comment><comment><USER15> How do you track your sleep time? Anything with Fitbit or just hand writing/computer/mobile entry?

<comment><USER16> I can't speak for the author but I keep a sleep journal. I write down the time I go to bed, the time I wake up, and any dreams I can remember.

</comment></comment><comment><USER17> You could start using whatpulse to track your typing too (<http://whatpulse.org>) and if you listen to music last.fm would be great too (<http://last.fm>)

There was a really awesome program called Wakoopa that tracked program usage for a few years, but they shut down their social portion last year :( <http://social.wakoopa.com/>

<comment><AUTHOR> I've not heard of whatpulse, but looks cool. I rolled my own data collection for keyboard stats last year.

I've highlighted some last.fm data in a few of my previous annual reports, but it didn't make it this year (I Wasn't quite into new music enough recently for it to be interesting to me).

</comment></comment><comment><USER18> Really cool! So what aspects of the report surprised you?

<comment><AUTHOR> I was most surprised by the sheer amount of time I spend on the computer; clearly I need to unplug more often. (Though you can tell I did drop off the grid for a few weeks when my daughter was born, and again for a vacation in August. At least that's a start).

<comment><USER19> The lesson is to have more kids, fast.

</comment></comment></comment><comment><USER20> Could you include a beard length index next year? I'm not certain, but it definitely looks like it grew out somewhat over the year.

I'm all for a proper beard!

<comment><AUTHOR> best-idea-ever

Is there an official way of measuring beard length?

<comment><USER21> [http://en.wikipedia.org/wiki/List_of_humorous_units_of_measu...](http://en.wikipedia.org/wiki/List_of_humorous_units_of_measurement#Beard- second)

probably best to measure it in time. that is, a clean shave is length 0, time since last shave estimates length. If you use an electric shaver, the settings on the shaver associate to a known length. If you trim with scissors... that's a bit trickier.

</comment></comment></comment><comment><USER22> Was the coffee move from Carte Blanche to Bourbon Coffee due to a change in location or a change in preference?

<comment><AUTHOR> The bitly office moved, so my morning coffee habit had to switch slightly. It's for the better thought; I <3 Bourbon Coffee.

<comment><USER23> Dude, you've gotta stay away from Kava and Starbucks. You're paying above $5.00 on average per trip!

</comment></comment></comment><comment><USER24> Thanks for the great presentation. I especially like the weekday/month visualization.

</comment><comment><USER25> Any reason behind the move to Starbucks as the end of the year?

<comment><AUTHOR> lies, damned lies, and statistics. Unfortunately i didn't have time data for my other trips to Starbucks so that dataset is partial (I mostly visit Starbucks on the weekend/holidays).

The transition from Carte Blanche to Burbon Coffee in the middle of the year is when @bitly's office moved, and my coffee habit followed.

</comment></comment><comment><USER26> I did a similar report last year, focusing more on consumption (books, movies..) <http://johanrhodin.se/RhodinReport/RhodinReport2011.html> Hopefully this can be automated. I still have too many manual steps to perform.

</comment><comment><USER27> Good job presenting the data as usual, Jehiah! The d3 stuff looks nice :)

<comment><AUTHOR> thanks dude!

</comment></comment><comment><USER28> Looks like the "water" and "I'm a Mac" shirts are big winners.

</comment><comment><USER29> Go on vacation at the end of July/beginning of August?

<comment><AUTHOR> yup. I actually managed to travel without my laptop for a few weeks!

</comment></comment><comment><USER30> what did you use to take pictures from your webcam periodically? If it's a python script, could you please share your code with us?

<comment><USER31> Here's a quick script I whipped up. No warranty, etc. Also, you need OpenCV installed.

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

OpenCV: <http://opencv.willowgarage.com/wiki/>

</comment></comment><comment><USER32> Lots of fun data here that is visualized well. Unfortunately Safari crashed several times on my iPad 1 while trying to load it. :(

<comment><AUTHOR> doh. That's probably due to loading a full years worth of images as png's (I've added support for webp images when browsing w/ Chrome but that isn't going to help the iPad). Sorry i didn't get to do more than minimal iOS testing.

glad you enjoyed the report.

</comment></comment><comment><USER33> The 24x365 matrices for both _Coffee_ and _Computer activity_ \-- perfect level of abstraction

</comment><comment><USER34> At first I thought this post was poking fun at the Bingo Card creator-style annual reports.

</comment><comment><USER35> A very beautiful way to combine together lots of tiny snippets of data. Great fun!

</comment><comment><USER36> for a moment I tought someone from czech republic made it to top of HN

</comment><comment><USER37> and that was awesome!</comment>


Tell HN: Why I Love This Community - <AUTHOR>

There are plenty of reasons to love HN, but the reason I love it here: It's the only place I know of that truly celebrates ALL entrepreneurs. An entrepreneur doesn't have to raise $10 million to get recognized here. You don't need a 100x exit to be recognized here. If you work really, really hard and share your story (big or small) - this community appreciates you. I think that makes this place special.<p>Why do you love HN? <comment><USER2> I visit here because HN aggressively focuses on content and has an intelligent userbase that values discussion and doesn't seem to get caught up in memes the way reddit seems to.

I used to visit Slashdot all the time because their userbase was intelligent enough to offset the low number of news items they covered, but they recently changed their interface to a dynamically loading AJAX monstrosity and disallowed preferences to keep the old, quicker HTML interface. At HN I can get news faster than Slashdot, with just as high a level of discussion and no overblown interface. I'm sold.

</comment><comment><USER3> As Sir Ed Hillary answered when he was asked "Why did you climb Mt. Everest?"

 _Because it is there._ :-)

</comment><comment><USER4> I love HN for its high Signal/Noise ratio.

P.S: I just hope this comment is not ironic. :)

<comment><USER5> This entire post has high Noise/Signal ratio. And yes, it is ironic.</comment></comment>


How AdBlock Makes Ad Tech Industry Better - <AUTHOR> https://theappsolutions.com/blog/development/adblock-makes-adtech-better/ <comment><USER2> > How to make this request sound convincing? Block any attempt of viewing a > page until whitelisting is applied.

Well, that's the best way to push people suddenly decide they're not interested in your content anymore and instantly leave the website. This otherwise interesting post unfortunately brings no durable solution, nor one that respects user and their consent to privacy. I'd even say that first one is an infringement of GDPR, since it states that lack of consent to a feature that's not necessary to run the service can't deny access to the said service.

Also, French media tried this specific solution way earlier (and way before the GDPR applied) and they had to roll that back because that was actually causing the size of their online audience to decrease.</comment>


Learn CSS Grid through interactive screencasts - <AUTHOR> https://scrimba.com/g/gR8PTE <comment><USER2> Here's a nice overview (no login required) of CSS Grid. Never heard of it today, but I will try it out.

[https://css-tricks.com/snippets/css/complete-guide-grid/](https://css- tricks.com/snippets/css/complete-guide-grid/)

<comment><USER3> And here is their similar guide for Flexbox which I actually have bookmarked and attached to a keybinding in my editor since it's so goddamn useful!

[https://css-tricks.com/snippets/css/a-guide-to-flexbox/](https://css- tricks.com/snippets/css/a-guide-to-flexbox/)

<comment><USER4> Recently saw this one on HN as well: [https://darekkay.com/dev/flexbox- cheatsheet.html](https://darekkay.com/dev/flexbox-cheatsheet.html)

</comment></comment></comment><comment><USER5> This is literally one of the coolest systems I've seen on hackernews over the last decade. This is going to change how people learn to code, and definitely going to change how it is taught! Great work, scrimba team!

</comment><comment><USER6> Great tool and great tutorial! I have a sense that I have a good grasp of CSS grids now.

In my Firefox I did have an issue with the sound cutting out after a while. Chrome worked great.

And I think your voice sounded a bit robotic at times. I'm guessing the threshold on your mic is a bit to high.

Or from some segments I gathered that small sound fragments were being played in quick succession. If that is the case, I think fade in-out with some overlap would give a more natural sound. Though, do note that I almost never work with audio, so I may be far off here :).

<comment><USER7> I saw the same audio cut-out bug in Firefox 58.0b12 on Mac OS X, about 1 minute 10 into the very first episode and like you found using Chrome was a workaround.

</comment></comment><comment><USER8> Excellent screencast! Good pace, good explanations. Goodbye Bootstrap at last!

</comment><comment><USER9> Which is worth learning in the long run, CSS Grid or Flexbox ? I'm confused over selecting one of them. :(

<comment><USER10> If you can only pick one CSS Grid seems more powerful. But they do mostly different things (with some overlap) so you really want to learn both if you can.

</comment></comment><comment><USER11> This scrimba looks like a pretty good technology for learning, but some of the highlighted videos are not up to par.

Have you guys recently started? Why not highlight quality videos at the top, to showcase this learning platform?

<comment><USER12> What technology is it exactly? I've never heard of interactive screencasts until now .. really cool!

</comment></comment><comment><USER13> Funny. I was just throwing together a little website and was trying to decide whether I should include Bootstrap for the sole purpose of laying out a grid. This looks like a better option.

<comment><USER14> Take a look at [https://mincss.com/](https://mincss.com/) if you are looking for a css framework that is really really small!

<comment><USER15> Min looks pretty cool, it's a shame it's no longer maintained.

<comment><USER16> I've been using spectre just out of happenstance, if anyone knows anything comparable I'd like to look around a bit.

[https://picturepan2.github.io/spectre/](https://picturepan2.github.io/spectre/)

</comment></comment></comment></comment><comment><USER17> Just when I was getting a really firm grip on Flexbox... now Grid is becoming usable everywhere.

I shouldn't be complaining, this fast pace of adopting useful tools is a paradise compared to the stagnation we had 5-15 years ago.

<comment><USER18> Don't fret: they're actually very complementary. I often use flexbox for arranging content within Grid cells.

<comment><USER19> This is a big thing people don't always get at first with Grid. It only replaces Flexbox where Flexbox was being used in a convoluted way to imitate what Grid does. It doesn't replace the more "natural" use of Flexbox to control the direction, spacing, and sizing of what for want of a better term I'll call "things in lines that may wrap".

</comment></comment></comment><comment><USER20> I keep seeing CSS Grid mentioned, now I have something to get up to speed on it, thanks!

I'm not really a fan of frontend but I did always like CSS (probably due to its declarative nature) more than JS.

</comment><comment><USER21> great concept, definitely one of the best product to come out of StartupLab.no

</comment><comment><USER22> It is unfortunate that the course can't be taken anonymously and requires either a github login or an email and password. I understand the general motivation for that (a quid pro quo, an exchange of a bit of information for a valuable resource) but even then it is a disappointing trend to require personal identification for such type of valuable resources.

<comment><USER23> We've spent over a year building this product and about a month creating the content. Now we're giving it all away for free. I think it's fair that we ask people to authenticate.

But of course, feel free to disagree.

<comment><USER24> One nit: I like listening to tutorials at more than 1x playback speed, and I was overjoyed that you added the feature but it's not persisted between videos which is a bit annoying. But other than that This product is amazing!

<comment><USER25> Thanks for the feedback. I've filed an issue here: [https://github.com/scrimba/community/issues/188](https://github.com/scrimba/community/issues/188). Will try to implement next week!</comment></comment></comment></comment>


Login.gov neutered the security of 2FA - <AUTHOR> https://waleedkhan.name/blog/login-gov-2fa/ <comment><USER2> After seeing this article I was able to add Google Authenticator as an authentication scheme for login.gov Perhaps the author of this article somehow mis-interpreted the interaction with login.gov.

Of course there are far too many organizations which use text messages for authentication, as the article points out.

<comment><USER3> Login.gov wants them to stop using their "personal key" which was essentially another password.

It didn't offer them Google Authenticator because they already /have/ Google Authenticator.

It wants every user to have TWO (or more) second factors available, because "two is one and one is none". If we tell users to have one second factor, they will forget it and then why did we bother building a second factor system?

So they need to pick another second factor they DON'T already have. They've apparently decided they don't want to write down 10 codes (fine) and they don't own a FIDO security key (I guess maybe they're poor?) so that only leaves SMS unless you have government ID.

The correct thing to do here if you care about Security is to buy at least two different FIDO Security keys and use those. Each of your FIDO keys counts as a different method.

If you have a shiny enough Android phone (maybe only Pixel series?) you can use that (in Windows). A new enough Windows PC might work too. But the tiny dedicated Security Keys are relatively affordable, you can get ones compatible with most plausible devices (iPhones, Linux PCs, whatever) and easy to reason about like real keys are. Has anybody stolen my FIDO key? No, it is here in my pocket. OK.

</comment></comment><comment><USER4> A "personal key" was a 16-character string that was used as a salt(?) for encryption _and_ as a backup for lost passwords, [https://www.login.gov/help/creating-an-account/personal- key/](https://www.login.gov/help/creating-an-account/personal-key/). Frankly, this change seems like an improvement. While text messages are weak, the other options are strong and widely-available.

</comment><comment><USER5> Are you sure this is not a phishing email? Their website still lists Google Auth as an option for 2FA [0].

edit: I just logged into my own account (using Google Auth 2FA) and it did not ask me to change my 2FA.

[0] - [https://www.login.gov/help/creating-an-account/two-factor- au...](https://www.login.gov/help/creating-an-account/two-factor- authentication/)

</comment><comment><AUTHOR> Thanks everyone for the commentary. You can see my update to the post. This is not true, and `login.gov` still supports an authentication app as a second- factor.

The dialog in question is only for recovering your password, which is also an important flow to safeguard. In those cases it makes sense to use a different 2FA mechanism, so that you still have two separate factors for recovering your password. An authentication app was not an option in this dialog because it was already one of my factors.

I assumed that "Personal Key" was an authentication app, specifically in contrast to a "Security Key", and that I had to replace my 2FA option for regular logins with a different option.

</comment><comment><USER6> Security isn't black and white. SMS doesn't neutralize the value of 2FA since the effort required to compromise it are still considerable, such that the highest risk methods outlined by NIST require physical proximity to the phone.

While SMS is inappropriate for high value targets such as employees with infrastructure access or people with government security clearances, it remains an excellent option for general consumer security.

By contrast, the vast majority of people who use login.gov likely don't understand nor will they ever install an authenticator app. It makes sense to deprecate support for this vector if, presumably, few people are using it.

</comment><comment><USER7> What was the "personal key" that's been deprecated? Was it TOTP, a secondary password, or what?

<comment><USER3> It was essentially another password. It was a fixed length secret key, Something You Know (well, realistically Something You Write Down hopefully not on a Post It note stuck to your screen although that's better than nothing)

The Blog poster has forgotten or confused themselves into believing login.gov wants them to replace their Google Authenticator style sign-in, but it does not, it wants TWO methods of logging in, and Google Authenticator is only one.

Why does it want TWO?

Because two is one and one is none. Any particular method is always a single failure from being unavailable. You lose the phone, you forget the code, or whatever.

If you have two or more FIDO tokens, it will accept both methods being FIDO tokens, this is the safest option (the government ID might perhaps be as safe or safer but obviously isn't available to lay people so I have no idea)

Google Authenticator and the 10 random codes are next safest and zero cost. You will need to keep them safe, and hope login.gov keeps them safe too, and they're vulnerable to being phished, but otherwise they are pretty good.

SMS is a poor final option. But it is very convenient while also being essentially free so you can see why it had to at least be an option for now.

</comment></comment><comment><USER8> I believe the security key option allows you to use Authy, Google Auth, and other apps.

And 2FA with SMS is much more secure than no 2FA at all.

<comment><USER9> There's a TOTP Authenticator option (Authy, Google Auth etc). It doesn't show up on the screen shot because the author already has a TOTP app configured.

login.gov is deprecating the personal key in favor of a better backup 2FA method. But currently it only supports 1 instance of each 2FA type. So because the author already has a TOTP app configured, they can't select that as a replacement for the personal key.

<comment><USER3> It'll let you have more than one FIDO key.

That happens for two related reasons. Firstly the WebAuthn spec. says to allow this, I haven't read the U2F stuff because it wasn't formalised like WebAuthn, but I expect that instructed implementers to allow multiple keys too.

Secondly, because it's obviously the Right Thing, which is why it's a recommendation in the specification, the U2F and WebAuthn specifications explain how everything works properly with multiple keys.

* When you register a new key, the site provides cookies from any other keys that you've already registered. Your browser asks keys if they recognise those cookies, only a key that doesn't recognise any cookies should register as otherwise you're creating pointless duplicates.

* When you sign-in the site provides as many cookies as you've registered keys - each cookie only works with the key which picked it, but the keys can tell if a cookie is theirs, so whichever FIDO key you've got, it should recognise one of the cookies sent and you're in.

This is probably also true for government ID in the unusual case that somebody has more than one.</comment></comment></comment>


A world of free movement would be $78 trillion richer - <AUTHOR> https://www.economist.com/news/world-if/21724907-yes-it-would-be-disruptive-potential-gains-are-so-vast-objectors-could-be-bribed <comment><USER2> I am unbribed. I suspect this is an example of Troll Science for economists.

1\. The question becomes: if it is economical then why isn't it the case from the start. Why do nations exist? Why do they have borders?

What of the question posed by a famous economist: why do corporations exist? Why not a market filled with nothing but traders? The answer isn't obvious but there is an answer. Perhaps free movement has similar invisible overheads that are being conveniently ignored.

2\. Ignoring what I've said above for a moment. Let us suppose that free movement made us richer. Then nations would be competing, offering incentives to all.

They do not. Only to a tiny percentage of the population with obviously valuable skills or assets. That implies that there is a very high price before externalities are sufficiently alleviated. It at least means governments think that is so for whatever reason.

3\. Within nations we have rich and poor zipcodes. It is true that workers from poor neighbourhoods travel to richer ones for work, it is basic time/money arbitrage. Yet few people think of installing poorer workers in richer neighbourhoods as a means to improve the economy. Why is that?

</comment><comment><USER3> This reads like a billionaire funded think tank production. The last paragraph is a truly hilarious attempt to tell "liberals" how to think.

Though well obscured the obvious take away is "You all really should be a lot poorer because you're worth a lot less than you think and we're working on convincing you of that."

And that's all they really do "work" on.

</comment><comment><USER4> "the reason why migration is so attractive is that some countries are well-run and others, abysmally so."

The article does not discuss the possibility that "migration controls" is a component of "well-run". If so, then opening borders might be a disaster.

</comment><comment><USER4> Yes, but experience with globalization suggests that the vast majority of that extra wealth will go to the 0.01 percent, leaving the rest of us to fight over the scraps.

</comment><comment><USER4> "If the worry is that immigrants will outvote the locals and impose an uncongenial government on them, one solution would be not to let immigrants vote"

      1. Restrict civil rights of immigrants
      2. ??????
      3. Profit!

Hint: ?????? = forced labor

<comment><USER4> Article should be retitled "A Modest Proposal."

</comment></comment><comment><USER5> >A world of free movement would be $78 trillion richer

The only question is - for who?</comment>


Ask HN: What's the best way for outsiders to get a startup team together? - <AUTHOR>

I'm relatively young and of the writing, editing, and political vocations. That said, I also have a big interest in social computing. I'd love to do things for myself, but I recognize my limitations. I have a few startup ideas that I think could be very successful if handled correctly. Unfortunately, I need engineers and I don't know how to get them. As a student, it doesn't make sense to try to hire people, and I'm fine with having equal shares; I just don't know where to find people who are skilled, trustworthy, and motivated. Are there some forums or something that I'm missing out on? Are the established startup communities too hard to penetrate by people outside the industry? <comment><USER2> I cannot stress this enough... do not go into a partnership with someone that you barely know. You can't gauge someone's work ethic, business ethic, or personal history, based on a few forum posts. Case in point... I have an acquaintance who formed a partnership with someone they barely knew. The other party ultimately contributed very little, yet when this acquaintance tried to dissolve the partnership and move on, they ended up with some minor legal issues.

Instead, network with people that are in your local area and form friendships with people that have a skill set that you are interested in. Spend time discussing topics other than business to see if you can even stand to be around them. It make take a while, but be patient. Treat it like marriage, because partnership breakups can sometimes be nastier than a divorce!

</comment><comment><USER3> Have you seen this? <http://news.ycombinator.com/item?id=485813></comment>


Stateful Experiments on AWS Lambda - <AUTHOR> http://christophermeiklejohn.com/lasp/2018/03/10/serverless.html <comment><USER2> The article's conclusion -- that Lambda is cheaper than EC2 instances for this use case -- is completely wrong. The author only counted the per-request overhead, and neglected to add the actual cost of the GB-hours consumed. If each container uses 512MB of memory, then keeping one request running at a time for an entire month costs about $22. For comparison, a t2.nano instance with the same amount of memory costs $4/month.

Lambda is a value-added service _on top of_ EC2. It only makes financial sense to use it when you _don 't_ want something running constantly, or otherwise have a way to take advantage of the extremely fine granularity in billing. (Or if you're willing to pay a premium to have Amazon manage your process lifecycles for you.)

<comment><AUTHOR> Good point.

But, most of the post was meant as joke to see what I could push lambda to do.

<comment><USER3> Someone already published a paper that pushed those boundaries [https://cs.nyu.edu/~anirudh/excamera.pdf](https://cs.nyu.edu/~anirudh/excamera.pdf)

</comment></comment></comment><comment><USER4> Great article, and an interesting use of Lambda, thanks for sharing!

To answer your final question: I wrote a spot instance automation tool, you can check it out at autospotting.org, so I would give spot instances a try. The latest developments from AWS on the spot market are real game changers, I think most of the workloads can now safely run on spot, my AutoSpotting tool makes it a breeze to migrate from on-demand AutoScaling groups while keeping them a bit more reliable than the native AutoScaling integration for spot.

As of a few months ago the pricing is much more stable than before, I've rarely seen terminations even over the maximum three months of history for instances that used to go bust multiple times a day. You also now pay them on a per-second basis, and you can hibernate the last one to keep the state of the group while everything is down.

So my approach for this would be to have an AutoScaling group of the smallest spot instances that can run your app, scale them to N nodes right before your experiment, then when you're done scale down to a single one, which you use as data seed next time, which you detach and hibernate with API calls.

Next time you re-attach the seed to the empty group, and scale out to N once again and run your test. So you only pay for the length of your test on a per- second basis.

You can also keep the seed as an on demand node outside of the spot group and have it run from the free tier if you still have some time left, or just hibernate it as well.

</comment><comment><USER5> Keith Winstein (Stanford) et al's gg [1] is also fun. Sort of `make -j1000` for 10 cents. Create a deterministic-compilation model of a C build task, upload the source files, briefly run a lot of lambdas, download the resulting executable. (Though it's more general than that.)

For folks long despairing that our programming environments have been stuck in a rut for decades, we're about to be hit by both the opportunity to reimagine our compilation tooling, and the need to rewrite the world again (as for phones) for VR/AR. If only programming language and type systems research hadn't been underfunded for decades, we'd be golden.

[1] [https://github.com/StanfordSNR/gg](https://github.com/StanfordSNR/gg) ; video of talk demo: [https://www.youtube.com/watch?v=O9qqSZAny3I&t=55m15s](https://www.youtube.com/watch?v=O9qqSZAny3I&t=55m15s) ; some slides (page 24): [http://www.serverlesscomputing.org/wosc2/presentations/s2-wo...](http://www.serverlesscomputing.org/wosc2/presentations/s2-wosc- slides.pdf)

</comment><comment><USER6> I've found out-of-the-box distributed erlang difficult to run in environments with a lot of instance churn (e.g. containerized deployments on Kubernetes), so much so that I generally opt to not connect my nodes for erlang message passing. Does anyone here have experience running Lasp in Kubernetes? Is Lasp effective in monitoring and adjusting to new or dead nodes?

<comment><USER7> Lasp use Partisan for its distribution, not the default erlang distribution.

It was built exactly to deal with a high level of churn, specifically for edge computing with spotty network. So yes it does.

[https://github.com/lasp-lang/partisan](https://github.com/lasp-lang/partisan)

</comment></comment><comment><USER8> On mobile the characters on your site are literally like a millimeter wide you should fix that

<comment><AUTHOR> Thanks for the feedback.

<comment><USER8> Np mate:) I recommend ghost btw!</comment></comment></comment>


Ask HN: How do you keep track of your personal expenses? - <AUTHOR>

<comment><USER2> I whole-heartidly recommend YNAB (You Need Another Budget). [http://www.youneedabudget.com](http://www.youneedabudget.com)

You have to enter all your income/expenses in manual, but that's part of it's value - it really makes you accountable for what you spend.

Since tracking all expenses for maybe 5 months, I have probably saved thousands of dollars simply by making cheaper choices and being mindful of excess.

<comment><USER3> whole-heartildy agreed. very different way of thinking compared to the post- mortem options like Mint. See [http://www.youneedabudget.com/method](http://www.youneedabudget.com/method)

bonus: here's Jesse Mecham's MicroConf 2014 talk [http://www.microconf.com/videos-2014.html](http://www.microconf.com/videos-2014.html)

</comment></comment><comment><USER4> I use mint.com, which is free and pretty amazing. It makes automatically tracks all of your credit card and bank account activity, creates useful and informative graphs, lets you set up budgets and notifications, and all around is fun to use. highly recommend.

<comment><USER5> It's awesome but it has stagnated and slowly started to go downhill since Intuit (the Quicken/Turbotax company) bought it. First there were no updates for a long time, and recently they FINALLY started changing things a little bit here and there.... those changes being more overt advertising, that is. :(

I wish the mint folks had never sold out. But you can't change the past, so now I just hope Intuit doesn't ruin it before the next personal finance tracking startup comes along to kick mint's ass so I have a replacement.

<comment><USER6> I've been using Mint.com since 2008, and just the other day I contemplated how astonishingly little it has changed since then. The "Investments" section is still as unusable as it was back then (personalcapital.com is running laps around it). I think the homepage/log in screen was redesigned, and as you said, more overt advertising was added. Maybe there were some backend changes, but as a customer, the lack of progress is staggering.

</comment></comment></comment><comment><USER7> I use Money Lover - an Android app that's easy to use and quite usefull. Also for a few weeks now I've started keeping track using Quip sreadsheets.

<comment><USER8> I'm also using Money Lover everyday. The Budgets and Events features are really powerful.

</comment></comment><comment><USER9> Low tech solution that has evolved over time - spreadsheets, fortnightly budget reconciliation, and a hand-written Personal Balance Sheet (which I replicate in the Wealth+ app).

The Budget spreadsheet has a (annual/qtrly/mthly/weekly) budget for about 100 items (this is the bit that's evolved most over 10+ years), broken into 15 categories (including Investment and Cash Reserves; this also evolves). Most expenses are Food or Entertainment - these get a fortnightly cash amount, rather than having to reconcile that individually. Everything else goes on a Debit Card and is recorded - takes us about 20-30mins a fortnight.

The Personal Balance Sheet was a revelation for me at the beginning of last year - suddenly when we talk about money, we're talking about our net worth and assets not how much we spent on lunches or clothes. I write it out longhand as part of my monthly 'Board' financials - so it includes my own business, property, and some categories like Other Business Equity that are currently empty. The Wealth+ App graphs it all, and you can see some cause and effect - our Cash dropped last month because of some renovations, but our Property Values have gone up this month.

A Funds Manager I know who used to lunch with these guys for work once told me high-net-worth-individuals disproportionately use cash - they see money as real, not abstract.

For me, there's an analogy with understanding my finances. Sure, I can have a system spit me out a personal balance sheet each month - but hand-rolling my own in coloured markers connects me to the reality.

I'm always happy to share these templates if it might help anyone - email is in my profile.

[Edit] I should add, I'm going to review the other options in this thread. Like a To Do List app, with Budgets it can be hard to find something that replicates how you do it.

</comment><comment><USER10> Apps definitely. I'm using Saved, fairly new iOS app. It has clean graft, pie chart and a list of expenses in week/month mode. But the main benefit is speed. Saved takes seconds to use at any point, especially during entering figures and immediately get a clear overview of what's going on. I strongly recommend this app, if only you don't demand it syncs with credit card. [https://www.snappymob.com/saved/](https://www.snappymob.com/saved/)

</comment><comment><USER11> Step one is to use cash as little as possible. Then practically any reasonable thing you pick (Mint, Quicken, etc) can pick up your expenses from your credit card or bank.

</comment><comment><USER12> Excel.

Learn and practice double-entry accounting including how to manage many accounts: payable accounts, receivable accounts. For a personal solution, it can't be beat (IMHO).

<comment><USER13> Any suggestions on where to start learning?

<comment><USER12> I've recommended and have had good feedback on the Coursera course Introduction to Financial Accounting.

</comment></comment></comment><comment><USER14> I have tried serval applications on both PC and smartphone, but 6 months ago I decided to stick to Money Lover every day. Easy to use, friendly and it contains most tools and functions I need to manage my expenses. I extremely love the function Event Mode which support users tracking all spending during trips. And web version is pretty cool, very simple for lazy guy like me.

</comment><comment><USER15> I switched from Mint to Personal Capital ([https://www.personalcapital.com](https://www.personalcapital.com)) and haven't looked back. The interface is more modern, and the graphs and summary emails are more on topic with what I care about in my spending trends.

</comment><comment><USER16> I like ledger-cli.

Open source, command-line, double-entry accounting system that handles multiple currencies, stocks, recurring payments, etc with highly customizable reporting.

[http://www.ledger-cli.org/](http://www.ledger-cli.org/)

</comment><comment><USER17> I use Shoeboxed. [https://www.shoeboxed.com/features/](https://www.shoeboxed.com/features/)

I just send them a prepaid envelope full of my receipts every week or so.

</comment><comment><USER18> I keep track of my expenses in gmail. I manage them with scalc.</comment>


2FA using a postcard - <AUTHOR> https://shkspr.mobi/blog/2017/06/2fa-using-a-postcard/ <comment><USER2> Google uses a postal-card OTP for Google MyBusiness service, to verify address for business listings. That is how you create Google Maps and Google Plus pages [https://business.google.com](https://business.google.com)). They again re-verification if the business address changes.

I think it is a very smart & less cumbersome way to verify physical address.

</comment><comment><USER3> I agree with the comment that the email hint is totally unnecessary, and the ambiguous 3 day expiry window is too confusing in an world where post might take 1 - 2 days to arrive. Additionally the postcard aspect means people at every point along the delivery chain can read the back and front, why not just send a letter?

As a side note, I really like the way the author of this blog has constructed his "Contact Me" bit at the bottom, it's very intuitive, clever, and uses URI schemes where appropriate, nice job!

<comment><USER4> I think it's likely that it probably doesn't expire, or has an expiry longer than 3 days; saying that the code expires gives a sense of urgency. I'm sure it helps with conversion, as this is yet another step of the onboarding process.

<comment><USER5> > _saying that the code expires gives a sense of urgency_

It also is, quite literally, lying to people. I personally hate when businesses do that.

</comment></comment></comment><comment><USER6> > This is a nifty way to lightly verify someone's address! A service could ask > for scans of utility bills, or driving licences, but this is a lot simpler.

It's also an invalid way to verify where someone lives. It's possible to "verify" any address at which you can have mail sent to your name and receive, for example, a previous address, an office, a co-working space, an abandoned building or vacant apartment, etc.

This is why it's such a big deal that Nextdoor makes each user's address public inside their neighborhood group by default — there are trivial ways to get into a neighborhood group.

</comment><comment><USER7> The Danish national identity system uses a code card as the second factor.

Picture of a card: [http://2.bp.blogspot.com/-bhasaP2UfVA/T-itxSP6-uI/AAAAAAAAAF...](http://2.bp.blogspot.com/-bhasaP2UfVA/T-itxSP6-uI/AAAAAAAAAFk/KOR44E5angY/s1600/NemID- Card1.png)

Site: [http://NemID.nu](http://NemID.nu)

<comment><USER8> Also known as one time passwords. These are great and way underused.

</comment></comment><comment><USER9> I had a Japanese site verify my address by sending me a postcard by registered mail. If the postcard got delivered they presumed the address was valid, if the post office failed to deliver they knew it was fake. No need for any action on the user's end.

When they Swedish post office started their online portal back in the mid-to- late 90's they would mail your initial password home when you signed up. I guess because postal mail is all they knew?

<comment><USER10> For the Japanese service, did anything prevent users from putting an address that received mail, but wasn't theirs?

</comment></comment><comment><USER11> If anyone is looking for a fun side-project, this sort of postal verification could be part of bootstrapping a citizen-controlled national digital identity system. The system would also leverage the official gov election form that checks if you're registered to vote, resurfaced with an API.

This approach has the interesting property that, in order to cheat this unofficial system, you've have to commit either mail fraud (interception) or vote fraud (fake entry in election registry).

Canadian proof-of-concept here: [https://github.com/patcon/id.c4nada.ca](https://github.com/patcon/id.c4nada.ca)

Ping me on Twitter if you're interested in working on this in Canada or any other jurisdiction. Would be rad to create an auth system for citizen projects to validate identity/ward/district/state with high assurance. That way, user desires can be passed to reps with reasonable certainty that numbers reflect real voters.

And could start doing fun stuff with encryption keys or keybase integration or things like that ;)

<comment><USER12> We already do this in Denmark and the company is looking to USA too

</comment></comment><comment><USER13> How about verifying against the national identity database. No need to second guess identity / address, etc. Isn't that exactly why we've got strong identity, that it's very easy to validate it. I wonder why some services use all kind of pseudo methods, when there are strong and proven methods available. Also postcard is bad, because it's not registered mail, where recipient identity is verified. Some businesses do use that. But it's still worse than using online id. Because it's still more likely that the identity verification when receiving mail, isn't done properly.

<comment><USER3> The UK doesn't have a national identity database.

<comment><USER14> The defacto databases for residency are those held by the UKs 3 main credit reference agencies, who all have access to the electoral roll and offer address verification as a service.

e.g. [http://www.experian.co.uk/business-express/identity- solution...](http://www.experian.co.uk/business-express/identity- solutions/identity-check/)

<comment><USER15> Those services/databases don't really verify anything though. They tell you if the details given match a person, but they don't verify that the person giving them is who they say they are.

Last year I had a number of cases of identify fraud. In one case somebody went into a phone shop, gave just my name and address, and walked out with a iPhone 7 and a £60/mo contract. As the director of a limited company my name, address and date of birth are public record, so it seems really stupid that this is how identity is usually 'verified' in the U.K.

As there is no way to remove yourself from these databases (short of committing credit score suicide), I now pay £10/year to be on another database:

[https://www.cifas.org.uk/pr_for_individuals](https://www.cifas.org.uk/pr_for_individuals)

</comment></comment></comment></comment><comment><USER16> American Radio Relay League (ARRL) employs postcard based recipient verification for amateur radio operators by mailing to their registered license address with FCC, a public record. They use this to sign a user certificate (X.509) which presently can be used to access Logbook of the World (LoTW), a web based logbook for radio operators to record contact with other operators.

</comment><comment><USER17> Couchsurfing uses the same address verification method (postcard sent to your home with a code). That one is powered by Lob. Maybe this one is as well?

</comment><comment><USER18> How is this a 2FA?

<comment><USER19> Because it's a second factor beyond your password.

<comment><USER20> This is just address verification using a mailed-in code. 2FA term describes a system that uses a second factor for _authentication_. This one uses a code sent by mail for registration (where first authentication is part of the registration).

</comment></comment></comment><comment><USER21> I've seen posters in the streets from one of the hyper-local social networks that have a per neighborhood code on the poster. You use that code to sign up for your neighborhood.

</comment><comment><USER12> Denmark already does postcard 2FA called NemID for all its citizens

<comment><USER22> But the price/speed of mailing in DK puts the method out of grasp for most organizations.

<comment><USER12> They get over this by mailing 100 at a time

</comment></comment></comment><comment><USER23> ricardo.ch (similar to craigslist) is doing the same in Switzerland. I think this gives the user the impression that he has to be responsible about his actions on the website.

<comment><USER24> More that it weeds out all the scammers hiding behind fake adresses.</comment></comment>


Ask HN: Why are many people so bad at opsec? - <AUTHOR> Because I swear, we hear about a new 'anonymous source' or darknet market owner getting identified every week or so now, and it just makes me wonder why.
Why, despite all the want for anonymity online are people so bad at keeping it going? What makes so many people trip up, even the ones whose lives and occupations rely on staying out of the public eye?
It's not like it's theoretically impossible; Satoshi Nakamoto figured it out pretty well when creating bitcoin. And surprisingly, quite a few people seem to do pretty well without trying. Like various fan game and game mod creators, some of which seem so secretive that you wonder whether they're still alive or not.
So why does everyone keep tripping up here? <comment><USER2> Desire to brag?</comment>


Bitcoin Is the Revolution - <AUTHOR> https://hackernoon.com/bitcoin-is-the-revolution-2aac943acd97 <comment><USER2> Weel, you know, we all want to change the world</comment>


Ask HN: Recommendations on Chat Application - <AUTHOR>

Basically pretty much what the title says. The news on WhatsApp today got me thinking (I've never used it) that I need to replace my existing chat solution (GoogleTalk). There are many different ones out there like WhatsApp, Telegram, Silent Circle, Line, ChatSecure, Cryptocat, WeChat, Kik, Hangouts, etc.<p>I'm curious about anyone's experience with any of these and I think I'd ultimately like one that's more secure if the options are there. Also, I really need it to be compatible both with mobile devices and on the desktop in some form. <comment><USER2> Hipchat* - Mobile + Desktop support, along with a simple API and lots of integration points out of the box for Jira/Bamboo etc etc

*Disclaimer: I work for Atlassian

<comment><USER3> HipChat's fatal flaw, IMHO, is publicly-accessible file downloads, even in private conversation, with no ostensible lifespan (that I've seen). While the URL for shared files might be extremely hard to guess, I can never feel comfortable not being able to predict what files someone might openly share.

<comment><USER4> Agreed. Also, coming from iChat before Hipchat, sending files on the same network was so fast. I hate that Hipchat requires me to upload the file to an external server... It's handy for members of our team that are out of office though. I'd rather everyone's files ended up on our internal server, even if it was a little slower for outsiders.

</comment></comment></comment><comment><USER5> I just discovered Telegram and it looks great so far. The iPhone app looks pretty much exactly like WhatsApp. The source code is released under GPL, developers can use their API, and the protocol is documented on their website.

They have official apps for Android and iOS, and there are several unofficial Desktop/Web/CLI clients.

[https://telegram.org](https://telegram.org)

</comment><comment><USER6> I helped build Chat Simply: [https://www.chatsimply.com](https://www.chatsimply.com) it is XMPP backed, has Windows and Mac OS client as well as iOS. It is also web-based so you can use it in your browser if you would like. It is free but has some "Pro" features for a reasonable yearly fee.

BTW we officially launched it today, so this is good timing :)

</comment><comment><USER7> I would say it depends who are you using it to talk with.

If you want secure chat I like jabber + otr

<comment><USER8> That's a good setup for ...

(If you have to ask you're not authorized to know)

</comment></comment><comment><USER9> Threema - [https://threema.ch/en/](https://threema.ch/en/)

<comment><AUTHOR> Unfortunately, it's a total non-starter for me if there is no desktop app.

</comment></comment><comment><USER10> Slack.com seems quite nice, built on top of irc.</comment>