Reasons not to reveal your DNA - <AUTHOR> https://internethealthreport.org/2019/23-reasons-not-to-reveal-your-dna/ <comment><USER2> "8\. Anonymous sperm and egg donors could become a thing of the past."

As someone conceived with donor gametes who used Ancestry/23andme to find and build a relationship with my biological father - this is a WONDERFUL thing.

Depriving people of their genetic history is a terrible byproduct of the multi-billion-dollar fertility industry, and I personally know hundreds of people that have been terribly hurt by the pain caused by anonymous donations.

Only thing to correct - anonymous donations very much now ARE a thing of the past, not "could be." Any fertility clinic promising anonymity is knowingly lying to prospective donors and/or recipient parents.

<comment><USER3> Aren't there concerns of the state going after doners to pay child support in cases where the legal guardians have some hardship/separate etc?

Or should that just be "in the fine print" when you donate?

<comment><USER2> No, absolutely not - there have been hundreds of thousands of people conceived this way and not one documented case of child support when an actual fertility clinic has been used to conceive.

<comment><USER4> Laws with far more precedence than this have been changed by courts. Such a change should come with a significant amount of forewarning, but given the situation there isn't much one can do even with sufficient forewarning.

</comment></comment></comment></comment><comment><USER5> While this list isn't the best and some reasons are a bit silly, I'm happy to see more content that helps inform regular users about the downsides of these practices. Paying to give a company your DNA is absurd. As I stated on this two weeks ago:

I will be waiting until I can analyze my DNA myself, without handing it over to a company that is going to do whatever it wants to with it. We are not yet able to fully appreciate how valuable DNA is, and yet everyone seems delighted to pay companies to take it from them.

Perhaps they will be less delighted when they are convicted of a crime based off of a false positive, have their DNA shared with Facebook to Improve Their User Experience ™, or have their DNA made public after yet another security breach where it is left on an unsecured server.

Remember that your DNA is very valuable, literally. Those who have noticed recent progress in genomics should realize how valuable it would be to a competent advertising company, allowing them to profile and predict users with significantly higher personal accuracy, even if all they are doing is performing basic GWASs ([https://en.wikipedia.org/wiki/Genome- wide_association_study](https://en.wikipedia.org/wiki/Genome- wide_association_study)).

<comment><USER6> This is analogous to the 1800s when people disagreed over whether one should let a camera take your photo. It's an interesting debate. However, if sequencing prices and mobility (see oxford nanopore) continue to advance at current rates, in 30 years your DNA could be sequenced thousands+ of times a day, everywhere you go in public, akin to how you are photographed now with security cameras, in the background of selfies, et cetera. In that sense because of abundance there's 0 value in our DNA. From an engineering standpoint it's going to happen and there's nothing you can do about it.

</comment></comment><comment><USER7> > Genes can be hacked. Scientists have discovered how to store data and even > animated GIFs in DNA, and even believe malware could be placed in DNA to > compromise the security of computers holding databases. Still trust them?

Trust who? This bullet makes no sense to me. The entire list seems to boil down to "big company bad, wear tinfoil hat." There are certainly valid reasons one would not want to have their DNA sequenced by a public for-profit company, but this list is reaching.

> A pair of socks is a better gift.

I mean, really?

<comment><USER8> I really agree with you. Specifically, "20\. Genes can be hacked." reads ridiculously to me.

>Scientists have discovered how to store data and even animated GIFs in DNA, and even believe malware could be placed in DNA to compromise the security of computers holding databases. Still trust them?

This is nonsense of the highest order. People can print the binary of malware on a reams of laser printed paper. Do I still trust paper? The generalisation of the arguments made in this article is egregiously fallacious.

The notion of gifting socks just seems to bring in Christmas-like warmth and appeal to the readers past experiences (who hasn't been gifted cloths...). All in all, you are right, the sock gifting doesn't fit, even if it is an admittedly better idea.

<comment><USER9> I believe that the bullet point is meant to illustrate that silly things can be easily put into your genetics, therefore it is also easy to put in malicious things. The BRCA1 gene being an example of a malicious set of genetic code [0]. In addition to harm to the person whose genes may be edited in the future, you can then modify the genes sent into the companies so that they can hack the companies. I'd imagine that pulling a 'Jimmy DROP TABLE Reads);' [1] is not something that the machines are QA'd against. Also, if you were to use the databases of these companies as a 'storage' for future comparisons, nothing is stopping anyone from putting strange stuff into your digital representation of the code.

Essentially, the companies aren't doing QA on their genes and they should.

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

[1] [https://xkcd.com/327/](https://xkcd.com/327/)

</comment></comment></comment><comment><USER10> >You will jeopardize the anonymity of family members

Too late for me. I have 7 siblings and 4 half siblings. I have 10 aunts and uncles who are blood relations (I'm not including their spouses) and about 70 first cousins. Plus my parents and grand parents. To the best of my knowledge, almost all of them have had their DNA work done by ancestry and 23andme. The family has a lot of doctors (some of whom are boarded in genetic medicine) that think everyone (not just in the family, but literally everyone) should get their DNA tested to help answer questions about family history, migrations, diseases, etc. I'm considered odd because I don't want to get mine done, though it's probably pointless since so many people that share my DNA have already done it.

<comment><USER11> This is unfortunately the same boat everyone is in.

If any 2nd or even 3rd degree relative has their DNA information banked with any of these services then you are effectively identifiable. Police or anybody who can get a sample of your DNA left behind anywhere will be able to immediately identify your family, then rapidly rule out most of the other family members through orthogonal information and in most cases you will be the only candidate remaining.

So the real question is, if you already lost your anonymity, is there anything left to lose by buying in? You might as well get the benefits if you are having your privacy destroyed anyway.

<comment><USER12> Is it not a good thing to catch a criminal in your family? I've yet to see a compelling argument that explains all the tinfoil. Replace DNA with fingerprint and it's the same piece.

<comment><USER11> That's sort of an extension of the "if you've nothing to hide then you've nothing to fear" type argument.

One can counter with "what if you're a journalist who published leaks of damaging government information and you're trying to protect a source" or various other scenarios where keeping your identity anonymous is legitimate and legal.

</comment></comment></comment></comment><comment><USER13> > Genes can be hacked. Scientists have discovered how to store data and even > animated GIFs in DNA, and even believe malware could be placed in DNA to > compromise the security of computers holding databases. Still trust them?

This is really hyperbolic. Who is behind the institution publishing this and what are their motives?

Edit: Oh... Mozilla????

<comment><USER14> What about this is hyperbolic? We live currently in the future and 10 years from now is the far future.

<comment><USER15> I wouldn't say hyperbolic as much as irrelevant. What does the ability to hack DNA have to do with having my complete genome? So you'll have a Petri dish full of cells with my DNA + malware? Then what? (I realize 100% that I'm ignorant here and am genuinely interested in the answer).

<comment><USER14> > Then what?

I guess my point is that shit is happening fast, already unimaginable stuff is happening (DNA + malware in petri dish WTF would that have even meant 2 decades ago?) So if there are two miracle steps needed to make something insane happen and one has already occurred then shouldn't we be ready for some insanity?

</comment></comment></comment></comment><comment><USER16> I used Ancestry in the past but didn't really get much info, basically I'm Mediterranean which I know I am since that's where I grew up and links to some random 6th degree cousins which TBH could be anyone given that I'm from a country with a total population of ~4M.

I ended up downloading my data and canceling my Ancestry service since I wasn't comfortable with how that data could potentially be used in the future (one term of services change from sketchy stuff happening).

Question to people here, what can I do with this data I've downloaded? Data was surprisingly small, just 5MB - with 5 rows: rsid, chromosome, position, allele 1, allele 2. Is there any OSS software I can run on my machine to learn something useful about myself?

<comment><USER17> Go here : [https://www.ebi.ac.uk/gwas/docs/file- downloads](https://www.ebi.ac.uk/gwas/docs/file-downloads)

Agree to the EuroBS cookie thing then Download the tsv file and load into a spreadsheet.

Then search for your "rs*" ids. (rsid is the canonical SNP, single nucleotide polymorphism, identification number ) Example "rs id" looks like rs2179129. Duckduck the rs id if you want more info.

If you know a programming language, you can automate processing of the file you got from dna info provider and the the gwas catalog file from NHGRI.

</comment></comment><comment><USER13> Unfortunately, you would have to live in a plastic bubble to make that possible. You probably shed many petabases of your DNA every day. Your DNA is no more private than your face. The best you can do of you don't want to reveal it is to never leave the house. Also, don't have family, relatives, or members of the same species to reveal your secret...

<comment><USER18> This is unnecessarily paranoid. It would take a concerted effort to obtain a good quality and sufficiently pure DNA sample from a person's ambient DNA. In the mythical scenario that someone wanted to get your whole genome sequence without you realising, they would need to collect many ambient samples (the gum you just threw in the bin, swabs of handles and keypads that you just touched, hair samples) and perform whole genome sequencing, which would cost multiple thousands of dollars. 23andMe's crappy SNP test is useless on a sample that could be contaminated with other human DNA.

<comment><USER19> Full sequencing is under a thousand bucks now and has even been on sale once for $200. Another year or so and I bet you will be able to have it done for less than $100

<comment><USER20> Do you have a source?

My understanding is that what 23andme et al do is very far from actual full sequencing.

<comment><USER21> you can get 30X at $800 from at least one provider but that's not saying much, I think most people would prefer higher depth for accurate variant calling.

<comment><USER20> I am following this with interest.

I have some variant of Marfan's syndrome but have not shown the associated heart problems. After consultation with a geneticist we concluded that I could spend a bunch of money to get the exact variant that I have of the relevant genes sequenced. But almost certainly I would learn that I have some variant of Marfan's syndrome that is not understood. Relatives who also have the same phenotype can get sequenced to verify that it is genetic. But since none of us are showing the most troublesome problems, and the literature almost certainly doesn't have our exact variation, I would learn nothing more than I know already.

So just get an MRI every 5 years, and wait for costs to come down and research to improve. In 10-15 years look again and maybe the genetic test will be useful then.

For a genetic condition as specific as mine, the sequencing done by these commercial providers is useless.

<comment><USER21> I agree. I know a lot of genomics and health and after having my whole genome done, the results were worthless- I knew more than the genetic counsellors and had to explain to them that just randomly googling for SNPs and grabbinbg keywords from the research papers was a terrible idea.

There are a few very well done genetic tests for a limited number of diseases.

<comment><USER18> Finally, a voice of reason.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER22> I prefer to share. Here is mine. [https://github.com/sbassi/MiGenomaSbassi](https://github.com/sbassi/MiGenomaSbassi)

</comment><comment><USER23> The genie is out of the bottle; wait ten years and DNA will be mandatory to include in passports, drivers licenses, etc.

Same thing with facial recognition. I still hate fingerprinting.

None of these biometrics are perfect, and my core objection to all is that they make every one a suspect. Suddenly, it's possible that any person in the nation could be "matched" and, simply by the say-so of the all-powerful computer, determined guilty.

My math professor used to make fun of students for relying too much on calculators. He would tell a story of a student who received an answer of several million miles from his calculator on a problem concerning distance between two cities in America. Because it came from his calculator, he took it as gospel, even though it was obviously wrong. There is no reason to expect better of our law enforcement or of our governments. See the cases of incorrect DNA testing getting people locked away for years.

I hope there is some way to eradicate biometric technology. I do not see a huge benefit, as it can be forged. And if the information is ever leaked, it cannot be changed. Fingerprint got uploaded to the internet? Nothing to be done.

Is any American politician actually advocating to stop this, possibly outside of the Libertarian Party (which I generally like, but will sadly never be elected, especially if they keep putting up Gary Johnson)? This might just be enough to convince me to support a candidate of one of the main parties.

<comment><USER24> There's no way to eradicate biometric tech, there's no way law enforcement will stop using biometrics, the only thing we can ask for it more transperency how the biometric data is used, processed and stored. No hidden fingerprinting, no unknown-quality proprietary software and hardware, extra- strict quality and integrity controls. The genie is out of the bottle and we can only hope not to wish for the genie not to maliciously comply with our wishes.

<comment><USER23> I don't buy any "transparency". Any time I hear that word, I jump to the idea that it is being used to mask something by releasing most things. I don't really care _how_ it's used, processed, stored, etc.; I care that it _is_. The feds want a biometric database of every American that can be used to track, monitor, and regulate movement.

We were supposed to live in a nation where law enforcement didn't watch us unless we were a suspect in a crime. This stuff makes everyone a suspect. The idea of "transparency" only works if we have some way to verify it (which we don't) and if we can punish politicians or bureaucrats for abuses. We can barely fire bureaucrats as-is, how will we do it in the future? And politicians never get punished for mishandling a few cases.

</comment></comment></comment><comment><USER25> I actually want to submit some other person's DNA to them, so it can be in the DB as mine. Would they notice this, assuming I find another <same race, same sex> person?

<comment><USER26> Genetic data can be used to identify you, so although this trick may provide some obfuscation, ultimately it would place your identifiable information in the data base.

And if a close family member is in that data base, you would be identified immediately.

<comment><USER27> I think you misunderstand. GP's idea was not to submit their own DNA under someone else's name, but rather to submit someone else's DNA under their own name (as a decoy).

</comment></comment></comment><comment><USER28> I paid 23&me to test my DNA. I have received the results. Now I have no idea how that information is being re-used or sold. I plan to submit a delete request of my data when CA's CCPA law goes into effect.

<comment><USER29> > Now I have no idea how that information is being re-used or sold.

You were explicitly asked for permission (in clear, non-caged language) when you accessed your data. If you declined, your data isn't being resold. Other reuse is restricted to the extent that you're answering voluntary 23andme questionnaires, and used in a non personally identifiable way (i.e. in summary statistics).

</comment></comment><comment><USER30> An unknown half-brother found me after an Ancestry.com DNA test. It's been a weird but very fulfilling experience for me. I realize it's not that way for everyone.

</comment><comment><USER31> "Come on we need 23 reasons because of 23 chromosomes! I don't care how stupid the list is, just hit that number"

</comment><comment><USER32> This is security 101 - reduce the attack surface.

</comment><comment><USER33> About a year ago I saw a link here on HN from an Intel(?) guy in which he listed ways that DNA info can be abused. I tried to find the talk but have been unable to. Does anyone remember the talk and has a link?

<comment><USER26> Excellent talk!

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

<comment><USER33> That's the one! Thank so much Real_S! Everyone needs to watch this before you spit into that sample bottle and send it away to some giant corporation.

</comment></comment></comment><comment><USER34> If pharmaceutical companies want access to my DNA then fine... they can pay me for that access. I will not give it away for free and certainly not let them charge me money for it.

</comment><comment><USER35> I thought these companies didn't actually sequence your DNA. Smarter Every Day did a video where they showed how your DNA samples are checked for several know markers to see if they attach. Unless you specifically allow it, the samples are then destroyed.

I still wouldn't get one of these tests, mostly due to accuracy issues and because I really just don't care, but I feel like some of this article is fear mongering.

</comment><comment><USER36> Oh, that's cute, thinking you have a choice. As DNA tests get cheaper and more powerful, a rando could get it just from hair or skin cells you leave behind.

Similar issue for giving your full legal name to a stranger, which will be hard to protect has facial recognition gets better.

<comment><USER37> > Similar issue for giving your full legal name to a stranger, which will be > hard to protect has facial recognition gets better

Not uploading your entire life including photos tagged with your real name to social media helps quite significantly with this.

</comment></comment><comment><USER38> I understand the sentiment of caution here, but some of those reasons listed were really dumb.

</comment><comment><USER39> Ancestry is pretty crap and a waste of money if you aren't of European descent.

</comment><comment><USER40> The list was not compelling at all.

</comment><comment><USER41> >4\. Racists are weaponizing the results. White nationalists have flocked to commercial DNA companies to vie for the highest race-purity points on extremist websites.

Hitler drank water. Stay away from it.

Also, from the original quoted guardian article: "like many things in life, direct-to-consumer genetic testing is tailored for white people".

> 10\. A pair of socks is a better gift.

The smartest question I can ask about this: what the fuck is this shit?

<comment><USER42> The word "weaponized" made me roll my eyes. Some rascists with little influence outside their circle on a corner of the internet is hardly a weapon. Now what the govt (using DNA for prosecution) or big business is doing with the DNA _does_ seem dangerous.

</comment></comment><comment><USER43> The danger about making these lists is that you may end up thinking that you have to get a high number of reasons to make your claim seem valid. I would not be surprised if the author started stating five to ten reasons and then thought that 23 was a good number for the reference, therefore proceeding to fill up the article with whatever nonsense. That's the only process I can think of that nets you "they sell your DNA to other companies", "scientists can make gifs with your DNA" and "companies buy ads" to be arguments in the same hierarchical level.

Some of them are pretty serious consequences of using their services: some of them involving the company's practices, and others involving the dangers of developing this industry. Both should be considered in separate to get a clearer picture of the issue. This article is treating it as BuzzFeed treats a new game of thrones episode, therefore depriving it of any legitimacy.

I'd like to see more elaborated on three points particularly: the privacy implications of having your DNA shared, the accuracy and precision of the purported results and the possible dangers of applications of this industry.

<comment><USER44> Personally, I just assumed the "23 reasons" was a play specifically targeted at the company "23andme" (one of the major DNA testing companies)

<comment><USER45> And they got their name from the fact each cell normally has 2 pairs of 23 chromosomes.

<comment><USER46> No, the cell has 23 pairs of chromosomes.

You don't keep your shoes in 2 different piles for lefts and rights; you pair them together.

<comment> master-litty There's a joke here about C programmers and header files, but I don't have the wit to pull it together.

<comment><USER47> C programmers are at the end of their wits anyway.

</comment></comment></comment></comment></comment></comment><comment><USER48> They do not mention the real reason why governments are scared to death by systematic DNA testing: it trivially reveals paternity fraud. In the current climate of rampant promiscuity and related deception, it could very well affect the amount of money men provide, while inflating the already ballooning welfare budget. It is clearly a gender issue.

<comment><USER42> that was hinted at in point 7, no?

> You could become emotionally scarred. You may discover things you weren't > prepared to find out.

</comment></comment><comment><USER49>
      1. The results may not be accurate

23andMe and ancestry.com are accurately sequencing DNA and providing ancestry interpretations in line with peer-reviewed science.

      2. Heritage tests are less precise if you don't have European roots.

Human ancestry is extremely well-studied. These studies have included large numbers of genomes from many different ancestry groups. Certainly, the common ancestry groups among the likely readers of this article are well-represented and studied.

      3. Your DNA says nothing about your culture.

From a statistical point of view, your DNA contains information about the ethnic groups to which your ancestors belonged. That in turn contains information about the culture in which your ancestors, and you, find themselves. If the author means "says nothing" in a sense other than "statistical information" then it would be interesting to learn what this sense is.

<comment><USER18> 23andMe don't sequence DNA. They use extremely low resolution SNP chips. Such SNP chips are currently used in exactly zero real world (human) medical applications. This is because they are useless as a test with anything near acceptable diagnostic performance. Anyway, the point of the article is that the interpretation of the results may not be accurate, and that is a fairly generous way to put it.

<comment><USER50> > Such SNP chips are currently used in exactly zero real world (human) medical > applications.

That's not true at all. There have been dozens of publications using that data and they have been instrumental in progressing our knowledge of genetic associations.

I have personally used 23andMe's array based data and resulting associations to investigate disease. It is priceless and hugely beneficial.

<comment><USER18> There is no medical test that uses these chips. You describe research into genetic associations - that is an entirely different matter.

Also, whether the type of information obtained from a 23andMe style test has any material impact on health is very much unproven, as outlined in their own terms of service, and the fact they were poleaxed by the FDA for overselling the utility of the test.

<comment><USER51> If you didn't know you had something like Gilbert's syndrome this test would tell you that these genes were different

UGT1A1 UGT1A10

You can take that information research more or change your lifestyle / diet to put less stress in processes that involve those genes.

Very useful or useless depending on who you are.

<comment><USER18> It tells you if you have the SNP it tests for in those genes. It doesn't tell you anything else.

Gilbert's syndrome is pretty common. The vast majority of people that have it are not bothered at all. There is also no proof that lifestyle interventions are in any way helpful. This is the case for basically everything that 23andMe tests for.

If you want to raise a proper counterexample, you would choose the BRCA1 gene. But again 23andMe's test doesn't tell you whether or not you have a BRCA1 mutation, it only tells you if have one of the SNPs they test for. If you don't get a positive result, and that is the vast majority of people, you aren't any better off. That's why in the clinic when someone needs a BRCA1 test, we sequence the whole gene using next generation sequencing technologies.

<comment><USER51> The majority of people are bothered by it. Having a 1/3 of the ability to detoxify certain things means stresses on other systems. Very few are saying my GS is making me feel foggy and tired but it does.

There are a lot of studies that show lifestyle influencing Gilbert Syndrome sufferers. The most common suggestion is to avoid drinking.

Not sure it's as completely useless as you believe.</comment></comment></comment></comment></comment></comment></comment>


New Spaceship Speed in Conway's Game of Life - <AUTHOR> https://niginsblog.wordpress.com/2016/03/07/new-spaceship-speed-in-conways-game-of-life/ <comment><USER2> This is excellent, but it's the same story as [https://news.ycombinator.com/item?id=11250886](https://news.ycombinator.com/item?id=11250886), which links to this post in the thread.</comment>


ItsNat: A Silver Bullet Java Web Application Framework? - <AUTHOR> http://itsnat.sourceforge.net/

<comment><USER2> No, ItsNat is not a silver bullet, it has a focus in some problems and just solves some problems.

Disclaimer: I'm the author of this tool.

<comment><AUTHOR> Cool... I have watched your slides "How to choose a web framework and be surprised" (nice way to explain the differences between ItsNat and other frameworks... use existing stuff many people know and compare it to your work), have liked what I saw and it seems that ItsNat aggregates many features from other frameworks. As HN is a cool community full of experienced Java programmers, I wanted to ask for their opinion. The question still stands. :)</comment></comment>


SEC considers letting startups use social networks to raise money - <AUTHOR> http://venturebeat.com/2011/04/09/sec-considers-letting-startups-use-social-networks-to-raise-money/

<comment><USER2> Our startup's office used to be next door to what is affectionately called a "boiler room". These guys would essentially prey on old people and other vulnerable folks with various schemes related to penny stocks. And we'd hear the stories through the walls in this crappy office, in the elevators, etc. And it generally consisted of someone losing money (the client) and the boiler room scumbags making money.

And so while I'm all for free markets (my own startup's business is sort of predicated on it) and I do think that changes to the SEC rules should be made, I do worry about making this open season because the scumbags out there will find a way to take advantage of the opportunity quickly and at scale. That is what unscrupulous folks do, and they do it well.

Also, when it comes to tech investments in particular, even Fred Wilson says the best VCs bat .300 and the legends bat .400. That means many of the pros also bat .100. I don't know how Joe Public is going to be able to do this well when the professionals cannot.

Sure, we can say the SEC needs to regulate to ensure this doesn't happen, but as evidenced by our last crisis, that wasn't possible to do for multi-billion dollar organizations. I'm not sure they'll be able to do much for Aunt Sally who lost $10k on the Quora for Pets that she was convinced would be huge by some smooth talking cat with a slick PowerPoint.

This comment may go against the ethos of HN (and result in lots of downvotes), but I think there are some downsides if they go too far in opening up the market.

<comment><USER3> I'm not sure why it's socially acceptable to convince people to part with their money for things they don't need, or to risk their money in games of chance, but not to encourage them to invest in the potential of an idea.

If the problem is misrepresentation of what they are investing in then there are already laws to protect against this, just as there are laws (at least in Australia) protecting consumers from false advertising or spurious sales claims.

<comment><USER2> I do agree in theory. But just because people can be fooled into wasting their money in other ways doesn't mean we should encourage it in new ways.

That said, I'd be all for this if the laws worked. The reality is that although criminals, if found, may be prosecuted, the victims of these crimes rarely (can't think of one case) get their money back. The unscrupulous types will blow it on fancy cars, homes, and a lavish lifestyle which means what goes in rarely is left when the legal system takes its course.

</comment></comment></comment><comment><USER4> About time they dumped these rules. They are old and archaic. Companies should be allowed to raise money from whoever they want, and people who aren't as fortunate as 'qualified investors' should be given the opportunity to invest in high-growth companies. It would level the playing field a bit - rather than keeping all tech growth gains in the hands of a select few.

The solicitation portion of it is mad, our lawyer previously told us not to even mention on our website or blog that we are raising money, incase it is misinterpreted as public solicitation.

This is all that is holding Kickstarter et al back from running full fundraising rounds.

</comment><comment><USER5> This is huge. If the SEC provides another exemption to Reg. D for crowd sourced funding, it could usher in a new age of financing for startups not just in the tech space but in all sectors.

I am a bit concerned that some unscrupulous people will use it to scam money out of naive "investors" through the use of crowd source financing services. The SEC would not have the resources to investigate at this scale. And I have doubts that local law enforcement would pick up the slack.

But even with the fraud risk, I believe this would be a net positive and lead to a lot more creative ventures.

<comment><USER6> > I am a bit concerned that some unscrupulous people will use it to scam money > out of naive "investors" through the use of crowd source financing services.

This is bound to happen, but it shouldn't stop the scheme from going ahead. Investors should be sensible enough not to risk more money than they can afford.

</comment></comment><comment><USER7> In my opinion it would be a serious mistake to ease the current restrictions for investors; indeed, it might be even smart to raise the bar a bit instead. Money is a sensitive matter, and allowing everyone to invest in startups will only have negative effects for everyone involved.

For one, this is laying the ground for a new bubble. Startups are inherently risky, and you'll end up with a lot of small investors blowing up their savings on the gold rush of overblown valuations.

Second, one of the greatest effects of current rules is that most of the funds available to startups are the "smart money", i.e. they come with experienced investors (VCs and angels) who add quite a lot of value besides the cash itself. Small-time investors mostly don't have that added value; not only that, but by definition their capital will be sought after by inexperienced founders, who are more likely to fail without proper guidance (as more experienced ones supposedly have more contacts and mentors available).

And third, even though there is a lot more money available today, there is still some kind of filtering process before the startups are funded. Hell, even Yuri Milner doesn't throw his money blindly to anyone who knocks on his door -- he had relegated the process to the Y Combinator team, so there still is some selection.

In short, the day this new regulations pass may be marked as the start of the new startup bubble. Mark my words.

</comment><comment><USER8> Personally I have been wishing for delivering material info publicly over social media services like Twitter to be allowed under Reg FD for a while now.

<comment><USER9> Sun made some progress in that area: <http://blogs.sun.com/dillon/entry/reg_fd_update>

You just need to convince the SEC that Twitter is the new RSS.

<comment><USER7> Uh, I'd hate that. RSS is a public protocol; Twitter is a private company. Huge difference...

</comment></comment></comment><comment><USER10> I think there are few things they should do to make this work: 1) Limit the amount of money per investor for non-qualified investors. If someone only invests a small amount, they aren't losing all their money on one investment

2) Requires disclosure all of company officers and major investors through an official SEC filings. Additionally, disclose any criminal record of securities violations and civil suits relating to misrepresentation and securities fraud for previous companies

3) Improve SEC enforcement, and be pro-active in going after fraudulent misrepresentation. Where companies appear to be making fraudulent misrepresentations, the SEC should prosecute companies that go too far.</comment>


Apple.com Gets F in SSL Test, vulnerable to zombie POODLE - <AUTHOR> https://www.ssllabs.com/ssltest/analyze.html?d=apple.com&latest <comment><USER2> this is testing apple.com which is just a redirect to www.apple.com which has an A+: [https://www.ssllabs.com/ssltest/analyze.html?d=www.apple.com](https://www.ssllabs.com/ssltest/analyze.html?d=www.apple.com)

It's not an excellent situation and they should fix it, but, its not as terrible a situation as if this was on www.apple.com

</comment><comment><USER3> It's clearly not Apple.com, it's appleid.org

<comment><USER4> Both belong to Apple and are vulnerable to Zombie POODLE. [https://www.ssllabs.com/ssltest/analyze.html?d=apple.com&s=1...](https://www.ssllabs.com/ssltest/analyze.html?d=apple.com&s=184.108.40.206)

<comment><USER5> > SSL Labs will start giving "F" grade to the server affected by these > vulnerabilities from end of May 2019.[0]

This is due to the server supporting cipher block chaining (CBC) cipher modes. Almost everyone has been moving towards Galois counter mode (GCM) ciphers for several years.

[0] [https://blog.qualys.com/technology/2019/04/22/zombie- poodle-...](https://blog.qualys.com/technology/2019/04/22/zombie-poodle-and- goldendoodle-vulnerabilities)

<comment><USER6> Do they even test for the vulnerability? The blog post is unclear.</comment></comment></comment></comment>


YouTube - Introducing DeleteMe - <AUTHOR> http://www.youtube.com/watch?v=f6Wn_5Ik5t0&feature=player_embedded <comment><USER2> There's no clickable link to the service on that presentation, which kind of defeats the point of all the effort put in it.</comment>


Which are the highest peaks in the US Arctic? Fodar settles the debate - <AUTHOR> http://www.the-cryosphere.net/10/1245/2016/tc-10-1245-2016-discussion.html <comment><USER2> Direct link to paper: [http://www.the- cryosphere.net/10/1245/2016/tc-10-1245-2016.p...](http://www.the- cryosphere.net/10/1245/2016/tc-10-1245-2016.pdf)</comment>


IBM Offers 'Jeopardy' Winner Watson as Cloud Application Tool - <AUTHOR> http://www.businessweek.com/news/2013-11-14/ibm-offers-jeopardy-winner-watson-as-cloud-application-tool

<comment><USER2> There is so much marketing around Watson and so little _data_. I feel like a broken record every time this comes up, but where are the peer-reviewed research papers with data showing Watson's superior utility in real world settings like hospitals?

<comment><USER3> I don't quite understand why you're demanding this. As I see it, Watson is still pretty experimental and we're probably still learning what kind of stuff it's good or bad at. Why not build a few apps, throw it at hospitals or schools or other use cases, and see whether it actually helps anyone?

Basically, I feel like you're asking for peer-reviewed papers that show that Dropbox is a good way to share files. Nobody would write a paper about that. They would just try Dropbox.

<comment><USER4> A lot of the hype has been around using Watson as a medical decision support system, so yes, they do need peer-reviewed papers before "throwing it at hospitals". In medicine, you can't "see if it helps" without a controlled experiment. It's just too subtle to see when it's not helping, and also too late.

<comment><USER5> I believe if you look at the IBM sites you'll find a number of case studies that display some of the results of applications using Watson.

</comment></comment></comment></comment><comment> jon-wood It all depends on just how the API works, but this has potential to be huge for IBM.

Done right they could be sitting on the mythical Star Trek computer here, being trained by paying customers in how to answer questions about a wide range of industries.

Just off the top of my head I can think of a ton of features in our application which could be enhanced with access to a computer that has been primed with the accumulated knowledge of the Internet.

<comment><USER6> IBM / Gartner call Watson type tech 'Smart Machines'. They extend that definition out to things like HP Autonomy, Google, and other systems that integrate huge amounts of data in order to make decisions that seem almost inteligent.

The message is that 'this is the next step in / new Big Data'. Huge companies that spend loads on R&D have amassed a base of proprietary technologies which provide them a real competitive advantage.

Like bioinformatics, jet packs, and (well hell, big data), I'd say the vision (presented as current reality) is probably far ahead of what will be possible in reality in the next 10 years.

Clearly, Watson was able to answer structured questions it had been specifically prepared for, with a certain amount of pre-work done parsing the problem to get it into an easily computer solvable form.

This not the startrek computer, which can answer any questions. It needs a programmer to show it how to answer each specific type of question.

But it is cool. The majority of knowledge still lives in word docs and power points, in spoken meetings and peoples heads. If this developing set of technologies allows us to work with that amorphous info bulk, even in a simple way, you can see the potential for humand development.

</comment></comment><comment><USER7> As a former IBM'er, I can't help but view this announcement with a fair bit of skepticism.

The IBM I used to know had a tendency to tightly couple all of their products and offerings, to the point of making it uncompetitive/unattractive in the market. This makes sense when you consider that IBM has been going through 6 straight quarters of declining revenue, and their Systems & Technology Group being unable to turn a profit despite thousands of employee layoffs. Assuming this announcement is no different, I expect this new offering to be proprietary, SAAS-like, and rife with restrictions limiting application development to an IBM-approved stack (Rational, Jazz, DB2, etc).

I have no doubt that Watson is an excellent piece of technology, but I believe IBM's executive and CEO leadership will mess this up by treating this offering the same way as their consulting and hardware services.

</comment><comment><USER8> Oh if only Apple could license Watson to replace Siri.

</comment><comment><USER9> I wonder if they open this for applications that help software developers and engineers or leave it closed because of their main consulting business?

But anyways, it could be really useful in consumer healthcare, especially considering the low usage of consumer healthcare among older people[1].

[1]Only 30% of 50+ people and 13% of 65+ people, use internet to help in medical diagnosis

</comment><comment><USER10> Can I use Watson cloud to compete on Jeopardy or other gameshows? build it into a google glass app or something?

</comment><comment><USER11> It says 'offers' so that's current right? Where do I sign up?

<comment><USER12> Start at [http://www-03.ibm.com/innovation/us/watson/getting_started.s...](http://www-03.ibm.com/innovation/us/watson/getting_started.shtml), which is pretty easy to find from a search for "watson ibm request".</comment></comment>


Ask HN: My app makes around $30,000 per year. Would anyone like to buy it? - <AUTHOR>

I've created a mobile app that is currently earning around $30,000 per year. $15,000 of that is from recurring subscriptions (either monthly or yearly subscriptions).
I'm interested in branching out into other areas, and the app is growing too big for one person to manage. Most of the revenue is on Android right now - the iOS counterpart does not make very much in comparison (maybe $500 per month). The app should also be taken to the web as well, but I don't have the resources to build the webapp right now.
It's a small business focused app with a large userbase already. I currently have around $15,000 per year in subscriptions that are expected to renew for 2015. Around $850 per month come from monthly subscriptions, while around $400 per month come from new yearly subscribers. There is also a one-time purchase option that is more expensive, which earns around $13,000 per year.
If anyone is interested in purchasing, I can share App Annie statistics on both Android and iOS. I'm looking to move quickly on a sale to help out with some personal finances. It's hard to sell it, but I think it will allow me to focus on other areas a bit better. <comment><USER2> Why aren't you mentioning your app name and details.. I personally don't think that it ll affect your user base or something...

<comment><USER3> Considering you don't know anything about it, that's pretty baseless.

That said, I do wish that more info was provided that the fact that the app is in the "business" category. Quickbooks, Appointment Reminder, and proposal generating software are all "business" apps, but very different.

</comment></comment><comment><USER4> You could list it on [http://www.apptopia.com/](http://www.apptopia.com/)

</comment><comment><USER5> Drop me an email please (in profile), with App Annie statistics if possible.

Any thoughts why iOS version didn't take off?

</comment><comment><USER6> My contact details are in my profile. I'd be interested in taking a look.

</comment><comment><USER7> Interested current app developer, please email. Email is in my profile.

</comment><comment><USER8> I'm interested in learning more - my email is in my profile.

</comment><comment><USER9> I'm interested in learning more - my email is in my profile.

</comment><comment><USER3> I'm interested in learning more.

</comment><comment><USER10> I'm curious. Email in profile.

</comment><comment><USER11> Sure, email me (in profile)

</comment><comment><USER12> I didn't know that app analytics was such a big business. Is this because you recently acquired distimo and you are cutting the slack?

Sounds interesting, how much do you think you would be willing to sell it for? I am not sure I am really interested in buying it really. How does it compare to some of the competitors: [http://www.flurry.com/](http://www.flurry.com/) or [http://www.localytics.com/](http://www.localytics.com/) or [http://www.mixpanel.com/](http://www.mixpanel.com/) or [http://www.upsight.com/](http://www.upsight.com/)?

"It's hard to sell it, but I think it will allow me to focus on other areas a bit better."

What do you plan to work on next?

<comment><AUTHOR> It has nothing to do with analytics, I just mentioned I have all the revenue, downloads, etc. in App Annie. I have a few ideas that will hopefully make more than this. Drop me your email if you'd like more details.

<comment><USER13> At least specify the app category.

<comment><AUTHOR> It is in the 'Business' category.</comment></comment></comment></comment>


Optimizing code for instruction cache - <AUTHOR> http://www.eetimes.com/design/automotive-design/4017551/Optimizing-for-instruction-caches-part-1

<comment><USER2> If you don't know some basics, you can get in trouble.

But if you do and if you get particularly clever, you can get in trouble on the next generation of whatever you're designing for.

TANSTAAFL.

With some of that C code shown, I'd try a "static inline" on the declaration, and see how well the C compiler and its code generator dealt with it. (If I can get out of dealing with it and cede the work to the compiler, all the better...)

And the caching locality discussions are the same ones that arise with virtual memory out in main memory; if you bounce around all over the place in address space (eg: setting up the wrong stride on an array, or partitioning your data differently from your access), you'll incur page faults.

And if you get particularly good with your packing of your data, you can sometimes trigger word tearing when you're accessing adjacent data within the same granule from different processes or different threads.

Caches and cache designs, too, are individually funky. There are processors which got faster by going to smaller and fewer caches and better (lower) latency. So if you fell out of cache in the new design, you'd assume you'd do worse, but with lower latency on the box out to memory, you actually did better pulling from main memory than if you were pulling from second-level on the previous generation.

<comment><USER3> Actually, in just about anything non-JITted (without faking it by hinting the compiler), I see no reason why (basic) locality optimizations would change with different architectures. A sufficiently smart branch predictor deciding what to load into caches could take care of such a thing, but that can't really be relied on (too hard to predict), and it would likely benefit from such hints as well.

This is all taking into account that there is indeed too much of a "good" thing. More extreme methods of optimization can definitely shoot you in the foot, and not _just_ while you're writing them.

<comment><USER2> The word-tearing case had unrelated data values packed within the same granule of cache storage, and that derailed the running environment in a very subtle way. With just the right (wrong) timing, you very occasionally saw slightly different values in the adjacent variable within the granule when (apparently- unrelated) threads were spun up, and got tangled and torn. No shared references. Just sharing that granule.

</comment></comment></comment><comment><USER4> It's worth mentioning that they're writing for DSP systems. More mainstream CPUs have a larger instruction cache (and smarter eviction policies), but the size of the hot code paths are (I imagine; I'm not terribly familiar with DSP) likely not much bigger, so that the problems they mention need solving less frequently for typical applications.

<comment><USER5> > It's worth mentioning that they're writing for DSP systems.

Yes.

> More mainstream CPUs have a larger instruction cache (and smarter eviction > policies), but the size of the hot code paths are (I imagine; I'm not > terribly familiar with DSP) likely not much bigger, so that the problems > they mention need solving less frequently for typical applications.

I'd have assumed the exact opposite. I assume that the size of the "hot enough" spots grows at least somewhat with the size of the binary. (It probably grows much slower than linear.) DSP binaries are smaller, so I'd assume that their hot spots are smaller even given "equivalent" programs.

But, DSP programs are different. Their data is more "regular" and their instruction sets are specialized for their typical uses. I'd expect better instruction cache behavior from DSP programs.

Fun fact - access times and feature sizes are related so if you maximize clock rates, the maximum size of a one cycle cache is basically independent of the access time. I suspect that almost all implementations can afford such a cache.

I suspect that the same rule applies to L2 caches but it's not clear that every implementation can afford the area. However, I suspect that implementations that have an L3 have maximized their L2.

DSP implementations are more likely to have traded cache size for dollars, so I expect that their caches are somewhat less effective on the same programs.

These two factors have opposing effects.</comment></comment>


Internal Documents Show Apple Is Capable of Implementing Right to Repair - <AUTHOR> https://motherboard.vice.com/en_us/article/d3mqna/internal-documents-show-apple-is-capable-of-implementing-right-to-repair-legislation <comment><USER2> I was recently upgrading a 2008 MacBook. Upgraded the hard drive and the memory. It was so easy. It is an absolute joy to service this machine. It also has many useful ports and an awesome battery indicator on the side.

<comment><USER3> I'm old enough to remember the days of the "cheese grater" Power Mac/Mac Pro, when Apple would explicitly call attention to how expandable and user- serviceable a case they'd designed for it.

How times change!

<comment><USER4> I still think that the "cheese grater" was the pinnacle of apple desktop design (and I've never owned a mac), I just love it - enough that I damn near bought a broken one to use to build my new PC in the end laziness won and I went corsair but it's still an amazing piece of industrial design.

<comment><USER5> That machine was a engineering beauty. very well thought out.

<comment><USER4> It really was, it still looks better than the vast majority of modern PC cases with better build quality, the bigger ones all seem to be some variant of "How many RGB's can we shove in this" with flimsy plastic and sharp edges.

I went with one of these in the end [https://www.corsair.com/ca/en/Categories/Products/Cases/Carb...](https://www.corsair.com/ca/en/Categories/Products/Cases/Carbide- Series%E2%84%A2-100R-Silent-Edition-Mid-Tower-Case/p/CC-9011077-WW) because it's a box to put bits in, no fuss, no muss no RGB.

<comment><USER5> my last computer i built i went with a fractal design case and couldn't be happier really. they make excellent cases. the drives are not in the main chamber so it is a completely void airflow design for the major components and all the routing is done nicely. really great design. That corsair one looks pretty nice for a standard layout case though.

[https://www.fractal-design.com/home/product/cases/define- ser...](https://www.fractal-design.com/home/product/cases/define- series/define-s)

edit: also it's laid out to be super silent and if you pair it with the right components it is quite.

</comment></comment></comment></comment></comment></comment><comment><USER6> I guess I believe in this "right to repair" movement, but only so far as to ensure that if you're capable of taking your device apart and putting it back together without breaking anything that you don't automatically void some warranty.

I don't believe manufacturers should have to build things to be easy to take apart, to be replaceable or upgradeable, or anything else along those lines.

I'd rather see legislation that ensures when a piece of tech reaches the end of its useful lifetime it can be submitted back to the manufacturer and properly recycled at no cost to the user.

<comment><USER7> I think you are misconstruing the aims of the right to repair movement. Its nothing to do with forcing companies to make it "easy" to repair, but rather about preventing companies from including "features" which serve no purpose besides preventing third party repair.

An example would be a tractor that is designed to be cheaply serviceable, but has a feature which disables any replaced parts until a message signed by the the original equipment manufacturer and authorizing the replacement part has been received.

<comment><USER6> You're right, I remember this initially, but many discussions about right to repair get hijacked and center around topics like iFixit and their blatantly self-serving anti-Apple campaigns.

<comment><USER8> As self-serving as it is, iFixit is doing a social good IMO. If it weren't for them, I would have spent more money replacing or having someone else repair my iPhone. So I don't care if they make money off of it, they save me more money in the long-run, and they prevent a larger number of phones and other devices being cycled through the economy before necessary. If that means punching up at Apple, so be it. Apple can take the hit.

Planned obsolescence is a very shitty and cynical strategy on the part of manufacturers, and anyone fighting against it is on the right side.

<comment><USER9> > iFixit is doing a social good IMO

Agree.

> anyone fighting against it is on the right side

Don't. For example, Louis Rossmann recently kicked up a storm when he claimed that Apple used the customs to seize his "genuine" battery shipments (which was widely reported in the media and gave him significant publicity), except it turned out that he left out the fact that the parts were unauthorized: [https://old.reddit.com/r/apple/comments/9pow06/louis_rossman...](https://old.reddit.com/r/apple/comments/9pow06/louis_rossmann_admits_to_using_parts_from_a/). Self-serving PR stunts that consist of misinformation and depend on the subsequent media outrage don't help "the right side".

<comment><USER10> That reddit post you linked to also does its best to avoid focusing on the actual situation. There's no such thing as an "unauthorized" battery. If factories are producing batteries with a default Apple logo (ie to Chinese standards), and he's instructing them to cross it out, that also seems completely legitimate.

<comment><USER9> > That reddit post you linked to also does its best to avoid focusing on the > actual situation.

No, it doesn't. In fact, I think it's pretty explicit in making the situation clear:

> First of all, let me start by saying, I am not defending Apple's terrible > stance towards Right to Repair.

> I think Apple's R2R policy is awful - It sucks that once the device you buy > is on the "obsolete" list, you can no longer get 1st party service from > Apple. Not only that, but there are no legal ways to obtain parts. IMO this > is something all of us should be putting pressure on Apple to change. I'd > love it if there was a law on the books that forced companies to make spare > parts for products available to customers for x amount of years after the > warranty expires. That would allow people to continue using the devices they > buy.

> In closing, I'm going to continue supporting Louis, iFixit, and their > attempts to secure our rights to repair the products we own.

But it is also very obvious that Louis Rossman was clearly dishonest. Actually, I don't quite understand your argument:

> If factories are producing batteries with a default Apple logo (ie to > Chinese standards), and he's instructing them to cross it out, that also > seems completely legitimate.

How is this "completely legitimate"? Apple is (quite understandably) annoyed that some factories decided to make batteries that Louis could peddle as genuine Apple batteries, when it's clear that they are in fact not these at all (they're _crossing out the logos to pass customs_ , for heaven's sake). Of course they're going to be seized, because they're _counterfeit_ : Apple probably wasn't even involved here. I'm surprised he has the gall to try to make this a huge PR issue by claiming that Apple was trying to stop him from repairing Macs with genuine batteries that he bought when he knows they're just shady batteries from China he's trying to bring into the country.

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> That is why I'm holding to my 2011 ThinkPad T420 for dear life. I replaced keyboard 3 times ($30-$40 off ebay), changed HDD to SSD, and replaced CD-ROM with another SATA drive bay.

Not having USB3 is annoying, the CPU is a little slow and the batteries aren't what they used to be, but the things still works and gives me no problems.

I would like to get something smaller and lighter but all the affordable light laptops come with at most 8GB of not upgradable memory, whereas mine has 12GB and upgradable to 16.

What I ended up doing is getting a desktop computer for anything that needs performance and every time I look at anything apple, it just looks like I'm about to get on a treadmill of shelling out a couple of thousand dollars every year without the ability to own, upgrade or repair any of my devices.

<comment><USER12> I've been building my desktop (and now servers) for 25 years. The idea of taking my computer in to a store to fix a drive or ram or worse, buying a new one because of a hardware issue is absolutely foreign to me.

I had hoped laptops would be just as easy to tweak and build by now but it seems the world favors the apple way.

I'm going to keep building. It's _far_ less expensive. I can tweak my system to fit my needs and adjust as my needs change. And I have a solid understanding of the most used tool in my life.

Also things like PC part picker make it so much simpler than it used to be that I barely even need to think about it any more.

</comment></comment><comment><USER13> So I admit being pessimistic about actually getting Right to Repair laws passed. Lawmakers keep being told that 'it stifles innovation' and since they often have as limited understanding of technology as I do as to the innards of political wheel-greasing they often fall for that tripe.

Are there any known Right to Repair statutes (US or Int'l) or bills that show signs of life?

<comment><USER14> Massachusetts passed Right to Repair as a ballot measure (which Tesla basically flaunts by making manuals extremely expensive to rent). But note that right to repair does not automatically equate with "easy to repair without special tools and knowledge."

<comment><USER13> > But note that right to repair does not automatically equate with "easy to > repair without special tools and knowledge."

I'm okay with that. I just don't want businesses to be able to deny access to their manuals, threaten to void warranties for 'abuse' for performing an action that their authorized techs do all the time without any adverse effect on the hardware, or remotely kill software used in the hardware because someone replaced some atoms arranged in a less than ideal manner with some other atoms arranged in a more ideal manner without paying the business themselves to do it.

</comment></comment></comment><comment><USER15> They certainly can, but instead they're purposefully making it impossible to get specific board components so that a single chip defect/failure becomes an $800 paper weight [https://youtu.be/gmRd9IVE6dc](https://youtu.be/gmRd9IVE6dc) at 8:30 Louis explains that newer MacBooks, one of the most common issues is unfixable due to isl9240 being unsourceable.

</comment><comment><USER16> With over 200 billion in savings the only thing they can't do is be honest about what you are repairing for the third time!

</comment><comment><USER17> Anyone who has ever been to Shenzhen's HQB electronic market will chuckle at the Apple claim that iPhones are "too complex" for non-Apple techs to repair.

</comment><comment><USER18> This is probably already used for countries where Apple has no local presence. Here in Israel there are no Apple labs, so up till this year iPhones had to be shipped to Apple Ireland for repairs. (but Macs and iPads could be repaired by authorized, non-Apple labs due to a less-stringent repair policy)

Recently the news reported of a specific authorized reseller gaining the option to repair iPhones here, and sometimes even outright replace them -- all authorized by Apple. Maybe this programme made that possible.

</comment><comment><USER19> The grammar mistake in the supposed official document - "Keep doing what your (sic) doing" \- is very unlike Apple. Raises a red flag on authenticity in my mind.

</comment><comment><USER20> It's nice to see that Apple is trying to help people repair parts. I personally see nothing wrong with Apple choosing to do this itself and simultaneously saying that it doesn't want the government stepping in.

</comment><comment><USER21> Even with right to repair, if users cannot find the parts (especially chips) they won't be able to fix anything. Also, they can make it more complicated circuitry to make it harder to fix. No matter what, users are still at the mercy of the manufacturer.

</comment><comment><USER22> I really dislike the "Right to Repair" movement because I see it as a lobbyist (iFixit pushes it heavily for example since they make money off it) & niche driven push that is both wasting a real chance to get at some actual critical problems and generating new ones of its own. The two big issues are reasonable life span as part of the purchase price, and questions about ownership vs security.

1\. For the first, most people do not care about "right to repair", what they want is a more roughly a "right to have repaired for a reasonable time period related to the cost of the item in question." Ie., it's a standard Free Market pricing issue: they want general use case reliability to be internalized into the pricing shown up front. So for example, if someone spends $100 on a bargain basement phone, maybe it only gets a year. If they spend $500-1000 on a phone, there is a sense that it should last a good 4-5 years. And in either case if it doesn't the manufacturer should take care of it at no further direct cost to the customer. The way things stands right now is that effectively there is an externality and information imbalance: some percentage of buyers get screwed at odds they don't know as well as the manufacturer, unless they pay a bunch more money to insure against it (and again, the manufacturer knows the odds not them). It's something that should just be part of the upfront price so everything can be compared evenly.

 _How_ the manufacturer "takes care of it at no further direct cost to the consumer" is an implementation question for which there are many good answers that come with different tradeoffs and costs. "Right to Repair" legislates one specific solution, rather then correctly legislate the desired _result_ and then let everyone experiment and adapt.

2\. The second part ties into the idea of trusted software and hardware chains vs owner control and it's complex. Take the brouhaha over Touch ID repair: allowing any independent 3rd party to "repair/replace" that _by definition_ means any 3rd party can hack it and replace it with something malicious too. Giving up the control of that to Apple changes the repair market, but it also changes the level of expense necessary to compromise it. Same thing for the software stack: more control means more ability to have things get messed up, be social engineered, etc. I'm not comfortable with it being _illegal_ for me to specifically buy a device with a cryptographically secured hardware chain that cannot be altered. I know the tradeoff there is that there is more of a single point of failure and risk I could be left with a non-functional device (though point 1 requiring the manufacturer to offer a 4-5 year warranty or whatever could help). But that's a tradeoff I want to be able to make in some cases.

I do think though far more gradations could be mandated as being offered. Say, manufacturers must offer it as a one-time order option: in Apple's case, I would support them being legally required to offer customers a model of phone shipped that can accept owner inputted root signing certificates. As in, an actual physically separate model (fuses) that cannot be changed afterwards so somebody could also buy a model like now with Apple roots only. Then the choice can be made (I'd also be fine with Apple or whomever being absolved from any liability or support requirements resulting, more freedom for the owner should mean more responsibility for the owner too). But I've yet to see a Right To Repair that covers any of this.

\--

It all stinks because I think these are really important issues and ones that would make the overall market a lot better. And I think particularly for the first the public has a general sense that something is wrong but they don't know how to really express the root of the problem. RtR seems to piggy back on that, but not in a great way.

<comment><USER23> You can absolutely have a cryptographically secure hardware chain that you can replace parts on. Just require that root keys get wiped on a part swap.

<comment><USER9> Ok, but you now have an iPhone that can leak your fingerprint or face data, or make it easy to pull credit card information off of. When that happens, will consumers (and the media!) blame Apple for making an insecure phone or the repair store for using untrusted hardware?

<comment><USER24> That all got wiped when you swapped parts. How does it leak now?

<comment><USER9> Because you set it up again?

<comment><USER24> On a new cryptographically secure hardware chain, with parts from Apple.

If you have a bypass to that security, the anti-replacement measures won't work on you.

If you don't have a bypass, then the replacement parts won't leak any more than the old parts.</comment></comment></comment></comment></comment></comment>


Show HN: The site I built to learn to code - LinePunch (hilariously offensive) - <AUTHOR> http://linepunch.com

<comment><AUTHOR> Based on a hilarious night at the bar, I quickly learned some PHP and JS and launched LinePunch.

It grabs from two simple arrays of jokes and punchlines that I update manually. I made sure you NEVER get the correct combination, but you can edit the URL to do so. Then just a really simple reload of jokes and joke submission.

Any and all feedback is welcome. I hope people find some of the combinations as hilarious as I do. Sorry if you are offended. Actually, no I'm not, it's a joke.</comment>


Inside the Y Combinator Experience With the Founders of Codecademy [video] - <AUTHOR> http://mashable.com/2011/11/25/codecademy-video/ <comment><USER2> Finally connecting the dots: codecademy.com != codeacademy.org. I saw the former when it launched on HN, then the latter a few days ago on HN and was a bit confused that it didn't seem to be linked to YC at all. Now I finally see they are two different entities with a common goal but very different approaches.

To make the matter worse, codeacademy.com redirects to codecademy.com.

<comment><USER3> Yeah makes it even more complicated when major tech blogs call Codecademy Code Academy, and then people on Twitter get @CodeAcademy confused with @Codecademy.

The Codecademy founders don't call their startup Code Academy and apparently didn't even know about the Code Academy in Chicago ([http://howilearnedeverything.com/2011/10/30/clearing-the- air...](http://howilearnedeverything.com/2011/10/30/clearing-the-air/)), but then just a few weeks ago they bought codeacademy.com

Interesting...

<comment><USER2> Thanks for the link. The timeline as described in this post seems to explain, _in my opinion_ , the somewhat odd name that "Codecademy" is. Since the start I've found it hard to pronounce and easy to misspell. It's not a big stretch to think they had "Code Academy" in mind and adapted it towards the end… Maybe not, but I know I would never go for "Codecademy" if I could go for "Code Academy".

<comment><USER4> Yeah. Never seen or heard "cademy" as shorthand for "academy"

</comment></comment></comment></comment><comment><USER5> Was the interviewer spliced in later like a Stephen Colbert interview? I was hoping he was going to ask about their monetization strategies and business plan.</comment>


Ask HN: Weby: A new python template language, can I have some feedback please? - <AUTHOR>

I have spent the last few years working on a new, minimalist, 0-magic Python web framework.  It is still not done, but I have used the template language in production environments and it is a pleasure to work with.  I want to release that separately today.
I have used Django Templates, Rails ERB, PSP, and many other template languages.  Weby Templates have the advantages of simplicity and flexibility.
Blog and docs:
http://www.jperla.com/blog/2010/08/15/weby-templates-are-easier-faster-and-more-flexible
Repository:
http://github.com/jperla/weby-templates <comment><USER4> I really like the approach which is similar to the Clojure library called Hiccup. Generating HTML in this way is very productive if you're doing the layout and backend coding yourself. Traditional templating languages are a better fit when working with designers who will not want to read/write Python though.

However, I do feel the syntax is a little heavy compared to similar non-python libraries. It would be nice if it could be done with less characters - <USER2> is a lot of repeated 'p' and 'html' which pollutes the code. I have no idea if this can be improved upon in Python though.

Also, I'd recommend a big lovely README on the github page as people may end up there not having read the blog post.

<comment><AUTHOR> I tried putting the docs on GitHub, but GitHub unfortunately does not have an HTML option for the README as far as I can see.

The markdown format should theoretically pass the HTML through, except that GitHub significantly modifies or ignores the tags so that the formatting is completely different. I will probably make a custom landing page a la Tornado.

</comment></comment><comment><USER5> Hmm. Well. Most Python templating systems use HTML with some Python code intermixed, in one form or another. So you're basically writing HTML and adding Python for conditionals, loops, special function calls, etc. With this Weby library, however, you write Python code that generates HTML. I'm not saying that's bad, but it's a completely different approach.

Also -- and this isn't a criticism of Weby -- I can't help but notice the lack of Python's syntactic flexibility here. Don't get me wrong, I love Python (still), but this is definitely not an area where it shines. In languages like Ruby or Scheme (etc), similar code would have much less fluff. In Python, OTOH, such a thing wasn't even possible until fairly recently, when the 'with' statement was added.

<comment><AUTHOR> Python does have limited syntactic flexibility. This makes it bad for making completely new languages. You are correct.

My philosophy recently has been that you do not want to create a new language. Haskell makes it easy to make a custom DSL. Unfortunately, that means a preponderance of new languages and mini-languages that you need to learn to get your work done. More importantly, these mini-languages invariably are missing features that you are used to in your powerful language: imports, decorators, debuggers, etc. Django templates did not even have variable assignments for years.

My recent philosophy is Pythonic: don't make DSLs but make domain-specific libraries. I have gone through many iterations to get this as minimal as possible while still being explicit and resisting putting in any magic. The results are still surprisingly readable after a little practice.

<comment><USER6> I'm coming around to the view that a DSL is a thing where you have actually created a new syntax. If there is no parser, there is no DSL in sight.

Few Haskell libraries actually provide DSLs, though I can name some that do, usually very small ones, often ones where if you still desire to write the raw Haskell you can. It's just that APIs take effort to learn and use, and Haskell can use some patterns that many other languages can't, just as Ruby can use some patterns many other languages can't.

I actually think seeing DSLs where there aren't actually any is somewhat dangerous, because people's brains stop being able to abstract correctly. I have a perl "DSL" at my workplace that I wrote that I have been desperately trying to convince people is not actually a DSL, because it makes people think about it wrong. It is a way of decorating functions in such a way that I can reach the metadata and do other helpful while they can get on with their lives, and it looks like this:

        special_sub subname =>
            permission_check { $_[0]->had('some_permission') },
            xml_rpc(name => "Category.subname"),
            does {
                blah blah blah
        };

and there are various other sundry things it can do easily that would make less sense out of context. This does things like expose this function to the local XMLRPC handler, and the xml_rpc function takes in the XML-RPC-specific metadata for this case. "xml_rpc", "permission_check" (which actually has a shorter name in real life), and even "does" are actually functions that return values which do the real magic, but I have the problem where people don't understand;

        my $common_permission = permission_check { $_->[0]->has('perm') };

        special_sub sub1 => $common_permission, does {...};
        special_sub sub2 => $common_permission, does {...};
        special_sub sub3 => $common_permission, does {...};

People see the DSL magic and suddenly its like everything they knew about the base language just goes flying out the window.

</comment></comment></comment><comment><USER7> Clickables:

[http://www.jperla.com/blog/2010/08/15/weby-templates-are- eas...](http://www.jperla.com/blog/2010/08/15/weby-templates-are-easier- faster-and-more-flexible)

<http://github.com/jperla/weby-templates>

</comment><comment><USER8> I built a variant of this style a couple years back [http://code.activestate.com/recipes/440563-yet-another- reinv...](http://code.activestate.com/recipes/440563-yet-another-reinvention- of-a-python-html-generatio/) . I used it to generate static content in advance, but it could have easily been used for dynamic content.

In my experience, when working as the only person on a project (all of the backend and frontend work), reducing context switch time in the form of removing languages can be a benefit. That can be augmented by knowing a templating language well enough (I personally got to that point with Cheetah and Spitfire), but then there is still javascript. Using Python syntax as html syntax is convenient as hell, but it isn't really all that maintainable once you go beyond the basics.

When your team moves from one person to multiple people, and you've actually got a frontend person who is really good at some templating language, productivity explodes, as the frontend person will be spending most of their time in that language. Also, you're not going to be finding someone with any experience in this new language you've written. The best new languages are ones that are evolving from previous languages, addressing the weakpoints in the former (django -> jinja, cheetah -> spitfire, etc.).

Finally, and this cannot be overstated, the insertion of business logic into templates is the worst cardinal sin of modern web development. Back in the wild-west days of the 90's through around 2002 or so, the use of ColdFusion, PHP, etc., was all understandable: we didn't know any better. But then we started getting usable templating languages in pretty much all programming languages, and they evolved. And the building of application logic into separate layers became not only possible, but became a time saver. Your backend guys build the logic to pass data into the template, your frontend guys format/handle that data into web pages. Business logic is in exactly one place. In the context of this language that you have written, while that isn't necessary, because your html templating is in Python, you will be tempted to introduce business logic into your template.

Otherwise, it is nifty :) Welcome to the world of templating.

<comment><USER9> I think you're over-emphasizing the importance of the separation of business- logic.

Essentially your templates shouldn't be making database calls, sure.

But just because your template language is written in Python doesn't mean your templates are going to be making database calls.

If the team is small and everyone knows Python well, I can see a pure-Python template system be far more advantageous than using a template language.

Template languages are simply for designers anyway who don't understand Python (and don't need to).

Good job on weby! Look forward to seeing the rest of the framework.

<comment><USER8> There is more to business logic than database calls.

And there is more to modern web development than your backend language and your templating language (hello javascript, jquery, yui, mootools, etc.).

Again, as I stated earlier, reducing the context switch time _can_ help, and this may be low-hanging fruit for very small teams, but almost every Python programmer will be coming into this having used one of the big Python templating languages. And the moment you get a frontend person with usable jquery, yui, mootools, etc., experience, most of this "oh, try this new templating language that isn't like any other templating language you've probably ever used" is going right out the window; they are going to rewrite everything in the language of their choosing (it happened with our guy and django -> jinja, which was the right thing).

</comment></comment></comment><comment><USER10> > _p.raw(u'Hello, %s!' % thing)_

yeah I'm not so sure I want to subject myself to Python string substitution for templates. Seems like I would make more mistakes and designers wouldn't be able to debug it.

 _< title>{{name}} | {{section}} | {{page}}</title>_

vs

 _p(html.title('%s | %s | %s' % (name, section, page)))_

If I was going to obfuscate the way I write HTML I would use <http://shpaml.webfactional.com/> but I don't mind HTML as long as I have a good editor like Eclipse.

<comment><AUTHOR> Good point, would you prefer

        p.raw(u'Hello, ' + thing)

and

        p(html.title(name + ' | ' + section + ' | ' + page)))

or better yet (remember that these are all strings funcs)

        p(html.title(pipe_separate(name, section, page)))

<comment><USER10> none! The semantic HTML and template logic are both in python and thus look too similar in all of them. You want the HTML in the template to look like HTML and visually distinct from the template logic so you or other designers working on the project can style these semantic structures easily with stylesheets. Writing HTML with an IDE like eclipse that autotypes the closing of an element and autovalidates if elements are closed is easy enough, and there's no string-joining nonsense.

</comment></comment></comment><comment><USER11> I'd vote against the name Weby because I don't want to live in a world where there is a web.py, web2py and weby/weby.py. Too much name similarity confusion.

<comment><AUTHOR> Thats a good point. I also worry about confusion with spelling and the Webby awards.

The original name was Webify, but I switched to weby because 1. IBM owns the trademark, and 2. Weby is short.

This is all still in development, so if you can offer a better name then I'm all ears. The short name is important to me because I aim for this to be minimal.

<comment><USER11> Understood. Yeah I've also discovered it's hard to come up with a name which is both (a) cool, and (b) accurate, and (c) not already being used! Here's some random name brainstorming I'll donate:

YATL: Yet Another Template Language

YATS: Yet Another Template System

Webplates (meaning web+templates. though WebPlate.com & WebPlates.com both have a scummy adverlink squatter)

Minplates.py

HTemplates.py

PyperText (pyper = python + hypertext something)

PyperTML

PyTML (Python Text Markup Language?)

PyTML (Python Template Model Language?)

AntiTemplates.py

GenHTML.py

GenH.py

<comment><AUTHOR> Ideally I can use the name for my upcoming web framework as well, a la Django Templates.

Also, the template language has an html helper lib which I describe in the docs, but it also has an xml lib, an rss lib, and really (since it's just strings) can generate any kind of textual template not just html markup.

</comment></comment></comment></comment><comment><USER12> IMO, the real killer with templates is form and input processing, so if you _really_ want to show that this way is easier, you might want to emphasise some form processing stuff instead.

You also might be better off making your library importable as * , so your code looks more like this:

       from weby_templates.templates.lib.html import *
       ...
       with p(html()):
            with p(head()):
                p(title('Hello, World!'))
            with p(body()):
                p(h1('Hello, World!'))
                p(p('Please choose from the following items:'))

I know that Python normally advocates against import *, but it looks a little more readable (to my eye, anyway), rather than call html.blah over and over again. You also don't explain what that 'p' variable is in your example - <USER3> sort of request object? It's also not clear why you need to call it to generate HTML.

Another thought: what if you used nested functions/classes instead of the with statements?

        html(
            head( title('Hello World!'), ... )
            body( h1('Hello World!'),
                p('Please choose...'),
                ul( li('Option 1'),
                    li('Option 2'),
                )
                ...
        )

With the html() function returning the relevant HTML. That way you get your string-returning and automatic tag closing for 'free'. I think there are a few lisp/scheme libraries which use this sort of style.

<comment><USER8> import * is the devil, really don't use it. Instead, hack up this recipe: [http://code.activestate.com/recipes/277940-decorator-for- bin...](http://code.activestate.com/recipes/277940-decorator-for- bindingconstants-at-compile-time/) to inject the common tags into the local namespace of the function. It will have the side-effect of making the code execute faster.

As for the callable variant, there are a few versions of that (nevow.stan was the first one in the style, I wrote a version a few years ago that I referenced in another post here, and I've seen a few pop up since) While it does work, indentation can get funky, looping gets tricky (you end up looping quite a bit with data-driven templates, it turns out), and closing parens aren't nearly as useful as a dedent. Being able to mix both styles may be a win.

<comment><AUTHOR> Great comment! Agreed. I'm a little afraid of that hack though and what it might do to a query optimizer.

You're right that the callable system makes loops tricky. Also, great point about the closing parens. We use python specifically to avoid them and to just use whitespace!

In practice, I have done a mixed approach as you suggested. I used this iterative style with limited callable style embedded where that makes sense (everything just returns a string, so they embed cleanly).

</comment></comment></comment><comment><USER13> Could you reduce the noise by having the accumulator ( _W_ in the below) support HTML generation methods?

        @weby.template()
        def index(W):
            with W.html():
                with W.head():
                    W.title('Hello, world')
                with W.body():
                    W.h1('Hello, world')
                    W.p('Lorem ipsum dolor sit amet')
                    with W.ul():
                        W.li('Lorem')
                        W.li('Ipsum')
                        W.li('Dolor')
                    with W.div(className='footer'):
                        W.p('foo bar baz bim')

A smaller win is to use keyword arguments (instead of passing a dict).

<comment><AUTHOR> Those are good ideas, and I experimented with those. I also appreciate that you actually looked into it and thought deeply about how this can be improved.

You gain a handful of characters you don't have to type.

You lose a lot of flexibility, however. For example, what if you want to use 2 different libraries in a template? Now, you cannot do that since the W accumulator is bound to one of the libraries, or if you do bind multiple ones then they may conflict in odd ways.

But maybe that's overstating the problem, worrying too much. Maybe it's okay that within each function we just assert that it can only use one library. I'll think about this more. I'm still a little worried it might be hard to explain. Do you think it'll be easy enough to describe to someone that W is both an accumulator and a library in one?

The dict idea would save a few characters, but it leads to problems with, for example, attributes that conflict with other arguments in the function call, or Python keywords. Even in your own example, you put className instead of class because class is a restricted keyword. It is important for me not to have to force the user to have to learn (and remember) that convention. Moreover, in this case of the class attribute, the most common kind actually, it saves no characters.

</comment></comment><comment><USER14> I like the general structure of what you have created but I will offer up one small thought. I grabbed the sample code from your blog page and did a rough character count excluding indenting. You have 444 characters of template to generate 270 characters of output HTML. I know this generalization of course doesn't encompass all the other advantages of templating documents but I would give a thought to improving the compactness of the syntax.

<comment><AUTHOR> Please note that the docs are completely static. Because they are static, I could have generated these docs by just writing a function that returned the whole html string, which would be a small constant overhead. The only reason I used Weby Templates is to show off the features.

In a normal programmatic setting, you would have significant if/else constructs and looping. These templates would be significantly shorter than hard-coded HTML, and still shorter than the popular Jinja, Django, and ERB templates because

1\. they close tags for you in a Pythonic way. 2\. it is trivial to create functions and filters to do repetitive tasks for you, whereas they can be difficult, hard to locate, or a pain to do with the others.

</comment></comment><comment><USER15> How is your templating solution different from these?

<http://breve.twisty-industries.com/>

<http://code.google.com/p/dirty/>

genshi.builder is similar too.

More here

<http://wiki.python.org/moin/Templating>

</comment><comment><USER16> I don't care for it. Jinja is pretty much the last word in Python templating, IMO.

<comment><USER4> I think this is an unfair comment. Weby templates are a different approach to Jinja (which is a conventional templating language) and its like comparing apples and oranges.

Automatically generating HTML from code has many advantages (and some huge disadvantages) compared conventional templating but has been used as far back as Perl's CGI.pm with many different lisp libraries also doing the same.

If you have never used such a library I'd recommend giving it a try sometime - they're very nice in situations such as automatically generating forms or database search results (where conventional templating gets challenged) which have more display logic than HTML.

<comment><USER17> I don't think it's comparing apples to oranges. While they take different approaches, they have the same end result, and in a given project, you would probably only use one.

<comment><USER18> Apples and oranges are just different approaches to getting the nutrients one needs. It seems like an apt comparison. Whether the normal usage of "apples and oranges" is sensible is a different matter.</comment></comment></comment></comment>