Akasha: A Social Media Network Powered by Ethereum and IPFS - <AUTHOR> http://akasha.world/ <comment><USER3> A service like this already exists - zapchain.com (bitcoin instead of ether). I have earned billions of satoshi on it but well, it is failing. Because identity could not be solved with partial blockchain, same mistake Akasha is doing.

An identity is a proxy for past work done, which the identifier further wishes to use as a proxy for future working. A blockchain bypasses this by directly asking a proof of current work, irrelevant of past work done.

When a system does not use an exclusive blockchain, the identity is unable to proxy itself through PoW. Spam rules zapchain now.

To make this work they need a PoW Akashacoin.

<comment><USER4> We are aware of zapchain and their issues. I'd like to point that zapchain is not completely decentralized - it is rather a hybrid application using servers for content distribution and blockchain for payments.

Regarding security/spam - Proof of Work is not the only way you can secure networks; one of the interesting potential solutions we explored is a sort of Proof of Stake mechanism.

Basically this would allow a sort of "deposit" scheme where you would deposit an X amount of tokens for an Y amount of time and depending on the feedback received such as votes for example you would either get the deposit back or lose it. That would make it expensive to spam while not affecting the people generating good content as they would get back their tokens.

Things get a bit tricky when we're talking about controversial topics and how that would be treated but that's a different thing.

That being said, this is an open and complex discussion that probably will take a while to figure out.

In the meantime we're happy with proving that _it is possible_ to have a completely decentralized publishing system that doesn't need any servers, creating in the process a product that empowers people with unfettered freedom of expression. One step at a time :)

<comment><USER5> Good luck with this, I'm really excited to give it a go.

You say that Akasha _" doesn't need any servers"_. If a user is to run a "node" on their PC, how will the network react if a friend/follower is offline when data is requested from them. Also, will a node be runnable on a home server system, allowing for higher-availability and easier backups of personal data?

<comment><USER6> @mr_stud the functionality you are asking about is addressed by IPFS. I worked on the project briefly about a year ago -- exciting stuff. IPFS's content distribution is similar to that of a torrent. So the content gets stored across the network, with certain concentrations where people can pin it. It leaves room for giving an economic incentive for pinning it. Cost of storage shifts over to the people who care about the content rather than the people who care about it's distribution.

There still would be a case where a friend's content is unavailable because it is offline. If the friend is offline too much, one way is to have an intermediary willing to pin the content when that friend comes briefly online. It may be possible if the friend is within a large enough group, there will always be some sort of coverage.

Check out the IPFS website sometime. There is a white paper and demo videos.

<comment><USER5> IPFS is largely the reason for me battering F5, on this thread, this afternoon.

I've only briefly looked into it, on its website, upon originally reading about it. I will definitely give it more attention, have a deeper read, and have a go at running an instance to see what can be done.

</comment></comment></comment></comment></comment><comment><USER7> It mystifies me that people seem to think users will suddenly start caring about decentralization and privacy. If either of those things is your social network's USP, you're sunk.

<comment><USER8> Decentralization is more powerful than you think. If I open a social network that is just like Facebook, it will go under. But if it is also properly decentralized (=federated), meaning you can have account at my site but interact with every Facebook user as if you had an account there, Facebook immediately looses it's network effect. And if I offer an additional silly feature, say let users customize the color of their home page, my decentralized net is at an advantage.

Unfortunately, Facebook explicitly forbids that kind of interaction, of course.

I see two options how decentralized nets could win:

1) Legislation that forces large sites like Facebook to federate (makes sense if you argue that FB has become infrastructure) or without that:

2) Lots of people try to build federated sites, and fail... but one day, Facebook goes the way of Yahoo and MySpace, and one of the decentralized contenders happens to be the new Facebook by chance.

<comment><USER9> > Legislation that forces large sites like Facebook to federate

This could happen faster than you might think. The Telecommunications Act of 1996 ([1]) just needs some updating to current technological standards.

Quoted:

> Interconnectedness. Since communications services exhibit network effects > and positive externalities, new entrants would face barriers to entry if > they could not interconnect their networks with those of the incumbent > carriers. Thus, another key provision of the 1996 Act sets obligations for > incumbent carriers and new entrants to interconnect their networks with one > another, imposing additional requirements on the incumbents because they > might desire to restrict competitive entry by denying such interconnection > or by setting terms, conditions, and rates that could undermine the ability > of the new entrants to compete.

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

<comment><USER10> I'm not so optimistic here. To my knowledge if it hasn't been changed to force interconnectedness of email, I doubt it will be changed only to force interconnectedness of social networks like FB. But i guess we'll see.

<comment><USER11> Why would it need to be changed to force interconnectedness of email? Email has always been federated.

</comment></comment></comment></comment></comment><comment><USER4> Hello everyone,

AKASHA founder here.

Looking forward to hearing your thoughts on our project!

<comment><USER12> Ambitious project. Good luck :-)

\- Will Akasha leverage existing social graphs (fbook, twitter, email, phone)?

\- Does Akasha plan to interoperate with any of them?

\- Why is a blockchain needed? What aspect of decentralized publishing does this solve? Verifiability of content? Pub/sub relationships?

<comment><USER4> Many thanks!

> Will Akasha leverage existing social graphs (fbook, twitter, email, phone)

This is actually something we were discussing yesterday with Dr. Gavin Wood, one of the founders of ethereum and ethcore. It is a bit tricky to do without compromising the privacy of the users (associating an insecure form of identification to a key/address) due to the nature of blockchains, but there are a few interesting ideas on how to solve this issue. We're looking into it but we need to experiment and see which one is the best before deploying something like this inside our application.

> Does Akasha plan to interoperate with any of them?

Social web 2.0 applications such as Twitter and Facebook are not necessary the friendliest when it comes to interoperability but as we will approach the beta we will look into making an API allowing interesting things to be done in an IFTTT fashion.

> Why is a blockchain needed? What aspect of decentralized publishing does > this solve? Verifiability of content? Pub/sub relationships?

The chain removes completely servers from the picture and enables us to create a truly decentralized publishing mechanism by adding IPFS to the mix - <USER2> it is expensive to store content directly on chain, we're storing IPFS hashes on chain.

Besides verifiability and pub/sub relationships, identity/profile management and micropayments are also a big pluses that come bundled with the ethereum chain.

Hope this answers your questions!

</comment></comment></comment><comment><USER10> I'm really hopeful that this - or for that matter any reasonable platform - deploys and gets used. I'm a big fan of decentralization and hope these kinds of efforts pan out! Good luck to the Akasha folks!

<comment><USER4> Thank you for the kind words and support!

</comment></comment><comment><USER13> Here is a simmilar project in Golang [https://github.com/vole/vole](https://github.com/vole/vole)

<comment><USER5> It's a shame that it's using _BitTorrent Sync_. Use of something open source, with an API, like _Syncthing_ , could allow for a smoother experience in finding users to follow, rather than manually copy-pasting shared secrets.

I have had my eye on [https://ind.ie/](https://ind.ie/), who forked _Syncthing_ in order to build a social platform upon.

</comment></comment><comment><USER14> All I can see is a blank white page — doesn't fill me with confidence.

<comment><USER4> Hello,

akasha.world is at the moment just a presentation website hosted via GitHub Pages. We needed javascript to make it pretty :)

If you want to find out more about our project with javascript disabled, our blog should be readable [http://blog.akasha.world/](http://blog.akasha.world/)

<comment><USER14> > We needed javascript to make it pretty

You can make a page pretty just with CSS; and even if you add behaviour via JavaScript, you can still degrade gracefully.

I see nothing but a blank page in both lynx and eww.

</comment></comment></comment><comment><USER15> A side note, but couldn't help notice ".world". Wonder why they didn't buy akasha.space which is more suitable because akasha means "space" or "sky" in Indian languages. (500 USD to buy the domain name though. May be affordable?)

</comment><comment><USER9> I was hoping to read something about the protocols. For example, how do they handle access control (e.g. so that only friends can see my status, photos, or so that groups can be managed)? How are updates broadcasted (without polling)?

<comment><USER4> Hi there!

In the first release/MVP stage AKASHA will resemble a lot to Twitter/Medium in this regard, in the sense that your published entries will be public and visible by everyone.

That being said, access control is on our roadmap but it is not a priority at the moment.

The updates are broadcasted via the Ethereum network through a smart contract that records and dispatches events associated with profiles such as new entries.

This way, the people that follow you on AKASHA will receive in their stream a notification letting them know that a new entry has been published and can be accessed via IPFS at hash X.

<comment><USER16> Can people join this network without downloading an application - will it be available in the browser? The reason I ask is most decentralized applications up to this point require a download to start your own node (zeronet for example). Availability from the browser I believe is important for decentralized applications because it lowers the barrier to entry for consumers.

PS., not sure if you noticed, but some of your comments on this page are marked dead. I have no idea why this has been done to you.

<comment><USER4> Hello,

In the first phase an application is needed as interacting with the Ethereum/IPFS network currently requires a local Ethereum/IPFS node.

IPFS for example is currently working on a javascript implementation that would make it usable from normal browsers and basically "invisible" for average users. Ethereum also has some efforts in this direction but most likely we will see these things coming together somewhere around Q3/Q4 2016.

When these options will be available we will definitely make use of them as we understand the potential adoption gains we can have by removing the need to install an app.

In the meantime we were thinking to setup a few IPFS gateways that would serve a static version of the content in the form of a normal website ([http://akasha.world](http://akasha.world) for example).

This way people can at least access the content/read/share it over traditional Web 2.0 mediums. On the other hand, if they want to interact with the network (publish/comment/vote) then they would need to install the app. Not the best solution, we know, but seems like a decent compromise while the tech "gets there".

> PS., not sure if you noticed, but some of your comments on this page are > marked dead. I have no idea why this has been done to you.

I have no idea why this was done either...Did I broke any HN posting rule without knowing?

</comment></comment></comment></comment><comment><USER17> Here is a similar project writedown.co and will be probably transitioned to work with lisk.io. Disclaimer I am the founder

</comment><comment><USER18> Wasn't clear from the page. What can I use it for? Why does it exist?

<comment><USER19> >What can I do with AKASHA?

>You can publish, share and vote for entries, similar to Medium and other modern publishing platforms, with the difference that your content is actually published over a decentralized network rather than on our servers. Moreover, the votes are bundled with ETH micro transactions so if your content is good you'll make ETH from it – in a way, mining with your mind.

<comment><USER20> _if your content is good you'll make ETH from it_

Does it have to be _my_ content? Is there anything to stop me writing a bot that looks for popular Medium/Reddit/HN/whatever articles and post them to AKASHA under my name to harvest ETH?

That's exactly what people will do if they believe there's money to be made.

<comment><USER21> Nothing, I also guess it is a good chance to make money from cat pictures :)

</comment></comment></comment></comment><comment><USER22> Will this use Swarm instead of IPFS once it's out? Also, using contracts costs gas. So how will that be paid for? What's the business model?

<comment><USER4> We will definitely experiment with Swarm once it's out and see how well it fits with our needs. This document covers some of the differences between swarm & IPFS for those interested: [https://github.com/ethersphere/go- ethereum/wiki/IPFS-&-SWARM](https://github.com/ethersphere/go- ethereum/wiki/IPFS-&-SWARM)

For the MVP we will gift a bit of ETH to each user that installs AKASHA and creates a profile. We are talking about enough ETH to enable an average user to publish, comment and vote for a few good days. The "perfect" amount will most likely be determined after observing how real users interact with the application during the alpha. If along the way the user will generate content or comments that will in turn generate upvotes he will refill/increase his ETH balance.

It's important to note that _users will be able to read entries and comments without needing any ETH_ so access to information is free in this regard. ETH is required only when you want to interact with the dapp living on the Ethereum network.

In any case, from my rough calculations, the costs involved in publishing an entry with 1 tag would be recovered after receiving 1 upvote. All the upvotes beyond that point would be profits going to the author.

We are also open to experimenting with things that might enable us to take over some of the interaction costs at the smart contract architecture level, but that is outside the scope of the MVP.

As for the business model we don't like ads in general so we want to experiment as much as possible on this side as well to see if we can co-create a sustainable social media network model that does not rely on ads to survive.

We don't know yet if that model means a custom token, a micro-fees scheme or something completely different that we can't even imagine at this point so we chose focus first on building the dapp and learn from the actual usage what direction we should take.</comment></comment>


Ask HN: Where can I find a cheap frond end dev tutor online? - <AUTHOR> I wanna be able to ask questions and quickly find out how something works, which is not something you can do when you're trying to learn alone online. You have to usually wait for things to be presented to you.<p>When I say cheap I mean cheap in terms of dollars. <comment><USER2> What do you consider affordable?

There is a service called Codementor that can set up you with a live tutor starting at about $60.00 USD an hour. You can learn more here: [https://www.codementor.io/](https://www.codementor.io/)

The great thing about web development is that it's very accessible for people trying to teach themselves. The major browsers all work as sandboxes for discovery and testing. Your statement that "you have to usually wait for things to be presented to you" is the complete opposite to me.

<comment><AUTHOR> I would say less than $20/hr, preferably less than $10, but I'll consider all options.

<comment><USER2> You need to adjust your expectations, man.

<comment><AUTHOR> I know about codementor and hackhands. The reason I asked was to find cheap ways to get tutoring with programming.

I'm open to other countries where the conversion rate would make the amounts I mentioned decent.

</comment></comment></comment></comment><comment><USER3> What's wrong with your "frond end"?

Shouldn't you be posting this on a gardening forum?</comment>


Why I wrote a damning review of my own debut novel - <AUTHOR> https://www.theguardian.com/books/2016/sep/30/julian-barnes-on-writing-metroland <comment><USER2> I am tempted to try this on some unfinished projects to try to suss out their flaws that I only subconsciously am aware of.

<comment><USER3> In a similar vein, I start projects by writing a README. It forces me to see with the user's eyes, which makes the difference obvious between what I think is a good interface and what is _actually_ a good interface. It has worked well. I recommend it!

<comment><USER4> There's a big flaw in your method: users never read the README.

<comment><USER5> Github displaying readme.md by default has probably boosted viewings of readmes by a million percent.

Whether _reading_ of readmes has gone up is still an unsettled question

<comment><USER6> what does .md stand for?

<comment><USER7> markdown

</comment></comment></comment></comment></comment></comment><comment><USER8> When writing a work of fiction, the aim is to find truth not in the creative process, but in the un-dogged pursuit of verisimilitude - in the attempt to build reasonably causal events in response to the creative flights of fancy. Theoretically, it should be possible to achieve this in the frontal lobe, but putting pen to paper has always been a more effective approach at striking the perfect balance.

I'd say the author here decided to apply the same muscles that balance creativity and verisimilitude to his own review. Imagining the response to an unknown, unpublished novel is obviously a work of creativity, which he is also able to balance out because he actually knows the novel, knows its strengths and weaknesses.

In this way, he was able to find a simple, comforting truth: he was either about to become a novelist, or he wasn't.

Writing a piece of pseudo-fiction like this review seems like a great answer to allay the fears of failure.

</comment><comment><USER9> Writers can be so critical of themselves, especially good ones, I think. Barnes' solution of writing the critique he fears is pretty good. They're only novels, after all, but when you write one, it seems so damned important.

</comment><comment><USER10> Because it's a neat marketing trick.

<comment><USER11> I didn't catch where he described it as marketing trick, but I also didn't manage to find anywhere in the article where he actually answers the question in the title

</comment></comment><comment><USER12> It can be kind of a relief to freely acknowledge the reasons your thing might suck, one way or another. Ideas can somehow be less scary written down than when just hanging around as possibilities in your head. If you think your bad self-review is the only reasonable way to look at things, then maybe you have a real problem, but hopefully your reaction is to put it in perspective somehow--to consider the good things balancing the bad, or why the objections aren't valid or aren't fatal, or at least that the world keeps spinning and you are not your work. And then when life or other people's reactions come around, your reaction is a bit less surprised and maybe more grounded.</comment>


Could A Collaborative Biking Desk Shake Up The Workplace? - <AUTHOR> http://stanford.io/12KzYUx

<comment><USER2> Idea is awesome, I can see health nuts as well as daytime TV going crazy about it (not a barb, I'm serious)

Take this with a grain of salt, as I am a bystander who knows nothing at all about anything, however, your site needs a little work. I suggest you go back to bootstrap, pull down their carousel example (<http://twitter.github.com/bootstrap/examples/carousel.html>), and use that. Take the picture you have on the front page, and make it the carousel, and fill out the things on that page with your content (also, get some big icons for the sections).

Your site will look 5x better, and it should only take you under an hour (that's how long it would take me, especially since bootstrap has done all the actual work). That will get you more cred, and people will not have to struggle with a not-quite-there site for an awesome idea

I expected more from you guys over at Stanford :)

-A University of Texas student</comment>


Heartbleed leak : pins of every credit cards are in the wild  - <AUTHOR> http://pastebin.com/2qbRKh3R

<comment><USER2> I suspect this is a joke / troll</comment>


$200 Fallout 76 Edition Promised Fancy Bag, Delivers Nylon Trash Instead - <AUTHOR> https://kotaku.com/200-fallout-76-edition-promised-fancy-bag-delivers-ny-1830724582 <comment><USER2> If this is the only problem you have you should consider yourself lucky. Very, very lucky.</comment>


Why To-Do Lists Don't Work (and What to Use Instead) - <AUTHOR> http://melissajoykong.tumblr.com/post/46933074122/to-do-lists-dont-work

<comment><USER2> fragment of the Dale Carnegie's illuminating book: How to win friends and Influence people:

"For years I have kept an engagement book showing all the appointments I had during the day. My family never made any plans for me on Saturday night, for the family knew that I devoted a part of each Saturday evening to the illuminating process of self-examination and review and appraisal.

After dinner I went off by myself, opened my engagement book, and thought over all the interviews, discussions and meetings that had taken place during the week. I asked myself: 'What mistakes did I make that time?' 'What did I do that was right-and in what way could I have improved my performance?' 'What lessons can I learn from that experience?' "I often found that this weekly review made me very unhappy. I was frequently astonished at my own blunders.

Of course, as the years passed, these blunders became less frequent. Sometimes I was inclined to pat myself on the back a little after one of these sessions.

This system of self-analysis, self-education, continued year after year, did more for me than any other one thing I have ever attempted.

"It helped me improve my ability to make decisions \- and it aided me enormously in all my contacts with people. I cannot recommend it too highly."</comment>


The Neoclassical Habitat Server Project - <AUTHOR> https://frandallfarmer.github.io/neohabitat-doc/docs/ <comment><USER2> Greetings. I am the fellow who instigated all of this when Randy and Chip gave me the source code 4 years ago. A few FAQ answers because everyone always asks the same super nerdy questions:

* The current effort is to replace the server, not the client. The client runs in an emulator, or on original hardware. We already have both online in a test server.

* The project is rolling along very quickly, but we cannot open up to the public because the server can be crashed by the actions of a client. Devs only for now.

* The overall goal is not to revive this game to make money or sell it. The goal is to revive the game for preservation purposes. Without Habitat in working form, we're without a major piece of software history. We;re bringing it back to make it completely, freely playable online by all using an emulator.

* Most of the work is porting PL/1 objects to modern platforms, and rebuilding the game's geography. Come help us preserve the world's first graphical MMO!

* The rewrite is taking place because the original hardware was Stratus running VOS. We have a Stratus machine, but we are missing some libraries from AOL's QLink, and could not replace them. Qlink was kinda a black box. Those libraries are coming, but they are taking a bit of time, so Randy just said, "Screw it, we'll do it live!" Ala Bill O'Reilly. Not really. But you get the idea.

* This is the culmination of three years of work to get the original owners of the rights to allow us to do this, to get AOL to give us the missing bits, and to get Stratus to give us the original hardware.

Everyone involved worked for free, and did so out of their love of digital history. It's been a great effort so far, and now we're really nearing the end of the line, frankly. It will take a lot of work, but being able to open this as a project to outside developers is an amazing feat.

So, please, before nay-saying or thinking of some technical thing we've obviously missed, come join our effort. We need all the help we can get to preserve this piece of our digital heritage for future generations.

<comment><USER3> This reminds me of the obvious: that we will probably never be able to play the advanced games being produced today in 20 years time (or even sooner than that). DRM and reliance on closed source server infrastructure will make it impossible. Decades of digital cultural heritage will be lost if we don't do something drastic.

What if game developers, Internet Archive and other forces created sort of a consortium (a bit like W3C) and created methods for sharing these infrastructures when development is stalling, servers closing and companies going bankrupt? In the best of worlds this future would be in the minds of the programmers when building the games.

<comment><USER2> We're sorta working on this, small though the preservation world is. Frank Cifaldi has founded a non-profit specifically to do this, and themade.org is behind Habitat.

</comment></comment></comment><comment><USER4> Aw. Randy Farmer and Chip Morningstar once demoed that for me. Very cute, and amazing that they could fit the client in a Commodore 64 and run over a 300 baud modem. The classic paper on this is "The Lessons of Lucasfilm's Habitat". It would be fun to have it running again, but it might be easier to run the old code in an C64 emulator. AOL originally ran this as QuantumLink Club Caribe. It didn't catch on, though.

If they're going to revive this, it ought to be phone-based. It's about the right level of detail for a phone screen.

(The current big effort in virtual worlds is High Fidelity.[2] This is from the guy who ran Second Life. Supports VR, face tracking, etc. It's supposed to be better visually than Second Life, but so far, it isn't.)

[1] [https://web.stanford.edu/class/history34q/readings/Virtual_W...](https://web.stanford.edu/class/history34q/readings/Virtual_Worlds/LucasfilmHabitat.html) [2] [https://highfidelity.io/](https://highfidelity.io/)

</comment><comment><USER5> Coincidentally I just finished watching the postmortem of Lucasfilm Games[0] from GDC14 where this is a topic

[0] [https://youtu.be/-8AGwZ5mp_U](https://youtu.be/-8AGwZ5mp_U)

</comment><comment><USER6> Club Caribe anyone? I think for people of a certain age at a certain time, that was an "oh wow" CGA preview of what the next 30 years were going to be like.

</comment><comment><USER7> What year was habitat released? I'm under the impression that WWIIOL (cornered rat software) might have been out earlier, but perhaps as public beta. They did extend that beta a couple times.

<comment><USER8> 1986: [https://en.wikipedia.org/wiki/Habitat_(video_game)](https://en.wikipedia.org/wiki/Habitat_\(video_game\))

</comment></comment><comment><USER9> I didn't realize Lucasfilm laugh the first graphical MMO! Seems like they did a lot of groundbreaking work in games -- it is a shame that Disney axed that division.

<comment><USER10> LucasArts made some great games, but had they really done anything near the end that wasn't just another Star Wars game using someone else's engine?

</comment></comment><comment><USER11> It would be interesting to recreate the backend/server side portion in a (modern?) MUD system, and use the C64 Habitat as a MUD client.

</comment><comment><USER12> Would be neat if it was rebuilt on current web technologies and be playable in browser.

<comment><USER13> Instead of rebuilding it I think it would be better to run the original client through a C64 emulator, and run this emulator in the browser, with some sort of 'modem over websocket' tunnel.</comment></comment>


I emailed Tim Cook - <AUTHOR> http://xindustries.wordpress.com/2013/04/04/i-emailed-tim-cook/ <comment><USER2> I doubt getting "300 people" to spam Tim Cook is the best way to approach this.

</comment><comment><USER3> _The typeface in many new OS X 10.8 apps is Helvetica. The typeface of OS X is Lucida Grande._

I bet this changes in 10.9. At least, for Retina machines. There's a reason why iOS uses Helvetica Neue as the system font, and not Lucida Grande. It looks better on sharper displays.

 _The new iMessage app in 10.8 lacks instant messenger integration with services such as MSN, AIM, and Jabber, forcing the use of a different application for these features._

Erm. Those services are still there. Same as ever -- which never included MSN in the first place. Hell, theres a new framework, IMServices, which lets you add support for new services to Messages.app.

</comment><comment><USER4> Personally I think emailing Tim Cook will give you nothing more than emotional satisfaction.

<comment><USER5> Hell, at least when you emailed Steve Jobs you'd get the satisfaction of a glib, dismissive response and a story to tell your grandkids.

</comment></comment><comment><USER6> I don't think sending an e-mail is the right way to get this info out to them. Honestly though, do we really think that they don't know most, if not all, of this? I think that a lot of it is quite nit-picky, and in the scheme of things, whether or not these changes happen isn't going to make-or-break it for Apple in any significant way.

Yes, and I mean that in regard to the Mac Pro and iPod Classic, too.

</comment><comment><USER7> Apple don't seem to have done anything particularly innovative in a while.

</comment><comment><USER8> _He'll have no choice but to reply to 300 people or more._

Yes, he has plenty of choices. Forward it to a subordinate, select an canned response from his email client/intranet, ignore it ...

</comment><comment><USER9> _It creates marvelously built and human products that are designed to express the very human soul._

Oh for pity's sake. They make expensive hardware that looks and feels nice.

</comment><comment><USER10> i'm sure he will bend over backwards to do the bidding of a self-appointed internet expert.</comment>


Our "Great White Shark" is the Ultimate Filter - <AUTHOR> http://www.victusspiritus.com/2010/02/05/our-great-white-shark-is-the-ultimate-filter/ <comment><AUTHOR> Bizarre analogy, with heavy quotes and a movie. Enjoy.</comment>


Daylight Saving Time Increases Suicide Rate - <AUTHOR> http://www3.interscience.wiley.com/journal/119419743/abstract <comment><USER2> What one has here appears to be a "natural experiment," in that the researchers looked at when daylight saving time began as a policy in Australia. (It is already known to suicide researchers that seasonal variation in daylight length is a strong risk factor for suicide, resulting in seasonal variation in suicide rates.) The way to check this conclusion would be to look at other countries (or states in the United States) where policies on daylight saving time have changed over the years. This is not an ideally controlled experiment,

<http://norvig.com/experiment-design.html>

but suicide data are gathered by a standard World Health Organization methodology all over the world,

<http://www.who.int/topics/suicide/en/>

and when other national policies change in a country, or differ between countries, it can be useful to look at whether or not those policy differences make a difference in suicide rates. Sleep regulation is well known to be an effective treatment for mood disorders, so this is a plausible correlation to look at to see if there may be a causal relationship between the policy and the medical outcome.

<comment><USER3> It seems like you could look just in the United States and compare Arizona with a state that has similar demographics. Arizona doesn't have daylight saving time.

<comment><USER4> Yeah, and parts of Indiana as I recall as well.

But the numbers may be too small, and the populations too unrepresentative, for this approach to be very useful.

</comment></comment></comment><comment><USER5> While I can understand that shifting around the clock two times per year is annoying from an IT perspective, I for one really, really, really love the longer daylight in the evenings. Being able to walk home in daylight in the evenings, being able to be outside one hour longer in summer - all of it is such a nice thing to have.

If we were to stop shifting, I could live with that, if (and only if) we are constantly staying at DST and not at standard time.

</comment><comment><USER6> Correlation != Causation

<comment><USER7> Not sure why the parent was downvoted. It's a perfectly reasonable criticism of the editorialized title of the submission. The actual article uses "associated with an increase" rather than "increases".

<comment><USER8> The editorialized title of the submission may have its problems, but "Correlation != Causation" and equivalent statements need to be consistently downvoted because they, as on every other site where they have for a while now been equally if not even more overused, have become the lazy man's catch-all content-free retort.

Much of what we take as certain once started with observed correlation. This trend of immediately and automatically discounting observed correlations will likely do more harm than good over time, as one would be hard-pressed to hypothesize and later prove (or at least fail to disprove, in the scientific sense) causation if one's habit were to always blurt "correlation != causation" in the face of new information.

</comment></comment></comment><comment><USER9> I certainly felt crappier waking up this morning ;)</comment>


Lenovo Launches ThinkPad X1 Yoga at CES with OLED Display - <AUTHOR> http://www.anandtech.com/show/9887/lenovo-launches-thinkpad-x1-yoga-at-ces-with-oled-display <comment><USER2> Will Lenovo ever produce a high quality notebook again?

All I want is a real "ThinkPad". Give me a proper T460 with 32GB RAM, IPS display, a recent Intel i7 CPU, replaceable batteries and the notebook body of the T410 or better the T60 or IBM ThinkPad T41.

<comment><USER3> Other features they definitely need to add back before I'll consider buying another ThinkPad:

\- Non-chiclet keyboard with decent layout

\- HDD and network activity indicator lights

\- Hardware wireless-off switch

\- Latching lid

They certainly don't need to make it any thinner -- I've had to carry some Macbooks around and the sharp edges are not very hand-friendly. I think 1" throughout is about right for a laptop thickness.

<comment><USER2> > Non-chiclet keyboard with decent layout

This. These cheap keyboards are very annoying.

I hope Lenovo produces the old IBM style business quality keyboards for their brand new models.

@Lenovo: have a look at your great T410 keyboard, build them again: [http://cdn6.bigcommerce.com/s-blhknq8/product_images/images/...](http://cdn6.bigcommerce.com/s-blhknq8/product_images/images/lenovo_t410_laptop_key.jpg) (only the cursor keys are a bit too small, otherwise great)

<comment><USER4> I find these Lenovo chicklet keyboards very pleasant. I have t420s which has it and R40 with old style keyboard. Tried to write on R40 recently and was surprised that it's not that big difference. I don't use F keys much so their layout doesn't bother me.

edit: "F keys" part readability

</comment></comment></comment></comment><comment><USER5> May be this is a wrong place for this, but I have to say this.

I consider Thinkpad as Macbook Pros of PC world. Lenovo hasn't learnt any lesson, they are diluting the "THINK" brand. Having quality products in standard series like - T, W, & X will make better brand recognition. The prime example are this new Yoga and Thinkpad 13 models ?? The marketing team should take lessons. IHMO the Thinkpad line should have 3 series :

1\. T Series (Regular) - T360 (13") / T460 (14") / T560 (15").

2\. W Series (Workstation) - W560 (15") / W760 (17")

3\. X Series (Ultrabook) - X260 (12") / X360 (13")

No Carbon, Yoga, TxxxP mumbo jumbo - just standard nomenclature.

Anybody for Thinkpad C series for cellphones ? - C41 (4") / C51 (5")

</comment><comment><USER6> Ah, first step to consumer OLED PC screens maybe? I've been waiting for that for years already.

</comment><comment><USER7> Oh great.

Now we can experience OLED burn-in on our notebook displays, too. And since the thing is freakin' glued together, good luck repairing it.

<comment><USER8> New gen OLEDs like the one in Samsung S6 do not have any significant burn-in. If this thinkpad's display is sufficiently advanced, there won't be a problem. I do hope they are sourcing it from Samsung.

<comment><USER9> The s6's expected longevity (~2yrs per the contract model) is much smaller than the expected longevity of say, the average college students who buys this laptop for use in college.

For the record, my Note 4 isn't showing any burn in after > 1yr of use, but who knows what it will be like 4 years down the line.

A small number of users report burn-in on the newer s6/6p so I hope QC on the new Yogas will be tighter at the very least

<comment><USER10> How do you QC a defect that takes a year to verify?

I had burn-in on my old galaxy s4. Don't know or care if it's the "new" technology. The primary burn-in was noticeable due to Android's fixed top notification bar, as it almost never changed position or color. The times I would fire up a horizontal view or full screen app, the bar would obviously remain visible. I'm glad they wised up to iOS's approach and started blending the bar in with the app when possible.

<comment><USER9> I am not arguing in support of OLED screens. I'm firmly in the camp that OLED doesn't belong in laptops (just yet?).

From the parent: > New gen OLEDs like the one in Samsung S6 do not have any significant burn-in.

My point is that phones are not a good measure of the ability for an oled screen to be used on a laptop since phones have lower expected longevity.

</comment></comment></comment></comment></comment><comment><USER11> I wonder why these devices don't have USB-C ports... :/

</comment><comment><USER12> I am using tablet with OLED screen for over two years now. It is great for video, but for text editing it does not have much advantages.

<comment><USER13> Text editing in low-light conditions is pretty interesting, I find it's good for keeping focussed. OLED would definitely let me take this to the extreme.

</comment></comment><comment><USER14> Great job, Lenovo! To me there are only two laptop manufacturers in this world: thinkpad and macbook.

</comment><comment><USER15> Now you can experience your connections being MITM'ed by Lenovo in OLED quality.</comment>


No boundaries for Facebook data: third-party trackers abuse Facebook Login - <AUTHOR> https://freedom-to-tinker.com/2018/04/18/no-boundaries-for-facebook-data-third-party-trackers-abuse-facebook-login/ <comment><USER2> The linked article [https://freedom-to-tinker.com/2018/04/18/no-boundaries- for-f...](https://freedom-to-tinker.com/2018/04/18/no-boundaries-for-facebook- data-third-party-trackers-abuse-facebook-login/) provides much more detail and links to source code, such as [https://gist.github.com/englehardt/db3ecea255ccd6aa2b0cb73ca...](https://gist.github.com/englehardt/db3ecea255ccd6aa2b0cb73ca76257d6#file- be-init-js-L1229)

It's important to recognize that this is not an exploit or high-tech exfiltration: it's extremely well-documented in [https://developers.facebook.com/docs/reference/javascript/FB...](https://developers.facebook.com/docs/reference/javascript/FB.getLoginStatus) and [https://developers.facebook.com/docs/javascript/reference/FB...](https://developers.facebook.com/docs/javascript/reference/FB.api) \- the Facebook library even assumes that potentially multiple scripts may be checking repeatedly, and caches accordingly. Facebook is incentivized to make it as easy as possible to integrate their login across the internet, and that entails removing any requirements such as server-side processing that would discourage every tag from including this code.

Seeing this and being surprised is like watching a teen movie where the gossiper invites the entire school to listen in on the phone line while the protagonist is (unwisely) sharing a secret with them, and thinking as you watch, "that's totally out of character for the gossiper - even though they want to collect people's information themselves, there's no way they would invite other people to listen in as they're in the process of receiving that information."

<comment><USER3> > _It 's important to recognize that this is not an exploit or high-tech > exfiltration: it's extremely well-documented_

This argument was used last time [1]. It didn't work then and it's a silly excuse now.

Users gave Facebook their "name, email address, age range, gender, locale, and profile photo" [2]. Some of them marked those data private ( _i.e._ only for friends). Those data were shared, without the users' informed consent, with third parties through the log-in function.

Documenting a breach doesn't unmake it a breach. And a breach can be a breach without involving any technical exploits. This was a breach.

> _Seeing this and being surprised is like watching a teen movie where the > gossiper..._

People didn't realize Facebook was selling their secrets. That may strike you as naïve. But it's this asymmetry, between specialists ( _e.g._ Facebook employees and technologists at large) and non-specialists ( _i.e._ most of Facebook's users), that drives the need for regulation.

An analogy can be found in lemon laws [3]. We protect consumers from specialists ( _e.g._ car salespersons) taking advantage of the customers' reasonable ignorance of cars. Facebook is selling the world lemons and mocking them for buying.

[1] [https://www.cbsnews.com/news/facebook-cambridge-analytica- wa...](https://www.cbsnews.com/news/facebook-cambridge-analytica-was-it-a- data-breach)

[2] [https://techcrunch.com/2018/04/18/login-with-facebook- data-h...](https://techcrunch.com/2018/04/18/login-with-facebook-data- hijacked-by-javascript-trackers/)

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

<comment><USER4> You're either misunderstanding or misrepresenting what is happening here.

The website or app implements Facebook Login. When a user visits that they can choose to share their profile information with that app. Through poor security or malicious action that app leaks that information to third parties.

You can't control data on systems you don't own. So Facebook's options are either (a) limit how platform apps use data via non-technical/legal methods (b) better educate users on the implications of sharing their data with external apps, or (c) refuse to share any user data with external apps.

We've seen the first option fail with the Cambridge Analytica scandal. Educating users consistently fails. And before Facebook built a platform, they were accused of building a walled garden.

<comment><USER5> I'm not sure you can see this as a persistent failure in terms of FB (and similar) fighting against an unstoppable tide of ignorance. It's far more easier to see Facebook (and similarly Google with Android, for a very long time) sabotaging the effort from the start.

A user absolutely can choose what they share with Facebook, but Facebook makes no effort to tell you why you should edit the defaults. Instead, you have to click an edit button, and look at a list of checkboxes, and understand what each thing means, and double and triple check that this doesn't override your personal privacy preferences or have some other unintended side-effects. The default expectation from Facebook (and similar) is biased heavily against the user, purely by virtue of it being opt out.

It depends on users not being educated well enough, and giving them a good reason to care less about being more judicious with their profile.

<comment><USER6> Actually some apps wont allow you to login if you change any of the checkboxes.

</comment></comment></comment></comment></comment><comment><USER4> The underlying issue is executing arbitrary third-party JavaScript on your website.

It's unfortunate that browsers and standards organisations haven't done more to promote safer methods of third party integration. The state of the art is still injecting script tags into the document. Given that the web is powered by embeds, ads, and analytics, there should be better sandboxing tools.

<comment><USER7> AMP achieved this, for better or worse - the only script allowed on the page is AMP common library and approved plugins. I wonder if the Google CDN was removed from the equation if it would have been more embraced.

<comment><USER4> It hasn't solved it at all. Google have whitelisted a set of first and third party scripts. They routinely add more through a non scalable process that seems to rely on a preexisting relationship with the company.

The analytics tag allows for arbitrary logging endpoints to be used, but that solves one very specific use case.

I believe that they're going to allow worker scripts in the future, but again, that I don't believe that will solve every case, and will be AMP specific.

</comment></comment></comment><comment><USER8> People aren't even aware that there are browser extensions that track every single website, keystroke, and click already. The companies that do this then sell your data for thousands a month.

I'm talking about big players like SimilarWeb and JumpShot. Clickstream companies.

<comment><USER9> Isn't this the revenue model of eBates too?

<comment><USER10> As far as I know, eBates doesn't directly sell the websites you visit. Instead, it makes money from the fees paid by "affiliates". For example, eBates is an affiliate of Macy's. That means when you buy something on Macy's with eBates installed, Macy's assumes that eBates is helping to get the user onto eBates. Macy's pays eBates, and eBates pays a part of it to yourself.

As far as I know, it only sends URLs of your visits to its affiliates, but not for other sites

</comment></comment></comment><comment><USER11> If I remember correctly you can't request access to any non-public user info without submitting your app first for manual approval by Facebook's staff. So, if there are FB apps out there tracking extra user info, Facebook must have reviewed and approved them, so they are obviously OK with such usage. So it's not an exploit of the platform, it's FB's core business...

</comment><comment><USER3> Under GDPR, would the sites that used this insecure Log-in Button from Facebook be liable for losing their data? (I assume they could then sue Facebook to re-imburse them for their fines, _et cetera_.)

</comment><comment><USER12> Why do we not assume that the site owner has the responsibility to protect how data is intercepted on their site? If said site owner allows their web page user to type their email into a form, a malicious script on the page can still intercept that data. FB assures the transportation of the data to the web page and once the transmission is triggered, up to its delivery, then the onus is on a site owner to govern the data. Furthermore, as an end user you have to be diligent in what you do online. If you come across a site that asks you to type information or log in with FB, you have to determine whether you trust the site enough and that you feel comfortable taking the risk of exchanging your information for the service at hand. Let's not lose site of reality and remove emotional bias from this conversation.

</comment><comment><USER13> Is this not the same as integrating 'Login with Facebook' and sharing my user's profile data with a third party service using server-side API requests? A practice that I'm sure is rife.

The third party JS scripts simply cut out the middleman, but as a side effect the sharing is detectable.

</comment><comment><USER14> I have a project that's relevant here - netograph.io captures low-level data on website behaviour, then indexes the data in various ways for querying. Right now, it ingests a sizeable fraction of links on social media live. Here's my data for the api.behavioraldata.com domain, which is the first tracker they mention:

[https://netograph.io/datasets/social/domain/api.behavioralen...](https://netograph.io/datasets/social/domain/api.behavioralengine.com)

It's interesting that Netograph has seen this exclusively on .pl domains, and that it hasn't cropped up again in the last month. You can do similar digging through the dataset for all the other trackers they list.

<comment><USER15> Quite interesting!

It would be great if we could filter the lists (eg. I just want to see html and js)

</comment></comment><comment><USER16> Are there any usable solutions for end-users besides wholesale blocking of ad/analytics/tracker services? With all this, it seems pretty reasonable to assume all third-party elements on the web are hostile.

<comment><USER17> Never use the "Login with Facebook" or any other 3rd party login method. Create a separate account on the site if you need to log in.

<comment><USER18> There's a few sites I continue to log in with facebook, I just make sure to use an incognito window and close it when I'm done.

<comment><USER19> Same here, I always use an incognito window for facebook.

</comment></comment></comment></comment><comment><USER20> How much of this is intentional on the part of the first-party site?

The article says:

> The following could indicate the first party's awareness of the Facebook > data access:

> 1) third-party initiates the Facebook login process instead of passively > waiting for the login to happen; 2) third-party includes the unique App ID > of the website it is embedded on. The seven scripts listed above neither > initiate the login process, nor contain the app ID of the websites.

> Still, it is very hard to be certain about the exact relationship between > the first parties and third parties.

But I can certainly imagine a situation where a site owner would inject a third-party analytics script into their site and have no problem with it including information from Facebook logins as part of the analytics data it collects.

After all, as a site owner why wouldn't I want my analytics dashboard (provided by a third-party) to include information like "percentage of visitors between the age of 18-25"? That seems like a useful thing to know, and the users who granted my site access to that info did so explicitly via a Facebook permissions prompt, so what's the issue?

The issue, of course, being that my site's user's data is now being handled by a third party. But I obviously had no problem with that when I decided to use a third-party analytics company in the first place; why would that change now?

</comment><comment><USER21> Reading a sentence or 2 about the abstract concept of exposing yourself to arguably unknown agents is hilariously so specific in terms of the breadth of information you're agreeing to divulge... its not appreciated? Maybe my tinfoil hat truly fits perfectly but if you read the grant dialogue, its extremely clear insofar as "sign in with FB to take this super rad personality quiz! and all we need is everything" really meant it? Im jaded i guess

</comment><comment><USER22> According to a recent article[1], once an advertiser/attacker has collected a large quantity of email addresses, she can "import [them] as contacts" on Facebook, thereby revealing which Facebook profiles they are associated with, if any.

The article was written by a gentleman who wrote some early code for Facebook to do this which was later the subject of a Microsoft patent.

Would it be fair to say that once a user submits an email address to a website, that website can locate the users Facebook profile, if one exists. No "Facebook Login" required.

1\. [https://www.washingtonpost.com/opinions/your-facebook- data-i...](https://www.washingtonpost.com/opinions/your-facebook-data-is- still-vulnerable-i-know-because-i-made-it-that- way/2018/04/13/1cf5c794-3e7d-11e8-a7d1-e4efec6389f0_story.html)

Also, the curious reader may find these interesting, regarding the ease with which an attacker/website could learn a Facebook user's private friends list:

[https://www.telegraph.co.uk/technology/2018/04/17/facebook-q...](https://www.telegraph.co.uk/technology/2018/04/17/facebook- quietly-stopped-apps-harvesting-users-private-data/amp/)

[https://gizmodo.com/how-facebook-figures-out-everyone- youve-...](https://gizmodo.com/how-facebook-figures-out-everyone-youve-ever- met-1819822691)

[https://nakedsecurity.sophos.com/2013/06/23/facebook- issues-...](https://nakedsecurity.sophos.com/2013/06/23/facebook-issues-data- breach-notification-may-have-leaked-your-email-and-phone-number/)

[https://www.facebook.com/notes/facebook- security/important-m...](https://www.facebook.com/notes/facebook- security/important-message-from-facebooks-white-hat-program/10151437074840766)

Finally, I have read that a major dating website has now removed Facebook Login.

</comment><comment><USER23> Duh ... hasn't this been going on for years now. Tealium cited in the article uses this as one of their pain source of data collection

<comment><USER7> I consider Tealium doubly in the wrong here since the appeal to some orgs is that their tag manager allows BizDev/AdOps types to include scripts on sites without answering to product owners and developers.

</comment></comment><comment><USER24> Here is the only real solution:

Have a browser which intercepts requests and encrypts all of them with your public keys, which can only be used to decrypt stuff on the client side.

Wesites would have to start indicating that they understand this new contract and that their servers won't understand ANYTHING.

It could be a new protocol like https but called something else such as s[http://](http://) or encrypted://

All apps would be client side and in Javascript. Yes, servers will be relegated to dumb boxes like in SAFE network. The business model can no longer be about capturing your data unless you share the data with another participant in what is essentially your web based VPN.

Any encrypted:// site can only load other encrypted:// resources so it can't send any info to the server via postMessage etc.

There would be no cookies. Sessions would be kept on the client side, as they should be. Using sessionStorage.

Business logic done on servers now would be pushed to the edges, or could be further secured by validators that you allow into your VPNs and group activities.

People would share keys to group activities.

I am talking about somethig that breaks the current Web. No more cookies. No more AJAX the way you know it. Files are loaded from static bundles loaded ahead of time, before the website can learn custom information about your user agent.

<comment><USER25> When the net/web was first rolling out (or my first exposure to it), I recall thinking, "This is it, universal communication, no more politics/propaganda/dark-ages-of-information-is-over etc".

Then we got Google, Facebook and the cadre of TLA's and criminal orgs turning it into a panopticon and a tool to manipulate people.

I think no matter what technology or tool we create, it'll be abused because that's the society we've created - one that encourages and rewards this behaviour when performed by a small group of very greedy, very misanthropic people.

</comment></comment><comment><USER26> What is hilarious about all this is that Facebook sharing any of this data with anyone is against their interests.

</comment><comment><USER24> Our Qbix Platform has a solution to this using the existing modern web:

[https://encrypted.google.com/patents/US20120110469](https://encrypted.google.com/patents/US20120110469)

We did not continue the patent application process to the end, so you're free to use it.

</comment><comment><USER27> FB should comply with [https://en.wikipedia.org/wiki/Payment_Card_Industry_Data_Sec...](https://en.wikipedia.org/wiki/Payment_Card_Industry_Data_Security_Standard#Requirements)

</comment><comment><USER28> The title might make it sound like JavaScript trackers have collected data which allow them to login to your Facebook account; maybe "'Login with Facebook' data hijacked by JavaScript trackers"?

</comment><comment><USER29> I have never trusted Facebook login. It just always seemed 'wrong' to me. It always gave me a creepy feeling.

</comment><comment><USER30> I don't use Facebook to login with anything, so I guess I have nothing to worry about.

</comment><comment><USER31> ntvk1 is nativka [http://nativka.ru](http://nativka.ru) , now [http://natimatica.com/](http://natimatica.com/)

</comment><comment><USER32> I can't wait for PWAs to be the future of apps. /s

Apple should take the new Firefox Facebook extension and apply it by default to Safari. But also do Google and every other major ad-tech company. Not sure if this can be done without breaking the web though. Also not sure how different Firefox's extension is from Safari's Intelligent Tracking Prevention. It's possible they already do this.

<comment><USER33> > I can't wait for PWAs to be the future of apps. /s

Genuine question, I don't do much mobile development: aren't native apps able to collect just as much information as a web app/site? Except with a mobile app you can't just open a Dev console and see what requests are being made?

Again not trying to troll, I just don't know if I'm missing something here.

<comment><USER34> The difference, as I understand it, is that third-party code would not be able to snoop on user data in Facebook's native app. In this paper, the third-party JS is able to get itself loaded on the same page as the Facebook user data.

<comment><USER35> No but if an app uses a Facebook login flow with the native Facebook SDK any third party analytics that the app developer has integrated should be able to do the same thing, at least in the case of Objective-C where powerful runtime meta programming exists. I'm not sure about Android, but maybe Java reflections could achieve it too?</comment></comment></comment></comment>


Mobi.css v1.0.0-alpha.1 released - <AUTHOR> http://getmobicss.com/ <comment><AUTHOR> For people who cannot visit the site, we have a mirror one: [http://getmobicss.xcatliu.com](http://getmobicss.xcatliu.com)

And the GitHub repo: [https://github.com/xcatliu/mobi.css](https://github.com/xcatliu/mobi.css)

<comment><USER2> If it meets the guidelines, this might make a good 'Show HN'. Guidelines: [https://news.ycombinator.com/showhn.html](https://news.ycombinator.com/showhn.html)

<comment><AUTHOR> Thanks! I've created one. [https://news.ycombinator.com/item?id=12421804](https://news.ycombinator.com/item?id=12421804)</comment></comment></comment>


Ask HN: What are your favorite non-tech blogs? - <AUTHOR> <comment><USER2> Ribbonfarm is an outstanding blog

[https://www.ribbonfarm.com/](https://www.ribbonfarm.com/)

I know tech is off limits, but its sister site Breaking Smart is also really good and is organized in 'seasons' for binge reading if you're looking for unusual perspectives on the tech world.

[https://breakingsmart.com/en/dontpanic/](https://breakingsmart.com/en/dontpanic/)

</comment><comment><USER3> The Credit Bubble Bulletin is an insightful pessimistic weekly analysis on the global economy.

[http://creditbubblebulletin.blogspot.com/2018/05/weekly- comm...](http://creditbubblebulletin.blogspot.com/2018/05/weekly-commentary- old-roach-motel.html)

</comment><comment><USER4> I love For Starters. They send only 1 story every 10 days, but it's something I look forward to.

It's [https://for-starters.com](https://for-starters.com)

<comment><USER5> Sounds great!

</comment></comment><comment><USER6> WaitButWhy is an entertaining collection of thoughts on various topics (some tech, many not). It doesn't post very often, but it has a strong back- catalogue.

[https://waitbutwhy.com/](https://waitbutwhy.com/)</comment>


Finally, semantic links for the girl i'm crushing on. what took so long? - <AUTHOR> http://wiki.whatwg.org/wiki/RelExtensions

<comment><USER2> Very interesting.

Keyword = "crush" = brief description = "this person considers the referenced person to be a crush (i.e. has a crush on the referenced person)"

Keyword = "date" = brief description = "this person considers the referenced person to be a date (i.e. is dating the referenced person)"

I'd argue that considering a person to be " _a date_ " does not imply that one is _dating_ that person.

Doctorow: "In meta-utopia, the lab-coated guardians of epistemology sit down and rationally map out a hierarchy of ideas..." <http://www.well.com/~doctorow/metacrap.htm>

<comment><USER3> I don't get it.. Maybe I'm just being a little slow, but how does the fact that I consider I went out on a date with X not mean that I'm dating X?

<comment><USER4> In the logical sense it does, however typically the term "dating" connotes a commitment to the relationship that is a a bit deeper than simply going on a single date. I think it's the modern equivalent of "going steady".

<comment><USER5> I would argue that "dating" means that we go on dates together (present tense being important here). But a lot of people are "dating" before they have a specific conversation about exclusitivity.

<comment><USER4> That's the difference between the literal meaning of the word and the implied meaning I think.

</comment></comment></comment></comment></comment><comment><USER6> Where's "arch-nemesis"?

<comment><USER7> Not to mention "pointy-haired ex-boss".

<comment><USER8> Don't you mean "fearless leader"?

</comment></comment></comment><comment><USER9> Had a little cognitive dissonance when I noticed that the status is "accepted" for that attribute value.

<comment><USER10> Maybe for a site like okcupid...

Okay, that's still a stretch.

</comment></comment><comment><USER11> Could someone who has time to kill to go through the "Microformats Process" please add the "parody" keyword? This would be a great help for the next time xkcd wants to demonstrate the beauty of HTML5.

</comment><comment><USER7> Clay Shirky had some acrid comments on this "semantic links to humans" idea five years ago:

[http://many.corante.com/archives/2004/08/17/xfn_relationship...](http://many.corante.com/archives/2004/08/17/xfn_relationships.php)

One comment to that post remarked: "It seems to me that it's not just a solution looking for a problem; it's a problem looking for a problem."

</comment><comment><USER12> OK, there's no 'hate', 'kill', 'restraining order'. Is Web 2.0 becoming too goody-good for its own good?

<comment><USER4> Orwell? The list is far from complete, I doubt those would be the first words people would think to add, I'm sure word with negative connotations will be added in the future.

<comment><USER13> Double-plus good comment, TrevorJ.

</comment></comment></comment><comment><USER14> WordPress already has support for this, when you're editing your Blogroll links (out of the box). Awesome.

</comment><comment><USER15> "Crushing on"? Never heard that expression before. "Have a crush on" is more usual.</comment>


What I Learned From My Internship at a YC Startup - <AUTHOR> http://blog.smitpatel.com/what-i-learned-from-my-internship-at-a-y-comb

<comment><USER2> Great blog!! The basics of Startups every founder should read</comment>


Better Form Design: One Thing per Page - <AUTHOR> https://www.smashingmagazine.com/2017/05/better-form-design-one-thing-per-page/ <comment><USER3> Some good tips and a good reminder not to overload the user with information, especially on mobile.

However, trying to give this pattern a new name feels a bit disingenuous - <USER2> comes across as self promotional (even if unintended).

This is a well established pattern already and it's known as a Wizard - guiding users, chunking information, etc -- IBM talked about this back in 2001 [0]

And they wrote a 400 page book about this called Designing Effective Wizards [1]

I see this quite often in our industry, people trying to coin a new name for something when one already exists.

Please don't.

Give credit where credit is due or at least acknowledge people who researched it before.

/rant over

[0] [https://www.ibm.com/developerworks/library/us- wizard/](https://www.ibm.com/developerworks/library/us-wizard/)

[1] [https://www.amazon.com/Designing-Effective-Wizards-IBM- books...](https://www.amazon.com/Designing-Effective-Wizards-IBM- books/dp/013092377X/)

<comment><USER4> They likely don't know of the prior art. In fairness "one thing per page" isn't a very literature searchable topic and many people have trouble finding good search terms to uncover all the relevant prior art. "Wizard" doesn't intuitively scream out "one thing per page".

I have no idea how prominent IBM wizards are in the design literature, but I'm a scientist and I can speak to the challenges of finding relevant literature when all you have is what search terms makes sense to you.

<comment><USER3> Wizards are quite well known if you're working in software and design.

Here is another book that mentions it (2011) [http://designinginterfaces.com/patterns/wizard/](http://designinginterfaces.com/patterns/wizard/)

And some other examples of the term being used:

[http://patternry.com/p=multiple-page- wizard/](http://patternry.com/p=multiple-page-wizard/)

[http://ui-patterns.com/patterns/Wizard](http://ui- patterns.com/patterns/Wizard)

[https://storify.com/kaniasty/how-to-design-a- wizard](https://storify.com/kaniasty/how-to-design-a-wizard)

The author worked in the industry for at least 10 years and not coming across this well established pattern seems unlikely, hence why it felt a bit self- promotional.

<comment><USER5> The "Wizard" idea is pretty old too. Microsoft Works had document "wizards" (complete with little picture of a wizard) in the 90s. "Install Wizards" were also common already then.

</comment></comment></comment></comment><comment><USER6> > 12\. IT ADDS A SENSE OF PROGRESSION

And entrapment. Many users are afraid to hit the back button when they're in the middle of submitting information. This design leverages Back Button Anxiety. It forces the shopper to make a decision. It may not alter the minds of anyone set on quitting or going forward, but it will most certainly influence anyone having second thoughts or thinking of coming back later. Even if it's just to look at an item description one more time, if that option carries risk of sunk costs, they might just go with it. But chances are they were about to get distracted and end up not buying anything, so the shop wins.

<comment><USER7> I find the close button is often a satisfying alternative if a site won't let me go back.

I don't know how much money Amazon have lost from me in recent years because their order pages are so awkward that I've given up and bought elsewhere instead, but it must be the equivalent of several hundred dollars by now, if not thousands.

<comment><USER6> Amazon is a perfect example actually... I was trying to find a reference but gave up. I remember reading about the logic behind isolating the checkout experience. For a while I don't think they even had a link to go back to your cart. Even now they make it non-obvious and have a dialog that will ask you before you leave. They also remove links of any products to their product pages. All trivial UI elements you'd think would be good design, but it turns out entrapment is better. Heck, Amazon would know.

They do have an accordion, but they minimize data entry to an absolute minimum. It's all multiple choice and submit.

<comment><USER7> From personal experience, streamlining a checkout process as much as possible can make a rather dramatic difference to conversion rates. However, the "as possible" is important. You don't want any unnecessary distractions, but if you back someone into a corner so they can't check something they are worried about or correct a mistake, they'll probably just go somewhere else.

</comment></comment></comment></comment><comment><USER8> These kinds of forms are the WORST! I'm forced to fill out FAFSA every year and they try to seperate the increadibly long form onto multiple pages. The result is that I don't know what information I'm going to be asked after moving to the next page so I get to play telephone tag with my parents.

Even when I have all the information myself it's still pretty painfull. I stopped using turbotax because they build their site this way. Moving down the form provides plenty of "a sense of progress" for me.

<comment><USER9> I guess it doesn't make sense in all cases, but in general, it seems like a good approach.

</comment></comment><comment><USER10> UK voter registration is a brilliant example of this. It's a freaking joy to use.

[https://www.registertovote.service.gov.uk/register-to- vote/c...](https://www.registertovote.service.gov.uk/register-to-vote/country- of-residence)

<comment><USER11> "Start with one thing per page": [https://www.gov.uk/service- manual/design/form-structure](https://www.gov.uk/service-manual/design/form- structure)

<comment><USER12> That really is a great document.

</comment></comment></comment><comment><USER13> For reducing cognitive load, I think the opposite might happen, at least for me. I keep wondering if what I've typed so far is correct, so I keep going back and forth, and become frustrated when the data is lost during page transitions.

<comment><USER14> A summary panel is useful here (on each page).

We did this for Kidly (one of the examples in that post).

<comment><USER15> A detailed enough summary panel for me not to worry about data entry issues is pretty much identical to the original form itself, so at this point one may as well put the whole form on one page.

</comment></comment></comment><comment><USER16> The idea is not totally bad, but I have come across some bad implementations.

The worst is when there is no visual progress feedback, to know where I am in the filling process.

Also for me this is worse than a single form. At some point a question comes up which I don't want to answer, eg. for privacy reasons, or you don't need to know that for the operation I'm carrying out. I have already given out info, which I'd rather not in this case, as I changed my mind on the way.

I believe that multiple page forms have a lower conversion rate, while also wasting non-converted consumer time. this adds frustration, and lowers future conversion rates. Happened to me.

</comment><comment><USER17> Hm, no mention of Typeform when it comes to "Better Form Design" and also one thing per page? Basically, Typeforms main UX is all about showing (or rather focusing) as little part of the form as possible while you fill out, leading to way higher response rate and also (at least personally), a form that is easier and faster to fill out.

Example: [https://templates.typeform.com/to/zvlr4L](https://templates.typeform.com/to/zvlr4L)

<comment><USER18> What's with the invisible text input boxes? And navigation is all over the place, I have no idea where I am, and where I am in relation to the rest of the process.

</comment></comment><comment><USER19> Perhaps it's just me but I absolutely _detest_ this pattern. It turns a simple page where you fill into your details then hit submit into a "simple" 36 step process where at each stage you think "Argh ANOTHER page, just get on with it".

Half the time if it takes more that 2 pages to submit something I'll just give up and find a competent website instead

<comment><USER20> In your case the problem is that you don't want to fill out all the information in the first place, not whether the form has one page or four pages. Getting asked for too much information when signing up for something is annoying.

A multi-stage form should indicate how many pages there are, to prevent the "ARGH it keeps going" effect you mentioned. Surveys are some of the worst offenders here.

</comment></comment><comment><USER21> A lot of components library call these steppers:

[http://www.material-ui.com/#/components/stepper](http://www.material- ui.com/#/components/stepper)

[https://react.semantic-ui.com/elements/step](https://react.semantic- ui.com/elements/step)

[https://ant.design/components/steps/](https://ant.design/components/steps/)

I was trying to pick a react components library (for fast prototyping) and one of my requirements was having this particular component.

</comment><comment><USER22> > The result was an extra 2 million orders a year.

Does the author actually believe that the change of the form setup was solely responsible for the increase in orders? Or was this just a poor choice of words?

It is a pity that they didn't study (or publish) the results of an A/B test on this change.

<comment><USER14> Yes it was based on a percentage increase to conversion with the new checkout flow.

</comment></comment><comment><USER23> I've seen abuse of this pattern. I am currently re-designing a medical form that has about 50 steps on separate pages, and if you do an error on page 5 and notice it later on page 45, you have to hit back 40 times and refill those 40 pages again.

<comment><USER24> The ticket machines of Deutsche Bahn (the German national railway) solve this rather nicely. The dialog is separated into about 10 pages, but the pages are laid out as tabs at the screen's top edge. So that gives you a sense of progression, and an easy way to jump back to any earlier page to change the selection. The rest of the selections are retained properly as far as I recall. Furthermore, every page is populated with sensible defaults, so if you're a single adult who wants a single ticket for today, you can enter your destination and then jump straight to checkout.

<comment><USER23> I am not saying this a bad pattern, but more that it take care to be implemented properly.

<comment><USER24> Yes, and I agree with you.

</comment></comment></comment></comment><comment><USER25> The key is to avoid the extreme of a wizard design where the user clicks through multiple pages with little value in what is displayed on each page.

</comment><comment><USER26> > Users don't mind clicking, as long as each step brings them closer to their > goal.

Yeah, I've been in a similar struggle with single-page-application involving a product-manager whose primary metric was "number of clicks". This was for an internal ERP-type interface where it was trying to "unify business processes" between two companies that had merged. (Already scary, yes?)

Anyway, the unfortunate result is an interface where _way_ too much information is eagerly loaded and displayed. The user is given choices with a huge "branching factor", and whenever they _do_ click it takes so long to jump to the next big data-vomit that they stop being engaged and get bored.

My belief is that we should have been focusing on an interface where the user is presented with lots of fast an easy questions, so that they are funneled to data/forms that help them accomplish a specific business task which we've actually identified.

<comment><USER14> Glad you shared this experience with us.

I agree with the approach :)

</comment></comment><comment><USER27> Ugh. I wish no one would do this, so I could auto-form-fill things faster.

<comment><USER28> You're the 1% case. So am I, and I don't design for us either.

<comment><USER15> The 99% of the 99% case don't complain because they're not aware that websites could not be shit; they think this is how things must be.

<comment><USER28> Thus: we design best so that the 99% have their expectations, developed painfully over years of dealing with shit websites, met with a minimum of suffering, and also so that the 1% find a maximum of purchase for the tools we use to improve our own experience.

It's not easy! But I don't know a better way.

</comment></comment></comment></comment><comment><USER29> I am currently building out a wizard for the next version of my side project. One other benefit not directly spelled out is the idea of progress.

If you look at how linkedin utilizes the progress indicator, it creates a natural tendency to want to complete the profile for many of the users.

</comment><comment><USER30> Its not my concrete case, but for something _like_ a "daily TDEE (total calories)" calculator, what would be better? A single, complex page or a wizard?

</comment><comment><USER31> The article could have been better if concrete end to end example was provided (or references where people could clearly see) that they could apply to their own scenarios.

</comment><comment><USER32> Forms are annoying and should to the greatest extend be automatized. Chrome autofill and saving user's input is helpfull.

</comment><comment><USER33> __*50 celebs who gained weight, just click next to see person one and completely reload the page and ads and crank up your mobile data charges.

I think those people agree with this article very much.

</comment><comment><USER34> One Thing per Page should probably be mandated by law for mobile forms! So much easier & faster to manage.

</comment><comment><USER35> I've been a developer for 10+ years and this is very much in focus at the customer I work for at the moment, where we've created a login portal for our end-users. Recently this design pattern has spread to other sites as well. Over 50% of our users are on mobile devices and almost all of them are traveling. So our services needs to be fast, unobtrusive, responsive and capture just enough of user information. With as little cognitive impact on the user as possible. Travelling is stressful enough as it is without having to potentially struggle with bad UX on a website when you just want to see your flight details.

So the Login page, Forgot password page, Create user page etc. are all asking for one single piece of information at a time, with a clear single call-to- action. This interaction design pattern really works nice when you're conscious about the context the user is in. Be careful not to go overboard with the minimalism though. You still need a good page title, breadcrumb, texts and labels to explain the context where the form is shown.

Example:

When the user has logged-in to your website to shop, have a random step after sign-in that asks for a single piece user information (delivery address, phone number etc.) before they continue. It must be very easy to dismiss, unobtrusive, and easy to understand why you're asking. Some will enter their information, some will do it later. And that's ok because now they had the power of choice. And when they're ready to create an order, the time-to-order (conversion rate) will decrease because some of the information has been pre- filled.

Designing forms for data-capture is difficult and you need to decide on when it is appropriate to ask the user for the information you need.

I've made those God-forms before but never again. Serving the user a God-form with dozens of required input fields, however optimized for data-entry as you'd like, will only add to your drop rate, it will annoy the user and by re- designing how you capture user information you will improve your site's UX (and probably increase your profit as well!)

When designing a form next time, ask yourself: Do I have to ask the user for all of this information right now all at once, or can I capture this information in the context of the user working towards an end goal in other areas of my site?

Minimize cognitive load: [https://www.nngroup.com/articles/minimize-cognitive- load/](https://www.nngroup.com/articles/minimize-cognitive-load/)

Making the choice easier for users: [https://www.interaction- design.org/literature/article/hick-s...](https://www.interaction- design.org/literature/article/hick-s-law-making-the-choice-easier-for-users)

<comment><USER36> > It must be [...] easy to understand why you're asking.

This is the most common place I've seen the pattern you describe go wrong. Sites that ask me for seemingly unnecessary information are asking to be left.

<comment><USER35> Yeah, I agree that it can be a negative experience if it's implemented badly. Prompting too often and too aggressively is bad practice.

However if it's a quick, easily dismissed question, it can work when used sparingly</comment></comment></comment>