Dear HN — if php blogging platforms are junk, what do you suggest? - <AUTHOR>

Wordpress is too heavy. I think many want a very lightweight blog engine. They are just one step ahead of the curve in they don't want a shared solution because they want to control their own data. I don't trust my blog on tumbler or similar, they may take it down.
Requirements: * portable, leaning me to think php is the easiest and most host friendly for free/cheap * easy install * no database for served files, fine for interim writing and working, SQLite for ease I would guess * markdown * template to make it look nice * basic ability to add analytics, SEO, etc * dashboard, stats.
* ability to take to pretty much any host * handle a few hundred thousand uniques a day and don't have to worry, so HN/reddit can hit it without trouble. Do this on Apache without a CDN etc. * maybe even work on S3 or a free Amazon instance. Good learning experience to get others to learn the AWS system controls.
Ghost was suggested here the other day. I looked at it and saw it was all node and JS. I knew I was I for a server side config night of fun.
Another was posted yesterday and was semi-bashed because it was php.
So what do you suggest?
I know there's lists and lists, but installing and testing to have them fall on your face is no fun. Some have zero pull requests/downloads.
Looking for a "I stand by experience" recommendation. And to be honest, I think done right, php is an excellent language for this. Simple blog, content is king, ability to grow into a full fledged business if your writing is that good.
Suggestions? <comment><USER2> I would suggest Octopress/Jekyll framework to serve static web pages from a VPS such as DigitalOcean/linode. You may as well use Github Pages to host your web pages if that meets your needs.

This will meet many of your needs listed.

<comment><USER3> Wanted to throw in a second vote for Jekyll. It's pretty easy to setup, and nothings lower-load than straight HTML serving.

</comment></comment><comment><USER4> I don't think there is a blog that can be described as both "lightweight" and support all of the features you've listed.

I use a PHP framework (li3) in my day job, but the framework that seemed to fit my blogging needs the most was Django, and even that is "heavy" compared to Wordpress, which is already configured and installed for a lot of ISPs.

I get what you're saying about Wordpress. I moved away from it because I wanted the ability to fine tune the look of the blog and not be stuck with their database structure.

However, the best approach, if you're not wanting to learn a whole new framework, would be to find an ISP you're comfortable with that ticks most of those boxes as far as analytics goes. Then use some kind of static blog system to take your text and turn it into HTML. Unless it's super obscure, the language does matter as much if you're using a static system. Just configure it the way you want and post the HTML that it creates from your files. And as long as you've structured the documents well, moving back to a dynamic blogging system later on isn't going to be that tough.

</comment><comment><USER5> I'll bite. What makes WordPress too heavy in your regard (I'm a huge fan of WordPress my self, so quite biased), is it the way you use it, or the themes you use?

At it's base, WordPress is quite simple, and it's the themes that define what it looks like and feels like to your users. If you are looking for something very simple then there's the simple twenty twelve theme which is very clean. The theme directory on wordpress.org is also full of themes, there's even a plugin that transforms your WordPress into "Ghost" (The same feel and layout).

But I would love to hear back on my original question as well regarding it being heavy.

<comment><AUTHOR> For me, there is a lot of work setting it up, getting the themes where you want them, then finding one of 100 various plug-in's for SEO or twitter or whatever, and figuring out which is the best, and which has the least security holes.

You are right, at the core, it is simple, but it is time consuming to me. And it falls over under load unless you have a bit of time or money to throw at it, or both.

I like the idea or working in a text editor of my liking, knowing that quote marked in code aren't auto converted to smart quotes, knowing that the raw markdown is raw, and I can move it anywhere.

I am sure you can do all this in Wordpress, I am just looking to remove all that overheard, as starting a blog again is feeling more daunting than ever given my current medical issues. If I can just get it off the ground I will be happy.

But I feel I have to do something, so I want to do something that gets me to my end goal as quick as possible, but allows things to possibly grow without me thinking about what a Varnish, CDN, Cloudfront, etc all are.

<comment><USER6> WordPress does not fall over under load, poorly configured Apache servers do that. When WP sites fall over in heavy traffic it's because they're on a small VPS or shared host, and Apache was allowed to spawn more processes than there is available memory. They only run into this condition when there's enough traffic that the baseline number of worker processes all get used up and new ones are spawned. It doesn't matter what's running on the server. I have done no special configuration and use no caching whatsoever, and my WordPress blog has been on HN's front page with hundreds of concurrent visits several times.

<comment><USER7> Eh, Apache is a common culprit, but it is not the only one. WordPress sites with a moderately complicated theme and several plugins can easily crumble under load even with an nginx+PHP-FPM setup. Yes, you can throw more hardware power at it, but that's true with Apache as well. If you're expecting a lot of visitors to a WordPress site, you will generally want to make sure you have a good cache.

</comment></comment></comment></comment><comment><USER8> You've said WordPress takes too long to set up, so to manage your expectations I'd probably start by claiming nothing will satisfy all your requirements. That said, what about a static blog generator? HTML is uber portable, hosts anywhere, no install, no database, I think most generate from markdown, use any template, SEO is kinda missing but just follow best practices - and you'll be fast which is a benefit there, dashboard/stats is missing, can you make do with something over log files and GA?

You said you think PHP is right for this, but why do you need that much power?

</comment><comment><USER9> It sounds like you want Jekyll, but in PHP.

I actually starting building just that, it was called LiME ([https://github.com/mattbearman/lime](https://github.com/mattbearman/lime)) - although I'd never actually used Jekyll at the time, I just knew the theory behind it.

Not long after I pushed v0.2 I switched to Ruby/Rails, stopped working in PHP, and LiME has sat stagnant ever since.

Still, it worked fine, although didn't have all the features of Jekyll, I'd love for someone to take it over.

</comment><comment><USER10> You are in analysis paralysis. There will be no perfect solution. If you think WordPress is heavy, you never really had serious requirements for content management anyway. My suggestion? Stick with what you know.

<comment><USER11> To be fair to biturd, the less you're willing to trust Wordpress defaults, the more hassle it is. Once you get to the point of writing a child theme and writing your own code to enforce an html whitelist (as I do) and setting secure defaults in the config file etc. then you're basically swimming against the current of Wordpress' own practicality. You might as well just pick up slim + twig + phpass and roll your own, and it would probably be more secure anyway.

Although I do wonder, if there isn't a good static blogging solution in PHP, why there isn't.

</comment></comment><comment> workhere-io WordPress is not heavy when you use one of the many caching plugins.

SQLite should not be your go-to database if you want to handle "a few hundred thousand uniques a day". PostgreSQL or MySQL are much better for that purpose.

While some of the core WordPress code is terrible, WordPress is still pretty much the leader when it comes to usability and time-to-market. My recommendation: WordPress plus a caching plugin.

</comment><comment><USER12> I site with the static blog generator crowd. I've not heard of anything that would meet all of your requirements but my favourite static blog generator, Pelican, would come pretty close.

[http://blog.getpelican.com/](http://blog.getpelican.com/)

</comment><comment><USER13> I don't see what the deals with not using WP is. Its proven, reliable, fairly secure, simple to install, and easy to extend via plug-ins. Who cares if it has some crappy PHP in it? It works, and gets the job done right.</comment>


Ask HN: What's the best investment strategy for a highly volatile market? - <AUTHOR> For someone who would like to have a stable passive income stream from their investment portfolio, how should one invest their money? Vanguard index funds sound great, but how does that type of portfolio fare when faced with:
1) Extreme market volatility (nobody seems to think we could face the worst economic depression in centuries, but every "worst event" was, by definition, worse than every preceding event.)
2) Inflated equity prices in light of the US Federal Reserve's quantitative easing policy. Near-0% interest rates pushed a lot of money into equities in order to return anything.
3) Bonds yields at historic lows.
4) Possibility of political unrest/war.
For 1 and 4, I'm not saying that's what will happen, only that there's a non-zero chance of it happening. Just as one sleeps better knowing they have medical or fire insurance, protecting oneself from economic risk should do the same.
So I suppose my question is more along the lines of: how can one protect a portfolio from downside risk while still earning a decent passive income stream? <comment><USER2> I read an amazing book about portfolio allocation a few years back and reallocated my holdings. The thing that impressed me was a historical analysis which showed that, as long as you split your fixed income and equities, you would do quite well. The interesting thing was that you could split them sub- optimially and the whole thing would do well. Getting the proportion exactly right would get you a slightly better return, but much less than I expected.

When the market is charging ahead, it might seem that holding bonds/fixed income might be a waste, but it's really just a form of insurance. Another interesting thing I learned was that holding inversely correlated things led to higher returns and less volatility. So an all-equity portfolio would generally have a slightly smaller return than one with even 5 or 10% fixed income.

Anyways, the book was by a guy named William Bernstein, and his (very dated looking) site is at [http://www.efficientfrontier.com/](http://www.efficientfrontier.com/). His book is called the Intelligent Asset Allocator. The first 2 chapters are on the author's site. The book can be ordered from Amazon at: [https://www.amazon.com/product- reviews/0071362363/ref=cm_cr_...](https://www.amazon.com/product- reviews/0071362363/ref=cm_cr_dp_syn_footer?k=The%20Intelligent%20Asset%20Allocator%3A%20How%20to%20Build%20Your%20Portfolio%20to%20Maximize%20Returns%20and%20Minimize%20Risk&showViewpoints=1)</comment>


How to get remote work abroad? Example USA - <AUTHOR> Hello, I live in Uruguay and here my salary with 2 years of experience in Angular is 5 dollars for hours. My But the company I work for sells my hour to US companies for $ 50, the difference is crazy. So I want to be the one who sells my time directly <comment><USER2> There are three automatic posts about jobs by [https://news.ycombinator.com/submitted?id=whoishiring](https://news.ycombinator.com/submitted?id=whoishiring) the first working day of the month (next is in 10 days, on August 3rd). Try to find the correct one to get info and to post.</comment>


How TOTP Systems Like Google Authenticator Work - <AUTHOR> https://spin.atomicobject.com/2020/08/23/how-totp-works/#.X0PGclfhyRY.hackernews <comment><USER2> Nice intro but this could be complemented about some insight about the philosophy of Two-Factor authentication.

> an attacker could capture a password as it was being transmitted

I think this could be amended to rather point to the factors of auth: something you know, something you have, something you are. OTP could have also prevented social engineering attacks and phishing where only the password was phished.

Also for the conclusion I'm missing some info about U2F which seems to fix the problems with TOTP secrets described in the last paragraph.</comment>


How to be a Programmer: A Short, Comprehensive, and Personal Summary (2002) - <AUTHOR> http://samizdat.mines.edu/howto/HowToBeAProgrammer.html A Short, Comprehensive, and Personal Summary <comment><USER2> >>But it is really child's play compared to everything else >>that a good programmer must do to make a software system >>that succeeds for both the customer and myriad colleagues >>for whom she is partially responsible.

Why the use of the word "she" ? I see a lot of articles written where the undefined person will be a she. I speak french, and "person" is a feminine name, so you can say about a person "she", but why in English ? Especially when in male dominated jobs like programming. A programmer is likely to be a he than a she, so why try _this_ hard to be politically correct.

<comment><USER3> The grammatically correct generic pronoun in English is 'he':

[http://en.wikipedia.org/wiki/Singular_they#Generic_he](http://en.wikipedia.org/wiki/Singular_they#Generic_he)

Anything else is just politically correct nonsense.

<comment><USER4> It's not really any less correct than a genderless pronoun, even if one particular panel disagreed. I see no reason to use a masculine pronoun when a generic one will do, and could only call it "political correct nonsense" if an author insisted on either alternating between he and she, or used "he/she".

<comment><USER5> I find things written with lots of genderless pronouns can make the writing unclear. Lots of "They" , "Their" feels unnatural and clumsy when talking about people and it can become difficult to decipher which parts of the text are referring to a person and which to some inanimate thing.

Just as frustrating is writing that switches pronoun gender when referring to ostensibly the same person. However describing some operation between two people "Alice and Bob" it can improve clarity to make both people belong to different genders.

</comment></comment></comment></comment><comment><USER6> What is wrong with us in this sick, perverted, twisted, dying and rotting industry? If you encounter these problems, start applying to a new position. Don't deal with management; don't "educate" them. Don't fix the organization you've tricked yourself into joining. Just polish your resume and leave. It seems like we're an industry that _defines_ Stockholm Syndrome.

<comment><USER7> Philosophically, programmers can do anyones job, as long as that person is willing to describe it in a way that it can be abstracted properly.

Programmers are unique in the world, in a philosophical sense, in that the skills and techniques of programming can be applied to any human subject, and seriously productive results can be attained. Computers are an "infinity machine" in that any single subject that a human being can describe, using words, can be in some way supported by computerization.

So if you think an organization is broken, programming can often-times fix it. Good programming, which encodes the domain-specific knowledge of the organization, can be applied to any particular role in human existence - including that of management. In that sense, programmers are able to operate exterior to any organization - and must, in fact, if they wish to deliver a productive result - and apply their skills to that organization in order to improve it.

Programmers who have worked professionally in any industry have an intuitive understanding of this fact, and its strengths.

So I would put it to you that its not Stockholm Syndrome you're observing, but rather this simple fact: Programmers > Managers. (Well, Programmers who _deliver_ working systems, that is..)

<comment><USER8> Wow, that's .. incredible hubris.

There are good programmers and there are bad programmers. There are good managers and there are bad managers. The good variants of either are very valuable and can deliver huge value to very diverse businesses. The bad ones, not so much.

Since the computer-based automation of everything is a reasonably recent phenonomen, there have been more low-hanging fruit to be picked by bad programmers. Management is a much more mature field, so having "Teach yourself Management in 24 hours"-level competence is much less likely to have a positive yield.

What you're describing is just general intelligence and analytical thought. It's harder and rarer than most people think, and both managers and programmers to be really good at their jobs. But just as there are less demanding management positions in the world, there is an emergent class of programmers who are perfectly capable of building and maintaining simple CRUD apps to spec, but wouldn't need to know half of what is in this guide to be effective.

</comment></comment></comment><comment><USER9> "Programming languages should really be called notations in that learning one is not at all as difficult as learning a natural language."

Brilliant! This whole section on choosing a language is great.

"One tends to think of a large system that has components in three or four languages as a messy hodgepodge; but I argue that such a system is in many cases stronger than a one-language system..."

This part sounds insane until you start working with eventually consistent messaging like: [http://www.reactivemanifesto.org](http://www.reactivemanifesto.org)

</comment><comment><USER10> Woah you weren't kidding about "Comprehensive". Yet it really is short and seems to encapsulate every thing it talks about pretty well.

Thanks a lot for this!

</comment><comment><USER11> My favorite part is _How to Deal with Organizational Chaos_ [http://samizdat.mines.edu/howto/HowToBeAProgrammer.html#id28...](http://samizdat.mines.edu/howto/HowToBeAProgrammer.html#id2855892) especially:

      Engineers have the power to create and sustain.

</comment><comment><USER12> Interesting educational read, wise experience from a programmer, definitively to read for beginner programmers like me!

</comment><comment><USER13> The last section on organizational chaos and the magic power is key.

<comment><USER14> I disagree. I think it is only very narrowly applicable, in particular to companies that are technology-centric (i.e. that have as a primary product something that is technology related, such as a software product), and even then it only applies to a fraction.

In most companies, technology-centered or not, the non-engineers have a large amount of power to "create and sustain" something far more important than code or systems: institutional political power. I don't care how good a programmer one is, in such organizations institutional politics almost always wins. The old addage, "It's not what you know but who", applies here, as in any other industry. Talent is only good to carry a person so far, within the confines of somebody else's business.

</comment></comment><comment><USER15> I kind of wish each section was a little longer. This would make for a great book :)

</comment><comment><USER16> Nice read.

</comment><comment><USER17> Here's a shorter version: Are you so inspired by a software product or service that you are driving yourself mad thinking about how it was created? Great, do whatever you can to write your own version. Keep at it. Seriously, keep at it. Are you so obsessed with figuring this out that you are unaware that hours are passing by while you work? Awesome. You have discovered a true passion. Now you don't need to read things titled "How to Be a Programmer" because you will drive yourself to become one innately.

For everyone else, go ahead and try to read things titled "How to Be a Programmer" but don't expect it to actually help you, you know, BECOME one.

<comment><USER18> +1. Your short version pretty much summarize what other 1000 people would say. And that's what I told people who came to my school's open house today: look around you and see what kind of things you wish you could control. You want to be able to get all the files with certain prefix? Figure out that linux/windows command.

The title "A Short, Comprehensive, and Personal Summary". This is not short. It's pretty verbose.

<comment><USER19> It's hard to be short and comprehensive. This is shorter than a book, longer than a magazine article. (55 pages: OK, maybe a short book.) "Short" is relative. :)

His coverage of debugging, and how it's critical to overcome fear of breaking things, and of asking the right questions of how things might fail in this way, is a great explanation.</comment></comment></comment>


Parse 2.0 - <AUTHOR> https://medium.com/@newfosco/parse-2-0-600839abebdf <comment><USER2> _" Since these things happened on the same day, some have mistakenly assumed that they were related."_

Huh? How could you _not_ think two announcements about the same service on the same day by the same company were related?

Facebook totally could have spun this as "We're open sourcing Parse! (oh, and deprecating parse.com)" but a blog post called "Moving On" wouldn't have been the way to do it.

Regardless, releasing an open source version of the service you're shutting down is a hell of a lot more than most companies would do, so kudos to Facebook/Parse for that.

<comment><AUTHOR> I guess I was trying to be funny and make a point at the same time... Of course people would think they were related.

The initial messaging could have been more positive, absolutely.

<comment><USER3> I do feel for your situation. It's apparent that this was the management's plan and you might not have been communicate to. Excited about Parse 2.0 nonetheless!

</comment></comment></comment><comment><USER4> Out of curiosity, I thought there were a few blog posts about how Parse is written in Go.

But based on this blog post, it looks like you are re-implementing [https://github.com/ParsePlatform/parse- server](https://github.com/ParsePlatform/parse-server) as a node app. Why not open source the original code?

<comment><USER5> It could be because Parse was engineered not to be easily deployed but heavily dependent on Facebook infrastructure or the code that is there isn't fit for release.

<comment><USER6> It didn't use Facebook's infrastructure: [https://aws.amazon.com/solutions/case- studies/parse/](https://aws.amazon.com/solutions/case-studies/parse/)

</comment></comment></comment><comment><USER7> Fosco, you're doing a great job with this. Thanks for continuing to work so hard to help Parse developers.

</comment><comment><USER8> Could this be even better than parse.com since you can program the server? That's what I never quite understood about Parse. It seemed like you had to do pretty much everything in the client/app which seemed like a severe limitation.

<comment><USER9> That's the genius behind parse (from the perspective of their creators): they don't have to run your code, so they don't even have to think about all the issues that come with that (security, CPU usage, etcetera). Firebase used the same trick.

<comment><USER7> That's just not true. Most reasonably mature apps were running code on our servers via Cloud Code. And it's hardly genius or a trick to have thick client SDKs.

</comment></comment></comment><comment><USER10> Repository: [https://github.com/ParsePlatform/parse- server](https://github.com/ParsePlatform/parse-server)

</comment><comment><USER11> Why not open source the dashboard code as well?

I have been looking at migrating options and would like to have something as close as possible to original Parse.com

The dashboard was such huge help in testing, debugging etc. Suggest opening that up too so other players can run that as well.

<comment><AUTHOR> That is in the works. [https://github.com/ParsePlatform/parse- server/issues/3](https://github.com/ParsePlatform/parse-server/issues/3)

<comment><USER11> Awesome! I would love to see one of the providers take that up and offer that in the migration process.

One of the best things Parse offered was ability to purely focus on application code and not worry about anything else. Tech pundits may balk at this approach but for a startup looking for product/market fit, this works. Until we have that nothing else matters.

</comment></comment></comment><comment><USER12> I'm curious as to why you decided to left out push notification. That was one of my favourite Parse features, and I think it's why a lot of people use it.

Was it too hard or time consuming to re implement?

<comment><AUTHOR> Check the pull requests, as Push delivery is in-review and landing very soon. At least one developer has already pulled the diff and got it working.

</comment></comment><comment><USER13> There is an alternative universe where I push [https://github.com/dgrtwo/ParsePy/issues/13#issuecomment-160...](https://github.com/dgrtwo/ParsePy/issues/13#issuecomment-16022336) a little bit more, and actually complete the python server implementation of the Parse API.

I wonder what would be happening at this universe if it also saw this "closing née open-sourcing of Parse": would a competing implementation get sudden traction? Would I be selling bitnami images (that is what I was thinking about how to make money with it) for mobile developers who didn't want to mess with backend services? Would it land me a job on Facebook? Would I take it?

</comment><comment><USER14> So... what is Parse? Neither the blog post nor the repo give any idea what you'd actually use the parse-server package for.

<comment><USER15> I guess the assumption is that anyone looking for parse-server has already used Parse in the past.

</comment></comment><comment><USER15> What you should've done instead is make another closed source Parse under a different name, get acquired for $X million, then do it again ad infinitum.

<comment><USER16> You can start by relabelling the open sourced Parse right now!

</comment></comment><comment><USER17> That's the great thing about open source: a project can outlive its stewardship.

</comment><comment><USER18> It's great that the Parse server got open sourced, no doubt. But a lot of people rely/relied on Parse for sending push notifications... you know, that pesky little item listed as "unsupported" in the parse-server README.

<comment><USER8> What's the current best option for sending push notifications? Is there an equivalent to Mailgun, SendGrid, Mandrill, SES? UrbanAirship? Does Twilio do it? Or do you just go direct to Apple/Google?

<comment><USER19> I've had a lot of positive experience with Amazon SNS. It's reasonably priced ($1/million push notifications) and makes sending notifications as easy as hitting an HTTP endpoint. We deliver a couple million notifications a month and have had no problems.

<comment><USER20> Second that with our experience sending 1m push notifications a day to android/ios

<comment><USER21> Thirded. It was actually a little annoying getting the message structure right (putting an escaped JSON string inside of JSON isn't the most intuitive thing), but once I got that working it's been smooth sailing.</comment></comment></comment></comment></comment>


SCOTUS hands victory to blind man who sued Domino's over site accessibility - <AUTHOR> https://www.cnbc.com/2019/10/07/dominos-supreme-court.html <comment><USER2> I hate to defend a big corporation, but they do seem to have a point: where exactly are the standards for being able to determine whether a website is or is not accessible? Even for sighted people, there's no real standards for anything at all. How do you determine whether a website is "standards compliant"? You don't. These days, you just make sure it looks OK in Chrome, and years ago you made sure it looked OK in IE. There's supposedly standards from the W3C, but no one actually follows them.

<comment><USER3> Why can't they make a good faith effort? Everyone complains about bad regulations, and yet again and again, companies say "just give us something meaningless and arbitrary, so we can say we're compliant".

I think the question of how to comply is a diversion - the real issue is that if a website is compatible with a screen reader, anyone can leverage that to avoid ads and tracking. Accessibility in a general sense is fundamentally at odds with the modern internet.

<comment><USER2> >and yet again and again, companies say "just give us something meaningless and arbitrary, so we can say we're compliant".

Because something meaningless and arbitrary is something companies can point to and say "we're compliant", and absolutely no one can question them or say differently, that's why. As long as they're compliant with the arbitrary standard, you can't just sue them for being non-compliant, even if the standard is crap. Whereas if they make a good-faith effort but there's no standard in place, then someone can argue that in front of a jury of 12 morons that it isn't good enough, that they didn't really do it, etc. The crappy standard removes the element of differences of opinion.

<comment><USER3> You can always sue no matter what. And any big company that is complaining about litigation has a hundred lawsuits going at any given time. It's not like an individual where a lawsuit could ruin them. If a good faith effort only eliminates 99% of the lawsuits, so what?

</comment></comment></comment></comment><comment><USER4> Regardless of the details of this specific case; I hope the end result is some clarity around what is required to make a website ADA compliant (and when it's required).

<comment><USER3> If a corporation needed "clarity" to do something, they wouldn't litigate in the first place - there's nothing less clear than that.</comment></comment>


Big O Notation: Using not-boring math to measure code's efficiency - <AUTHOR> https://www.interviewcake.com/big-o-notation-time-and-space-complexity <comment><USER2> I don't think the attitude of being allowed to be hand-wavey is a good one for this sort of thing. Big O notation has very precise semantics, and it is very easily misused.

Many of the examples are wrong. A python "print" statement is (for the built- in types at least) O(n), so printing the first item from a list must be at least O(n).

Fundamentally, looking at big O notation as a way of measuring runtime is misguided. It is a way of describing a class of functions. But there is typically a level of indirection between the function that is being talked about, and the one which the analysis is applied to. For the "return the first item in the list" example, the function which is being analysed is a function from Int to Real. That function iterates through all values with size corresponding to the input to function, for each of these it runs the "return the first item in the list" function and measures the time it takes. The maximum time taken is then the Real output.

That intermediate function is important, and needs to be specified properly. If it isn't, then you get confusion The section "N could be the actual input, or the size of the input" is an example of this confusion. Here, the intermediate function which is being analysed is much simpler (but it is still present).

I should probably also add, that I am not by any means an expert here, and I wouldn't be surprised if I've made sloppy mistakes here. I'll just make the pre-claim that this only further proves my point that being hand-wavey is not a good thing :-)

<comment><USER3> When doing complexity analysis, one should state what the base operation is. For example, when looking at sorting algorithms, we typically use the operation "is _x_ less than _y_?", or something similar to it. What the analysis then tells us is how many comparisons we make.

The author does not state what his operations are. So, with regards to the examples, he implies that the operation he's counting is "print". So his examples are correct.

You are right, though, that we can get in trouble if it turns out that our base operation - which we assume is constant time - is actually not constant time. When looking at algorithms that deal with very large numbers, for example, we can't consider multiplication to be constant time.

So, with regards to the complexity of print, you are correct that it is linear - O( _n_ ) - in the _item being printed_. But I believe you are confusing the quantity "size of the list" and the quantity "size of an item in the list". If we have a list of size _n_ , and that list contains items whose largest size is _m_ , then we would say the cost of that first loop is O( _n_ * _m_ ). If we can just assume that the size of an item is not large enough to matter - that is, _m_ is actually a constant - then we can safely say that the cost is O( _n_ ).

<comment><AUTHOR> Agreed. I'm trying to strike a balance here between painting the full picture and being approachable for people who are scared of math. These notes are super helpful though--we can probably nod briefly to this complexity without getting /too/ stuck in the weeds. Really appreciate the thoughts!

</comment></comment></comment><comment><USER4> An O claim can always be pessimistic. A linear time algorithm in N is not only O(N) but also O(N*N) an O(2^N): it is at least as good as all of these. If we are sure that the algorithm is faster or slower than N, then can say Theta(N), the tight bound.

[http://stackoverflow.com/questions/471199/what-is-the- differ...](http://stackoverflow.com/questions/471199/what-is-the-difference- between-%CE%98n-and-on)

(Often, we are sure but we still use O.)

<comment><USER5> A start-up I applied for once asked me to take a test, and one of the problems was "Implement a sorting algorithm that is not O(n^2)." I thought about snarkily adding extra walks through the data, but decided instead to explain the problem with the question and answer the question they were trying to ask.

</comment></comment><comment><USER6> While these are probably the answers that an interviewer wants, I cringe every time I see someone say that Big O tells you "how long an algorithm takes to run". It's clear the author understands the limitations, but I worry that encouraging people to equate algorithmic complexity with run time in the real world does more harm than good. Big O is fine for theoretical analysis, and at one point it was a reasonable approximation for performance, but with current superscalar SIMD processors with several layers of cache, the gap between theory and practice is getting pretty wide.

Big O tells you (to within some smaller order terms) how many more operations an algorithm needs to perform if you double the size of the input from really big to really, really big. This corresponds to increase in run time at small scale only if all else remains equal, which usually it doesn't. And even then, it only tells you the increase for that same algorithm, rather than how to compare the actual run time to other algorithms with different constants.

My hope is that someday Big O will be reserved for theory and programmers will preach something more like the roofline model: [http://www.eecs.berkeley.edu/Pubs/TechRpts/2008/EECS-2008-13...](http://www.eecs.berkeley.edu/Pubs/TechRpts/2008/EECS-2008-134.pdf)

</comment><comment><USER7> This is very nicely done.

I do think it has one major omission -- something that is unfortunately omitted all too often. This is that, just as we get to decide what "n" means, we also get to decide what operations we are counting. Furthermore, our choices _matter_.

For example, if we are dealing with data accessed via a slow connection, or just about any kind of distributed system, operations that use the slow connection will be much slower than those that do not. So often we will count only those. O(n^2) doesn't give the full picture, if we only use O(n) slow operations.

For another example, if we are doing computations using large integers, then it usually does not make sense to count arithmetic operations as single operations. In such circumstances, a large-integer multiply can take a lot more time than a pointer dereference.

</comment><comment><USER8> Says it studies the complexity wrt the size of the input but doesn't say the size of n is O(log n) when it comes to the example :(

<comment><AUTHOR> Hm, sounds like a bug. Which example are you referring to?

<comment><USER9> The size of an integer n is O(log n).

<comment><AUTHOR> Ah, gotcha. I'll patch that up. Thanks!

<comment><USER8> I was referring to the print s*n example (O(n) being exponential wrt the size of the input). You're welcome ;)

</comment></comment></comment></comment></comment><comment><USER10> Not-boring math? Isn't all math not boring?

<comment><USER11> That depends entirely on how deep you look.

If you only look at the surface, and never care to think about what it's good for, mat can be quite boring.

</comment></comment><comment><USER12> I think a log n example would be useful, e.g. a basic divide and conquer. Given that many algorithms strive for logarithmic complexity, it seems a shame to miss this out.

Also how about a list of complexities in order of growth time?

<comment><AUTHOR> Agreed. I'm working on an "advanced" follow-up that digs into log n and a couple other things!

</comment></comment><comment><USER13> "Big O notation is like math except it's an awesome, not-boring kind of math"

Except big O notation is math and the use of it for complexity analysis is one application of it - this is a completely off-base statement.

</comment><comment><USER14> I'll ignore discussion as to what counts as a step, what "n" is, or how it doesn't necessarily reflect on the real world. I still feel like this article focuses on the wrong thing. It's equivocating Landau notation (Big O) with complexity/efficiency, but never explains what complexity is. It then proceeds to link this to the efficiency of code under certain circumstances. While this work gives a couple of examples as to how to determine the "big O" of simple algorithms, it ignores its meaning and context. This is a huge mistake.

First off, big O notation wasn't created with complexity theory or algorithms in mind. If I recall correctly, it has its roots in complex analysis. The notation was later borrowed as computational complexity was formalized. What happened is that people needed a way to describe the hardness or "logical sophistication" of problems and tasks. Looking into the asymptotic behavior of a complexity measure was just one means that they used. There are plenty of other ways to do this. The article reads like big O exists for the purpose of complexity analysis of algorithms. I doubt the author intended this, but they should be a bit more careful.

Time and space aren't the only resources of interest. Sometimes you need to quantify how much information you have or how much entropy there is. If you want to understand "what is basically happening", this is something you should pay attention to. Are we handling more information than we have to? What do we need and not need? Circuit sizes, sophistication of proofs, setups of databases, and the complexity of communications/protocols also play a role.

Even ignoring all this, the article is missing an elementary half of the picture: the structure of the input. It's not just about code and its design. Data structures matter, too. How information is organized, how it is encoded, and how it can be manipulated (computed on) makes an absolute huge difference. Are things sorted or unsorted? What kind of list or tree structure is your code working with? From what I understand, this is the whole point of a significant chunk of the interview questions candidates are presented with. It's ridiculous to omit this when introducing algorithmic complexity.

The author claims that Big O notation is an "awesome, not-boring kind of math where you get to wave your hands through the details and just focus on what's basically happening". They are hand waving not just the math, but also hand waving (and ignoring) most of the context as well. It doesn't even directly explain why big O notation models code efficiency in a fruitful way. It just mentions run time and memory usage superficially. In my opinion, this needs to be significantly revised or rewritten.

<comment><USER3> _The article reads like big O exists for the purpose of complexity analysis of algorithms. I doubt the author intended this, but they should be a bit more careful._

I see no problem with this. My first taste of algorithm analysis was in a freshmen year course, where we were taught the phrase "big oh" and how to analysis algorithms in quite a similar fashion as this article. The idea was to give us the briefest of introductions of the topic, just enough so we could talk intelligently about the elementary data structures we were being introduced to (vectors, lists, trees). We didn't get the real deal until senior year.

"Education is a series of small lies", is what my intro to computer engineering professor said when he said that, actually, _some_ circuits are ternary, not binary.

Basically, the author is trying to _introduce_ a concept to the reader. I don't fault him for not heaping the entirety of an area into an introduction.

<comment><USER14> I get the gist of what you are saying and agree with some of it. I still think the article isn't sufficient, at all, for even an elementary introduction to anything. It's incredibly incomplete. An introductory cs course is going to present asymptotic complexity analysis (written using Landau notation) as one of the TOOLS for thinking about the efficiency of code. It will hopefully not just hop to big O without setting up the context. The author can fix this by just reworking the preface. It needs to answer the question: "why are we doing this and how will this accomplish anything?"

If you fail to frame the context and the semantics well enough, you'll end up with people running around saying that an algorithm is "big O of blah." AGH

The introduction to the concept is articulated by the following comparison:

'We want to measure code efficiency. Big O notation describes this. Here are some examples.'

vs.

'We want to measure code efficiency. We can do this by thinking about its usage of resources (complexity). for example, total run time and memory usage. One of the ways to compare the efficiencies of algorithms is to compare their asymptotic behaviors. We can express this using big O notation. Here are some examples.'

\-----

The author talks about how big O notation is awesome because you can drop the constants. It is not explained why this is awesome or useful. Interestingly, it later says that sometimes it isn't good because the constants sometimes matter. What is the reader supposed to understand here?

There's no followup as to what to think about after you determine the "big O" of an algorithm. Either he forgot to write this or figured that it was obvious at that point. Considering that he didn't sufficiently explain the concept's motivation either, I don't see how an uneducated reader will get a clear picture.

</comment></comment></comment><comment><USER15> > But to be more specific we could say this is worst case O(n) and best case > O(1) runtime.

Those should really say θ(n) and θ(1).

<comment><USER11> That first one should be a big O.

<comment><USER15> Hmm. Big O already encompasses "at worst".

Theta is the notation for a single case, be it the worst case, the best case, one run of a randomized algo, etc.

At least that is my understanding.

<comment><USER16> Big O is an upper bound, little o is a lower bound. Big theta means both an upper and lower bound.</comment></comment></comment></comment>


Perlisisms - "Epigrams in Programming" by Alan J. Perlis - <AUTHOR> http://www.cs.yale.edu/homes/perlis-alan/quotes.html <comment><USER2> Another collection of wisdom and mixed metaphors attributed in part to Dave Farber and collected by Ralph Griswold: [https://www2.cs.arizona.edu/icon/oddsends/farber.htm](https://www2.cs.arizona.edu/icon/oddsends/farber.htm)</comment>


Is the tech recession over? - <AUTHOR> http://www.joelonsoftware.com/items/2009/02/11.html

<comment><USER2> Is the tech recession over? In AU, and UK... Yes. According to various job places, there has been an increase in jobs. A low point was of course September, and October... but things have increased since then. Even newspaper classifies for jobs are on the up. Also the number of client requests for new projects has gone up for software developers/designers/advertisers/marketers I know.

I don't really track USA places - so I can't comment on them.

Is this Joel on Software post another thinly veiled advertisement for their services? Yes.

<comment><USER3> In AU I'm seeing less jobs advertised on Seek than late last year.

<comment><USER4> [http://business.theage.com.au/business/surprise-jobs- jump-20...](http://business.theage.com.au/business/surprise-jobs- jump-20090212-85cg.html) "Employers took on an additional 33,700 full-time employees in January, the most in six months, spurring hopes the economy may yet avoid a recession.

All up, the economy added 1200 jobs last month as firms cut part-time jobs. Even so, the result was much better than the overall 18,000 job losses economists had tipped."

</comment></comment></comment><comment><USER5> Yes. Well, at least the panic is over, and some companies are hiring cautiously.

I got three job inquiries last two days, from recruiters and: I got another request from a startup that I got an offer in October, that week that Sequoia send the RIP presentation. They had to withdraw the offer, b/c of a hiring freeze mandated by the board. It seems that they are hiring again, and contacted me if I was still available.

I am not, as I found a new job in a same size startup.

Basically, if you are really good, you will be able to find a job. I might take some time, but there is some hiring going on. The only thing is that there is a lot of people laid off, so there is a lot of competition out there, and some interviews will end up like an "american idol" contest, but be patient and don't get discouraged.

In another anecdote, mobile seems to be a field that is still hiring. A friend of mine was laid off in December, but he was able to find contracting work within 3-4 weeks.

I think this recession will probably drive some subpar talent out of the industry, which I think it is a good thing.

</comment><comment><USER6> It has hardly even started yet.

Many tech companies have been insulated as they were funded (therefore not relying on revenue for survival).

There will be no new funds for many of these companies - so they need revenue - and they have to achieve revenue in a contracting economy.

I had hoped we'd see an uptick in activity in H2 2009, but I fear it's going to 2010 or 2011 before we start to see real recovery - the history of the 1930s indicates it may be even later than that. Many economists are saying comparisons with 1930s are wrong, which could be true, but in the 1930s the economies outside the US were unaffected and exports to those economies dragged the US out of depression - this time it's global.

It's possible we will see some fake recoveries, some may last a year or so, but the problems this time are so vast it's going to take many years to heal.

These massive spending measures that are being put in place all have consequences and we've got to deal with those before we get back to stable growth.

Some companies, for instance those doing business apps that save money, will be counter cyclical and may do well. For the rest it's going to be hard times.

<comment><USER7> "...in the 1930s the economies outside the US were unaffected"

Perhaps you should read the Wikipedia article on the great depression paying careful attention to the section on effects: <http://en.wikipedia.org/wiki/The_great_depression#Effects>.

"...and exports to those economies dragged the US out of depression"

If by "exports" you mean all the bullets and bombs and tanks and so forth that the US sent out to blow up everybody else's stuff, then I agree with this statement. You also need to include all the stuff that was then sent over to rebuild that blown up stuff to account for why the depression didn't continue after the war was over.

On the other hand, I heartily agree with your statement that today's problems are vast and that it may take years to heal. It's going to be painful to reduce production now that people will not be able to continue to borrow to fund lifestyles that are beyond their means. It will be even more painful when everybody figures out that the government can't do the same.

</comment></comment><comment><USER8> No. Most of the drama hit in September, 2008. It takes an F500 significantly more than one month to react to the downturn. In our case, we predicted we'd see budget contractions and RIF's in Q1-Q2 as '09 budgets were slashed and revenue recognition results started bleeding into companies, and that's roughly what we're seeing.

<comment><USER2> So your answer is Yes, but soon it will be No?

<comment><USER8> I don't want to get too specific, but we're _already_ seeing signs of cost- cutting --- particularly hiring freezes and loss of open headcount, and in sharp capex restrictions. There's no "Yes" interpretation, since we're saying the bad stuff hasn't really started happening yet.

To believe that a tech recession peaked in September and is now past us, don't you have to believe that thousands of massive companies absorbed the Lehman Brothers and AIG shock nearly instantly?

</comment></comment></comment><comment><USER9> It never really happened here (Boulder, CO). A couple of the big guys with offices here (Sun, IBM) laid off a few hundred, and all the engineers and tech guys were snatched up immediately. We've been looking to hire for 6 months, and have yet to find any decent candidates in the area.

There's lots of startups here always hiring, and large government labs to fall back on.

<comment><USER10> Were you in Denver/Boulder in 2003?

<comment><USER9> No, I moved here in 2006.

</comment></comment></comment><comment><USER11> I have some more datapoints from jobs aggregated on Joblighted (24 sites):

<http://joblighted.com/statistics>

There were indeed more jobs posted in January 2009. Though probably much of this increase is cyclical. In two previous years there was the same pattern - a decline in December followed by an increase in January.

<http://joblighted.com/img/jobs_Sep2006_Feb2009_monthly.png>

<http://joblighted.com/img/jobs_Sep2006_Feb2009_weekly.png>

(Please note that I kept adding job sites, which could hide some of the decline in job postings).

</comment><comment><USER12> I don't think it is over, because many organizations are only starting to cut back. Not everybody was hurt initially, but the effects are gradually spreading throughout the economy. It seems likely that this will result in a drop of IT spending.

Certain products may do well, though, if they look likely to save companies money. Maybe that's what happened to Joel.

<comment><USER13> Yeah, I tend to spend all my days in code and thus don't have a clear idea of how the video game industry is doing, but I haven't heard anything about people lifting their hiring freezes, and it seems like there's a new studio that shuts down or cuts jobs every few weeks.

</comment></comment><comment><USER14> Never knew recessions are indicated using Joel Spolsky's product sales.

<comment><USER15> From the article:

"OK, it's just one data point. All I know is sales of FogBugz and Copilot."

"This could be a fluke; it might not reflect any reality."

I think it's very informative for them to share (relative) sales numbers like this.

</comment></comment><comment><USER16> hmmm... what would be weird would be if people tended to exhibit herd behavior, and go to the restaurants that have the most people because they _must_ be the best ones.

If that were the case, Joel would have a financial incentive to claim that people were buying his software just as much today. I mean, especially if he were super savvy at marketing his software on his blog. hmm...

<comment><USER15> Could be. Or maybe he's just telling the truth. Do you have evidence of Joel being dishonest before? His blog doesn't feel like it is, to me.

<comment><USER16> I didn't claim that he wasn't telling the truth.

</comment></comment></comment><comment><USER17> My initial reaction would be "of course not". When the rest of the economy is in a tailspin, why would tech somehow be different?

But here's the thing - we (the tech world) took a brutal recession in the early 2000s to shake off the excesses of the dot com bubble. Many people believe that Fed managed to avoid the dot com bubble reckoning by creating a new, and even more dangerous, bubble in housing.

It did seem that way. While hundreds of thousands of people (including good programmers) lost their jobs, housing prices kept climbing, and consumer spending kept humming along, even increasing.

So in some ways, I wonder if maybe the rest of the economy is experiencing the reckoning that tech has already been through.

I have trouble believing that high tech won't be negatively affected by the economic troubles, but it may be much better off than other sectors of the economy.

</comment><comment><USER18> No, at least I do not believe the recession is over in the tech industry, but some companies are better positioned than others to do well right now.

Companies like Fog Creek could actually do very well, because people buy their products to streamline processes and improve productivity. --Exactly what companies need when they lay people off or slow hiring.

While we're doing better than most other industries, we've still seen more jobs lost due to the economy than new jobs being posted. I do agree, though, that the really good people will generally still be able to find work, although not necessarily as quickly as they once would have.

</comment><comment><USER19> I think that anything that would save money would be OK. I work for a certain, very large SaaS company that saves companies on certain expenses (for real!) and we've seem to seen an uptick in business.

</comment><comment><USER20> This could be an attempt by companies to become more efficient by replacing positions in HR and Support with software solutions.

So while this might be representative of the SaaS industry I strongly doubt that it would represent the tech situation as a whole.

Actually I think the tech sector is going to be slowly winding down for quite a while to come. There were lots of big contracts locked in before the recession hit, and that existing work is going be finished off over the next year without much to replace it.

</comment><comment><USER21> We weathered a nearly four quarter long downturn that ended in Q3 of 2008. Sales have been brisk since, and the pipeline looks good. We haven't attempted to fill positions that were removed during that downturn, however.

Other tech companies in the area are hiring, though certainly not at the brisk rate they once were. The only active layoffs I've heard about are in the financial sector.

</comment><comment><USER22> No.</comment>


Leaving Prison at 72 - <AUTHOR> https://www.nytimes.com/2019/10/28/us/geneva-cooley-alabama-prison.html <comment><USER2> It's a little sad that so many people only get interested in these problems for the drug angle: [https://lawprofessors.typepad.com/human_rights/2019/05/revis...](https://lawprofessors.typepad.com/human_rights/2019/05/revisiting- life-without-parole-in-alabama-one-prisoner-at-a-time.html)

Geneva Cooley was sentenced to mandatory life without parole based on the drug conviction. However, even if that hadn't been the case, she could've gotten a life sentence based on two prior felony convictions for forgery, and a felony conviction for failing to get tax stamps for the drugs she sold. The drug laws in Alabama have been amended, but the habitual offender laws have been much harder to change.

There is a ton of focus on the injustice of drug convictions, maybe because it's something middle class people can identify with. But that's just scratching the surface of what's wrong.

<comment><USER3> It's terrible that non-violent crimes should get you a life sentence.

<comment><USER4> I don't know how true that is.

I strongly suspect it isn't true at all. Politicians keep talking as if there are thousands of innocent people in prison, but then any reform tends to stall or backfire (i.e. releasing violent offenders to the public) or not result in much change.

In almost every case there are usually a plethora of prior convictions, or there was a violent crime (or a pattern of violent crime) underlying the conviction but the drug/non-violent conviction is what 'stuck'. In the same way, Al Capone's conviction wasn't really about non-violent/white-collar crime of tax evasion. The cases that are cited where there are no associated factors are, I suspect, few and far between and are largely outliers.

And it makes sense. The justice system is already overburdened. Just as a matter of practicality, neither judges nor prosecutors wish to send non- violent offenders to prison. The last season of Serial, which followed a bunch cases in the Cleveland court system over a few months, showed this. People who deserved to go to prison, went prison. People who didn't (even if they were guilty), didn't.

From a big-picture perspective, the vast majority of people in prison deserve to be in prison.

<comment><USER5> If we anticipate substantially reducing prison populations, we sure as hell had better expect to release violent offenders to the public. See Pfaff's paper and subsequent book about this; violent offenders _are_ the over- incarceration problem.

<comment><USER4> Yep, but that's not what is being argued when 'mass incarceration' reform is discussed. It's always implied it's all non-violent offenders who are in prison for marijuana possession.

</comment></comment></comment></comment></comment><comment><USER6> Much more upbeat story than "Brooks was Here".

</comment><comment><USER7> Login bypassed: [http://archive.is/HMVDp](http://archive.is/HMVDp)

</comment><comment><USER8> I think convicted senior citizens should be house arrested, not jailed;

</comment><comment><USER9> I'm confused, according to the article this woman, at the age of 55, as a heroin addict, got life without parole for carrying heroin in a sock across town.

What a waste of taxpayers money and a complete shambles.

<comment><USER10> With two simple rules you could clear up so much absurdity in the criminal justice system and in the public perception of the law:

\- No victim, no crime

\- Legal != moral

<comment><USER11> By purchasing heroin/cocaine you are virtually guaranteed to be financially supporting a narco-terrorist group.

<comment><USER12> One could extend that kind of reasoning to a number of so-called "legal" products and services being sold today.

Either directly or indirectly (degrees of separation), many simple acts of commerce fund things most would find abhorrent.

Diamonds are most definitely on that list still - despite all the noise and promises made; I am fairly certain so-called "blood diamonds" are still a part of the trade.

Gasoline (more concretely, oil) is another.

It wouldn't surprise me to find out that various renewables have their own problems in a similar vein...

You can probably think of others.

<comment><USER13> The clothing industry also. There are countless clothing mills around India, Vietnam and a few other countries. Child labour is king there. Fast-fashion gave rise to this along with our insatiable desire for newer and cheaper clothes.

There is also the coffee industry, which at least has the fair trade program, that helps the small farmers get the money they deserve instead of being pressured to lower prices by the distributors.</comment></comment></comment></comment></comment>


Ask HN: Need help deciding on a new marketing person for 2 person startup - <AUTHOR>

I am 24. During my studies, I launched a web app (4 moths ago) as a side project with my friend. Initially the response was ok, there were a about 300 signups. Then, the signups stopped and it hasn't picked up since then. We stopped working on it a couple of months ago.
Recently, I was contacted by a product/marketing person interested in the project who wants to help us with it. I have no idea how this works, but I do think that marketing can help it get up again.
How do we proceed with this? How do I find out if he is serious and good enough to be involved with it? What kind of questions can I ask him to see how he can help with the marketing? And, how do we decide how much equity he gets? Is it usual to have an equity based on milestones or you give it up right away before someone starts working? <comment><USER2> DO NOT offer equity right away. Marketing/Sales guys are good at selling themselves, but bringing in revenue is tough. Not everyone can do it consistently.

Let them have a stake in the sales (say 10-15%) and make sure it's transparent that sales are coming through him/his efforts. Assume you'll be hiring more on these kind of terms.

Once you see something rolling, you can offer some equity accordingly.

You'll know how confident he is when you tell him there's no salary, only %age of sales he brings in.

<comment><AUTHOR> Thanks. I didn't think of this before. It certainly looks like the way to go.

<comment><USER3> Suggesting a sales or marketing employee operate solely on commission w/o equity in a startup isn't a great way to gauge their confidence. It's a good way to ensure good sales people run away.

With a new product (or with an old product repurposed for a new industry), it can be hard to predict the sales cycle or to develop the appropriate pricing strategy. If the salesperson is strictly dependent on commission, they'll do anything to close-- including sell the product to the wrong people or with the wrong expectations. This will reduce the amount of useful feedback you get and waste everyone's time.

Someone recently offered me this deal at a startup I otherwise found very compelling. I didn't take it.

</comment></comment></comment><comment><USER4> Assuming that you are not making any money with this project at the moment then you don't have a lot to lose - except perhaps more time on a project that ultimately goes nowhere.

With a low risk then you can offer a new founder up to a third of the business. The challenge you should set is to "find the customers". This may well involve at least a partial "pivot" \- and that is where the extra work comes in.

You don't have to incorporate and formalise the arrangement until the new revenue stream is located and at least partially proven (you can just write and sign some sort of informal agreement). Once you have a clear view of your customers, what they want from the product and how much they are willing to pay then you have a business and a proven marketing founder.

<comment><AUTHOR> Thanks for the reply. Yes, we are not making any money right now and have nothing to lose.

We surely want to give it a try with the right person. The main point that we are still not sure about is what kind of questions we should ask him to make sure that he is a good fit for this. If this was a developer position, I would know how to evaluate him, but I have no idea about what it takes to be a good marketer. I guess we will need to let him try and then see how it goes.

<comment><USER4> Yup, I understand where you are coming from. You can look at someone's job history if they are not too young to have a "track record" (job hopping would be a counter-indicator while promotions would be a positive).

I was lucky enough to have been a mentor for a pre-accelerator start-up last year alongside someone who proved over a few months to be an effective marketeer and manager. That start-up foundered for all sorts of reasons but the marketing person is now a key part of the team for my current start-up.

I suppose I am saying - the only way to find out is to give them a try. If someone is genuinely enthusiastic about the product and has some positive ideas and the cultural fit feels right then why not?

<comment><AUTHOR> Yes, your words are quite encouraging. I'll give it a try and see how it goes.

I am not a people person and never been to that line (marketing, hiring) so it feels a bit different and new altogether. At some point, this has to be done, so why not now.

</comment></comment></comment></comment><comment><USER5> How were you contacted? Is this through a personal connection or is he fishing?

I'd suggest to ask for references. Follow through references and ask about how he/she helped them. I'd also make it clear up front that you have little capital to pay him or any marketing strategy - he might be assuming you have the money to do so.

Equity is typically not milestone based. You would typically agree to a form of 'sweat equity' \- meaning the amount of work he puts in for a piece of the company.

</comment><comment><USER6> Make sure any equity vests over 3-4 years, with a 1-year cliff. If the marketer doesn't do well, fire before year 1 and lose no equity. Also, I'd have him just volunteer for a week or two before as a trial/interview. I have no idea how you could interview him in a conversational way effectively.</comment>


Testing Node.js With IPv6 – First Step, Does It Work? - <AUTHOR> http://code.danyork.com/2011/01/20/testing-node-js-with-ipv6-first-step-does-it-work/

<comment><AUTHOR> Note that I posted a new article summarizing the fact that yes, Node.js works with IPv6:

<http://news.ycombinator.com/item?id=2127325>

</comment><comment><AUTHOR> Actually, the answer turns out to be... yes, it does! I need to update the article after a comment from Ryan Dahl that was left to the blog.

</comment><comment><USER2> I'll save you some time: No.

<comment><AUTHOR> Cute</comment></comment>


Show HN: US Hospitals Pricing Comparison - <AUTHOR> https://github.com/PraecantatioLabs/Asclepius <comment><USER2> Getting pricing information on hospitals is a good start and encouraging lower prices is good thing as well.

In addition, what we really need to get those insurance premiums down, is insurance programs that can selectively only cover cost effective treatment programs as well as legislation that protects people from overzealous hospitals that try to provide overly expensive treatment options.

</comment><comment><USER3> Is there a reason this project isn't just an open-source website as opposed to a Python project?

<comment><AUTHOR> Because you have to scrape all the hospitals in the US?

<comment><USER3> [https://data.medicare.gov/data/hospital- compare](https://data.medicare.gov/data/hospital-compare)

<comment><AUTHOR> Ooh thanks!

</comment></comment></comment></comment><comment><USER4> Good start, but we need more (and deeper) initiatives like this.

</comment><comment><AUTHOR> Just started the project, please feel free to send a pull request for your hospital.

<comment><USER5> Why have a custom contribution agreement rather than just using the contribution agreement built in to the apache v2?

<comment><AUTHOR> Company policy</comment></comment></comment>


How Big Pharma Was Captured by the One Percent - <AUTHOR> https://newrepublic.com/article/149438/big-pharma-captured-one-percent <comment><USER2> _Of the 210 medicines approved for market by the FDA between 2010 and 2016, every one originated in research conducted in government laboratories or in university labs funded in large part by the National Institutes of Health._

This is only true if you really stretch the definition of "originated". Discovering the structure of a receptor is not inventing a new drug. Optimizing a new assay is not inventing a new drug.

The paper this article references failed to note _" >90% of this funding represents basic research related to the biological targets for drug action rather than the drugs themselves"_. For a more accurate representation of where new drugs come from, I'd reference Derek Lowe's summary of the nature article.[1]

 _attempts to quantify how many drugs can be directly attributed to public- sector research, such as the 2011 study that estimated the 1990-2007 share at about 9%_

[1][https://blogs.sciencemag.org/pipeline/archives/2019/05/28/wh...](https://blogs.sciencemag.org/pipeline/archives/2019/05/28/where- drugs-come-from-a-comprehensive-look)</comment>


This Woman Scored $1,200 A Month In Fancy Dinners Using Match.com - <AUTHOR> http://www.businessinsider.com/confessions-how-she-made-1200-a-month-using-matchcom-2011-11

<comment><USER2> guys do the same thing.

Replace "$1200 a month in fancy dinners" with sex.</comment>


How to become a bank (2016) - <AUTHOR> https://www.bankofengland.co.uk/-/media/boe/files/prudential-regulation/new-bank/seminar-slides-1010.pdf?la=en&hash=CC03BF5728A8DD96D28AE26DEFB3E95BF1F03333 <comment><USER2> The UK regulators have done amazing work making it possible to start new "challenger" banks. We started 3 and a half years ago, so this kind of guide would have been super useful for us at the beginning.

It was a bit more opaque back when we did it, before us only a handful of new banks had been created since Metro bank, and that was the first in 125 years..

<comment><USER3> What you guys are doing is quite interesting and it's made my job all the more interesting.

I do wish I could do the same as what you've done and disrupt the Canadian banking system.

The UK banking system seems incredibly more efficient and fair to consumers than the Canadian banking system does.

<comment><USER4> Lets do it!

\- fellow Canadian annoyed by our banking system

<comment><USER3> I'd be happy to have a chat if you're interested.

<comment><USER4> Let's have a chat at a minimum.

<comment><USER3> Do you have an email address?

<comment><USER4> moltar at moltar dot net

</comment></comment></comment></comment></comment></comment></comment><comment><USER5> I do wonder about some of the new digital banks. For example, Atom Bank PLC requires all banking be done via smartphone. I'd not be comfortable doing banking on my smartphone but even if I was their Terms and Conditions make me nervous[0].

It's the usual stuff about the customer being responsible for everything and they can change the terms at any time without option to accept or reject them. But beyond that it also appears to say that you're responsible for using a smartphone that supports their app. Given they can drop support for a device at any time, this has the potential to lock you out until you get a new phone.

I'm also not sure about their use of biometrics for security. I wouldn't use an ordinary front facing camera to unlock my phone so why would I use it to secure my bank account?

[0] [https://www.atombank.co.uk/application-terms-and- conditions](https://www.atombank.co.uk/application-terms-and-conditions)

<comment><USER6> You should see the Revolut (they are applying to become a bank) terms.

Mind-boggling stuff like you being responsible for their bugs:

> 24.14. To the extent permitted by applicable law, Revolut is not liable, and > you agree not to hold it responsible, for any damages or losses (including, > but not limited to, loss of money, goodwill, or reputation, profits, or > other intangible losses or any special, indirect, or consequential damages) > resulting directly or indirectly from:

> glitches, bugs, errors, or inaccuracies of any kind in the Revolut Services;

> 17.2. If for any reason (including, but not limited to, any technical errors > on our behalf or on behalf of our third-party providers) you have a negative > balance in your Revolut Electronic Money Account, you agree to immediately > Top-Up the required amount to correct the negative balance, such amounts > being due without the need for previous notification. If you fail to do so:

Banks are notorious for their terms, but this is taking it to a new level. Move fast, break things, and don't be responsible.

To be fair, I'm not sure how enforceable these clauses are, I find it hard to believe that a judge would side with them if a customer's money suddenly vanish.

<comment> robinson-wall It doesn't have to be this way - e.g. [https://monzo.com/terms/](https://monzo.com/terms/)

Disclaimer: I work for Monzo

<comment><USER7> Hey there!

Do you guys have some Scala in your code base ? or do you strictly use Go?

<comment> robinson-wall We have just one Scala service - it's not a language we use day to day.

We're almost entirely Go, but do use other languages where it makes sense to - usually because there's a useful library, or great tooling / community for a particular use case. For example we have a handful of Python services for ML.

</comment></comment></comment></comment></comment><comment><USER8> We're about to start the process of getting authorized as a bank in the UK (we want to be a digital-only bank that handles client money for companies like Coinbase, PayPal, etc).

The Bank of England and the FCA's resources on how to go through the process have been invaluable. The founding team is American and we've literally relocated to the UK because of the friendlier regulatory environment in order to do this.

<comment><USER9> Nice. I'm looking to work with a company like yours in the near future. Are you guys based in London by any chance?

<comment><USER8> We are! Feel free to shoot me an email - david at griffin.sh if you want to find a time to connect.

<comment><USER9> Done! Btw, Griffin looks cool!

</comment></comment></comment></comment><comment><USER10> Seen this before, but it's very cool. The sector in the UK seems a lot better than Australia - here you need a minimum of $50 million in Tier 1 capital (share capital and retained income) to even start the process to become an Authorised Deposit-taking Institution.

Sure, banking is a serious business, but I think it'd be beneficial to have a special category for small startup banks only requiring $5 to $10 million or so, with adequate supervision etc.

The problem we have though is that the culture of our banks is rotten to the core, and dominated by four main players. The regulators (ASIC and APRA) are underfunded and mainly turn a blind eye to a lot of what goes on (mainly going after smaller financial services companies who can't afford the same kind of lawyers as the banks). We're only finally having a proper enquiry now after investigative journalists having uncovered a lot of this years and years ago, and most people are pretty shocked at what's going on.

I think the sector could benefit from smaller players coming in (hopefully with better morals), but the regulatory requirements are helping to protect the big banks' strangleholds.

</comment><comment><USER11> This seems to be a great balance between helping new banks get off the ground while keeping a tight oversight regime in place. For an interesting example of what happens when you deregulate your banking sector too much: I remember doing research on the Ukranian banking sector about 10 years ago, there were over 900 banks in operation. Many of them seemed to be oligarchs setting up banks and leveraging their capital to lend their own/their friend's corporation a ton of money. The borrower would then simply default on the loan and the bank would go bankrupt...

<comment><USER12> I suppose [https://en.wikipedia.org/wiki/Albanian_Civil_War](https://en.wikipedia.org/wiki/Albanian_Civil_War) would be the extreme worst case?

</comment></comment><comment><USER13> After Northern Rock, it seems fairly reasonable that companies starting a banking operation be decently equity-funded and organised. Liquidity requirements for all banks were raised by European financial regulators after the crisis. There's even a "mobilization" phase where a new bank is allowed to run with looser compliance for 12 months while they get started.

"To authorise a bank we must consider it resolvable (in bankruptcy)" is also a sensible bit of planning: you're not allowed to dump a toxic collapse on the central bank and run away.

The bit about "calling yourself a bank" reminds me of [https://en.wikipedia.org/wiki/Banknotes_of_the_Black_Sheep_C...](https://en.wikipedia.org/wiki/Banknotes_of_the_Black_Sheep_Company_of_Wales_Limited)

</comment><comment><USER14> Does such a guide exist for the US?

An investor in a startup I was working for made his way onto the board of a local (small town) bank. He was already very wealthy from real-estate. He was quite proud of himself for making it onto the board of that small bank. It seemed odd to me because he was already so wealthy, he didn't really need to be on that tiny bank board.

I asked him about what it took to get onto the board, how one starts a bank and so forth. I'll never forget what he said: "Owning property is a right, owning a bank is a privilege".

In retrospect that does seem to be in line with how one gets into banking (as an owner) in the United States.

</comment><comment><USER15> I'm a British citizen but I live in the USA. I want to maintain an account in the UK - but this is becoming harder and harder. The mainstream banks want a balance of tens of thousands of pounds, often hundreds of thousands of pounds, before they'll allow it.

Currently I have an account with [large famous bank] who think I'm still living in the UK. If they ever find out I'm not, the terms of my account say they're allowed to close it.

So this is one thing I'd love to see from "new" banks - services for people who are UK citizens but do not reside in the UK.

</comment><comment><USER16> There was the Bank of Dave, an interesting experiment a few years back in the UK; I read the book, I think they made a documentary movie too.

</comment><comment><USER17> Very interesting content and I hadn't encountered it before, but can we get a (2016) tag as it's not 'new'.

</comment><comment><USER18> Sorry if this is offtopic, but this was one of the aspects that I found very interesting about Bitcoin.

Because it's a protocol, in theory you just need to have the software installed in your computer and you can start being a bank.

This is similar to the web for publishing. You just need to plug your computer to the internet and start serving your website. Before this if you didn't have the time, energy and luck of finding a publisher it was hard to publish a book.

This is a huge simplification but I just wanted to highlight one interesting aspect of cryptocurrencies.

<comment><USER19> There was a short period in the USA, known as the wildcat banking era in the 1840's, when it was indeed possible for anybody to setup a bank. There's quite an entertaining paper from the time that describes the resulting chaos:

[http://www.jstor.org/stable/2338493](http://www.jstor.org/stable/2338493)

And yes, it pretty much describes the current crypto scene as well.

<comment><USER20> This is a terrific little read, thanks!

</comment></comment></comment><comment><USER21> From the headline I thought this was going to be one of my favorite stories:

"How I set out to simplify ordering Starbucks and created an internal banking system."

[http://royrapoport.blogspot.com/2011/05/coffee-and-its- effec...](http://royrapoport.blogspot.com/2011/05/coffee-and-its-effects-on- feature-creep.html)

</comment><comment><USER22> I agree the entry fee of $50,000 is 1/3 of the cost in the US - I hope a lot of start-ups will add banking services to their business models as such (cash -> bitcoin <-> cash and in any amount giving payments to 3rd world partners for goods and services) Thus the Belt&Road project would have one currency

</comment><comment><USER23> I thought about this when Bank of America stopped offering loans to gun manufacturers who sell assault-style weapons to civilians - my first thought was, well, there's a market opportunity for a "startup" bank.</comment>


Script to do instant MD5 collisions of any pair of PDFs - <AUTHOR> https://github.com/corkami/pocs/blob/master/collisions/scripts/pdf.py <comment><AUTHOR> Announced by the author here: [https://twitter.com/angealbertini/status/1075417521799528448](https://twitter.com/angealbertini/status/1075417521799528448)

Commit: [https://github.com/corkami/pocs/commit/3832f62d8aad64d541c5d...](https://github.com/corkami/pocs/commit/3832f62d8aad64d541c5d1fee755f30c44535374)

Readme: [https://github.com/corkami/pocs/blob/master/collisions/READM...](https://github.com/corkami/pocs/blob/master/collisions/README.md#pdf) ("With this script, it takes less than a second to collide the 2 public PDF papers")

<comment><USER2> The author is also the person responsible for a lot of the polyglot files from the PoC||GTFO series: [https://www.alchemistowl.org/pocorgtfo/](https://www.alchemistowl.org/pocorgtfo/)

</comment></comment><comment><USER3> I note this script takes two existing PDFs as an input and produces two new PDFs that collide with each other as output, but they do not collide with either of the originals. Thus this does not enable the obvious attack of creating a PDF that contains different text but collides with an existing PDF that you do not control. It does enable some other forms of duplicity, but only if you are the source of both documents.

</comment><comment><USER4> This has been possible for a long time, right? Is there anything particularly innovative about this approach which has not been done elsewhere?

<comment><USER5> It's been possible to create pairs of colliding PDF files. Taking any two existing PDFs and creating a colliding pair while keeping the same visible rendered output is probably what's new.

<comment><USER6> I don't think that's new either, I remember doing that in 2015, to demonstrate an issue.

<comment><USER5> There's this, from 2015: [https://news.ycombinator.com/item?id=8555079](https://news.ycombinator.com/item?id=8555079)

And colliding SHA-1 in pdf form in 2017: [https://news.ycombinator.com/item?id=13723892](https://news.ycombinator.com/item?id=13723892)

Not saying you didn't, but I'm unable to find any earlier reference to making 2 arbitrary, existing pdf files collide with MD5.

<comment><USER6> I must have done the first link's thing.

But once you can do that, this isn't new. Assuming you can append garbage on a PDF, it's the same solution.

Admittedly I know how easy it is to say, "That's obvious!" in hindsight, but... isn't it?!

<comment><USER7> The fact that he produced something easy to see helps cement in the mind of more people exactly how possible it is. It's a benefit not in the sense that it was impossible before, but rather a benefit in the sense that more people will really believe that it is possible.

<comment><USER6> I didn't say it wasn't a benefit, I said there is no new innovation here. I was kind of wrong, but only insofar as it uses a different way to embed arbitrary garbage in a PDF instead of directly at the end. The concept is still the same (as it has to be).

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> Also relevant, a PDF SHA-1 collider: [https://github.com/nneonneo/sha1collider](https://github.com/nneonneo/sha1collider)

</comment><comment><USER9> sci-hub should really switch away from MD5 in their SQL dump if the future wants to be sure to be looking at the same (or same quality) article</comment>


Newest 'sql' Questions – Stack Overflow - <AUTHOR> http://stackoverflow.com/questions/tagged/sql <comment><USER2> I don't understand why this link is here. Am I missing something?

<comment><AUTHOR> I thought it was pretty real-world concrete issues.

e.g. SQL is used by a lot of almost-programmers: doing data analyses, accounting, reports, marketing, etc.

Basically trying to get Hacker News out of its own bubble :).</comment></comment>


Talentia – We build your freelance talent through ML Algorithms - <AUTHOR> http://talentia-algo.com

<comment><USER2> posted link: [http://talentia-algo.quickmvp.com](http://talentia- algo.quickmvp.com)

at least: [http://quickmvp.com](http://quickmvp.com) looks interesting

</comment><comment><USER3> Signup forms aren't enough to make a Show HN, so we've taken that out of the title. Please see [https://news.ycombinator.com/showhn.html](https://news.ycombinator.com/showhn.html).</comment>


Edward Snowden: The World Says No to Surveillance - <AUTHOR> http://www.nytimes.com/2015/06/05/opinion/edward-snowden-the-world-says-no-to-surveillance.html <comment><USER2> Those mistaking Snowden for being naive and idealistic, note that he _may actually believe_ there has been progress.

Sadly, I don't have a source, but I remember him saying in an interview that when he handed over the documents to Greenwald and Poitras, he thought nothing would come of it. That it would be forgotten and never get on the radar.

That isn't the case.

Sure, we have a long way to go, and the situation is much more nuanced than he makes it to be, but from his view, this is _progress_.

</comment><comment><USER3> I don't disagree with Snowden's sentiment, and I know it's possible he didn't write the headline...but "The World Says No to Surveillance" is simplistic and inaccurate.

The obvious rebuttal is "But China"...but beyond that, among the Western powers: France and Britain, among others. And Snowden acknowledges this (which is why I don't assume he wrote the headline, necessarily):

> _Spymasters in Australia, Canada and France have exploited recent tragedies > to seek intrusive new powers despite evidence such programs would not have > prevented attacks. Prime Minister David Cameron of Britain recently mused, > "Do we want to allow a means of communication between people which we cannot > read?" He soon found his answer, proclaiming that "for too long, we have > been a passively tolerant society, saying to our citizens: As long as you > obey the law, we will leave you alone."_

Again, it's not that Snowden is wrong in his opinion about surveillance. But it's wrong to think that the world, or any kind of non-U.S.-status quo, is anti-surveillance. The battle is much more uphill than that and those who want to fight it have to keep that in mind.

<comment><USER4> The world's response is more than the aggregate will of the governments. To take your case of China, I would be wary of claiming that the people of that country are content with the surveillance state in which they live. Rather, they are an oppressed people, and the surveillance state does them no favor in this regard.

Ed Snowden's larger point was about the public reaction to learning they were being surveilled; obviously, governments already knew whether they themselves were spying. In this sense I think the world has indeed said no to surveillance, it's just that in some cases the government doesn't wish to listen (well, not to that, just everything else!).

<comment><USER5> A few years back, I visited China for a couple of weeks and I was pretty surprised by the people's opinion about the government and government actions that we in the west perceive as abhorrent. Short version: For most of the 20th century, China was in deep shit and bullied by almost anyone who felt like it. In the eyes of many Chinese people, the economic success and regained self- esteem justify almost any measure the government deems necessary. Even if that leads people to be ok with things that we might find horrible, I kind of see where they are coming from. Bottom line: as westerners we have no idea what the world looks like from the Chinese perspective. For many or most Chinese people, the current system doesn't stand for oppression but for the liberation from oppression. I'm sure my story is grossly oversimplified; Chinese readers, please correct me.

<comment><USER6> Not Chinese, but I've lived there.

A lot of people hate the government, but only in the same way many Americans hate the government. And you're right that they see the CCP as being reasonably good, compared to the alternatives they've had.

In many ways, the central government is much better liked than the local / provincial governments, as they are the ones who clean up corruption when people complain.

No-one likes internet filters (except for the "think of the children" crowd - the filters also block porn). But anyone who really cares can get a VPN, and most people just use puns or images to say things that would normally be filtered.

Yes, you can be hauled to the police for a "tea chat" (literally a cup of tea, and a chat) if you're a popular blogger who is stepping on the wrong toes. But it's not like they're shooting people for dissent - the process is roughly: deleting posts, threats, contacting family / employers, eventually maybe house arrest, fines, prison, etc.

Black arrests are typically internal party matters (e.g. corrupt officials), people protesting in person, organisers, and people going to a capital to petition a higher level of government (some local leader with gang-connections might try to keep people from petitioning his boss).

What annoys the Chinese isn't free speech, per say. It's corruption, pollution, unsafe products, abuse of eminent domain, etc. And things like jobs, education, healthcare, and house prices - they've got a lot of problems, and free speech isn't the biggest one.

Revolutions are expensive. It's a crap-shot whether you get real reforms, or a new strong-man (think Putin). Mostly, they want gradual reform, and that's what they tend to get.

<comment><USER7> > But it's not like they're shooting people for dissent - the process is > roughly: deleting posts, threats, contacting family / employers, eventually > maybe house arrest, fines, prison, etc.

Wow. Also, they do shoot people for dissent. Those who aren't cowed or jailed.

> they've got a lot of problems, and free speech isn't the biggest one.

Not the biggest, but one of the most central. You can't agitate for anything you need if speaking out is forbidden, and you can't organize if you're being monitored.

> Revolutions are expensive. It's a crap-shot whether you get real reforms, or > a new strong-man (think Putin).

Very true.

<comment><USER8> Agitating for any reason is stupid if the current powers that be are already doing all they can to fix the issues you yourself prioritize highest.

<comment><USER7> There are seven billion people and maybe 200 'powers'. What's the chance any, let alone yours is doing the exact thing, in the exact way, that you prioritize highest?

Also, agitation is what we call speech we don't like. If we do, it's lobbying, or raising awareness, etc.

The test of a society is if speech is allowed (not forbidden) even if the powers-that-be consider it agitation.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> "As you read this online, the United States government makes a note."

<comment><USER10> "Let's give them something to talk about.' \- Bonnie Raitt

<comment><USER11> Love, for the NYT? surely you jest.

They've got a long way back before they have my trust, let alone my love.

</comment></comment></comment><comment><USER12> I'm no apologist for someone who works for our government and publicly releases secrets that may damage the nation's security - and I've been fooled before - but I was quite moved by the HBO documentary - both in describing his situation and point of view, but also with his intelligence and way he conducted himself.

He would and will have to very sharp (and lucky) to stand any chance against the forces aligned against him. I think a United States congressman publicly called for his murder at one point. I can't imagine. I think, if he does truly care as much as he claims, he will inevitably have come back to the US to face trial. The time is coming when that will be the most important thing he can do to advance his cause.

<comment><USER13> I would prefer to see him pardoned within the next 1-3 US presidents.

<comment><USER14> If Rand Paul becomes the next president, I bet we'll see it in his first term.

</comment></comment></comment><comment><USER15> Snowden is a traitor and deserves to be locked up.

<comment><USER16> I think technically you are correct but ethically you are way off base. He did the right thing. I'd like to think that if I was in his position I would have had the balls to do what he did. Not sure that I have them.

Instead of waving the traitor flag you might look at what he exposed and get pissed about that. That's the real problem.

One could make the argument that he is a patriot and a hero. He's trying to get our country to actually uphold our constitution. Seems like he made the right choice at a huge personal cost.

</comment></comment><comment><USER17> I don't get this guy. He seems smart and naive at the same time. He's living right under the nose of one of the largest spy agencies in the world: the KGB. Okay, I can see he doesn't want to talk about them. Fine. But he seems to call for the destruction of the American spy agencies. Really? Russia, China, and all of our "allies" ain't going to close their spy agencies even if the US does. What do you want? America with no spies operating in a this world? How about we give up all of our weapons too? That will make the world a safer better place? Right? I just don't get this guy.

<comment><USER18> Why do you get the sentiment that: 1) he wants to destroy american spy agencies? 2) only american spy agencies

If we presume his call against the current mass surveilance programs equates with the destruction of the NSA(which I can't really agree with), then ypu would also conclude he dislikes the burgeoning mass surveilance from other countties, e.g. France, the UK and others listed in the article.

He didn't mention Russia explicitly, but I cannot fault his political tact considering his situation.

I don't think your interpretation of his words is very charitable. Their underlyimng message is a poaitive one - people reject something they aren't comfortable with and using many avenues(political, technological, social) they enact change to combat it. In our age where voters are largely disenfranchised, this is a positive demonatration of the power we hold as a society.

There is a discussion to be had about the authority spy agencies should have. Perhaps eventually a reasonable surveillance program with checks and balances may be enacted, which people are content with. We wouldn't even have this conversation, however, if not for people like Snowden. The US government preached total secrecy in the name of "national security", and basically said "trust us, you don't need to know".

Thanks to Snowden, we are, with some hope, on yhe road to such a conversation. That's what I "get" from him.</comment></comment>


Can Remnants of Ancient Life Show Us How to Live Wisely into the Future? - <AUTHOR> http://nautil.us/blog/can-remnants-of-ancient-life-show-us-how-to-live-wisely-into-the-future

<comment><USER2> I see a war here: the endeavor to reprocess spent waste as fully as possible and the industries that would create expensive burial chambers for them instead.</comment>