Re. No NDAs: What Should Idea People Do? - <AUTHOR> http://blog.jpl-consulting.com/2012/04/re-no-ndas-what-should-idea-people-do/

<comment><USER2> The "no NDA" thing is getting out of hand. NDA's have a time and a place. That place is not when you're meeting someone to talk for the first time. Nobody wants to increase their legal risk for a chance meeting, which will likely not turn into anything interesting - especially contract developers, investors, and the like (whose future business may be impacted by NDA's).

The answer is simple: state your idea in terms that don't require an NDA. When the conversation gets more interesting ad it's time to divulge the secret sauce, _then_ ask for an NDA. If you've done this right, even the more NDA- averse among us will sign one. If you don't have secret sauce, you don't need an NDA - it's that simple.

What is secret sauce? If you can just think it up, it's not secret sauce. Secret sauce requires lots of tangible work. Innovative, _tested_ algorithm: secret sauce. Financial resutls: secret sauce. Difficult to acquire dataset: secret sauce. Unbuilt concept: not secret sauce.

The concept to understand here is that when you ask someone to sign an NDA, you are asking them to give something to you. To make that work, you have to give them something in return - hopefully a high confidence that you're not wasting their time. Or money. _Something._

That said, the surest red flag of them all is a premature NDA ask. In my experience it is literally a 100% indicator of someone who is not ready to be talking to people about their ideas.

<comment><USER3> Unique application of deep domain knowledge: secret sauce, or no?

<comment><USER2> If it's just the combination of your personal experience and an idea, no. As an investor, or developer, or competitor, it's still just an idea. You cannot transfer your deep domain knowledge to me over coffee.

<comment><USER4> Yes, definitely. If you're talking to an investor, they're not going to be able to fully appreciate a deep domain insight anyhow. You tell them about what they can appreciate: the size of the market, the cost of bringing your product to market, and the problem you are solving for your future customers.

<comment><USER3> The article implied it was a conversation with a business, rather than an investor.

<comment><USER4> In which case, you have a different limited conversation for the initial meetings. There's even less need to tell a prospective developer about the secret sauce.

</comment></comment></comment></comment></comment></comment><comment><USER5> I'm a pretty big believer in the idea the ideas are _emergent_ phenomena. On creative days, I can average an idea a minute. Most of these are things I've heard already and forgotten (except some small part in the back of my head) or combinations of 2 or 3 comments/blogs or papers or whatever I've read here or elsewhere. Also most of them are crap. An even higher portion of the "original" ones are crap. But the ones that make it through my internal filter are usually not full ideas in themself, no matter how excited I am about them. (and again, most of those are crap too)

I suspect a lot of people work this way, based on conversations etc. Some people just don't realize it. A lot more ideas have already been done/started by someone.

What does this mean to me? It means that a lot of the new things are logical, or semi logical progressions (or at least natural extensions via human thought).

As I see more of this, I've started tracking how bits of thought and idea float through groups/networks of people[1]. I've decided that the basic notion of "my idea" is broken. In my experience ideas are usually the result of bouncing thoughts through a pile of distributed human nodes, getting filtered/modified/improved, until finally someone has "a flash of brilliance". Then _finally_ a good idea emerges.

So I don't worry about people stealing my ideas. They probably aren't mine. The are _ours_ (for a pretty large our). Instead I've decided that unless I am prepared to execute, and can gather the team to do so, the best course of action is to keep my thoughts streaming through the network. They will grow and build, and may help others get to execution of something awesome.

When I do plan to execute, then I will be a bit more careful about talking and spreading the thought, but I still find that until something solid is being produced, an NDA (or social implicit version thereof) really isn't needed. Everyone that can execute is probably already executing their own ideas and doesn't have time/energy to "take" it from you. There are more ideas than doers. (corollary: those who will try to steal probably can't execute...)

Finally, since there are more ideas than doers, even if your idea is taken, there is another one coming down the pipe tomorrow :)

[1] This is an interesting game. It is very hard to figure out how to formalize (probably because I don't care that much) but for example I've tossed some thought out in meetings, then seen it appear later in a another meeting in better/different form a week or two later, no attribution, but thats ok, its just experiment. Similarly, in college when I bartended (and thus was a member of a small core network of college-town bartenders with lots of links to the rest of the campus) I would play the 'rumor game'. I would randomly mention stuff (true or not) about me near known gossips, just to see how it would bounce around the network and see what came back. Highly amusing, and very informative in relation to this too.

<comment><USER6> You should really read Napolean Hill's "Think and Grow Rich." Your comment was written by him in the 1920's.

He discusses how there are two types of creativity, one comes from applying your knowledge and experiences to other situations, and the other comes from what he calls, "infinite knowledge" that is floating out there and can be tapped into under the right circumstances.

<comment><USER5> Thanks for the pointer!

</comment></comment></comment><comment><USER4> It's very rare that I see the "my idea alone is worth money" thing from people who have built actual businesses.

I know that I would never pay for an idea alone. That's partly because it's not like we have a dearth of them. If we didn't have a new idea for the next year, that wouldn't be a problem; we have a giant backlog of excellent ideas. But we'll keep having new ideas. We're constantly looking at user experience and usage data, and ideas keep happening.

More than that, though, I don't think an idea from an inexperienced person generally has a lot of merit. With a surface understanding, I think their ideas can have only surface appeal. Once you get into the nitty-gritty of implementation, you need a lot more depth than an amateur can provide.

Imagine somebody going to a well-known chef and saying, "Hey, I don't know how to cook and I've never run a restaurant, but I go to them sometimes and I have this great idea. You should pay me 10% forever!" The would-be genius knows nothing about food costs or good staff or marketing or how to shmooze a critic. Nothing about relative real estate costs or buildouts or decorating or who to pay off to get a permit expedited. Nothing about balance sheets or seasonality of demand or tax regulations. Nothing about nothing, basically, except that they think it would be fun to go to a tiki bar/restaurant. They would be lucky if the chef doesn't answer with knife in hand.

Having ideas is easy when you don't know anything.

<comment><USER3> pretty much a copy of <http://news.ycombinator.com/item?id=3868084>, but:

The case of having ideas when you don't know anything, I think we all agree, is silly for having a "secret sauce." The more interesting discussion is what to do when you have an idea and you know a helluva lot?

This is the case where I think you have to be careful. Yes, ideas without execution aren't worth much- but if your executable idea lands in the hands of somebody who can out-execute you, you are sunk unless you protect it. In fact, you are probably sunk even if you do protect it, but at least you may have a life raft.

<comment><USER4> If you have that much depth of knowledge, then I think the idea is going to have similar depth. In which case you come up with a short summary that doesn't give away any of the key insights.

But even if you're generous with information, the idea probably isn't at that much risk. The idea would have to end up in the hands of somebody who not only could out-execute you, but also has the time and interest to do so, is smart enough to recognize the value of your idea, and isn't already attached to some idea of their own.

<comment><USER7> I think that last sentence deserves emphasis. There's a lot of "NIH syndrome" ("Not Invented Here") around -- and the deeper someone's domain knowledge, the more likely they are to suffer from it.

</comment></comment></comment></comment><comment><USER8> Main takeaway should be this sentence:

"[In addition to the idea, bring to the table] something about how you are the best person in the world to lead its execution"

Also love the reference to the Aiken quote in the comments: "Don't worry about people stealing an idea. If it's original, you will have to ram it down their throats."

<comment><USER9> Completely agree.

And I might add, even if you don't have any rare talent or skills and you feel you have "just an idea", you might get my attention if you convince me that you are truly motivated, that you will call people every month, clients and/or potential partners in order to validate the product and find real world data points that enable us to determine the direction the project should take or when we should pivot.

I might be interested if I can trust you are willing to do the important business and marketing work, the things that distract me from building and improving the product, and convince me you will do it with as much passion and dedication which I will put in designing, architecturing, engineering and coding.

If you bring this to the table and you look like you have good common sense and at least some curiosity about the technical side and technical constraints we will be working within (maybe, for example, you are even willing to learn to edit a few html files and check them in the repository, not to become the html guy, just so you get a basic understanding of this aspect of _your_ business) , I might just be willing to give you 50% of the business, even more in some cases!

</comment></comment><comment><USER10> Great article. I have made some iPhone apps and websites that have been moderately successful and it seems to pull all the "I have an idea" people out of the woodwork. Maybe it's a result of still being younger and around college, or just a bit older than college age people, but I can't even count how many times an acquaintance has been generous enough to "offer me half" of something of which they have no concept of the implementation of and expect me to jump when they bring nothing to the table.

Sorry to say it, but to all the 25 year old business majors out there...unless you have a big wad of cash or proven skills in another field you really don't bring much to the table of a startup.

The only idea I ever jumped on was by a talented artist who could create all sound and art assets for the game, and I accepted just as much to create a relationship with the person in case I needed them in the future as I did for their idea. In fact, the final game wasn't the idea they "pitched" me. We changed it completely, but because they brought a talent it worked out great!

<comment><USER4> I probably shouldn't mention it so publicly, but once you've built a profitable product, you are allowed to stab one of these "offer you half" business majors per year. You will shortly receive a handy wallet-sized card with the number to call for body disposal.

Remember: use your quota wisely. There are a lot of idiots out there.

</comment></comment><comment><USER11> Spot on reply to the question.

If the person with a great idea has something (very) substantial to offer a project based upon it then they are clearly a key component of the idea execution and should not fear discussing the idea with potential partners.

If the idea is all someone has then - frankly - no-one will want to listen to the idea in any case.

<comment><USER12> Absolutely agreed.

If you concede that it's all in the execution and can't make an argument for why you're the right person to see it executed -- then you've already admitted that you have nothing to offer.

Further, the idea of not trying because you're afraid the entrenched interest would crush you if they tried isn't compelling. As said before: it's all in the execution. And _what_ they're executing is as-important as how well they do it. Entrenched interests have resources, but they also have their own overarching business strategies and goals. And those don't always align with "what people really want".

Consider: everyone assumed Dropbox had to worry about iCloud and gDrive. But if neither Apple nor Google are particularly worried about supporting the platform-agnostic, arbitrary folder sync'ing bit that Dropbox does wonderfully, they're not even true competitors. [1]

[1] Google would rather you not use your local storage at all. Apple couldn't care less about clients or API access for Linux/Windows/Android/etc. As it turns out: Dropbox has little to worry about from them.

<comment><USER13> this does not work so well if you're probably about number 500,000 on the list of people worldwide who could best execute it - but if you do it first, you still have a solid chance of publicity and a reasonable shot at making 10x-100x the investment, and maybe more, combined with an almost inability not to at least get bought out by someone more competent for a mild profit (loss if you consider your personal opportunity cost, which an investor doesn't care about). This is a common scenario in my humble opinion.

I'm not saying this should change. When it does, and investors are happy to invest in people who admit they're about #500,000 on the worldwide list of people who can execute on this idea - well, that is so far into a bubble you're almost out of it again.

<comment><USER12> If you've recognized an opportunity earlier than others, you've had more time to think through the problem and its solutions. You've had more opportunity to think about how you can build a business around this solution. And you're probably more apt to forsee further advatanges and problems in that space. Lastly, hopefully, you have a unique take or insight into the problem that sets you apart from a project headed by someone doing a straight-forward implementation of the most obvious solution.

And if you're championing the idea and the need to execute at a certain level, you're clearly among the more motivated and dedicated, to say nothing of everyone else not out trying to make this happen.

These are attributes that _do_ make you compare more-favorably to the 499,999 other people who are perhaps more technically-capable of developing the solution.

Those other souls are either disinterested, unmotivated, undedicated, starting from further behind or perhaps running a would-be competitor that your would- be investor/partner has no ability to profit from.

If you can't sell that as uniquely qualifying you to execute, the problem isn't the existence of those 499,999 other people. It's either:

a.) your not leveraging the advantages you have. b.) your not actually having put the energy and thought and dedication into the problem as far as you could without further investment. c.) your inability to convince would-be investors and partners of a and b. (Some people _are_ just flat-out bad in the room.)

I'm not saying that a given project won't run into more-capable teams who are objectively better choices. But if there's anything remotely close to a few dozen of them actively out there pursuing the same solution space, you wouldn't even be able to get an investor interested in the first place.

<comment><USER13> Hi, You misunderstand. I'm not saying there is active competition. I'm saying, As a programmer, there are close to a million programmers who could execute this better in two weeks then I'm about to in the next month. But I'm still going to execute it over the next month. (Because no one else is doing it.) That means, despite my shitty execution, an idea is enough. No, this attitude won't get you investors. But it can get you something better: customers.

Above, I wasn't talking about actual competition, but your comment "If you concede that it's all in the execution and can't make an argument for why you're the right person to see it executed -- then you've already admitted that you have nothing to offer"

which you wrote in response to: "If the person with a great idea has something (very) substantial to offer a project based upon it then they are clearly a key component of the idea execution and should not fear discussing the idea with potential partners.

If the idea is all someone has then - frankly - no-one will want to listen to the idea in any case."

Basically, I "disagree with" the two quotes above (I don't actually disagree, since it is completely correct: no-one will want to listen to someone who doesn't say they're the best in the world at it).

I am saying that to ACTUALLY succeed (as opposed to convincing someone that you will), you don't have to be able to offer something VERY substantial above the idea. You do NOT have to have ANYTHING that makes you a VERY key player: it's enough to just have an idea and make it barely work, with a solution that there are a million people who COULD do it better in two weeks, but who aren't. I'm saying I don't have to be special or all that good or unique. I just have to have an idea, and it's okay to execute it at a level where if it were a competition with a million entrants (top million coders/teams worldwide) then I would come in 500,000.

Because it's not actually a competition with a million entrants. It's just you executing your idea. It just has to get some customers, it doesn't have to be unique or key or anything else. And often an idea is as simple as follows: There is no one doing x in my geographic area. I will learn PHP over the weekend and start offering x in my geographic area.

People do it, they make money, and they might even get investment after a while. All on a simple idea (no one's doing it here) and a shitty execution. That's the extent to which I disagree with your parent's and your quotes above. I do agree that investors want to hear chest-beating if the project doesn't exist yet, they want to hear about your Stanford and MIT credentials and how you architectured some part of paypal.

But you don't actually need to have that stuff to just do it.

</comment></comment></comment></comment></comment><comment><USER14> Even if the idea _were_ worth money, how would you know unless you had experience in the field?

Might as well tell a lawyer your great idea for his client's defense. See how much he'll pay.

As an electrical engineer, I would not presume to understand architecture enough to sell an architect on my lucrative new idea for a building. The architect has probably thought of and dismissed hundreds of ideas like mine.

In the same way, I would never walk up to a web developer and say "Hey, I have this wild original idea about a website! If you build it, we could make tons of money, and I'll even give you half! But you have to sign this NDA before I tell you..."

If you don't know how to implement the idea yourself, chances are it has been though of and rejected already by those who do.

</comment><comment><USER15> Oh man. You have GOT to have something more than an idea! Twitter is actually a great idea, but if they didn't have any skills in executing it then it never would have gotten big.

You have an idea. Great. There's nothing stopping someone else from having that idea. Execute the darn thing, even in a prototype form. Don't expect someone else to do the hard yards for you!

</comment><comment><USER16> Quick question and I'm prepared to be shot down here, don't patents show that ideas are actually worth something?

Have a great idea? Patent it. Not all ideas are patentable but I'm sure some are.

If you get the patent you have something you can sell and once you do you've effectively made money from your idea.

<comment><USER4> A patent is a lot more than an idea. Patents cover inventions. Originally, they required you to hand over a working model to get a patent.

Take the idea "a good pocket lighter". That's not patentable. Now take a look at the patent for the Zippo lighter:

<http://www.google.com/patents/US2032695>

Note the detailed diagrams and the careful description of the purposes of the various bits. You don't get that kind of detail by sitting around in your pajamas and saying between tokes, "Wouldn't it be cool if we had a good pocket lighter?" You get it by making things and trying them out.

<comment><USER16> So what is the definition of 'an idea' when people say ideas are worthless?

<comment><USER4> I'm not sure I can define something as slippery as "an idea", but the people I'm thinking of generally have an elevator pitch. Or worse, more words without more substance.

As an example, consider this: <http://earthnationlive.org/>

Or the classic X for Y pitch: <http://www.itsthisforthat.com/>

</comment></comment></comment></comment><comment><USER17> Does anyone else hate the term "idea people". To me that implies someone thinks that having an idea and no skill to execute is a legitimate profession where people should make money. I might be overreacting, but it feels like people see the VC cash flowing, have no discernible skills and think they deserve a payoff for a mediocre idea.

<comment><USER18> I consider it a pejorative.

</comment></comment><comment><USER19> While this article was more about web, it immediately made me think of the game industry. So many people would always tell me they wanted to get into the game industry to be the "idea guy" and come up with games.

What they never seemed to understand is that coming up with ideas is not the hard part. The real hard part is finding time, skills and actually shipping. Hell, take a 20 person game dev company, and they could come up with 100 game ideas before the end of the day, and they will be just as good and original as the idea guys (probably better actually since they have more context and experience)

We (atleast I) became developers because we had ideas and we wanted to make those a reality. I literally have had hundreds of web and game ideas and so has every other developer.

We are in an "idea bubble"... There are far too many people who cannot create, and simply have ideas, and we can already see this starting to erode when you examine how hard it is for "idea founders" to get others to work on their project.

No developer anywhere has said "If I just had an idea of something to do"

</comment><comment><USER20> Over time, I've come to think of the 'huge idea, but I can't protect it or deliver on it' as a 'not huge idea'.

As entrepreneurs, we (at least I) are constantly coming up with and assessing new business ideas, strategic spins, etc.

This is just one more metric that a bit of wisdom teaches us to apply to our ideas. It is hard, very hard, for people who aren't used to the ideate- evaluate-rubbish-bin cycle, though.

How many thousands of business ideas have I gone through for the launch of the 10-ish businesses I've actually launched? Quite a lot. Even with all that weeding out and continually increasing experience (sigh), it's still a long slog. I constantly have 'great' ideas that on application of my own rules and the wisdom gleaned over the years turn out to be 'meh' to 'really bad idea, avoid!!'

In our line of work, anything that needs an NDA and could only be delivered by a large player, and the only thing stopping them is that they haven't thought of it yet is emphatically not worth pursuing.

</comment><comment><USER21> No one is going to want to pay a percentage just for an idea, but an "idea person" can also easily become a business cofounder.

Sales, marketing, and raising capital are things that perhaps require less expertise than motivation and persistence, and they are things that most programmers HATE to do.

</comment><comment><USER22> Do NDAs usually come with a time limit? i.e. if you sign that NDA it becomes null & void, in say, 6/12/36 months?

I think one of the main reasons folks are adverse to signing NDAs, especially the "my idea is so great that I must protect it" kind, is that if I sign _too many_ of them I effectively put myself outta business.

If I knew that a particular NDA would "time-out" in 12 months, I might be more inclined to sign; since if it does turn out to be yet another "photo sharing app, but for dwarfs" type deal -- I'm not going to be legally binded _forever_.

One last thing, I totally understand the need and desire for NDAs by orgs that actually _have_ existing IP that they want to protect; but alas alot of these NDA requests are made in the ideation phase...

<comment><USER23> Most NDAs have such a period stated in the contract. However, every now and then, you come across one that doesn't. (I just received one earlier this week that did not explicitly state one.) So, as always, read everything before you sign!

</comment></comment><comment><USER24> An idea on its own is worth little, the key is execution. Any reasonably intelegent person can teach themselves enough code to at least make a demo or mockup. If you think about it the original Twitter demo could have been made from a Wordpress blog by limiting the number of characters in a post to 140, making a theme and alowing users to post. If you can't commit to even building a basic demo how are you going to be useful when the really hard stuff starts? You can't expect to only do what you're good at, there is a certain amount of personal growth that needs to take place along the way.

</comment><comment><USER25> I truly believe that the only way to put the "NDA or no NDA" question to bed is to have every single person out there try to execute on an idea. Only until you've done it once do you realize the infinitesimal odds of having an idea, telling someone, them executing on it and making it big while the same experiment carried out with the only variable changed being not telling them would have resulted in you making it big.

NDAs are meant for investors/strategics who want access to real, sensitive and actionable data. Not a couple of folks in a bar batting around ideas.

</comment><comment><USER26> This goes back to the whole Jeff Atwood blog about banking buckets (I wish I could find the link!).

Chances are, if there's a company in the industry you want to target they've thought of your idea and realized that it's either not possible to make money on it or it's not possible to make as much money as they're currently making doing other things.

<comment><USER27> You'd never find it since it was Steve Yegge on Credit Card buckets :P : [http://steve-yegge.blogspot.ca/2009/04/have-you-ever- legaliz...](http://steve-yegge.blogspot.ca/2009/04/have-you-ever-legalized- marijuana.html)

<comment><USER26> Thanks! After so long, they all blend together!

</comment></comment></comment><comment><USER28> If you're unwilling to code, tell a developer what your idea is, tell him/her what you bring to the table (other than "ideas"), and offer the dev a generous share of the revenue and equity(for a two person team, at least 40%).

There is no reason for them to try and compete with you when they could work with you.

</comment><comment><USER29> [http://peternixey.com/post/21437829768/cook-something-or- get...](http://peternixey.com/post/21437829768/cook-something-or-get-out-of- the-kitchen)

</comment><comment><USER30> Wtf is an "idea person", really? If having ideas is someone's defining quality, they're useless in a business anyway. Everyone has ideas, execution matters.

</comment><comment><USER31> Learn to code.

<comment><USER32> I have given this subject much consideration. I have a good idea how to solve it. All I need you to do is sign this NDA first.. ...

</comment></comment><comment><USER33> Very simple regarding what to do.

A provisional patent application costs you $120 to file. No one even looks at it, until you file the real one. However, "patent pending" sends the message that ripping your idea off could cause legal repercussions and might not be worth it. If the person you're talking to thinks it's obvious, then both the patent application and NDA would have been ineffective. If it's something not obvious, then the "patent pending" is a great way to show you think the idea is soooo special, without requiring the other person to sign anything.

But of course, the best thing to have is execution and traction :)

<comment><USER34> That's an excellent idea, since:

1) the other party doesn't need to sign anything. 2) it's only binding if it's actually a patentable idea.</comment></comment>


Ask HN: How to avoid being absorbed? - <AUTHOR>

Hello everyone.
I've been reading HN for a long time but this is my first question here. My brother has this brilliant idea for a start-up related to business world and we really believe that it has a bright future once it starts. I've been actively developing it for a month and currently all we are missing is a good design. As we are working on it, it will be up and running in 2 weeks, I will be more than happy to announce it here first.
There is something we are afraid of. Our idea can be stolen / integrated easily with the current big business networking web sites. And another thing is, that our idea can make us the biggest business networking web site ever. However in order to prevent being absorbed, this may sound stupid, I thought that we only focus on just doing the idea and not doing the networking part so big ones would think "they did not add that feature in a networking site, lets stay calm for a while". But then, this really sounds stupid.
So, help us out with that. What should we do so we don't get absorbed? Should we patent the idea? Is there any other ways to protect ourselves and the idea?
Thanks in advance. <comment><USER2> Patents are largely useless if you're small. They're very expensive to get, and once you have them even more expensive to defend. Moreover, a defensible patent is so narrow in scope that it provides very little protection by itself. Someone makes a small change to your idea and bypasses the patent entirely.

If your idea is good and you execute well, you have little to fear from large competitors. The larger the company, the harder it is for them to innovate. They're protecting their revenue streams and have less appetite for risk.

They'll wait for your idea to be proven before they consider implementing it, letting you absorb the risk. When it comes time for them to implement, you may have a large enough market share that it doesn't matter what they do. Or you may have made enough progress that it's easier for them to acquire you than it is to build it themselves.

One thing that does concern me in your description is it sounds like your idea is simply a feature, not a viable business or even a useful product. The fact that you're concerned with your idea being easily tacked onto an existing social site leads me to believe that it's really just an improvement on things that are already out there.

Features don't really stand alone by themselves. You need a compelling product and a decent revenue plan to turn it into a business.

<comment><AUTHOR> Thank you for the reply as I can think bigger now and I actually did relief a little bit.

This is not a feature. This is an idea that will be the whole product whereas it also can be integrated with a business networking platform like linkedin, xing, etc.

This is not a 2 weeks idea by the way. We have been discussing it for months and still excited about it and hardly working on making it real.

</comment></comment><comment><USER3> You're right, it does sound stupid.

Execute. Put the idea out there. If it's good, you'll get traction, and that's going to be more useful leverage than a patent. If it's truly unique, you can pursue a patent as well, but don't let that stop you executing on what you have now.

'The big ones' are not scanning your webserver waiting for you to put out something then steal it.

<comment><AUTHOR> Thank you for the courage and thoughts.

</comment></comment><comment><USER4> "Our idea can be stolen / integrated easily with the current big business networking web sites."

If that's really true, you probably don't have an idea at the first place.</comment>


Google account suspended: A post mortem - <AUTHOR> http://justinlilly.com/blog/2009/aug/07/google-account-suspended-post-mortem/ <comment><USER2> Over reliance on third party free services is a real danger.

What's realy scary about this example is that there is no certainty about why the account was suspended, and also that the people trying to email him would be notified of this. At a minimum he should have still had read access to his account and an email from google in his inbox as to why his account status was changed.

A good warning to everyone else!

<comment><USER3> _Over reliance on third party free services is a real danger._

This seems to imply that if he were paying money for his Google account he would have either been safe or gotten prompt customer service if it suddenly stopped working.

That has, sadly, not been my recent experience.

<comment><USER2> Well, at least he would have had a right to it. With free services you can expect to get what you paid for, with a paid service I think the bar is a little higher.

If google maps stopped working tomorrow and your business depended on it I really wonder who you would look to to complain.

Email is of course a different matter and I think they handle account disabling in a very silly way at google. But it's still much better than at PayPal for instance (and technically speaking you do pay for PayPal).

<comment><USER4> There is a paid version of Google Maps, costs $10k/year. It is required if you develop a private application (ie. not open for everybody).

</comment></comment></comment></comment><comment><USER5> My account was once temporarily suspended. Reason was probably because I used to have 2 different gmail id one for personal and one for office adwords, adsense, analytics, webmaster etc.

Had a very similar experience of realizing how much we rely on google. I couldn't check my emails, could not IM anyone except for the ones on old ICQ account. Have no access to a report I was creating on google spreadsheets and fear of having lost all photographs on picasa, my reader list, calendar and more.

Google is already a pseudo-desktop/OS on the web. And if that crashes its as worse as a MS blue screen.

<comment><USER2> Open Office is gratis, and USB sticks are cheap.

When you really think about it if you are a single user you do not actually need google docs.

</comment></comment><comment><USER6> Does anybody know what happens to your Android phone when Google suspends your account? I know my G1 required a google login to actually complete the boot process the first time, but after that I've never used any google services other than maps. Would my phone notice if my account were suspended?

<comment><USER7> I believe you can just reset your phone and make a new account to get it working again. I suppose you might lose contacts, calendar entries, chat logs, mail, and/or applications.

</comment></comment><comment><USER8> This is largely why I switched my email to a paid provider that I trust plus local backups; it's simply too important.

Which is not to say that Google doesn't offer excellent services or that people shouldn't use them, but I think many people put far too much trust in a single provider without planning for things going wrong. Stories like this make me slightly apprehensive about all the buzz surrounding Google Wave.

</comment><comment><USER9> i have two google accounts and one is a mirror of the other (each account POP3s the other account). i also share all google docs with the other account. calendar is also shared with each account with full access. other stuff i can live without.

<comment><USER2> It sounds like you still have a single point of failure in there somewhere.

<comment><USER10> Yep, availability of Google services, but he completely solved the account problem. This is a very nice solution, altough I fear having to share everyhing could get labourious.

</comment></comment></comment><comment><USER11> Hmz, reminds me I've been to lazy about making e-mail back-ups. Starting one right now.

</comment><comment><USER12> I use Google as a search engine, that's it. I really don't like all-in-one solutions (except Emacs but I can put that on a USB stick) and am actually surprised how much the person in the article trusts to Google.

</comment><comment><USER13> I also suffered the same, in my case I got suspended two times. First time, I could recover my account (2 or 3 days later), but then, I had to wait for about 5 months... and it's such an horrible thing ... (and makes you think about google and it's situation, or how almost everybody uses at least one google product).

By the way: I currently run my own email server, but I couldn't resist myself, so I have a little weird configuration. My email servers stores a copy of every mail received, then sends it back to my Google Apps account (that can be done easily with a few tweaks). At least I can enjoy Google talk and the Gmail interface, without the fear of losing everything if I get suspended one more time (I hope not).

</comment><comment><USER14> I run my mail locally and use gmail as the backup.. hopefully losing a Google account and a disk failure wouldn't happen at the same time.

</comment><comment><USER15> Seems to me this is an argument for applications run on a local machine rather than software-as-a-service (SaaS). At some point you could get dependent on some SaaS provider who could take your data and services away for some reason with which you don't agree and with no reasonable recourse.

</comment><comment><USER16> This was the most disturbing and telling piece of the whole story:

"There was no mention from Google as to why my account was suspended"

Unreal.

</comment><comment><USER17> So, he never said why his account was suspended.

<comment><USER18> His most recent comment says that he believes a typo in his fetchmail script meant it was looking for new mail every minute instead of every five minutes, and he thinks that's why he was suspended.

<comment><USER17> Every minute? I'd be surprised if Google even noticed.</comment></comment></comment>


Ask HN: What web framework do you use? Why did you choose it? - moraya-re Merry Christmas! <comment><AUTHOR> Merry christmas! For me it's Django for around 5 years. I use it for both personal and work projects for all the following reasons (they are well known but repetition is never bad):

* A great (really great) orm

* Best documentation I've ever seen in a project

* Predictable, no magic

* Easy to start but very powerful forms

* Great community, positive attitude, always willing to help

* Batteries included and, for anything missing, lots of add-ons (in the form of apps) for all your needs

* It's in python and supports both 2 and 3

* Good i18n support (english is not my primary language)

* Good templating

* MVT (model view template) architecture works great, especually after you switch to CBVs

* Great support for REST (through django-rest-framework)

* Easy and to-the-point project configuration supporting multiple deploys (development, production etc) and non-commited to vcs settings

I've tried other frameworks in the past but I've always stuck in a missing feature or just wanted to do things in the django way.

<comment><USER2> I've never developed using Django. How does it compare to Wordpress? Or under what situation is it preferable to Wordpress?

<comment><USER3> But you cant compare Wordpress with Django, Wordpress is not a web framework is just a CMS for blogs.

Or am i wrong?

PS... Django <3

<comment><USER2> I have done little Wordpress development (just some plugin for a prototype that my company wanted). But I don't see anything that prevented it from being used to develop a web application since the theme/plugin system seems to fulfill everything. Django also describes itself as a CMS platform on their website so I kind of thought they are comparable.

Just wanted to make sure I know what I'm getting before I jumps in further into either Wordpress or Django :D

<comment><AUTHOR> Well, wordpress is a cms that, through custom work, can be used as a web framework (ie you can built other, non-cms, things with it). Django is a web framework that can be used to build a cms.

Actually there are some great cms built on top of django, for example django- cms or wagtail!

If you start from scratch and want to build a simple cms it will be easier to do it with wp, if ofcourse you tolerate php - some people won't use php for reasons that should be well known to hn readers. However, for any other web development I recommed using django (or another normal web framework).

Using wp to build non-cms stuff reminds me the "when your only tool is a hammer everything looks like a nail" argument! You may use your hammer to cut (break) wood but using your saw would be easier and safer!

<comment><USER4> I've seen that line of thinking with newer devs who don't understand the right tool for the job. Unless your client specifically wants a custom solution for a custom purpose, you will spend the first week writing a CMS in Django and the next 20 recreating .1% of WP's functionality because you didn't anticipate the full list of client's needs correctly.

</comment></comment></comment></comment></comment></comment><comment><USER5> I'm pretty sure I'll be minority here, but I don't use any backend framework for page rendering. All my apps are pure SPAs. They render all the screen content themselves on the client and only query servers for data. I prefer this, because I can simply take any app and deploy it to server just by copying its files. I only need to scale API servers and I don't have think about app scaling, because just single instance of nginx with proper caching setup can handle hundred thousands of clients (serving static resources is cheap and fast). Also you can take same app, package it as cordova and deploy to app/play store (although this can be probably achieved with any other frameworks as well). On the frontend I use combo of react, redux, redux-saga ...

Before I've used backbone, but react with redux is night and day difference. Even you're just starting with js, your apps will be less error prone, because of concept unidirectional flow.

Maybe this is no longer special to react/redux, but I'm really not in the age I can switch frameworks everytime some new stack arrive. React serves me well. And then, there is also react-native, which is 90% same as react so you can reuse what you have learned. Other frameworks don't have this close to native counterpart. (not counting cordova, which allows to use any fw, but performance will never be same as react-native).

<comment><USER6> That API backend is often a Node, Python, RoR webapp. JSON output instead of HTML doesn't make much difference, only the views/templates (pick your framework's name) are different. The other code is the same.

But in some cases a SPA let's you go to a different route to Parse or Firebase backends, or Lambda/Functions. That's different.

</comment></comment><comment><USER7> ASP.NET MVC, because:

\- ASP.NET MVC makes it much easier to keep your domain logic decoupled from the framework. This is in contrast to frameworks like Django who expect you to use their ORM, and to derive your model classes from a framework provided base class.

\- It's C#. I know it well, it is common in industry, and it is statically typed. For programs of any real complexity, I find statically typed languages to be much more efficient and pleasant to work with.

Eventually I want to move more in the direction of stronger type systems, but it doesn't seem like there are many jobs out there for Haskell programmers who aren't programming demi-gods.

</comment><comment><USER8> Django, mostly. I like its batteries included approach and its maturity. I've found it's a great tool for many jobs. Every now and then I'll use something smaller, like Flask or Falcon, but as soon as I need an ORM, or auth, I use Django.

I've also used Phoenix a few times now and have been enjoying it. But I know Python much better than I do Elixir, so I skew towards that.

</comment><comment><USER9> Django, because:

* Very little magic in the core.

* Well architected and loosely coupled (in spite of its sometimes-rep it's not actually monolithic: [http://olifante.blogs.com/covil/2010/04/minimal-django.html](http://olifante.blogs.com/covil/2010/04/minimal-django.html))

* Largest/most solid ecosystem of 3rd party packages (except possibly rails) that does everything from authentication, CMS, CRM, ecommerce, comments, anti-spam, caching, REST APIs, file uploads, admin, emails, authorization, regular authentication, social media authentication, admin plugins, data import/export plugins, etc. etc. etc. meaning that there's an awful lot of code that you _don 't_ have to write.

* An _opinionated_ core which means consistency which means that those 3rd party packages that all use caching, ORM, admin forms, etc. fit together and you don't have stuff like CMS plugins that just decided to use mongo for the hell of it ([http://quokkaproject.org/](http://quokkaproject.org/)) or 3rd party plugins forced to support 3 or more different storage backends ([https://pythonhosted.org/Flask-Security/](https://pythonhosted.org/Flask-Security/)).

* Python is a terse and readable language with (relatively) strict runtime type checking and a huge ecosystem outside of just web stuff.

</comment><comment><USER10> On the frontend: React, MobX, TypeScript

TypeScript, because its a fast compiler and has the best typechecker support and typings collection for existing front-end libraries, so there is almost no need to wrap anything.

React, because its conceptually simple, has wide community support and I get TypeScript's type checking inside the TSX templates too, unlike in Vue and most other frameworks.

MobX, because it needs less boilerplate than Redux, plays better with TypeScript than immutable.js, is really easy to make performant (lots of observer components + computed properties) and its intuitive to developers coming from Angular, knockout or Vue.

On the backend: TypeScript, Node, bluebird, node-sql and PostgreSQL

TypeScript, because it makes it easy to write end-to-end-typechecked programs if the backend language is the same as the frontend. The client and server can both claim to implement the same interface, and then its easy to see if any changes violate that contract. Additionally, server-side rendering with React is simpler.

Node, because its reasonably fast without thinking too much about it. The only pitfall are accidentally cpu-bound tasks, but in practice those are a problem rarely and I'm working on a tool to detect and report them: [https://github.com/spion/long-task-detector](https://github.com/spion/long- task-detector)

Another thing missing in node are better streams. A promise-friendly version of pull-stream would fix that.

Bluebird, because its fast and provides a great debugging experience with long stack traces

PostgreSQL, because it can go very far for many things before you need something else.

node-sql, because its an SQL query builder for node which can be made typesafe with TypeScript, and because query builders often beat ORM spaghetti in performance and maintainability in the long run.

</comment><comment><USER11> I've tried different JavaScript frameworks. I've seen Backbone, Angular, Knockout, Rx.js, React, Redux, MobX, Rails, Asp.net, Meteor and Django, I've tried almost every popular option to compile/transpile into JS - Coffeescript, Typescript, Livescript, Gorillascript, Fay, Haste, Elm, GHCJS and Babel. I've used Grunt, Gulp, Browserify and Webpack. Nothing ever made me so happy and so excited as Clojurescript. Things are so simple, so elegant. Code has never been ever before so easy to reason about. Sharing code between backend and frontend became reality. FFI to existing JavaScript code is so natural. Ring, Compojure and Om.Next, Clojure.spec and generative testing, Figwheel, Devcards, Boot-clj. core.async and pattern matching. My goodness. I just don't understand anymore devs, choosing to struggle with other stacks. Everytime when I try to compare - CLJS feels just a few steps ahead.

<comment><USER12> could you please point me towards some good resources to get started with clojurescript?

<comment><USER11> There are plenty. [https://github.com/magomimmo/modern- cljs](https://github.com/magomimmo/modern-cljs) Is a good one. You probably need to read one of the books on Clojure. I wouldn't recommend starting with "Joy of Clojure". It is definitely "must read', but do it later, after you learn some basics.

<comment><USER13> Second "The Joy of Clojure"

</comment></comment></comment></comment><comment><USER14> I use Django for my projects and I prefer it over Java Frameworks although I am an ex-Java developer. Python/Django feels quicker and lighter than Java/Spring stack which result in productivity boost. I explained in detail why I use Django on my story [https://hackernoon.com/why-i-chose-django-over- java-framewor...](https://hackernoon.com/why-i-chose-django-over-java- frameworks-for-my-recent-project-7ec85cb35756#.yxoaq8phe)

</comment><comment><USER15> Django. I like the "batteries included" aspect. Flask and Sinatra are fun, but I wind up spending more time than I'd like stitching authentication etc together instead of building the project.

<comment><USER16> You might want to look At cookiecutter Django [1], which is an excellent boilerplate generator for production-ready Django apps.

I've been using it for over a year, and it is fantastic. In fact, I've just started my own personal fork to streamline some things to my dev process.

Anyway, one of the many nice freebies is a full user registration / password reset / oauth solution baked in.

Also, I should mention this is created my the same guy who wrote "Two Scoops of Django".

[https://github.com/pydanny/cookiecutter- django](https://github.com/pydanny/cookiecutter-django)

<comment><USER15> Yes! Danny and Audrey do fantastic work.

</comment></comment></comment><comment><USER6> If it's my call, Rails since 2005 because it was easier than Java and much quicker to deliver. It still is.

If it's customers call, I used Node (as sw architect), Django, Flask, Web2py. All of them are less opinionated than Rails, which IMHO is bad because any project can be different and it costs time to get on board.

</comment><comment><USER17> Phoenix, for a lot of the same reasons I used to have for Rails including:

* Fast development cycle

* Conventional

* Great community

* Good ecosystem of libs to take advantage of

* "Magic" (although Phoenix's magic is much different)

And some of it's own like

* Great concurrency (which feels like a free win over Rails)

* Functional programming

* How Ecto, the ORM works

* How simple it is, even with the "magic" included.

* How assets are handled, via a thin layer to Brunch, Webpack, or other JavaScript asset bundler

There's a few more, but I think those are a lot of the major talking points.

<comment><USER18> I'm starting a project in Phoenix in the next week or so and am excited. I have done little web work and what I have done was using ASP.NET MVC so it is different than what I'm used to.

</comment></comment><comment><USER19> Rails - because Ruby is easy to learn, especially for beginners and you get great, custom things done in no time. Also Rails forces you in some patterns that make sense in my opinion. Testing is also fun.

<comment><USER20> I don't agree: from my experience (~9years of full time Ruby/Rails, including teaching and coaching) Ruby is not easy to learn, at least if you want to know what you're really doing. And Rails, as is, promotes several anti-patterns that will mess your app after 6+ months. Fat models are a bad practice, models as form objects are a bad practice, developing uour business logic almost totally on top of models is wrong. That's why some experienced Ruby devs are moving away from those anti-patterns by promoting real object oriented approaches: for some good examples check hanami web framework, rom-rb and Trailblazer.

My 2cents reply.

</comment></comment><comment><USER21> I used Node and Loopback.js for my last project (massive project). It was great in the sense that it helped us avoid writing lots of boilerplate, but the ORM and the "current context" module were a constant source of frustration.

Now I'm working on a project with a smaller scope and I'm simply using express.js and knex.js, no ORM. I love the simplicity and level of control I have. It's liberating not to have to guess what the ORM is doing to my data between my code and the DB layer.

</comment><comment><USER22> Meteor - It's a fullstack framework that let's you write JavaScript both on the front- and backend. It let's you choose what you want to use for your frontend (e. g. React, Vue, Blaze, Angular...). Best feature: It's realtimeness.

And right now I'm trying Laravel (PHP). It has a great documentation. I like the ORM and that it's easy to use. I want to build an API with it and consume it with a SPA and react.

<comment><USER23> Is using Javascript on the back end really a positive thing? There isn't really a choice on the front end.

<comment><USER24> This is the main criticism of Javascript on the backend. People didn't have choice on the frontend (and largely still don't unless you transpile), and for some reason people thought it was a good idea to bring this "language of necessity" to the backend.

There are plenty of better solutions like PHP, Ruby or Perl.

<comment><USER25> Up until recently, I'd choose Node over PHP

</comment></comment></comment></comment><comment><USER26> I don't know how some of you guys have the time to get real experience with dozens of frameworks. I've only really used a few. Out of what I've used, Ruby is my favorite language, and I use Rails for anything with a database, and Sinatra for anything without. Thoughts:

ActiveRecord is the best ORM I've used so far. You don't need a ton of boilerplate or config to get up and running with it. It supports all of the basic stuff, and seems to do it well, and for more complex stuff, it makes it easy to drop down to SQL instead of trying to put a ton of ugly glue on top of doing complex stuff in SQL.

I like the way Rails has commands to output the whole route table, and the whole middleware stack it's using. Along those lines, I like the way the router works, and the way that most of the advanced functionality is neatly tucked into middleware that you can add or remove.

I like the flexibility of being able to plug in a bunch of JS processors, template languages, CSS processors, etc.

I like how much functionality you can add by just throwing a gem in the Gemfile, and the Bundler system does a good job of tracking gem versions to keep all environments consistent.

Competitors I've used:

ASP.NET MVC: Too much functionality is buried in either the IIS server or other libs that you can't debug into easily. I don't like the routing much - there's too many ways to specify routes, all of which seem unclear, and there's no single place to see all of your routes as the framework sees them and where they all route to. Plus the often-incomprehensible method argument matching. MVC tries to be all clever in deserializing arbitrary JSON and XML into .NET objects, which is handy when it works, but good luck debugging what happened when it doesn't work, and good luck if you just want it give you the freakin' request data as a plain old string. I've spent hours smashing my head against trying to get MVC to actually route my requests to the intended controller methods and do something reasonable with the request data. And I still haven't made sense of Entity Framework.

I've also toyed with things in Java, NodeJS/Express, and a few other things, but I don't feel like I've really used them enough to offer an opinion, besides noting that the "common knowledge" of Java being verbose and over- complex, and NodeJS/Express being too bare bones seem accurate.

<comment><USER27> Have seen Sequel? Once I tried it I can't stop fantasizing about replacing activerecord from all my rails projects.

</comment></comment><comment><USER28> Spring with Spring Boot in Java. Batteries included and easy to setup and get going. A statically typed language to catch errors at compile time. Easy to deploy by building an uberjar. Great dependency management and builds with Gradle/Maven and built-in support for pretty much any common database and message queue.

<comment><USER29> I don't think you can catch errors compile time with all the magic reflection Spring uses, such as resolving services, injected values etc.

<comment><USER28> Agreed that there is lots of magic going on in the DI container but as it resolves everything on startup most issues there are still caught during the development process.

Catching errors at compile time is mostly about avoiding subtle bugs like object.property vs object.propery or adding a parameter to a method and forgetting to update 1 caller

</comment></comment></comment><comment><USER30> For us not-so-smart-people who liked MS Access: PHPRunner.

From a programming standpoint, it's the worst thing in the world: A Windows GUI thing that builds PHP apps and it's closed source.

From a get-stuff-done standpoint: I made a tracking web-app for large expensive tools that knows about Customers, Project Locations, Scheduling, Work Orders and Invoicing - it will grab a customer signature and email them the receipt. I did it in about four hours.

It has hooks in the system for those that actually know what they're doing (not me) to embed PHP code at important points.

<comment><USER25> Interesting. Looking at it, it seems it is a decent solution for building MVP's for those dumb clients that want stuff done in a weekend. Does it generate PHP 7? Good PHP 7?

</comment></comment><comment><USER31> I'm operating with Express on one end with React on the other. The big difference with this setup is GraphQL in the middle. It is a huge help to making sense of data flow, what with the strictly typed schema and the built in subscription model. I've also engineered my own event sourcing/CQRS framework with the intention of expanding the app with micro services eventually, but it's just one server node for now.

</comment><comment><USER32> I recently switched to nodejs from flask and I like it but there are some issues

The pros:

\- programming the same language in the frontend and the backend (which becomes a big deal when you do serverside rendering of react components)

\- for some reason AWS and Google App Engine have very good nodejs support

\- very fast io

\- very fast iteration time, faster than python

The cons:

\- the lack of quality libraries and standards. With flask there are well known, well tested libraries for every use case. Not so with nodejs.

\- javascript, which isn't really a big deal

<comment><USER33> Yes, I talked with a few Python devs and they all envied the package management of Node.js.

Funny thing is, NPM is fun at the start, but in long running projects it's really bad. I mean, it feels like a huge step forward coming from PHP (where I didn't have any package manager back in the days) or Python (where pip seems to be a bit clunky) but it still could be better. Hopefully Yarn changes that.

Having the same language on front and backend is good for my own projects.

But it really is a problem on commercial projects I work on, because the people in charge tend to mix developers. I wouldn't consider myself a back-end developer, but was forced to write multiple APIs, because "it's just JavaScript, right?!"

</comment></comment><comment><USER34> Django - I am learning and I think it is easier to learn. It is much easier than php.

</comment><comment><USER35> PHP Symfony for large backend application. I rarely use front-end Pros: \- Well structured \- Lots of bundles \- Large community \- Doctrine and Monolog support out of the box Cons: \- Steep learning curve in the beginning

</comment><comment><USER36> None: [http://www.catonmat.net/blog/frameworks-dont-make- sense/](http://www.catonmat.net/blog/frameworks-dont-make-sense/)

</comment><comment><USER20> I've mainly used Ruby/Rails from ~2008 to ~2015 both for work and side projects/prototypes, then I totally switched to Elixir/Phoenix for almost all my stuff. I still use Ruby/Rails for some works (where/when I can't use Elixir due to some constraint).

I've found that Elixir and Phoenix have an awesome community and a fast- growing ecosystem. The language is very clean and I can solve problems in a cleaner and faster way. It has all the tools I need and runs on a simple but powerful virtual machine with stunning performance and easy deployement. I can use websockets and async jobs without running external processes/daemons and thanks to brunch (or webpack, it depends) I have a powerful toolchain for frontend. Speaking about frontend, I've recently moved from React to VueJS, it's a very decent compromise between React and Angular: simple like React, with features and concepts similar to Angular.

</comment><comment><USER37> I've been using Tornado for about a year now, and I'm incredibly happy with it. Here is some of the background and reasons for that:

* I had been using Django for some 5-6 years, until I finally realised that I'm not happy with many of its architectural decisions -- global singleton settings, the way views are organized, the way it's organised around the ORM and everything. It provides a lot of tools, but if you don't need some of them them tough luck, you still get to lug them around and it's not helping you find any workarounds.

* I've learned to prefer frameworks that don't get in your way and allow you to choose any individual components for individual needs. I've worked with Flask and Bottle, which are great but sometimes go too far in the opposite direction, focusing so much on simplicity that more complex tasks require jumping through a different set of loops (I'm looking at you, Blueprints).

* Tornado's Web framework is successfully avoiding both types of traps, and it gives you the ability to develop simple apps -- say, a REST API -- quite easily and naturally, at the same time giving you the room to grow your creation naturally as needed. I've briefly tried Falcon, which follows a similar philosophy, and is IMO a great alternative.

* Tornado, however, is not just a Web framework -- it actually provides an amazing set of tools which can be easily in your app or even without any relation to a Web app. And the best part of the toolset is its asynchronous networking capabilities, which provided things like coroutines long before they existed in Python -- and now you can combine the two in a same app.

* Last but not least, Tornado provides an amazing, production-ready, non-blocking HTTP server. Most of the other frameworks make a point of not using their built-in servers in production, instead advising you to plug your app into a WSGI server like uWSGI or gunicorn; you can do that with Tornado too, but if you don't your app can process requests asynchronously, preventing slower requests from blocking faster ones.

</comment><comment><USER38> Back-end: Node.js + Express + ws + Johnny-Five

Front-end: Bootstrap + (Three.js or Snap.svg) + ws

I create browser-based interactive UIs for controlling Arduino robots. I like to keep the web stack as simple as possible because the tricky/hard parts are in the robotics layer.

</comment><comment><USER39> For hobby stuff I use Ring with Compojure (or bidi) on the server side and re- frame on the client, so Clojure(script) all the way. Still learning web dev in clojure, came from years of rails and some JEE before that. Hope to start using it professionally in 2017.

</comment><comment><USER40> For non-bleeding-edge projects, I use Rails, because I'm comfortable with it, and love the echo-system. I find I'm most productive in it when I need to deliver fast.

For newer/bleeding-edge I use Go with Vue.js on the frontend. I like Vue's simplicity and community - It's the only frontend framework that made sense to me and I was able to be productive in in a relatively short time. Go on the backend because it's clean, fast and stable.

At the risk of self-promotion, check out my weekend project - [https://github.com/zohararad/bee-gorm- graphql](https://github.com/zohararad/bee-gorm-graphql) (Golang on the backend, Vue on the frontend)

</comment><comment><USER41> I have recently switched from flask + psycopg to sanic + asyncpg for my http APIs. I'm pretty happy with the results and the transition was pretty smooth, it only took a day each to switch out each and go from fully synchronis to fully asynchronous.

<comment><USER42> I'm considering switching from Flask to Sanic, but I worry about Sanic's ecosystem. For example, I'm using these Flask plugins: Flask-Cache, Flask- Compress, Flask-DebugToolbar, Flask-DebugToolbar-LineProfilerPanel, Flask- Login, Flask-WTF.

</comment></comment><comment><USER43> Node.js + Express+ SocketIO on the server side with Angular on the front end.

For my apps I have a loose framework that I built over the years with pub-sub model between client and server and similar within the server side code itself.

Node was an easy choice since I love JS and having only one language reduces cognitive load a lot.

Express is a well known mature framework, similar with SocketIO even though it has some warts.

Angular is similarly a mature framework which I use in s quite simple manner to tie pieces of code together so i haven't had any performance problems. And since I work in enterprise it is still very a very popular choice and none of the issues with strange licensing or complicated transpiling build systems.

</comment><comment><USER44> Django for work, a variety of (popular) tools for random projects.

</comment><comment><USER45> I write in Go, and use the following libs:

net/http: The stdlib package is robust and I find myself productive working with the provided APIs. gorilla/mux router instead of the default servemux.

I use go-kit [https://gokit.io/examples/stringsvc.html](https://gokit.io/examples/stringsvc.html) for most production apps I write. I use go-kit because it provides a clean separation of decode/encode logic from the actual business logic of my application and includes some great packages for instrumentation, logging rate-limiting and bunch of other concerns.

On the frontend side, I prefer to write clients in Elm.

</comment><comment><USER46> Play Framework[1] (in Scala, its also available in Java): * I like programming in Scala * Play is built on Akka[2] (a lot of people use Akka instead of using a full-on framework) * Great testing suite * The documentation is very good * Most components of the framework can be used separately, for example Play has a good asynchronous http client that I use in other projects

[1]: [https://www.playframework.com](https://www.playframework.com) [2]: [http://akka.io](http://akka.io)

</comment><comment><USER47> Rails because I've been using it for a lonnnng time. Last month I got a subscription to stationcode.net and it's been handy for code gen. Talked to the owner and he said more is on the way.

</comment><comment><USER48> I used to be J2EE guy and I have gone through nearly all J2EE Frameworks namely struts, tapestry, wicket and JSF ( all flavours) -- and I hated all of them. The problem with these frameworks is that you had to learn so many useless details of the framework , such as ui component lifcycle and events, that were of no use should you choose to go on to another project which used a different framework.

I have settled on ReactJS with Clojure REST or Spring REST. React knowledge and REST knowledge is portable across projects and jobs.

<comment><USER49> It's really sad how bad the Java web ecosystem has been. JSP was pretty good when it came out, but there was zero standards-based movement on the objects behind it (controllers, binding, helpers) for years. When it did come, it was JSF, which is like some giant monument to the mistakes of the 90s. There have been a bunch of third-party controller frameworks, but all just different enough that learning doesn't travel well. We're finally getting an MSc framework now, just as it's finally going out of fashion.

</comment></comment><comment><USER50> I've used Pyramid for the last 5 years to deploy highly available http api (>500K unique users daily).

\- Super Modular, easy to achieve separation of concern;

\- Powerful routing system;

\- Consistent API;

\- Elegant;

\- Performant;

\- Pyramid folks are super nice and super helpful on irc

</comment><comment><USER51> asp.net core, I have tried a lot of frameworks and stacks from Laravel to Go and I have never been this productive on anything else.

<comment><USER52> Using standard asp.net, just webapi/entity framework, and Aurelia for the front end at work. Developers are very productive on this.

</comment></comment><comment><USER53> I use Phenomic to generate static React websites. Served from Amazon S3/CloudFront, with Serverless (Lambda/API Gateway) for REST APIs as needed.

This appears to be the cheapest and most reliable and autoscalable way to build web apps, even though the tooling could still be streamlined. I also believe that React and JavaScript in general currently have the best ecosystem, so it's easy to find anything you need (tools, libraries, components, problem solutions).

</comment><comment><USER54> Have been newly playing around with this: Modular SPA in either Angular 2 or Webpack with a separate API backend in Go. Easy to test either in isolation or integrated.

</comment><comment><USER55> ASP.NET MVC, on .NET Core.

It's super fast, C# is mad fun to develop in, and now it runs on Linux. We've even started deploying production sites to CentOS-based VPSes.

<comment><USER56> Do you self-host them in Linux? Or are you using something like nginx reverse proxy?

<comment><USER55> We use nginx as a reverse proxy. It was a little bit of a pain to set up with all the SSL stuff at first, especially since we wanted to keep hosting some Wordpress blogs on URLs nested within the .NET infrastructure, but overall it's worked out well now that it's up and running.

Each site gets its own dotnet instance, and for a while I was even running them all within a screen session. It was kinda neat to be able to flip through all of them, and see the dotnet instances at a glance, but now they've got proper startup scripts.

<comment><USER56> Thanks for the info.

</comment></comment></comment></comment><comment><USER57> All in with Angular 2 using the angular-cli. TypeScript, everything is a component, good fit for enterprise projects, quickly on-board new developers.

<comment><USER58> Hey - just curious - I love the Angular CLI, but since they hide the main webpack config I'm wondering how you deal with customizing that? Heard a few approaches, I'm interested in your solutions (if any).

</comment></comment><comment><USER59> Flask. Mainly because I do a lot of different things with web frameworks. Sometimes I'm serving a straightforward web page, sometimes I'm querying a database and rendering a template, other times I'm wiring up a json API, and other times I might be doing some weird data analysis before sending results to a dashboard template. Some of my URLs require three lines of code, some require three hundred.

In Flask, an endpoint is just a Python function, and most importantly, the URL endpoint is right next to the function declaration, so you don't have to keep track of two or three things in two or three different files. (Though the template is a separate file, of course.) To do something new just add an endpoint and a function; and most IDEs let you collapse/hide the function's code when you don't want to look at it, so it's as "clean" as it is flexible, if not elegant.

</comment><comment><USER60> Rails for my backend and react/redux SPA for my frontend.

I was using Rails for both but I love the freedom, ease, and capability that comes with React.

I could move to using something "lighter" than Rails on the backend but I really do like the 'batteries included' stuff that means I don't have to think about much to get up and running.

</comment><comment><USER61> Spring Framework on backend -> ultra power and speed, especially if you go cloud and microservices route

Angular 1 on fronted -> easy enough to learn quickly, feels good to use and is powerful with great support and add-ons. Looking to start learning angular2

Will learn elixir and phoenix for some realtime and websocket stuff.

<comment><USER49> > Spring Framework on backend -> ultra power and speed, especially if you go > cloud and microservices route

As long as you're happy with your microservices needing at least a gigabyte of memory each. My current project has ~15 Spring microservices, and with two instances each and blue-green deployment, we need 60 gigabytes just to be in business.

</comment></comment><comment><USER27> Rails, because I love ruby and hate sweating the small stuff.

Slim because I love simplicity and am a slow reader.

Susy grids because it fits my thinking and is very adaptable.

Vue.js because it lets me write HTML as HTML and JavaScript as JavaScript. And because it makes sense to me. Vuex because it follows the same principles used by Vue.

</comment><comment><USER62> Anyone using an asynchronous python library? Interested in how that's shaping up.

</comment><comment><USER63> It depends on the use case:

\- For API based work, I love Flask (Python).

\- For full fledged application, I am loving Laravel (PHP). With PHP7 and package managers such as composer and the awesome laracasts tutorials, it is just a breeze.

<comment><USER64> +1 for laravel. Nice documentation and really good community. It's ORM is great, its tooling is awesome.

</comment></comment><comment><USER65> Instead of piling on with all the usual frameworks (which I do actually use to get work done), let me add one that I've been playing with purely for side- projects/fun:

Escher.jl - [http://escher-jl.org](http://escher-jl.org)

Yes, I primarily use it because it's Julia and I am really enjoying Julia, but it's also a very interesting take on a modern web framework for a modern language (even if it is a bit rough around the edges).

</comment><comment><USER66> \- I've been working on Laravel for 3 years now. Liked the speed with which new features are introduced.

\- Currently freelancing for a client and using CakePHP. Didn't choose it, the existing system was built on it.

\- Worked on Codeigniter an Yii in the past. Chose them because they used to be the most popular frameworks back in the day.

\- Used Slim and Lumen PHP microframeworks whenever I was working on a tiny project.

\- When I'm not freelancing, I'm learning Elixir and Phoenix.

</comment><comment><USER67> Backend: Rails (older projects) and Phoenix (Elixir) for newer ones

Frontend: None/jQuery for simple sites, Angular 1 (older projects) and Vue 2 (newer) for apps

</comment><comment><USER68> Rails because it's familiar, fast enough and it's a joy to work with.

I'm also using Phoenix for pet projects because Elixir is Ruby 2.0 for me.

</comment><comment><USER69> If I'm making a website, I'm using Rails. I've been using Rails for years, and I know it and Ruby really well.

</comment><comment><USER70> I'm surprised nobody mentioned Laravel. It seems to be one of the most, if not the most, used PHP Framework nowadays?

<comment><USER71> I was thinking the same!

</comment></comment><comment><USER72> Koa 2 with Nunjucks, Sequelize and Typescript. Koa 2 with async/await is a real pleasure to work with and Nunjucks is powerful enough for pretty much every templating need. Sequelize has been a pretty good ORM. Typescript brings the right amount of type safety to catch easy mistakes while typing. Angular 2 for SPA:s.

</comment><comment><USER73> currently, i roll my own: golang net/http, gorilla/mux, eknkc/amber, and database/sql. i'm not entirely happy with amber as an html template language, prefer jade or haml, but it seems to work so far, i've had a few problems with it and the author fixed one of them in terms of nested data structures, but there's another issue pending for a long time so i don't think he has the interest to maintain this.

got into expressjs/jade, but didn't like the nested async callbacks, really annoying to read the code, but the tooling side was cool with npm, gulp, etc.

i used to use sinatra/haml/activerecord for a long time, really liked the simplicity of it, but ruby in general was just too slow in terms of performance, had to use a lot of physical resources to supplement for its slowness.

before sinatra i used ror, this was before i decided that rolling my own was more streamlined and efficient.

before ror i used python, tornado, and sqlalchemy. god, sqlalchemy was so clumsy back then, i even bought their ebook for my kindle, what a waste of money. ran ok, really liked the decorators used by tornado, but then fb went and bought friendfeed which doomed tornado to the depths of /dev/null.

before python, i used java servlets (as part of the j2ee standard) and java server pages. it was sort of nice to use html files and embed these java snippets, but still pretty primitive.

before j2ee, i used php, pear, god save me from those days. my personal blog was built on this, i saved all entries into xml documents and stored them in directories based on the date. that site was hacked and pwned so badly, thanks php security holes! this was a time before templates and orms.

and from the very beginning, there was pure html, wow, we have evolved so much since then.

golang is perfect for me, but i use it for a lot more than just a dynamic web server, it's also an api server and websocket service. i really like the ease of deployments with golang i.e. just copy a binary to my production servers. and the code is fast and scales. coming from sqlalchemy, activerecord, and sequel, i was a bit underwhelmed by gorp, but soon found out that going with sql was good enough.

</comment><comment><USER74> Express with Node.

Love the simplicity, speed and power. Huge ecosystem and fast rampup.

</comment><comment><USER75> Used almost all of the PHP MVC frameworks across multiple projects:

Laravel (2015/16), Yii1/2 (2015-now), CakePHP (2015), Zend (2009), CodeIgniter (2009-Now), Symfony 1 (2008/9)

<comment><USER76> Would be curious to know more about your experience, I mostly use CakePHP, and have minimal experience with Symfony 2 and Laravel, but I always go back to CakePHP.

<comment><USER75> I got lucky to get clients who either had preferred stack in mind when they reached out to me or had a existing product developed with various frameworks I mentioned where they needed technical input.

</comment></comment></comment><comment><USER77> Rails: Because it works!

<comment><USER78> As much as it works, I find Rails to do things Automagically, which makes little sense to me.

I'm the programmer, not the framework!

Maybe it is because I love the Explicit is better than Implicit approach more than the Convention over Configuration thing.

Conventions can change. Configurations, they remain!

</comment></comment><comment><USER79> backend: Ninja framework behind nginx, because I can write Java in my sleep and it makes testing not-awful. prototyping is speedy and easy.

DB: Maria. again, familiarity is key. been using MySQL for almost 20 years and it does what I expect.

UI: nothing fancy. bootstrap and, if the use case absolutely requires it, jquery. have been going back to fairly js-light designs lately and clients seem happy for it.

</comment><comment><USER80> I'm almost done with CrocodileJS... [https://CrocodileJS.com](https://CrocodileJS.com)

</comment><comment><USER81> I'm switching to Phoenix because all of the points listed above, plus Elixir is just fun to program in!

</comment><comment><USER82> ASP.MVC Core (with ASP.Identity, EF ...) Web API + IdentityServer4 AngularJS 2 (starting april v4)

</comment><comment><USER83> yii2 php framework plus vue.js where inneed SPA like functionality.

Yii is the 3rd framework from the same devs, so it's modern and unincumbered by cruft. Scaffolding is fast, API gen is automatic and extension ecosystem is strong.

</comment><comment><USER84> I don't use a framework, because with PHP you don't need one.

</comment><comment><USER85> Asp.net core</comment>


Greggs: Victim of Google Rich Results Spam - <AUTHOR> https://www.google.co.uk/search?q=Greggs&oq=Greggs&aqs=chrome..69i57j0l5.368j0j7&sourceid=chrome&es_sm=0&ie=UTF-8

<comment><AUTHOR> Check out the logo that gets pulled into the company profile!</comment>


With Category Theory, Mathematics Escapes from Equality - <AUTHOR> https://www.quantamagazine.org/with-category-theory-mathematics-escapes-from-equality-20191010/ <comment><USER2> A gentle introduction to the basic idea:

 _When is something equal to some other thing?_

[http://www.math.harvard.edu/~mazur/preprints/when_is_one.pdf](http://www.math.harvard.edu/~mazur/preprints/when_is_one.pdf)</comment>


Good Bye Skype - <AUTHOR> I have been using Skype for many years.
It was once a good piece of software before you-know-who obtained it.
They made a new UI, linked together accounts from different projects.
Things started to fell apart very fast.
You can find tons of complains from users having problems. - The new UI is widely recognized as a huge failure
https://www.quora.com/Why-is-the-current-Skype-UI-so-badly-designed
- Options to revert to the older versions are obfuscated and not supported
- Problem with skype auto-updating on start
https://answers.microsoft.com/en-us/skype/forum/all/how-to-stop-skype-from-updating/d2c7edcb-bbc8-4155-9f35-89a180825c0c https://answers.microsoft.com/en-us/skype/forum/all/this-version-of-skype-is-no-longer-supported-get/c6ea5228-995c-4bad-8357-cef4c921f5dd
- Problem with account linkage
https://answers.microsoft.com/en-us/skype/forum/all/skype-account-and-microsoft-account-madness/50696c26-5e10-4131-b6a3-17e4fc083d79
Today a friend of mine accidentally logged into another person's account. We were looking at another persons contacts, profile details, we were able to send messages out. We have repeated this process on PC and Android devices.
I don't want to share the technical details here because it may damage a lot of people in so many ways. Unfortunately the problem is so easy to reproduce that I wonder how many users have already experienced this breach.
Good bye Skype, forever now. <comment><USER2> A nice alternative (without text chat, for now) is vs5x. You can get it at [http://blog.x-row.net/download/?file=vs5x&ver=015](http://blog.x-row.net/download/?file=vs5x&ver=015). The only issue is that it connects by using IP addresses. You and the person you're wanting to chat with can install ZeroTier ([https://www.zerotier.com/](https://www.zerotier.com/)) configure it to make a network and join it and then authorize the person's IP address.

</comment><comment><USER3> I'm not giving up on Skype. Skype gave up on me.

(1) There used to be a Linux app that wasn't a web app in disguise ... not anymore. Skype can't be bother to really support the platform or the UI HIG of at least one toolkit on Linux.

(2) My smart TV has a webcam just so I can take Skype calls, no other reason. Really cool feature for me. Serendipitously my parents love Skype and it made it easy to talk to them from the sofa. Felt very home-y. Two years ago, Skype said, "Umm, I know you paid for this camera so you could be part of our ecosystem... but nah... we don't care about that tech anymore."

Thanks Skype. So long and I hope all the fish start rotting soon.

</comment><comment><USER4> I recently had to set up a microsoft <whatever-theplatform-is-called> account for teams. I got there in the end but i'm fairly sure I now have 3 different microsoft logins. The whole thing was smooth as sandpaper and as logical as an M. C. Escher painting.

At least they provide a linux native client for it I suppose.

<comment><AUTHOR> Yes, but logging into a stranger account with your own password is a new word in modern security.

</comment></comment><comment><USER5> I'm giving up on Skype because it can't even correctly display online status. If I look at my contact list all of the statuses are wrong or outdated, and I need to click each person's name for it to refresh their individual statuses.

</comment><comment><USER6> But what is the alternative ? is there a fuckup-less communication tool ? if anything there is a good chance MS will fix this faster than others.

<comment><AUTHOR> I thought the same a few years ago. They are fixing something and breaking another thing at the same time. Moving to Google hangouts now.

</comment></comment><comment><USER7> I can't quit it because I haven't found an alternative for Skype numbers, and calls to landlines.

<comment><USER8> lol, google voice is basically that, it's free, and lets you bring a number from another company for dirt cheap and after that, no more fees. or so i was told.

</comment></comment><comment><USER9> When they bought Skype, my first thought was: oh, they want to kill it to replace it with something else (Teams?)

</comment><comment><USER10> I'm worried that the latest versions for Linux began to significantly load the processor during a video call.

</comment><comment><USER11> All of the good stuff from Skype was integrated into Microsoft Teams.

</comment><comment><USER8> use discord, so much nicer design wise, and the company actually gives a shit about their users, unlike micro$oft</comment>


Lessons Learned Scaling Hotjar's Tech Architecture - <AUTHOR> https://www.hotjar.com/blog/9-lessons-we-learned-while-scaling-hotjars-tech-architecture <comment><USER2> A lot of nice practical insights...it helps that real numbers are mentioned (525M requests/day, 37.25TB of total data so far, 5+GB a day) so that we can understand the magnitude of traffic, and good detail (and diagrams) of their setup. The initial setup, with ELB in front of 2 instances, is what I'd expect for a site of much less data traffic...

I was wondering how much of the current data traffic (5GB+/day, 1,500 requests per second) is being borne just by the PostgreSQL database? That is, do the stated data numbers include whatever ElasticSearch handles as well?

The detail of underestimating the field size for the ID fields was interesting...I suspect that would be a mistake many operators would make, but one that a company in Hotjar's line of work would forsee needing to anticipate...was it a simple oversight during the launch phase, or did they just underestimate the magnitude of usage that their service would get?</comment>


Potion Lang - <AUTHOR> http://perl11.org/potion/ <comment><USER2> [FWIW, dev work on this was started 7 yrs ago and ended 4 years ago.] I like many features of this language -- although the feature I _don 't_ like is traits/mixins (one of the lang's central tenants), which seems like a bad idea in the general case -- it makes implementation inheritance even more abusable, rather than preferring delegation.

      "hello" print

in addition to

      someObj.ToString()

in Java-esque languages are just horrible, IMHO. An arbitrary object should have absolutely no business knowing how to render itself, nor should a string know how to do I/O on itself, as these operations depend on the context of their usage.

Rather, for example, if you want to stick with message-sends:

      console [print "foo"]

would delegate the printing of "foo" to the console object. (here the brackets reify the message -- not sure about the syntax in Potion.

I can't tell you how many time in my code or in others', a .ToString() was expected to do one thing (pretty-print, for example) when instead it used some default method, such as the base method that prints " <a Foo>" or something. These things even end up in production output.

<comment><USER3> > I can't tell you how many time in my code or in others', a .ToString() was > expected to do one thing (pretty-print, for example)

I'd expect this to turn the object into a String.

<comment><USER4> That's almost comically underspecified. One big concern that comes to mind, is the string a complete view of the object (and thus suitable for serialization) or not? Or is it more succinct and suitable for a print statement?

<comment><USER3> Yes, I get the Java stuff, I was being sarcastic because it totally missed the context it was built with, in favour of some generalist mainstream adoption critique which misses the point.

Have you seen the homepage?

The Potion Pledge "everything is an object" bit was a good hint.

</comment></comment></comment></comment><comment><USER5> Their TLS certificate expired over a year ago. This doesn't exactly seem to inspire my confidence in the project's ongoing development.

<comment><USER6> I think Rieni Urban abandoned working on this project over cperl.

[https://github.com/perl11/cperl](https://github.com/perl11/cperl)

<comment><USER7> Not really abandoned. It's just not the main priority anymore. And perl6 decided to do something else, to go forward with a very shortsided and wrong approach (again).

There are two major blocks here,

1) the parser surviving a GC. There was one help from outside, but without real code. It almost got fixed by myself recently. macros depend on this, and improving the compiler and adding a matcher on macros.

2) threads support for the GC. hard problem. would need to switch to boehmgc, as fellow Tiny(Ruby,Python) folks did with this codebase. But they got not much farther. Only wren did. I liked his approach.

The TLS cert if unfortunately out of my hands. Someone else is maintaining the domain.

</comment></comment></comment><comment><USER8> Trying to understand what this represents -- looks like it's an implementation by rurban of that Ruby dude's Potion language?

<comment><USER8> [https://groups.google.com/forum/#!topic/potion- lang/TRDuHMxz...](https://groups.google.com/forum/#!topic/potion- lang/TRDuHMxzR9Y)

rurban writes:

I plan to use potion, the VM and compiler for a perl fork, codename p2. perl5 and perl6, in spirit of parrot, just 40x faster, and better than the ongoing perl on JVM plans. See [https://github.com/perl11/potion/blob/p2/README.p2](https://github.com/perl11/potion/blob/p2/README.p2)

So naturally I'm going to enhance potion also. New are libpotion.so, improved make times, seperated config and dist/install targets via config.inc, dist.mak. I didn't like that every make probed and shelled too much. Now it only does when needed.

I fixed load readline (the wrong path), and changed the LOADER_PATH to (lib, PREFIX/lib/potion, .) . at first is a security risc. added support native extensions: darwin .dylib vs .bundle. With load .pnb is favored over .pn. I also added libdisasm support for nicer jit debugging, and improved the parser interface for multiple language support.

I'll add in the next months dlcall (FFI), exception handling, arbitrary precision math and a lot of libraries to support perl5 and nqp, the perl6 bootstrapper.

I'll probably come up with a fast intermediate language to write those libraries, and I'm not sure if it will be potion (the language) or a small fast subset of perl.</comment></comment>


Andreessen's Advice To Old Media: "Burn The Boats" - <AUTHOR> http://techcrunch.com/2010/03/06/andreessen-media-burn-boats/

<comment><USER2> Is there an example of any news organization like the New York Times that is purely web based? I don't mean in terms of size, or even prestige, but just in terms of content. Does there exist a self-sufficient, general interest, maybe high-end, news organization that is not a part of the old media? There seem to be lots of profitable and high quality niche news sites on the web (obviously a huge niche on the web is tech/gadget news), but I'm coming up blank for anything like a general interest news organization.

<comment><USER3> The Christian Science Monitor (a really informative paper, not evangelical, despite the name) shifted online in 2009, ceasing print for the daily issues, at least.

Salon & Slate come to mind.

<comment><USER2> The CSM is a really interesting case, as they did seem to transition from old media to new. But, after looking around their site for a minute, I noticed this subscriptions section that offers a weekly print edition. I wonder how much they make off of that - <http://www.csmonitor.com/About/Subscriptions>

Relatedly, Politico, a US politics site, makes a lot of money from its print edition - [http://en.wikipedia.org/wiki/Politico#Distribution_and_conte...](http://en.wikipedia.org/wiki/Politico#Distribution_and_content)

</comment></comment></comment><comment> bjelkeman-again In the commentary there is a lot of talk back and forth about whether old media understands tech or whether tech people understand media and journalism. I think this misses the point.

I subscribe to The Economist and New Scientist, as reading them online just isn't very user friendly. With the Economist and New Scientist I get full access to the archive and the online edition when I subscribe, but I don't want only the online edition, it is a hard reading experience compared to the magazine. Will the iPad change that? Time will tell.

I have recently dropped my newspaper subscription, which I actually miss. Their website is good, but not at all a replacement for the paper edition. The content is structured differently and more importantly, hard to browse quickly. Wherea the newspaper is very good to allow me to quickly get an overview of what is going on. But I dropped it as an experiment because I don't read it enough and I get a ton of paper to recycle.

I am looking forward to news delivered to me electronically in a way I will consume as willingly as printed news. The web as it looks today is not it.

<comment><USER4> Out of curiosity: how old are you?

<comment><USER5> For what it's worth, I have a pretty similar opinion, and I'm 19.

<comment> bjelkeman-again Well I am more than twice that. So yeah, an old fogy. :)

</comment></comment></comment></comment><comment><USER6> Sometimes, I do get angry with myself for reading stuff like this, despite suspecting beforehand that there is no newsworthy reporting whatsoever in pieces like these. Andreessen said nearly exactly the same a full year ago - <http://www.charlierose.com/view/interview/10093>.</comment>


Look at Jobs's application, and you'll see a glimpse of his unique vision (2018) - <AUTHOR> https://thriveglobal.com/stories/this-1973-job-application-from-steve-jobs-is-worth-a-lot-of-money-but-the-lesson-it-teaches-is-priceless-inc-com/ <comment><USER2> What's he saying? Since his kids can't write a sentence or spell either, they're geniuses?

<comment><AUTHOR> I think that the point is that some things that we usually use to judge other people, aren't necessarily good indicators of how successful they will be. Also, (and that has happened to me) we tend to put people into boxes (engineer, chemist, programmer, philosopher, etc). I am a chemist, for example, and I have had the opportunity to work for some companies and startups doing engineering (mechanical, industrial, and electrical) work. One of the most common things that I faced during my time working as an engineer, if you will, is the phrase, "but you are a chemist". Meaning that some of them thought that because I was a chemist, I shouldn't be able to do engineering work.</comment></comment>


How to Motivate Employees? Don't - <AUTHOR> https://m.signalvnoise.com/how-to-motivate-employees-dont/ <comment><USER2> I'm I the only one to disagree with the idea that motivation should be individualized? Some people draw more inspiration working towards a team goal rather than personal objectives. Accomplishing something together as a team can provide a much greater sense of satisfaction rather than an individual task.</comment>


A Problem With Hacker News - <AUTHOR> http://ee1997.wordpress.com/2012/05/30/a-problem-with-hacker-news-4-2/

<comment><USER2> Step 1: Google "hacker news userscript open links in new tab" Step 2: Second Result "Hacker News | // ==UserScript== // @name news.yc open in new ta" (<http://news.ycombinator.com/item?id=128307>) (Screenshot: <http://o7.no/KClBIc>) Step 3: Copy that to a file called newtab.user.js Step 4: Open that file in Chrome/Firefox/Safari/Any Browser that supports userscripts and install

Now on to your second gripe, would you rather have HN iframe in the link and add a banner bar at the top? No one liked it back when Digg tried it and no one will like it now, I'm sure if you wanted you could write a userscript (or add on the the other one) so that on link click it added an iframe under the link to the bottom of the page and shrunk the top to just visible enough to see the link title the up vote button and a close button that was added in to allow for removing the iframe.

However that would still be susceptible to framekillers <http://en.wikipedia.org/wiki/Framekiller> and we come back to the main reason, you want a way to be able to vote after you have "inspected" the content without having the remember to go click the link on HN. Yeah, that would be a nice feature, if there was an api and a way to authenticate users and their votes then someone could write a userscript/chrome app/FF plugin that and a HN up arrow in the top right/left of any page that existed in HN's library of links. That way even if you didn't get to the article via HN you can still up vote it on HN. Alas.

Next time don't go complaining about things you can easily find answers to and problems that are impossible to solve at this time.

</comment><comment><USER3> click the titles with the middle mouse button

<comment><AUTHOR> What?

<comment><USER3> there is a little wheel on your mouse, right between the left and right buttons. in most browsers, if you click the link with it, it will open in a new tab

<comment><AUTHOR> it was just a suggestion...i mentioned in the article that there were alternative ways to do them but i was just giving a suggestion</comment></comment></comment></comment>