Procrastination is not a time management problem, it is an emotion - <AUTHOR> https://cognitiontoday.com/2019/05/you-procrastinate-because-of-emotions-not-laziness-regulate-them-to-stop-procrastinating/ <comment><USER3> I've long known my procrastination is born out of anxieties centered around the task or myself.

But I'm so kind to myself that I forgive myself for procrastinating before I've even done it - a great example of the many ways/excuses to defeat most anti-procrastination techniques I've come up with :)))

I even wonder how much my propensity toward picking up new hobbies (which usually involves spending decent amounts of money aka "shopping") before getting bored, selling everything (which I usually put off until I physically can't accommodate more stuff) and repeating the process is actually just me avoiding doing life stuff like saving for a house and being a responsible adult.

I eat takeaway because I "don't have time" but then I don't actually get things I need to do done AND find myself becoming more and more unhealthy.

I often get asked "what have you done today?" and it's quite frequent for me to not really even know (or care to admit).

Interestingly, I went away on holiday the other week - when I arrived home, before I even paused (shoes still on), I immediately started doing things I'd been putting off for months, like I had an urge despite there being no more time pressure than at any point in the past 12 months that I had regularly ignored.

Procrastination, and being with it, is a large part of my life. I find it incredibly interesting but if I could pay a large sum of money to take it away in an instant, I'd hand over the cash immediately. (And thus, this is another example of my aversion to difficult work)

<comment><USER4> Returning from the holiday meant you had avoided your usual procrastination cues -couch, TV, phone, schedule.

The key to defeating your procrastination may be to progressively build up a habit of doing work you prefer to avoid by setting up regular cues.

Eg to build a gym habit I set out my gym clothes each night. Then after a week of that I began to put them on before getting in the car to work. Then after a few days I drove past the gym in the way to work. Then went in for 1 minute and so forth. I know this sounds absurd. With these tiny steps I built a habit of the gym that is now 1 hour five times a week. Now I am building a habit of keeping my kitchen clean with the same progression of micro cues. You could imagine similar steps involving preparing your desk, later just sitting down at it, and so forth,all with cues like your first coffee, or you finished dinner etc. The formula is regular cue + micro progression to build a habit. Eventually it is mentally easier to maintain the habit than to break it.

Another tip, if you absolutely do not want to fulfill the habit on a particular cue, complete as many micro steps as you can, eg if I have an injury I will still go into the gym for a shower and to change before work.

<comment><USER5> I like Terry Crews attitude: "TREAT THE GYM LIKE A SPA.

Yes. It has to feel good. I tell people this a lot - go to the gym, and just sit there, and read a magazine, and then go home. And do this every day.

Go to the gym, don't even work out. Just GO. Because the habit of going to the gym is more important than the work out. Because it doesn't matter what you do. You can have fun - but as long as you're having fun, you continue to do it."

I'm practicing the same - it's mostly about the routine, habit, without aiming lofty goals. That's probably why most of the side projects fail - overachieving and aiming perfection.

<comment><USER6> why do we need habit if its already fun. Is fun not really motivation enough?

</comment></comment></comment></comment><comment><USER7> Procrastination is an addiction because it offers relief from anxiety and instant gratification. Also, being a chronic procrastinator and a skilled developer is a deadly combination. I've been praised for my excellent work and rewarded with raises and bonuses, even though I often procrastinate until the very last minute.

Tip: to make your git logs look socially acceptable to co-workers and management, don't commit at 3AM Monday morning, wait until 9AM.

<comment><USER8> Are you sure you don't have ADHD? Because that sounds a lot like what you're describing.

ADHD is an addiction to procrastination in a sense. It could be that you missed diagnoses at a young age due to being intelligent enough to cruise through school and university with little effort, so your problem was never picked up as you never suffered any serious negative effects from ADHD due to your intelligence and ability to get tasks done quickly.

That's basically what happened to me. I'd be able to do an assignment that would take people several days, in half a day. So I'd be able to procrastinate and delay up to the last minute and still manage to pull through, usually not with great grades, but I'd pass. I always thought I was lazy, and never considered the fact that it could be a deeper neurological problem.

<comment><USER9> It's true that this is consistent with ADHD, but it's not nearly enough information to diagnose because it's also a common experience to many people (really). ADHD is basically defined as the bottom of a bell curve in a number of areas (depending on how you look at it, executive functions or behaviors) that are normal to the human experience, just so extreme and frequent that they are impairing to functioning in life. It is a real disorder, but it's challenging to understand and diagnose because it's basically an extreme version of experiences and troubles that most people have. Books and lectures about procrastination are extremely popular for a reason. Procrastination, to some extent, on work and school projects is almost a universal experience. Apart from a few outliers, most people I know waited until the day or two before to work on on week or month long assignments.

Please be careful about telling strangers they may have a mental disorder — just like a false positive on a medical test, it can induce anxiety and cost a lot of money to investigate.

<comment><USER10> > _Please be careful about telling strangers they may have a mental disorder — > just like a false positive on a medical test, it can induce anxiety and cost > a lot of money to investigate._

The flip side is that in some cases, such possibility can be relieving. For me, the idea of having undiagnosed ADHD (which I plan on verifying soon) means there may be a better solution to the problem available than endless talks about pomodoros, bullet journals and getting one's shit together. In general, given symptoms which aren't going to disappear on their own, it's probably universally better if it turns out to be a medically recognized condition, as it gives a way forward.

<comment><USER11> ADHD is a label, not a disease.

You can't really be diagnosed with symptom (although of course your money will be cheerfully taken to do just this).

Attention and focus and other related ADHD-type issues are bell curve.

It can feel good, for sure, to externalize our weakness and failings into one of these labels, like ADD. If that is helpful to get over the psychic weight of past failures, then that is helpful and useful.

Taking stimulants definitely helps most people with ability to work and focus, regardless of where they are on the attention-ability curve. There are also drawbacks and side-effects, at least I have observed.

<comment><USER12> It is pretty well understood that people with true ADD and ADHD have dopamine deficiency and issues with dopamine regulation and re-uptake in the brain. This has been highlighted in many studies. While I understand that there is an epidemic of over-diagnosis of ADHD, it does not make it any less of a legitimate medical condition in which the only treatment for it, is to increase the usable dopamine in the brain. One of the tell tail signs of ADD/HD is that the first time one with dopamine deficiency takes an amphetamine or one of it's derivatives, they realize that they are completely clear and it's like they come out of a fog in their brain, it's more profound than just the feeling of I can get stuff done. Again that alone is not effective as a single point to diagnose attention disorders but it is a strong indicator that there could be a dopamine deficiency.

TLDR it is a true disorder, it is over-diagnosed but that does not make it any less a chemical disorder of the brain.

</comment></comment></comment></comment></comment></comment><comment><USER13> I really feel I can make a helpful contribution on this topic. This article correctly asserts that procrastination is an avoidance mechanism for tasks that illicit an emotional response, but then tells you to figure out what that is by yourself. Good luck with that. So the problem is only partly identified to the reader. If this article at all interested or struck a chord with you then I strongly recommend an old-school procrastination book called The Now Habit by Niel Fiore to get a more complete explanation.

Like many commenters that chime in on these procrastination threads, I am a _chronic_ procrastinator, and feel like it's really held me back in life. I was completely convinced of having undiagnosed adult ADHD for several years (didn't want to go onto stims, though) - until Fiore's book threw a spanner in the works and identified some reasonably serious unresolved psychological issues from my childhood - the source of the emotional response identified in this article. In my case it's to do with putting impossibly high expectations on myself, but there are other common examples explored in the book. I was absolutely not expecting that and it hit me like a ton of bricks. It's obvious in retrospect, and now I've correctly identified the thought patterns that sit just below the surface of conscious cognition I can catch myself in the act. It's helped enormously.

<comment><USER14> So have you largely managed to "fix" your chronic procrastination or is it something you still deal with on a day-to-day basis?

<comment><USER13> I still deal with it, but being aware of how it works has made it a lot easier.

</comment></comment></comment><comment><USER15> For me it's an anxiety thing. There are certain things I just can't get started on although I clearly know that I can do them well and quickly. I also know that not doing them often causes me a lot of pain but I still won't do them. I don't understand it myself. It makes no sense.

<comment><USER16> I can deeply relate to this. There are things that I'll put off for a week, sometimes for a sprint, and finally, in anguish, I'll do them and.... they take like 2 hours and are twice as easy as I anticipated.

And you get finished and have this moment of disbelief like... why on earth did I just torture myself for a week over this? For nothing..

<comment><USER17> I've gradually unlearned the anxiety-driven procrastination habits that I picked up in school but it's taken almost as long as the time I spent in the system:

* I now focus on developing my own feedback mechanisms rather than worry about assigned/external ones. If you have a large enough number of "required to succeed" and "instant fail if this occurs" signals, you can know roughly how well you are doing without anyone to guide you.

* I focus on work as a cycle, rather than tasks to be cleared out. The converse of the procrastinating is the idea that if you rush around _enough_ , you will open up time for something else, something better, but what that something is, is a big ??? The cyclical approach keeps me more grounded in hammering out a few hours of work on a regular basis, which is more sustainable.

* I look for opportunities to use my "activated" levels of energy to chase after a thread of a problem. I often don't know how long anything takes, but what I do know is that I'm doing more if I periodically throw myself at the work and solve the things I can solve and use the rest to develop more feedback(if I failed: okay, why?) - and doing this cyclically makes it sustainable.

I still have periods where my work energy is low, but the causes are typically more obvious: stress is up, I found a new game that captured my attentiom, etc.

<comment><USER4> What solved procrastination for me (I described in more detail above) is to do the tiniest step. If that seems too large, do something tinier.

For example say I have a presentation to prep for. For whatever reason, I'm procrastinating - maybe because it's boring or in nervous about delivering it. So I do a small step, perhaps, open my laptop, create a presentation and the title slide. Then it's ok to do something else, but often I will find myself continuing.

(If that's intimidating the step could simply be to sit down and open the laptop.)

If I don't continue that's OK, I don't get frustrated, I take a break (something bounded like coffee, walk, get groceries - not start reading reddit...) then again do a tiny step, perhaps draft one more slide.

Again I often find myself continuing, one tiny step at a time. It's easy to commit to something they just takes 60 seconds. Again if I don't continue I take a little break and so on. Again when I take a break I don't judge myself.

This system has been a revelation for me and I no longer procrastinate until the point of stress. I have also found it helpful to deal with with lack of motivation due to depression. I don't feel able to empty the dishwasher, well I can at least do one cup.

Keys are \- establish a regular cue that already exists, either an existing habit or something else regular such as kids leaving for school

\- do some tiny step

\- if that's intimidating make it tinier. There is always tinier!

\- if you find yourself continuing, go with it

\- otherwise take a break, without judging yourself. Return immediately you feel ready to make a tiny step. Sooner is better than less tiny

\- next tiny step

</comment></comment></comment></comment><comment><USER18> There are three tricks I've found work best to stop procrastinating.

1\. Ovsiankina effect. The effect states that an interrupted task, even without incentive, values as a "quasi-need". It creates intrusive thoughts, aimed at taking up the task again. [1]

2\. Structured procrastination. [2]

3\. Concentrating on the steps to complete the task, not your feelings and emotions about completing it. Action vs. state orientation. [3][4]

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

[2] [http://www.structuredprocrastination.com/](http://www.structuredprocrastination.com/)

[3] [https://catalyst.library.jhu.edu/catalog/bib_1668041](https://catalyst.library.jhu.edu/catalog/bib_1668041)

[4] [https://onlinelibrary.wiley.com/doi/full/10.1111/jopy.12140](https://onlinelibrary.wiley.com/doi/full/10.1111/jopy.12140)

</comment><comment><USER19> I found Nassim Nicholas Taleb's take on procrastination in Antifragile interesting - he likens procrastination to a natural defense: "Few understand that procrastination is our natural defense, letting things take care of themselves and exercise their antifragility; it results from some ecological or naturalistic wisdom, and is not always bad -- at an existential level, it is my body rebelling against its entrapment. It is my soul fighting the Procrustean bed of modernity."

He goes on to make the point that he use procrastination as a filter for his writing - if he feels strong resistance to writing a certain section he leaves it out as a service to his readers - why should they read something that he himself didn't particularly want to write? Instead of fighting procrastination as though it is an illness, maybe we should learn to understand it's utility:

"Psychologists and economists who study 'irrationality' do not realize that humans may have an instinct to procrastinate only when no life is in danger. I do not procrastinate when I see a lion in my bedroom or fire in my neighbor's library. I do not procrastinate after a severe injury. I do so with unnatural duties and procedures."

<comment><USER20> Yeah, I'm still alive - but the amount of late-fees, insane interest rates and chronic struggle to have a flat and something to eat each months that could be solved with _a lot less money and pain_ if I hadn't procrastinated on solving these problems earlier is not exactly nice also. Also procrastinating going to the dentist cost me... What I want to say: It's a nice quip at society - <USER2> utterly useless for the chronic procrastinator.

<comment><USER21> I think "procrastination" means a different thing when you're able to write a large number of books, etc.

At that point you're not a procrastinator, just a productive person who doesn't like to do particular things.

</comment></comment></comment><comment><USER22> It seems like proper title would be "Procrastination is not time management problem. It is emotion regulation problem" (no articles to fit into 80 characters limit).

Currently submission title is "Procrastination is not a time management problem. It is an emotion".

<comment><USER23> Or: Procrastination is an emotion regulation problem.

<comment><USER10> Incidentally, if I'm to believe the video linked recently on HN - [https://www.youtube.com/watch?v=SCAGc- rkIfo](https://www.youtube.com/watch?v=SCAGc-rkIfo) \- so is ADHD.

</comment></comment></comment><comment><USER24> Some things that have helped procrastination for me are 2 things:

1) think about something to look forward to regarding the particular task — for example maybe just simply writing the email saying that it's done is the only thing I can look forward to, the current thing is super annoying to do, or the food I'll eat afterward.

2) second thing I do is when I sense that I'm not going to make progress on the thing, I just stop working on the thing and schedule it for later.. trying to do something for hours and not actually doing it is actually fairly stressful and wastes a bunch of time and emotionally you feel annoyed about it as well. This sounds like procrastination but I mean within a context where I actually attempt to do the thing at each scheduled time rather than sit there and play on your phone on top of your math book while you are supposed to be studying. I just say welp math ain't happening right now. Schedule for later when I'll be mentally prepared.

I have definitely pretty much always thought procrastination is super emotional. Certain things you don't want to do so you put it off. Once there is very little time left you know that you have forced yourself into a limited engagement on a thing you want to minimize your involvement with so you have made a reasonable decision to avoid dealing with something that could annoy you for an extended time.

<comment><USER25> So true to the second point. I've discovered that recognizing when to give it a break is a hugely important skill to have and one that that took me a long time to develop as a software engineer/entrepreneur.

</comment></comment><comment><USER26> I was "cured" of my procrastination when I "discovered" the best way to not having things I hate to do in my to do list was to do the things.

It sounds silly because it is. Just do it now.

<comment><USER27> This is beautiful. If you have a thing that takes some manageable effort, and that is important enough to do. Do it at the first time you to not have anything more important to do. It is nothing else but a different mindset. It sounds easy, because it is once you get going.

<comment><USER10> What you both describe sounds like a switch flipping in the brain. It's the holy grail of those struggling with procrastination - and the unsolved part is coercing the brain to flip that switch, to internalize that realization. I envy those who've done that by accident.

<comment><USER26> You're absolutely right, it's like a switch flipping in the brain.

Maybe a way to get there, or to try to explain it in a different way would be: You have to hate "having the item in your todo list" more than "doing the task".

I know I do. It's annoying to "carry" that todo item in my head all the time, with its danger of forgetting it, or the need to note it down somewhere, then remember to check the somewhere... So I know I'l feel liberated when I do it.

Yes, on the face of it this applies much better to "pay that bill" than to "write a book". But you'd be surprised. Soon you won't think of yourself as a procrastinator, you'll feel like someone who takes charge and does stuff. You know what people like that do, apart from the small stuff? The big stuff.

Good luck!

<comment><USER10> Did try that very early on (spoiler alert: it didn't work), and it's curious what mechanism my brain developed to neuter this trick.

One, in line with what GTD book teaches, writing down a task is very liberating experience - indeed, the act of writing a task down feels almost like doing it, so it drains the pressure to actually do it. Two, once the mental weight of a full todo list reaches a certain stage, I instinctively shy away from looking at it. The degree to which this happens subconsciously is probably worth a paper in a psychology journal; I'll instinctively stop opening my TODO files, my Org Agenda, and if I write the tasks down physically (e.g. on whiteboard), after a while my eyes will just gloss over it and essentially ignore its presence in the room.

To combat this, I started cycling through TODO stores - every other month or three I jump between .org files, bullet journal, issue tracker tickets, whiteboard, notebook, paper calendar, electronic calendar. The "freshness factor" seems to be working somewhat, but I still can sometimes go two days before realizing I have an organizer open on my desk with tasks already late.

</comment></comment></comment></comment></comment><comment><USER28> The fact that Chronic procrastination = Likely ADHD i.e. an inherent neurological issue, needs to be propagated more widely so people can stop feeling guilty about it and not treat it like some emotional/moral/work ethic failure.

<comment><USER29> I think the guilt itself exacerbates procrastination. Perversely, I only stopped procrastinating once I stopped beating myself up about it.

Now, I tell myself that some problems just need to marinate, or that I have some other need that I'm not addressing. I use procrastination as a signal that something else is wrong. It's been very helpful.

<comment><USER30> Instead of punishing yourself for not doing something, take a moment to appreciate yourself when you do something.

When I go to the gym, I used get annoyed at myself for not doing enough work. I didn't even go often enough in the first place. Now I say that any day I go is a good gym day, and I feel only good thoughts about going and exercising, and when I am not exercising I occasionally remember that if I do go I'll feel good, and that's motivating.

</comment></comment></comment><comment><USER31> I procrastinate because the task has no real personal value to me.

<comment><USER32> I've done this in the past, but I find it's infinitely more painful to me when I genuinely care about getting the task done and I _still_ can't make myself get a start on it.

</comment></comment><comment><USER33> I find myself procrastinating the most when I know what what I'm doing will likely be interrupted, even if it's hours down the line. For instance, even if I can work on a certain thing for 3 hours, when I get word that I'm _probably_ going to have to work on something else for the rest of the day, chances are I'll take those 3 hours less seriously because I know that, when I come back to the task the following day, I'll have to mentally start over. Even if I consciously try to push through it, the back of my mind keeps shouting "What's the point?"

<comment><USER30> Yes yes yes. The treatment for this is to split your work into smaller tasks so you feel you can hit a milestone before the interruption.

</comment></comment><comment><USER34> My favorite tool/trick against procrastination is pomodoro technique: Work 25 minutes continuously with no interruptions, then take 5 minutes to relax/do other things, e.g. answer texts - then rinse and repeat. Do this 6-8 times and you'll have done more than most people do in a full work day. When I first heard of it I was very skeptical of it, because I know that as a programmer I need hours of uninterrupted focus, so purposely interrupting myself every 25 mins seemed counterproductive. But it turns out, most of us get micro- interruptions all the time, and they're much easier to ignore if you know that in at most 25 mins, you'll have 5 mins to deal with them. That way you don't create 5 mins of interruption, you batch the already existing interruptions together and timebox them. And 5 mins isn't enough to get you out of 'the zone' as long as you keep the breaks mentally 'light' \- and going for a little walk really is healthier than just sitting all the time.

And now for the real kicker: I found that I always procrastinate the most in the beginning of a project, where everything is vague and there's not yet a list of nicely broken down tasks to execute. And that makes sense cf. the whole 'procrastination is emotional' perspective that the article talks about, because completing tasks gives you a dopamine kick as a reward, but with no easy tasks in sight at the start of a project, it just feels like wandering the desert. It feels unpleasant and unsatisfying to grapple with that vagueness and trying to fit that 'too large' problem into your head so it can be broken down into bite size tasks. So you put it off until guilt or panic about a looming deadline becomes bigger than the pain of doing the work - it's the classic 'put off homework until the day before it's due' from school.

A situation like this is where pomodoro technique really shines - I may not have small easy tasks to give me periodic dopamine kicks, but every 25 mins, I still get one for having completed a pomodoro without letting myself get distracted. And I even get to celebrate with a little break. Or to put this in other terms, at the beginning of a project, you cannot measure or reward results like you would prefer (because results are still a ways off - it takes too long to break down the initial vagueness, you don't even know what a result looks like or how hard it is to achieve yet), so you should measure and reward effort instead. And each pomodoro becomes a measure of effort that you can reward. It really does work for me - I often stop doing them later in the project, when I have a nice list of tasks to execute, and I don't do them at all for small easy projects. But whenever I realize that I dread some task or I begin to procrastinate, I pull out the pomodoros and soldier through that way.

</comment><comment><USER35> "Maybe whatever fresh-faced grad student built this on their summer internship flubbed the feature engineering, modeling autorespond as a library of independent phrases rather than a library of choices."

Whats wrong with a fersh-faced grad student trying to build a new feature if at all he/she is trying to do so?

</comment><comment><USER36> Website is giving an error 500. Perhaps this is a popular article?

Fortunately it's in the Wayback Machine:

[https://web.archive.org/web/20190522001001/https://cognition...](https://web.archive.org/web/20190522001001/https://cognitiontoday.com/2019/05/you- procrastinate-because-of-emotions-not-laziness-regulate-them-to-stop- procrastinating/)

</comment><comment><USER37> Same Gentle had an interesting observation about procrastination:

[https://samgentle.com/posts/2016-09-16-what- changes](https://samgentle.com/posts/2016-09-16-what-changes)

follow up: [https://samgentle.com/posts/2019-01-29-the-leverage- instinct](https://samgentle.com/posts/2019-01-29-the-leverage-instinct)

</comment><comment><USER38> What is a laziness then? Does it even exists as "just being lazy", or it's all a spectrum of anxiety issues?

</comment><comment><USER39> >when people believe that their bad mood is unchangeable, they do not engage in frivolous procrastination or acting on other impulses to engage in other activities

This is so simple, but also so enlightening.

Unfortunately for me, it means removing most of the instant gratification from my life, such as video games, social media (incl. HN), etc.

</comment><comment><USER40> I remember something similar being discussed earlier:

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

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

<comment><USER41> thx for sharing

</comment></comment><comment><USER42> I'm grumpy about the aside that some medical conditions cause procrastination yet refusal to list them. They don't need to diagnose readers to just list common issues for which the DSM lists procrastination. That might encourage more sympathy when we see others procrastinating.

<comment><USER42> A quick search would suggest that ADHD would call this a sign and procrastination can be a side effect in major (clinical) depression, bipolar disorder, monotropism, Aspergers spectrum disorders, and non-categorized issues with shame and low self-esteem (at least that one is covered in the article).

</comment></comment><comment><USER43> On top of the suggestions in the article, a good diet and a regular routine of intense exercise helps me. If I have a consistent balance of diet, exercise, sleep, meditation, and some alone/solitude time in nature, I am most productive and unlikely to procrastinate.

</comment><comment><USER44> This is why I love production work (food, manufacturing), no analysis paralysis ever.

</comment><comment><USER45> You can say procrastination is the result of the core belief that one is not capable or will not perform the given task well, or once you do that thing, what will you have to worry about then?

<comment><USER46> Personally, I don't procrastinate on things I believe will pose a challenge. I procrastinate on the easy but tedious things.

<comment><USER47> Personally I procrastinate on almost everything that doesn't either shoot up the dopamines immediately or make the panic monster go away

<comment><USER48> I always wondered why the panic monster was so great at marshalling concentration, and so bad at defending against the wave of shame that comes once the task is complete and you wonder why you waited so long (again!!)

<comment><USER10> Panic monster is a tricky beast to use. In the early university years, looming deadlines could make me superproductive, though at an emotional cost. But after few years of using this, my mind became increasingly resistant, and now the deadline trick doesn't work anymore.

</comment></comment></comment></comment></comment><comment><USER49> I like the list of things you can do to combat procrastination. It's all good to understand what drives it, but even better to know tactics that work to help you overcome it.

</comment><comment><USER50> One could also argue that procrastination _is_ time management (vs a time management problem). Just not the one with the best reputation.

</comment><comment><USER51> This is a good article, but is it not simply finding a more polite (and perhaps, for the sake of publishing, novel) way to say procrastination is caused by insufficient will?

"People procrastinate or avoid aversive tasks to improve their short-term mood at the cost of long-term goals."

This description is true, but is it not also true for virtually every case where you would typically use the term "willpower"?

</comment><comment><USER52> Procrastination is against energy expenditure. Energy expenditure is degenerative in nature.

</comment><comment><USER53> a useful tool for people that might be in here... [http://www.stayfocusd.com/](http://www.stayfocusd.com/)

</comment><comment><USER54> It is a filter against rotting in chronic/toxic/boring things. Too bad people are trying to kill this instinct and rape themselves instead of using it to their own benefit.

<comment><USER55> Is that really the only way you could think of to describe this? Sexual assault is a horrible thing to go through, and I can't imagine it's a lot of fun to happen upon the idea in unexpected places like this. You could easily just replace it with fuck.

<comment><USER56> The term's meaning has evolved over time, and the origin of "seize, carry off by force, abduct" remains a useful, if decidedly minority, concept:

[https://www.etymonline.com/word/rape](https://www.etymonline.com/word/rape)</comment></comment></comment>


Introduction to Markov Processes - <AUTHOR> http://austingwalters.com/introduction-to-markov-processes/ <comment> daniel-levin Markov Chains are really cool. One of the many applications [0] being that you can 'train' them on a text corpus, and then by repeatedly generating random numbers, create sentences that are (mostly) gramatically sound but otherwise absolute nonsense [1], [2].

[0] [http://en.wikipedia.org/wiki/Markov_chain#Applications](http://en.wikipedia.org/wiki/Markov_chain#Applications)

[1] [http://en.wikipedia.org/wiki/Mark_V_Shaney](http://en.wikipedia.org/wiki/Mark_V_Shaney)

[2] [http://kingjamesprogramming.tumblr.com/](http://kingjamesprogramming.tumblr.com/)

</comment><comment><USER2> Google search is the ultimate example (IMO) of an effective, simple, and powerful Markov chain algorithm.

For anyone interested in this stuff, check out "The $25 Billion Dollar Eigenvector"[0]. I did a simple page rank experiment in an IPython notebook[1], demonstrating how PageRank works based on some UBC lectures.

Markov Chain Monte Carlo sampling is the basis of many Bayesian inference techniques, and Markov chains also show up extensively in classic speech recognition pipelines, under various forms of Hidden Markov Models (VB-HMM, GMM-HMM). This stuff forms the foundation of statistical machine learning!

Great post - this simple example serves as a great introduction! Of course, the rabbit hole is deep...

[0] [http://www.rose- hulman.edu/~bryan/googleFinalVersionFixed.pd...](http://www.rose- hulman.edu/~bryan/googleFinalVersionFixed.pdf)

[1] [http://kastnerkyle.github.io/blog/2014/04/16/simple-page- ran...](http://kastnerkyle.github.io/blog/2014/04/16/simple-page-rank/)

<comment><USER3> That's amazing.

One could imagine n(number of pages)-dimensional space in which any point represent some possible pagerank distribution. We consider backlinks information for each of n pages as an axis in new space, thus deriving transformation matrix A. Out true pagerank would be the point(vector) in this space which doesn't change its position after applying transform described by A.

Don't know what to imply from that though :)

</comment></comment><comment><USER4> Markov chains can pop up _everywhere_. Not shown in this excellent intro is that the stationary distribution can be calculated as the eigenvector with an eigenvalue of 1.

I have used them in practice for load testing. Have thousands of bots randomly take actions using a transition table. The aggregate behaviour can predicted and converted into the frequency domain using the above trick and some other stuff ([http://edinburghhacklab.com/2014/03/taming-randomized- load-t...](http://edinburghhacklab.com/2014/03/taming-randomized-load- testing-2/))

<comment><USER5> I think you mean eigenvalue of 0 for the stationary distribution.

<comment><USER4> no

[http://en.wikipedia.org/wiki/Markov_chain#Stationary_distrib...](http://en.wikipedia.org/wiki/Markov_chain#Stationary_distribution_relation_to_eigenvectors_and_simplexes)

<comment><USER5> You are correct, I was thinking of the master equation of a Markov process. In that case the eigenvalue of 0 gives the stationary distribution under a spectral expansion

<comment><USER4> Got any links on that? Sounds interesting. Does that calculate its dynamic properties or something?

</comment></comment></comment></comment></comment><comment><USER6> Hmm .... He neglected classification of states and asymptotic behavior. His "statistical probabilities" is not good. He omitted the role of conditional independence.

Instead read, say, Cinlar, 'Introduction to Stochastic Processes'.

<comment><USER7> You are comparing a quick blog post to a monograph.</comment></comment>


Covid-19 is awful. Climate change could be worse - <AUTHOR> https://www.gatesnotes.com/Energy/Climate-and-COVID-19 <comment><USER2> otoh : it seems to me covid models used to dictate public policies proved to be off by at least one ( if not two ) orders of magnitude. Countries that didn't confined ( brazil and sweden) didn't show that much of a difference compared to some others that did (france). The spread and impact of the virus proved to be extremely hard to understand and model correctly.

Which of course, should have people wonder if climate change model couldn't also be off by orders of magnitude ?

Now of course because one thing proves to be hard to model doesn't mean all are.

But looking a the history of public climate catastrophic announcement, how do we know that this time is the time when models of immensely complex phenomenon will be correct ?

<comment><USER3> >Countries that didn't confined ( brazil and sweden) didn't show that much of a difference compared to some others that did (france).

Huh? France had an early outbreak, instituted lockdowns and have since crushed their numbers. Brazil is still on fire.

Here's a graph for Brazil: [https://91-divoc.com/pages/covid- visualization/?chart=countr...](https://91-divoc.com/pages/covid- visualization/?chart=countries- normalized&highlight=Brazil&show=25&y=both&scale=linear&data=cases- daily-7&data-source=jhu&xaxis=left#countries-normalized)

Here's a graph for France: [https://91-divoc.com/pages/covid- visualization/?chart=countr...](https://91-divoc.com/pages/covid- visualization/?chart=countries- normalized&highlight=France&show=25&y=both&scale=linear&data=deaths- daily-7&data-source=jhu&xaxis=left#countries-normalized)

These look nothing alike.

<comment> codemonkey-zeta I agree that they are different graphs, but to the parent's point are they at all concerning?

Here's the logarithmic graph for Brazil:

[https://91-divoc.com/pages/covid- visualization/?chart=countr...](https://91-divoc.com/pages/covid- visualization/?chart=countries- normalized&highlight=Brazil&show=25&y=both&scale=log&data=cases-daily-7&data- source=jhu&xaxis=left#countries-normalized)

It's a breatiful plateu, which indicates that we do not have the super-scary exponential growth we were all warned about by these models. As the parent said, the models were off by an order of magnitude at least.

<comment><USER3> It is not the case that Brazil (at a state level) is doing nothing. It is the case that Brazil and France did things to very different degrees, and as a result have seen stunningly different results, as evidenced by those graphs. (And contradicting the assertion of the GP poster.)

<comment> codemonkey-zeta Yes I totally agree with both of your comments. I wanted to change the topic of conversation to the point the parent made. Maybe I should have replied to parent with that point. Thanks for showing me that site!

I still want to know if anyone thinks the parent's skepticism of climate change models is/isn't warranted given the fact that the scientific research community (epidemiologists, virologists, and scientists generally [AFAIK]) basically aligned completely with the view that anything other than extreme responses to Covid would end in disastrous ruin by generating and pointing to these models. I want to be clear that I am not questioning the science of climate change here, but how do we know that the models we rely on to predict the future effects of climate change will be accurate? Could Covid really be an indicator that the scientific community is the boy who cried wolf? I'm not saying I think that, but I don't know enough to completely discredit the position.

</comment></comment></comment></comment></comment><comment><USER4> I don't get why people are still underselling this. Coronavirus will be a fucking walk in the park compared to the climate change that is already inevitable. You think a few million dead and 6months of impaired economic activity is a bad deal compared with what we're in for. Why are the major, well informed sources defacto lying about it?

In case anyone wonders, conservative estimates put climate change at 150k deaths a year and rising... In 2009.

[https://www.scientificamerican.com/article/global-warming- an...](https://www.scientificamerican.com/article/global-warming-and-health/)

<comment><USER5> Well it has to do with money and bad journalism. Journalists love to talk about potential natural disasters instead of co2 levels and global temperature. People think the stuff journalists report on is "science" when it is mostly some clickbait article. The number of times they cite a random blogpost is quite shocking.

<comment><USER6> If you are so critical of the big media, then don't read them! There is plenty of other information that comes directly from scientists and is written for policymakers so anyone on HN should understand it. For example: read the summaries of ICCP Reports and please finally start taking climate change seriously.

<comment><USER6> Sorry I did not mean you specifically. But the HN readers. And i meant the IPCC, not ICCP

</comment></comment></comment></comment><comment><USER7> "Within the next 40 years, increases in global temperatures are projected to raise global mortality rates by the same amount—14 deaths per 100,000."

This is the first I've heard this kind of statistic. Does anybody have a reference for where this came from?

</comment><comment><USER8> Reminds me of this scene: [https://youtu.be/l4UFQWKjy_I](https://youtu.be/l4UFQWKjy_I)

</comment><comment><USER9> what are your thoughts on [https://www.youtube.com/watch?v=OwqIy8Ikv-c](https://www.youtube.com/watch?v=OwqIy8Ikv-c)

<comment><USER10> This seems like a good start: [https://skepticalscience.com/skeptic_Richard_Lindzen.htm](https://skepticalscience.com/skeptic_Richard_Lindzen.htm)

</comment></comment><comment><USER11> he says climate change deaths will be 14 deaths per 100,000. how exactly will it kill people?

is it increased mosquitos and malaria?

<comment><USER12> Heat waves, for starters. In 2003, a heat wave in Europe had a death toll over 70000. In 2010, more than 50000 people died in Russia during a heat wave. Those will become more common and worse. Then you have crop failures, due to drought and extreme weather. Food and water insecurity will force hundreds of millions to migrate, fueling conflicts. You're also right that insect-borne diseases are going to spread more. Prepare for the worst, but work toward the best.

</comment></comment><comment><USER13> Still, Vista was the worst.

</comment><comment><USER14> Mr Bill please share your $100 000 000 000 so that we can buy 3 333 333 electric cars.

<comment><USER15> This genre of comments are either intentionally disingenuous or simply _significantly_ misguided. There has been little to suggest that Gates isn't currently trying to help make the world a bit better off. If he thought that would really solve all the world's problems than I'm fairly sure he'd give it a shot, but even you and I know it would do little to truly halt climate change on the large scale. CC is also not his only target of course.

Perhaps Gates is just a bit more thoughtful in managing his investments.

<comment><USER14> The point was that the article is just blah blah blah. The usual rhetoric without any concrete proposals. So I offered a concrete solution. Looks like some readers didn't appreciate the humor.

<comment><USER15> (or lack thereof)</comment></comment></comment></comment>


The poor don't work because they are economically rational - redux - <AUTHOR> http://www.chrisstucchio.com/blog/2014/why_the_poor_dont_work_redux.html?utm_medium=rss&utm_source=rss&utm_campaign=rss&utm_reader=feedly <comment><USER2> From the original article: "If you exclude children from the numbers..., then 36% of poor people work at least 27 weeks/year" The argument that the poor don't want to work hinges on this number. This number does not take into account the disabled, retired, or otherwise unable to work who disproportionately fall into poverty.

As someone formerly below the poverty line, I take great issue with the statement that the poor do not want to work.

To put this back in terms of the updated graph from the CBO: even a menial job offers the potential to possibly move out of the poverty range with time. Between $20k and $30k the Disposable Income line tracks very closely to the Real Earnings line, meaning that the incentive is high. In a more practical sense, the difference between having $20k in disposable income and $28k is actually very palpable. Living in poverty is a hardship that defies the rationality he suggests.

</comment><comment><USER3> > then this means that people who's labor income will lie between $0 and $20k > will have no incentive to work.

This is called begging the question.

<comment><USER4> Are you referring to the implicit assumption that consumption is the primary incentive for a person to work? That's pretty non-controversial among economists, but if you're a philosopher or something you can certainly argue the point.

Anyway, that assumption about consumption is really only the _premise_ of TFA. The sentence you quote is the implication of that premise and some statistics. Argue with the premise, argue with the statistics, argue with the implication if you want, but I just don't see the circularity here.

</comment></comment><comment><USER5> I do not think rational is the right word here. One way you can look at it either slave away and make few dollars more or do nothing and get about same outcome.

This is not rationality, this is hopelessness and despair.

<comment><USER6> "Rational" is an unfortunate choice of term, but it was the term the field of economics has used for quite some time. It is best to separate in your mind the idea of a rational actor and the colloquial connotations the term carries with it.

</comment></comment><comment><USER7> Discussion earlier today about the first article: [https://news.ycombinator.com/item?id=7076121](https://news.ycombinator.com/item?id=7076121)</comment>


Find travel according to your budget and preferences - <AUTHOR> http://www.wanderapp.me?utm_source=hn <comment><USER2> I bookmarked this so I could come back and take a look. I'm assuming this was supposed to be a "Show HN" post and you're looking for feedback because it's largely unworking and appears unfinished. If that's not the case, please disregard.

A few things, mostly design/UX related:

The departure location in the upper right should be part of the middle block. It didn't even jump out at me initially, being in the place you'd often find a "search" field. But since it's a required field to conduct a query it belongs front and center

The budget field looked like I could drag the $ symbol as a slider (which would have been cool). The field accepts negative values and values below the threshold of 50-20000. If it's not permitted, don't allow the end user to select the value. I would make it a slider with a starting value of $50

If the from and to fields were a simple range picker, rather than 2 separate date pickers that would be equally as intuitive and would save a click.

It wasn't intuitive that I could pick both remote and urban at first. I think there's a way to clean that up (something like an "anywhere!" option?)

If you don't allow any searches but are looking to get early access, then remove all the form fields and put a landing page explaining what it is that you're doing or trying to do. I had to fill in required fields in order to get to the early access page. I didn't see anything on the page that described exactly what you're trying to do

Once I conduct a search, clicking on the "wander" link in the upper left does nothing. I have no way to get back to the main page without manually manipulating the URL

Your terms page mentions "contact us" but doesn't provide an email address. The privacy page does provide an email address.

Accordingly, I didn't provide my email address because I don't see how this is any better than any of the other hidden flight apps that provide a working interface.

The error noted by the other two posters is fixed however.

</comment><comment><USER3> I get

"We're sorry, but something went wrong.

If you are the application owner check the logs for more information"

on Chrome

</comment><comment><USER4> Same message on Firefox (OSX)

</comment><comment><USER5> Oi! it's fixed. :)</comment>


How to think in AngularJS if coming from jQuery - <AUTHOR> http://stackoverflow.com/questions/14994391/how-do-i-think-in-angularjs-if-i-have-a-jquery-background/15012542#15012542

<comment><USER2> Glad I found this! Sharing with co-workers immediately!</comment>


Former Docker CEO Ben Golub Joins Storj as Executive Chairman and Interim CEO - <AUTHOR> https://beta.techcrunch.com/2018/03/12/former-docker-ceo-ben-golub-joins-storj-as-executive-chairman-and-interim-ceo/ <comment><USER2> Has anyone done an analysis behind the economics of distributed storage like this?

Im genuinely curious. At first glance I cant see paying an individual or company ever being made lucrative enough. Its like the inverse of facebook, where individual monetization is small but only in aggregate is the system worth boat loads of money.

These new building blocks are facinating, but the whole model so far seems to be "we own lowest common denominator"

<comment><USER3> I've "farmed" storj for about 6 months. I don't get the economics. The payout varies. But for 50-100 GiB I've gotten about $20. It's not a direct easy calculation but I seem to be getting about 6 cents per GiB (20/6=3.33 into 50GiB).

The model is supposed to be that you can pay to store data. But oddly, their site doesn't seem to allow that any more ([https://storj.io/faq.html](https://storj.io/faq.html)). That may be new. The price last time I checked was 1.5 cents/GiB/month. This seems bad compared to S3's 2.3 (<50tb) or 1.25 (infrequent). Or dropbox's .8 ($100/100GiB/year).

So from a cost perspective it's bad for the user and doesn't match up with io (paying farmers 6 cents, charging users 1.5 cents). But it's a good idea in principle. Would work better as an open source community or non-profit foundation or something. Setting up a ratio of something like share 5GiB to get 1GiB would be really useful for a personal backup service.

So I'm sticking with it as a user.</comment></comment>


On developing a Rationality Quotient test - <AUTHOR> http://www.overcomingbias.com/2009/11/what-status-rq.html

<comment><USER2> He writes as if belief in aliens is irrational. I'd argue the opposite.

<comment><USER3> Depends on how you mean. "Life probably exists somewhere else in the universe besides Earth" has a much more rational grounding than does "aliens have visited the earth" or "aliens have abducted people".</comment></comment>


Cold Email Your Way into an Internship/Job at Any Startup - <AUTHOR> https://colinkeeley.com/blog/cold-email-your-way-into-an-internshipjob-at-any-startup <comment><USER2> How would you get their email in the first place?</comment>


Pirate Bay Trial Day 9: BitTorrent Is Not Evil - <AUTHOR> http://torrentfreak.com/pirate-bay-trial-day-9-bittorrent-is-not-evil-090226/

<comment><USER2> Got to love Torrents. One of the smartest pieces of software ever created. I would put it right up there with HTML.

</comment><comment><USER3> So, has anyone actually been able to find Roger Wallis' CV?

Here are some papers of his that a friend found: <http://unjobs.org/authors/roger-wallis>

<comment><USER4> I found these gems in one of his papers:

 _Peer-to-Peer file-sharing techniques such as those used in Napster, allow interested potential consumers to exchange samples of music at will. Anecdotal evidence suggests that a number of musical groups in Africa have created their own "communities of interest" in Finland based on individuals who have discovered them after someone has made recordings available via Napster or similar file-sharing programmes._

 _Currently the Majors are seeking to develop new technology which will prevent consumers from copying CDs or even "burning" their own CDs from digital downloaded files. Historical evidence does not suggest that they will find a perfect technological solution to any of the business problems created by new technology._

 _"There is evidence that the increased availability of music in virtual form as MP3 files leads to an increased consumption of physical products such as CDs._

He seems to know what he is talking about ...</comment></comment>


Scalable Bayesian Optimization Using Deep Neural Networks - <AUTHOR> http://arxiv.org/abs/1502.05700

<comment><USER2> Directly addresses the "dark art" of hyperparameter tuning in machine learning.</comment>


Smooth CoffeeScript: The Interactive Edition - <AUTHOR> http://autotelicum.github.com/Smooth-CoffeeScript/interactive/interactive-coffeescript.html

<comment><AUTHOR> ... and fascinatingly enough, constructed from its own literate program: Grimoire

[http://autotelicum.github.com/Smooth- CoffeeScript/interactiv...](http://autotelicum.github.com/Smooth- CoffeeScript/interactive/grimoire.html)</comment>


Ask HN: How Do You Meet Angel Investors in Silicon Valley? - <AUTHOR> I just spoke with a friend who is a VC and he said we're too early for VC fundraising and should be meeting Angel Investors.  The problem is, we've been here in Silicon Valley for almost a year and have yet to find a way to connect with VCs & Angel investors.
We know tons of people at Google (being in mountain view) & other local companies.  But all we keep running into are company men.  I actually ran into more VCs at a conference in LA (including Silicon Valley VCs).  I subsequently followed up with the VCs locally (they said we're raising too little for them to be interested) which is great, but not much luck with Angels.
We've hung out at Red Rock Cafe where everyone intently stares at their MacBook Pros (which is cool if you want to see that kind of thing), but not a ton of networking going on there...  What am I missing? <comment><USER2> AngelList and LinkedIn are your primary tools. The problem with angels is that they don't go around with an angel hat, unlike VCs. But they are everywhere in Silicon Valley. Go find a list of 100+ angels in your space from AngelList, then look them up on LinkedIn and find out who you know who can connect you. Then, pitch your network upward. You seem to know people at Google. Surely a few of them know more senior ex-Googler, who in turn may be doing some angel investing on the side.

Like everything else, this will only work if, when you demo your product, people love it and want to help you. If they want nothing to do with you, then of course all your networking efforts will be in vain.

</comment><comment><USER3> Looked at the HN profile page. It doesn't have contact information, doesn't indicate the Bay area, and there's tangential narrative that is more likely to provide an excuse than a reason to an investor.

Curious about the number of current users and their engagement, retention and growth.

Good luck.

</comment><comment><USER4> Son is barista at high-end coffee place in Silicon Valley. Regularly serves coffee to extremely well-known VC. Chats with VC over a period of months. VC invites son to dinner with him and wife. VC introduces son to CEO of several companies he has invested in. Son now interviewing for management position (includes equity)

</comment><comment><AUTHOR> Maybe getting a little more traction. Just spoke with a few VCs who seem super excited about what we're building. Funny thing is that I met these SV VCs & PE folks in LA & subsequently over here. They promised to line up intros to Google Ventures and other in the Bay Area.

That, combined with targeting angels via AngelList seems like a good combo. But it's still weird that there isn't a more obvious path. (Of course there's the YC lottery)

</comment><comment><USER5> Look for venture cafes in your area. Wework usually hosts one. They have some days where they interview potential companies to put them in front of VCs and Angel investors.</comment>


The Cobra Effect: Lessons in Unintended Consequences - <AUTHOR> https://fee.org/articles/the-cobra-effect-lessons-in-unintended-consequences <comment><USER2> Imagine if the local government benefited from more cobras. Then this cobra anecdote would be quite a genius move by them to achieve the end result while maintaining plausible deniability throughout. Looking at the effective incentive structures rather than intent is a good lesson for evaluating systems. But in terms of incentives to think this way, I think the strongest incentive is that likely 'unintended' consequences do not exist. The consequences are fully intended and concealed. The stated intent is PR. The benefactors of the 'unintended' consequences are involved in the planning. 'Unintended consequences' are not accidents they are a widely used strategy.</comment>


Tomahawk – A meta source music player - <AUTHOR> http://www.tomahawk-player.org/index.html?1

<comment><USER4> Hope you guys like it. We've got a major update in the works too, as well as an Android app. All free and open source.

<comment><USER5> I like the idea, would it be possible to add YouTube support (or does that maybe already exist)? (Of course, only playing the audio part and ignoring the video)

<comment><USER4> There is a working resolver here: [https://github.com/tomahawk- player/tomahawk-resolvers/tree/m...](https://github.com/tomahawk- player/tomahawk-resolvers/tree/master/youtube)

Mind you, it does require Tomahawk's latest nightlies / git version.

</comment></comment></comment><comment><USER6> MPD this is certainly not. But it's a neat way to discover music. Thing keeps crashing pretty randomly and I keep sending you the crash reports so hope that helps. The meta data discovery works nicely - which is what got me to try it out. Thanks!

Edit: I give up, one segfault too many - I just can't use it in this state. I ran it under gdb and the stack during the segfault is 78 calls deep - <USER2> making Qt applications like playing Jenga? I live in the world of embedded software so maybe I'm naive.

</comment><comment><USER7> I really like the concept, but the software is totally broken in Linux. Not even adding files to a playlist works. The song names are in the playlist, but the files can't be found. The program crashes every time it's closed. And there's a problem with the default Ubuntu theme: Selected menu items have white text on a white background.

A few patches and it could be a great player.

<comment><USER4> Thanks for the kind words. We've fixed the problem with the default Ubuntu theme and also have a bunch more design improvements, as well as general bug fixes which you can find in git (stable-0.8 and HEAD).

Not being able to resolve tracks at all sounds strange, though. Right now I would guess it's either a corrupted database or index. Could you try and see if you can reproduce the issue after wiping your settings / database? (~/.local/share/Tomahawk and ~/.config/Tomahawk)

<comment><USER7> I reset the settings. Still, using v0.7.0, the problem appears when I drag an artist or album name from the collection into the playlist to add all tracks at once. I get many greyed out song names then and the files can't be found. Can't really make out a pattern, as some files of an album will add fine and others with the same encoding won't.

Opening every album seperately with the arrow icons and dragging the songs directly into the playlist mostly works.

Dragging the mouse to "local" when adding to the playlist seems to work better, although it will still fail to add some albums, but I don't get all the greyed out entries (I think many of these are from automatic online sources, even though I don't have any online sources configured). The behaviour is definitely weird.

</comment></comment></comment><comment><USER8> [http://thenextweb.com/apps/2012/07/03/awesome-desktop- music-...](http://thenextweb.com/apps/2012/07/03/awesome-desktop-music-player- tomahawk-relaunches-and-theres-a-new-web-version-too/)

 _" Playdar was really a headless, UI-less technology that could be leveraged by online sites and services to let users bring their own content to other people's contexts."_

Why was Playdar not successful as standalone technology? It would seem applicable to a broad set of use cases for content-addressable data stores.

Calibre (also open-source, also Qt-based) has metadata plugins for various online ebook services. There's a growing number of browser extensions which overlay user data onto websites, many of these extensions would benefit from a widely-used content resolver that works in cross-domain (home, work, mobile1, mobile2, site1, site2) contexts.

<comment><USER4> I assume it just wasn't accessible enough for the average user to gain a bigger user-base. The technology behind it is still alive in Tomahawk, though, and you'll be able to use Tomahawk as a headless daemon (which you can control through a restful JSON-API) in the near future.

</comment></comment><comment><USER9> Hey, That sounds awesome, I am curious, how do you work with the providers (google, soundcloud and co ..) so that they can make some revenue ? (because you know these guys are just not streaming music for free ... Also I tried the web-app with a good album (Pixies - Doolittle) [http://toma.hk/album/Pixies/Doolittle](http://toma.hk/album/Pixies/Doolittle) but _all_ the songs in that albums are actually covers or remixes and none are the original Pixies version ... (probably what's happening when you look for "pixies debaser" in youtube or soundcloud. Anyway, the interface is super polished and cool, and I really like the idea of "having everything in one place" \+ jabber integration, there is really some major things to do with this, and there you are..

<comment><USER10> For subscriptions resolvers, users are required to be subscribers - <USER3> Tomahawk drives more users into subscription relationships.

</comment></comment><comment><USER11> My thought while trying version 0.7 (Windows)

Why is the Quick Launch Shortcut install option greyed out?

After install I, I tried playing a few files that I had just added, which was quick, from the "dashboard". Apparently my local files couldn't be found. Any log files available? Where does it think they are?

Many albums I have are by various artists yet you only seem read the artist field from the first file and treat that as the album artist.

You seem to have separation between the concepts of the library and the playlist, good. Unfortunately as soon as an item is played it is removed from the "queue".

Can I browse my "collection" in a different manner? At the moment it is a flat list of "artist" folders which seems to contain files not actually by the artist.

Any ReplayGain options available or planned?

At present I see no reason to discontinue using Winamp.

<comment><USER10> * Tomahawk relies on good metadata (that's how it matches to the best available source for each song), so if you are missing ID3 tags it won't import them into the library.

* You are right, we don't yet do a good job with various artists, but you may want to give our latest nightly a spin as it re-adds the flat view to the collection.

The queue works differently than Winamp - it injects songs into the currently playlist list and they then disappear once played. If you want a history of everything you have listened to you can get it from "History".

[http://download.tomahawk- player.org/nightly/windows/tomahawk...](http://download.tomahawk- player.org/nightly/windows/tomahawk-latest.exe)

* As for ReplayGain, it is a bit problematic with the various sources we support, because we can't pre-analyze tracks. It's certainly on our roadmap, though.

Thanks for giving it a try.

</comment></comment><comment><USER12> Great idea, I used it with spotify and last.fr plugins on Windows), it takes 15s to start playing a song (from spotify) and changing the volume level takes few seconds (it feels like VLC a few versions ago, it seems to use the same libs).

<comment><USER13> Try the latest nightly, it should come with big improvements over the last release (including better playback on windows): [http://download.tomahawk- player.org/nightly/windows/tomahawk...](http://download.tomahawk- player.org/nightly/windows/tomahawk-latest.exe)

</comment></comment><comment><USER14> Nice, I could reuse some of the sources one day, my "perpetual pet project " is a web audio player, with the same idea of unifying sources into the same interface.

Here's a screenshot of current version: [https://dl.dropboxusercontent.com/u/177896/Capture- webplayer...](https://dl.dropboxusercontent.com/u/177896/Capture- webplayer.PNG)

It's 100% client side (compiles to a html/js single page app), I have a separate optional server + client plugin to handle my local files.

</comment><comment><USER8> Could this support a mechanism to tip/pay artists that is independent of the distribution channel, i.e. link song name to artist wallet (pay with data or cash) so artists can receive supplemental income & analytics data that is fan- direct? Or allow artists to sell virtual goods (similar to messaging stickers) or emoji to fans?

<comment><USER4> We're certainly looking into this idea, a bit of a Flattr for artists. I like it.

<comment><USER15> Why not use Flattr as a Flattr for artists?

</comment></comment></comment><comment><USER16> I tried it a few months ago and liked it, but the android app wasnt ready.

And I didnt like that I couldnt save the songs I listened to any the device that I listened to them on - like a simple local cache. Whats the big deal with adding a "Download" or "Save" option...for any streams.

<comment><USER10> It would violate the terms of service of the various streaming APIs that Tomahawk hits.

</comment></comment><comment><USER17> I'd like to be able to plug in an open web directory as a source. (Found using the old "parent directory" "artist name") trick. I looked around, but couldn't find anything. Are there any resolvers out there that do this?

</comment><comment><USER18> Tried it, but unfortunately it basically didn't work at all for me. Last.fm history download broke at 8%, all Spotify tracks were rendered unavailable after they played once, and soundcloud doesn't work.

<comment><USER13> If you're on linux switching your phonon backend may help. Try removing phonon-gstreamer and installing phonon-vlc.

</comment></comment><comment><USER19> Installed, got soundcloud and spotify installed on OSX Mavericks, set to full screen. Tried to play a song, got an audio device not available error. Turned off peer upnp and restarted. Crashes on load.

<comment><USER13> Soundcloud sadly does not work (anymore) with the latest release on OSX. This is already fixed in the latest nightly [http://download.tomahawk- player.org/nightly/mac/Tomahawk-lat...](http://download.tomahawk- player.org/nightly/mac/Tomahawk-latest.dmg) We hope to release a new version with all the fixes soon.</comment></comment>


Please, no more calls to 'drain the swamp.' It's an insult to swamps - <AUTHOR> https://www.washingtonpost.com/posteverything/wp/2016/12/29/please-no-more-calls-to-drain-the-swamp-its-an-insult-to-swamps/?utm_term=.20f08f106990 <comment><USER2> The swamp did need to be drained. We forget so quickly (or bury) all of the damning emails from the DNC. The collusion with the press to destroy Bernie Sanders and all of Hillary's enemies, the fake protesters they hired, the racist and sexist terms they used throughout different party communications while at the same time excoriating anyone that they think is racist or sexist.

We also can't forget all of the blood money HRC and her husband have received from the financial industry over the years for their speeches and favors. And in her own words, HRC was also against marijuana in all forms (this can be found in her emails).

The Russian hack scandal, which really had no conclusive proof, was just a distraction away from the message (the corrupt and horrible DNC) and towards the messenger (the 90s called).

What shocked me was that seemingly intelligent people in the IT and security fields came to the conclusion that because a person has a Russian IP address, they must be physically located in Russia or working for Putin. I've been on a computer since I was 12 and know that this is bullshit. It's trivial for someone to: obtain a Russian IP address, use the Russian language to type out a message or email, and make references to Russian political figures and history (this was all the 'conclusive' evidence).

I also find it ironic that my local station (and many other news organizations) for weeks were showing a ballot box and implying that the Russians hacked the election through some sort of voter fraud. Yet, when Trump wants to investigate voter fraud, those same news organizations said there is absolutely none.

..and then I have to ask the question: Why are we listening to the same assholes that colluded with the DNC (the mainstream media) to destroy Bernie Sanders again?</comment>


Ask HN: Has anyone ever had to spy on their colleagues when they work from home? - <AUTHOR> I'm interested to hear if anyone's boss has told them they had to check their colleagues' productivity as they remote work (e.g. in the financial world), or if anyone has used "bossware" like Teramind and ActivTrak to monitor their team for an actually good reason. What was it like? How did it affect you?<p>I know a lot's been said about bossware - and it gets a really bad wrap - but I haven't actually heard from anyone who's done the spying before. <comment><USER2> Funny, I thought all of the video chat meetings being put on my calendar were basically the same thing as spying on me to make sure I was doing my work, or at least thinking about doing it...

<comment><AUTHOR> There's definitely loads of passive spying: Slack active statuses, Zoom notifications when someone's on another tab (think they removed this from backlash), and scheduling excessive video meetings which is just office presenteeism moved into the home

<comment><USER2> You nailed it. It's really quite bad. At my current company we are judged by "results" aka how many tasks and points we bang out on Jira, but then also the same managers stuff our calendars full of video meetings.

<comment><AUTHOR> Yeah I wonder what it's like being on the 'spying' end - many probably won't realise they're doing it.

I've come across a few comments on other threads where people justified monitoring software, but there must be some out there who are told they have to spy on colleagues and feel awful doing so.</comment></comment></comment></comment>


New York's Sidewalks Are So Packed, Pedestrians Are Taking to the Streets - <AUTHOR> http://www.nytimes.com/2016/07/01/nyregion/new-york-city-overcrowded-sidewalks.html?hp&action=click&pgtype=Homepage&clickSource=story-heading&module=second-column-region&region=top-news&WT.nav=top-news <comment><AUTHOR> It drives me crazy how the city is dominated by pedestrians, yet cars (moving and parked) still get the vast majority of space on streets. The city really needs to ban private cars and parking on streets.</comment>


Steve Bannon Suggests There Are Too Many Asian CEOs in Silicon Valley - <AUTHOR> http://www.huffingtonpost.com/entry/steve-bannon-disgusted-asian-ceos-silicon-valley_us_582c5d19e4b0e39c1fa71e48 <comment><USER2> Tech's political apathy and it's failure to share with the country on a decade of wealth building share the blame for the precarious situation we are in.

We can still reach outside our bubbles and save Democracy from these demagogues.

[https://m.facebook.com/dextbarton/posts/10101084012079930](https://m.facebook.com/dextbarton/posts/10101084012079930) [https://ourrevolution.com](https://ourrevolution.com) [https://www.aclu.org](https://www.aclu.org)

<comment><USER3> But again, it's racist scapegoating. The majority of Silicon Valley CEOs are white, and an even higher percentage are white outside of Silicon Valley.

So here we have white racist nationalists whining about the few successes of minority immigrants (Sundar, Satya, etc) while ignoring how women and minorities have had a hard time getting into the upper echelons in general.

Yes, middle America is facing a crisis in the New Economy as their jobs are automated away, but it doesn't fully explain the Trump/Bannon phenomena. Poor voters voted for Clinton, the average Trump voter salary was above $50k. You cannot fully explain away the Trump phenomena with the Michael Moore explanation.

And if people let themselves get racially baited, believe fake news, scapegoating minorities, we can't blame tech workers alone, except perhaps maybe we can blame Facebook for not filtering lying and racist propaganda stories.

<comment><USER2> To be clear, yes it's totally racist and they have the gumption to deny it with a straight face [1]. Those loud and prejudiced voices have commandeered a large number of people.

140 chars for everyone and this is the result, it's a sad sad reflection.

Luckily we don't have to be agnostic and apathetic about these views. It's been good to see Google and Facebook recently announce banning fake news from their ad platforms, as well as Twitter. I hope it's not too late.

[1] [http://www.npr.org/2016/11/16/502304157/breitbart-editor- ste...](http://www.npr.org/2016/11/16/502304157/breitbart-editor-steve-bannon- has-no-prejudices)</comment></comment></comment>


Just some other awesome CSS3 buttons - <AUTHOR> http://itechtalks.blogspot.com/2011/09/just-some-other-awesome-css3-buttons.html

<comment><USER2> Duplicate : <http://news.ycombinator.com/item?id=2961645></comment>


Toku vs. Mongo – Fight - <AUTHOR> https://instrumentalapp.com/blog/post/92063313684/toku-vs-mongo?utm_source=hacker%20news&utm_medium=social%20media&utm_content=toku%20vs%20mongo&utm_campaign=application%20monitoring

<comment><USER2> Question for the OP

"we're not exactly running a standard MongoDB instance here. Our dev team is very familiar with Mongo, we've squeezed quite a bit of performance improvements out of it over the years" \--> Curious to know what was done to see those performance improvements. Thanks for the information</comment>


Chromebook Comparison Chart: Compare Technical Specifications of Chromebooks - <AUTHOR> http://www.linux-netbook.com/compare/chromebooks/ <comment><USER2> This looks useful.

I'm just wondering if it's possible to install Linux on any of these and everything works out of the box.

It would be nice if the specific CPU model number was listed. It just says "Intel Core i7". I'm wondering if these netbook CPUs support any virtualization features. Although with that limited storage you can't do much.

I would really love to see a linux-laptop version of this site. With information on supported devices.

<comment><AUTHOR> Not every CPU you find in the different Chromebooks is equally suitable to run Linux. Most Chromebooks on the site actually have the CPU model and number listed though.</comment></comment>


Show HN: Serve Static GitHub Pages Locally - <AUTHOR> https://github.com/CurtisLusmore/ghp <comment><USER3> Congratulations on your first Go (Golang) project.

The source code doesn't do anything related with GitHub pages though.

It simply starts a file server with no more features than adding ".html" at the end of the URL.

You may want to change the default port from :80 to :8080 so people don't have to set "-port" every time.

Also, in the README, you say that one of the implemented features is:

> _4\. Check whether 404.html is a file, if so serve that file as a 404_

But your code says otherwise [1] since there is no 404.html file in the repository.

[1] [https://github.com/CurtisLusmore/ghp/blob/6b6e2bd/ghp.go#L25...](https://github.com/CurtisLusmore/ghp/blob/6b6e2bd/ghp.go#L25-L29)

<comment><AUTHOR> Thanks for your feedback, and for taking a look.

> The source code doesn't do anything related with GitHub pages though.

I'm not sure what your point is here exactly. Although the source code makes no mention of GitHub Pages, and you're more than welcome to use this for anything you'd like, it was specifically built to mimic the behaviour of GitHub Pages w.r.t. the custom 404 and the dropped .html extension.

> You may want to change the default port from :80 to :8080 so people don't > have to set "-port" every time.

Good point. I personally use :80 a lot but I realise :8080 is pretty standard so will use that.

> But your code says otherwise [1] since there is no 404.html file in the > repository.

The 404.html file is not part of this repository, it's part of the directory you are serving. See [https://help.github.com/articles/creating-a- custom-404-page-...](https://help.github.com/articles/creating-a- custom-404-page-for-your-github-pages-site/)

Edit: In case it's not clear, this is designed for testing your GitHub Page site locally, before pushing. I'll update the Readme a bit to make this clearer.

<comment><USER4> >> The source code doesn't do anything related with GitHub pages though.

> I'm not sure what your point is here exactly.

The title, "Serve Static GitHub Pages Locally," makes it sound like you're serving github pages. Maybe "serve local static pages like github does" would make it more clear.

<comment><USER5> Have to echo the op's remark here—what's the difference between "serving static GitHub pages locally" and "serving local static pages like github"? I can't see any possible interpretation of the former that doesn't equate to the latter.

What did you assume it did when you read the title?

<comment><USER6> distinction is former implies it can only be used for gh pages, later implies that is one possible use amongst others

</comment></comment></comment></comment></comment><comment><AUTHOR> Hey HN,

I made this for myself, because my blog is served as static HTML via GitHub Pages and it's hard to test locally because all of my absolute paths break (links, imgs, scripts, css, etc.). I tried using the Python module http.server, but it doesn't support dropping the file extension (e.g. /about instead of /about.html). Thought somebody else doing the same might find this useful.

<comment><USER7> FYI GitHub Pages is merely running Jekyll (jekyllrb.com) with a couple of commonly used plugins. If you want to test you site locally you'll be better off using that.

<comment><AUTHOR> That's a fair point. Previous iterations of my GitHub Pages used Jekyll and I used that at the time to test it, but I recently switched to plain-old-HTML and honestly it didn't occur to me that Jekyll would still work for testing it. Having said that, installing Jekyll[1] has quite a few steps and requires quite a few dependencies which I don't typically have installed, so this is a bit easier for me to distribute to my various machines.

[1]: [https://help.github.com/articles/setting-up-your-github- page...](https://help.github.com/articles/setting-up-your-github-pages-site- locally-with-jekyll/)

</comment></comment></comment><comment><USER8> Nice start!

However, to be honest, I see no advantage over Jekyll. A nice side-project to learn go on one hand, on the other, does not bring much to GitHub pages.

<comment><USER9> Indeed, I also use Jekyll for this.

</comment></comment><comment><USER10> I will need some headers like content-type too. [https://unix4lyfe.org/darkhttpd/](https://unix4lyfe.org/darkhttpd/) darkhttpd is a simple (3k lines of C, no deps) HTTP server that handles headers and encoding. may be a good case to study.

<comment><AUTHOR> Thanks for sharing that, I'll give it a look. I _think_ that http.ServeFile handles content type automatically, because when I test this locally I'm seeing Content-Type in the response headers.

<comment><USER10> Oh. Nice. There is a content-type header. And also the "Content-Length".

The only relevant header that is missing is the "Access-Control-Allow-Origin: *" That comes from github but not from you server.

In 404, github sends Content-Security-Policy: default-src 'none'; style-src 'unsafe-inline'; img-src data:; connect-src 'self'

<comment><AUTHOR> Awesome, thanks for noting this. I've raised an issue to address this and investigate other response header differences: [https://github.com/CurtisLusmore/ghp/issues/4](https://github.com/CurtisLusmore/ghp/issues/4)

</comment></comment></comment></comment><comment><USER11> My website is a static Github page that's been built without any site generator, but I've set all the paths to be relative so your main issue of "all of my absolute paths break" doesn't really apply and the website still works fine. I then don't need another program besides Brackets to do all my editing and testing in. And as far as other people's comments, it looks like Jekyll can spit out relative paths so it doesn't exactly do much.

<comment><AUTHOR> Ooh, I hadn't seen Brackets before, it looks interesting. Thanks. For anybody else who's curious, [https://brackets.io/](https://brackets.io/)

<comment><USER12> That https link throws a cert error.

<comment><AUTHOR> Oh you're right, I typed that address by hand having found the page through the Google app on my phone, so didn't notice I wasn't using HTTPS. There's an issue on their GitHub that's been unanswered since November last year... [https://github.com/adobe/brackets/issues/14591](https://github.com/adobe/brackets/issues/14591)

</comment></comment></comment></comment><comment><USER13> Check out npm serve as a reference, it does nearly the same thing, but I assume written in javascript. It would be cool to have a faster drop-in replacement for serve (not that serve has ever been slow for me).

<comment><AUTHOR> Good idea, thanks for the suggestion. I have thought about whipping up a version of ghp in a couple of different languages as a comparison - <USER2> originally wrote it in C#.

</comment></comment><comment><USER14> consider it as a feature request, but if you really plan to match github pages, I hope you will eventually include an on the fly renderer for org-mode files too, like GitHub. Markdown serving packages are dime a dozen, I am yet to see something that will serve org files without having to export first.

<comment><AUTHOR> Sorry, to be clear the tool is designed to make it easier to locally test your static HTML GitHub Pages repos, where things like a `/about` link will not resolve in the context of your filesystem and likely also won't know to check for `about.html`. I'm not trying to make sites equivalent to GitHub Pages from other sources. Does GitHub Pages actually support org-mode? That's certainly news to me, and if so I'll take a look into how it works and whether I can add support.</comment></comment>


Ask HN: Could we use Shellshock to patch vulnerable systems? - <AUTHOR> Since we know that it took weeks before most servers were fixed from the Heartbleed vulnerability, couldn't we use Shellshock to make a worm that would upgrade bash wherever it can? Are there legal issues about fixing a vulnerability in a system that doesn't belongs to you?<p>[edit] Ok, I guess the part about the legal issues was a bit candid. What I am really saying is wouldn't it be a good thing to have a worm closing vulnerabilities, compared to the thousands of hackers exploiting this vulnerability to steal or spy? <comment><USER2> It would be treated the same as exploiting a system for any other reason.

Friendly worms have been done before (welchia). The problems with friendly worms are numerous. It is more than just a legal issue. A malicious worm is looking to propagate quietly and perhaps leave some sort of backdoor control channel. A friendly worm has to propagate (faster than malicious worms), and patch (without DDoSing patching infrastructure), and self terminate (which harms it's ability to propagate). It's hard to imagine a real world scenario where a friendly worm would be effective. It would either take too long to develop, or it would do just as much damage as a regular worm.

<comment><AUTHOR> Thanks, I did not know about that kind of worms or about the Welchia worm.

</comment></comment><comment><USER3> In France, you deserve 3 years in jail and a fine of 45000€ for this.

[http://www.legifrance.gouv.fr/affichCodeArticle.do?idArticle...](http://www.legifrance.gouv.fr/affichCodeArticle.do?idArticle=LEGIARTI000006418316&cidTexte=LEGITEXT000006070719)

</comment><comment><USER4> Since this is a RCE bug, sure, you can fix it. But its not your place to fix a vulnerability. It's on the vendor to provide the patch.

I will point out like its been pointed out in another comment this probably breaks the law somewhere.

</comment><comment><USER5> >Are there legal issues about fixing a vulnerability in a system that doesn't belongs to you?

Yes. Because it doesn't belong to you. Therefore you have no right to 'fix' it.

</comment><comment><USER6> I'm pretty sure in many places this would be illegal

Definitely in the UK

</comment><comment><USER7> It's a good idea, but I would expext most applications vulnerable to not run as root. You would need to be root to patch the bash executable.

<comment><AUTHOR> Good point. So I guess one would have to combine that with another vulnerability to be able to get root privileges.

We could also imagine a worm contacting the owner of the server and asking her to fix it.

</comment></comment><comment><USER8> If you attempted to do this, you would likely end up in jail for a very long time under the CFAA. Fair warning.</comment>


C++ Core Coroutines Proposal [pdf] - <AUTHOR> http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p1063r0.pdf <comment><USER2> It seems that the main issue that the authors of this proposal have with the current coroutines proposal in the committee is that that proposal effectively requires allocation for all coroutines, while offering promises that the optimizer will be able to avoid the allocation in common cases. This competing proposal makes allocation opt-in for various reasons, not the least of which is skepticism about how well the optimization will perform. (See "Implicit allocation violates the zero-overhead principle" in this document [1]).

[1]: [http://www.open- std.org/jtc1/sc22/wg21/docs/papers/2018/p097...](http://www.open- std.org/jtc1/sc22/wg21/docs/papers/2018/p0973r0.pdf)

<comment><USER3> [http://www.open- std.org/jtc1/sc22/wg21/docs/papers/2018/p098...](http://www.open- std.org/jtc1/sc22/wg21/docs/papers/2018/p0981r0.html)

The people that actually implement coroutines in the compilers actually think that eliding the allocation is very doable.

<comment><USER2> Richard Smith, quoted in the document I linked as saying "I do not have any confidence this optimization would ever become reliable in the way that, say, certain forms of NRVO are," is the code owner of the clang frontend.

<comment><USER4> It's also true that relying on the compiler to optimize some stuff away (instead of making the overhead explicitly opt-in) is not very C++-ish in nature.

<comment><USER5> I'd like to introduce you to the wonderful world of templates.

<comment><USER6> Do you have any examples of templates incurring a runtime cost at -O0 compared to a "no templates" approach?

<comment><USER5> Expression templates (ala boost::spirit) definitely come to mind. The callstack in a -O0 build can get very, very deep.

Heck just using std::numeric_limits<int>::min() will incur a function call in -O0, but nobody cares since it gets optimized in -O1 and up. The same thing applies more and more as you invoke templates from templates, but, again, nobody cares since we are confident it'll get optimized/inlined easily.

It's not nearly as prevalent in modern code since constexpr static variables are now a thing, but relying on these optimizations has historically been super important.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> It seems there's a weird fetish in C++ land where non-letter characters seem more "pure" than words. I remember suffering from it myself, implementing atrocities like a subtraction opeartor on a path class which would give you the relative path between two paths. It made me feel very clever but I feel sorry for anyone who would have to look at my code now and try to figure out what the hell was going on.

<comment><USER2> It's because defining "customization points" as operators make it easier to write templates, essentially. See "C++ doesn't know how to do customization points that aren't operators": [https://quuxplusone.github.io/blog/2018/08/23/customization-...](https://quuxplusone.github.io/blog/2018/08/23/customization- point-or-named-function-pick-one/)

This is one of the downsides of not having typeclasses that is often forgotten about.

<comment><USER8> Wouldn't uniform call syntax (like in D) solve most of the issues outlined above? I.e. it always boils down to "primitive types can't have methods"; but uniform call syntax would let us call any function like a method on its first argument...

<comment><USER2> Or just allow methods to be defined on primitive types, like Rust.

<comment><USER8> Uniform call syntax is a superset of that, since you can't have virtual methods on primitive types.

</comment></comment></comment></comment></comment><comment><USER9> The rapid change in C++ syntax may destabilize it.

For example; `auto OpenFile(const string& filename) using future_coroutine<File> [filename]`. Okay, I get it. Or the operator `[<-]`.

But as the idioms find their way into production code - an entire important segment of the C++ developer base is going to no longer be capable of reading the language. And that might be worse than not having features.

<comment><USER10> I spent a decade watching C++ painfully slowly add more advanced template support and... well, that's about it. After a million iterations of "for (mylisttype::const_iterator i ..." they finally added ranged for loops.

The rate of change seems to be increasing. This is initially a bit shocking until I remember that every single job I had was like using a completely different language because, even ten years ago, every shop used a different subset of C++ and STL!

Add all you want to the language, it's all going to devolve into code-review infighting the same way it did in 2008.

<comment><USER11> > I spent a decade watching C++ painfully slowly add more advanced template > support and... well, that's about it. After a million iterations of "for > (mylisttype::const_iterator i ..." they finally added ranged for loops.

C++ was first standardized in '98\. Nothing happened for more 10 year (in particular no new advanced template support) unless you count the very minor bug fixes in C++03. The next revision, C++11, added ranged for loops.

<comment><USER10> Compilers don't strictly adhere to standards, and I'm far more concerned with things like whether my compiler crashes, how godawful the error messages are, and whether the bundled STL even functions reliably.

</comment></comment></comment></comment><comment><USER12> [<-] "Our proposed spelling is intended to suggest unwrapping"

I'd argue co_unwrap() has spelling that suggests unwrapping.

</comment><comment><USER13> I still have to read it through, but why does it require new syntax and not just new standard library additions like boost::coroutine?

I just fell in love with boost::fiber so i hope there will be also something like it in the future std.

<comment><USER14> This could be completely off-base but:

\- Clarity and establishing convention. Boost coroutine2 uses a lot of boostyness to make using coroutines in c++ less painful, but they still require boilerplate and can be quite difficult to write. Understanding code that uses coroutine2 also requires understanding how the coroutine2 library works and how it uses normal c++ syntax in unique ways.

Having a dedicated operator like [<-] arguably produces more familiar looking and clearer user code. (Take a look at the generator example in the appendix of this proposal; the implementation of the 'generator' type is horrific but the 'Traverse' function is pretty easy to read.)

\- Generalization. Boost::coroutine2 targets coroutines. This proposal tries to generalize aspects of the coroutines proposal such as the unwrap operator [<-] to support use cases like linear monads.

</comment></comment><comment><USER15> This doesn't seem to be a coroutines proposal so much as an attempt to sneak (Haskell's) `do` notation into C++.

Which I applaud, it's a brilliant feature.

</comment><comment><USER16> I don't understand the point of co_*. Why should you have something as ugly as this? Just use std::coroutine?

<comment><USER17> They are supposed to be keywords like _return_ or _throw_. Those cannot be namespaced either.

</comment></comment><comment><USER18> And yet this proposal still doesn't let you implement zero-overhead objects- as-coroutines. I'd like to be able to create a coroutine that initializes some state ("constructor"), yields back to the caller, and lets you call alternate re-entry points ("member functions") that manipulate the state and yield back, or the final entry point that cleans up the state ("destructor"). If the initialization fails for whatever reason, the yield will simply be skipped. Crucially, I want to be able to do all of this without indirect jumps other than returns.

<comment><USER19> Serious question, what's the difference between this and a class?

<comment><USER20> I guess when you call an entry point the second time it restores the existing context at the point of the previous yield. So you have mix of shared state (class members) and local state between the various entry point. Just a guess though.

<comment><USER19> If the local state was accessed across a suspend point that would be undefined behavior. So it would have to be spilled into the coroutine frame. So it would be the same as a class.

</comment></comment></comment></comment><comment><AUTHOR> Bikeshedding alert: If a linear monad use case is considered and a do- notation-like syntax is proposed, why isn't a left-bind =<< operator introduced by nature.</comment>


All The Top Investors Are Scrambling To Invest In A Startup Called Chromatik - <AUTHOR> http://www.businessinsider.com/chromatik-ipad-music-app-investors-2012-12

<comment><USER2> "Startup"? This looks more like a "business". Cheers to them for staying low- pro & avoiding the hypebeast for all this time.

</comment><comment><USER3> tl;dr sheet music on iPad. There's a $20 billion music buyer market in the US and $80bn overseas, but most of that money is spent on instruments. The market segments Chromatik is chasing are a) classical musicians, of whom there are few (but enough) and b) high school band musicians, of whom there are plenty. The crossover with computer-based musicians is almost non-existent. Outside of the classical sphere hardly any working musicians use sheet music.

<comment><AUTHOR> Realistically the number of people who would like to learn an instrument is astronomically high. Most people try, get frustrated, and quit. If Chromatik makes learning far more enjoyable and simple, they could easily grow the size of this market.</comment></comment>