Self-Healing iPhone Case - <AUTHOR> http://www.news.com.au/technology/smartphones/worlds-first-self-healing-iphone-case/story-fn6vihic-1226247228042

<comment><USER2> Great move by Nissan in breaking into a new market with an innovative and fast-selling product that fits well into their product line as well. They are making use of their existing resources very well.

This move is also good in terms of branding since Nissan cars may be associated with the innovative and successful Iphone.

I can also think of countless distribution channels where they will be able to sell and package these cases alongside their existing product line.</comment>


"Baffling" "signal" "from HD 164595" is probably none of the above - <AUTHOR> https://setiathome.berkeley.edu/forum_thread.php?id=80193 <comment><USER2> The comment I found most useful:

 _We believe a signal when

It is persistent. It appears at the same spot in the sky in multiple observations.

It only comes from one spot in the sky.

If we reobserve the target, the signal is still there.

Things that add to believability

Its frequency/period/delay does not correspond to known interference.

Its Doppler Drift rate indicates that it is exactly frequency stable in the frame of the center of mass of the solar system

Its properties (bandwidth, chirp rate, encoding) indicate intelligent origin.

Unfortunately the observing method used by the Russian team does not permit many of these things to be determine. 1. The signal was not persistent. 2. The signal was gone when the target was reobserved. 3. The signal frequency/period/delay cannot be determined. 4. The signal Doppler drift rate is unknown. 5. Many sources of interference, including satellites, are present in the observing band._

</comment><comment><USER3> [decoded alien signal from HD 164595] "...must be willing to relocate to San Francisco."

<comment><USER4> "Sentient species from Gamma Quadrant working on next big thing to change the galaxy - Facebook for Gilgameks. Seeking unpaid technical co-founder, offering 1% equity and all the blach you can marklar"

<comment><USER5> > ...all the blach you can marklar

See, it's language like this that turns aspiring blachen in the Galaxy away from the tech sector...

</comment></comment></comment><comment><USER6> I find myself frustrated at researchers who get frustrated at non-researchers being interested at all in their work. It's the same as the hypothetical megastructure; all the news is quite clear: no satisfying explanation is available. That's the news! That's interesting, even to people who decided not to devote their lives to astronomy!

People jump to the alien angle because it's interesting. The few left with that impression that aliens really are involved are likely not going to be dissuaded by more technical reporting

<comment><USER7> The problem is that you don't want to be the kid who cried wolf, you don't want to be endorsing crying wolf, and you in fact maybe even want to punish the newspapers who cried wolf and said you were responsible for the cry.

SETI wants to have the ability to say later, "guys, we have a signal, _and this time we think it 's real_." The best way to have that credibility is if your members are the most likely to say "hey, I know the media is really interested in this but we're really hard-nosed skeptical bastards who aren't going to fool you, this is probably nothing." Then when those people actually say "this is probably something!" you're like, "woah, even the hard-nosed skeptical bastards are throwing in with it."

Depending on your perspective this is either undermined or enforced by the way climate change has been approached. Climate change has been an indisputable fact compelling so many hard-nosed skeptical climate scientists for so long, that now the deniers no longer believe that the scientists are hard-nosed or skeptical. So maybe this is misguided and "haters gonna hate" anyway. But I can understand why it's the default attitude in a tenuous field like fusion research or SETI.

<comment><USER8> Maybe the Fusion and SETI people can learn something from the AI/Machine Learning people. Lots of funding is currently thrown at people who go around telling people they can almost taste the Singularity...

</comment></comment></comment><comment><USER9> Here's more coherent article.

[http://www.seti.org/seti-institute/a-seti-signal](http://www.seti.org/seti- institute/a-seti-signal)

<comment><USER10> While informative your article left me thinking the conclusion was "we don't know what it is", whereas with the OP the conclusion was "nothing to see here, move along".

</comment></comment><comment><USER11> What is the user "bluestar" writing about in this thread?

I don't even understand the intent of the message.

[https://setiathome.berkeley.edu/forum_thread.php?id=80193&po...](https://setiathome.berkeley.edu/forum_thread.php?id=80193&postid=1813586)

<comment><USER12> I wouldn't take it seriously - see the other bluestar posts [https://setiathome.berkeley.edu/forum_user_posts.php?userid=...](https://setiathome.berkeley.edu/forum_user_posts.php?userid=9772571) \- just thoughts strung together, a train of thought, lost and found again... sometimes. I like the style though. I think the comment is about the nature of ETI communication and if it always fits our expectations (like bluestar's comment clearly does not).

<comment><USER13> Makes me wonder if someone isn't pulling an elaborate prank in homage to Brin's _Existence_... The aliens are communicating by posting on our forums already.

</comment></comment></comment><comment><USER14> > There's also nothing that could distinguish it from a satellite passing > through the telescope field of view

There is no tool that automatically rules this in or out as a possibility? I would have thought it would be nearly trivial to build such a thing. Am I missing something?

</comment><comment><USER15> What is the table with numbers they have in their signatures?

<comment><USER16> Their individual contributions to various distributed computing efforts, most likely.

</comment></comment><comment><USER17> history_channel_aliens_guy.jpg?caption=Dyson%20Sphere

</comment><comment><USER18>
      ... decoding, please wait   ...
      ... analysing               ...
      ... complete                ...
      ... message content follows ...

      +++  U N S U B S C R I B E  +++

[https://xkcd.com/1675/](https://xkcd.com/1675/)

<comment><USER19> One of those Paddy Cosgrave's emails?

or LinkedIN transactional emails?

<comment><USER20> > or LinkedIN transactional emails?

Certainly not the only one to think of LinkedIn; [http://www.thedailymash.co.uk/news/science- technology/signal...](http://www.thedailymash.co.uk/news/science- technology/signal-from-distant-star-an-invitation-to-linkedin-20160830113017)

<comment><USER21> In fact the LinkedIn invite seems to work as the "universal caption" for every New Yorker comic ever:

[http://time.com/4046328/new-yorker-linkedin- caption/](http://time.com/4046328/new-yorker-linkedin-caption/)

So it's clearly the pinnacle of human civilization. It makes perfect sense that it's the message an alien intelligence would want to send us too.

<comment><USER22> That's a great modern twist on the original idea that every New Yorker cartoon works then the text is changed to, "Christ, what an asshole."

</comment></comment></comment></comment></comment><comment><USER23> Assuming there is really a signal.... The sum of the numbers 164595 is 30. The traditional 30th wedding anniversary gift is a pearl. I hereby name this planet Pearl.

</comment><comment><USER24> TL;DR:

Nothing to see here, move along.

<comment><USER25> Probably not, but I would wait until the original authors have a look at this rebuttal, and comment on whether it is on the mark. Scientific method.

</comment></comment><comment><USER26> I somehow hate that he used the word "probably"

Takes the sting out of the piece.</comment>


Dutch Cops on AlphaBay 'Refugees' - <AUTHOR> https://krebsonsecurity.com/2017/07/exclusive-dutch-cops-on-alphabay-refugees/ <comment><USER2> > we wanted to keep up with the orders to see if there were any large amounts > [of drugs] being ordered to one place...

Approximately what fraction of people on these sites communicate their addresses in the clear? I thought such sites provided end-to-end encrypted communication between sellers/buyers, and encouraged users to use it.

<comment><USER3> People always, always optout, and once they can control the website, they can MITM any auto-PGP encryption. On some DNMs it's possible cleartext is the majority. And even when people are careful to keep their address/order info PGP encrypted, they can give away info in other PMs.

<comment><USER2> That is some powerful wishful thinking/ignorance. Or maybe it's the drugs.

<comment><USER4> Most buyers have nothing to fear from the police.

</comment></comment></comment></comment><comment><USER5> Can someone explain me the technical details as to how the mirroring of the website didn't raise any suspicion from the customer or buyer side ?

Someone mentioned here that the sites are end to end encrypted, so how exactly did the dutch police MITM such connections ?

Why do the website admins have the capability to read transactions between buyer and seller ? Is this how it generally works in these websites in the sense that the buyer and seller use the website for talking to each other ? That seems kind of stupid given that such websites become a single point of failure outing both buyer and sellers. Why can't they have a end of end system(with forward secrecy) and the website is just a medium for advertising your needs ?

Even if you have the website code, access to the databases etc, you shouldn't be able to know what the sellers and buyers are talking. Aren't the databases encrypted with the keys for decryption only with the seller ? Why does the website owner have access to the transcripts between everyone ?

Please correct me if any of my assumption are wrong.

EDIT: I went to the Hansa market site which has been taken down. The banner there mentions that the source code of the website was changed to allow such behaviour which makes sense. However, this should only put the new buyers/sellers at risk and leave the old ones safe. What went wrong ?

<comment><USER6> > Can someone explain me the technical details as to how the mirroring of the > website didn't raise any suspicion from the customer or buyer side ?

I don't know any of the specifics in this case, but generally speaking, that would not be a user-visible change. The police had access to the hidden service's private key and could simply announce the service from a new location, keeping the same URL. Tor hidden services hide the location where the service is hosted (at least from regular users, less so from more powerful adversaries).

> The banner there mentions that the source code of the website was changed to > allow such behaviour which makes sense. However, this should only put the > new buyers/sellers at risk and leave the old ones safe. What went wrong ?

I don't know if they've mentioned whether they have busted only users that have used the site after the takeover - they got a massive influx of new users after AlphaBay went down, so that could've been good enough for them. Based on past cases, I imagine there were plenty of OpSec mistakes that could've lead to a bust either way.

(This is probably a good example for why browser crypto is currently a bad idea.)

</comment></comment><comment><USER7> "We knew the Hansa servers were in Lithuania, so we sent an MLAT (mutual legal assistance treaty) request to Lithuania and requested if we could proceed with our planned actions in their country. They were very willing to help us in our investigations."

Okayy, this "very willing" part is going to deter me from hosting anything located in Lithuania any time soon

<comment><USER8> Every country has laws. If you want to evade investigations into drug trade and whatever else they were trading at AlphaBay and Hansa, you should go to a country where they're not illegal.

</comment></comment><comment><USER9> I am very interested in finding out how they were able to know with certainty that the server was located in Lithuania. I didn't find this mentioned in any reporting of the Hansa takedown and I see a handful of commenters on Krebs asking the same question.</comment>


Workshop – meetings/screen sharing for small group, remote workers - <AUTHOR> https://workshop.ycm.io <comment><USER2> Is this an open-source project by chance?

<comment><AUTHOR> Nope</comment></comment>


Want to Get Rich? Why It Is Foolish to Try and Build a 'Unicorn' - <AUTHOR> https://capitalandgrowth.org/articles/440/want-to-get-rich-why-it-is-foolish-to-try-and-buil.html?src=HN <comment><USER2> The head line is clickbait. The interviewee makes a case for early exits as a win-win for larger companies and startups. But he doesn't even come close to implying the head line. He does compare it to winning a lottery -

"The other strategy is to try and be a unicorn. To raise enormous amounts of capital and build the next Apple, Microsoft or Amazon. There's nothing wrong with that. If that's what you want to do and if you can find investors to finance it, that's a perfectly legitimate strategy. But the chances of success are about the same as winning the lottery. It is a black swan event."

The whole interview is also an ad for his company - "Early Exits" which helps people sell their startups in $50-100 million range. Is there a market for such companies?</comment>


Diaspora up to $150,000 - 4000+ Backers - <AUTHOR> http://www.kickstarter.com/projects/196017994/diaspora-the-personally-controlled-do-it-all-distr/posts

<comment><USER2> I think we should stop tossing money at this problem. That's more than enough until they get something out the door.

</comment><comment><USER3> They are building up the hype nicely, but will ordinary people be interested in this or just keep using Facebook?</comment>


Echo park time travel mart - <AUTHOR> http://laughingsquid.com/echo-park-time-travel-mart/

<comment><USER2> I am in two minds over this.

On one hand, this is awesome.

On the other hand, this seems to have been so deliberately designed to make people like me say "This is awesome" that I feel compelled to say something snarky about it. I hate the thought that I'm part of some market segment.

<comment><USER3> They're a non-profit tutoring organization focusing on creative writing skills. This is one of their fundraising methods.

<http://www.826la.org/about/>

<comment><USER4> So it's designed to make me say "this is awesome" twice. That's really manipulative.

</comment></comment></comment><comment><USER5> This place is in my hood and is great. My buddy Eli Stonberg shot these performances there, and I think they nicely spotlight the uniqueness of the place: <http://dublab.com/labnotes/tune-yards-visionversion-2/>

</comment><comment><USER6> I love these 826 stores. I've got a set of time-travel travel posters from Echo Park and some cans of immortality and omnipotence from the Brooklyn Superhero Supply Company as well :).</comment>


FBI Harassing Core Tor Developer, Demand Meeting, but Refusing to Explain Why - <AUTHOR> https://www.techdirt.com/articles/20160505/00383034349/fbi-harassing-core-tor-developer-demanding-she-meet-with-them-refusing-to-explain-why.shtml <comment><USER2> Original source:

[https://blog.patternsinthevoid.net/fbi- harassment.html](https://blog.patternsinthevoid.net/fbi-harassment.html)

Previous discussion:

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

</comment><comment><USER3> It sounds like her concern is that they might show her a magic piece of paper which, once you've seen it, requires you to do certain things and prohibits you from ever talking about it to anyone.[1]

Magic pieces of paper like that really shouldn't be a part of our legal system.

[1] [https://epic.org/privacy/nsl/](https://epic.org/privacy/nsl/)

<comment><USER4> They can email those to you.

<comment><USER5> if emailed, what prevents you from leaking it (along with other recent content of your email inbox) claiming somebody hacked your email ?

<comment><USER6> Fear of prison?

<comment> maze-le You can get into prison because someone hacked your email account?

<comment><USER6> If they dig into it and decide that you did it yourself, as the parent suggested, then yes, you would have a serious risk of prison time for willfully violating the NSL.

</comment></comment></comment></comment></comment></comment><comment><USER7> She lost my support at _vegan gluten-free brownies_. She's clearly a monster.

But seriously, this really stinks. If talking to the FBI wasn't going to have negative consequences for her then why would they choose to approach her like that?

The whole attitude by law enforcement that "anyone who doesn't 100% cooperate with us on our terms is an enemy and should be treated as such" really doesn't foster cooperation but it does foster fear and resentment. I think the whole Apple/iPhone debacle demonstrates that perfectly. It's gotten to the point that businesses are finding that they're in a better position if they lock themselves out of their own data and tell law enforcement to f __k off because their hands are tied. It 's ironic because this non-cooperative behavior is a direct result of the abusive and hostile tactics law enforcement use against everyone.

<comment><USER8> The part about "meeting her on the street" is particularly slimy. Declining to pass questions through a lawyer is shady, but asking a person to confirm their lawyer's identity as a _trap_ to question them is bizarre.

The whole thing reads like its either an agency involved in something unethical, or an agency so far removed from decent behavior that they no longer notice when they're menacing innocents.

<comment><USER9> It sounds more like a subtle way to say "we'll meet you on the street, after a SWAT team drags you out of bed at 2:00AM"

<comment> at-fates-hands She's smart by putting this out there now. Even if they detain her for some unknown reason, she can still contact her attorney, who then alerts the local and national media and now the FBI have a firestorm of publicity they don't want. Along with several lawsuits I'm sure her attorney would file immediately.

Sure, they can do that, but the repercussions are something they certainly don't want to deal with.

<comment><USER10> What if it turns out that most of these agencies don't care about negative publicity (because they can't be fired) or lawsuits (because it's not their money)? That's the part that really scares me: no transparency, no accountability, and a bunch of secretive True Believers running things. Like the Chinese government!

<comment><USER7> Is there a government out there that doesn't operate like this?

</comment></comment></comment></comment></comment></comment><comment><USER11> This is terrorism. Given what we all know based on past events about how the FBI conducts their activities, there is no way any reasonably aware citizen can conduct their life normally after such an encounter.

The last discussion thread on this topic had more than a few people complaining that Isis (the given name of the developer in the article) is overreacting and paranoid, which is a saddening response to see. It exposes the privileges and unfortunate circumstances citizens find themselves in because these agencies refuse to prosecute their anti-terror investigations in well-thought out ways, instead pursuing facile leads without regard to the external effects they cause.

We've even seen evidence that these agencies deliberately manipulate otherwise innocent people into behavior that implicates them in their "terror suspect" criteria, so it's hard to believe that anyone in this situation could be somehow too cautious.

<comment> maze-le I wouldn't use the word 'terrorism'. Its usage is already inflated beyond reason... I'd rather call it what it is: intimidation / harrasment.

<comment><USER12> > intimidation / harrasment

The FBI used to call that "COINTELPRO".

</comment></comment></comment><comment><USER13> "I got absolutely no work done."

That's the tactics they use (don't ask how I know that). Be strong and welcome to Germany!

<comment><USER14> No idea why you get downvoted for this.

There is a german word for it - 'Zersetzung'. It was used by Stasi in former divided Germany and for sure has been used in recent years against other folks of the Tor community.

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

<comment><USER15> >and for sure has been used in recent years against other folks of the Tor community.

Examples?

Edit: Not really sure why asking for examples gets downvotes. Google news search definitely didn't turn up anything but this story.

<comment><USER8> If you'll count "people running exit nodes" in "community", it's fairly common. People get searched and possibly charged for whatever is coming out of their node, but not convicted since its not their traffic.

And yes, that could be the legal system working normally, but there have been cases where the government already _knows_ about the exit node, but doesn't reveal that information to the judge while obtaining a warrant.

<comment><USER16> I'm aware of exit nodes as I've myself been subject to such attention, but I don't think that really fits chinathrows description.

</comment></comment></comment></comment></comment><comment><USER17> > _"But… if we happen to run into her on the street, we're gonna be asking her > some questions without you present."_

Impressive for a LEO to state out loud he doesn't care about rights and due process. Like maybe he thinks he's above the law.

<comment> at-fates-hands This is a classic psyops move on their part.

Get the person thinking they're not safe anywhere, so they stop going out, stop being mobile and stick to a more confined area. Once they've determined where she is, it makes it a lot easier to get in contact with her.

If she's smart, she start moving _more_ frequently, and travel in states where they don't have field offices, avoid air travel and create a constantly moving target for the FBI officers trying to nail her down.

<comment><USER18> _> If she's smart, she start moving more frequently..._

I don't think that's practical. It would cause her a lot of stress (not to mention cost quite some money) and sooner or later wear her out.

It also means that the FBI has reached their goal of intimidating her, since she is changing her behavior because of them (assuming that _is_ their goal of course).

</comment></comment></comment><comment><USER19> I wish the FBI agents who perform these kinds of actions were as introspective as Snowden. Once you define your team as "the good guys", you can do all kinds of morally objectionable things to the other side.

"the ends justify the means" at that point

</comment><comment><USER20> The worst thing about this is that it will turn out that the developers involvement will be relatively innocuous in the grand scheme of things, hence the lack of any real urgency from the FBI, but it is terrifying for both the developer and as a citizen that he FBI seem to be inept and/or deliberately making it so difficult to speak with someone who it would appear they think can assist them.

</comment><comment><USER21> The problem is the attitude that the NSL is just another "tool" in the FBI's toolbox, to be used as aggressively as can be in the pursuit of criminals. There is no effective check or balance against this -- we are forced to rely on the investigators to use their discretion, knowing that any challenge to such a warrantless request has about a zero % chance of being successful before the FISA court.

I would like to see an activist attempt to challenge such an order, or even refuse to cooperate in an NSL where the FBI is acting outside of its legislative and Constitutional authority. However, the overwhelming incentive in any such situation is to cooperate. And from what I have read, even if the FBI is acting illegally, the subject of the investigation aided by the NSL may still be a fairly loathsome criminal -- so, you have to be quite a principled activist to risk prison time to make a civil rights statement, when this is directly going to benefit a badguy in the specific instance.

</comment><comment><USER22> Why does everyone, including Ms. Lovecruft conclude that something is horribly wrong and that FBI wanting to speak with them means they are in deep shit? I'm by no means defending them, but to me, the whole (original) post looks overly paranoid.

I'm not an American, you can speak with Police freely here in Slovenia, so maybe I understand things wrong?

<comment><USER23> For a developer of a tool frequently used to conceal "terrorism", this amount of paranoia seems healthy.

Also, no you cannot "speak with police freely" in the US. Anything you say to an officer of the law can be, and it should be assumed that it will be, used to incriminate you. To make matters worse, you can be forced to give up your right to self-incrimination by being legally compelled to divulge information which incriminates you.

In general one should never speak to police in the US. Not even as the whiteness to a crime. For a great overview of the seriousness of why one should never talk to US police, view this lecture by a professor and former criminal defense attorney: [http://youtu.be/6wXkI4t7nuc](http://youtu.be/6wXkI4t7nuc)

Incidentially, the American Civil Liberties Union of attorneys (ACLU) has created a series of mobile apps to record police encounters because of their tendency to be problematic for citizens. For example, [https://play.google.com/store/apps/details?id=org.aclu.mobil...](https://play.google.com/store/apps/details?id=org.aclu.mobile.justice.ca)

</comment></comment><comment><USER24> Could they be trying to serve her?

<comment><USER25> If they were, they wouldn't make a phone call first. They would just do it.

</comment></comment><comment><USER26> The original story told about a couple of polite phonecalls where they have requested to talk with her. How does it get described as "harassment"? Of course, she also added a lot of paranoid speculation to her original blog post, but there's not a single confirmation of her fears so far, not even a hint.

<comment><USER27> >The original story told about a couple of polite phonecalls where they have requested to talk with her. How does it get described as "harassment"?

As soon as they continued after the very first 'no' it becomes harassment. Imagine this was a work setting, the FBI was a coworker of this individual, and they asked for a date. After the very first "no, please don't bring it up again" it becomes harassment.

<comment><USER28> Only that this is not a sexual setting and the fact it is a "she" changes nothing in this context.

<comment><USER29> The point still stands. If a person tells you to stop an action they find uncomfortable for whatever reason in any way, no matter their gender, race, etc. It becomes harassment. The FBI is a government organization that you could argue has the job of doing this, however they fail to ever state why they require her assistance (and they seem kinda rude to me).

<comment><USER30> > *If a person tells you to stop an action they find uncomfortable for > whatever reason in any way ... it becomes harassment."

I don't want to get too far off topic, but this is blatantly false, especially as far as law enforcement is concerned.

<comment><USER31> Disagree.

Lefkowitz v. Turley, 414 U.S. 70, 77 (1973) the Fifth Amendment "not only protects the individual against being involuntarily called as a witness against himself in a criminal prosecution, but also privileges him not to answer official questions put to him in any other proceeding, civil or criminal, formal or informal, where the answers might incriminate him in future criminal proceedings

<comment><USER30> You have no such protection if you won't be incriminated by the answers (e.g. they are asking you about someone else). You can of course be involuntarily called as a witness in proceedings where you're not being prosecuted.

<comment><USER32> AFAIK, (and IANAL), you would have to be certain the questions did not incriminate you. In other words, "pc86, were you or were you not on your couch May the 5th at 8PM EST?" "I plead the fifth." "Your honor, this doesn't incriminate the witness." "pc86, you must answer the question because it is non-incriminating." And of course if it was incriminating, the appellate lawyers would win resoundingly.

Logically, it would follow that if you don't know what a question IS, you can 'plead the fifth' to it on the basis that it could be incriminating. But again, IANAL.

<comment><USER31> You however do not have to talk to the police. Ever.

You shouldn't either. They are not your friend.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER33> 1) Imagine the position of people who can't afford a lawyer, don't work for the EFF and know their rights, can't easily move to anothher country, and don't have a platform from which to publicly tell their story.

2) Imagine this power in the hands of a President with fascistic tendancies.

</comment><comment><USER34> This didn't really register with me as tyrrany. What did the FBI actually do to her?

Going around a lawyer is a good way to lose a case against her, so maybe they weren't trying to make a case against her.

Maybe they actually had some real questions that involved her expertise or knowledge she might have had.

</comment><comment><USER35> This is like the SA treated people at the beginning. They knew they did not have any legal foundation for their harrasments, but that they would never hold accountable for that. After some time without uprising against that the SA was replaced by the SS.

</comment><comment><USER36> Curious how many people on HN have had contact with the FBI in the past year?

<comment><USER37> It is hard to say for a lot of reasons, like if you'd consider informants with explicit direction from the FBI as "FBI". Also, while living in DC many years ago, I was surprised by the number of homeless people I saw with Blackberrys - until I learned about the way FBI surveillance is conducted there.

</comment></comment><comment><USER38> It's plausible it's because of her name Isis and some agent thinks she's Isis

</comment><comment><USER39> Sounds like they have no god damn idea what they're doing. But of course, frightening nonetheless.</comment>


Grubwithus founders want you to get out and meet people - <AUTHOR> http://venturebeat.com/2011/08/01/grubwithus-redesign/

<comment><USER2> So happy to see Eddy and Dashin continue succeeding! I feel like "I knew them when", back when they were running their Beard Papas shop here in Chicago and hacking away at this idea.

Love stories like theirs.</comment>


Ask HN: Survival planning for the Urban Condo dweller? - <AUTHOR> So when the power went out in Toronto, I found that I was woefully unprepared for life without electricity. My land phoneline , by Vonage ,was unusable. My neighbors' phone lines , from Rogers and Bell Fibe were also dead. My Nexus 4 battery gave out soon after and it stayed mostly dead during the outage. We had a lot of food but without power it was useless , thanks to a modern electric range. And even though our condo  has a gas furnace, it was not working without power. Without TV, Cellphone and with a sick toddler( who got worse but is better now), we found the going rather overwhelming.
Since them I was been figuring out what gear I need to be comfortably set during the next outage; gear that can be stowed a corner in a condo without posing a fire hazard or taking up too much space.  I am not looking to outlast the next apocalypse ; I merely want to comfortable  through the next urban bureaucratic fuck-up
So far my list has only few one -- super thick comforters .  Can HNers add to this list ? <comment><USER2> 1) Fill the bathtub with water - as pumps sometimes die

2) camping equipment (sleeping bags), electric lights etc

3) small camping stove (use on balcony only)

4) battery backup pack for cellphone or backup cell with cheap pay as you go #

5) Warm clothing

6) Friends/Family - go to their place</comment>


The Efficiency-Destroying Magic of Tidying Up - <AUTHOR> https://florentcrivello.com/index.php/2019/09/04/the-efficiency-destroying-magic-of-tidying-up/ <comment><USER3> > When computers design things, they look very different.

Yes, because the computer assumes they're not going to change. The "tensile structure" looks cool now, but throw it in the back of a truck for 3 months and see if it's still algorithmically perfect. Parts get beat up. Tabs get bent a little. Maybe we'll want to grind off one of those tabs that we're not using because it's in the way, or weld on a new one. With the old structure, I can see which parts are relevant to maintaining the integrity of the system.

It looks like an un-optimized binary, which is very close to its source code. That's a feature. I can reason about the parts on their own.

The "topologically optimized" one is like an optimized binary. It's great for saving a few grams as long as you never have to change anything. The downside is that it's impossible to reason about. If one tab gets a little bent, that may be harmless, or it may cause the entire structure to lose its strength. You don't know.

Similarly, the truss on the catwalk over the crazy-looking Wendelstein 7-X is made of nice even rectangles and right triangles, and I guarantee that's not because it's a topologically optimal shape for this truss.

<comment><USER4> There are ways to make such "organic" structures more resillient. _Life_ is one huge proof of that. One of the reason biologists and medical researchers have so much trouble figuring how anything works in living organisms is because in biology, there are very few clear boundaries; every process is mixed up with a lot of other ones. And yet the final result is incredibly resilient.

<comment><USER5> Sure, but there's some downsides to that. If a part in my car fails, the mechanic pulls it out and bolts in a new one without much consideration for the rest of the system. If a part of my body fails, there's a slim chance I might be able to get a replacement from another person, and I'll have to be on immuno-supressents for life, and very expensive people will be needed to perform the installation, and things often go wrong even so.

The house I'm living in has been around 30+ years, but in the last 5 years, I've witnessed several trees in the yard die.

I guess what I'm saying, is there is a trade off between easy to understand and fix (orderly) and resiliency(biological), and even then I see a lot of orderly things outlast the chaotic systems.

<comment><USER4> A good point, and cars are a perfect example. Older cars tend to be less efficient than new ones, but there was a point in time not too long ago when you could repair anything in your car with a welder, some elbow grease, and a free afternoon. New cars of today tend to require expensive somewhat expensive specialists to fix, and I've been hearing that the future is in cars that refuse to start unless the ECU can cryptographically verify that each and every part is authentic - that's like an immune system of sorts, except one that isn't protecting your car, but the manufacturer's ability to take your money. Unfortunately, it seems that more and more complex products are heading this way.

<comment><USER6> > _New cars of today tend to require expensive somewhat expensive specialists > to fix_

Not for any practical reason. The tolerances on _some_ parts are tighter, but in general anyone who takes the same interest that the average man took in the '80s can repair the vast majority of a current vehicle, safely, as long as they're not deliberately impeded by a computer.

<comment><USER4> > _as long as they 're not deliberately impeded by a computer_

But I meant exactly that - at least from the stories I hear (I don't own a new enough car), half of the breakage in modern cars seems to require interfacing with the computer to at least clear an error flag. I once helped a guy with a software project, and learned that he's operating a workshop fixing a specific car brand. He showed me the device he uses to interface with the computer, and explained to me how the official software costs such ridiculous amounts of money that he instead hired some Chinese company that would remote-connect to his laptop and do some trickery to keep the software work without the license. Neither official nor the "unofficial" route seems to me to be accessible to a regular car owner.

<comment><USER7> >half of the breakage in modern cars seems to require interfacing with the computer to at least clear an error flag.

Yes, you need an odbII tool. they are not expensive by the standards of decent '80s automotive tools (the cost of 'minimum viable analog tools' has dropped precipitously during my lifetime. )

The cheapest ODBII tools are bluetooth, and there is a cornucopia of apps to interface with them in the app store. You can get one that is easier to use that doesn't require a phone for $100 that will work for most problems on most cars.

(Of course, the more expensive ODBII tools are better, I'm given to understand, and allow you to do more, but you can do a _lot_ with the cheap junk; and resetting the codes is generally the most basic functionality; unless you've got a fancy car, even the cheapest one that fits your brand should work for that. )

Having come of age at a time when I was driving and repairing (older) carberuated vehicles, I personally think that fixing a carb is like a thousand times harder than interfacing with the ODB system. Modern injection systems just solve so many problems without trying.

My experience of the modern diagnostic systems is that it's actually way easier. The scan tool saves you so much time and effort vs. the old manuals "go to page 5 if it doesn't X, 32 if it does" A lot of the time, the cheap scan tool gives you a code and description; you punch that into a search engine and you get a goddamn video of someone doing the repair. It's _amazing_ compared to screwing around with an exploded parts diagram. (I mean, from the perspective of someone who isn't really a car guy) - I mean, there's always problems the scantool doesn't catch, but... I mean, I'm talking about all this from a shadetree perspective, there have _always_ been a lot of automotive problems I couldn't fix, just 'cause I'm not an automotive specialist.

<comment><USER8> An ODBII is helpful for basic stuff but it doesn't get you very far with modern cars. Most manufacturers now have specialized proprietary scanners which are needed for any complex repairs, especially for anything electronic. Those scanners are extremely expensive and sometimes only sold to authorized service centers.

<comment><USER9> Are these manufacturers called BMW, by any chance? They sell this authorized "computer module" replacement part for $400. But if you take it apart, there's a 50 cent fuse inside that was blown. Replacing the fuse does no good without access to the proprietor BMW software, because the module will refuse to work after the fuse is replaced until it is reset using their software. Which means you have to pay for a whole new module. However not all manufacturers are like that. After I change the oil on my Honda, there's a silly little dance to reset the oil life indicator, but nothing too crazy. The Toyota Corolla is a favorite for self-driving car enthusiasts due to the hackability of its lane- guidance system into something fuller. I'm also disappointed in some of the directions the future has taken us (it's frustrating to me how hard it is the replace user-servicable parts inside a lot of laptops, eg Apple), but not all manufacturers are the same and talking about the situation as if they are is too abstract to be useful, say, when looking for your next car.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> I think I have to quibble with this:

> Here, I propose Scott's Law: never put order in a system before you > understand the structure underneath its chaos.

James C. Scott wouldn't probably _never_ underwrite re-ordering of systems from the top down.

Central to his argument is that viewing complex systems from any singular position requires a process of simplification (legibility) that prevents a complete understanding.

The _presumption_ that one has gotten to a place of "understand[ing] the structure underneath [the] chaos" is in fact the false confidence he attributes to most of these ordering projects.

I think if you want to wrangle a suggestion from Scott's book, it's more about making lots of small pokes at a system and seeing how it reacts, and slowly building on positive reactions from the system.

(Also, messiness and complexity are not intrinsically linked to the efficiency of a system — systems can optimize for lots of variables and it's really context-specific. So as much as you shouldn't take order to be innately good, don't take messy to be innately efficient!)

<comment><USER11> > Here, I propose Scott's Law: never put order in a system before you > understand the structure underneath its chaos.

Previously formulated as Chesterton's Fence [0], among others.

There's definitely a blind spot in software for the general principle that you should understand a thing well before you decide to remove it. Anyone want to propose some theories on why disregard for an extant body of work tends to plague software so extensively?

[0] [https://www.chesterton.org/taking-a-fence- down](https://www.chesterton.org/taking-a-fence-down)

<comment><USER12> Because we suffer from the attitude that we don't have to understand a thing, as, say, reading the article might lead to, before attempting to correct it. ;)

<comment><USER11> It wasn't really intended as a correction -- more just an addition -- but I didn't feel like clarifying just to save a few imaginary internet points. Apologies to anyone who interpreted as attempting to correct an article I didn't even read. :)

</comment></comment></comment></comment><comment><USER4> Incidentally, I think the producers of Star Trek nailed this with design language of the Borg, perhaps accidentally.

For those who don't know, the Borg are a machine intelligence hive mind species that roams the galaxy in their cubes, spheres, diamonds and other ships shaped like basic solids, destroying or assimilating anything interesting in their path, and speaking a lot about "bringing order to chaos". Yet seemingly despite their focus on order and perfection, the individual drones and the microstructure of the ships both look like a haphazard bundle of lights and wires. This is in line with the article - machine intelligence optimizing for extreme efficiency across multiple dimensions isn't going to create sleek-looking constructs.

<comment><USER13> I suspect it ain't all that accidental. Each Borgship behaves (ostensibly) as a single giant organism (and the Borg within it its cells), and multicellular organisms are indeed pretty messy inside, even if they look externally simple and uniform.

</comment></comment><comment><USER14> I'm a 'lover of chaos'. My working desks always gather strata of documents, more often than not disheveling onto the surrounding floor.

This article however rubs me the wrong way right from the start. 'Cars running at the same speed' aren't "efficiency-destroying" nor about spurious 'appearance'. A controlled laminar flow is incredibly more efficient than chaotic turbulence.

It does not get any better later on, when the author waxes lyrically about 'beautiful equilibrium that evolved to satisfy a thousand competing constraint' in the absence of planning, casually glossing over the part where communal zoning regulation prevents not just externality dumping races to the bottom and the basis for non-speculative investment to those that can't afford to gamble or force their own "manu militari" regulation.

While self proclaiming "not suggesting all chaos is good", it is exactly what the rest of the article's suggestive language tries to convey. The deregulation agenda, while not explicitly spelled out, is omnipresent in the tenure of the writing.

P.S. I'm not surprised to learn that the author works for Uber.

<comment><USER15> Very well said, and I think you've hit the nail on the head with regards to the 'deregulation agenda'. The subtext of articles like this is always that interference, in the form of regulations, is a negative action, and by stripping away the messy human meddling we'll reap the rewards. It's never considered that the human meddling is so often done to protect the humans themselves, most often the very weakest or most powerless.

</comment></comment><comment><USER16> Sorry but there's no excuse for crap code. If it's hard to understand then time is lost every time you have to work with it.

You shouldn't defend it by trying to assign positive attributes to it (its effecient. ...yeah). Maybe there's nothing good about bad code and we should use being called out on it as an opportunity for improvement.

No, lets double down on our delusions of superiority by telling ourselves that crap we wrote is somehow effecient in some way.

Im tired of it. Its not effecient. Its bad and you should feel bad.

<comment><USER4> When applying this article to code, I don't think it has anything to do with spaghetti being good. It could be viewed instead as an argument against "architecture astronautics", the "15 layers of abstraction to print 'hello world'" school of software design.

<comment><USER17> Exactly. I remember being called into consult on an accounting system for microfinance; the target audience was small to medium-sized. The code had an absurd amount of layering; one path I traced copied the data 8 times from fetch to render, each time into a different set of objects that had basically the same fields, but that were conceptually different.

When I asked about this, I was told it was "best practice" and that if they ever needed to scale, there were now many places they could separate things. I pointed out that for the target audience, they probably wouldn't need to scale. But that if they did, it would be because they were doing 7x the work necessary.

The code was certainly "tidy" from the perspective of the guy who got paid a lot of money to produce architecture diagrams. But it was a nightmare from the perspective of an individual programmer trying to add a feature. They would have been way better off without a lot of quasi-religious design theory slowing them down.

<comment><USER4> I used to write code like that - architecting whole application up front, creating layers upon layers of abstractions. Experience taught me to do the reverse now - start with the simplest version that works, keep going until writing code gets tough, and then switch to whiteboard and use what I learned along the way to design a proper solution (and if any part of the design process starts getting tough, I switch back to writing the simplest thing that works). Rinse, repeat. It's not about rushing to release barely working pile of spaghetti, but recognizing that programming is an exploratory activity, and you don't know enough to do complete design up front.

And really, it turns out most of the time that not only you don't need the complex abstractions designed early on, you actually need a set of different ones. That's why keeping the design process continuously grounded in reality is important.

My solution for not producing spaghetti code with this method? I don't release the first version that works. I don't mark the ticket as "done", and I don't even push it out of my local repo. Instead, I clean it, or even straight up rewrite it, until it reaches a sleek and acceptably elegant state. It's the responsibility of a programmer to decide when the code is ready, and it doesn't have to be at the first moment it passes all the tests.

<comment><USER18> Maybe the most astonishing thing I've learned in my career is that it's far better to design your system _after_ the code is written and working!

Because that's the time when you've learned to understand the problem, and you already have working code to move around.

<comment><USER19> This, absolutely. The time to design properly isn't before you write code. It's when the requirements start to become fixed rather than fluid.

</comment></comment></comment></comment></comment></comment><comment><USER20> I'm loving these intelligent criticisms of the article.

My own biggest beef with the article is it entirely misses the deep point of Marie Kondo's work, which is about efficiency and joy. If the article is not actually a response to her philosophy and definition of tidiness, and just needed a cute title, well, that's confusing at the very least. The commenters who point out that codebases, for example, need to be reasonable for humans to work in, or that it sure is easier to change source code than a compiled binary, are on the right track.

Kondo's method is all about identifying the clutter _that is actually clutter_, and deleting it. Would you rather maintain a program that's 1000 lines, or 100? If the 1000-line program was written by you, for you, over the course of your life, and by your own admission is extremely messy and moderately unpleasant to deal with, containing lots of unused stuff, yet you run it, and modify it, every day, no one is going to force you to clean it up, but you can find joy in doing so.

<comment><USER21> Based on the content, it seems to be primarily a clever title. I don't think the author is trying to refute a hypothetical group of engineers who are trying to apply Marie Kondo's philosophy to software. (Not that there aren't devs who are doing that, but that doesn't seem to be the author's goal.)

<comment><USER20> This made me smile ("refute a hypothetical group of engineers..."). But even if the author is not refuting Kondo's methods specifically, is the author not saying that acts of intentional tidying should be viewed with skepticism for putting form over function? When Kondo's approach is a perfect counterexample of the claim that decluttering is putting aesthetics over efficiency.

Actually, I think this article is not about software at all, or decluttering a room, it's about " complex systems — like laws, cities, or corporate processes," and then uses the word "systems" as shorthand for this, and then talks a bit about managing software projects but it's really still about good corporate process, and then mentions tidying a room but mostly as a joke.

I think the actual point is more about large groups of people or organisms that function well together, and how you shouldn't assume it is better to impose uniformity. Even then, though, it is easy to argue both sides of this point, pick apart the examples given in the article, and use a codebase as an analogy to an organization.

</comment></comment></comment><comment><USER22> This article makes some good points. In particular, it emphasizes understanding why there is a "mess" in the first place — appreciating the role of things in a functioning system is an important step forward to any kind of constructive change.

Some elements of Konmari's method actually are consonant with that, since evaluation of your self and the place of objects in your life are a continuous part of the process. Just throwing all your stuff away every week, whether you need it or not, would definitely be efficiency destroying although it would also be very tidy. Speaking from experience, however, this is not a behavior that developers struggle with. The heedless piling up of trash, code and tickets is far more common.

</comment><comment><USER23> _" When a God-level AI takes over in a science fiction book, it often remakes the world in its image: full of straight lines, smooth acceleration rates, and lots of chrome (AIs love that stuff). But as we start using algorithms to design things, we get results that look a lot more chaotic than that..."_

It would be interesting to see a movie where an AI takes over and turns reality in to a Rube Goldberg machine.

<comment><USER24> Huge corporations and governments are kind of like hybrid silicon/meat AIs and that's exactly what they've done. I think this is the most likely outcome.

<comment><USER25> No, corporations and governments flatten and simplify everything until they can understand it. The next step, once we have powerful enough systems, is to embrace the chaos and use it.

E.g. older houses were hand-built, but nowadays houses are built with straight walls and standardised heights for everything so that mass-produced furniture can fit in them. But if in the future our furniture is made on-demand by AIs, then there's no reason to do it that way; you can have a non-standard height for your kitchen counter (for example) and if/when your dishwasher breaks, the AI system will fabricate you a new non-standard dishwasher to go under it.

<comment><USER26> I work for a large size corporation but one which is a quarter the size of many fortune 100s. I guarantee you almost no one knows how things work or are done beyond their immediate scope. Much of my life is spent just trying to glean an understanding of some adjacent function or trying to convince people above me that things they believe about how things work are not actually reflective of how they actually work.

A Rube Goldberg machine usually accomplishes one task. Corporations at scale don't resemble them mostly because, as there are a multitude of concurrent tasks in flight, the Rube Goldberg machines are neither complex nor absurd enough.

<comment><USER27> Maybe that's how Musk's ventures are different - he knows how everything in his corporation works?

<comment><USER4> I think the primary difference is that for Musk, his companies are actual means to a non-monetary end (electrification of transport, Mars colonization). This creates a tremendous levels of focus. Most companies exist to make money for their owners, and any actual useful work done is only a side effect.

</comment></comment></comment></comment></comment></comment><comment><USER28> I mean that image of the 'before/after 'topological optimization' seems like a poor analogy.

>confirming that our intuitive preference for "straight line" designs has nothing to do with performance

As the first is made to be made because of its 'straight lines'. You can see the welds and logic in it, as something easily made.

While the second is something only achievable via 3D-Metal printing or possibly very complex 5 axis CNC.

<comment><USER29> That's the first thing that struck me as well; a person like my dad (a retired blacksmith), could make the first one ...

<comment><USER30> It's for that reason that I consider the first one to be the more efficient and 'chaotic' design despite the straight lines. It's optimised for production, repair or replacement in the field using nothing but metal stock, a welder, saw, and a drill, or indeed can be manufactured by hand by a blacksmith. It screams form over function.

</comment></comment></comment><comment><USER31> This article is wrong on so many levels:

1\. Theoretical: chaotic and complex are not the same thing. Organized and tidy are neither the opposite from or excluding complex systems. Some very tidy systems can still be mind-boggling complex. Furthermore Chaotic systems have a single underlying order (it might just be impossible to discern), but they are not complex. Complex systems might have multiple orders, none at all or everything in between.

See for an in-depth discussion: The Collapse of Chaos; Discovering Simplicity in a Complex World, Jack Cohen & Ian Stewart, Penguin, 2000.

2\. Practical: The amount of tidiness in a complex system does not say anything about its efficiency, but neither does its untidiness. Complex systems might be untidy through sunken costs, like most cities are, revolution, evolution, historical accident, or even attempts to make an ordered system (like a system of law) always leaving some gap. The fact that a complex system exists does not say anything about it being efficient or its fitness for purpose. Like the three year old who thinks the mess is beautiful, but cannot find her favorite plush toy.

Changing complex systems is indeed hard, because different subsystems will interact, have feedback loops, create externalities, exclude external information or are near impossible through sunken costs. But that still leaves the calculation of how much the new system or altered system might be more efficient or better than the current system and what the risks involved are.

Tiding up complex systems has risks, but also benefits even if you don't believe the second law of thermodynamics applies to human created systems. Tidied up systems are more easy to reason about and thus can be more easily fixed, adapted or expanded upon. The act of tiding up has the additional benefit of adding to our knowledge about how a system actually works.

3\. This guy works for Uber. The cab company _with a computer_ that wants to uproot the current (complex) systems and replace it with something simpler. Yet fails to turn a profit. Do we need to read something into this article, or did he just not realize he contradicts his employers mission?

<comment><USER32> All true, and I would also add a lesson from software design. Spaghetti code might, in some limited sense, be more efficient in some cases, but it is difficult to understand, therefore difficult to fix when something is wrong. Making things orderly, even from a top-down perspective, may be more important than being as efficient as possible, if you need to be able to understand what's happening in order to use (or fix) whatever it is.

</comment></comment><comment><USER33> I once cleaned up my sister's room. I thought I was doing her a favor but she was mad at me for a week! In hindsight I should have known better. Spacial memory and all that, she knew where everything was even though it looked messy.

The article is not talking about the kind of tidiness that is the hallmark of a well-run workshop, IMO. That kind of tidiness is part of what makes more efficiency in that context.

<comment><USER34> >Spacial memory and all that, she knew where everything was even though it looked messy.

This is something my wife and I have figured out over time - If it's your own space and nobody else uses it, it's fine to descend to 'chaos' because you can just remember where you last put something.

That model breaks if the space is occupied by more than one person, because where one person put something isn't witnessed by the other person. So, having designated places for things and returning them to their 'home' makes the space most usable by multiple people.

Personally, even for solo spaces, I still favor everything having a home because I don't have a good memory for where things were placed.

</comment></comment><comment><USER35> Joel has a post about working in a bakery: [https://www.joelonsoftware.com/2005/05/11/making-wrong- code-...](https://www.joelonsoftware.com/2005/05/11/making-wrong-code-look- wrong/)

His idea is that there is a pretty high standard of cleanliness in a bakery, just not the obvious one. A similar "hidden rule" presumably applies to cities etc.

<comment><USER36> I'm almost certain I've read this article before, but I think I've read a lot more about types since then. In particular, this line is hilarious:

> I'm using the word kind on purpose, there, because Simonyi mistakenly used > the word type in his paper, and generations of programmers misunderstood > what he meant.

It sure doesn't sound like Simonyi was the one making a mistake here! It sounds like Hungarian notation is what you use to _compensate_ for missing types; it got its bad reputation from people using it for types that the language already provides, because that's easier.

</comment></comment><comment><USER37> I strongly disagree with this. Software should not be written to suit the machine. Software should be written to accommodate the weakest link: humans who are going to need to figure it out 6 months from now when its current programmer departs for the greener pastures. If there's no rhyme or reason to it, it fossilizes immediately and costs a lot of money to rewrite (often into another fossil). So whatever effort you spend to reduce complexity and cognitive load, will pay for itself several times over. As a rule of thumb, the hallmark of a good system is when your guesses about how something would be done are right almost 100% of the time. You don't arrive in this state by accident.

<comment><USER34> Yep. What this article skips over is _maintainability_ in all of the things it discusses, and in most cases also flexibility.

The optimization it praises only has single focus (operational efficiency), whereas if you take into account all of the aspects of the things in question, suddenly you see that the way things are are usually a solid compromise between the aspects it's really optimizing for. That includes human interactions such as analysis, repair, modification, and so on.

<comment><USER38> Ditto testability. For most messy code I've cleaned up, no one could say if it worked correctly. (Spoiler: no.)

</comment></comment></comment><comment><USER39> 1\. I'm sending this link to my partner to justify my messiness, not sure she will buy into it... but....

2\. It's not too surprising given the way ntural selection finds efficiencies in quite complex structures. But trying to reason about how they work is tricky. When engineering things, being able to reason about a system is often a lot more important than that system being close to maximally efficient. Main point is, I think you should always be aware of what trade offs are you making.... much like my point #1, if you use this to justify being messy, then it's probablly the wrong tradeoff, but shhh, my partner doesn't read this :)

</comment><comment><USER40> Clutter and tidying is simply a time debit/credit ledger.

If you had unlimited time, you would tidy and organize everything _in real time_. However, we don't have unlimited time and so we borrow time from the future by leaving things slightly messy.

The behavior to avoid, as in money ledgers, is not _using the ledger_ but never paying it back.

<comment><USER41> You gain back some efficiency by cleaning up all in one go at a later time! Think of trips to the sink with the dirty dishes.

</comment></comment><comment><USER42> Like all things, everything in moderation. Excessive clutter is choking and restricts the creative and productive workflow. Allowing yourself the room to make a mess while in a project though lets you work without constraints. Also I find myself tidying when I'm trying to avoid a problem. Which can be a waste, or an opportunity for your mind to work on a problem while your hands are busy (like a shower thought).

</comment><comment><USER43> Very interesting examples provided in the article, the "topological optimization" one [1] made me think of the Vauban fortifications. As can be seen from even a cursory look on the dedicated Wikipedia page they're mostly pretty symmetrical and especially well-organized, as can very well be seen for the Alsatian town of Neuf-Brisach [2]. I'm wondering if the "ideal" solution for the problem Vauban was set out to solve (protecting towns against artillery fire) isn't a lot more less symmetrical, like in that topological optimization example where the "ideal" AI-found solution is a lot more "messy".

[1] [https://twitter.com/jo_liss/status/674332649226436613/photo/...](https://twitter.com/jo_liss/status/674332649226436613/photo/1)?

[2] [https://en.wikipedia.org/wiki/Neuf- Brisach#/media/File:Neuf-...](https://en.wikipedia.org/wiki/Neuf- Brisach#/media/File:Neuf-Brisach_007_850.jpg)

</comment><comment><USER44> Author mistakes order for purity. The end of excessive purity is the same storyline as aquaman. The dichotomy of chaos and order is still helpful.

<comment><AUTHOR> I think the point he is trying to make is more about "...mistake complexity for chaos, and rush to rearrange it "

</comment></comment><comment><USER45> I learned this by observing wear patterns, in foot traffic routing these are called "desire paths."

You can also see them in wear patterns on old handles and stairs.

Hence why I think before you try and change a system it's important to know what your baseline outcomes are and then instrument the system to measure where these "desire paths" exist in complex systems like computing.

</comment><comment><USER46> I really like this article. Certainly makes me think about my own biases towards "straight lines" as the most "efficient" way of doing a job.

</comment><comment><USER47> Hmm, I thought that Amazon was famous for how they standardized their cross- company software? (With AWS as a side effect.) Or is this not the case anymore?

<comment><USER48> They didn't standardize the software, they standardized that all software should be accessible by API and that all software should be designed in such way to be openable to third party users if need arises.

<comment><USER47> Right, the right way to do standardization! It a shame that the author didn't add this very specific requirement though - some readers might think that the interfaces should be messy too...

</comment></comment></comment><comment><USER49> Our industry is woefully ignorant of human psychology. We also invest very little in understanding qualitative improvements in software systems - <USER2> engineers we don't like anything we can't readily measure.

Anyone familiar with the magical number seven knows that systems need to be simple not for the sake of the computers, but for the sake of the people who work on it. As much as we like to think of ourselves as geniuses, at the end of the day we're animals with a finite amount of brain power. We cannot grasp large complex systems, and we _need_ compartmentalization and simplicity so we can keep building on top of what we already have.

Maybe one day the computers will take over programming for us, but that day isn't today.

</comment><comment><USER50> > _London 's tube map only uses 45° angles to aid its human readers. Now can > you see the humanness in mainboard design?_

What was that russian electronic board design software where nothing is vertically/horizontally aligned, no trace is straight?

<comment><USER51> Don't about the russian software, but for any high-speed PCB design the trace layout matters and 90-degrees bends are to be avoided. On motherboards you'll often see lines that have an extra squiggle or two to equalise the length (and thus delay) because they happened to have a shorter distance to cover.

<comment><USER52> Mostly 90-degree bends are avoided (in preference to two 45-degree bends) because it makes the routing easier or because it looks better to the person doing the layout. If you are operating with high-enough speed signals that a 90-degree bend is a problem you are also avoiding layer changes and many other things like the plague.

</comment></comment></comment><comment><USER53> Take a moment and consider the quest to find the fastest multiplication algorithm. For millennia, we used the classical method. (Shift and add. 3 lines of pseudo code)

Then, along came Fast Fourier Transform based algorithms.

<comment><USER54> The Karatsuba algorithm was found before Schönhage-Strassen.

</comment></comment><comment><USER55> > Streets arranged in grids, people waiting in clean lines, cars running at > the same speed…

Grids make it easier to navigate for humans, to plan for public transport, and improves the city's connectivity.

Waiting in clean lines reduces the chances of fighting in the queue.

Cars running at the same speed dramatically reduces the chances of a lethal impact.

And what exactly is the cost of these things? Is a grid that much harder to make? Does anyone want to cancel the dedicated highway, or let cars stop in the middle of it?

I think this author just doesn't understand the concept of efficiency at all.

> "Please clean up your room," asks the mother. "Fool," retorts the three- > year-old with an eerily deep voice. "Can't you see the beauty in my glorious > chaos?"

Sounds like he's still upset about that..

</comment><comment><USER56> I wrote the following:

> Symmetry underlies almost everything in mathematics and nature.

> It's much more reasonable to assume that our computer programs are not yet > good enough to recover that symmetry, than to take the output of current > programs as some sort of evidence that asymmetry itself is some sort of > ideal.

And then I looked out my window at a tree without leaves, between two buildings, and I'm looking at how unorganized the branches look, and I'm not so sure anymore. It's like the "spherical chickens" joke.

(Sidenote: it's incredible how angry and volatile this comment section is --- my original comment included. Seems this subject can really strike a personal nerve in many of us. Why?!)

<comment><USER57> Unorganized at first glance, right? And yet a tree (on average) is perfectly balanced in terms of weight distribution around the trunk.

</comment></comment><comment><USER58> Both messiness and orderliness have their own place in work.

I find that to be particularly true when you are starting to experiment with some product or solution. At that time, you need to be messy (hacking a solution). The need initially is ability to quickly move in trying ideas and discarding ones that don't work.

Then you reach a time when you have figured out a very elegant solution that a user of product would just love. At this time, it is right opportunity to optimize for legibility and orderliness (refactoring) before your solution turns into a mess that works very well but no one can understand or update.

</comment><comment><USER59> Does it follow from this that while you could train a large machine learning program to do a task then separating it from a monolith into separable parts would be highly unlikely to be successful? For example,you could train an algorithm that does object identification and then train an algorithm that does object boundary identification considering only the red value in a given photo from the original large program. However if you start with the components of an object identifier you might not be able to reach SOA or at least those two methods would look very different.

</comment><comment><USER60> Chaos is not necessarily so bad, and order is not necessarily so good. Many people thing it is and they are wrong. I think even Principia Discordia mention such thing, isn't it?

And yet, many people today don't like C and assembly language, and hate "goto" and some other stuff like that, but I think that it is good.

(Also I do not always clean the stuff, because where it is, I know where it is and do not have to move it again when using it again.)

</comment><comment><USER61> Struggling to remember, but aren't the 45 degree bends on a circuit board something to do with etching them consistently? In a lot of electronics the board is optimised for RFI, or trying to have the lowest inductance (necessary for passing high frequencies). The grid pattern is optimised for cheap assembly.

I think the author may be wrong here, and actually the pattern is how it is for very complex reasons.

</comment><comment><USER62> I just started playing Opus Magnum and so this article resonated with me. In playing, I've found myself throwing out all optimization on the three metrics used: component cost, speed, and size.

Instead, I've been designing for aesthetics, for symmetry or clean lines or linear solutions. When I've given in to the desire to chase the metrics, the results have been much messier in appearance.

</comment><comment><USER63> I spent much of today doing some woodwork in the garage, and due to its untidiness, probably spent as much time looking for various tools as I did using them. (Not to mention tripping a time or two).

Working in a large code base that has little structure/consistency is another example of high cost/friction.

There is some benefit to organization.

</comment><comment><USER64> > both these algorithms and nature are optimizing for efficiency.

nature certainly doesn't optimize for "efficiency"

</comment><comment><USER65> Its funny how my mom always told me to clean my room where I see her own room as messy. It seems that efficiency and tidyness is also in the eyes of the beholder.

</comment><comment><USER66> Now we have a reference we can refer people to when they complain about our spaghetti code...

</comment><comment><USER67> Hmm, point taken. And yet, legibility is itself valuable and efficient too.

</comment><comment><USER68> Great refutation of functional programming.

</comment><comment> pure-awesome Scott Alexander wrote up a review of this book on Slatestarcodex. At over 11'000 words it's pretty hefty and goes quite in-depth.

[https://slatestarcodex.com/2017/03/16/book-review-seeing- lik...](https://slatestarcodex.com/2017/03/16/book-review-seeing-like-a- state/)

</comment><comment><USER69> Just like my codebase

</comment><comment><USER70> This is a strawman argument. And I wish people would stop relegating this type of system refactoring to some idiotic attempt to institute order for the sake of order.

Tidying systems up so they are organised "from my perspective" is not done, "for my benefit". It's done to make things easier to change.

Yes, it can make things less performance, no, most of the time that is irrelevant.

Refactoring is not optimisation. They are different things and both need to happen.

They both require you to make trade offs against future difficulties.

</comment><comment><USER71> this reminds me of that time blowhard Richard Dawkins disected an animal (can't remember which) and proceeded to bang on about how stupid the vagus nerve is, wandering all over the place as it does for no apparent reason. People used to say the same of the appendix and adenoids; that they're pointless vestiges, the blindness of evolution, contingent structures. Dawkins said obviously the nerve should simply connect directly instead of following its ancient evolutionary program up and down and around the organs.

A classic case of Chesterton's Fence

<comment><USER72> He said it would have been stupid had someone designed it that way but given that it evolved it made perfect sense why it was the way it was.

<comment><USER71> he said it was understandable why it was the way it was but implied that it "would be better" if it went directly - his tone was scoffing</comment></comment></comment>


Libspdy - <AUTHOR> http://daniel.haxx.se/blog/2011/10/18/libspdy/

<comment><USER2> So, what's so great about something completely new and HTTP-specific like SPDY, as opposed to using something like the SSH2 protocol (with its multiple channels)?</comment>


Basics of demo programming (2011) [video] - <AUTHOR> https://www.youtube.com/watch?v=TbcZyAO6K7c <comment><USER2> Nice but... IIRC demo programming is much more about creativity. Syncing, time and stuff are important but not that tough. The real problem is to fit all your computations in a very limited amount of time (say 1/60th of a second). That's tough. The other thing (and nowadays it's even of grater importance IMHO), you have to be extremely creative. In old school demo you'd make some cool code and then ask a GFX designer to fit a nice palette or a nice logo on it and that was it. Nowadays, I think the design is so much more important. I'm sure people don't spend the amount of time we did in the good old day son things like : hacking the DMA, hacking the graphics chips, optimizing a MOD player, writing yet another UI for your pitiful demo editors, optimizing your MMX computations, etc. Now, with shaders, big 3D cards, big CPU, it's much more about figuring out ideas and algorithm than figuring out nifty bare-metal details.

Demos are like graffiti : technique is important but creativity is queen

(Wiz/Imphobia who spend a hell of a time on syncing timer, hacking video cards and optimizing mod-players :-) )

<comment><USER3> You're right, but I kinda miss the days when the main drivers of the demoscene were purely technical prowess and overcoming limitations : "wow, how did they do THAT ? This machine isn't supposed to be able to, it can only display 16 colors in theory !"

Watching demos, in a way, brought to nerds the same kind of excitement as watching sports did to a mainstream audience.

Much like athletes compete and break records within human limitations (usually segregated by gender, and in some sports weight range categories), the capabilities of specific models of computers were fixed, well-known and each provided a level playing field for a few years to come.

So it was all about technical prowess by hackers for other hackers to appreciate, because the artistic component was still way too weak for a mainstream audience (raster bars or 4k intros wouldn't impress normies much artistically)

Art and creativity started to become more of a thing when capabilities improved to the point where computers could produce graphics and music for anyone to find worthwhile and enjoyable, around the Amiga era I would say.

But that initial driver of technical prowess was changed forever (and possibly died down) with the scene's move to the PC and especially accelerated 3D graphics.

For the same reason that doping ruins the excitement of watching sports, it's hard to be wowed technically anymore because nobody keeps tabs about what PC- of-the-month is capable of. It's a moving platform and there's no level playing field.

This has shifted the focus of the demoscener to creativity / art completely, which is a great thing for art, but at the same time killed what made the demoscene uniquely entertaining for hackers.

<comment><USER4> In a lot of ways you're right, but I still find myself memorized by some of the work that has been done in the 64kb PC demo scene. With such a low executable size limit, intimate technical knowledge and creativity becomes very important again. Everything from the geometry to the textures to the audio samples to the score needs to be procedurally generated, and the program itself needs to be written very efficiently.

<comment><USER3> You're right, the only technical wow factor left is in size-limited demos.</comment></comment></comment></comment>


Open Farm: Learn to Grow Anything - <AUTHOR> https://openfarm.cc/ <comment><USER2> This is pretty cool, I remember seeing some time back on HN as a kickstarter and I hope they do well.

But...

There's an old maxim in gardening that I feel is a truism: all gardening advice is local. Your local extension service and master gardeners program is still the best source of advice because it's full of people who've had success growing in the same conditions (climate, soil, particular wildlife, etc) as you.

I hope openfarm can find a way to incorporate that all important regional component into their system because sometimes I feel the extension service is 10 years behind the gardening trends.

I'd also like to see more general guides (double digging, container selection, getting started with greenhouses) but the About and Styleguide don't seem to have those elements yet.

EDIT: Oh, and I see in their forums someone asking about a stack exchange style discussion system. That would be great. The number of times I've said "What the hell is this on my leaves"...</comment>


Find a workout buddy nearby - <AUTHOR> http://www.fitpairs.com

<comment><AUTHOR> What are your thoughts on having a workout buddy? Would you be interested in being matched with one?</comment>


If you're going to steal a site, remove Google Analytics - <AUTHOR>

This happens all the time. And it really annoys me. This time it happened to us. The amusing part of this, is that we found out because the moron left our Google Analytics code in the pages. Meaning we were getting all sorts of bizarre traffic data to pages that don't exist.
The stolen site is http://organic-views.com/ and was stolen from our site http://sowhappy.com.au
The supposed copyright owner is one Jake Thompson http://jake-thompson.co.uk/ or at his twitter address @Jakexf
I'm curious to know what is the best course of action in this case? The site and developer are UK based. We're AU based. The client has been notified, but I do  wonder whether they paid this creep to design their site for them, and how many other clients he has done the same thing to.
For a guy who claims to be "A young Entreprenuer", I can't help but feel that he's getting off on the wrong foot. <comment><USER2> For a laugh, his facebook page - <http://uk.linkedin.com/in/jthompsons>

He works for Microsoft. Oh, as a beta tester, you know, the one you just sign up for and get in.

Although, the thing that irks me is "The Dreams Foundation". It is all one big page to try to get you to "donate", but none of them give info about their certification. The videos are from someone not even related to the project and the MIS Orphanage fund is a GlobalGiving project, not a potofdreams or anything related to the guy that I can find. Even the Google Accredited donation uses the standard buy-it-now cart instead of the IRS Certified 501(c)3 Donate cart.

The whole thing just screams "scam". I guess many would consider ripping people off "entreprenurial", but not me.

<comment><USER3> > For a laugh, his facebook page - <http://uk.linkedin.com/in/jthompsons>

That's his LinkedIn page, not his Facebook page

</comment></comment><comment><USER4> If it is any consolation I like his font selection for the logo over yours. In all seriousness though, wait to jump to conclusion, in many markets developers form eastern Europe and India where laws on IP are a little more laxed are ripping off site designs and then selling them as templates in bulk packages. He may have thought he was buying a legitimate template from a fly by night outfit. Or he may very well known that he himself was directly ripping you off. It seems to me, a person that had the chops to rip of a site design would readily notice the Google analytics code so I would lean more towards a hatched job by a bulk template outfit.

In either case he needs a cease and desist notice and the company need to be notified that they are in violation of your copyright. I am pretty sure the US, UK and AU all respect each other copyright to a certain extent at least for identity items but my word should not be a substitute for legal counsel.

<comment><AUTHOR> I hadn't considered that actually. Thanks for that. I've contacted the guy, so I'll wait to see what he has to say. Cheers!

</comment></comment><comment><AUTHOR> Nup. He has most definitely stolen our site.

I can tell this by checking google analytics. Before our analytics started getting junk traffic from the knock off site. We had a quite period of about 2 weeks. We generally only get AUS traffic, but there was a spike of traffic on the 10th of July.

The only NON-AUS visitors on that day were from the UK.

All of them were from Stockport UK. The home town of Mr Thompson.

</comment><comment><USER5> About a year ago a friend of mine was creating a (very small) gaming website, and had created a fairly basic landing page until the site was finished being developed.

As they were between developers, I took their PSD, sliced it and coded it into a basic HTML site, with their analytics.

In the two months that followed, no less than four gaming communities out there stole it as their landing page, without removing analytics - and the best part of it is that it wasn't even a well-designed page, it was REALLY basic.

</comment><comment><USER6> Looks like it's down (or it's not organic-views.com), but for future content theft (IANAL etc): Any domain that is either hosted OR registered in the USA can be DMCA'ed, regardless of actual location of the owner or the entity whose content was stolen.

</comment><comment><USER7> If it is any consolation, I'm pretty sure Mr. Thompson is a 14 year old kid.</comment>


Books every developer should read - <AUTHOR> http://blog.iterate.no/2012/08/19/books-everybody-should-read/

<comment><USER2> Two books I think every developer should read:

'The Design and Evolution of C++' by Bjarne Stroustrup

'The Old New Thing: Practical Development Throughout the Evolution of Windows' by Raymond Chen (you could just read through his blog, book I quite enjoyed having a book).

What I feel these books really helped with was understanding how a large complex real-world system, designed and maintained by clever people, can end up with so many weird features, and how the smallest things can end up being problems the dog you for decades. These are the only two books I am aware of that make an attempt at discussing how some big complex systems (C++ and Windows) ended up how they are, and tell some interesting stories of how various features arose, and why others didn't.

<comment><USER3> Here is the Reymond Chen blog, which I would +1, sorted by most popular post:

[http://blogs.msdn.com/b/oldnewthing/default.aspx?PostSortBy=...](http://blogs.msdn.com/b/oldnewthing/default.aspx?PostSortBy=MostViewed&PageIndex=1)

</comment></comment><comment><USER4> " _The books chosen are generally and broadly useful and not tied to some too limited domain_ "

Yet 3 of 4 have "lean" or "agile" in the tile ..

<comment><USER5> They might be tied to our preferred software development methodologies, but what we meant is that they are not tied to any specific business domain or programming language.

</comment></comment><comment><USER6> I'll be honest, I've read a very small number of books on software development throughout the years. I've learned all my stuff on the way, from mistakes I've made, associated documentation, and from reading the code that's powering production systems from the engineers before me. In the end? I'm doing pretty well. I'm sure that anyone else in a similar situation would agree.

Reading these books isn't going to make you a rockstar/ninja/allstar programmer. Keep doing what you're doing, learn from the mistakes you make; the lessons you learn from them are going to last a lifetime. The lessons you learn from these books might make you a better programmer, but almost all of it will be gone in a week.

<comment><USER7> I disagree. While it's true that it won't make you a "ninja" programmer, books are still one of the best way to learn something, and obviously that doesn't apply only to programming. Hands-on experience is a very important complement, but if the engineers thatbwrote the production code you learn from aren't any good, and your coworkers are so-so, how will you ever know you're doing things wrong?

Books may also open your mind to new ways of doing things, or a deeper understanding of how / why some things work the way they do. Yes it requires dedication, learning (durably) is hard, it should not be a passive read. For example, I've always been curious about how compilers work, and I'm currently reading the Dragon Book. It is hard, but extremely interesting and fulfilling (if that's the right word, english is not my native language).

So my advice, yes keep writing and reading code (especially from a well-known open-source project), but DO read books. Combined with hands-on experience and serious dedication, the lessons learned will become part of your instincts.

</comment></comment><comment><USER8> These are a bit specific. I feel as though they might, in fact, have been the last 4 books the author has happened to read.

Anyhow, I expect we'll get the usual round up here. _Code Complete_ , of course; plus a smattering of rebels who think it was boring or irrelevant. _The Pragmatic Programmer_ will receive universal praise, especially from those who didn't take the time to read _Code Complete_ from cover to cover.

Some of the debate will be about whether _Code Complete_ is "better" than _Clean Code_ or not. A silly argument, they are complementary (though, really, is this even a debate worth having? _Code Complete_ is clearly the better book).

Let's see, what else?

 _Structure and Interpretation of Computer Programs_ will get mentioned, which will spawn a fertile subthread arguing about whether computer science books really belong on a list for developers. That subthread will debate the merits of _Introduction to Algorithms_ vs everything else, and someone will mention a lisp book that changed their life. Probably _Paradigms of Artificial Programming_ or _On Lisp_.

The Gang of Four will get nodded at. Like the Bible, Homer, or _Peopleware_ it will be the book everyone says they've read but which almost nobody has actually read.

 _The C Programming Language_ will be mentioned. These days that means Zed Shaw will be named and hilarity will ensue.

Myself? I'd definitely have _Code Complete_ (I still have my first edition), perhaps _A Discipline for Software Engineering_ and _Software Estimation: Demystifying the Black Art_. I've found pretty much everything from Dorset House to be worth my time, so to _PeopleWare_ I'd add _The Deadline_ and _Adrenalin Junkies and Template Zombies_.

What we don't do in this industry, however, is read more widely. Get out of your rut. Read about history, read some classics, read deeply in another field you pursue as your hobby. Everything illuminates everything. Get out there, see the intellectual sights (for which, get a copy of _Dawn to Decadence_ by Jacques Barzun for a guided tour). You'll be a better developer and a better person for the trouble.

<comment><USER3> You saved me a comment, none of the books in OP are really 'must read' and most of them are about project management methodology, not programming.

I was going to add to what you said with a link to a specific former thread I remember that was good, and it caused me to stumble onto a new feature in Google that I haven't seen before and which is most excellent.

If you google for:

        site:news.ycombinator.com programming books

You get a summary with covers and links to Google Books of the most-mentioned books on HN.

Link to the search result page:

[https://www.google.com/search?num=50&hl=en&newwindow...](https://www.google.com/search?num=50&hl=en&newwindow=1&q=site%3Anews.ycombinator.com+programming+books)

Image link incase you don't see it on your Google:

[https://img.skitch.com/20120820-g8phi24s3ngq7khyimq5wqnabg.j...](https://img.skitch.com/20120820-g8phi24s3ngq7khyimq5wqnabg.jpg)

<comment><USER9> It looks like those aren't limited to what hacker news users have mentioned but the web in general.

If you just do a normal search for programming books the same exact list in the same order appears.

Still a cool feature if you want the most mentioned books on the web for a given subject.

</comment></comment></comment><comment><USER10> Speaking as a non-developer, here's one which I think every developer and manager should read: Rapid Development by Steve McConnell. I am currently about 3/4 of the way through and it has been excellent so far.

</comment><comment><USER11> Here is my list : [http://www.zenmodeler.com/design-matters/books- recommandatio...](http://www.zenmodeler.com/design-matters/books- recommandations/) It's the books that struck me the most, I do not pretend it to be exhaustive.

I also strongly agree with @shock3naw: do a lot, read a little in between

</comment><comment><USER12> one big problem that i found most software development methodology ignore is whether you are the developer or the client (the IT department hiring contracting the developer)

you have to agree on an offer/contract, which include scope + price/cost

how can i be lean or agile or whatever, if i am bound by a contract from the start ... making change requests mean that me the IT department failed to deliver on time and on budget, which eventually leads to bad annual reviews ...

having the have a contract or a signed offer approved by business, enforces the water fall model, an internal IT department have to do this to protect itself from the client when a change request is made later on ...

of course i am only speaking on the situation where you work in an IT department and getting your software developed by external vendors

</comment><comment><USER13> That's according to you. So the title is misleading.

None of these books are any good. I've been in software development for over 20 years and I would recommend a completely different list of books, that are not as trendy as yours, but probably more important.

</comment><comment><USER14> So, how many pages do you have to peruse to get "lean"?

</comment><comment><USER15> sheesh, if you want get better, ditch the books and put the time into learning haskell or something.</comment>


Ask HN: Teeny bit of traction, what next? - <AUTHOR>

This post has been put up here a few times, but never much discussion! http://blog.asmartbear.com/traction-then-what.html <comment><USER2> It is not discussed much because its to real for startup dreamers who believe the hype. You can't do much with $3k in "profits", much less quit your job. I remember consulting for a company that was looking to grow. They had about $5k in sales "profits" to split between two founders. And wanted to hire me to take them to the "next level." With what?

Do realize something. If your company is selling just enough to get buy, but not enough to be successful, then you should either take out a loan, get some seed, or shut it down. Zombie companies (because they wont die) are the worst. Well, their founders are worse, because they treat it as if by some miracle it will grow. No. It will not. No matter how much you try and chance the copy on the landing page. Growth requires marketing. And marketing requires money.

<comment><USER3> So at that point it becomes a risk. Take the risk and invest in marketing and either reap the benefits or shut down the company.</comment></comment>