ImmortalDB – A resilient key-value store for the browser - <AUTHOR> https://github.com/gruns/ImmortalDB <comment><USER2> While I appreciate the work done I feel this is conceptually problematic and is somewhat nefarious in nature, just like "evercookie" that it's based on.

> clearing cookies is a common user action, even for non-technical users. And > browsers will unceremoniously delete IndexedDB, LocalStorage, and/or > SessionStorage without warning under storage pressure. ImmortalDB is > resilient in the face of such events.

When a user (especially a non-technical one) clears cookies, their sole objective is to remove their identity and "start fresh". That's the expected outcome and this library violates that expectation. Also, the reason the browser "unceremoniously deletes" some storage areas is because they are not meant to hold 100% persistent data. So in both cases, the "right" thing to do is respect the end goal of the action and _not_ restore it.

Furthermore, this library should not be used for sensitive data but likely will. This is because sensitive data should not be stored in local storage but rather in cookies [0] as they have better security options with "httponly" mitigating leaks via XSS and scope narrowing with Domain and Path. Local Storage is available to any script on the domain including any 3rd party script in the page.

> Strikes an equitable balance between reliability and respect for the user. > That's a fancy way of saying "Doesn't fully respect the user".

[0] [https://www.owasp.org/index.php/HTML5_Security_Cheat_Sheet#L...](https://www.owasp.org/index.php/HTML5_Security_Cheat_Sheet#Local_Storage)

</comment><comment><USER3> > Strikes an equitable balance between reliability and respect for the user.

Is it just me, or is that a novel interpretation of "respect for the user"?

"I'm going to continue to track you even after the usual and expected method of preventing tracking in the browser is used, but if you jump through an unexpected hoop that's not documented to the user, then I'll grudgingly delete my tracking data..."

<comment><USER4> It depends on how the data is used and if an easy delete option exists. There is a valid use case for working around _browser_ behaviour not user behaviour:

 _> browsers will unceremoniously delete IndexedDB, LocalStorage, and/or SessionStorage without warning under storage pressure_

If you have an app that stores a small amount of data client-side (preferences, data to allow operation while unable to connect) but is not used very often it's stored state could be evicted because of a few large apps because the browser drops data on a "last used" basis because it has no way of knowing that this bit of data might be more important than the data touched more recently. The user might not want a small amount of practical data for an app that they used on their morning commute being evicted because they've touched some large games over the weekend. For a large device this isn't going to be an issue as you are unlikely to be that limited for space, but for a cheap phone with limited storage it could be a real inconvenience.

Any app doing this should have a very easy and obvious "purge my data from this device" option, to maintain the user control. In fact to do it properly right, the local storage should be opt-in ("Do you want to keep some data locally to speed up this app and allow it to be used offline? Yes / Not now / No and don't bother be again") with the app continuing to function without the local data cache.

 _> I'm going to continue to track you even after_

Of course it _will_ get used for this, it would be naive to think otherwise, it is after all essentially a structured evercookie, but that doesn't stop the idea having good uses too. The existence of arsonists doesn't mean you need to ban all uses of fire.

</comment></comment><comment><USER5> > _And browsers will unceremoniously delete IndexedDB, LocalStorage, and /or > SessionStorage without warning under storage pressure._

I get why it's doing this, but it strikes me as fairly user-hostile to react to the browser deleting data under storage pressure by duplicating the data so it now takes up 4x the space it used to.

<comment><USER6> What if it is something small but very important. That seems like it would be the opposite of user-hostile.

<comment><USER7> So it is not user-hostile when you don't respect the user's attempt to delete data? It seems condescending at the very least.

</comment></comment></comment><comment><USER8> The real world equivalent that I can think of is being stalked even after moving to a far off location taking care not to leave a trace but inadvertently left one or two things around.

With many user hostile and invasive solutions, browser makers should take a stronger stance on clearing all local data simultaneously (cookies, local storage, IndexedDB, etc.). If someone wants a resilient client side data store, apps are one solution. Websites shouldn't be doing this or allowed to do this in a (standalone) browser.

</comment><comment><USER9> This seems...really valuable, mainly for me is the case when we want to store a value for a user locally but they have browser restrictions preventing it. Primarily, this is the case with corporate users running within their environment where the domain admin has misconfigured their PCs and thus unintentionally disallowed localStorage (I've experienced working with two large corporations, I literally had to get one of them to send me the laptop to figure it out cause they didn't think they had disallowed local storage, it had happened unintentionally).

<comment><USER10> > Primarily, this is the case with corporate users running within their > environment where the domain admin has misconfigured their PCs and thus > unintentionally disallowed localStorage

Safari in Private Browsing also used to do this too, which happens to completely break a surprising number of websites.

<comment><USER11> Safari didn't remove or 'break' localStorage, it simply responded with QuotaExceededError, indicating there's no more space available.

</comment></comment></comment><comment><USER12> Automatically recreating cookies whenever users delete them is the opposite of "respect for the user."

<comment><USER4> I think people are reading this backwards. It isn't just using local storage and indexeddb to protect cookie values from being wiped (by the user), I can see it being more useful for using cookies as an extra store to protect localstorage/indexeddb from being cleared by the browser.

The user can still clear the data manually (clear cookies and other local data) or through a properly written app (which implements a "remove my records from this device" option, and preferably makes the local storage opt-in anyway).

If you are thinking of using this maliciously then you wouldn't use this: you'd use the already existing evercookie instead as it survives more (at the expense of potentially imparting more load on the users browser).

</comment></comment><comment><USER13> Hey guys. I'm Ansgar. I built ImmortalDB.

Don't hesitate to let me know if you have any questions or comments about ImmortalDB. Feedback is how good products become great.

<comment><USER14> what caused you to write this library? do you believe it will be used for nefarious purposes?

thank you for open sourcing your work

<comment><USER13> > what caused you to write this library?

On smaller devices, a few kb of important data in LocalStorage was periodically deleted without user intervention.

> do you believe it will be used for nefarious purposes?

If one is nefarious of heart, [https://github.com/samyk/evercookie](https://github.com/samyk/evercookie) supersedes ImmortalDB.

</comment></comment></comment><comment><USER15> What is the storage limit? Would be nice to offer some kind of helper function to return that. For instance, I want to store a base64 encoded image. I believe there is a 10MB limit imposed by Chrome on local storage (or something similar). Bypassing that restriction locally would be great. Could be a nice feature of ImmortalDB.

<comment><USER16> That won't fit in cookie space... this is really for redundant controls for session/access tokens etc... anything large like that you're better off using caching and a service worker to handle repeated requests. Also, cookies are sent with every request to the server, and I don't think you'd want the user sending 10MB to your server for every request.

Also, if you are storing larger strings in local/sessionStorage, websql or indexdb, you should use lz-string[1] to try to minimize storage impact.

Aside: if you want something with a nicer interface for underlying storage you may want to look at pouchdb[2], which has a localized couch interface and supports remote synching to coudchdb, which is pretty nice.

[1] [https://github.com/pieroxy/lz-string](https://github.com/pieroxy/lz- string) [2] [https://pouchdb.com/](https://pouchdb.com/)

<comment><USER15> Yeah, about those cookies - I don't want them ([https://github.com/gruns/ImmortalDB/issues/6](https://github.com/gruns/ImmortalDB/issues/6)). I just want to permanently store large data in the browser. ImmortalDB sounded like the right thing to abstract away everything and make it sticky.

<comment><USER4> You can tell it not to use cookies, to get around the problems of them being more limited in size and being sent on each request so wasting bandwidth.

I'm guessing a mix of localstorage and sessionstorage isn't al that useful (I can't imagine a circumstance where localstorage is being cleared when sessionstorage isn't also or hasn't already been) but localstorage+indexeddb might give you some useful level of protection.

</comment></comment></comment></comment><comment><USER17> Cool project. I wonder how it persists after clearing browser history/cookies/LocalStorage.

<comment><USER18> It doesn't: "Data is stored reliably but can also be voluntarily purged if the user designedly clears cookies and application storage".

<comment><USER17> Then that's inconsistent with the beginning of their readme:

> For example, clearing cookies is a common user action, even for non- > technical users. And browsers will unceremoniously delete IndexedDB, > LocalStorage, and/or SessionStorage without warning under storage pressure.

> ImmortalDB is resilient in the face of such events.

I guess that's a good thing. I was worried about the next browser supercookie being made with a library like this.

<comment><USER19> It's based on Evercookie [https://github.com/samyk/evercookie](https://github.com/samyk/evercookie) which is a little less... friendly.

<comment><USER20> >Its goal is to identify users after they've removed standard cookies and other privacy data such as Flash cookies (LSOs), HTML5 storage, SilverLight storage, and others.

AKA

>Its goal is to identify users after they've taken actions to not be identified

 _sigh_

</comment></comment></comment></comment></comment><comment><AUTHOR> I just wondered why there is only support for IndexDB and not for WebSQL. Turns out all modern browsers support IndexDB by now :)

<comment><USER16> Though websql, where available, is often faster. It's one of the more common overrides for pouchdb to override the user order in favor of websql where available.

<comment><USER21> Isn't WebSQL deprecated?

<comment><USER22> Yes, and 10 years after its deprecation, WebSQL is still shipping with Safari and Chrome (worth pointing out that these 2 browsers completely dominate the market).

Interestingly, neither Apple nor Google were pro-deprecation; Mozilla, and to some degree Microsoft, spearheaded the move to standardize on IndexedDB.

Moving forward now that Edge is based on Chrome, maybe there's hope for WebSQL after all. Not that it will be undeprecated, but if 98% of the browser market supports WebSQL then it's effectively a non-standard standard.

<comment><USER23> The "standard" would have basically read "link your browser with SQLite v3.x.x or an exact bug-compatible clone".

An attempt was made to break down the SQL dialect and exact behavior of that version of SQLite, but the objection was that it's not really great to reverse engineer a standard from a single vendor implementation even if that vendor's product is open source. (eg. what happens when sqlite changes? do browsers stay fixed on an ancient exact version?)

</comment></comment></comment></comment></comment><comment><USER24> Can anyone explain why there's a leading semi-colon in the inline script example? AFAICT it doesn't do anything.

<comment><USER25> Some people for some reason write javascript without semicolons, if they do that you cant safely concatenate javascript files together since the file2 may modify file1's last expression, putting a ; at the start guarantees to complete the last files expression if they havent already done so. A bunch of concatenators will do this automatically / by default

<comment><USER26> You are correct that this is an issue when writing JavaScript without semicolons, but it's also an issue if you place an IIFE (immediately invoked function expression) directly after a function, even if you're using semicolons:

      function hasSemicolons() {
        console.log('hello world');
      }

      (function() {
        console.log('this is broken, JS will call hasSemicolons()');
      })()

In the ImmortalDB example, since it's a standalone <script> tag this is just extra defensive against a minifier that would join the tag with other tags, but just wanted to call out that there's a reason to include the leading semicolon in front of an IIFE whether or not you write your JavaScript with semicolons.

See also: [https://stackoverflow.com/questions/1873983/what-does-the- le...](https://stackoverflow.com/questions/1873983/what-does-the-leading- semicolon-in-javascript-libraries-do)

<comment><USER24> So I tested this out in Firefox. I think you're wrong. I never see 'hello world' even if I remove all the whitespace between the functions.

</comment></comment></comment></comment><comment><USER27> nice.

I assume, still, it should not be used to store JTW refresh tokens, or anything where secure storage is required.

<comment><USER28> I don't see why not - at least if you're comfortable with client-side code on the website having access (implicit or explicit) to the token. Certainly nothing you store on the client side is secure against an untrusted user, so you should only store the user's own secrets, not things you wish to keep secret from the user. And anything you intend to make _use_ of fro the client side must be usable from within the website, so anyone who can get code execution on the website (e.g., via XSS) has already gained access to whatever you're trying to protect.

I see a handful of blog posts on the internet arguing that HttpOnly cookies are a more secure storage place than web storage, because HttpOnly cookies are only vulnerable to CSRF attacks and not XSS and CSRF is easier to defend against. This argument is, as far as I can tell, completely flawed: if an attacker is able to execute XSS, they're then able to use that XSS to execute same-site forged requests - they no longer have to bother with the "cross- site" part of CSRF. They can just fetch your anti-CSRF token with a normal XHR after having executed an XSS, and then they can make arbitrary same-origin requests against your website, each of which gets sent with the HttpOnly cookie.

<comment><USER27> JWT refresh tokens are equivalent to passwords. (they are active for days at a time).

I do not know of many web apps that store passwords in browser storage.

Unlike passwords, JWT refresh tokens are created programmatically (not entered by user interactively).

Perhaps,I am just missing a link, but I though browsers do not allow an application to programmatically store passwords securely

<comment><USER29> If you don't persist JWT in localStorage or sessionStorage, how would you handle page reloads? You'd have to rely on a session cookie and get a new JWT from your auth service. You'd solve XSS but get CSRF.

Storing a JWT in localstore isn't the same as storing a password in plain text. JWTs are indeed non-revocable, but they are also non-durable (ours expire after 24 hours) and cannot be renewed without a refreshToken. Most people also do not rely on JWTs to write important information (like password reset) because there are more secure alternatives for these specific use cases.

As an aside, if someone gets script access to your SPA, you're already very far up shit creek. If your user types in any sensitive information like a password to login you've lost the war. Securing the JWT is the very least of your concerns at that point.</comment></comment></comment></comment>


Show HN: Look for Beta Tester for Userlike (Website Tracking and Chat Tool) - <AUTHOR> http://userlike.com/#

<comment><AUTHOR> What do you think of it?</comment>


Tablet baton passes from Apple to Android - <AUTHOR> http://linuxgizmos.com/tablet-baton-passes-apple-android/

<comment><USER2> Yeah ok. Considering the source is "linuxgizmos.com" Just measuring "shipments" is a ridiculous metric because Mororola shipped millions of their tablets, yet most of them were shipped right back. Shipments do not equal end- user sales.</comment>


Crypthol App – The World's First Free Cryptocurrency Trading App Launches - <AUTHOR> https://www.crypthol.io <comment><USER2> this looks like an awesome project. cant wait for the release</comment>


Ask HN: How do you plan your side projects? - <AUTHOR> This past week I have been doing event storming at work and making plans have created a large backlog for the next several months.
It made me think about how I could use improvement in my planning for side projects that I work on. I am curious how others go about this.
Do you perform any sort of detailed or formal planning, or do you just play it by ear? I realize that everyone functions differently, and I for one know I am more productive when I have a plan in place. But I am curious to hear what others are doing.
Edit:
Or maybe another question is "Do you plan your projects?" In the past, I have often jumped straight into an idea I would have without any sort of planning. If I could keep working at it, uninterrupted, while my gears were turning I could get a lot done. But if I encountered any sort of walls, that meant instant defeat. <comment><USER2> My plan consists of waking up at 5 am and going to bed at 10 pm. If I work on it on the first 3h of my day, when I go to work I've already worked on my side project and there's nothing anyone can do about it :)</comment>


How to Objectively Reason About Systems: Correctness Properties of a System - <AUTHOR> https://priyankvex.wordpress.com/2019/01/06/how-to-objectively-reason-about-systems-correctness-properties-of-a-system/ <comment><USER2> Thanks for sharing here :)</comment>


Pao vs. Kleiner Defense Rests Its Case, Showcasing a Different Side of the Story - <AUTHOR> http://techcrunch.com/2015/03/21/pao-vs-kleiner-defense-rests-its-case-showcasing-a-different-side-of-the-story/ <comment><USER2> It may go Pao's way after what the Judge (Kahn) did and said today:

"Kahn said there was enough evidence for the jury considering Pao's lawsuit to conclude that Kleiner Perkins acted with malice, oppression or fraud, which in California is the legal threshold for awarding damages that are designed to punish and deter particularly bad behavior."

"Per this standard, there is sufficient evidence from which a reasonable juror could conclude that Kleiner Perkins engaged in intentional gender discrimination by failing to promote Ms. Pao and terminating her employment,'' the judge said in the one-paragraph decision."

</comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment>===

It's a shame, because the jury will take this as 'direction' from the judge.

Pao should lose here.

1) She had a consensual relationship with another employee, Ajit Nazre, at the firm.

2) She broke it off then complained to HR that he was still bugging her.

3) John Doerr himself (the top guy at KPCB) was made aware of her complaint to the HR department and was going to fire Ajit Nazre.

4) Pao then pleaded with John Doerr and the other senior partners not to fire Ajit Nazre. Those 'pleading' emails she sent were read out loud to the jury.

5) And now she complains the firm did nothing to 'save her' from Ajit Nazre ?!

Then she thought "let me add some 'gender discrimination' to my lawsuit here." And yet three other female employees of the firm testified there was no discrimination against women. One of the women spent 15 years at the firm too. And she no longer works there, so has no reason to hold back anything.

Unfortunately, with the judge sending a strong signal to the jury today, Pao is probably going to win here.

<comment><USER3> I submitted this story a few days ago which didn't get any upvotes but elaborates on your point

[http://recode.net/2015/03/20/ellen-pao-and-the-case-of- the-m...](http://recode.net/2015/03/20/ellen-pao-and-the-case-of-the- mysterious-missing-admins/)

> Ellen Pao said she filed her gender discrimination lawsuit against Kleiner > Perkins Caufield & Byers partly because of three female administrative > assistants who had been discriminated against because of their gender — and > only with Pao's lawsuit and a meaningful settlement would the firm take > women's issues seriously.

> There is only one problem: No one in the courtroom seems to know where these > admins are. No one seems to know the details of their grievances. No one in > court, including Pao, even knows all their names.

> Pao also said she was told by Kleiner Perkins talent partner Juliet de > Baubigny that Nazre was a "sex addict." To her, that pointed to a larger > unspoken history. "I thought she must have additional information and maybe > about the administrative assistants," Pao said.

> Asked on the stand today whether she ever called Nazre a "sex addict," de > Baubigny replied, "No, that is completely ridiculous."

<comment><USER4> Would being a sex addict be punishable in court? I mean is it in any way illegal?

<comment><USER5> You're supposed to feel sorry enough for her to give her millions.

</comment></comment></comment></comment><comment><USER6> Pao and her husband can play this game better than most. [http://recode.net/2015/03/12/kleiner-perkins-cant-talk- about...](http://recode.net/2015/03/12/kleiner-perkins-cant-talk-about-ellen- paos-husband-and-his-finances-judge-rules/)

</comment><comment><USER7> I'm surprised at how effectively the defense painted the incidents of sexism as simple misunderstandings. The book, the dinner, their defense seems effective.

Not saying I believe them, just saying they're sort of convincing. Of course, these could be simple misunderstandings and she was still discriminated against.

</comment><comment><USER8> From this article, it sounds like Pao is just trying to extort money out of this company.

Pao also sounds extremely self-centered. An example is thinking a book of poetry is a sexual advance. After reading this, I question what she considers "sexual advances".

<comment><USER9> I find it fascinating that the judge won't allow any discussion in regards to Pao or her husband's finances, which would fairly bring into question why she filed the suit.

<comment><USER10> How does her motivation for entering a lawsuit change the facts of the discrimination? Either she was unlawfully discriminated or not. Just because she's tight on money a jury should somehow weight that into their decision? They need to start determining not only if was she wronged, but does she also deserve restitution? That's fucked up.

</comment></comment></comment><comment><USER11> At worst, Ellen Pao is like Michael Brown: not sympathetic, not a victim, but with a story that is still illustrative of systemic bias and wrongdoing. At best, she's a hero for taking on a prominent VC firm and putting her whole professional life at risk. My guess is that reality is between those two endpoints.

First, Kleiner's been playing _really_ dirty. It's one thing to say, "We didn't do anything wrong" and call witnesses to argue that there isn't a persistent pattern of gender bias. It's another to push your own employees (who can't say anything other than what you tell them to, since you can take their jobs away, and most people would rather commit perjury than get fired, because when it comes to he-said/she-said civil matters perjury is almost never prosecuted) into talking smack about someone who left 3 years ago. Bringing her husband and his finances into it is also beyond the pale.

The character attacks being made against Pao are also transparently sexist ("a female chip on her shoulder"). Yes, she played politics, and sometimes clumsily. She probably felt that she had to make many of the moves that she did. For example, her request that Nazre _not_ be fired could have been motivated by a concern for her own safety, or out of a fear that his being fired because of her would lead to out-of-band professional retaliation (against her, or against Kleiner) later on down the road. VC is a clubby world; you can understand why she'd plead for someone not to be fired, even after being wronged by that person.

It's also possible that these two seemingly contradictory claims are true: (a) Kleiner Perkins does not have systemic bias against women, and (b) Ellen Pao was a victim of gender discrimination. (I'm not saying that _either_ is true. I'm saying that both could be true at the same time.) One case isn't a pattern. It might be an isolated fuckup by a now-fired employee that KPCB (out of negligence rather than intentional discrimination) failed to correct. It still needs to be addressed. For example, I might be a person with no pattern or history of killing homeless people (as it were, I am, since I've never killed anyone) but if I go off and kill a homeless person, then I should be tried, convicted and jailed. The lack of a pattern doesn't matter. The fact that you could have 99 homeless people testify that I never killed them doesn't matter. If I kill one, I belong in jail.

Here's how it looks to me: Ajit Nazre damaged Ellen Pao's reputation within the firm, after she broke off a sexual relationship. He _used Kleiner 's performance review system and its culture_ to ruin her career. I doubt that its HR system and culture were _designed_ to ruin womens' careers, but that's beside the point. Ill-designed buildings that drop snow or ice on people from great heights, and kill them, weren't designed to murder people, but we still hold the developers and architects responsible for negligence.

After Nazre destroyed Pao's reputation, she struggled to recover and could not. KPCB did not do enough to help her recover; that is clear and obvious to me. It could have reached out and extended invitation to, for example, events like the ski trip and the meeting with Al Gore. It could have formally cleared her name and improved her performance review. As far as I can see, it didn't. That may not have been intentional discrimination, but it was severe negligence. It doesn't matter whether John Doerr is sexist; it doesn't seem that he is. But that's not the point. If KPCB didn't do enough to clear her name, then it should be held responsible even if it was Nazre himself who was guilty of the gendered component of the harassment.

<comment><USER12> As usual, Mr. Church chimes in with the most accurate and nuanced analysis of one small broken piece of Valley culture.

</comment></comment><comment><USER13> What I take from the case - there is rampant sexism in the industry but she was not harmed by it, because she is a Machiavellian cutthroat overachiever ...

The blackbook especially shows she did the groundwork for that case way back ...

<comment><USER14> Let me rephrase that - "there is rampant sexism in the industry, leading to harm to pretty much every woman in the industry, but only a Machiavellian cutthroat overachiever will manage to drag the whole industry into court to demonstrate the rampant sexism in front of a jury."

The first half of your sentence condemns Kleiner and suggests that the laws under consideration here should be applied fully - else why do we have them?

PS - laying the groundwork for a case years prior is exactly the kind of top notch risk-management capability we wan running major companies. As DeMarco says "risk management is project management for grown ups"

<comment><USER13> Because I cannot see her as a victim and only as a player in the game that was dealt somewhat weaker hand. Of course all of Lady McBeths of the world have the same protection under the law ... I just don't feel sympathies for them.

<comment><USER14> The major part of her hand was dealt when she got two X chromosomes.

If you agree (and it seems so with "sexism is rampant) that Kleiner was discriminatory, then what does it matter how Machiavellian she was or was not. The case is about their actions not her sympathy-worthiness.

I think you have to respect her ability to take this to the mattresses, even if you can see the PR briefings against her (husband was doing something illegal etc).

If you feel "playing politics" is a bad thing, I would suggest that the centuries long battle to achieve legal equality, will be as nothing compared to persuading politicians to pass anti-Machiavellian laws ...</comment></comment></comment></comment>


Selling to Developers [audio] - <AUTHOR> http://a16z.com/2016/04/13/selling-to-developers-open-source-business-models/ <comment><USER2> TL;DL?

<comment><AUTHOR> I can't recall every bit of the podcast but these are a few points that were mentioned —

\- In the past five years, developers have gained a nontrivial influence in purchasing decisions of enterprises.

\- Developers look forward to buying tools that they can use. They are, more or less, unmotivated by marketing talk.

\- The business model of selling support and maintenance / services over a fully open source core (RedHat, MySQL) is not a usually a great idea. Both of those companies took a long time to built their Open Source base.

\- The better approach is to have parts of your product open source while still having significant benefits to up-sell.

\- The best B2D companies would the ones that can execute sales on two levels — the developers who will be the end-user of the product, and head of IT departments (like, CIOs).

\- Open source is likely a great marketing tool for selling to developers but it should be regarded as an important one — more precisely, your best engineers should work on your open source core, instead of your proprietary product. (I have personally seen companies focusing on doing open source only in a shoddy way).</comment></comment>


IBM Bans Remote Work Company Wide – Move or Leave - <AUTHOR> https://www.theregister.co.uk/2017/02/09/ibm_workfromhome_cull_companywide/ <comment><USER2> > In a video message to her troops, seen by The Register, chief marketing > officer Michelle Peluso said "there is something about a team being more > powerful, more impactful, more creative, and frankly hopefully having more > fun, when they are shoulder to shoulder."

Sounds like a lie. If it's clearly a win for everyone, then remote employees wouldn't be working remotely to begin with...

<comment><USER3> How so?

Who said "it's clearly a win for everyone"?

Obviously people might want to work remotely at the expense of the company and fellow work mates.

If bad practices allow this, then the company and in house people are effected.

Remove them and current employees and the company would be better off?

I don't get the logic?

<comment><USER2> Words like "more powerful" and "more impactful" don't describe anything. My logic is why allow remote work to begin with if they already know the benefits and drawbacks, and then why ban it? What changed? That is what the flowery wording is avoiding.

</comment></comment></comment><comment><USER4> IBM's most prolific female patent filer works from home. [http://lisaseacat.com](http://lisaseacat.com)

Facepalm.

</comment><comment><USER5> Working in the office is something I have always wanted as a frequent remote employee. I think it is great for communication and for the culture.

This specifically is _very_ heavy handed. IBM apparently had a culture that supports this, so it is probably more akin to a layoff than a policy change. It says 30 days to conform-- not nearly enough time to make such a decision nor have this properly aligned culturally.

This may be good for morale among those disallowed remote work, feeling the company now provides "fairness" across all departments. I still think this looks like a layoff/ageism as they are comitted to hiring 25k more employees and married folks with children likely to be less mobile.

I like on site teams. I think remote work has a place, especially for those who have absorbed a companies culture, but this doesnt seem like the way to do it.

</comment><comment><USER6> IBM has about 700+ people in two different development centers in Louisiana, with a goal of 1200 total. There has been no word here about the employees having to relocate to one of the locations listed in the article, nor has there been any mass layoffs.

It was published around may of 2016, that IBM was planning to layoff roughly 14000 people, I'm willing to bet, this is more a part of that strategy than it is about people working together.

<comment><USER7> A friend who's company was bought by IBM is being laid off shortly. He supposedly will be getting an offer to relocate to Baton Rouge.

In Massachusetts they moved a lot of work to way outside the city to the 495 beltway (littleton). Employees loved that.

(I used to be an IBMer at Yorktown Heights)

</comment></comment><comment><USER8> This sounds like: we have to reduce headcount but we don't want to be seen having a "layoff." We choose, therefore, a headcount reduction strategy which we can brand as something other than a layoff. We'll make it about "coming together" which sounds much better than, hey, the wheels are coming off the bus. This is just a layoff by another name.

</comment><comment><USER9> How can telling your employees "move or leave" be good for morale?

<comment><USER10> It can't be. Look past their PR speak. :)

</comment></comment><comment><USER11> Then IBM is not worth working for. It is time for workers to demand more sensible conditions from employers.

<comment><USER12> If only we had some sort of collective leverage.

</comment></comment><comment><USER13> There are many, usually older companies, where managers have stopped doing their jobs long time ago. In these kind of companies, workers find out about what they need to do and who has the right know-how from their peers. As such, they can not work remotely. Of course top management, instead of fixing it's own problem, they are just forcing everyone to be in the "office" (more like holding enclosure). Of course, this is also a sure way to get rid of your top talent.

<comment><USER14> "top talent" rarely works remote.

our top engineers are always at various offices helping on the most complex solutions.

<comment><USER8> I don't know that this is the case. A lot of top talent works remote, because they prefer to be valued by output rather than face time or butt in seat time. The too talent which does not work remote, does so often by choice, because they prefer to be "in the mix."

But it probably also depends on how asynchronous their organizations are, too. GitHub is super asynchronous, as is Pluralsight. These are companies who, as part of their corporate DNA, have adopted means of working together which don't require being together in an office. Pluralsight, for example, has offices, teams, and individual contributors all over the US. We work together using Slack, BlueJeans, and GitHub. It works incredibly well.

<comment><USER14> I'm so annoyed when the best guy is not in the office to help me when I need. Slack is not the same as both of us sitting together at the computer.

</comment></comment></comment></comment><comment><USER15> IBM frequently hires graduates from my university.

I was offered a place, but there was a caveat. I have MS, and stairs are my personal demon.

As the building was heritage listed, they couldn't alter it. So no lifts or elevators.

They offered me a remote contract.

I didn't take it at the time, but others I know had similar deals.

This will probably affect them. They might be made redundant, to bypass the problems of firing them.

</comment><comment><USER16> The way this will work out if mind boggling too. Many employees would be told to go into an office only to then collaborate remotely with their peers in other cities. As a remote IBMer I'm hoping this rumor is false. I was forced remote a few years ago because my local office ran out of room and now I enjoy it.

</comment><comment><USER17> This hasn't hit me nor anyone on my team yet (I'm an IBMer)

<comment><USER18> Do you know if the affected people that can't or won't move will be getting severance pay?

Where I live, such a change in working conditions would be enough for an employee to consider himself fired, which would make him eligible for severance pay.

<comment><USER17> I didn't see your comment before I posted mine. No, I don't know how things are in those divisions. They're separate from mine and others.

</comment></comment></comment><comment><USER19> IBM stuck in the 90s. What a retarded idea.

<comment><USER20> > retarded

Hey. Hey.

</comment></comment><comment><USER21> And so the centralization of our tech industry continues...

<comment><AUTHOR> I don't think it's centralization - it's just another excuse to terminate people, especially older, settled employees.

Current IBM could power a large city if they could harness the energy of the Watsons spinning in their graves.

<comment><USER21> Termination may be the goal, but centralization is the result.</comment></comment></comment>


Deploystack – Curated list of best tools for launching your website - <AUTHOR> https://deploystack.io/ <comment><AUTHOR> Hey everyone,

I have created this website after struggling with deploying my website for the first time (which one of the 1000+ hosting companies to chose? How to get a cheap domain? Analytics, monitoring, what other tools I need?) and I thought it might be useful for others. There are no advertisements and it was not sponsored by any company, I did a lot of reading, checked different services and picked up those that offer the best value for money and are recommended by other developers. I tried to add coupon codes where applicable. I have submitted DeployStack few months ago and got some good feedback, so I added a bunch of new tools and redesigned it to be more clear. Let me know if you think it's interesting and useful.

<comment><USER2> > There are no advertisements

But some of the links are affiliate links. I don't have a problem with this, but if you're going to make a big deal about not having ads or sponsorship, then I think you should have mentioned this too.

<comment><USER3> And do the gentleman's thing of indicating affiliate links by appending a * or other symbol.

Transparency is good, even if the laws in your part of the world don't require it.

<comment><USER4> I think it's good enough that they recommended a number of options without an affiliate program. Intentions pass my bar of nobleness.

</comment></comment></comment></comment><comment><USER5> I feel like Sentry[0] should be on the error tracking list, it's an amazing product that's fully open source so you can host it yourself if you're concerned about privacy or throw some money at the stellar team behind it to have them host it for you!

[0]: [https://sentry.io](https://sentry.io)

<comment><USER6> Somewhat unrelated, I have seen a lot of places list a "con" of Sentry that its only free plan (non-trial) is self-hosted. This is a pro for me! I LOVE that I can run Sentry on my own infrastructure :)

<comment><USER7> Strange, we definitely have a free tier (and have had one for years). Our current free plan includes 10k events a month.

But yes, hosting it yourself is the ultimate free tier.

Obvious disclaimer, I work at Sentry.

<comment><USER6> Awesome! I clearly read something misinformed; there is totally a free plan. Makes you guys even more great

</comment></comment></comment></comment><comment><USER8> Fairly disappointing list. No GC in hosting list, even with generous free tier on App Engine, Firebase and other services. No DigitalOcean. No Azure. On e-mail front, no SendGrid and Mailgun, even with their generous free tiers. No Cloudflare. CI as category is ignored. 1&1 makes it, but GoDaddy, Gandi, and others don't.

<comment><USER9> > 1&1 makes it, but GoDaddy, Gandi, and others don't.

Godaddy? They use shady tactics to mislead customers, their service is pretty bad and they are an overall unethical company. I would never recommend them.

<comment><AUTHOR> Hosting was the most tricky part to describe - first of all, because there are so many companies and I wanted to keep the list short (otherwise it's not helpful). The second reason is that everyone has different opinions on the hosting companies - for example, one person can have a great experience with Godaddy and someone else will have a very bad one. So I decided to go for the DigitalOcean and Linode as they have a rather good reputation among developers and AWS, as they are popular among many developers (+ they come with a huge amount of other services that you can use). Plus Heroku with their free plan.

<comment><USER10> If you're going to mention AWS, you should also be mentioning GCE and Azure, as each can be the cheapest/best under certain circumstances. It'd be even better if you analyzed their offerings to give people an idea of when to choose each offering. I'd also like to see at least one static site hosting company (Netlify?) listed since they can be a lot cheaper than the big cloud companies if that's all you need.

In general, I didn't find this list particularly useful. There wasn't a single product on your list that I'm not intimately familiar with, and I'm not the sort of person that really keeps an ear close to the ground on these sort of things. The categories of SaaS products you recommend are pretty limited. It could be useful if you indexed more providers in more categories and then asked some basic questions to cull the list down to a personalized recommendation for your reader's needs. But short of that, there's little here that you wouldn't get from five minutes on StackShare.

<comment><AUTHOR> I completely agree with you - if you know all of the services that are mentioned here, you are probably well more experienced developer ("deployer"?) than me or other people that are the main audience for DeployStack. As for AWS, I mostly mention their LightSail plan, which is quite simple and straightforward (as in the case of Linode and DigitalOcean). GCE and Azure are definitely great tools and I see many people complaining about the lack of them on the website, but they are way more advanced than the scope of the DeployStack, at least for now. Thanks for the feedback, I will keep that in mind and try to add some more advanced sections in the future!

</comment></comment></comment></comment></comment><comment><USER11> Be very careful using a "free" tier on any email service if you care about reliable delivery. These are naturally utilized by people sending spam, so the mail servers used by the free tier plans tend to get a low(er) reputation. I had this issue with Mailgun, which otherwise is a fantastic service.

<comment><USER12> Mailgun has a whole FAQ type thing about sharing IPs vs getting dedicated. They kind of claim an opposite/divergent thing from what you write. They say using shared as you build domain reputation can help because you pool with more established senders. Did you find that not to be true? Are there many spammers in that pool? Should I just go dedicated right away?

<comment><USER13> I find that mailgun is highly protective over thier IP reputation, so unless you actually run into an issue yourself, don't bother with dedicated. Some spammers may use them but I've not seen much evidence of it.

</comment></comment></comment><comment><USER14> Pretty cool website. It is properly credited at the bottom of the page, but I think it deserves an explicit mention.

Creative-tim, material-kit theme [1]

[1] [http://demos.creative-tim.com/material- kit/index.html](http://demos.creative-tim.com/material-kit/index.html)

</comment><comment><USER15> I just deployed a corporate site last week using Jekyll, hosted on S3 with CloudFront using a free AWS certificate. Content management is provided by forestry.io which has been mentioned a couple times on HN and is a compelling alternative for the CMS functionality and a necessity for the client. When I think Website, this is the best 'stack' I've deployed with.

</comment><comment><USER16> This is pretty slick with useful information presented in easy-to-compare form. The hardest part is going to be keeping the info up to date.

As others have mentioned, some pretty big-name offerings are missing despite being surprisingly capable. I use Google App Engine's free tier for some hobbyist-level hosting because it gives me full control over the incoming and outgoing HTTP request in an autoscaling PaaS, which is very convenient, but it also cuts off with 503s if my quota is exceeded and I won't get a nasty bill at the end of the month for stuff I can live without.

A little while ago I made an Ask HN [1] that didn't get much traction where I described all the desirable features I wanted, to seek an alternative for Google App Engine. Is there a comparable Paas/FaaS that has a free or cheap tier, and a no-cost quota cutoff?

[1] [https://news.ycombinator.com/item?id=13504712](https://news.ycombinator.com/item?id=13504712)

<comment><USER17> Not really. AppEngine is unique in this way. It has a combination of features and constraints that make it very difficult to replicate what it can do elsewhere. GAE is a _product_ not just a collection of APIs.

The closest thing to AppEngine out there is ElasticBeanstalk and Heroku, which resemble _each other_ far more than they resemble AppEngine. Good luck.

<comment><USER18> AppEngine doesn't support php7. Call me old fashioned but that's a show stopper for me.

<comment><USER17> You are, indeed, old fashioned. But GAE has a Java SDK, so you can run PHP on GAE after all.

[https://github.com/collegeman/php-in-java](https://github.com/collegeman/php- in-java)

</comment></comment></comment></comment><comment><USER19> This looks awesome and quite helpful for first deploys.

However after deploying bunch of projects and knowing which services to use we found it is still pain to set up everything together. We thought that automating this process might be valuable and would reduce barrier on starting new projects.

So we put together service where for $39 one time payment we would do the following for you: (assuming you own a domain name - we will need to ask you to point dns of your domain name to cloudflare)

All the following services will be set up with free tier, so you won't need to pay anything to run your project unless you will want to upgrade anything:

\- set up CloudFlare account to manage your DNS \- get email for you domain with Zoho and make sure that deliverability settings adjusted correctly \- set up web site on zoho with blog \- create Google account and register the website with Google Webmaster and Google Analytics \- register with Mixpanel for extra event analytics \- add inspectlet to capture videos of what visitors doing on your website \- create Stripe account to accept payments \- hook up web chat from Zoho to chat with your visitors \- create facebook and twitter accounts

As a deliverable we will send you a password file that you can open with password safe application (free) and instructions on how to change your passwords. We will also send overview of all accounts and customization steps.

As a pro (or coder) version of our service we will add setting up Azure, AWS or Heroku account, source control account, deploying skeleton application to the cloud (ruby, python, node.js or asp.net). The application will contain user sign up feature, integration with analytics, logging, transactional email, error reporting services.

We were planning to launch our website next weekend but I couldn't resist this discussion. If you are interested, send us email at email@example.com or leave us a comment on our blank website [http://www.zenprojectstarter.com](http://www.zenprojectstarter.com)

</comment><comment><USER20> It's impressive that only a quarter of the links are affiliate links.

<comment><USER21> Could someone explain the hate for affiliate links? Maybe I'm just being naive, but as long as there's no suspicion of ratings bias, I'm fine with them.

Ex: I've used thewirecutter.com recommendations for home supplies--and I'm happy to give the creators a kickback for their effort (at no cost to me).

<comment><USER22> Judging by the rest of the comments in this discussion, there are some very notable oversights missing from this list. It's not unlikely that is caused by a lack of referral program from those providers.

<comment><USER23> There may be notable services missing, but I wouldn't say it is an oversight. It seems the most popular or well-known services are covered and not all of them have referral links. Sure, there is room for improvement, but it seems to me that the creator put this together in good faith.

</comment></comment></comment></comment><comment><USER24> The whole google cloud platform doesn't get enough cred. Would be nice to add it to the list.

<comment><USER25> Azure is also missing

<comment><AUTHOR> I did take a look at Azure, but it looks complicated. Probably for someone who has more experience and actually have used it, it's not, but I couldn't easily find how I can get a simple VM, and when I used the calculator for the VM, the price was almost two times more expensive comparing to DigitalOcean or Linode. I see that there are many people using Azure and probably it's a great ecosystem, but I wanted to focus on easier to use tools, that will be more friendly to beginner web developers. I might think of a section for more advanced options (not a single hosting, but a whole service that includes multiple tools) where Azure would be a great fit.

<comment><USER25> For an application you may not even need their VMs, an AppService instance may be enough and potentially cost less. BTW, you can find them on the "New" menu on the left

</comment></comment></comment></comment><comment><USER26> Unclear why GC and Azure, both with amazing offerings, are not listed.

<comment><AUTHOR> GC and Azure are great tools and I see many people complaining about the lack of them on DeployStack, but they are quite advanced options comparing to other services, so they don't really fit well in, let's say the 'Hosting' category (they have much more tools than just hosting, they could replace your whole tech stack). And I wanted DeployStack to be used as "choose your own tech stack" \- if you need only hosting, those are the companies that are good and cheap with just hosting. If you already have a website but need to get some statistics - here are tools for uptime monitoring and here are some for analytics. Anyway, thanks for mentioning GC and Azure, I will keep that in mind and try to add some more advanced sections in the future, where they would fit perfectly.

</comment></comment><comment><USER27> Nice job and a useful website. One nitpick: there were free ssl certificates before Let's Encrypt, but not nearly as easy to use.

</comment><comment><USER28> For my SaaS (pre-launch) I chose to go full AWS (BeanStalk, RDS, S3, CF, Route53, ACM, SES) + GitLab (4 private repos: front, back, deployment scripts, website).

Total costs: $24 (2 domain names)

I still need some monitoring and logging tools but I'm sure there are free solutions for my needs.

</comment><comment><USER29> As far as email sending is concerned, Mailgun seems better, with 10k emails per month free, no?

<comment><USER30> Sparkpost offers 100k on their free account

<comment><USER29> That's very interesting! I figured I could save some money from switching Spamnesty ([http://spa.mnesty.com/](http://spa.mnesty.com/)) to Sparkpost, but they don't seem to support receiving email?

</comment></comment></comment><comment><USER31> I would add a image/video hosting & management category - there are some well established players in the market that have nice free tiers (full disclosure: I work at one). Makes life simpler than working with Storage & CDNs.

<comment> umar-khan1 Can you recommend some of them? I've tried using Dropbox for very low-traffic personal sites before but the workflow was less than ideal.

</comment></comment><comment><USER32> Really, no Azure? They have great linux support (if that is your thing).

</comment><comment><USER33> Feel free to add [https://www.aerobatic.com](https://www.aerobatic.com) to your list for static hosting.

disclaimer: I work there.

</comment><comment><USER34> Missing: [http://surge.sh/](http://surge.sh/), also might be worth noting you can host a static site for free on GitHub.

<comment><AUTHOR> Thanks, I didn't know about the surge, I will check it out for the next update (also static pages on GitHub is a great tool, I forgot to mention them).

</comment></comment><comment><USER35> This could be the "first to go" website for beginners when launching a new project :). However it misses some services such as Azure, CloudFare etc.

<comment><AUTHOR> Thanks for the feedback. CloudFlare (which is a great service) is under the "Monthly Plans" for the CDN :) Azure and GCE are great tools and I see many people complaining about the lack of them on DeployStack, but they are quite advanced options comparing to other services, so they don't really fit well in, let's say the 'Hosting' category (they have much more tools than just hosting, they could replace your whole tech stack). And I wanted DeployStack to be used as "choose your own tech stack" \- if you need only hosting, those are the companies that are good and cheap with just hosting. If you already have a website but need to get some statistics - here are tools for uptime monitoring and here are some for analytics. I will try to find a place for them in the next update to the website (maybe in a more advanced section).

</comment></comment><comment><USER36> Great list. Would like to see some self-hosted options here and not SaaS. Can I recommend cloudron.io? Just run it off a Digital Ocean or Linode server and you get all apps in [https://cloudron.io/store/index.html](https://cloudron.io/store/index.html) (Mattermost, Nextcloud, Gitlab, Mailtrain, Ghost to name a few). Obviously, you still need a CDN and Domain but Lets Encrypt integration is built-in.

<comment><AUTHOR> Hey, thanks for the feedback. Self-hosting is a more advanced area (I would imagine large companies deciding to self-host, mainly for the privacy reasons, but not single developers), so it's out of the scope of DeployStack for now (I'm trying to focus on tools that would be more useful to single developers, start-ups). However, it could be a nice section for a page covering more advanced topics, so I will take a note of it for the future. Thanks!

</comment></comment><comment><USER37> I understand: It's curated and opinionated and there should only be three big players on the list. I strongly feel that hosting is not a commodity. There are big differences between PaaS and VPS hosting in service level.

Shameless plug: We run [PHP as a Service]([https://www.fortrabbit.com](https://www.fortrabbit.com)) which is a managed stack with pre-installed Git push to deploy, Composer and Let's Encrypt certs for all domains.

</comment><comment><USER38> Visual studio team services is with looking at. Includes git, release management and continuous integration with a free tire

</comment><comment><USER39> Design is nice, content is shamefully incomplete. Best case is honest bias, worst case is author has been compensated.

<comment><USER40> Of course he is compensated... there are affiliate links all over the place.

Not that I think that is inherently bad, but you must be careful of bias and understand lots of good options may not be presented.

</comment></comment><comment><USER41> What about a static site served by an object store through a CDN? I just did a pure S3/Cloudfront project.

</comment><comment><USER42> I would assume Firebase, Azure, Digital Ocean, etc would be first on any list

</comment><comment><USER43> I am so happy with scaleway that I do not understand it is not in this list.

<comment><AUTHOR> Thanks for the suggestion, didn't know this one! I will definitely take a look at it.

</comment></comment><comment><USER44> This is just great for beginners, thanks. Do you think of posting tips to deploy Anon?

</comment><comment><USER45> great idea - biased execution.

</comment><comment><USER46> missing a lot of good alternatives. It would be good to add a vote-ish button for each service to let people see the popularity.</comment>


HSCTF – A hacking competition by high schoolers for high schoolers - <AUTHOR> http://hsctf.com/ HSCTF – A hacking competition by high schoolers for high schoolers <comment><USER2> A hacking competition for high schoolers... right before most finals weeks. I think this is a great idea, but the timing is nonideal.

<comment><USER3> This is actually perfect timing for US upperclassmen - this is the week after the AP tests, when many classes lessen the workload. Many schools I talked with about picoctf didn't do it because of its timing.</comment></comment>


Moore's Law Is Not Dead - <AUTHOR> https://www.tsmc.com/english/newsEvents/blog_article_20190814.htm <comment><USER2> Mostly just marketing hype without numbers to back up the claim that Moore's Law is still kicking. Advancement through die-shrink is a doomed exercise but we do have other options. Personally I hope the next decade or two will bring significant innovations in per-transistor performance, which is an area we've basically ignored since making smaller and more parallel circuits was easier.

<comment><USER3> >> significant innovations in per-transistor performance

What kind of innovation ? anything concrete - i.e. on research/dev ?

<comment><USER2> Most of the current efforts resemble Itanium, with smarter compilers and dumber processors.</comment></comment></comment>


The last debugging tool you'll ever need... - <AUTHOR> http://rubberduckreview.com

<comment><USER2> Epic!</comment>


CRUD with Flutter and SQLite - <AUTHOR> https://medium.com/@dulanka1234/crud-with-flutter-and-sqlite-de3a68759531 <comment><AUTHOR> Are you looking for a way to use the mobile device storage as a database in your Flutter project? Just integrating a SQLite package will do it for you. This article will provide a complete guide to CRUD operations with SQLite and Flutter.</comment>


Ask HN: If a company adopted Bitcoin, how do they convert it into real currency? - <AUTHOR>

A real world company has to pay employees, cover expenses etc. How does a company reliably convert Bitcoin into real currency? <comment><USER2> There is no way other than a gray market mechanism. To extract cash from Mtgox, you can move it through Liberty Reserve and try to get it into a bank (it may not work). Alternatively, you may be able to find someone willing to trade larger volumes. It's possible to exchange small sums via paypal, though that's not very relevant to a business.

Right now there is too much hype and too little time to establish a stable valuation. Bitcoin is moved by the speculators and not investors or savers.

</comment><comment><USER3> There exists an open source bitcoin exchange, but it is still in its early phases (mentioned in the Calacanis interview.) Theoretically, if the company was large enough, they could open an exchange. That's what PayPal should do: accept bitcoin and open up an exchange.

here it is: <https://gitorious.org/intersango/> by <http://bitcoinconsultancy.com/>

</comment><comment><USER4> Depending on how much of your income it represents, you might consider giving it to employees as part of their compensation.

They might convert it, but might get better value looking for things they need. (Their demands will be more diverse than a business.)

</comment><comment><USER5> Easiest way to turn Bitcoin into real currency:

1\. Establish a company and go public with it.

2\. Invest all said company's money in Bitcoin

3\. Short the company's stock

4\. $ Profit $

</comment><comment><USER6> Using MTGOX.com just convert it back to USD, you'll be charged however a 0.65% fee. From there you can transfer it to a personal or business Dwolla account for only $0.25 cents. From Dwolla you can deposit it into your bank account for free.

Too many steps in my opinion but hey, it is an entirely new currency.

</comment><comment><USER7> Mt. Gox?

<comment><USER8> Currency exchange.

<https://mtgox.com/>

</comment></comment><comment><USER8> The answer is "it IS real currency". How do you tell "real" currency from fake? If people accept it as a store of value, it's real.

Actually, it is real to the extent that people accept it. So Bitcoins aren't AS real as dollars, but they're still real. And hypothetical bitcoin company will have the same problems as a company that uses some obscure third-world currency.</comment>


This man has $220M and a plan to take down Amazon - <AUTHOR> http://www.theverge.com/2015/4/30/8520133/jet-amazon-lowest-prices-marc-lore

<comment><USER2> I somehow never understood the psychology behind "taking down" companies, if that's the only motive of one's endeavors. You want to create a better product or service than Amazon?, that's super cool! Good luck. But what's with taking Amazon down. Compete with them ferociously, but let their destruction not be your aim....

<comment><USER3> It gets press :)</comment></comment>


Images of flies on a urinal = 80% less 'spillage' on the airport bathroom floor - <AUTHOR> http://www.nytimes.com/2009/02/08/business/08nudge.html

<comment><USER2> A fly? How boring, over here we have these: [http://ecx.images- amazon.com/images/I/31EZO1H5iFL._SL500_AA2...](http://ecx.images- amazon.com/images/I/31EZO1H5iFL._SL500_AA240_.jpg)

<comment><USER3> Combine that with a scorecard and "all time high scores" display and you could pretty much retire the janitor.

<comment><USER2> Don't laugh, I have actually seen one in a club that played a crowd-cheering sound while you were hitting it! Wouldn't be surprised if there was a scoreboard version around somewhere...

For background: The ball actually moves when you hit it. It is attached to the main panel with a small plastic string. The one that made the sound probably had a simple "electronic greeting card"-like circuit board in it.

</comment></comment></comment><comment><USER4> There is a Japanese toilet company, whose name escapes me, which previously included a red dot in toilets to capture this advantage. Then, after extensive testing, they realized that the red dot was suboptimal because it encouraged people to shoot for the wall, and the wall of a toilet bowl is very close to things you do not want to get wet.

So they tested a new version, which turned out to be MUCH better: include a laser in the toilet bowl, and PROJECT a red dot on the surface of the water at a particular point in the bowl. (I would assume the geometric center but, hey, they're the experts).

My Google-fu is not turning up the article I read this in, which (I hazily remember) was English and probably in the New York Times.

Anyhow, this is one of my stock anecdotes on why Japanese engineering holds so much appeal to me. (Obsessive, fanatical attempts to squeeze more performance out of things. Its like Apple decided to launch a line of toilets or ceiling fans... except with a little less of an iCult around them.)

[Edit: found a mention of this sort of toilet innovation by Panasonic but it wasn't the article I was talking about, which covered the R&D process in more detail.

[http://gizmodo.com/gadgets/gadgets/panasonic-dl+gwn- toilet-s...](http://gizmodo.com/gadgets/gadgets/panasonic-dl+gwn-toilet-seat- lights-your-pee+path-202519.php) ]

</comment><comment><USER5> I wondered about those. I thought some designer was just trying to be funny. (They give designers a lot more room in the Netherlands.)

<comment><USER6> It is also a joke, bee in latin is 'apis'

<comment><USER7> That's some gentle comedy.

Especially since they're flies, not bees ;)

<comment><USER6> Usually they are bees, urinals have had them for a century

</comment></comment></comment></comment><comment><USER8> I think this technique of giving one something to aim at is well known amongst the potty training crowd.

<comment><USER9> <http://www.goontarget.com>

_tired of constantly cleaning up spills around the toilet – want your boys – big and small – to be more accurate?_

</comment></comment><comment><USER10> Has anyone read the book they talk about in the article ([http://www.amazon.com/Nudge-Improving-Decisions-Health- Happi...](http://www.amazon.com/Nudge-Improving-Decisions-Health- Happiness/dp/0300122233) )? It has decent reviews and seems like it might be interesting, but I never seem to have as much reading time as I'd like, and I was hoping someone here could give me a heads up on if its any good.

<comment><USER11> Yeah, this is a great book. Evidently it is also on Obama's reading list.

The book talks about a few different ways to "nudge" people into the "best" behavior. One of the key points is that a default choice (for ANY consumer choice, whether health care, options on a car, or how to invest a 401k) is far and away the option most likely chosen. So the book's authors argue that it is the responsibility of politicians to help people make the right "default" choice.

One great example is a particularly nasty curve on a road -- Lake Shore Drive -- in Chicago. It's a major thoroughfare along Lake Michigan, and cars were always going too fast when they came up to a sharp curve in the road. After trying all sorts of "slow down" and "sharp curve" signs, city planners opted to paint lines on the road perpendicular to the flow of traffic. The lines were set at regular intervals, but near the curve the lines were painted closer together. This gave drivers the impression that they were going too fast, and caused them to subconsciously slow down. This dramatically improved the traffic flow on this particular stretch of Lake Shore Drive and reduced accidents and fatalities.

I won't comment on whether or not I agree with of all this book's theories, but it is well worth a read, and certainly shines some light on more subtle aspects of human decision making.

<comment><USER12> _So the book's authors argue that it is the responsibility of politicians to help people make the right "default" choice._

Jeez, can you say "slippery slope"?

</comment></comment></comment><comment><USER13> Now if only this worked for those people who miss the toilet when taking a crap.

I have a solution to the problem, however I don't think there's a fecal floor sensor yet and I doubt people would go into a stall with a shotgun aimed at their head so I fear it wouldn't solve the problem but shift it to the shotgun-free stalls.

</comment><comment><USER14> Is is just me or does this "flies on a urinal" story make the rounds every 6 months or so?

Either that or I have way too much piss related content in my web surfing.

</comment><comment><USER15> This is a constructive use of, "choice architecture". I think these ideas have been around for awhile just in another form - as poor choice architecture in casinos.

</comment><comment><USER16> I'm curious how they measured and came up with 80%.

<comment><USER17> also curious as to the scientific process for measurement of urine spillage.

</comment></comment><comment><AUTHOR> (found via <http://hiphopo.posterous.com/images-of-flies-on-a-bathroom>)

</comment><comment><USER18> I wonder if this design adds or detracts from aim:

<http://www.flickr.com/photos/gojomo/3267808953/>

(It may be decades before News.YC has another thread where this photo is topical!)

</comment><comment><USER19> <http://en.wikipedia.org/wiki/Coand%C4%83_effect>

[http://www.straightdope.com/columns/read/2450/urinal-101-aim...](http://www.straightdope.com/columns/read/2450/urinal-101-aim- for-the-back-wall-or-the-water)

<http://ask.metafilter.com/8204/Urinal-Aiming#160007>

</comment><comment><USER20> I think this would be considered a clever real-world hack.

</comment><comment><USER21> we have these in the waterless urinals in SM City Cebu :P</comment>


How to Drive More Traffic to Your Website - <AUTHOR> http://www.inc.com/guides/2010/10/how-to-drive-more-traffic-to-your-website.html

<comment><USER2> Like everything I've seen from Inc and Entrepreneur magazines, this has a low signal-to-noise ratio.

</comment><comment><USER3> Did they write that article after browsing digital point?</comment>


Groups of Homeless People - <AUTHOR> https://acesounderglass.com/2019/04/03/5-groups-of-homeless-people/ <comment><USER3> As a many-decades resident of Santa Cruz and San Francisco, and a as someone who has in the past been deeply involved in the street/drug scene and been associated with and friends with many dozens of people who have lived on the streets, I think this bizarre attempt at categorization missed the most visible and important group of people on the streets...

People who choose to live on the streets. Go talk to people. Ask where they're from. The people you're most likely to encounter (the ones being visible, doing drugs visibly, camping visibly) are travelers of sorts. Adventurers even. Sure, many are drug addicts or have mental health issues. But so do millions of people with jobs and homes. Unlike those people, these people choose to eschew social norms wholesale and live a nomadic lifestyle.

You see much less of this outside of the temperate climate of the West Coast. But here, it's a growing problem. They have plenty of food and can earn above minimum wage by spare-changing and are given adequate healthcare. And they shit and piss on our streets, block sidewalks, litter profusely and otherwise do whatever they feel like.

<comment><USER4> Well then, sounds like a problem that can easily be solved with the meager expense of public facilities, trashcans, and open spaces that aren't sidewalks for the unhoused to hang out in.

<comment><USER5> I think you're missing the point. The people that OP is referring to refuse to use all the public facilities offered, they don't want to sleep indoors, they don't want to use trash cans, they don't want to piss in mobile bathrooms or take showers, they don't want to be corralled into designated hang out spots.

They want to go wherever they want to, camp out wherever they want to, they want to collect whatever garbage they want to and they don't want to clean up after themselves, they want to do as much drugs and alcohol abuse in public as they want to, they want to piss wherever they may happen to be at the moment because they don't want to be burdened with the responsibility of thinking out their actions.

This doesn't describe every one exactly but it generally describes most that fall into this category.

Ultimately these are people who refuse to play by the rules of society. No amount of public support is going to change them because they simply do not want to change. They are perfectly happy where they are right now, doing whatever it is they want to do. Nobody can solve their 'problem' because as far as they are concerned there is no problem.

So understanding that fact, society needs to decide just how much of that behavior it is willing to tolerate.

<comment><USER6> So, libertarians, but without the money?

(How do these people get into this state? Is this just a concentration phenomenon, where people who think that all move to the same place?)

<comment><USER7> Many were bussed in by other cities to California

</comment></comment></comment></comment></comment><comment><USER8> I am unclear what sort of research went into these categories. They seem effectively anecdotal and subjective - there's no statistics or studies being quoted that I can see.

Sure, something like "informal sociology" is something that I think everyone does and I don't think that's a bad thing by itself. Such "studies" become more problematic if they are presented in the form of science, especially in situations like homelessness where average people's vague impressions of the homeless can go into homeless policy - ie, where shelters should be, etc.

I mean, my also anecdotal impression is that a lot of people move between some or all of the categories that are listed. That movement involves getting or not-getting sleeps or medication, random walks between doing well and not doing well, the rise and fall of relationships, etc.

But altogether, if any actual policy is being made, the best thing is making a study what percentage of people will benefit.

</comment><comment><USER9> I experienced homelessness for a while in my 20's (back in the 90's, for reference). And yes, there were a group of people who were homeless and did not want to change. They would complain to everyone who could give them cash or assistance about how horrible their life was, and how they were victims of circumstance, but to other homeless people they were quite honest about their intentions to stay on the streets.

I never experienced people abusing me or stealing my stuff, but they were definitely difficult to be around. "ruiners" is a great name for them.

I moved on, getting some casual construction labouring work that allowed me to get the deposit for a rental property together (90's remember, not sure that would be possible today). And a friend let me housesit her place for a couple of weeks, which really helped.

I'm not saying we shouldn't help the homeless... I got a helping hand up from a construction contractor who didn't have to help me, and I'm grateful for it. But maybe don't be surprised if earnest attempts to help the situation aren't received well.

<comment><USER10> Do you have any ideas as to why they prefer to stay on the streets ?

<comment><USER11> It's similar to someone complaining about their job or relationship, but refusing to do anything about it.

Life can be comfortable if you keep thinking to yourself that you are a helpless victim. You become your own biggest hurdle at that point but it's a consistent predictable life people sometimes subconsciously fall into.

It's also still subjective to say not being homeless is all good. Some may even prefer that "free" lifestyle of not having to have responsibilities.

<comment><USER9> I had a mate around the same time who was voluntarily homeless. A Falklands veteran who'd worked on bomb disposal. They didn't know what PTSD was back then, but after he'd seen too many of his friends blown up in buildings, he didn't trust them much, and preferred living outdoors.

But that's a different thing, I think.

Totally agree, for some people painting themselves as innocent victims of circumstance allowed them to avoid all responsibility for their lives, and let them continue avoiding facing unpleasant/difficult truths about themselves. Not all, obviously, but there were those who didn't want to change because change would be painful.

</comment></comment></comment></comment><comment><USER12> I've known a bunch of people in Number 1-4, more number fours than anything else. A whole bunch of the number fours are not seriously mentally ill - <USER2> even mentally ill at all - they're just really shitty at making choices for themselves.

</comment><comment><USER13> I'm surprised people can even act like they care. We had one generation awhile back made it so affordable housing existed for the young and where banks were alright with mortgages being done. That very same generation that could obtain a home in their 20s without requiring a degree. Now runs the show where the young are being pressured into obtaining a degree and fill small rentals that continue to rise in cost. People should be able to have a place they truly consider their own. Mental health depends on it. People just don't care.

</comment><comment><USER14> I was a #2. Ask me anything!

<comment><USER15> How did you end up in that situation and how did you get out of it? Were there friends or family that could help out and if so, why didn't they?

<comment><USER14> This was in 2009. At the end of 2008 when startup financing dried up, I ended up with pretty much no income. I was recruiting on an hourly basis, and I couldn't find a new contract. I had about $50K saved up to pay taxes and an S.F. studio apartment, and I decided to live off that money & try starting a startup. A year later I had no money and no apartment.

I could have stayed with my parents in the burbs of L.A., but I figured I would have gotten stuck in an area where there even less opportunity. I ended up floor surfing at a cheap place here in San Francisco, the Harcourt Hotel at 1105 Larkin St. Basically I made newer friends faster that my new the friends didn't want me crashing with them anymore.

</comment></comment></comment><comment><USER16> Even using the term "homeless" itself illustrates how the author lumps everyone who does not have a permanent building that they are registered and in full "possession" of into one big category.

One could just as easily come up with five stories about "housed" people. Reading this article makes me think that the author has based their knowledge on researching Wikipedia and papers...

</comment><comment><USER17> changing the zoning laws is really hard when you have people in the hotel industry spending huge amounts to not only keep it the way it is, but make it even more restrictive. Cities are fining airbnb, using code enforcement to put huge leins on property owners who try to accommodate low income housing in neighborhoods... 20 yeas ago most places didnt even have a "code enforcement".. its a racket. all it does is raise rent higher

</comment><comment><USER18> The bit on 'ruiners' is overly judgemental, lumping people who are clearly upset and mentally ill in with predators. Yes, there are sociopaths and predators in homeless shelters, but a lot of the behaviors being picked out in group 5 are just signs of mental illness and distress - just a severe point on the continuum of group 4.

Also, a category that's neglected is people who could be served by existing shelter or halfway house infrastructure but choose to avoid it: I know of people who are 'homeless by choice' as a result of facilities being either (a) too scary/chaotic or (b) too moralizing (e.g. 'dry').

There's also a good deal of youth homelessness which falls into many of these categories without cleanly matching any one of them. Sometimes kids leave households because they are 'wild', but frequently because the households are dysfunctional and couch-surfing or sleeping on the streets is perceived to be no more dangerous than being at home (or being shunted into foster care).

<comment><USER19> I agree with the 'ruiners' label though, especially living in SF, the vast majority of homeless are minding their own business and trying to get by. If you pass by 100 in your day and just one happens to be openly shitting in front of you, you might walk away saying, 'the homeless are really ruining the city', in spite of 99% of your encounters being neutral.

<comment><USER18> I'm not convinced that characterizing people who are mentally ill as "ruiners" is a particularly helpful taxonomy whether you're looking to understand homelessness or help fix it. I think it just serves as a tough-talking catchall category for "homeless I don't like" here (like we'll cut the 'bad ones' out of the herd and then be nice to everyone else).

I'm very uncomfortable with the idea of labelling people as 'ruiners' \- even when they have have behaviours that are in fact ruining cities, shelters, etc. This is particularly pernicious because the author doesn't bother to separate out predatory behavior ("robbing other homeless people") from mental illness ("painting the walls with poo").

It's like the author just ran out of compassion somewhere down the list and said "fuck the rest of these guys".

<comment><USER20> >I'm not convinced that characterizing people who are mentally ill as "ruiners"

They're not. They fall into:

>4\. People who can't survive the modern world without assistance

<comment><USER18> I am aware that he says that people can be in multiple categories. However, many of the things he describes in the ruiner category are way more typical of mental illness, which to me is deeply problematic. The focus appears to be on how bad the people in category 5 are. It's attaching a shitty, judgemental label to very sick people at the very bottom rung of society.

Yes, there are scammers, predators and just plain assholes in the homeless world (and these people should be in a much smaller and better thought out 'ruiner' category). However, the difference between someone who "needs a bit of help to get through the day" and "someone who is painting the walls of their room in poo" is largely a matter of degree (i.e. one requires massive quantities more help to stabilze).

</comment></comment></comment></comment></comment><comment><USER21> Oh sure! Project your fears onto other people, and put them into psuedo- categories. Much easier to do this than to humanize them. Bravo for your technical analysis!

Oh boy! This sarcasm is what living in Britain for 10 years has helped me master. I think deep down my sarcasm actually represents pain.

-

"We Americans stubbornly resist the possibility that what we do is profoundly shaped by policies, norms, systems, and other structural realities. We prefer to believe that people who commit crimes are morally deficient, that the have- nots in our midst are lazy (or at least insufficiently resourceful), that overweight people simply lack the willpower to stop eating, and so on. If only those folks would just exercise a little personal responsibility, a bit more self-control!" — Alfie Kahn

-

Seriously, what needs of yours are met by psuedo-diagnosing some of American society's most vulnerable? And more importantly, what needs of yours are unmet? What emotions do you feel, and what do you feel in your body?

I think American society has evolved into a culture that glorifies violence, turns young girls into sex objects, sends young men to their deaths to 'defend America', and indoctrinates it's citizens with bizarre nationalistic views and a sense superiority that to me is completely removed from a compassionate view of life.

For some reason, instead of having an empathic view on those people, your ego has decided that it is actually better than these people. This to me looks like a case of good old grandiosity! This seems oh so common in the great U. S. of A.. Exceptionalism seems to be embedded into the culture overall.

I invite all of us to take a gentle look in the mirror, and I believe the following video reflects our collective unconscious and our society's 'shadow'. It has helped me reflect, maybe it will for you too.

"No tree, it is said, can grow to heaven unless its roots reach down to hell." -C.G. Jung

(In-Shadow by Lubomir Arsov)[[https://vimeo.com/242569435](https://vimeo.com/242569435)]

-

Update - comment on prison:

"I don't have a solution to ruiners that isn't prison"

Have you watched the recent documentary 'The Work'? I think putting people in jail is possibly the worst crime of all. Let's get them in therapy instead. We can help to heal them by listening to their stories. The trailer for 'The Work' can be watched here - [https://www.youtube.com/watch?v=h8OVXG2GhpQ](https://www.youtube.com/watch?v=h8OVXG2GhpQ)

<comment><USER22> You lost me at the "society's most vulnerable" rhetoric. Tired and misleading. Bye.

</comment></comment><comment><USER23> Are you homeless? I am and have been for about 10 months, SF. I don't think this is a constructive list; I am working on my own, of course. For example, there is a new group in Mountain View who call themselves transitional RV housing. Nice try but not holding any water in my view.

Tangent, I am qualified for a lot of dev jobs.

</comment><comment><USER24> I was pretty with it until 4 and 5. The premise that certain groups of people without housing "can't survive without the kind of assistance that money can't buy" is condescending and elitist at best.

<comment><USER25> No, there are a huge number of people that are on the edge w.r.t. mental health. Not quite capable of handling activities of daily living and/or their own finances. Or not 100% of the time, and that fraction of the time that they can't, their money evaporates, and/or relationships evaporate.

The crisis in mental health care in the US is shameful. It is true that in the bad-old-days people were over institutionalized. So the pendulum has swung, and now unless a person is very clearly dangerous to themselves or others, it is nearly impossible to get a person resistant to treatment the help that they really need.

We talk about people "falling through the cracks", but the "crack" is a mile wide. It is pretty hard to convince me that a cardboard box under a freeway overpass is better housing than the mental institutions of old. That said, I don't think many of the mentally ill need to be forced into an institution under the old model, but we really do need a mechanism to deal with ill people resistant to treatment.

[edit: spelling]

<comment><USER26> Yeah man it's serious. Someone asked me to help an individual recently and I'm struggling to figure out how to help. He is a programmer who suffers from schizophrenia. His hallucinations got out of control until he lost his job, his life, and his kids. Social workers pretty much forced the one person in his life who cares for him (his wife) to have him removed by the police. Now he hates her. Then he proceeded to miss his hearing so he was arrested. Now he is thrown in jail. I feel guilty but I don't know how to handle this.

<comment><USER25> I feel for you. Lacking appropriate training, it is hard for us to actually help, even though we care. The first thing to remember is that whatever you say or do will be processed through the lens of his reality. He will try to fit it into the framework of his world. The eventual fit may be very skewed. It is difficult to know how to be helpful in that situation. Sorry I don't have more for you.</comment></comment></comment></comment>


Misinformed YouTubers Are Undermining the Fight for Children's Privacy Online - <AUTHOR> https://slate.com/technology/2019/11/youtube-coppa-google-ftc-settlement-children-privacy.html?via=features <comment><USER2> You cannot tell the real age of visitors to a site. Any requirement of age is security theatre, it will be lied about.

Coppa applies to any content that may be directed to children. There is no requirement that only made for kids videos apply.

The ftc is very vague on what applies, and from their list I don't doubt that they'd consider hazbin hotel to be for kids because it's an animated cartoon.

The only way to enforce what the ftc wants is to force everyone into accounts before accessing YouTube. Which won't fix the supposed problem, and hichly encroaches significantly on their business in a way I have yet to see justified.

It's also should not be the ftc's job to police the internet in these ways. If cookies and persistent trackers are a problem, install a browser extension for it. That should be the parents responsibility.

[https://www.ftc.gov/news-events/blogs/business- blog/2019/11/...](https://www.ftc.gov/news-events/blogs/business- blog/2019/11/youtube-channel-owners-your-content-directed-children)</comment>


Show HN: Golang auto loading env vars into unexported (private) struct fields - J7mbo- https://github.com/J7mbo/GoEnvConfig <comment> J7mbo- More an experiment with the safe / reflect packages rather than anything substantial :)</comment>