The Cloud Is Raining Cash on Amazon, Google, and Microsoft - <AUTHOR> http://www.bloomberg.com/news/articles/2015-10-23/the-cloud-is-raining-cash-on-amazon-google-and-microsoft <comment><USER2> Microsoft must be minting money from their subscription and Azure services. We replaced three servers with Office 365 online and Azure virtual machines and Azure AD. It has several advantages but cost is not one. Anyone that says moving to the cloud saves you money is likely wrong.

<comment><USER3> Not alone there, Microsoft is especially expensive for what you actually get but the more common players such as AWS and Rackspace are highly cost ineffective in many situations. I really wish people would stop calling it 'the cloud' and call it what it is 'outsourced hardware'.

<comment><USER4> And a whole bunch of other capabilities. My company couldn't exist if we had to buy & configure our own servers, storage, switching, load balancers, databases, monitoring &c. Characterising the AWS & Azure clouds as "outsourced hardware" demonstrates a real lack of awareness of the services that are available. As a third-party offering, they are about as far from old-style mainframe bureau computing as you can get, in every dimension from the architectural to the commercial.

Cloud computing means the entire DC is programmable, and I use it as such.

Moreover the unprecedented level of automation means I can spend a lot more time on creating customer value rather than faffing around with admin. The shift I've seen in the last three decades* has been phenomenal. Teams aren't smaller but they are vastly more productive.

* yes I have been in tech that long :~

<comment><USER3> If you host your own servers or even PaaS wherever, and you don't have an API and automation framework then yes - you will see benefits from having those things provided to you. If you already have these things and you're not spending a lot of time to make sure they continue to exist then you have a lot more freedom than locking into the tools that your 'cloud' provider has given you.

<comment><USER4> What lock-in? I'm deploying standards-based applications to standards- compliant platforms. Cloud services are simply saving us heaps of time & money. There's no loss of freedom, far from it; the disposability of cloud infrastructure provides enormous opportunity for adaptation and change.

In 100% of my experience to date, "cloud lock-in" is a myth trotted out by server huggers and hardware salesmen. Some SaaS providers may be data prisons, sure, but that's a different conversation.

If the economics of establishing and operating off-cloud resources ever made sense for us, we'd go for it, but it looks increasingly unlikely.

<comment><USER3> One example of that I've seen have spent significant time on tools like cloudformation can only (as far as I know) be used on AWS. Another would be where when you need decent storage performance - we have several cases where we use 20-40K IOP/s quite easily and doing that kind of work on the current cloud offerings is very expensive and usually involves significantly increase complexity if say you need this in your database layer as you suddenly have the need to scale horizontally while maintaining consistency and durability which is difficult. We can provision 6TB of networked 1M 4K random read IOP/s storage in a highly redundant, load balanced form that's easy to upgrade and scale for less than $500/month and it has little to no management overhead. Now while this may not be what your average startup requires it opens up a world of opportunity to how and what you do with your data.

Edit: I should note that we do, where appropriate use 'cloud' services including Rackspace, AWS and Azure where appropriate. Azure has had significant performance issues and has a lot of provable downtime especially due to internal network routing and DNS problems that they fail to acknowledge and we've found their support to be a joke if you know what you need / are doing, even their own O365 service has weekly outages that can take several minutes to resolve. Rackspace's support has been good but they do have a lot of small outages again often network related. AWS' has been alright be very costly unless you're doing either very small deployments or at the other end of the scale massive, horizontally scalable deployments, however their storage performance is woeful. For our mission critical or high performance deployments using our internally hosted platform is significantly fast and almost always cheaper. Our uptime across the platform is fantastic and it generally 'just works' while we watch our cloud hosted services suffer from inconsistent performance and service 'blips'.

<comment><USER5> Huh? Networked I/O at 1M random iops for $500/month? I feel like at least one of these numbers is off. Can you detail your setup a bit more? How many machines or drives are you striped across and how much of your 10gige link are you assuming you can dedicate to this?

(I'm genuinely curious but I feel like there's a missing upfront cost that's not being included here)

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> Makes sense. After EC2 evaporates our cash it has to precipitate somewhere…

<comment><USER7> Invest in AMZN to pay for your EC2 bill - feedback loop.

</comment></comment><comment><USER8> pretty sure amazon's Q3 earnings can be attributed to the site i launched on EC2 that accidentally had a little bit too much power, load balancing, and backup instances. fun bill.

<comment><USER9> Amazon's customer support tends to be pretty awesome and forgiving. I would definitely try giving them a call and see if you can get some of your cash back.

<comment><USER10> They also put an automatic limit on resources if they explode your billing and alert you if something goes bonkers.

</comment></comment></comment><comment><USER11> I am very thankful for the Cloud2Butt extension when stories like this appear.

</comment><comment><USER12> On common, reporters. IBM has a cloud too!

<comment><USER13> "At IBM, the future doesn't look so bright. Shares dropped to a five-year low after the company cut its profit forecast earlier this week."

<comment><USER14> Strange considering IBM invented the utility model. [http://www.computerworld.com/article/2578752/it- management/i...](http://www.computerworld.com/article/2578752/it- management/ibm-throws-weight-behind-utility-model.html) The thing to remember about the utility model (think electrical utilities) is that once you control the supply you control the price. During this adoption phase the prices will remain low, but they will likely go the way of electricity costs if adoption reaches critical mass. I think right now they want to get the message out that the "cloud" is profitable because I am hearing a lot of "trough of disillusionment" from decision makers. For the startup or web company the cloud has a lot of attractive use cases, but for the enterprise data center it's a bit more sketchy. And, today it's not hard for sysadmins to build their own private cloud. The only thing that will tip the scales for the cloud and attract the enterprise data center is if we can no longer purchase computing hardware. I certainly hope that day never arrives, but look at the common light bulb. We've been fooled before.

</comment></comment></comment><comment><USER15> Azure, EC2, and Google Cloud are overpriced in most cases. You can do the same with cheaper (and often similarly reliable) VPSes managed with tools like Puppet/Chef, Consul, Vault, Docker, etc. Plus you avoid lock in. Your stuff is yours and can be deployed anywhere.

I don't see the allure of the costlier cloud other than the "nobody ever got fired for" factor so common in enterprise purchasing. Amazon is the only one that might have a stronger case for it based on its huge managed service stack, but much of that is not too terribly hard to duplicate with other tools and more a la carte services. There also really isn't a reason you can't use some of Amazon's stuff while also using more commodity options.

On a more principled level I'm starting to see huge proprietary cloud as a potential threat to the open Internet. It's not quite there yet but at some point I could see it, especially with the walled garden plays you see around IoT.

<comment><USER16> One unique thing about Google Cloud is that most managed services like Load Balancer, PubSub, Datastore, BigQuery etc do not charge you for variability and high-availability. AWS and Azure WILL charge you 10x to scale up and another 3x for redundancy. Because Google's managed services are often based on Google's internal stack, they just scale. Good luck scaling Kafka to millions of messages per second - with PubSub you get it out of the box. PubSub, BigQuery, and others are geographically high-available out of the box. These things are difficult to replace on EC2, and nearly impossible on players like Digital Ocean.

Edit: BigQuery, for example, allows you to rent 10,000 cores for 5 seconds at a time. This type of stuff is impossible to do with VMs at all.

<comment><USER17> Not really related to your bigger point, which I have no opinion on, but Kafka & PubSub have different delivery contracts, Kafka's are generally more strict. Therefore comparing the scalability of the 2 is somewhat problematic.

<comment><USER16> Can you elaborate on that? PubSub is a fully-managed service, which means that Google SREs are on call making sure things are up. In addition, Pubsub has "guaranteed at-least-once message delivery". In a sense, Google's SREs guarantee delivery.

PubSub is also a GLOBAL service. Not only are you protected from zone downtime, you are protected from regional downtime. Is there an equivalent to this level of service anywhere in the world?

I'm not too familiar with Kafka's fully managed service, but Kafka-on-VM is a whole other ball game. YOU manage the service. YOU guarantee delivery, not Kafka.

<comment><USER17> Kafka promises strictly ordered delivery, PubSub promises mostly ordered. The differences between those promises are what drive PubSubs ability to scale throughput and global availability.

From an availability standpoint, I don't disagree with anything you mention, but the difference between the consistency models means that PubSub is solving a different set of problems than Kafka, thus my opinion that comparing them is problematic.

<comment><USER16> That's a fair point. But remember, Kafka promises this as long as the underlying VM infrastructure is alive and well. PubSub completely removes this worry, or even the concept of VMs.

There are several ways to look at it, but I'd opine that a "mostly ordered" fully-managed truly-global service that's easy to unscramble on the receiving end is more "guaranteed" than something that is single-zone and relies on the health of underlying VMs that YOU have to manage.

edit: Kafka and PubSub have a lot of overlap, but they each have qualities the other one doesn't. I suppose you gotta choose which qualities are more important for you.

<comment><USER17> If you can design your protocol such that it can work in a mostly ordered fashion, I'd highly recommend that you do. It opens up your choices for technology stack tremendously. But, if you require ordered delivery, your choices start shrinking dramatically.

Also, just so we are on the same page. Kafka is a software product that can be run on hardware or VMs, not a managed service. Possibly, you are thinking of the Amazon Kinesis product which does offer a managed service with strict ordering.

<comment><USER16> Agree on first point.

No confusion on second point. My argument was that Kafka adds significant complexity and delivery risk because it's software that you must run on hardware/VMs, rather than a fully-managed service. You have to pay a whole lot of eng time to make Kafka truly "guaranteed delivery" because there's always risk of underlying hardware/VM/LB dying.

Pubsub guarantees delivery regardless of what happens with underlying infrastructure. In a sense, the bar has been raised dramatically.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER18> Does anyone trust Google enough to build a business on their product? They've shown a propensity for terminating projects when they no longer feel like supporting them. I'd hate to have thousands of servers relying on Google's services and API's and have them say "Oh hey sorry, we're shutting down, you have 90 days to migrate starting tomorrow".

<comment><USER19> What popular _paid_ service has Google terminated? Any?

We built our recommendation engine for Recent News ([https://recent.io/](https://recent.io/)) on Google App Engine in Python. There was some tricky engineering involved in making sure that it would work inside that particular environment, but it's paid off in terms of scalability. We're not worried about Google shutting down App Engine; in fact it's being continuously improved.

<comment><USER20> Google Maps Engine [https://developers.google.com/maps- engine/](https://developers.google.com/maps-engine/)

<comment><USER19> I never used Google Maps Engine myself, so I'm not really familiar with it. But it looks like Google was trying to consolidate and _improve_ its paid maps offerings, not discontinue them:

[http://www.gearthblog.com/blog/archives/2015/01/google- maps-...](http://www.gearthblog.com/blog/archives/2015/01/google-maps-engine- deprecated.html) _The move should be seen as Google transitioning customers to already existing alternative products, especially Google My Maps (formerly Maps Engine Lite) which has come of age and now has most of the important features of Google Maps Engine_

A better example would be if Google were to discontinue its paid Google Maps API?</comment></comment></comment></comment>


Why I'm not going to sign an NDA - <AUTHOR> https://medium.com/startups-and-things/4193aeda7251 <comment><USER2> Generally speaking, my rule of thumb is that an NDA shouldn't be necessary if you're simply discussing the business. If an idea is so copyable that simply repeating aloud it is dangerous, then you're going to get copied by bigger players as soon as the viability of the idea has been demonstrated. So the company's pretty much hosed anyway. When it comes to basic business and marketing advice, it really limits the valuable input that can be gained if the business owners are super cagey about talking about their ideas.

On the other hand, if actual core IP (like code and business documents) is going to be seen in detail and contributed to by someone, then an NDA is a must. Not only an NDA, but also an IP assignment agreement. It must be unambiguously clear that the business, not any individuals, owns the IP of the company. I don't care if someone just wants to help out of the goodness of their heart; if they're looking at the code, they need to be willing to sign some paperwork.

<comment><USER3> This.

Related: It's incredibly galling when someone wants you to sign an NDA to talk about something on which they have a bullshit patent. Really?? Trade secret XOR patent, please choose.

<comment><USER4> I get the feeling that companies don't like to talk about or advertise the patents that they own, because it's fantastic for them if somebody else independently has the brilliant idea of rounded corners on the casing of a portable screen.

</comment></comment></comment><comment><USER5> The reason I ask you to sign an NDA is not because I am scared you're going to steal my idea. We can talk in depth about the business over coffee, dinner, long weekend ad nauseam. But if you want to see the code and hear about the non-public deals then you sign an NDA.

I'm pretty sure this post is not meant to apply to real companies, but there is a lot more going on out in the real world than this straw man of cold- calling wantrepreneurs.

<comment><USER6> _But if you want to see the code and hear about the non-public deals then you sign an NDA._

Aye, but that's not the point of the article. It's not that _I_ (or the author) want to see code & details, it's that _you_ want me to see them. The author makes clear he's got a thousand other items on his to-do list, and has a thousand people coming to him with allegedly brilliant ideas; he has no particular interest in the idea, is not already willing to give up something for access to the idea.

Sure, if I want in on your idea, I might be willing to give up something for that access - hence willingness to sign an NDA. But don't come to me with zero context saying "I've got this amazing idea, sign away your rights and I'll tell you about it." Kinda like a legislator saying "we have to pass the bill so you can find out what's in it"; we see how well that's working out...

<comment><USER7> This is a critical distinction to make. I'm constantly approached by people who want to use our platform for their business. Our platform is pretty much self service (API's,docs, pricing) but they really want to have a call with me to discuss their business and learn more about us. Ok, no problem with that. Then they say "Oh and you'll need to sign our NDA before we can tell you more about our business" Ughh! _You_ want to tell me about your business in depth. I don't want to take on the burden of multi year lock in on data especially when I talk to a lot of startups all the time.

</comment></comment></comment><comment><USER6> Partway through a 12-week course, I had a student hand me an NDA to sign before he would tell me the awesome brilliant idea he was so eager to discuss. He was baffled when I didn't sign it on the spot and said I'd get back to him after I had a chance to read it. He never showed up in class again.

If you want me to sign an NDA, make sure you follow thru on your commitments to me. If you're a student and I'm the professor, _pass the course first_.

</comment><comment><USER8> The biggest problem with NDAs that I've come across is that often people want to slip non-compete type clauses into them. If it is a straight up non- disclosure agreement, it's going to cost the company more to sue you than it would ever be worth to enforce the NDA, so practically it doesn't have much effect. Of course, if the company in question has huge resources, you might want to be more circumspect.

</comment><comment><USER3> Way back when IBM was a big juicy target for lawsuits, an employee told me IBM doesn't sign NDAs: "We don't want you to disclose anything confidential to us." Because, how the hell would they even keep track of the information status across all those people and projects? Not realistic.

In my experience NDAs aren't practical to enforce and hardly anyone takes them seriously. I've seen them used mostly as a sort of social ritual, much like shaking hands, asking "How are you?", and "Hey, can you keep a secret?".

</comment><comment><USER9> I have one general rule when it comes to signing NDAs: I'll sign if you're paying me something. Why else would it be worth my time?

<comment><USER10> Yep. NDA = pay me. Non-compete = pay me. Anything that reduces my ability to make money means you compensate me for it or I don't agree.

</comment></comment><comment><USER11> A lot of this seems like mis-communication between a lawyer and a client. It sounds like people have talked to a lawyer. The lawyer says, "you need an NDA to talk with people about your business." The lawyer means for real negotiations about partnerships, etc. He never intends for it to be about semi-casual discussions about ideas. He is not in the tech business. "Talking about your business" to him means specific business strategies, pricing, bid and proposals, etc. And he crafted the NDA to cover these items.

A good alternative to "I'll never sign an NDA" is to counter with your own NDA that properly excludes the obvious. A good NDA, including ones that I have signed from major corporations, exclude information that has been made public in any way or that you hear from a third party. Or material that can be derived from public information.

<comment><USER12> That makes sense. But then you're into back and forth contracts in relation to your free gift of time and expertise. And once official rules are involved, relationship dynamics change.

</comment></comment><comment><USER13> I think this is something where the perception of utility is far different in the startup world that big enterprise. In the enterprise world, where there are too many people with too many complex business relationships to keep track of everything, and too diverse a group of meeting participants to know everything about them, and where you may not be discussing your IP or your business deals but the situations of your own customers or suppliers, an NDA is a no-brainer. It amounts to much the same thing as doctor/patient or attorney/client confidentiality principles and allows free, assumed-secure speech in any environment where all parties present may not otherwise have an appropriate level of trust to be comfortable engaging that way. In my business of contract engineering & manufacturing, we don't create nearly as much internal IP as we handle the IP of our customers. However, we apply our unique processes & systems to achieve the goals of our customers and if we want to discuss how we do that when engaging with potential new customers, we absolutely require NDAs. It doesn't help things that in the EMS industry almost all the big OEMs have contracts with several competing EMS companies (just look at Apple with Foxconn, Samsung and Pegatron, for example... or Dell/HP using both Quanta & Compal... but also using Flextronics, Sanmina, Jabil and Celestica.). It gets messy fast and ensuring legal recourse for accidental or intentional leaks is a necessity.

<comment><USER14> On the other hand, as an established business, if you needed the sort of consultation this guy is providing for free to would-be startups, you'd pay for it. Not only does this drastically change the risk/reward tradeoffs for the consultant, your issues are likely to be a lot more concrete and specific than pie-in-the-sky I've got a _revolutionary_ idea startup stuff.

</comment></comment><comment><USER15> If your business model is so fragile that merely discussing it threatens is a threat then you haven't got a business model at all.

Great businesspeople _talk_ about their business. They tell everyone: Friends, strangers, potential customers. All kinds of people can provide useful feedback and the more you discuss your business the better an idea you're likely to have of how to build a good product.

Besides -- the only people who ever ask me to sign an NDA are the people who haven't got anything worth guarding to begin with.

</comment><comment><USER16> There are plenty of good reasons not to sign someone else's NDA, but there's usually a very good reason not to ask someone to sign yours: without the willingness _and ability_ to _try_ to enforce it, your NDA isn't worth the paper it's printed on.

In reality only a fraction of the people who enter into agreements actually have the wherewithal to enforce them. This is particularly true when dealing with individuals (especially "entrepreneurs") and small business owners.

</comment><comment><USER17> Predecessor: [http://blog.jpl-consulting.com/2012/04/why-i-wont-sign- your-...](http://blog.jpl-consulting.com/2012/04/why-i-wont-sign-your-nda/)

HN discussion: [https://news.ycombinator.com/item?id=3844893](https://news.ycombinator.com/item?id=3844893)

</comment><comment><USER18> I normally don't sign NDAs, but I'm currently at a company that I'm really enjoying and they're putting one in front of me. The case they're making is that if they don't get all their devs to sign NDAs that they'll have trouble attracting investors. Thoughts?

</comment><comment><USER19> Why I'm rewriting a post that's already been written a dozen times before.

</comment><comment><USER20> Charge $1000 per NDA signing _on your terms_ and be done with it.

<comment><AUTHOR> I like this idea

</comment></comment><comment><USER21> I've heard of a few misguided attempts to go after former employees who, supposedly, violated anti-compete clauses, but I don't recall anyone being sued for violating an NDA. I'm sure it's happened, but it's got to be rare. Usually successful companies are too busy building a great product and don't have time to mess around with NDA lawsuits.

I'm curious, can anyone recall a successful lawsuit over a violation of an NDA? Particularly with regard to early stage startups.

</comment><comment><USER22> Tyler, good post. I agree with you on most of it. I think your issue really becomes (and this is why I refuse to sign them most of the time): the cost of defending an NDA is usually not worth the cost of the engagement. I.e. if the project is worth under $20k to you, its not worth the potential cost of hiring a lawyer to defend it. Also what are these people building? nuclear weapons? most ideas aren't as original as people think.

</comment><comment><USER23> It is very hard to copy the most important parts of a startup, even if you have some of the ideas:

\+ business model innovation

\+ go to market strategy

\+ execution, focus and efficiency

\+ iteration

\+ user/customer care and cultivation

\+ brand integrity and trust

\+ vision

\+ partnerships

Said another way, if it my idea and I am going to you, then I am doing so to brainstorm and get ideas from you too that may eventually conflict with your interests. Should you ask me for an NDA?

</comment><comment><USER24> No one ever sues over an NDA. The point of an NDA is to set up an expectation of confidentiality. It's easier than having the conversation that you expect the discussions to go no further which leaves the possibility of ambiguity.

Absolutely problems arise where an NDA is overly broad, the duration is excessive or there are circumstances where it is inappropriate but the idea of the NDA itself is not bad per se.

</comment><comment><USER25> Neither did Mrs Kildall. Just saying ;-)

<comment><USER14> Mr. and Mrs. Kidall, and back then IBM NDAs etc. were so onerous they would essentially own your product/company if they so choose. I was told this specifically about the MIT AI Lab's Lisp Machine, they were approached by IBM but turned them down after a MIT lawyer looked at the agreement.

Digital Research had an existing business to protect, Microsoft didn't have an OS business besides their licensed XENIX, and was just starting to branch out from computer languages (e.g. BASIC). It was a calculated risk for both, and for all we know against the Kidalls IBM would have gotten away with a lot more than against Bill Gates.

Who I'd note was massively connected through his family, e.g. his mother, per Wikipedia:

" _Beyond the Seattle area, Gates was appointed to the board of directors of the national United Way in 1980, becoming the first woman to lead it in 1983. Her tenure on the national board 's executive committee is believed to have helped Microsoft, based in Seattle, at a crucial time. In 1980, she discussed with John Opel, a fellow committee member who was the chairman of the International Business Machines Corporation, her son's company. Mr. Opel, by some accounts, mentioned Mrs. Gates to other I.B.M. executives.

A few weeks later, I.B.M. took a chance by hiring Microsoft, then a small software firm, to develop an operating system for its first personal computer._"

His father was principle counsel and later a named partner in a major white shoe law firm. He wasn't someone IBM could casually screw over.

</comment></comment><comment><USER26> Ideas are cheap. It takes people to implement them. People are expensive, good people are priceless.

</comment><comment><USER27> Sure I'll sign your NDA. But then you sign MY NDA before I give you any feedback on your genius idea. Seriously people, WTF?

</comment><comment><USER28> This NDA business seems far more prevalent in the US than in Europe. I've only been asked to sign an NDA at one place I worked at for several years. After refusing they just let the idea go and I didn't hear of the NDA ever again.

</comment><comment><USER29> Meh, just sign the NDA.

<comment><USER30> There's no point in me having you sign an NDA if I don't plan to sue you should you violate it.

I'm asking you to sign a document so I can sue you later. What do you get in return?

This guy says he's giving out free advice to strangers, expecting nothing in return. There's very little upside for him. So why should he take the risk, how would it benefit him?

<comment><USER29> I think your interpretation of "sign a document so I can sue you later" is pretty inaccurate. Someone is disclosing an idea and wants to protect themselves in case you decide their idea is worth implementing. I don't think it's an unrealistic request. Furthermore, most NDAs I've seen don't really protect much of anything.

The downside of saying 'no' is that you will never (or rarely) have them as a potential client. Maybe you have clients throwing themselves at you, but in my neck of the woods, clients aren't exactly a dime a dozen. I'm not going to sign anything that I feel would put me or my business at unreasonable risk, but no NDA I've ever signed has been worded that unrealistically.

To make a blanket statement that I'll never sign your NDA and NDAs are a dumb waste of time sounds like a difficult person to deal with right off the bat.

<comment><USER31> Did you read the article? The author is talking about NDA's from people who want to discuss startup ideas with him, _not_ NDA's from clients or potential clients.

<comment><USER29> Wow, so someone would sign an NDA for the purpose of having a free consult and nothing further? How is this some sort of bold statement that is making it to the front page of hacker news? "I won't incur risk for nothing in return". So brave.

Many relationships start with potential clients shopping around. They get a free consult. If that's not what this guy is referring to, then my mistake. I wouldn't sign the NDA either, but I could just as easily named this article "I won't stab myself in the eye".</comment></comment></comment></comment></comment>


Parents are Borrowing from Cesar Milan, the Dog Whisperer - <AUTHOR> http://www.nytimes.com/2009/11/22/fashion/22dog.html?_r=1&hp

<comment><USER2> _But some parents — particularly those weary of never-say-no techniques and child-rearing books suggesting that children should call the shots —_

I have three sons, aged seven, five, and three, and... well, let's just say that I have become a connoisseur of child-rearing books, and "children should call the shots" is not exactly a running theme. The hippy-dippiest of such books in my library, _The Discipline Book_ by Sears and Sears, uses the phrases "fix your child's behavior" and "train your child" on page three.

I think there are certainly a lot of parents who mis-discipline their children because they want their children to be their friends, or because they don't want to suffer the short-term pain of dragging a tantrumming child to his room in exchange for _maybe eventually_ preventing tantrums in the long run. (I certainly plead guilty to the second error.) But "be an authority figure" is not a new concept in the child-rearing literature, and it's not even an old concept that the Dog Whisperer has rediscovered.

Maybe there are parents whose children are driving them nuts, but who are so full of themselves that they never even think to crack a book on the subject of disciplining children, and then they watch this TV show about dog training, and dawn breaks over Marblehead.

</comment><comment><USER3> I searched the full text of this story for "Cartman", "South Park", and "Tsst", and finding none of them, decided not to read it. I'll bet that not one parent who claims to be "taking mental notes" about Cesar Milan has _not_ seen that show.

<comment><USER4> In the commentary for that episode Matt and Trey explained that they really believed it would work on children. They had viewers tell them it actually helped them raise their kids.

<http://www.youtube.com/watch?v=E5UvsHKtcyY>

</comment></comment><comment><USER5> "We thought that obedience was the enemy of love. We didn't want the kids to be afraid of us, but after a while we found ourselves wondering: do we have to do what they say the whole time?"

That sounds rather confused - one isn't the opposite of the other. Kids not having to be afraid does not mean you obey the kids.

</comment><comment><USER6> There was a show in the UK where they trained husbands like dogs.

<http://news.bbc.co.uk/1/hi/entertainment/4457416.stm>

Interestingly, much like Super Nanny (and I believe Dog Whisperer, though I've not seen much of it) they generally showed that "bad" behavior in the Husband (Child/Dog) was often a direct result of the behavior of the Wife (Parent/Owner) and much of the changes involved the Wife (Parent/Owner) changing how they deal with things rather than directly changing the Husband (Child/Dog).

One example was a husband who never helped with the chores. The cameras revealed that every time he tried to help his work was immediately criticized and often redone afterwards by the wife. Confronted with video evidence the wife realized the counter-productive nature of her actions.

This however didn't stop a reverse-sexism backlash as seen in the link above.

</comment><comment><USER7> once you accept that

1) humans are animals

2) before the age of 10 or so children are pre-rational

parenting should make a whole lot more sense. children do not come into this world ready to accept logical reasoning as justification for behavior modification. you have to train them that the alternative is unacceptable.

<comment><USER8> Re #1: meh. I guess you're right, though it's not a terribly useful point in this discussion.

Re #2: Bullshit. You've clearly never spent any time around kids if you think that kids younger than ten are "pre-rational". Kids start to reason way before age 10.

<comment><USER7> start being the key word. look into brain development. the field of child development has known for years many things that parents refuse to apply.

[http://en.wikipedia.org/wiki/Theory_of_cognitive_development...](http://en.wikipedia.org/wiki/Theory_of_cognitive_development#Formal_operational_stage)

<comment><USER9> I like the line: It takes 20 years to make a human being, but it only takes 9 months to make a savage.

</comment></comment></comment></comment><comment><USER10> South Park did an episode on exactly this - called 'Tsst'

<http://en.wikipedia.org/wiki/Tsst>

<comment><USER11> Direct link to episode (legal): <http://www.southparkstudios.com/episodes/103795>

</comment></comment><comment><USER12> What's the protocol on telling your child "I raised and treated you like a dog"? Do you have to wait until they're 18?

<comment><USER2> You soften them up for the news by telling them "I worked like a dog to provide for you".</comment></comment>


Under the hood of C++ lambdas and std::function - <AUTHOR> http://shaharmike.com/cpp/lambdas-and-functions/ <comment><USER3> If anyone is curious, as of C++14 you can `move` variables into a lambda scope (like Rust's move ||) as follows

        Foo foo; // Foo implements a move constructor
        auto l = [cap = std::move(foo)](){ do_stuff(cap);} // Make the lambda
        do_stuff(foo); // ILLEGAL. Cannot use moved value
        l(); // Run the lambda

<comment><USER4> At this time, what can Rust accomplish with the borrow checker that C++ can't accomplish with move semantics?

<comment><USER5> Rust's moves are implicit, making it easier to write code that doesn't copy heap allocated memory, and you can't get 'use after moves' like in C++ - <USER2> type system will pick that up.

<comment><USER4> Oh, having only read about and not used recent C++ practices, I assumed use- after-move would be caught at compile time. Looking around a bit, it seems there's not even a warning for this; is there a reason? It seems like it would be very useful.

<comment><USER6> In C++, "moving" and "copying" are a matter of class design. While you are expected to use move (resp. copy) constructors and assignments to, well, move (resp. copy); the language doesn't rule out using them for other purposes.

In Rust, assignment and argument passing always move, "moving" always does the right thing (make a shallow copy and invalidate the original object), and you can't override this behavior. Furthermore, Rust splits what C++ calls "copying" into two concepts: shallow copying (which is the same as moving, except the original object isn't invalidated, and the type checker guarantees you can only do it when it makes sense) and deep cloning (which may be expensive and needs to be explicitly requested by the programmer).

This is why Rust can track which objects are no longer usable.

</comment></comment></comment></comment></comment><comment><USER7> >Lambdas are also awesome when it comes to performance. Because they are objects rather than pointers they can be inlined very easily by the compiler, much like functors. This means that calling a lambda many times (such as with std::sort or std::copy_if) is much better than using a global function. This is one example of where C++ is actually faster than C.

That's insight I've never seen anywhere before.

<comment><USER8> Also C++ is generally as fast as C. If anything, it's faster thanks to increased opportunities for inlining.

Whoever says C++ is slower than C is misinformed and/or overgeneralizing.

Professional C++ programmers know this already though.

<comment><USER7> Well, much of C++ involves virtual function calls, and those are indeed slower than non-virtual calls. C doesn't have virtual calls, so that is perhaps one reason why C is generally assumed to be faster. That doesn't mean you must use virtual functions in C++; in fact, I don't use inheritance in my own code whatsoever, therefore I avoid the virtual calls but more importantly the restrictions that can creep into a tight OO hierarchy.

And std::function, from what I understand, is generally not as fast as a function pointer, a stored lambda, a function object, since it must do some run-time checks to see how to call what it is storing.

<comment><USER9> The only virtual call that you _necessarily_ get with polymorphism is the destructor call.

Whenever you _need_ to make a function virtual in C++, you'd need to store a function pointer in an equivalent C design, somehow.

<comment><USER7> Are you suggesting that C++ virtual functions have the same overhead as a C function pointer? I've never heard that; with the virtual call, there is the lookup + the invocation; perhaps a C app that stores function pointers in a hash map also has this sort of lookup, is that what you mean?

<comment><USER10> Vtable lookup in a typical C++ implementation is just loading a fixed offset in an array. In C terms, it's basically doing object->vtable[42]. In C code with function pointers, you're typically performing that exact same operation. You can go slightly faster if you store the function pointer in the object directly, at the cost of increased memory consumption per object if you have more than one function pointer.

</comment></comment></comment></comment></comment></comment><comment><USER11> I kind of wish this article had gotten into some details of how various compilers implement std::function; while it was nice to see some details of clang++'s 32-byte size of all std::function to remove the need for dynamic memory for many function objects, I'm still wishing I had more details on efficiency/cost of using std::function vs. plain lambdas or function pointers or other solutions.

</comment><comment><USER12> From the article: _" My favorite expression in C++ is [](){}();, which declares an empty lambda and immediately executes it."_

Sigh.

<comment><USER13> In JavaScript it's quite common to see self executing lambdas like this (not empty though), because there variables have function scope rather than block scope so it's a way to limit the scope and capture closures. Does it have any practical use in c++?

<comment><USER6> No, you don't need this in C++. You can use a normal (brace-delimited) block for this purpose.

<comment><USER14> The key difference being that a lambda is an expression, while a block is not, unless you use GCC's statement-expression syntax of "({…})".

<comment><USER6> Oh, I forgot that, you're absolutely right. I'm getting too used to languages where everything is an expression. :-)</comment></comment></comment></comment></comment>


White House source distills a Trump Doctrine, and it has a swear word in it - <AUTHOR> https://www.marketwatch.com/story/white-house-source-distills-a-donald-trump-doctrine-and-it-has-a-swear-word-in-it-2018-06-11 <comment><AUTHOR> 'We're America, bitch.' \-- it's like we just turned into the end of an 80's action film after the bad guy dies.</comment>


Mixpanel/WePay (YC S09) tech talk: PHP Inventor Rasmus Lerdorf talks about PHP - <AUTHOR> http://www.facebook.com/event.php?eid=121204164568895

<comment><USER2> Oh, I thought I was going to see a talk but instead I get an event page. :-(

<comment><AUTHOR> yep it's an event--we may stream it/throw up a video. Let us know if that's something you really want.

<comment><USER3> I would love a streaming video.

</comment></comment></comment><comment><USER4> It's always fascinating to hear Rasmus talk about PHP and hear how radically different his view of the platform is when compared to common usage patterns "on the ground".

</comment><comment><USER5> Why? I thought he didn't care about programming at all

<comment><USER6> He has come to apologize.</comment></comment>


Whitespace interpreter written in Python for my OU final module (TM470) - <AUTHOR> https://github.com/yasn77/whitepy <comment><AUTHOR> As the title suggests, the link is to my Whitespace interpreter project that has been written for my final OU project. As part of the project I would like to add some discussion about coding in the open, specifically how to deal with things like pull requests and giving credit to contributors. I would really appreciate any code reviews/suggestions/PRs... Please feel free to open issues.</comment>


Steve Jobs, Superman - <AUTHOR> http://uncrunched.com/2011/10/09/steve-jobs-superman/

<comment><USER2> Akio Morita is as close as I've seen to a Steve Jobs in my lifetime - I was into his work in the 80s thanks to the Walkman, but that was the last big notch on his belt that he'd been working on since just after WWII. Even if you think about a Nolan Bushnell -- he did some amazing work, but he did have the hit after hit that Jobs did. My guess is that like a moon landing I'll be lucky to see that again before I die.

PS For those of you who don't know about Mr. Morita and the story of Sony I recommend the book "Made in Japan" which inspired me very much back in the 80s: <http://en.wikipedia.org/wiki/Made_in_Japan_(biography)> [http://www.flickr.com/photos/michaelpinto/sets/7215762682198...](http://www.flickr.com/photos/michaelpinto/sets/72157626821983693/)

</comment><comment><USER3> Blog is hosted at Wordpress.com, so iPad users be warned: It has OnSwipe.

<comment><USER4> This is my first time witnessing onswipe.

Since I don't have an iPad (or any tablet device) I opened it up in the simulator. At first glance, I felt it was fine. Clean, readable. Don't see a problem. But viewing the homepage and navigating onward was a real 'ugh' moment.

I understand why wordpress bloggers install plugins like wptouch. Small screens and all that but why the iPad?

<comment><USER3> > I understand why wordpress bloggers install plugins like wptouch. Small > screens and all that but why the iPad?

The bloggers typically don't install OnSwipe, or even know that it is there. That's Wordpress.com's doing. By default on all Wordpress.com blogs, if your visitor is on an iPad then the OnSwipe theme replaces the theme you chose for your blog. As far as I can see, there's nothing that makes it obvious to the blog owner when they pick their theme that it is being overridden on iPad.

If the blog owner somehow becomes aware of it, there is a setting in their blog control panel that lets them turn it off.

</comment></comment></comment><comment><USER5> One of the greatest projects Steve Jobs undertook, after coming back to Apple, was to ensure Apple wouldn't need Steve Jobs. Apple University was created to perpetuate the culture he created, and perpetuate the company by keeping its executives operating according to his standards.

I'm sure these efforts accelerated after he was diagnosed with cancer, but they existed before that time, and even to some extend before he was pushed out the first time.

Steve Jobs last product was to Bottle Steve Jobs. I think that this is the most proprietary product Apple will ever make. I don't think anyone outside of Apple will ever see it, and it will be closely guarded.

We'll see how successful he is. In a way this is a test of the great man theory. I don't think that any other point in history can you have a great man die, and leave behind such a set of capable, intelligent executives, who are also absolutely aligned with the beliefs of the dear leader.

No corporate turnaround or technology story can compare to Apple over the last decade, and Tim Cook has been at Apple for 14 years, much of that mentored by Jobs.

Let's hope the project was successful, and Apple is able to keep operating as the singular source of innovation in our industry.

But even if it doesn't, it won't be for lack of effort on Steve's part.

People credit him with a lot of products, and while all of them were more the result of others under his guidance than his inventions, he did create one great machine... and that is Apple. Apple is his legacy. He has tried to preserve it.</comment>


Ask HN: New job at startup. I am overwhelmed. Is this normal? - <AUTHOR> I started a new ruby remote developer job in a startup. The money is good and it looked like a tech challenge. However, since a month ago (when I started), I am totally unhappy. The goals are impossible to reach, which means working extra hours or weekends, and the organizations is terrible. You can work on your task because you depend of a colleague to finish his task first. The documentation is pretty bad too, so I have to keep asking my colleagues about new parts of code I have to work.<p>Is this normal? Or is this specific startup that is making my life miserable? <comment><USER2> It's about normal. And you've not had to deal with multiple project changes (including technology changes) yet, due to pivoting. Be happy! This is what you're learning!

The other extreme, is development at NASA, where productivity is 100 LOC per programmer per year. Can you imagine working one year on the same 100 Lines of Code, fine tuning them, testing them, debugging them, documenting them for one year?

When you'll feel better and unchallenged at this startup, you'll have the choice with a new startup with new challenge, or a normal programming job in the middle.

Or if the startup grows, eventually it should stabilize, with bigger teams, more communication, ie. more documentation will be needed, with more process to still keep the teams efficient (so you don't have to wait on colleagues to finish), etc.</comment>


When a Company Is Put Up for Sale, in Many Cases, Your Personal Data Is, Too - <AUTHOR> http://www.nytimes.com/2015/06/29/technology/when-a-company-goes-up-for-sale-in-many-cases-so-does-your-personal-data.html

<comment><USER2> This is one of the reasons I didn't put Hacker Monthly up for sale when I've decided to shut it down.

Our subscribers (a little over 10k) trusted us enough to provide us their contact information (and mailing address for print delivery). Turning them over to 3rd party (even after due diligence) just didn't seem right.

</comment><comment><USER3> It hardly even matters if the company is put up for sale.

Assume a kitten-loving company that will rather die than let your data be abused. They take VC funding, hit a bad turn, take more VC funding. Now the board is controlled by VCs. You're now trusting the VCs with your data and not the company itself.

Assume a second kitten-loving company that will rather die than let your data be abused, and is run by only two co-founders. You give them all your data. The two co-founders end up in a plane crash. Their company is transferred to... who knows really? Your data is now sold off in liquidation to.. who knows really?

<comment><USER4> > Assume a second kitten-loving company that will rather die than let your > data be abused, and is run by only two co-founders. You give them all your > data. The two co-founders end up in a plane crash. Their company is > transferred to... who knows really? Your data is now sold off in liquidation > to.. who knows really?

At least in theory, that's possible to avoid. If you accepted the data only under a specific set of terms, and ensured either that the original terms under which data was obtained are those that apply, or that specific privacy and usage terms were required to survive into any successor agreement, then in doing so you'd bind any future owner of the company by the same terms. You can't sell (or liquidate) something you don't have the rights to yourself.

<comment><USER3> Assume the only surviving beneficiary of the company is a Chinese nationalist. All of the company and servers are transferred over to him. He quickly moves all the data over to mainland China and uses it for.. who knows?

Even if you had laws, I'm not sure they would help in this case.

Besides, even if you have perfectly written self-binding contracts, there's nothing stopping the next owner from being a scumbag and finding clever or illegal ways around the deal. eg, he could 'find' a million dollars on the pavement in the surprising position where he happened to 'lose' a hard drive with all the data. Exaggeration obviously, but if the data is in someones possession there are a lot of things that can be done with it without overtly breaching any agreement. Eg, he could start a new company himself that 'leverages' the data to provide all previous customers with 'incredible deals and benefits'.

<comment><USER4> You're now assuming the new owners are willing to commit illegal acts, or at the very least breach a contract. (And the newly started company would be breaching the contract as well, if it was written to exclude that.) That's at least a significantly higher bar than "the highest bidder can do whatever they want with the data", which is the current state of things.

But yes, even better protection would be never collecting data you don't need in the first place.

<comment><USER5> > But yes, even better protection would be never collecting data you don't > need in the first place.

"Germans even have a word for it: Datensparsamkeit, the principle of only collecting the bare minimum of data necessary." ([http://qz.com/390988/germans-are-paranoid-that-the-us-is- spy...](http://qz.com/390988/germans-are-paranoid-that-the-us-is-spying-on- their-data/))

Since the concept was established in 1983 by the constitutional court, there's probably a body of knowledge around that, just in the 'wrong' language and hence less known in the anglo-saxon culture.

<comment><USER6> Britain has similar laws, of a similar age. We don't have a word for it, but I think there's an attitude that companies shouldn't be given more data than needed, and a suspicion when they ask.

"Personal data shall be adequate, relevant and not excessive in relation to the purpose or purposes for which they are processed." [2]

Which the guidance[1] explains as "So you should identify the minimum amount of personal data you need to properly fulfil your purpose. You should hold that much information, but no more. This is part of the practice known as "data minimisation"."

[1] [https://ico.org.uk/for-organisations/guide-to-data- protectio...](https://ico.org.uk/for-organisations/guide-to-data- protection/principle-3-adequacy/)

[2] [http://www.legislation.gov.uk/ukpga/1998/29/schedule/1/part/...](http://www.legislation.gov.uk/ukpga/1998/29/schedule/1/part/I?view=plain)

<comment><USER7> And how much data is google allowed to store about us?

And why isn't the user allowed to specify the amount of bits that google store about us?

There are 7 billion people on this planet. If I allow google to store at most 32 bits about me, then at least that data cannot uniquely identify me (roughly speaking).

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> I was talking about this with a friend of mine no earlier than yesterday. We were discussing about how Facebook Messenger doesn't need an account anymore, but only your phone number. For years I tried to not give my phone number to Facebook (for various reasons, but I knew I'd someday "need" to give them my number). Well turns out they've had my phone number associated with my name ever since they bought Whatsapp. Along with all the conversations I've had on this service probably. This article definitely points something that should be kept in mind when uploading personal info online, althout this isn't anything too new.

<comment><USER9> Well the case of phone number information is even more devilish - it is in the phonebooks of your (not so privacy-savvy) friends so you have almost no control over it.

<comment><USER10> This is the worst part about your contact details, just think about the number of times you get those spam emails when one of their accounts gets hacked, not to mention address books mobile APIs.

Now think about how they often contain your home address, birthday, spouces, photos etc...

</comment></comment></comment><comment><USER11> Yes. Which is why you should never trust a company with info you wouldn't trust their competitor (or any other company for that matter), regardless of how kitten-loving and un-evil they are today.

</comment><comment><USER12> Is this a surprise?

If a company buys yours, does anyone expect them to buy everything expect for the information on their customers?

That gets nasty if a company is selling only the data, but the legalese that allows companies to sell data to whomever may be buying the company shouldn't come as a surprise.

<comment><USER13> It's not about it being a surprise that this happens as long as it is allowed. It's a surprise that there are no laws in place to protect consumers.

Especially in times when most "tech savvy" people advice the use of cloud services for backups, syncing, sharing and communication, a sale of a company becomes a privacy nightmare for those who listened and tried out these services. There should be more people that spell out that it is not safe to upload your data to someone else's computer.

Would you upload a backup of your data to my computer? Of course not. Would you do it if I made an over-designed one page website and offered an iOS/Android app? There are a lot who do that every day. Once the deed is done, I shouldn't be allowed to do whatever the hell I want with your data. Selling or sharing data with third parties should be strictly opt-in, no matter the circumstances.

Imagine your Dropbox, Password manager or backups being sold to the highest bidder. A company which you previously trusted becomes greedy and sells you out. There's nothing you can do about it because "you should have read the small print 10 years ago, when you started using the service." It's not surprising that there are people who'd sell you out. What is surprising is that it is allowed.

</comment></comment><comment><USER14> If I want to buy ebooks, games, music, movies etc. online, it's extremely difficult to find a company that actually respects my privacy (as opposed to just saying they respect my privacy - plenty of those). I wonder, if I bought myself one of those Visa giftcards, and just made up a fake name and address, would that be any problem? Would I be breaking any laws or anything?

<comment><USER15> I've tried a few times to pay for stuff online using gift cards and the transaction was always declined (n=3)

</comment></comment><comment><USER16> If you submit personal information to _any_ business you're putting yourself at risk.

Social media companies have a lot of data, yes, but most of it is pretty benign. The world should be far more concerned about the PII that gets transmitted around less tech-savvy smaller businesses and non-profits. Particularly for-profit education companies.

Education companies have gobs of very sensitive info like social security numbers, previous addresses, family relationships with full contact info, medical history etc and many of them are clueless when it comes to privacy and data security. Not only are they at high risk for data breaches but their lists can also get acquired and traded when the business changes hands.

</comment><comment><USER17> The bigger issue is bankruptcy. Creditors will look to sell any assets that can be monetized, and given the nature of the proceeding, the court will have a lot of discretion in allowing them to do so, much more so than a private purchaser.

</comment><comment><USER18> I'm guessing everyone who works at a big company and used Secret was hoping that said big company didn't acquire Secret's assets when they folded.

It does always make me think twice before committing to using a startup's product, you never know who is going to fail and sell assets to the highest bidder, or who is going to get acquired by a big company whose ideals you don't like.

The problem is that oftentimes, the data is one of a company's most valuable assets, so you can't just make it off-limits since that would erase a lot of the value. I just wish there was a better legal framework to handle these kinds of situations.

</comment><comment><USER7> I sure hope Google never goes up for sale.

</comment><comment><USER9> I wonder how much of the price of the big acquisitions of recent years (e.g. instagram, whatsapp) is justified by the value of personal data.

<comment><USER19> well, outdated, but personal data and its quality has indeed a value:

[http://www.statista.com/statistics/289505/social-networks- va...](http://www.statista.com/statistics/289505/social-networks-value-per- active-user/)

also user generates revenue by themselves

[http://www.technologyreview.com/article/424650/how-much- is-a...](http://www.technologyreview.com/article/424650/how-much-is-a-user- worth/)

edit: updated link to more recent stats

</comment></comment><comment><USER20> Considering so many companies whole business model is based on personal data, this not a surprise. Seriously, how could Uber be valued so high without every customers personal info being sold off to the highest bidder.

</comment><comment><USER21> That's actually a good case. When a company goes bust your personal data could end up _anywhere_.

</comment><comment><USER22> Some time ago I participated in some Startup Accelerator.

Was part of Startup with really fast growing user base, but small amount of sales. What some investors really suggested to do with our database - is to sell it!

So companies can sell personal data (and they do it) not only when put up for sale, but at any time.</comment>


So You Want to Make Games - <AUTHOR> http://szafranek.net/blog/2017/05/04/so-you-want-to-make-games/ <comment><USER2> Mobile industrie are not the same than game for PC, they are really focused more on money than the game itself, they are for dumb users (sorry I don't have other word for, and it's not even casual) making game like this is more commercial than a passion for gaming.

There's plenty exemple of sucessful game that have only few developper and are better than AAA.

I personnaly have started to make game because I like it to try other approach of programming and I want try to do things that other don't do more or don't focus. Like choice, cooperation, rewards on cooperation, etc.

Just focus on doing things that YOU would play, that make fun and people will talk about it, pay for it (I'm not even close to this but finish something always give reward.)

<comment><USER3> Mobile games are focused on exploiting addiction on people vulnerable to them. There are no interesting gameplay process, no nice graphics, no art.

Traditional games vs mobile is the same as journalism vs clickbait. Mobile games are in the same league as downloaders, browser toolbars, doorway pages.

<comment><USER4> I would say that the top games have good gameplay process, nice graphics and good art.

I've played some where I've thought - "oh, this game would be so much better if it wasn't stuck in a IAP addiction mode".

I never get very far in these games due to the artificial IAP barriers.

<comment><USER5> I've pretty much given up on mobile gaming. People just aren't willing to pay money for a quality game. These days if I play a game on my phone or tablet it's usually a board game (one of the few genres that's mostly free from exploitative IAPs) or an emulator.

</comment></comment></comment></comment><comment><USER6> One thing I would strongly recommend _against_ is going to a private game- development school. These tend to market very aggressively and be _very_ expensive. The education provided is hit-or-miss, largely dependent on the specific high-turnover instructors you get.

In my province, you can pay > $25k for an 18 month program. At the end of that program, only the top handful of programming students will actually know how to code vs. copying and pasting.

If there's any way you can get into a college or university CS or engineering program, do that instead. Four years may seem like a long time, but if you include the time spent looking for a job after your 18 month program, it could easily be 4 years before you get your first reasonably paying game gig. Also, you can do a four-year engineering degree for about 8-10k a year in Ontario. Co-op can help defray those costs further and make you more attractive for that first full-time job.

Universities all have game-development clubs. Also, these are the people you're competing with for that first job. I would much rather hire a CS grad from University of Toronto, or University of Waterloo than someone who barely knows C# from a game school.

The flip-side is that there are exceptions. It's possible to find those diamonds-in-the-rough who weren't able or willing to go to university.

</comment><comment><USER7> Focusing only on for example the Apple app store in deciding whether to go into making games or not is not a great idea, since it's by far the most congested (as the article also shows).

But for the moment other markets also exist, such as desktop where one can still be very successful (as long as you can hit a certain level of word of mouth).

<comment><USER8> What evidence do you have that your game will make any more on the desktop than it would on the App Store ? (Given the same amount of word of mouth)

<comment><USER9> Top paid app on the app-store show games that are of significant age (minecraft, plague inc) or with significant name recognition (monopoli, risk, etc) hinting at a stagnant market for independent, paid for games.

Now, evidence is a hard word, but I've the hunch that unless your game is an addictive style freemium incremental, all other genres are as of today more suited to desktop, because of user disinterest on paying a mobile game upfront.

<comment><USER7> Pretty much this.

It's far more difficult to gain recognition and get word of mouth going on the app store (due to volume), combined with the lower selling point as compared to desktop (for example $1 vs $15). People don't want to pay up front for games and the race to the bottom on prices have really hurt the little guy.

All graphs I've seen of sales on the app store show an inordinate amount of sales for the top sellers, whereas the tiers in the middle and below don't make anything significant at all.

Then go look at steamspy etc stats, even games 2/3rd's down the lists for a year's releases would have made a few thousand $ (as compared to app store where they might have been sitting on tens of $).

Either way, learning to code via writing a game is something I recommend for anyone, anywhere.

<comment><USER10> And then I guess mobile gamers don't feel so excited and invested in their $1 break time distraction that they would talk about it on chats, streams, forums, or with friends. Heck I don't think I've ever seriously heard people discuss a mobile game, whereas discussions or passing mentions of PC & console games (both old and new) happen all the time on various media.

<comment><USER11> The only two examples of that I can think of are Puzzle&Dragons and Clash of Clans. I suspect it definitely contributes to them being so large.

</comment></comment></comment></comment></comment></comment><comment><USER12> This video will always stay relevant: [https://www.youtube.com/watch?v=lGar7KC6Wiw](https://www.youtube.com/watch?v=lGar7KC6Wiw)</comment>


Keep a developer diary with /dev/journal - <AUTHOR> https://devjournal.tech <comment><USER2> I've been tracking my personal diary with [http://jrnl.sh/](http://jrnl.sh/) and backed up encrypted on GitHub. Why use this?

<comment><USER3> Neat! I like how it balances simplicity of use (should be no harder than `echo "shipped v1.0" >> journal.txt`) and useful features (tags, dates, export to json/markdown/etc) and stays in plaintext format

</comment></comment><comment><USER4> Sounds nice enough, but I am not being _shown_ anything. I would like to at least see a mockup or a barebones demo before giving up my email.

</comment><comment><USER5> So the website tries really hard to not give much information.

Given the name I expected some sort of power user desktop app integrated with the system, but after going through the form it actually is a very simple webapp.

There's two buttons to create text/code entries, a per-day view of said entries, and a search bar.

I think that the idea is good, I could certainly use a better tool than my text editor to keep a journal of everything that matters to me, but in its current form I don't see how having to manually post text notes on this webpage would make the task significantly easier.

<comment><AUTHOR> OP here, thanks for taking the time to look at this. Quite agree that it is light on features and is a minimal implementation of what we would like to build. It's something that we thought would be useful, that we would use ourselves and wanted to get some early feedback to see if the idea has traction.

</comment></comment><comment><USER6> I'm disappointed that this doesn't actually emulate a Unix device.

<comment><USER7> Streaming to /dev/journal would be a tight little feature. Maybe it has an API?

</comment></comment><comment><USER8> I feel like keeping a journal/working notes is an underused tool by most programmers. It's amazing how often I think. "What was that bash command I used 9 months ago" or " What project was I working on 2 years ago. I actually keep 4 separate ones. In order that I started doing them.

0\. A personal journal that just tracks what I'm doing and how I feel about it. Both work and personal

1\. A work version of "How To" any time there's an arcane command, or set of steps I need to perform on an irregular basis.

2\. A work $current_project working notes. This is just a brain dump of every thing I'm thinking about for it and every piece of information I need.

3\. A personal $current_project working notes.

<comment><USER9> Do you simply store what you're doing or also the how? Some folks recommend keeping a record of your thought process while designing/working on things. Others keep records of bash commands/other factual info.

What's your approach?</comment></comment>


Tmpfs considered harmful - <AUTHOR> https://rwmj.wordpress.com/2012/09/12/tmpfs-considered-harmful/#content <comment><USER2> Minor disagreement about the following: _"Everyone must worry about whether their files need to survive a reboot"_

I believe there was never such expectation of /tmp. On many systems it's being wiped periodically or even when the user's last session ends. The example app(s) that use /tmp for drafts need(s) to be fixed.

<comment><AUTHOR> Sure, but if the power goes down, there's at least a _chance_ that I may be able to find that long email I was writing. With /tmp on tmpfs, it's gone.

<comment><USER3> That's why the GP considers mutt broken. Drafts should be stored in ~/.mutt or /var, not /tmp. Files in /tmp should not be expected to survive a process.

<comment><AUTHOR> This is exactly the point of the posting. Every program has to be examined for this problem, and it forces a complex decision about the storage hierarchy onto every programmer.

<comment><USER4> That's like saying "RAM considered harmful", because every time a developer has to think "do I just store this in memory, or do I sync it to disk" "it forces a complex decision about the storage hierarchy": /tmp is simply RAM that has the API of a file; it used to be implemented using a horrible kludge with files on disk that were periodically deleted, but with tmpfs the dream became a reality.

<comment><USER5> RAM really is a harmful kludge. Neither Turing machines nor lambda calculus call for some of an algorithm's state to suddenly be obliterated. The only reason we put up with it is that disk and SSD are so much slower.

<comment><USER6> Speed is not the only benefit of RAM. The internal data structures of most programs are gnarly messes of intertwined pointers, fragile, easily corrupted, hard to upgrade in place, almost impossible to fix when they break. The division between RAM and disk forces everything to be serialized at intervals to clean storage formats that can be reread for a fresh start. As a practical matter, that's a big enough benefit to justify enforcing the division at an API level even if disk were as fast as RAM.

<comment><USER5> The industry might produce less worthless crap without the crutch of "it's not quite unusable if you start over often enough".

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> "Everyone must now be careful never to store a file in /tmp that might grow large"

If you're going to trash my /tmp with gigantic files please don't. Really

"it's better to fix the filesystem to make it faster"

Yes, let's spend adding more complexity to the file system to work out every /tmp abuser out there. But his original point was _avoiding adding complexity_ in the first place

So basically, he contradicts himself.

Mounting tmp as a memory backed fs is great (to which there may be better options than tmpfs), avoids (potentially) spinning up disks covered in rust for minor tasks.

<comment><USER8> >If you're going to trash my /tmp with gigantic files please don't. Really

I write statistical programs that often generate temporary intermediate files of multiple GB size, which need to persist at the end of runs for trouble- shooting, partial re-runs etc. i.e. the software shouldn't delete them when it's finished, but they don't need to be kept long term. I kept forgetting to delete them when I finished a session and my disks kept filling up, so I decided to use /tmp and let the OS manage the space. Is there a better way to manage large tmp files than this that I'm missing?

<comment><USER9> Given that they should persist, the better way would be /var/tmp I would think, at least if persistence means "should survive reboot".

Even before shifting to tmpfs I'm pretty sure Fedora was erasing the contents of /tmp at startup (and I know Gentoo/OpenRC is).

There might be an even more appropriate FHS-compliant directory (/var/run perhaps?)

<comment><USER8> Apologies, by persist I meant just beyond the end of that run of the software (i.e. the software itself couldn't manage/delete the files), to see what went "wrong". Deleting at reboot is perfectly fine.

/var/run "This directory contains system information data describing the system since it was booted" which doesn't seem to fit my use case that well. Not to say there isn't another directory that does fit, but I haven't found it.

</comment></comment></comment></comment><comment><USER10> 9 times out of 10, tmpfs is explicitly _not_ for use mounted as /tmp. The only obvious exception I can think of are cluster nodes where the workload is specialized and the node has no local storage whatsoever.

I guess it only takes one silly person to connect "tmp" in the name to "/tmp", and the rest is history.

<comment><USER11> sysfs is mounted on /sys

debugfs is mounted on /sys/kernel/debug

securityfs is mounted on /sys/kernel/security

So tmpfs is mounted on /tmp? Can see that...

</comment></comment><comment><USER12> Linkbait headline. Thought it was going to be about a gotcha with tmpfs in general, but it's only about _one_ specific use of tmps in _one_ specific -not even release- version of _one_ linux distribution.

I get that the guy want's attention for this life-and-death issue, but linkbaiting is just mean :(

</comment><comment><USER13> Why on earth would anybody ever use tmpfs for /tmp? If I'm writing a program that deals with a big file, and I want to temporarily write something to the filesystem, it is because I _dont_ want it in memory. Why would you ever write to /tmp for any reason other than to get something out of ram for a while?

<comment><USER14> I have been using tmpfs for /tmp for many years (since 2005 IIRC). Note that I do have large amounts of swap space (typically 64GB).

One simple benefit is that files there do not get caught in backups - they are temporary detritus so I don't want backup space wasted by them.

The major benefit is that fsync is really slow on Linux. Typically it turns into a sync, and a lot of programs like to ensure you don't lose data by being fsync happy. For temporary stuff that is even more painful - you don't care about data loss - that is why it is in tmp in the first place.

TLDR: I prefer filesystem operations on transient/temporary files and data to run at the speed of RAM, and not end up in backups or waiting for syncs.

</comment></comment><comment><USER15> Oh, i hope they revert this change!

The big trouble for me would be "Everyone must now be careful never to store a file in /tmp that might grow large". I often use /tmp for all kinds of temporary storage. Be it a small text file or a GB big tar file.

<comment><USER16> Rare use case...

I remember CD burning softwares and torrent clients asking for special temp directories to be used for that.

Allowing every day applications to create GBs of tmp files would mean you would need to worry once your partition has less than 100 GB free.

However, nobody stops you from mounting /tmp anywhere else or even disable tmpfs.

<comment><USER15> Very common for me, not so common for you. ;) And: when is use /tmp on my laptop, it gets cleared after reboot, so that's perfect for _temporary_ files..

</comment></comment></comment><comment><USER17> _One of the hardest parts of writing a compiler is register allocation._

Not quite. There are many much more difficult problems in a competitive optimizing compiler before hitting that step.

You can get reasonable results from even a linear scan allocator, which is simple.

<comment><USER18> It really depends on the architecture. There are some architectures with only 1 register, and others with many thousands of registers.

Current x86 implementations do a good job of being fast even when registers spill.

I've seen dual-issue Power cores (32ish registers) that only have 16k of 4-way dcache, which means register spills can easily kill performance.

</comment></comment><comment><USER19> It makes sense in certain cases to use tmpfs for /tmp. However, I'm not sure this is on desktop machines, which (generally) have lower RAM than servers thrashing their /tmp directories.

<comment><USER20> Even in that case, using tmpfs on /tmp sounds like band aid. If there are applications that suffer performance because stuff it puts in /tmp , then change those applications - possibly by using an application specific tmpfs , or a new system wide tmpfs that doesn't overload something as ubiquitous /tmp

<comment><AUTHOR> The systemwide tmpfs already exists: /dev/shm.

</comment></comment></comment><comment><USER21> Bad title. tmpfs is good. Fedora maintainers assuming that all of /tmp should be in tmpfs is bad.

Apps are already in the habit of writing a lot of expendable garbage to /tmp that doesn't require the fast I/O of tmpfs. Clogging RAM with this junk is bad idea.

</comment><comment><USER22> Here, let me man 7 hier that for you:

/tmp This directory contains temporary files which may be deleted with no notice, such as by a regular job or at system boot up.

</comment><comment><USER23> > "Everyone must now be careful never to store a file in /tmp that might grow > large"

Be warned that when he says this, he doesn't mean it will eat all your memory, it will only grow upto a maximum size (by default half of your ram). When this is reached, it acts like any other filesystem that is full: you get write errors. There is actually another implementation called ramfs, which doesn't have such a size restriction. However, tmpfs is what is actually being implemented here. The ramfs itself is more of a 'toy' filesystem, also being quite limited, including not being able to use swap space (unlike tmpfs).

</comment><comment><USER24> Running out of swap and memory is one thing, although unlikely considering how much of that stuff we've got nowadays. I for instance have 8gb of main memory and 10gb of swap space. 300mb are used after system boot (still too much). That leaves me with plenty of space to "waste" on temporary files in a tmpfs.

The Linux FHS explicitly states "Programs must not assume that any files or directories in /tmp are preserved between invocations of the program." That's not only reboots. It's _not meant_ to be used to store drafts or anything that you might want to reopen at a later time. That's what we've got /var/tmp for. The FHS specifies as follows: "The /var/tmp directory is made available for programs that require temporary files or directories that are preserved between system reboots. Therefore, data stored in /var/tmp is more persistent than data in /tmp".

Tmpfs isn't harmful because of this, it's the default mutt configuration which is broken. If developers would have adhered to the standard the problem wouldn't exist. Since programs _should_ adhere to the standard, because decisions like the one in question are made upon it, they _should_ be reviewed and their default configurations _should_ be changed in order to fix this issue.

</comment><comment><USER25> My theory on this is that it's intended as a step to avoid SSDs writes.

<comment><USER26> Exactly - this is a major benefit of using tmpfs on /tmp

</comment></comment><comment><USER27> Example of exactly when to use hard disk and when to use tmpfs:

User browsing the web for a month without rebooting. Flash stores temporary files in /tmp/. For a month straight, Pandora is pumping out songs to /tmp/ as a cache. 43829 minutes in a month, imagine an average of 3 minutes per song that's 14609 songs, at an average 1.5 megabytes per song that's 7304 megabytes that's 7.13 gigabytes. Probably shouldn't be stored in RAM.

On the other hand, you have ganglia clusters of about 2,000 hosts. You have multiple gmetad's collecting data from different data sources and pooling it into your web interface box. It's updating ~10,000 tiny files every 30 seconds. Your i/o wait and system time is through the roof. You move the place gmetad writes to a tmpfs mount, and rsync to the disk every minute. Suddenly the i/o and system times are at 0.01%.

Tmpfs _for /tmp/_ is considered harmful, but extremely helpful in other cases.

</comment><comment><USER28> The fact is, is that not every app that uses /tmp does so in a safe manner.

As long as that is true, it's not a good idea to use tmpfs for /tmp.

It's perfectly reasonable, however, to use tmpfs for, say, /var/local/tmp and let individual users point $TMP at that. Want to live fast and dangerously? Set $TMP.

<comment><USER19> This assumes processes use $TMP.

</comment></comment><comment><USER29> I'd disagree with the more global point (in the title) that tmpfs is harmful: it's actually quite handy for all sorts of things.

As an amusing example, the SHM (shared memory) system in linux is actually implemented on top of tmpfs (/dev/shm is a tmpfs mount).

Other uses include CoW shadow mounting (when unioned to an immutable filesystem).

That said, the point that /tmp should not be a tmpfs mount is actually a decent one, just because we're used to the idea that /tmp is neither space- constrained (it's scratch space) nor extra performant.

</comment><comment><USER30> I'm surprised no one is chanting "CADT" and linking to "What killed Linux on the desktop". This sort of subtle breakage over time is absolutely goddamn maddening.

</comment><comment><USER31> Solaris has done this for many years; it's not the end of the world as the author believes.

</comment><comment><USER32> What's wrong with swapfiles?

<comment><USER23> It should be mentioned that swapfiles are accessed directly, going around the filesystem. They can suffer from fragmentation if you don't create them when the filesystem is fresh, however.

</comment></comment><comment><USER33> tmpfs is awesome to run rails from (i.e. for development).

IO bound becomes CPU bound so you're getting as good speed as you can get.</comment>


Show HN: We manage your code duplication. We want your bugs to stay fixed - <AUTHOR> http://www.qamine.com <comment><USER2> Thank god! I copy pasta code all day long and this is exactly what I need.

I heard if you don't repeat yourself then you don't run into this kind of thing, but agile startup nodejs ninjas have no time for that

<comment><AUTHOR> You just made my day, kind sir :) We work really hard to hear these kinds of things. Thank you!

<comment><USER3> Can't decide if that went over your head or you're trolling back...

But seriously, this seems to be checking for the antithesis to good code and I imagine a lot of programmers here are thinking 'you shouldn't need it!'. So sell it a bit more as your website doesn't.

On the code bases you've beta tested this on, do you really identify this kind of percentage of replication? Isn't that a sign the code is bad and should be abstracted or does this help in another way?

I'd want to see some real life examples on your site somewhere on some public repos, where are they!

<comment><AUTHOR> I've been finding that the messaging part is tricky. But you're right; we are still finding the perfect way for us to message what we do. The thing is that, we've been finding that the average project on github (specially those using ruby and javascript) doesn't have a huge amount of code duplication (I'm really thinking about making a blog post about it). However we believe that there is duplicate code that:

1) You don't have time to refactor 2) The overhead of refactoring is too big

So for all these cases, we believe you should be able to live with the code you have and not make any inconsistencies.

Showing real life examples is definitely interesting.Will improve.

Thank you for this.

</comment></comment></comment></comment><comment><USER4> Hi HN, I am working on debugging/log analysis service for developers that is designed to plug into continuous integration and act as the first filter for incoming crash/exception logs.

My submission never made it to HN front-page, but I would love any feedback on it. It's at www.bisect.cc. Thanks.

(Jaime, your service is really the kind of functionality that is missing from dev toolbox. Great job at solving real-world problems!)

<comment><USER5> Hey sax, I have a comment. Most people will stop reading at:

Bisect allows users to test program state against expected values. Tests results are used as bisection __READING STOPS HERE __points to narrow-down towards the root-cause of the underlying issue.

The top three paragraphs still don't really explain what this does. Summarize, and show an example. That way, people will use it and come back to it.

<comment><USER4> Nayefc, thanks. Your comment was enlightening and makes total sense. Will fix.

</comment></comment></comment><comment><USER6> Sounds like a great service...my only suggestion for the launch page is to show some examples of what the service will flag...I have a good idea of what it might catch but I'm sure you have even more interesting examples

<comment><AUTHOR> That's a great idea. We want to add an interface screenshot or a demo to the first screen. However, we had a tradeoff between what is more clean and what gives more information. We will be revising that to give more information. Thank you for your words!

</comment></comment><comment><AUTHOR> Hi! I'm Jaime and me and my team built this. Please bear with us since it's our first big opening on hacker news and our servers are kinda smallish. If you can't register your projects don't worry as everything is recorded and I will try to personally attend every one. Eventually it will start analyzing. Working non stop to serve you :)

</comment><comment><USER7> I've been using QAmine for a while now, and honestly you don't realise how much you need this until you use it. It finds stuff you will never find. I can see this becoming essential to my workflow.

Awaiting a Sublime Text plugin or growl integration, as email is not really in my workflow.

<comment><AUTHOR> So you're the one!

Aha, awesome stuff. Thank you for your love. Please let me know if you ever need anything (firstname.lastname@example.com/jaime.fjorge) If Qamine is essential to you, I would love to give you extra credit/bugs and a hug for that testemonial.

Thank you for sharing the love!

<comment><USER8> Looks cool, is there Python or BitBucket support coming soon?

<comment><AUTHOR> We actually support python experimentally. I forgot to add Python and Objective C to the web site. Please feel free to try it on your python repos (I apologize in advance for any delays in the analysis)

</comment></comment></comment></comment><comment><USER9> Wow, your servers must really be getting pounded right now. A much better problem then no traffic at all.

Congratulations!

A few commments:

1) When you first login, I have no idea what to do. When I clicked on my profile, the tour kicked in and was very helpful. Why no tour on the first screen?

2) The red X button for each repository is a little weird. It makes it look like the repository isn't eligible, or there's an error. Probably should do something different there.

3) When I click the red X button it turns blue with a clock icon, and then after some time turns back to the red button again. As a user I have no idea what's happening. As a dev, I can only imagine you're getting pounded and something's failing in the background.

<comment><AUTHOR> Thank you. The engineer is me is screaming while the other quarter is happy for the attention :) Regarding your points: 1) You're right. This is our first iteration of our UI. We need to work on that. However we should have a small tour on the first screen.. I'll check it afterwards 2) Indeed it is. Some users (very recently) told me that it looks like the repo is on by default. We need to change that. Good spot. 3) It tries to register with my code analysis server. But because it's burning up with so many requests, it times out. Sorry about that. We will increase the capacity for situations like these.

Thanks for the feedback. I'll try to spot your registrations and make them work.

</comment></comment><comment><USER10> A few little things that could help it:

1) When I signed in, there were initially no projects shown. I had to refresh to see anything.

2) When I click to start analysis, the application just loads... for ages and then crashes ('An error occurred in the application and your page could not be served. Please try again in a few moments.') I'm sure that's just teething issues, but it would be nice to have some kind of ajax loading icon to show the application is thinking :-)

<comment><AUTHOR> Great feedback. Sorry about both of those. The first one is because it takes a little amount of time to get the repos from github. The second one is because people are signing in like crazy. Really sorry. one the next few day everything should be working properly.

Thank you for the time to write that.

<comment><USER11> From a UX perspective, I don't think anyone in your target audience would have a problem with the fact that it takes a little time to pull the repo. I'd just add a small badge that says something along the line of "Give us just a minute, we're still synchronizing your repositories." If the sync time is suitably short, you could even autorefresh every few seconds.

Check out CloudFlare - they do a great job with this exact situation in their record import screen.

</comment></comment></comment><comment><USER12> $200/month sounds like a lot of money for just code duplication. Something like Sonar (<http://www.sonarsource.org/>) goes a long way and has a lot more code quality rules than just code duplication. There are a lot more indicators to good code than just duplication. Guess hosted is the way to go these days.

<comment><AUTHOR> This is the value for our subscription. However we have a starting plan that is free for you to use up to 5 issues per month.

What we have seen is that startups don't have more than 5-10 clone detection inconsistency issues. So we want basically to provide that value for you for free. And, as soon as you outgrow that number because you have 1) a larger team 2) more code, you will be able to afford the subscription.

</comment></comment><comment><USER13> I would like to see one of these tools start supporting some other hosting option than Github.

<comment><AUTHOR> We will eventually support bitbucket. We would love to also support tools that are closer to us (like IDEs for instance) and continuous integration tools.

Thanks for the feedback!

</comment></comment><comment><USER14> This is a great example of awesome support. Look at Jaime's responses in this thread. He's handled everything perfectly. It barely even matters that this is a really cool idea just waiting to get gobbled up by Github.

<comment><AUTHOR> Perfect would have been to have my servers responding better to this stress. But hey.. we're learning to make it better next time.

Thank you for your kind words!

</comment></comment><comment><USER15> Just getting "Invalid result from WS" after selecting a private repo.

Also, the product tour really isn't very useful at three steps. Seems like a more streamlined 'onboarding' experience is what you are after.

<comment><AUTHOR> Sorry, the servers are already at full capacity. However, I registered your repo registration.

Thanks for the feedback. That's exactly what I'm looking for.

</comment></comment><comment><USER16> I was about to sign up, and the auth page said "update your public _and private_ repos"

is this a github default? Because I now simply dont know exactly what oAuth I am giving away so I dont want to give it.

help?

<comment><AUTHOR> We will never update your private repos. what we do is we add a robot account that listens to your commits. We never commit anything yourselves. I will add a panic button to the interface so that every time you want, you will be able to opt out and all your code is deleted from my code analysis server. Here's my email and skyp: email@example.com jaime.fjorge Feel free to contact me regarding that.

<comment><USER17> I guess this is more an issue with GitHub OAuth permissions which are not fine grained enough. What you want is read-access to all repositories.

I would not give anyone access to all my private repositories, however.

</comment></comment></comment><comment><USER18> SVN support would be great. We run an ops consultancy business, I can think of a few customers who could really do with this tool, but all of them use svn.

I suspect this isn't a coincidence.

<comment><AUTHOR> Excellent point.

SVN is definitely also on our roadmap. A couple of companies already asked for it. We already have a prototype version of SVN integration running..

Would love to have it running on your clients. Let's talk about it (email@example.com)

</comment></comment><comment><AUTHOR> Quick Update: My mongo instance on the code analysis server failed. Need to restart it. Sorry for the lack of results. Working on it.

</comment><comment><USER19> Great project that Jaime have in his hands. I used myself on my RoR projects and it's very useful. Nice work, keep it up ;)

</comment><comment><USER20> Looks like it only pulled in some of my repos, but many are missing from the list. Is there a way to refresh the list?

<comment><AUTHOR> If you added new repos, please sign out and sign in (sorry for the hack) as it will pull again your repo list. Other wise, please email me: firstname.lastname@example.com And I will help you sort that out.

<comment><USER21> My personal private repos are missing, but some private repo's I've clone show.

</comment></comment></comment><comment><USER22> For PHP, why would we use your service over PHPCPD and PHPMD?

<comment><AUTHOR> Great question.

Those tools evidence your code duplication (saying the lines and code regions). We, however, show you when those code regions were changed inconsistently.

We basically want to show you the effects of code duplication by introducing time whereas those tools don't have the concept of time.

If you ran those tools every single time you commit to see if you forgot to change a code region, you don't need us. If you're interested in having that ran for you, that's where we come in.

Thank you for your question. I hope to have answer it?

</comment></comment><comment><USER23> Any idea when you'll support Bitbucket?

<comment><AUTHOR> In some months from now. If there are enough people to use it, it will be faster.

Because it is growing, however, I can assure you that it will be our next integration :) Sign up (or ping me: email@example.com) and I'll update you.

Thanks for the interest!

<comment><USER23> Thanks! Can't wait to try it.

</comment></comment></comment><comment><USER24> awesome support by @jaimefjorge here on HN. Good job and congrats on the product... love it! Don't get gobbled up by Github just yet ;)

</comment><comment><USER25> Objective C?

<comment><AUTHOR> We support it. Just forgot to list it on the web site. Be sure to register.</comment></comment>


Internet Mail 2000 - <AUTHOR> http://cr.yp.to/im2000.html <comment><USER2> This reminds me of that text with checkboxes, which starts something like this:

You are attempting to address the spam problem with the use of [ ] law [ ] technology [ ] and so on

The reason your solution won't work is because [ ] chicken and egg problem [ ] too complicated [ ] and so on

Anyone know what I'm talking about?</comment>


Ask HN: Are there any fast-paced cs education programs? - <AUTHOR>

ArsDigita University offered the equivalent of a whole undergraduate computer science education in 10 months. Is there a modern equivalent? If not, what do you think is the next best alternative for someone who wants to learn CS in a structured program? <comment><USER2> I'm not sure how you could squeeze the education I got into 10 months, but I think, properly motivated and with good books, you could self-study an equivalent to a solid BS in 18-24 months.

Topics that come to mind (that my CS bachelors had):

Boolean algebra and gate level stuff (one semester)

Calculus and Linear Algebra (this totaled 4 semesters)

Discrete Math (had one semester on this)

Fairly deep knowledge of at least one traditional language and at least one functional language (as part of other classes)

Basic computing theory (DFA/NFA/Regex/Push-down Automata/Grammars/Turing Machines)

Data structures (the more the merrier)

Algorithms and algorithm analysis (had three semesters on this)

AI (lots of interesting stuff is happening here, and AI is totally not what you think it is)

Architecture and Assembly (had two semesters in this area)

Operating Systems and Assembly (two semesters)

Compilers and other practice at large engineering tasks with programming languages

If you search over at searchyc.com, you'll find the topic of good CS books has come up here over and over. You'll find lots of good reads in those threads.

</comment><comment><USER3> There's pace and then there's content covered. Let me tell you, MIT's EECS undergraduate curriculum is fast paced and _hard_ , and I assume they cover more ground than the ArsDigita University did (even subtracting the general requirements that don't overlap with an EECS degree).

I think 10 months is just too little time to absorb enough (and some "downtime" in e.g. a humanities course per term can be a blessing). MIT very strongly believes they need more than 4 years and established a 5 year MEng program that many if not most graduates take advantage of.

Perhaps a more narrow goal? (And I'll note that MIT is teaching everyone in the department some EE with the CS (and visa versa); less so with the new curriculum, although today the vast majority of EECS undergraduates go for the combined EECS major instead of the ones that focus on EE or CS.)</comment>


Show HN: Upstart.me – Promote your startup in other people's newsletters - <AUTHOR> http://upstart.me/?tb <comment><USER2> What is the ROI on something like this?

I could be wrong but it just seems like another form of advertising.

</comment><comment><USER3> This is great, thank you! It this a new service?

<comment><USER4> It was posted to HN at least 1 year ago.</comment></comment>


To Click or Not to Click – That Is the Call to Action Question - <AUTHOR> http://www.pagewiz.com/blog/landing-pages/call-to-action-question

<comment><AUTHOR> Your landing page has painted a specific vision of the wonderful future that awaits the reader once they click that button. Now it's up to your CTA button to seal the deal. Does the button make it easy for your reader to click, or plunge him into a morass of Hamlet-like indecision?</comment>


I Trained Rats to Trade, and Win, on Wall Street - <AUTHOR> http://www.vice.com/read/rattraders-0000519-v21n12 <comment><USER2> For those who don't recognize when YHBT, the Lamarckian bit about the learned traits being heritable should be the give-away.</comment>


Unknown to most, Kubernetes was originally written in Java - <AUTHOR> https://fosdem.org/2019/schedule/event/kubernetesclusterfuck/ <comment><AUTHOR> Just read about it on /r/programming - Sounds interesting.</comment>