Ask HN: Has our startup failed, and what now? - <AUTHOR> I have been one of the lead developers at a local startup, Sparehanger, for the past few years. We are a non-profit organization that enables users to build virtual wardrobes and share their style with friends, family, or the world. All surplus revenue was to go to charity, and we had hoped to create a charitable organization called the "Spare Two Project," encouraging people to volunteer two hours a month for the good of the community.
We have a vision that people seem to love, women in particular, and a mostly working product, but we recently exhausted all of our funds and have to close shop. We made a few mistakes in the beginning not capturing a small userbase with an MVP early, which hit us hard building without solid user feedback and the poor numbers didn't help with finding investors. We have scrapers to continually harvest new apparel from across the web and have affiliate programs active to generate revenue if there were active users. For now, we have decided to cease development but keep the site live.
Our CEO, Peter Hubbs, is one of the most kind and commendable people I have met, and I don't want to see him completely down and out with nothing but experience and lessons learned if there are any options we have yet to consider. So HN, I ask: do we actually have a solid idea? Is Sparehanger good enough to capture users? If so, how do we capture users with no capital? If not, is Sparehanger even worth the cost of keeping live?  And what should we do now?
Thanks in advance for any advice you may have.
https://www.sparehanger.com/
http://www.lsureveille.com/daily/lsu-graduate-creates-interactive-fashion-website/article_46dfa3be-7b57-11e4-811c-3313a5c10fa6.html <comment><USER2> I think you made a pretty big mistake making the charity a built-in component of your company. The better move would have been to make a for-profit and then to donate to charity from your take-home or an exit somewhere down the line (assuming the product is solid). Making the whole thing non-profit makes it a lot harder to get funded, since you're effectively telling any supplier of capital that they won't be seeing any returns and this is a very high hurdle to overcome if your core mission is not directly related to the charity (see for instance Watsi for an alternative on this).

So, if you want to rescue your project and assuming there really is a market (which I can not see from where I'm sitting, I know nothing about your chosen field) I'd suggest transforming the business into a for-profit if a solid business case can be made and funding can be secures. And if you can't secure funding then it looks as if this is the end of the line.

Best of luck with all this, and hats off to you for trying this to begin with!

</comment><comment><USER3> First, a disclaimer: I'm very unknowledgeable when it comes to the business side of these things, so all I'm possibly good for here are more feature- focused observations (although instinctively, I'm in full agreement with jacquesm's point about restructuring this into a for-profit business).

For me personally, I think the real value of using something like Sparehanger would come from being able to follow and shop specific brands and designers. This is something you can technically do on Pinterest, or by following designers on Twitter/Facebook, but often, their updates get buried by the avalanche of stuff these large websites are constantly pouring onto your news feed. Having a place to go to that specifically updates you about whatever- clothing-brand-rollouts-are-called, and that keeps you updated on the designers you love, is very cool, and could be delved into a little deeper.

I'm just throwing things out without having any idea how practical or realistic they are, but if you could make a deal with XYZ Designer which would allow Sparehanger users to purchase or browse new XYZ styles and lines a couple days before the general public, that seems like it would be a neat incentive for people that are into fashion to actively use the site.

The other thing that stood out to me is, using a website to simply keep track of the items in my closet seems like it would just be a hassle, BUT if I could create categories of outfits and/or occasions ('my party outfits', 'black-tie affairs', 'first dates', etc), and store pictures I've snapped of myself in specific outfits under those categories, I could return to those later when I'm trying to compare outfits for whatever-occasion, without having to try on everything in my closet to make a comparison.

If anything/everything I've said is already a feature, then that's awesome- I just didn't really gather that from the time I spent checking it out.

I wish I had more genuinely helpful things to say. Just wanted to offer my two cents.</comment>


Ask HN: Has Anyone Switched from Linux to Win10 Linux Subsystem for Development? - <AUTHOR> In the past, I dual-booted with Ubuntu and Win7. Development was on Linux with certain apps (Office, etc) on Win 7.<p>I'm about to get a new laptop with Windows 10 Pro, and wondering whether the Linux subsystem offers enough of the Unix ergonomics to get stuff done. <comment><USER2> Unfortunately for the most part it will not suffice. For example I tried to run Node and Go applications and they did not work properly.

Node had error with `pm2` package which is needed if you want to launch multiple applications a la "microservices".

Go had problems with `go get` on sqlite database.

Note that this was about two months ago, maybe things changed by now. I am very happy with Win10 in general, but that is because I use C# and do not need Linux for developing.

<comment><USER3> You might want to try again, maybe with an insider build. I had some issues with go because some Linux system calls had not been implemented. They were added in an insider build that I installed and since then I've been issue free.

The I/O performance is still a bit lacking though.

</comment></comment><comment><USER4> It works decently for me. I had to get on the Windows Insider for beta Windows builds because the stable only has Ubuntu 14. Beta has 16.</comment>


Ask HN: Has anyone been losing texts more often recently? - <AUTHOR>

It seems that many people (approximately 8) in my social circle have been getting lackluster texting services where they lose text messages or do not receive them until hours later, typically multiple at the same time.<p>I have occasionally found this problem in the past, but this seems to be a recent spike in affect people, and I was wondering if anyone here is facing the same problems or perhaps shed some light on what may be causing this. <comment><USER2> Are all of those 8 friends using the same network? Are you on the same network? Are the texts affected from within the network, or ones being sent from other networks?

<comment><AUTHOR> I'm getting stories from people with AT&T and Verizon. Those are the only two networks that I know of with any of my acquaintances.

I don't know the specifics of which network is sending texts to which network, but I am part of the Verizon network and my texts occasionally get delayed for hours at a time coming from Verizon or AT&T.</comment></comment>


What's coming in Elixir 1.3 - <AUTHOR> http://tuvistavie.com/2016/elixir-1-3 <comment><USER2> I don't understand the purpose of `with`. If it's to help people deal with deeply nested or byzantine case-clause structures, then that seems weird to me.

Isn't the way to deal with that problem is to hoist those clauses into functions with different pattern signatures and rely on function-head matching?

Everything else looks awesome. I have to say, somewhat selfishly, that my favorite part of Elixir is actually the pressure it's putting on the Erlang community to up its game and care more about developer experience and enablement through better tooling, etc.

<comment><USER3> The `with` statement seems similar to Haskell's `do` notation for monads, where the monad(ish) here is pattern matching.

I'm new to Elixir but I've definitely run into the "byzantine case-clause" issue and it can be very annoying. My case was very similar to the example: pulling something from a form, validating the format, validating it in the database, and returning something. All failable, single-purpose functions in sequence to narrow down the result.

I grappled between using a monad macro library[0] to simplify `{:ok, _}`/`{:error, _}` signatures versus just raising exceptions. I ended up doing the latter for the additional benefit of stack traces. Exceptions seem culturally discouraged in Elixir, though I don't quite grok why yet.

Out of curiosity, would you be willing to show how you might refactor the post's "create_organization" example?

[0] [https://github.com/rmies/monad](https://github.com/rmies/monad)

<comment><AUTHOR> Exceptions are not discouraged, using them for flow control is. There are I think a few reasons why exceptions are a being a little frowned upon.

The first one is that usually we do not want to rescue them, the let it crash philosophy. If an error happens, the the process will crash, it will be restarted, the error will be logged, and everyone will be happy.

In the case we really do want to handle an error, we can usually just use `case` or `with`, which are simpler, avoids to rescuing something we did not expect, as well as some pitfalls, for example the fact that recursive calls inside a `try` cannot be optimized to be tail-recursive, which can be an issue depending on the case.

However, I think it is fine to use exceptions if it can avoid deeply nested code, which was probably your case.

</comment></comment></comment><comment><USER4> I'm most excited about the Calendar datatypes.

There are 2-3 really good Elixir libraries around dates and times: calendar, goodtimes, etc.

Choice is great, but I really like a canonical library around something so core as time.

<comment><USER2> Yeah, that's going to be absolutely epically useful and save a lot of pain and debugging.

</comment></comment><comment><USER5> Elixir is moving forward at a very good pace.

<comment><AUTHOR> Yes, both the language and the ecosystem are getting better and better!

</comment></comment><comment><USER6> Anyone who keeps an eye on Elixir and isn't aware of the Elixir Radar mailing list should check it out. I don't use Elixir regularly but like to stay updated with the most interesting tech platform of our time and ER is the best mailing list out there for this that I've found.

</comment><comment><USER7> I've just started using with instead of case today and its tidied up a lot of code and made each piece more modular. The new with looks even better at handling errors, although I wander if it will discourage me from breaking up my functions quite so much.

</comment><comment><USER8> A lot of really good things. Elixir is already a pleasure to use, with these additions, Date standardization, it is going forward.

</comment><comment><USER9> Side note: your blog content doesn't show up at all with JS disabled.

<comment><AUTHOR> Oh, thanks, I was not aware of that. I'll fix it!</comment></comment>


A First Look at Metal Performance on the iPhone 6s - <AUTHOR> http://flexmonkey.blogspot.com/2015/09/a-first-look-at-metal-performance-on.html <comment><USER3> I haven't looked at Metal's API. I have programmed PS1/PS2/PSP/PS3 which all used command buffers completely under your own control letting you pre-create them and removing all overhead for "Draw Calls" so I'm excited about these new APIs that seem more like consoles.

I found this Vulkan video from Siggraph exciting

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

There are several demos shown which demonstrate the advantages of getting rid of the draw calls. Not only can you draw a bunch more stuff but you also get much of your CPU back to do other things.

The showed one example doing 400k effective draw calls on some tablet which would be impossible with the older APIs.

<comment><USER4> I wonder if we're seeing this due to AMD's inability to write good drivers. In certain benchmarks, the performance of cards that cost way less than nVidia's shot up to match theirs. "If the driver is the problem, then no driver is no problem", I guess. It's overall a very welcome development, but I have to wonder what level of incompetence goes on at AMD to get to this point.

<comment><USER5> That's certainly not a fair assessment. APIs like Metal & Vulkan (and AMD's Mantle which arguably started the trend on the PC) are the correct technical direction to go and not an indication of incompetence on AMD's part - <USER2> anything they're an indication of trying to fix a broken status quo. You have to understand that drivers are hard to write because they became an over- complicated mess of hacks and impedance mismatch between what OpenGL/DirectX of old made graphics hardware look like and what graphics hardware actually evolved into. The hardware just evolved away from the APIs.

See here for a start -- this post is extremely enlightening on the situation:

[http://www.gamedev.net/topic/666419-what-are-your- opinions-o...](http://www.gamedev.net/topic/666419-what-are-your-opinions-on- dx12vulkanmantle/#entry5215019)

</comment></comment></comment><comment><USER6> I've got a collection of Metal articles for anyone interested in learning it.

[http://www.h4labs.com/dev/ios/swift.html?q=metal&age=10000](http://www.h4labs.com/dev/ios/swift.html?q=metal&age=10000)

</comment><comment><USER7> Note for anyone else sent to the ChromaTouch article instead: Blogspot's JavaScript router is extremely broken. The actual article linked to can be found in the left nav.

</comment><comment><USER8> This is really impressive, much more work went into the CPU & GPU on this "s" generation than previous years. I can't wait to see what people, smarter than I, do with it.

<comment><USER9> Given the previous 's', the 5s, was the one to introduce both the 64bit CPU architecture and the Metal capable GPU, you're selling it a bit short.

<comment><USER10> Yeah, and the 4S was the first dual-core iPhone, too.

</comment></comment></comment><comment><USER11> I wonder, how this compares to modern desktop-class video card on DirectX?

<comment><USER12> I don't really understand what you mean by "this". Do you mean Metal, the API vs Direct X. Or do you mean The video hardware on the 6s vs a desktop.

<comment><USER11> I mean particle test in linked article. iPhone 6S + Metal vs some top video card + DirectX. Of course later wins, there's no doubt about that, I just wonder how big the margin is.

<comment><USER13> There's too many variables in that to make a meaningful comparison.

</comment></comment></comment></comment><comment><USER14> I read the title and thought they were talking about the performance of the metal materials in the frame, and not _Metal_ the API.

<comment><USER15> Me too! Especially after "bendgate" the last time around.

( For those of us that ended up in here due to that, it looks like some people have done some testing. [https://www.youtube.com/watch?v=EPGzLd8Xwx4](https://www.youtube.com/watch?v=EPGzLd8Xwx4) )</comment></comment>


Has Iceland Eliminated Down Syndrome Through Abortion? - <AUTHOR> http://www.snopes.com/iceland-eliminated-syndrome-abortion/ <comment><USER2> I know when my wife and I found out we were having a baby. The first appointment we had with a doctor (in the U.S.) was a screening for literally anything we were at risk for.

We ended up telling some people we we're doing that and they freaked out (my parents included). We really don't understand why everyone doesn't get these tests. We're both Libertarians, but even agree the government should probably offer these tests free to reduce the burden on society (as the test we did cost around $250 - checking for downs).

More importantly though, we didn't understand why people freak out. The sociatial pressures not to get test(s) like this done are insane. Even one (of our several) doctors / nurses were trying to convince us from doing it... Sure I understand some people think abortion can be bad, but isn't bringing a troubled human being in the world just as bad (rhetorical question)?

<comment><USER3> > but isn't bringing a troubled human being in the world just as bad

I am a person with a congenital disorder, Spina Bifida, and it's usually recommended to do an abortion if such anomaly was discovered at the early stages of pregnancy. But I can tell you that I'm glad my parents chose the other way and I'm glad that I'm alive. Sure, life can be tough at times, but can anyone really say that life is easy?

So I agree that there's no easy answer to that question.

</comment></comment><comment><USER4> So basically the apparently at least partially nonsense CBS report says, of things that can actually be confirmed, "Iceland has less Down Syndrome babies born", and then tries to tie it to abortion, and THEN tries to insinuate abortion is morally wrong and then the Icelandic are bad people.

Wtf.

<comment><USER5> This reply is nonsense. The reason nearly no babies are born with down syndrome in Iceland is because their lives are ended before their born, the abortion rate is nearly 100%. That's directly related to abortion.

The fact that many find eugenics to be morally wrong isn't nonsense either.

<comment><USER4> It doesn't actually make the link between low Down Syndrome occurrences and "oh, they aborted them all." It does say that they do abort many of them.

What I'm trying to say is, it does not discount a more natural link of better healthcare and nutrition which may lead to less down syndrome pregnancies in the first place, and zero discussion is given to this.

<comment><USER6> Thats a very good point, although I believe downs syndrome is a genetic issue rather than healthcare and nutrition issue. However the point remains that if the incidence of downs is very low in the country, combined with an abortion rate that is e.g on average for a European country then a case could be made that abortion is not the driving factor for the low incidence of DS in the general population.

</comment></comment></comment></comment><comment><USER7> Do a lot of down syndrome children end up having children of their own?

Otherwise if down syndrome was spread by a single gene, it would have died out pretty naturally on its own, right?

(disclaimer) I admittedly don't know much about genetics.

<comment><USER8> It's not a genetic disease

<comment><USER9> Down syndrome IS a genetic disorder.

[https://en.wikipedia.org/wiki/Down_syndrome](https://en.wikipedia.org/wiki/Down_syndrome) [http://www.mayoclinic.org/diseases-conditions/down- syndrome/...](http://www.mayoclinic.org/diseases-conditions/down- syndrome/symptoms-causes/dxc-20337347)

<comment><USER10> I think he/she was shooting for 'inherited' instead of genetic.

</comment></comment></comment></comment><comment><USER11> When I was a child, I remember to regularly see other children with disabilities. Recently, I figured that I see almost no children with real mental/physical disabilities any more. Then it dawned upon me that they are probably all "killed" before birth when the doctors detect their problem. Can't tell exactly what I feel from a moral standpoint.

<comment><USER6> Or perhaps you are no longer in an environment where you see them. Children with disabilities still exist but do you frequent places where children in general go? I see them often at theme/play parks, swimming pools and at my childrens school. I don't see disabled children at the club's, bars I frequent or in my workplace but I don't see non disabled children either.

Further we are better at catering for people with these disabilities and their families. Some of the soft play areas I took my children to when they were very young were often designed with autistic and disabled children primarily in mind and we saw many families who would use the facilities with both disabled and non disabled children, the only real difference was the age of the children, disabled children tended to use the facilities for longer than non disabled children e.g. by 4 or 5 years old my children were less interested in sensory rooms whereas disabled (especially the most severely disabled) children would use these rooms at 10 or 11 years of age (possibly longer).

The test mentioned in the article is also available in the UK and the option to terminate a pregnancy when is child has a significant health issue or disability is also there.

<comment><USER11> I am a father myself in Frankfurt, Germany, where we have one of the highest relative number of children compared to the rest of the (rather childless) country.

<comment><USER6> As someone else mentioned, we are also getting better at treating disabilities in children through better healthcare and parental nutrition. Cerebral Palsy, for example, can be congenital where something happens to the child in the womb or acquired through brain injury as a child, both of these can be prevented (or likelihood reduced significantly) with better medical care, there is also genetic predisposition which cannot be prevented (currently) by modern medicine. So it doesnt mean all children with cerebral palsy (and this is a very apparent/visual disability) are being aborted, it may mean we are better at preventing it occurring in the first place.

Spina bifada is prevented by ensuring that the mother has enough folic acid. I have an uncle with Spina Bifada (he is in his late 60's now) but it is so easily preventable in first world nations (folic acid is readily available as a supplement) that it is likely due to better healthcare and not abortion.

There are so many other changes in healthcare attitudes such as knowing that drinking alcohol/smoking while pregnant is not healthy and can impact on the unborn child that we take for granted, but 50 years ago they prescribed guinness to expectant mothers because of its supposed high iron content.

TO assume it is all down to aborting unhealthy children is to deny the advances that we have made with modern healthcare.

</comment></comment></comment></comment><comment><USER5> No doubt in my mind, future generations will look back at this time of modern day eugenics in horror.

<comment><USER6> Aborting a child is a decision for the parents, some abortions occur because the child has health issues sometimes because the parents are not in a position to raise the child. It is not about eugenics but about the choice of the parent/parents who will be responsible for the child. So no future generations will not look back in horror because we allowed people to decide whether they were ready to raise a child, future generations are likely to look back and think "thankfully they allowed this to be an option" because we are currently over-populating a planet with finite resources.

</comment></comment><comment><USER12> If I wanted to read Snopes, I'd hang out on /r/politics.</comment>


Identity Crisis: Wives of Immigrant tech workers struggle to find purpose - <AUTHOR> http://www.seattletimes.com/pacific-nw-magazine/while-their-husbands-work-immigrant-wives-often-struggle-in-this-new-land/

<comment><USER2> The curse of the H4. An issue near and dear to my heart. It has been 10+ years since my wife worked. While we moved to a country with friendlier/easier immigration, she is finding it impossible to work in the tech field due to the 'experience and work gap'. She is forced to look at other avenues but she enjoys/enjoyed coding and tech in general. I know how I would feel if someone told me I could no longer be involved in tech.

If anyone has any ideas on overcoming the 'gap' in tech or other fields, let me know!</comment>


Huawei Receives Another Blow: No FB, Instagram, or WhatsApp Apps on Android - <AUTHOR> https://bgr.com/2019/06/07/usa-vs-huawei-no-facebook-instagram-and-whatsapp-apps-on-android/ <comment><USER2> Now, I'm not necessarily a big fan of Huawei or anything, but I have to admit, the idea of getting an Android phone guaranteed not to have any American bloatware installed on it, does sound tempting.

Yes, I'm kidding. I think. Mostly.

<comment><AUTHOR> I think a feature that allows you to not download specific apps from the store would be interesting.</comment></comment>


Ask HN: I found a problem in Google Groups - <AUTHOR> A Google Groups search for "Keith Rollin Mac System 7" don't find the Usenet posts I expect, and I know that Keith Rollin have a lot of Usenet posts about System 7 that should have returned results. I know there are a lot of Googlers on HN. <comment><USER2> I write a lot of posts on HN about technology, but if you search on hn.algolia.com for "Rahim Nathwani technology" (without the quotes) you won't see many results, as I don't use the word 'technology' in each comment.

Have you tried reducing the number of terms in your search? Or perhaps only search for "Keith Rollin" but within specific groups?</comment>


Ask HN: Where can I get list of valid US zip codes for free? - <AUTHOR> Hello,
Where can I get list of valid US zip codes for free?  I found this list but I do not think it is accurate.
https://gist.github.com/dryan/7486408
For example, 34001 and 04857 are listed a valid in the above link but USPS says they are invalid zip codes. If I do not find a ready made list, I will have to use USPS api and check each zip code individually. <comment><USER2> You might try some of the mass mailing utility vendors, zip code accuracy are key to getting good mail rates.

Edit: IIRC you can get a db and updates through USPS, its a subscription thing if you dig around you can find it.</comment>


Kinglake road crashes (2014) - <AUTHOR> http://the-way-to-the-centre.com/blog/2014/10/25/kinglake-road-crashes/ <comment><USER2> This analysis doesn't lead to any relavent conclusion at all. It just shows more vehicle accidents of any type than cycle accidents. It needs to at least be scaled by the ratio of bikes to other vehicles on that road. Without even any statistics, it could be meaningful if it also showed crashes elsewhere nearby too. Maybe severe bike accidents are actually more common just off that road than on it? We have no idea from this presentation.

Good on him for having a go though. This is what journalists should be doing to help inform people better than a policeman's bluster.

<comment> ryan-allen There would probably be more motorcycle deaths on that road than regular cars as well, as it's a popular spot for enthusiast riders. They have an accident counter sign on that exact road, that if I recall, said there were 200+ motorcycle accidents in the past 10 years (that's off the top of my head). That doesn't correlate with the data in the article either so it makes me wonder if it's correct.

<comment><USER3> 278 last I checked, but I don't think It's for that particular stretch of road.

</comment></comment></comment><comment> ryan-allen As someone who's driven that road dozens of times, I can tell you that it's one of the most dangerous I know.

It has very steep cliffs and it's very narrow. It's the only main road between the two small towns.

I can understand the locals annoyance when they're stuck behind a cyclist for the whole stretch and cannot safely get around them without risking their life or the life of others.

There are plenty of roads in the area that are safer, not to mention the abundance of off road riding trails for mountain bikers in the area.

Cyclists deaths is misinformation, but the sentiment from the locals is real and warranted: please choose another road, this is our only road and we got places to be.

<comment><USER4> Based on the maps and Street View imagery, I only see one potentially safer road nearby (C727/C725; C726 is just as narrow). Other roads in the area are either dead ends (a problem for obvious reasons) or unpaved (a problem for a large share of recreational riders on traditional road bikes).

<comment><USER5> The climb up from Whittlesea is impressively direct in places on a pushie. I've seen plenty of people do it, but it is a different kind of ride and I'm not going to try it any time soon ...

I like his GIS work, but there is no conceivable way that there were only 3 pushie accidents on that road in 7.5 years so sorry VicRoads but I doubt the dataset is accurate.

Funny to see my neighbourhood on HN :-).

</comment></comment></comment><comment><USER6> This was a big issue in the media in Melbourne a while back - media pundits calling for the road to be closed to bikes with lots of invective about how cyclists clearly didn't have the sense to take care of their own lives.

I love it when simply looking at the data shows the bigots for who they really are.

</comment><comment><USER7> In a car this road scares the crap out of me. Personally I'm not convinced that it should even allow two way traffic as the road is frequented by large 4x4s that almost always enter into the oncoming traffic lane.

Its narrow, has no run off and the hill climbing driver is faced with a close call with incoming traffic or a slip down a steep cliff with no barrier.

Sheer lunacy.

</comment><comment><USER3> It's an interesting road.

Theres a rumour amongst the motorcycle community that police turn a blind eye to that road so that tourists arn't turned off from visiting the area and spending the money.

Considering the relatively low speed limits there one would presume it would make a great speed trap but I've never seen a radar gun up there in the last 10 years or so.</comment>


The Success and Failure of Ninja - <AUTHOR> http://neugierig.org/software/blog/2020/05/ninja.html <comment><USER2> The OP is 100% right that ninja's biggest architectural insight is the "assembler" metaphor. I came to this same conclusion in [https://lwn.net/Articles/706404/](https://lwn.net/Articles/706404/)

Sad to hear the overall experience has been so negative for him. Ninja has certainly had a large impact! I can relate to the open-source burnout, even though I've experienced only a tiny tiny fraction of it compared to the success of Ninja.

Re. speed, I wonder how much of Ninja's speed over make is thanks to Ninja's "deps log" binary format. In my (fabricated) benchmarks, Make spent 98% of its time processing the compiler-generated ".d" files that are used to track dependencies on header files: [https://david.rothlis.net/ninja- benchmark/](https://david.rothlis.net/ninja-benchmark/)

<comment><USER3> Ninja originally used `.d` files as well (it was built while incrementally replacing a make-based system so it did many things like make). My recollection is that it was already faster than make without the deps log, but it is almost certainly project specific, and perhaps due to the ways we were abusing make (search for "clever hacks" on [http://neugierig.org/software/chromium/notes/2011/02/ninja.h...](http://neugierig.org/software/chromium/notes/2011/02/ninja.html) for some discussion of this.

With that said, the deps log processing of .d files was a huge win for us. One thing to observe is that it's the same code and amount of work either way, but if you load them at startup they are processed during the critical path, while the deps log parsing happens during the build so their cost is amortized.

</comment></comment><comment><USER4> I actually submitted a pull request to Ninja adding a daemon mode, knowing that _not_ being a daemon was an intentional choice in the original design. The optimal design can change as a project matures. I think it makes sense to pay the complexity cost for the startup time optimization now that ninja is so widely used.

I'm still using the crash-only principle as much as possible; the daemon simply exits if build files or arguments change, rather than attempting to update its state. Although cross-platform IPC is complex, once that's abstracted away the changes to ninja itself are small and non-invasive. I think it's less complex than other proposals to speed up ninja startup, like a new binary input format.

Anyway, if anyone is working on a very large project and wishes ninja started faster, try this PR: [https://github.com/ninja- build/ninja/pull/1438](https://github.com/ninja-build/ninja/pull/1438)

<comment><USER5> Interesting, did you take inspiration from gradle daemon?

</comment></comment><comment><USER6> the whole post is interesting but if you're short on time jump to the end "Open Source"

Then try to have a better attitude when leaving issues on github or whatever. Be thankful. Take responsibility if you want a change to make the change yourself. Offer it as a PR but don't expect it to be pulled. Others can grab the PR if they want it even if the maintainer doesn't feel it's a fit. If you have a suggestion offer it as a question like (would it be faster if this did X instead of Y? or would it be useful if feature A existed?)

I'm not good at this myself but I'm slowly getting better over the years.

Also also, I wish there was a better way to express thanks. In the article it was mentioned that thank yous are rare where as angry demands are common. But, there is no easy way to express thanks. Like opening an issue and saying "Thank you" is frowned on. Even leaving a comment under a tech blog post that just says "thanks" is considered by some to be unwanted noise. I don't have a solution here. Maybe you have some suggestions?

Also, if you feel it's appropriate, sponsor your favorite projects. I've wondered if there is a good way to promote sponsorship. I don't want to brag that I'm donating each month to various projects but I do want more people to consider sponsoring. Especially user oriented projects like say Blender, software that 100k to 1000k people are using which would normally probably cost $1500k-$3000k a year, maybe a coffee a month would be worth if you're using it often? Same for things like Kodi? Or VLC? both of which I've got 1000s of hours of usage out of.

<comment><USER7> I've registered the domain www.osscoc.com and I keep planning to write something but never get the inspiration. I want it to be a reminder that people can easily link to, e.g. when someone is being belligerent, the CoC can remind them that everyone is on the same side, and lay out some scenarios like "my PR didn't get approved" and what to remember.

Also, the best thanks are PRs, I think.

</comment></comment><comment><USER8> Ninja is great ! In particular the author's point about iteration time rings really true, if things don't happen in a span pf 2 seconds attention span is lost.

I've been developping a small cmake frontend which uses it by default as well as generally optimizes for build speed - [https://github.com/jcelerier/cninja](https://github.com/jcelerier/cninja)

</comment><comment><USER9> This article is almost a course in how to make good utility software of any kind.

Being short and not very specific, it probably takes close reading to get much useful from it, but not a word is wasted, and nothing in it will lead one astray.

</comment><comment><USER10> > I strongly believe that iteration time has a huge impact on programmer > satisfaction, and Ninja is used exactly in the edit-compile loop where the > difference of 1 second and 4 seconds is critical. I think I am personally > more latency-sensitive than the average programmer, but I also believe that > programmers feel latency and it affects their mood even if they don't notice > it. (Google has recently done some research in this area that kinda > confirmed my belief, here's hoping they'll publish it publicly!)

This is something to emphasize.

I often feel that my productivity is strongly linked to the latency of actions I do. I like to play around a lot if the latency is low. Once it becomes higher, I generally don't do that, and in principle I often additionally think about how to work around stuff, maybe write another complexity layer on top, maybe even do less testing, etc (many of these things just unconsciously). So it does not only adds the latency time, but really makes the whole development cycle slower, and less optimal. Also I tend to get distracted more easily. When I know that the next action (compiling, startup time, whatever) takes 30-60 seconds, I will definitely not just wait, but do something in the meanwhile. But also you cannot really do something productive in that time. So I end up checking mails or HN or so.

Also, since I started with my PhD, doing research on machine learning, I discovered a whole new scale of this problem, which I had not experienced before. Now the latency time has usually increased from a couple of seconds to a day, or a week. This drastically changes of how you work. To stay productive, you have to parallelize your work. When you are trying out things, you will try out many variations in parallel. Also you will look at the intermediate results, and maybe already draw conclusions from that.

If there is a chance to refactor your current pipeline to reduce that iteration loop time, or the wait-time (which might be the startup time of some tool, or whatever), I think it's very worth to do it.

<comment><USER11> We have come full circle back to the days of batch processing and punched cards.

<comment><USER12> Reminds me of this comment:

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

[https://archive.fo/FEtN0](https://archive.fo/FEtN0)

Oracle Database 12.2.

It is close to 25 million lines of C code.

What an unimaginable horror! You can't change a single line of code in the product without breaking 1000s of existing tests. Generations of programmers have worked on that code under difficult deadlines and filled the code with all kinds of crap.

Very complex pieces of logic, memory management, context switching, etc. are all held together with thousands of flags. The whole code is ridden with mysterious macros that one cannot decipher without picking a notebook and expanding relevant pats of the macros by hand. It can take a day to two days to really understand what a macro does.

Sometimes one needs to understand the values and the effects of 20 different flag to predict how the code would behave in different situations. Sometimes 100s too! I am not exaggerating.

The only reason why this product is still surviving and still works is due to literally millions of tests!

Here is how the life of an Oracle Database developer is:

\- Start working on a new bug.

\- Spend two weeks trying to understand the 20 different flags that interact in mysterious ways to cause this bag.

\- Add one more flag to handle the new special scenario. Add a few more lines of code that checks this flag and works around the problematic situation and avoids the bug.

\- Submit the changes to a test farm consisting of about 100 to 200 servers that would compile the code, build a new Oracle DB, and run the millions of tests in a distributed fashion.

\- Go home. Come the next day and work on something else. The tests can take 20 hours to 30 hours to complete.

\- Go home. Come the next day and check your farm test results. On a good day, there would be about 100 failing tests. On a bad day, there would be about 1000 failing tests. Pick some of these tests randomly and try to understand what went wrong with your assumptions. Maybe there are some 10 more flags to consider to truly understand the nature of the bug.

\- Add a few more flags in an attempt to fix the issue. Submit the changes again for testing. Wait another 20 to 30 hours.

\- Rinse and repeat for another two weeks until you get the mysterious incantation of the combination of flags right.

\- Finally one fine day you would succeed with 0 tests failing.

\- Add a hundred more tests for your new change to ensure that the next developer who has the misfortune of touching this new piece of code never ends up breaking your fix.

\- Submit the work for one final round of testing. Then submit it for review. The review itself may take another 2 weeks to 2 months. So now move on to the next bug to work on.

\- After 2 weeks to 2 months, when everything is complete, the code would be finally merged into the main branch.

The above is a non-exaggerated description of the life of a programmer in Oracle fixing a bug. Now imagine what horror it is going to be to develop a new feature. It takes 6 months to a year (sometimes two years!) to develop a single small feature (say something like adding a new mode of authentication like support for AD authentication).

The fact that this product even works is nothing short of a miracle!

I don't work for Oracle anymore. Will never work for Oracle again!

</comment></comment></comment><comment><USER13> Funny to hear the author of Ninja say that he's never used CMake...

And they shouldn't have been surprised at the number of Ninja users that were on Windows, Ninja is so much faster than the alternatives if you are using CMake on windows.

</comment><comment><USER14> I have found the combination of CMake, Ninja, and ccache to be excellent.

<comment><USER9> Ninja and ccache actually made SCons almost tolerable.

</comment></comment><comment><USER15> > Related work

> I mentioned that I stumbled through Ninja's design. I regret not spending > more time researching before building, ... Since then I have come to > appreciate how important it is to actually understand the design space when > building a thing. I now find myself noticing how rare it is for programmers > to discuss related work and it now drives me mad.

FWIW, I think this is a key take-away.

</comment><comment><USER16> OT but I recently had a rethink about make, and wrote an experimental replacement and did a talk about it: [https://rwmj.wordpress.com/2020/01/14/goals-an- experimental-...](https://rwmj.wordpress.com/2020/01/14/goals-an-experimental- new-tool-which-generalizes-make/)

<comment><USER2> Thanks for the link -- it was really interesting.

For other HN readers: The parent works at RedHat (on distro-wide build/packaging? He talks about building Fedora packages) and there are some useful ideas in there.

My own notes & thoughts having just watched the video:

## "Tactic" allows a target that aren't files ##

\- For example a target #url("[http://xyz/abc"](http://xyz/abc")): to "build" it, scp the dependency to the server.

[Edit: I had to replace * with # in "* url" above because of HN formatting.]

How does it check if the file at the url is out of date? Would be terribly slow if it had to fetch it each time.

\- For example #koji-built("package-name"): used to rebuild fedora packages in the right dependency order, if needed, using a remote build service.

I suppose you can implement this in make/ninja by creating dummy marker files like ".url.http_xyz_abc.built" as your target, but it's a hassle.

## Multiple parameters ##

\- make rules support a single parameter, i.e. the "%" in "%.o: %.c"

\- his tool supports arbitrary parameters:

        goal compile (name, debug) =
        "%name.%debug.o" : "%name.c" {
            if [ % debug = d ]; then f=-DDEBUG=1; fi
            ...
        }

I've been using a python script to generate ninja files, so I achieve the same by using normal Python functions with arguments; plus ninja's built-in support for rebuilding the target if the recipe has changed.

## Shell problems in make ##

1\. filenames with spaces - his tool supports it by forcing filenames to be quoted. "some_name" is syntactic sugar for #file("some_name") (see "tactics" above).

2\. make (by default) uses a separate shell per recipe line.

3\. dollar interpreted by make so have to use $$var - his tool solves this by using % as the escape character.

I think ninja solves the first 2 automatically. I solve the 3rd one by doing the escaping ($ -> $$) in the Python script that generates my ninja files.

## Named goals ##

If you have a "goal" (rule) called "compile" then you can use the goal invocation as a dependency. For example these 2 are equivalent:

        goal link = "prog": "foo.o"

and

        goal link = "prog": compile("foo")

THIS IS A BIG DEAL. It means you don't have to come up with artificial target names (filenames) for intermediate build steps. In my own Python+ninja builds, each Python function returns the target, which you can use as input to other functions, and this has turned out to be super useful. For example (Python code):

        def build_package(name, build_root_yaml):
            build_root = build_container(name, build_root_yaml)
            src = tarball_to_ostree(git_archive(repo, sha, prefix="src/"))
            return run_command("make -C /src install DESTDIR=/dest",
                               ostree_combine([build_root, src]),
                               chroot=True,
                               out_subdir="/dest")

This snippet creates a filesystem image (build_root), creates a source tarball using "git archive", unpacks that tarball into the build root, then and chroots into the build root to run a build command, capturing the tree created in "/dest" as a new build artifact. The return value is target representing this build artifact -- you can pass it into other functions. It's still a filename, but it can be generated automatically, for example as a hash of the inputs.

Note that running this python code doesn't actually do any of this building; it just writes out a ninja file that will do it. The return value (from the python function) is the target name. Each of "build_container", "tarball_to_ostree", "git_archive", "run_command", and "ostree_combine" are Python functions that behave in a similar way (writing out ninja rules and returning the target).

(I need to do a proper write-up of how we use Python+ninja+ostree in our build system. I hope the above made some sense at least.)

## Computer sciency things ##

He talks about how his named goals are like functions, that can be called by name or by pattern matching. I need to think about it a bit more to really understand the implications.

\---

Thanks again for the talk. I hope this doesn't come across as "but you can already do this in ninja!". I just find it interesting to have new ways & words to think about various build system features/capatibilies, and to compare how different build tools tackle it. (In this vein I recommend the "build systems a la carte" talk/paper mentioned in the OP.)

</comment></comment><comment><USER17> I've never worked with it myself, but Textmate ([https://github.com/textmate/textmate](https://github.com/textmate/textmate)) has used ninja for years. It was the only project I knew that used it, but was always interested in that decision.

</comment><comment><USER18> "stat 30k files in 10s of milliseconds" \- I'm not sure how is this possible, as GetFileAttributesEx() is roughly 65k/s - e.g. 64-65k ops (my computer, my drive, etc.) - all cached. It's possible that Ninja maybe using something else (directory lookup?)

<comment><USER19> Have you measured the speed of FindFirstFile, if the goal is only to have many file times, maybe that could be faster for a hot cache, compared to GetFileAttributesEx? (For cold cache, everything is slow anyway.)

In specific case of ninja build tool, it can be that they simply don't achieve the same speed on Linux and Windows, as JNRowe writes. It is known that NTFS and Windows are traditionally both visibly slower with many operations on many files, compared to Linux.

<comment><USER3> The first attempt at Windows tried to do some memory-resident file watching thing that I eventually rejected as too complex. We circled a few more times on different approaches and the final Windows approach is pretty complex.

Look at the WIN32-related ifdefs in [https://github.com/ninja- build/ninja/blob/master/src/disk_in...](https://github.com/ninja- build/ninja/blob/master/src/disk_interface.cc) (I would link to something specifically but it's not that long of a file.)

<comment><USER18> I wonder how that works, and haven't it run into problems? (E.g. relying on FindFirstFile for info). Maybe it's all right when comes to compiling... just this [https://devblogs.microsoft.com/oldnewthing/20111226-00/?p=88...](https://devblogs.microsoft.com/oldnewthing/20111226-00/?p=8813)

<comment><USER19> > Maybe it's all right when comes to compiling

I would not expect problems, once there are no bugs in the code. As far as I understand, a build tool doesn't need file sizes, only the timestamps.

The code appears to do sensible things, e.g. it notes "FindExInfoBasic is 30% faster than FindExInfoStandard" and uses the former when possible.

Looking "from 20000 ft", the only to me unexpected thing I see is handling ".." there, somehow I expected that code which uses that wouldn't even need the timestamp of "..".

</comment></comment></comment></comment></comment><comment><USER20> particularly responding to the authors story about all the disappointment that open source involves.

open source maintainers this is a public service announcement. You're killing yourselves by being too nice. Don't be afraid to embrace your inner despot because really that's what you are when you are maintainer over a project. you need to be sort of a rougher, less experienced than, less polished version of Linus's or Guido's benevolent dictator for life. if you don't like something just shut it down if you don't like an issue just close it if you don't like a PR just close it if you don't like a request just deny it.

if this is starting to rub off on you in a good way and you're liking what I'm saying well then just double down and do it. embrace your inner despot. it's okay. if you're still sitting on the fence let me bring you to the good side with a little bit of advice, if you need to have it sold you like this. That's fine. it's not about you. keeping you in the best mental health possible, taking care of you is really about taking care of the project and all the people involved in it. you need to come first so that the project survives and can thrive. so uncomfortable as it may be to embrace your inner despot that's the best way to secure your own mental health.

clear boundaries. unhesitating expression of what you want to do. no apologies.

they want to fork it? not your problem. stick a fork in it.

you don't like the way someone's behaving? block them.

you can choose to make this a great experience for you I believe. you just need the discipline to stick to that path. at every branch in the road choose this: what you want to do and only what you want to do. no compromises. That's the discipline you need to practice. if a project that used to be fun and give you a whole set of positive emotions, opens up, that should really only increase the positivity for you once you share it with others. I believe if you picked the right path by embracing your inner despot you can do that. you end up with a lot of people expressing their negative emotions, but you know what? who cares. their feelings are not your responsibility. it's not your problem.

be a despot. you'll like it. and it might be the only chance you have to do that. and I might be the way to save your mental health and your project.

and maybe just maybe if you be a despot the community will change. people who support you will gather around you and protect you once they see that strength which is inspiring. this drink that you stick to your principles and your vision. and maybe just maybe if you're lucky there's no guarantee but maybe the community will start protecting you. and if they do well just don't get soft. keep being a despot because that's what you need to do that's your job. you created this thing it's your responsibility to keep it on the best possible that involves keeping yourself on the best path possible. you already know how to do that you just have to choose that at every little decision you have. if you're not ready to make a decision right now just aren't. delay it until you feel ready to do it.

good luck. end of message.

<comment><USER21> If I were to be a despot, I wouldn't feel better, I would feel worse.

To quote the article, "I wanted to repay their effort with a thorough explanation about why I was turning them down, and doing that was itself exhausting" \-- the author feels as if they need to do these things, and at the same time doing so is draining. Simply replying with "no, I'm not taking this" and closing it very well might make the author feel even worse because it's not like that contributor meant anything ill, it's not like they don't deserve an explanation... it's simply an imbalance that there's an order of magnitude more contributors than maintainers.

If the problems were clearly abusive people that could be blocked, the solution would be easy. Unfortunately, the feeling of "people care about this project, and I owe them respect, even if it's draining on me" isn't something nearly so easily solved.

If you want to program in the style you speak of, you wouldn't even publish the code in the first place. If the point of the code is as a hedonistic selfish art-form, it never needs to leave your computer. You can be a tyrant over your own code. However, if you decide you wish others to see your code, use it, or learn from it... well, you clearly have a desire that others will use it, and now you're stuck between feeling as if you need to do X in pursuit of that, and burning out.

Frankly, I'd rather have shared my code, and learnt the hell that results, than to never have shared my code at all.

<comment><USER20> Disagree. This is too compromising. You'll suffer.

Doesn't make sense. You say you'd feel worse being a despot, but say you'd have "learnt the hell" that results by compromising. Worse than hell?

Boundaries are not just for people you want block. It's for everybody. It's not about them. It's about what you want. It's what's good for you.

You choose your own experience pal, but the way I see it is, if you're feeling these things the author describes...that's _not_ good for you.

I'm not trying to convince you. You've got to choose your own way. To me it's a clear choice. What's good for you needs to trump what's good for others, otherwise you'll hurt yourself. So, boundaries.

I understand if it's the first time you've encountered the concept. Or seen it so boldly applied. But...I think it's warranted. The magnitude of suffering of these OSS guys is staggering. And to my view, they do it to themselves by not saying no. That's all.

I am grateful you help me explore it more...but I found that everything you raised I'd already thought of, or was already covered by the approach I propose to it. Good chance to reinforce the idea tho.

<comment><USER22> Horses for courses. Some people will respond better in one environment, others won't. There's no One True Way.

<comment><USER20> Not really tho. In this case, there really is a One True Way, here! If you're doing more than you want to, and what you don't want to, for other people, you're not gonna enjoy it. Going beyond your boundaries, and violating your own comfort and principles, it's not gonna be good for you. Should be obvious.

If people are asking you to do things, and you don't want to, just do what you want. I know it's hard to resist sometimes. But that's sort of why the discipline is essential.

Of course, there's also..."push out of your comfort zone" and "stretch to your limit" and "live at your edge"... but that's a whole different thing. Those things should be taken in small doses, for you for excitement and enjoyment, like extreme training or skydiving or whatever, at totally consensual choice by yourself. But that's not what we're talking about.

Sure some people choose self-punishment. But that doesn't mean it's good for them. People choose a lot of stuff, for long times, that aren't necessarily good for them. They complain about it. When they could have just said no. Humans.

<comment><USER22> The behaviour described is entirely selfish. There's plenty of evidence that the opposite, selfless behaviour, is highly beneficial and can actually be enjoyable.

If you never compromise for the sake of others you'll find yourself lonely and disliked.

There's no correct or incorrect here, no black and white. It's a big spectrum of grey. There is a balance, and it's hard to find.</comment></comment></comment></comment></comment></comment>


Ask HN: What's your experience with white labeled products and service? - <AUTHOR>

I'm trying to understand the value of white labeling from both the customer and business sides.
On the customer side, what was the advantage for using a white labeled solution? Which ones have you used?
On the business side, what did you notice about offering a white labeled solution? (Conversion, pricing, offering type, stickiness) <comment><USER2> I've noticed most large scale businesses want to white label our product. It's an easy in for them from a bureaucratic stand point. In return, as the owner of a product, it dilutes our branding efforts. I'd say go all in one way or the other. Both paths make for a different business model. White labeling sets you up for big accounts with heavy pricing and you'll be doing sales. Not white labeling sets up for mass marketing with volume scaled pricing, brand and reputation matter more here.

</comment><comment><USER3> I think you need to get more detailed in your ask. Your answers are probably going to be significantly different if you're talking about white labeling a physical good (like Coffee or something) vs. software.</comment>


Tweetshot – Spice up your tweets with an image - X-combinator http://tweetshot.co/

<comment> X-combinator I finally can tweet photos without downloading them and that means less chance of ending up with virus.</comment>


Performance comparison of Go, C++, and Java for biological sequencing tool - <AUTHOR> https://doi.org/10.1101/558056 <comment><AUTHOR> See reddit discussion

[https://www.reddit.com/r/programming/comments/avsfc6/perform...](https://www.reddit.com/r/programming/comments/avsfc6/performance_comparison_of_go_c_and_java_for/ehhrwrz/)</comment>


GBF Ventures: Introducing: The GBF Germ Funding Program - <AUTHOR> http://gbfventures.blogspot.com/2008/10/introducing-gbf-germ-funding-program.html <comment><USER2> I can't tell whether they encourage drop out from MIT, Harvard, and Stanford : Graduate: +10/ dropout:+25.

If not, it will cost you to have a demo (-3)

If yes, they also encourage misspelling of company name (+2) and the less equity your willing to give the higher you will score.

Funny ...</comment>


Advanced Backbone/Marionette Applications in Play 2.0 - <AUTHOR> http://frank.lovecch.io/tech/playback.html

<comment><AUTHOR> I apologize if you're using IE to view the site :) Also, Firefox apparently has issues with the column-count CSS property, so the code renders funny. Webkit FTW.</comment>


For Sale: Used Social Voting Site, Asking Price $300 Million, Goes By The Name Of Digg - <AUTHOR> http://www.techcrunch.com/2007/12/17/for-sale-used-social-voting-site-asking-price-300-million-goes-by-the-name-of-digg/ <comment><USER2> That seems like a huge price to pay for digg - especially since I assume the way to make money off social news sites is with ads, and the type of community digg attracts is the type that blocks/ignores ads. Maybe I'm way overestimating how many people use that, or maybe that's why they haven't been bought yet?

<comment><USER3> _"... That seems like a huge price to pay for digg ..."_

Timing is everything. Given the current situ, digg may end up being a web2 wallflower as the capital to make such big purchases dry up.

<comment><USER2> Exactly - given that any day some other site could become the top social news site, it seems weird they would be trying to get such a large/unlikely amount.

</comment></comment></comment><comment><USER4> Digg has so much room to expand, I'm not sure why they haven't done so. For instance, users should be able to create 'sub-digg' pages for specific subjects that they can then build a community around, or even embed into their own sites, instead of using pligg, etc. By allowing niche communities to develop, quality of news will increase, and digg can become a pretty reputable and valuable source of news. Also, by catering to niches, users will see a greater value in using and contributing to digg. I still see digg as a novelty site which serves as a mere gateway for internet jokes and the typical anti- cop/george bush/microsoft/etc. shit.

<comment><USER5> Interesting ideas, but once you start adding tons and tons of features that look good on paper, the site starts to lose its community focus and you alienate some people.

By nichifying digg, you'd convert one huge community in a ton of little ones.

Anyway, you can already kind of do this, by selecting specific categories and viewing only stories sorted there.

<comment><USER4> Well, I'd rather be part of a bunch of smaller communities who share the same interests as I do, tend to have more in depth knowledge than the whole community about said subjects, and who care about the quality of submissions, like here on news.yc. I find much more value in that. And I think news.yc is evidence enough that social news sites run by niche communities can thrive and prosper.

<comment><USER5> Yeah, but from the perspective of converting digg into a bunch of news.yc communities surrounding other niches, I highly doubt that could ever happen. And any attempt to do that would just ruin the digg community.

</comment></comment></comment></comment><comment><USER6> Goes to show why you shouldn't take 11 million in funding when you're a social news site. How much do you think Kevin's going to take home if they sell for $10-20 million?

Maybe enough for a new pair of cargo pants and a latte.

</comment><comment><USER7> The price isn't the only thing that's high.

     Bill: Dude, are we better than Reddit?
      Ted: Like, yeah, man, totally.
     Bill: Dude, like how much better?
      Ted: Like a hundred times, bro!
     Bill: Then we should like sell it for... like... a hundred times as much!
      Ted: Whoah, do you have any idea how much weed that would buy?
     [They look at each other]

     Wyld Stallyns!

<comment><USER8> Reddit got 18 million.

<comment><USER9> I heard they got around 200m...

<comment><USER10> No way, dude...

If they got THAT much, they'd probably just sit around all day and spend all their time on reddit... ;-)

(or news.yc...)</comment></comment></comment></comment>


Why Is the Amazon Rain Forest Disappearing? - <AUTHOR> https://time.com/amazon-rainforest-disappearing/ <comment><USER2> If the world cares about it then the world should pay for it. Not sanctions, nor sanctimony. Buy the land.

It would be expensive, but that just reflects the value to the people you're buying it from. And it's an actual, concrete action that can be taken, instead of the vague global warming solutions that just tweak domestic parameters and send tax money to the black hole of the state budget.

<comment><USER3> This argument is entirely pointless. You're proposing to purchase land - crucial natural resource - from a sovereign nation(s). I can't begin to imagine what a fair price would be, if there is such a thing. 300 trillion dollars? Who would pay? The rich nation taxpayers? Would the population of these benefactors countries be happy with increased taxation for no direct impact in their lives? Private investors? What would they recoup their investment from,, "responsible" exploration of the land they are ostensibly saving? Not to mention the political and cultural implications of attempting to buy a resource from a nation, after the purchasers have used up their own for economical and geopolitical gain. I ask for forgiveness if the tone of this message is overly cynical, but we are past the point of thought exercises over the fate of this planet.

If a solution to preserve the Amazon is to be found, that will involve helping Brazil rise above the cesspool of corruption that its been steeped in for the past decades. Assistance with education and economic incentives for alternatives to heavy reliance on beef and grain exports. Heavy tariffs or outright ban of these products on the international markets. Punish the large agricultural and cattle business that are decimating the forest for gain, give the people alternatives for subsistence. Until that happens, little will change.

<comment><USER4> It's not a pointless argument if voters agree. Nations don't necessarily have to buy the land, but regular payments to Brazil to give them a reason to maintain the rain forest as opposed to burning it is a reasonable proposal. It's better than just complaining about it.

<comment><USER5> No, it's pointless. Sinking more money into the black hole that is Brazil's corrupt government? What's next? How about regular payments to US and Russia so they have a reason to maintain their nuclear weapons instead of just using them?

<comment><USER4> I think we did do that for a time when Russia was unstable, post USSR, to prevent terrorists from getting their hands on nuclear weapons.

Also we can keep Brazil honest via satellite imaging. More burning? No more money

</comment></comment></comment></comment></comment><comment><USER6> Unless we as a society return to a simpler lifestyle of living, I see this as an unsolvable problem. For example, everyone in the US is trumpeting climate change and what not. And yet just walk into any starbucks and any supermarket and restaurant - none of that stuff is really recyclable. People generate tons of trash by using home delivery packages via amazon and non-recyclable food containers. Cars everywhere and completely unmaintained public transport. People really aren't willing to make a change but will go on about paris agreement and hate on trump. Their actions and life style say otherwise. What is then wrong with people in other countries wanting a similar life style?

<comment><USER7> >Unless we as a society return to a simpler lifestyle of living, I see this as an unsolvable problem.

There's no reason to presume that it isn't possible to retain our current standard of living while also solving the problem through technological innovation - we've arguably had the solution for decades in the form of nuclear, and we're inching closer every day with developments in non-nuclear renewables and outside of the energy space with innovation in farming (outdoor and indoor/vertical, GMO) and material design.

Despite the doom and gloom, talk along the lines of 12 years before irreversible runaway into catastrophe is really a worst case estimate. Chances are we will have plenty of time to develop technology to slow climate change and adapt to its effects in the coming decades, particularly given that it is a rising concern among citizens the world over.

Honestly, given how much of our infrastructure is dependent on fossil fuels and environmentally unfriendly materials, it simply isn't _practical_ to make the kind of radical transition you're advocating for - our entire food chain, for example relies on modern plastics and ICEs for delivery/storage. The waste you describe from e.g. Starbucks and packaging is probably a small percentage of the waste that our modern civilization is structured upon, even if you convinced everyone to drastically lower their standard of living overnight. Balancing risk with cost, this is a transition that cannot happen overnight anyway.

<comment><USER6> Agree with you in general.

> it simply isn't practical to make the kind of radical transition you're > advocating for

The above line is exactly my point. We think changing ourselves is impractical. But we want the rest of the world to abide by our views of "green" and "sustainable living".

</comment></comment></comment><comment><USER8> If you look at the State of Amazonas, Brazil on Google maps satellite view, it appears to be largely untouched. Rondonia and Matto Grosso are the states most affected by deforestation. Other large parts of the Amazon rain forest in other states of Brazil and in Peru, Colombia and Venezuela are also intact. Don't take Time's word for it - go look yourself.

<comment><USER9> The claim in the article is that the deforestation is approaching 20% of the original forest and that, once that number reaches 20-25%, the water cycle will be disrupted in a way that will transform the majority of the remaining forest into savanna.

This is not a claim that I can confirm or refute using google maps.

<comment><USER10> Deforestation of 20-25% or more is not uncommon at smaller scales and I know of no such example where such an area transformed to savanna.

<comment><USER11> Do you know of any examples where the forest that was de-forested 25% was the Amazon or another tropical rainforest? Obviously if a pine barren is deforested 25% it won't turn in to savannah.

</comment></comment></comment></comment><comment><USER12> I find it hard to take news outlets seriously on this subject when they keep the kid gloves on concerning the current president of Brazil. The reticence to call his "victory" what it really was: a coup. The intercept [0] laid out the fact that his opponent, who was slated to win in a landslide, was jailed and convicted by a judge who was working in concert with the prosecutor to ensure a conviction. If the aim was to do real journalism and speak truth to power, then outlets would call if like it is and convey zero legitimacy to the current administration.

[0]: [https://theintercept.com/series/secret-brazil- archive/](https://theintercept.com/series/secret-brazil-archive/)

<comment><USER13> It was not a coup.

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

<comment><USER14> Judge colludes with prossecution

Judge sends political adversary to prison

Judge now minister in current administration, arguably in power due to his imprisoning the aforementioned political adversary

<comment><USER15> That Judge was operating at the lowest tier of the Judiciary when he sentenced Lula.

The sentence was appealed many times all the way up to the Supreme Court and along the way, other Judges not only agreed that Lula is a criminal but also increased his initial sentence.

<comment><USER14> Questioning the sentence and the judges and prossecution involved is totally NOT the same as defending the prossecuted. I don't get how many people jump to this conclusion.

It is virtually impossible to defend Lula. There is enough proof out there to back this.

No. What I am questioning the the timeline of events, that fit too conveniently for the current president and the judge, that is now a minister.

I hope this clarifies your confusion.

<comment><USER15> Or perhaps the president appointed the judge as Minister of Justice in recognition for putting in jail many of the most powerful politics and businessman in Brazil.

Makes perfect sense, that judge is a national hero.

</comment></comment></comment></comment></comment></comment><comment><USER16> We need an economic framework that makes it more profitable to keep the forest intact than to burn it down and plant soybeans.

It's hypocritical to point the finger at Brazil for exploiting their natural resources when developed countries got rich by doing the same. If we want to prioritize biodiversity and oxygen generation then we should pay the Amazonian countries for it.

</comment><comment><USER17> Really tangential...but major props to the time mag web dev team for making an unobtrusive reading experience that has graphics and animations that are helpful for driving home key points of the story.

</comment><comment><USER18> The US did the same thing with a lot of our natural resources in the past century. it does seem somewhat hypocritical to not let other countries do what we have previously done. What we did was wrong but it also allowed the US to grow to what it is today.

<comment><USER19> Two wrongs don't make a right. No, it is not owed due to the rising nations of the world to let them continue to devastate the climate in the way first world powers have.

And continue to.

Its easier to point fingers than take responsibility of course. Hence why very little actually gets done to combat climate change. Brazil burns the Amazon, Americans throw out of a ton of plastic a year each, and humanity cooks itself complicit in its own destruction.

</comment></comment><comment><USER20> Wait a second, there was just a report put out by NASA that stated the world is become more green, specifically citing the Amazon Rain Forest as an area that's more green than it was 20 years ago.

Something seems completely wrong here.

[https://www.forbes.com/sites/trevornace/2019/02/28/nasa- says...](https://www.forbes.com/sites/trevornace/2019/02/28/nasa-says-earth- is-greener-today-than-20-years-ago-thanks-to-china-india/)

<comment><USER21> Also a report from NASA that the fires in the Amazon were only slightly higher than normal - less than the levels seen in 2010.

[https://earthobservatory.nasa.gov/images/145498/uptick-in- am...](https://earthobservatory.nasa.gov/images/145498/uptick-in-amazon-fire- activity-in-2019)

<comment><USER20> Right, something seems very off with this journalism here.

</comment></comment></comment><comment><USER22> Yes the Amazon rainforrest is nearly gone and it should have been protected better but also all other countries forrests should have been protected, for example where there were massive forrests across europe that were destroyed centuries ago for building things like towns, cathedrals and castles and for firewood.. these should be at least in some significant part re-grown.

<comment><USER23> "Two decades after its fall, the border between East and West Germany would become Europe's biggest nature reserve: an 858-mile "ecological treasure trove", no longer the Iron Curtain but the Green Belt, and home to more than 600 rare and endangered species of birds, mammals, plants and insects."

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

<comment><USER8> The area around Chernobyl is another example. If you get rid of people, the ecosystem recovers pretty rapidly.

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

<comment><USER24> And the Korean DMZ: [https://www.theguardian.com/environment/2012/apr/13/wildlife...](https://www.theguardian.com/environment/2012/apr/13/wildlife- thriving-korean-demilitarised-zone)

</comment></comment></comment></comment><comment><USER25> All for meat farming</comment>


Ask HN: What software do you actually pay for? - <AUTHOR> Hey HN.
I'm curious what apps / software you pay for.
This community is interesting and we all use a bunch of Open Source and free software but I'm curious to see what apps you actually pay for. <comment><AUTHOR> The reason I ask is that we're in the monetization phase of my app and it's also Open Source:

[https://getpolarized.io/](https://getpolarized.io/)

It's basically a PDF and document management repository. It's kind of like Mendeley/Zotero meets Kindle+Github.

I'm kicking around some ideas including just make it flat out free and just focusing on growth to charging for some premium features like cloud sync.

One of the things we're struggling with is many of our users are from the HN community and they aren't really open to using something like cloud sync as they don't trust cloud.

<comment><USER3> For what it's worth:

I pay for software when it has value to me, and your product does have value to me. I haven't used it much yet (see below), but I really like what it can offer.

I have paid for:

iOS: GoodReader, Working Copy, OmniFocus, Anki, and Scrivener (these are also among my more frequently used apps). I've paid for some games over the years but mostly board game ports to iPad (because carrying around boxes of games is a PITA). The rest of the apps on my iPhone (iPad isn't handy) are communication apps, media consumption apps (that I may pay a subscription for), or apps for a specific business (like a bank or airline). My iPad will be similar except it'll have the games.

macOS: I've paid for HeroLab, Scrivener, OmniFocus, YNAB4 (of the apps still on my laptop). I have also, in the past, paid for Parallels and some other things but they're not installed and I haven't missed them. I have also bought video games, but none presently installed. The rest of what I use is generally open source. I have Anki and would pay for it if the author sold it.

I would get _more_ value from Polar Bookshelf if you had an iOS offering as that is where I do the bulk of my PDF reading (or Android, I do have a Kindle Fire I use for reading though less frequently). If it were available there, I'd happily pay for it. But I don't need cloud sync. I have sufficient cloud storage already and plenty of room to host the files I'd add to Polar (actually, most of what I'd add I actually have but haven't read in my Dropbox account already).

</comment></comment><comment><USER4> It's been more than a decade since I paid for any software, Mathlab for Linux. It was a requirement for a class I was taking - Ironically, I never did have to use it. Octave proved more than adequate. Before that... well... I think the only other software I ever paid for was a shareware game (Commander Keen) when I was a kid in the early 90's. Generally I'm always surprised when I hear a reference to commercial software thinking "That's still a thing?!"

<comment><USER5> You find paying for software to be unusual? How can that be?

<comment><USER4> Having not run DOS/Windows since 1995 I haven't needed to. I can't imagine dealing with an OS without the kind of enormous and comprehensive software repository of Debian or pretty much any distro.

<comment><USER5> Right, but there's a massive global economy of trillions dollars of software being bought every year. The people that run this site invest in companies that sell software. I just can't comprehend how you wonder if buying software "is still a thing."

</comment></comment></comment></comment><comment><USER6> Desktop one off purchases: Clients for MySQL and SQLite (prettier and easier to use than free alternatives). Snagit for screenshots

Desktop subscription based: Devexpress Winforms and ASP.net component suite (best Windows component suite on the market - leaves free alternatives in the dust). Add in Express components for building office add-ins (could not build my core product without it)

Both of these combined cost me about €1,000 a year. Well worth it too as they make my software far superior to all the competition that use free components.

SaaS: Hotjar for website heatmaps and session cams (HUGELY VALUABLE!). Linkedin Premium for help contacting potential partners (HUGELY VALUABLE!). Feedbin, RSS reader. Mailchimp

[All of my own products are desktop apps that consumers pay $60-$150 for. Sales are up.]

<comment><USER7> >Devexpress Winforms and ASP.net component suite (best Windows component suite on the market - leaves free alternatives in the dust)

Question (for the Mac people here): what's the Mac equivalent of that?

</comment></comment><comment><USER8> MacOS (kinda, it's free, but the hardware isn't...)

IntelliJ IDEA

Sublime Text 3

Microsoft Office

JProfiler

VMWare Workstation

Postbox Email

Little Snitch

1Password

Dropbox

I'm happy to pay for good software and support. Especially for things I rely on like IntelliJ. Not only has it been better than Eclipse for years but it keeps getting better because there's a whole company full of people whose business it is to make it better.

If there's a bug I can report it and reasonably expect a fix. With pure OSS software you often just get some fuck head telling you "PRs welcome". I get it. I have my own open source projects in addition to my day job. Sometimes I just want to be able to expect support for the things I need and not try to learn every codebase of every piece of software I use so I can fix a bug.

</comment><comment><USER9> One of the first pieces of software I paid for was 4DOS[0] - such a joy to use and so empowering. No other command-line experience has ever come close (preps lightsaber..;-) Of course, this was a long time ago.

There was also Photodex's ProShow Gold[1] - imho, the photoshop of photo2video software. Powerful yet so easy to use (after a day of testing). I bought it because I found that this type of creative work helps me relax, etc... Lots of similar software (I about tried them all over the years) but nothing came close. Worth every penny. Not WINE-friendly (I found after transitioning):-(

Company issued but honorable mention: Azure RP[2] for prototyping, wireframing and planning. This was years ago but I never worked with a piece of software that was able to communicate so much, so quickly to everyone involved in a project. Very powerful at the time. Many competitors in this space today. fyi: Have not touch it in many years - it may be completely different now...

These three really stand out, though I have purchased some others over the years. All three are part of the creative process and produce something at the end (script, video, a prototype) - all of which I find engages me.

In the end (personally) it's about how much software will enrich you. There's also a limit on how much I'm willing to spend (usually under $100).

[0] [https://en.wikipedia.org/wiki/4DOS](https://en.wikipedia.org/wiki/4DOS)

[1] [https://www.photodex.com/proshow/gold](https://www.photodex.com/proshow/gold)

[2] [https://www.axure.com/](https://www.axure.com/)

</comment><comment><USER10> I just had the realization that I can't remember ever paying for a console application (at least not since the 1980s and I can't remember any in particular) and I can't think of any that are currently for sale. Every command line tool I use, and I use a lot of them, is free software.

Maybe I'm just drawing a blank. I'd be curious to know if anyone pays for command line tools.

<comment><USER11> Indirectly sure, I've certainly racked up costs from using the AWS cli

</comment></comment><comment><USER12> As far as "work" is concerned, there's only really two 'ongoing' software costs for me:

\- IDE (IntelliJ IDEA Ultimate) [Yearly Subscription] \- HyperVisor (Parallels, VMWare Fusion+Vagrant VMWare plugin) [Yearly Subscription; Per- Version purchase respectively]

However I still use a couple of apps that I paid for once and continue to use:

\- Time tracking/Invoicing (Billings Pro, soon to be replaced as they don't support their self-host server any more) \- Diff (Kaleidoscope) \- Diagrams/Wireframes (OmniGraffle - haven't actually upgraded to a version that supports Mojave yet though) \- 'Office' suite (Pages/Numbers)

</comment><comment><USER13> Aside from a few things that were already mentioned here, I just started paying for sr.ht from sircmpwn. I'm a bit weary to completely replace my Github account since it's in alpha but otherwise it's been a great service.

</comment><comment><USER14> I pay for software pretty often. Most of of it is $10-15 max unless it's professional tools. That's not a lot of money for me.

Most recently, I paid for the Mac version of Soulver ([https://www.acqualia.com/soulver/](https://www.acqualia.com/soulver/)) because I got the iOS version for free and I really liked it. I regularly purchase apps on my phone if they solve my problems and are high quality.

</comment><comment><USER15> I don't need to pay. If FOSS doesn't exist for what I need, I may try to write it by myself.

<comment><USER16> What was the latest product that you wrote for yourself?

</comment></comment><comment><USER17> Fman (2 pane file manager by solo dev)

Email provider

Standard Notes

Sublime Text 3

Password Manager

Games

kanbanflow

Balsamiq

movies / TV / Audio subscription and purchases (sort of counts these days)

used to pay for GitHub

used to pay for Windows (linux now)

I donate to a bunch of foss projects too, but those don't really count since its not a 'purchase'

Fman and Standard Notes are really great products btw, solo devs too.

edit - <USER2>

</comment><comment><USER18> I paid for 1password last year and still use it. Very convenient.

Paid for sublime text around 3-4 years ago, used it for 1-2 solid years, now a days am on VIM + TMUX but don't regret having paid.

Paid for PyCharm, used less than 1 month, regretted paying for.

And that's about it.

<comment><USER19> I have used 1password for years, until they started pushing their cloud subscription for android app. Switched to KeePass, don't need wine for linux anymore, and regret not doing this earlier.

</comment></comment><comment><USER17> Speaking of paying for software, does anyone have an email / calendar client they would recommend for Ubuntu besides Thunderbird, Evolution, or 'Calendar' ?

</comment><comment><USER20> Last thing I purchased for myself was probably the RubyMine by Jet Brains.

At work we use loads of SaaSy things: Azure, Pingdom, BrowserStack, Segment, Office 365, AWS, Zendesk, JIRA, etc. etc.

</comment><comment><USER21> Thought I'd comment about the services I've been using recently...

\- I pay for an account at sr.ht

\- I host my site and other things via prgmr

</comment><comment><USER22> TablePlus. Amazing Postgres gui for those of us humble beings who haven't mastered the art of psql yet.

</comment><comment><USER23> AWS, Digital Ocean

Sublime Text (But I changed to use Visual Code last year)

MacOS

IntelliJ

Oxford Dictionary (English to Chinese, mobile app)

Daijirin (Japanese dictionary, mobile app)

</comment><comment><USER24> I pay for pushbullet, so I can text from my computer and get notifications mirrored to my laptop.

<comment><USER25> I use whatsapp web for that. Just created a group with only myself (add 2 people and remove one after) and pinned it on whatsapp.

Now I can easily send files, notifications, etc from phone to laptop and vice versa. Plus it has an advantage that I get google drive backup of everything done everyday!

<comment><USER24> I prefer to use SMS. I don't want to use whatsapp, because I don't fully trust it, and I think it will kill my battery life.

The backup feature does sound nice. I back my messages up to google drive, though.

</comment></comment></comment><comment><AUTHOR> Also.. here are the apps that I actually pay for myself ;)

IntelliJ... love it. Can't live without it.

Slack... of course.

Github.

Lots of web apps like Typeform.

</comment><comment><USER26> \- Office \- DaisyDisk \- IntelliJ \- iA Writer and VMWare Fusion

</comment><comment><USER27> Windows

Office

JetBrains IDEs

AWS and Azure (most of the price covers hardware, but some of it certainly goes to the software on top)

G Suite

Slack

Atlassian products

Actual Multiple Monitors

Sync.com

</comment><comment><USER28> IntelliJ

Github - I used to pay, but not anymore. Since, private repos are free now.

Slack.

</comment><comment><USER29> Sketch, Adobe Creative Suite, VPN.

</comment><comment><USER30> Intellij Spotify Google One

</comment><comment><USER31> GitPitch for presentations

Joyent for cloud VMs

</comment><comment><USER32> None. :P

</comment><comment><USER33> Sketch, iStats, Paste

</comment><comment><USER34> On the top of my head I personally pay for:

\- Jetbrains All Pack

\- LittleSnitch

\- Git Tower

\- iStats

\- VMWare Fusion

\- Beyond Compare

\- Office 365

<comment><AUTHOR> Thanks.. Git Tower and iStats both look interesting. Have you tried Git Kraken?

<comment><USER34> I haven't but that is because I am happy with Tower.

</comment></comment></comment><comment><USER35> Backblaze

Omnifocus

Keyboard Maestro

Quiver

Quickbooks

</comment><comment><USER36> \- Sublime Text

\- Sublime Merge

\- Alfred

\- Daisy Disk

\- Github

\- Office

\- AWS</comment>


BUSY.VC – Glassdoor for Venture Capital - <AUTHOR> One more idea*
In Europe many founders report that fundraising takes too long. While in San Fransisco you run into VC after VC, the decentralised nature of Europe makes fundraising much more of a remote process. In survey entrepreneurs often note, that the biggest problems are (i) that they don´t know where in the process they are, (ii) what their probabilities "odds" are, and (iii) what else the VC is working one. Especially for life science this is a problem, as founders always run risk of disclosing solutions to competitors.
Solution: BUSY.VC
A glassdoor for venture capital. Founders can rank VCs and business angels by (i) how quick they reply, (ii) how helpful their feedback was and (iii) if they would recommend these investors from their experience.
Business model: Pitch 50 VCs at once The moment a startup decides to raise funding, it´s a difficult to create momentum and demand / competition amongst investors for the opportunity. We help by sending every week a hand-picked newsletter with startup recommendations to a curated pool of investors (approximately 50 investors per startup). There are currently 6000 investors in Europe - founders reach with us all in less then three month (if even needed).
By our peer-review startups can be sure that their pitch, product and value proposition is good and delivered to matching investors - VCs will know that there is a market taking place.
For startups it´s free to judge VCs and to apply to pitch - but we don´t accept every startup. If we don´t think a pitch is ready yet, we provide direct feedback and help in building the pitch.
Investors pay for early access to startups.
Over-time busyvc sees this way as a "fair" knowledge-broker the early stage market much better and more efficient then every small VC.
(…)
* I thought about the idea for a while - thought it could be interesting to hear here what you think :-)  I don´t own BUSY.VC - somebody snapped it recently <comment><USER2> Thefunded.com already does a version of what you described, as far as feedback.

As far as being a knowledge-broker, many companies try similar things, and most fail at it (investors see it as a waste of time, founders also). Find the right mix and get the right people involved and you may be on to something.

</comment><comment><AUTHOR> Hi, thanks for your comment - I have heard about thefunded.com, but even now looking at it (I forget it indeed) I honestly not quite getting it - the UI is terrible. I think busy VC should focus on response times. The faster a VC responds, the more likely they are to see more deals.</comment>


America has 'reached the point of no return,' Reagan budget director warns - <AUTHOR> http://www.rawstory.com/rs/2011/01/america-has-reached-the-point-of-no-return-reagan-budget-director-warns/

<comment><USER2> Government debt is a deferred tax on a country's citizens and their descendants. So it can be a real drag on future growth and, like credit cards, feels cost-free until the bill comes due. What's more insidious is that it is often run like a Ponzi scheme, in which current citizens benefit at the expense of their descendants.

But it is hard to say where the "point of no return" is for the U.S. Many countries have higher government debt as a percentage of GDP than the U.S. ([http://en.wikipedia.org/wiki/List_of_sovereign_states_by_pub...](http://en.wikipedia.org/wiki/List_of_sovereign_states_by_public_debt)). Some of these high debt countries have reached their point of no return (Zimbabwe, Greece, Sudan) while others have not (Japan, Singapore). The U.S. is richer than all these countries and also has the advantage of a de facto worldwide dollar standard, so the U.S. is better able to withstand high debt loads than most countries. But then that's like saying the U.S. can afford to run up a huge credit card bill. The U.S. will feel richer than it is while charging, and the U.S. will be much poorer than it is once it pays it off.

<comment><USER3> The U.S. has the advantage of a relatively (for a developed country) high population growth rate of around 1% a year ([http://en.wikipedia.org/wiki/Demographics_of_the_United_Stat...](http://en.wikipedia.org/wiki/Demographics_of_the_United_States))

A growing population helps in keeping per capita debt (or its growth) down.

The downside of this, of course, is that the U.S. needs a 1% GDP growth each year to prevent its population from getting poorer.</comment></comment>


What to create for a novice back end programmer? - <AUTHOR> Perhaps the question is not the topic of what to create for a novice backend programmer? What would you take to work and pump skills? <comment><USER2> Think of something you do lately. Think of a problem you have with it and about how you can fix it. Then create something to fix it.

Example: Situation: You are playing every week some sport with your friends. Problem: No one can easily agree on a date/time. Solution: Create a little web app where you friends can vote on times.

<comment><AUTHOR> HM interesting. I mainly created applications such as 24memes.com or todolist)

<comment><USER2> Working on a problem that you have yourself will give more motivation and it will be more clear what the requirements are. You can follow some generic example or the classic todo list but their scope are limited and wont expose you to "real world" problems as much.

<comment><AUTHOR> There was an idea to create a platform where people could write about solving global problems. People would offer solutions to problems or discuss contemporary problems in the world.</comment></comment></comment></comment>