Odyssey – Scalable PostgreSQL connection pooler - <AUTHOR> https://github.com/yandex/odyssey <comment><USER2> This looks pretty interesting. Will definitely spend some time testing it.

Shameless plug. We have recently forked pgbouncer to add multicore support[0]. We are running in production for couple of weeks and the performance is great.

Our design is very straightforward. Instead of touching the current code, we've extended it by a manager, that spins workers, which are essentially forks of pgbouncer itself (one per core, or whatever you specify in the settings), and then distributes the connections between the clients and the workers. So if you decide not to use the multiprocessing part, you can just turn it off and you will be running the same old pgbouncer you are used to. It also allows for the code to be merged to the original code base without any significant changes.

[0] [https://github.com/pexeso/pgbouncer- smp](https://github.com/pexeso/pgbouncer-smp)

<comment><USER3> I haven't used pgbouncer before but I plan on using either it or an alternative such as Odyssey in the future. What is the use case for multicore support? Is it many short lived connections, large result sets, or something else?

<comment><USER2> At a certain scale the pooling becomes the bottleneck. PGB has to keep state of the connection and manage it's life time. All this currently happens on a single core. So it doesn't help you to tune postgres itself if PGB doesn't keep up.

Many solve this by running multiple instances of PGB (usually each on a dedicated processor) and use some kind of load balancing (haproxy, DNS, ...) to balance the connections.

This fork removes the need for the load balancing as it does it out of the box.

BTW this is only an issue if you've many connections to Postgres. We have thousands servers[0] connecting in and also run a citus[1] where the queries are distributed to many workers (with addition of citus MX that now allows each server to behave as a coordinator)[2].

At a small scale you are fine with the default postgres though.

[0] [https://cloud.google.com/customers/pex/](https://cloud.google.com/customers/pex/)

[1] [https://www.citusdata.com/customers/pex](https://www.citusdata.com/customers/pex)

[2] [https://www.citusdata.com/blog/2016/09/22/announcing- citus-m...](https://www.citusdata.com/blog/2016/09/22/announcing-citus-mx/)

<comment><USER4> Interesting to see how you guys do things. My team has taken the opposite approach, deploying pgbouncer as an ECS service with multiple containers per host, fronted by an lb.

<comment><USER2> We also did it this way before. However we paid for it in latency, and because we operate in cloud, network micro-outages. Once we moved it directly to the Postgres servers and deployed this fork, we saw pretty significant overall improvements.

</comment></comment></comment></comment></comment><comment><USER5> Out of curiosity, is there a point in using a connection pooler if your application does not follow the PHP approach to things?

That is, if you don't create a new DB connection for each HTTP request, but instead create one (or a few) connections at webserver startup time, which can serve all coming requests?

<comment><USER6> Pooling is more a problem with larger frameworks like Rails(Ruby) where a connection is automatically checked out of the client pool for you on every request and held till the end of the request. If you're doing other work on the request, like network calls or non-DB related slow stuff, you'll quickly run out of connections.

A separate pooler makes sense here because it'll let Rails imagine it has how many ever thousands of connections it needs open, but map them to real connections only when usage actually happens.

This is easier than taking over connection management manually in the code, which the only other option.

<comment><USER7> How does this work? I always assumed that you can have only one transaction open per session/connection (yes there are subtransaction but I don't see how these could be used for multiplexing independent transaction over the same session.).

<comment><USER6> Can't multiplex transactions, but if you're doing long running work inside transactions you have bigger problems.

The Rails will checkout a connection for you, but it won't necessarily start a transaction if you don't ask it to. Think there's some magic involved there, but generally transactions don't start unless necessary or they're initiated by code.

<comment><USER7> Uh oh. I naturally assumed Rails runs every request in a transaction because that's obviously the default you want.

<comment><USER6> Not really. Though this should be trivial to do - just start and commit in the base controller life cycle hooks - I would never want or recommend it as he default. Too many things can go wrong with out of hand work, sequencing, assuming that hooks will happen when you do call save methods etc.

<comment><USER7> Why would you not have that as a default? What things can go wrong? Not having it means you have to think about transactions in every method or you accept database inconsistency.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> I often wonder why connections aren't made more lightweight in Postgres, or if there was an option to steal a connection and have a "RESET" command that destroyed all state. In my Postgres library, I have to keep state information too just so I can "reset" a connection. Also maybe the protocol can add a (optionally client supported) PING to check for socket death to know if a connection is stealable.

<comment><USER9> That already exists via the "DISCARD" command: [https://www.postgresql.org/docs/current/static/sql- discard.h...](https://www.postgresql.org/docs/current/static/sql-discard.html)

<comment><USER8> I should have clarified, I meant at the protocol level. It's basically a state machine, and I want a "break" to reset the state machine. This would flush remaining query results, close named prepared statements, rollback any in- process transactions, and put the state back at ready-for-query. In the meantime, those with connections pools (this lib, my client-side lib, etc) have to keep this info (often except prepared statements which is the caller's responsibility to close).

<comment><USER10> That is what DISCARD ALL does, it discards all session state.

<comment><USER8> I am talking about the protocol, not a query. What if the state of the connection is not even at ready-for-query state, how do I issue a query? There is no DISCARD ALL in the protocol [0]. You might have only read 3 rows and still have a thousand to flush, or you might have sent a Parse and are awaiting a ParseComplete. This is the type of thing that a Postgres connection pooler has to keep track of. Here's some of their code: [https://github.com/yandex/odyssey/blob/master/sources/reset....](https://github.com/yandex/odyssey/blob/master/sources/reset.c) (note how it has to get back to ready-for-query state before rolling back).

0 - [https://www.postgresql.org/docs/current/static/protocol- mess...](https://www.postgresql.org/docs/current/static/protocol-message- formats.html)

</comment></comment></comment></comment></comment><comment><USER11> Would be interesting to have a side by side comparison with PgBouncer

<comment><USER12> agreed, what's the difference?

<comment><USER6> This is multicore and new hotness, think pgBouncer is single core and older than me.

Glibness aside, this has a few more interesting options, like configuration at a user-db level.

</comment></comment></comment><comment><USER13> > Advanced transactional pooling > Odyssey tracks current transaction state > and in case of unexpected client disconnection can emit automatic Cancel > connection and do Rollback

that's my biggest issue with pgbouncer, is there a docker image for it?

<comment><USER14> is this a problem with pg bouncer? pg bouncer supports transactional pooling which is meant to only return connections back into the pool when they are not in a transaction. so seeing as it keeps tracking of the transaction status it seems pretty crazy that it would put a connection back into the pool that has an open transaction.

i tested this on my local machine and if i drop a connection while it is inside a transaction it closes the server connection.

client close:

        2018-05-30 15:28:42.068 21702 LOG C-0x7f9728816a10: DB/USER@[::1]:64342 closing because: client close request (age=85)
        2018-05-30 15:28:42.068 21702 LOG S-0x7f972980a190: firstname.lastname@example.com:5432 closing because: unclean server (age=85)

client unexpected death:

        2018-05-30 15:33:57.197 21702 LOG C-0x7f9728816a10: DB/USER@[::1]:64376 closing because: client unexpected eof (age=15)
        2018-05-30 15:33:57.198 21702 LOG S-0x7f972980a190: email@example.com:5432 closing because: unclean server (age=10)

i guess it sucks that it doesn't reuse the connection but presumably this shouldn't happen that often that it would actually be a problem.

<comment><USER13> I'm unsure on the specifics and it might very well be an interaction between jdbc or something, what I know is that if I change the connection reuse settings from session to transaction I get leakage and eventual exhaustion, so currently I've a pgbouncer in session mode on every node and connect each to the backend. That uses a little more connection on the server but for now is not critical so I haven't investigated in deep and if easier I'd just hop to an equivalent because we're really short on hands right now.

<comment><USER15> You need to make sure you turn off prepared statements if you want to use pgbouncer in transaction mode with pgjdbc.

FWIW we use it in exactly that way to serve many thousands of rps with no issues.

</comment></comment></comment></comment><comment><USER16> I have been looking into this (and pgpool2 and pgbouncer) and what I found most suprising was both the lack of workable Docker images and any hint of a SaaS solution for this problem.

Connection Pooling as a Service, why does this not exist? What factors could cause this to be a bad idea? Need for proximity? Network speeds? Security?

<comment><USER17> Latency would be the big issue here. You'd likely have to spin up instances in lots of key data centres to try and combat this...

Each AWS location, each Google Cloud location.. and that's not considering those that are colocating their own kit.

Interesting idea though, but you'd end up having to bundle it with DBaaS, at which point you've got the pressure and stress of having to look after everyone else's data.

<comment><USER15> It's really not worth doing this because the back and forth latency of SQL is much worse than proxying a HTTP/RPC request to the app server sitting next to the DB and getting the final result back.

</comment></comment></comment><comment><USER18> Noob question: are we supposed to run a connection pooler on each backend webserver instance, or have every server connect to this (i.e. this is another microservice)?

And no usage examples?</comment>


Code Reading Question - <AUTHOR> http://planspace.org/20150616-code_reading_question/

<comment><USER2> Interesting I suppose, but doesn't this select for candidates that can parse through code that doesn't self document?</comment>


Ask HN: Is Apple VR going to happen? - <AUTHOR> Apple's conference is soon. The question is simple: Do you think Apple will join the Virtual Reality game?
It would be cool to get some discussion going on this topic, so back your answers with logic and facts!
Some links: http://bit.do/bP4nr http://www.macrumors.com/roundup/apple-vr-project/ http://uk.businessinsider.com/apple-is-getting-into-vr-in-a-big-way-2016-2?r=US&IR=T <comment><USER2> I feel Magic Leap's "digital light field signal" might just be the breakthrough we need to make multi-hour VR/AR not only comfortable, but delightful. I think we're still fiddling with PocketPCs and Magic Leap will be the "iPhone" moment. Apple would then just move to integrate the tech into their products, just like they do with OEM LCDs & OLEDs today.

<comment><USER3> Light fields are awesome technology in general. I can't wait to see how that's integrated to make existing technologies better.</comment></comment>


My Letter to the Tor Project - <AUTHOR> https://www.oneeyedman.net/?p=2581 <comment><USER2> Back when I was a tech journalist, I always felt uncomfortable speaking with representatives of the Tor project. Their approach to communicating always seemed needlessly accusatory and combative. It left me with the strong impression that they are more interested in shouting down criticism and downplaying the extent to which Tor is abused rather than educating the public and engaging with the broader tech community in good faith.

The poor way that the organization and its members have dealt with the allegations made against Applebaum over the years seems emblematic of the broader problems with their culture and the inept way that they handle criticism and internal failures.

I think a lot of us, particularly open source enthusiasts and civil libertarians, are inclined to give them a free pass because we value the underlying ideas that the Tor project ostensibly represents. But it's increasingly clear that not holding the organization to higher standards of accountability was a disservice to the ecosystem.

</comment><comment><USER3> It took many thousands of years for humans to create a judicial process with rights for the accused. It's sad to see how quickly we can all fall back to mobs with pitch forks, with justice decided on platforms like Twitter.

</comment><comment><USER4> related (flagged) thread of the zeit.de article [https://news.ycombinator.com/item?id=12303927](https://news.ycombinator.com/item?id=12303927)

<comment><USER5> Why it was flagged?

<comment><USER6> Because it is drama, just like this post.

(A more precise answer would be that your question is impossible to really answer, since it's the users of the site who flag stories; it's like asking why something was upvoted.)

<comment><USER7> It is not drama if two German equivalents of the New York Times and the Washington Post both slam the Tor foundation's behavior. This is the other one:

[http://www.faz.net/aktuell/feuilleton/medien/jagd-auf- jacob-...](http://www.faz.net/aktuell/feuilleton/medien/jagd-auf-jacob- appelbaum-das-tor-projekt-laviert-14378139.html)

The FAZ and the Zeit are two of the most serious newspapers in Germany. FAZ is conservative/business friendly.

<comment><USER6> I'm afraid these particular authorities aren't meaningful enough to me to make compelling appeals to them. This all sure looks like drama to me. That is at least why I flagged them.

For what it's worth, I flagged a bunch of anti-Appelbaum stories too. For the same reason. Drama.

<comment><USER8> Neither you or the Tor foundation are authorities to me either. The story is not only Appelbaum, but how a bureaucratic authority can affect someone's life, how much power OSS devs should give to foundations.

Most people here are of course safe, since they don't do OSS and just leech other people's work.

<comment><USER6> Comments like this are the reason I flag anything that looks like it will generate drama. Thanks for helping me make my point.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> All stories that aren't in favour of a good old fashioned lynching get flagged and then removed.

<comment><AUTHOR> >lynching

Last I heard Appelbaum is still alive, though?

<comment><USER10> Lynching is an epithet for Social Justice, and vice-versa.</comment></comment></comment>


Final (YC W15) Raises a Million for Its Fraud-Fighting Credit Card - <AUTHOR> http://techcrunch.com/2015/01/27/yc-backed-final-raises-a-million-for-its-fraud-fighting-credit-card/ <comment><USER2> As far as I can understand, this is a card with NFC/pin that cycles the number when you use it as an NFC card, right?

If you are already using Apple Pay, does this offer anything besides a nice app experience?

<comment><USER3> Apple pay, to my knowledge uses the same card number per charge

<comment><USER2> But the information revealed to the vendor is variable, so they can't use that to make future charges, which is I assume the same situation here.

</comment></comment></comment><comment><USER4> Nothing to see here. Move along.</comment>


Annotatr - scientific paper commenting done right - <AUTHOR> http://annotatr.appspot.com/

<comment><USER2> Hi, I'm one of the developers of annotatr.

First of all, it's great to see people having a look at it and offering encouragement and constructive feedback. Thanks.

Annotatr was more a proof of concept and fun hack than anything else. While Bosco and I did want to offer an alternative to existing commenting systems for scientific papers (Nature, PLoS, CiteULike, etc.) we also realised that a big difficulty is getting continued engagement.

Some time after we put it up, I adapted annotatr and turned it into mldiscuss, a site for commenting on papers from ICML 2010:

<http://mldiscuss.appspot.com/>

Before, during, and after the conference this site had quite a bit of activity but has since died off. I guess the lesson here is that a narrow focus (a single conference) works better than a broad one (scientific papers) -- at least in the short term. I'll likely extend mldiscuss for this year's ICML to see if it can pick up a bit more momentum.

<comment><AUTHOR> Thanks, that's good to know.

</comment></comment><comment><USER3> The code is on GitHub: <https://github.com/mreid/annotatr>

I remember seeing it last year and it doesn't look to have been worked on recently. A great proof of concept, but it'll be hard to sustain development motivation: there aren't good opportunities for making money, and this type of work unfortunately doesn't generate a lot of recognition amongst scientists.

</comment><comment><AUTHOR> I should clarify that I am only a user - the site was made by <http://mark.reid.name> and <http://boscoh.com>

</comment><comment><USER4> There's a persistent cross-site script vulnerability on the front page.

</comment><comment><USER5> ah, not quite done right.

The search interface really needs to be more like google scholar or web of knowledge (who really wants to type in "author:"einstein a" && year:1905"). Narrowing by field/discipline is a must, esp. for some keywords.

Also, just discussing abstracts is pretty lame. The typeface/links to citulike and journal are too small. There's no info on how many times it was cited, or what papers it cited.

Not to complain, but I'll wait for the next guy. This won't work.

<comment><USER6> Truth is, that even if this was the best interface in the world, scientists would never spend their time discussing papers online.

Facultyof1000 tried hard, Plos is trying hard, even nature tried hard to get people to leave comments to papers. It just doesn't work.

<comment><AUTHOR> Let's hope.

</comment></comment></comment><comment><USER7> quick wishlist:

\- interactive refinement of results as I type

\- ability to restrict results to only papers that have been commented upon

\- ability to restrict visibility of my comments to friends/colleagues

\- ability to get notified if a particular abstract gets a threshold number of comments

As it stands, this is not a minimum viable product I will return to (though perhaps it would be if everyone else in my field used it). Nice try though, hopefully it will improve with iteration.

</comment><comment><USER8> There are loads of duplicate papers. Searching, for example. for "latent dirichlet allocation" shows the same JMLR paper about four times in the top results.

</comment><comment><USER9> Sorry guys, I gave you an exception while searching for Polish theses:

UnicodeEncodeError: 'ascii' codec can't encode character u'\u0144' in position 14: ordinal not in range(128)

EDIT: Also, after navigating to: <http://annotatr.appspot.com/citeulike/article/57175>, I've got: DownloadError: ApplicationError: 5

</comment><comment><USER10> This would work a lot better if there were social integration with your friends and colleagues - maybe scraped from Facebook?

<comment><AUTHOR> Or if Academia.edu incorporated this feature, or had a login API...

</comment></comment><comment><USER11> There seems to be a small bug, when I try to search for an author with a german umlaut in the name (for example "Kühn Eva") I get an error ("UnicodeEncodeError: 'ascii' codec can't encode character u'\xfc' in position 9: ordinal not in range(128)"), however searching after "Kuhn Eva" works.

<comment><USER12> Another small bug in how author names get scraped. It seems to have to do with colons in paper titles. For example, the paper "Ontologies Are Us: A unified model of social networks and semantics" (by Peter Mika) gets reported as "Ontologies are Us:" (by Unified M. Of).

</comment></comment><comment><USER13> Searching for nothing causes an error with stack trace:

<http://annotatr.appspot.com/search/all?q=></comment>


How 50% Discounts Really Work - <AUTHOR> http://www.smartmoney.com/spending/deals/how-50-discounts-really-work/

<comment><USER2> Nice, but I don't shop enough to watch the prices and see if that 50% off is really a 10% up and 50% down. I wonder why there isn't a site even remotely comparable to kakaku.com. They monitor prices, show you where deals are, and track the trend. Take a look at this one, for example (just picked off the front page):

<http://kakaku.com/item/K0000089891/>

Notice all the retailers, retailer reviews, and prices along with the price trend graph at the bottom. Also, users submit reviews of the products. Sure, it's all in Japanese but you can get the gist (or run it through a translator). There are shopping sites here but none nearly as comprehensive as kakaku.</comment>


Pangolins Are Suspected as a Potential Coronavirus Host - <AUTHOR> https://www.nytimes.com/2020/02/10/science/pangolin-coronavirus.html <comment><USER2> This is not a thing I knew existed: [https://en.wikipedia.org/wiki/Pangolin](https://en.wikipedia.org/wiki/Pangolin)</comment>


NASA predicts 2013 magnetic super storm with "catastrophic consequences" - <AUTHOR> http://www.telegraph.co.uk/science/space/7819201/Nasa-warns-solar-flares-from-huge-space-storm-will-cause-devastation.html

<comment><USER2> Here's the NASA link: [http://science.nasa.gov/science-news/science-at- nasa/2010/04...](http://science.nasa.gov/science-news/science-at- nasa/2010/04jun_swef/)

</comment><comment><USER3> If a device is powered off, can it still be damaged ? ie would spare servers and routers be hurt as well, or just things that were powered up at the time of an extreme powerful solar flare

</comment><comment><USER4> Hmm, so the Maya were off by just a couple of months, they predicted December 2012.</comment>


Children unlikely to transmit coronavirus, study cited in push to reopen schools - <AUTHOR> https://www.theguardian.com/world/2020/apr/26/children-unlikely-to-transmit-coronavirus-says-study-cited-in-pms-push-to-reopen-schools <comment><USER2> The full report: [http://ncirs.org.au/sites/default/files/2020-04/NCIRS%20NSW%...](http://ncirs.org.au/sites/default/files/2020-04/NCIRS%20NSW%20Schools%20COVID_Summary_FINAL%20public_26%20April%202020.pdf)

Key quote:

>SARS-CoV-2 transmission in children in schools appears considerably less than seen for other respiratory viruses, such as influenza. In contrast to influenza, data from both virus and antibody testing to date suggest that children are not the primary drivers of COVID-19 spread in schools or in the community. This is consistent with data from international studies showing low rates of disease in children and suggesting limited spread among children and from children to adults. Data from the whole of NSW also demonstrate children (aged <19 years) represent 4% of all cases of COVID-19 despite being approximately 23% of the population.

</comment><comment><AUTHOR> If true, it's still going to be hard to push this as the pols won't be happy to admit they may have made the wrong decision by closing the schools. Of course, one could argue that if the study is true/correct, than the school closing decision may have been good decision, bad outcome and not bad decision, bad outcome.

But, of course, now it not a time for nuanced discussion. /s</comment>


The PhD Movie - <AUTHOR> http://phdmovie.com <comment><USER2> I downloaded it last week (strangely enough, I got there by browsing the Stripe website despite being subscribed to the PHD RSS).

For an indie movie, it's really not bad. Yes, it has some terrible, terrible scenes that just don't work - but the majority is actually pretty watchable. There are some good jokes in there, even though I often felt they could have been portrayed better. The character I love most is the professor - he looks and acts _exactly_ as expected from reading the comics :-)

Overall I think most of the script and some of the actors could really shine in a Hollywood do-over of the same movie.

</comment><comment><USER3> I saw it a few months ago at a screening at my university. It's quite funny, and quite accurate too :). It is definitely an indie production, but that doesn't take away from the fun.

</comment><comment><AUTHOR> I've liked PHD Comics for a long time. When I first heard that there was a live-action trailer for a movie (a long time ago), I figured it was a joke - some friends got bored and shot a video over a weekend or something. But I watched the trailer and it was really good. I honestly believed that it was too good to exist. I mean, how often does a webcomic get turned into a live action indie movie? Exactly. So I was psyched to see that they finished it and it really exists :)

</comment><comment><USER4> I've seen the trailer since several month ago, not interested, terrible acting.. But i still love the comics.

<comment><USER5> I just watched the first half of it and thought the acting was just slightly better than the acting in Act of Valor ("real Navy SEALs!" in a movie about Navy SEALs).

</comment></comment><comment><USER6> I would actually have bought it for 5$, but seeing 15$ for the download is kind of a bummer.

Louis CK (a pretty well known comedian with his own TV shows) charged 5$ for his evening special in a hassle/drm-free HD download and was pretty successful with it.

I am not quite sure where the sweet spot is, but I think they might be able to reach a broader audience for 5$ :-/

<comment><USER7> Maybe, but they can always do that down the line. At the moment, they have a dedicated audience that will gladly pay $15.

<comment><USER8> There's always going to be dedicated people who will pay a particular price. But how many are there?

Isn't the question really: what is the sweet spot, where you get the highest total for 'number of purchasers'*'the price'?

<comment><USER9> Well, no. Given your number of customers as a function of price D(p), you aren't necessarily trying to maximize p D(p). It's not completely obvious, but in principle you can get ∫ D(p) dp out of those people, if everyone paid what they were willing to pay.

In order to pursue this goal it is very common to make a finer approximation to ∫ D(p) dp by creating several price-points. You see this all the time on Kickstarter for example, "donate some extra and we'll send you a copy of the source code." And one of these ways is "donate some extra and you'll get to see the finished product first," which is one of the solutions given above: charge $15 when it first comes out, then reduce to $5 over time.

<comment><USER10> That's the theory. In practice, people who think that $15 are too much, will either forget about it (and not come back when its cheaper), or they will pirate it.

<comment><USER11> That's not practice. It's just your theory. I dislike this rhetorical device.

<comment><USER10> In practice my theory is right.

</comment></comment></comment></comment></comment></comment></comment><comment><USER12> I was ready to pay, and then it asked me to put my credit card information into a non-secure page. Looking at the page source, it looks like they use Stripe for payments. Will the credit card details be transmitted encrypted once I press the submit button, or are they transmitting the details in the clear?

<comment><USER13> The Stripe JavaScript will submit your details over HTTPS. To prevent this very concern (the perception that submitted data will not be secured), sites should serve their forms over HTTPS as well.

<comment><USER14> Unless someone substituted the javascript served by the page over unprotected HTTP (while it was sent to you). Firesheep already showed that making similar process user-friendly isn't that hard.

</comment></comment></comment><comment><USER15> Was a bit surprised that they didn't ask for founding on kickstarter, seems like the norm these days :)

<comment><USER16> Considering it is a movie about getting a PhD, I'm surprised they didn't try to fund it through an NSF grant!

</comment></comment><comment><USER17> I wish they'd have provided a download-only option, but I suppose unlimited online streaming sorta makes up for it.

</comment><comment> excuse-me I'm waiting for the XKCD live action movie

<comment><USER18> As we know, that's going to be "River Tam Beats Up Everyone": <http://www.xkcd.com/311/>

</comment></comment><comment><USER19> Somebody's smoking crack to think $10 is a good price for streaming a documentary no one's heard of, with the option to pay even more for a download.

Don't they teach pricing any more?

I just know these guys are leaving money on the table.

Try $2 for a view, $5 for a download, $12 for a DVD. Assuming you're a world renowned comedian with millions of fans. Anything less, adjust price downward accordingly.

<comment><USER10> The film is not a documentary, and it's no wonder you haven't heard of it; it's targeted at the audience of the phdcomics webcomic. I assume they don't aim for the mass market, but try to cater to their readers.

If you target a small audience, you need to charge more. $2 might work for mass market, but not for a niche.</comment></comment>


Employed with a side of startup - <AUTHOR> http://blog.asmartbear.com/working-startup.html <comment><USER2> I don't know how many hundreds of founders I have worked with over the years in Silicon Valley who began by moonlighting while working day jobs to get started.

The process is normally pretty safe and, out of the hundreds of cases, I don't know of one that resulted in a lawsuit.

On the other hand, since I also do litigation, I have witnessed a variety of these situations that have resulted in lawsuits and have occasionally defended them.

What is the difference between the safe and the unsafe ones? The standard safe zone is well-known in the Valley: do the side activity strictly on your own time and without using company resources.

Where people trip up:

1\. Doing side activity that is related to the employer's current or anticipated business.

2\. Failing to comply not so much with the terms of an employment agreement but rather with "company policies" that large employers will periodically require their employees to sign - policies that can require the employee to report all side activity and to sign a form affirmatively attesting either that there is none or explaining what it is. (If you lie on this, you get in trouble).

3\. Crossing the line in violating fiduciary obligations that an employee has to ensure that all activity for which the employee is compensated is done strictly for the benefit of the employer.

The really critical area tends to be the last point. I don't know how many times over the years that I have seen founders get tempted to want to: (i) steer current customers of their employer in the direction of their side venture; (ii) sign up key customer or supplier contacts of their employer as "advisors" for their side venture; (iii) talk to co-employees about joining their side venture; and (iv) the worst temptation of all (but thankfully rarely done) use an inside contact at their employer's business (or use their own position) to steer project work toward the side venture.

The simple rule is to play it straight. Avoid conflicts. Make sure any IP you generate in your side venture has no material connection with your employer's business. And then follow the standard rules (own time, own resources). If you do these things, you will normally not incur any significant risk from moonlighting. (Of course, check with a good lawyer in your local area on details for your particular situation).

<comment><USER3> _The really critical area tends to be the last point. I don't know how many times over the years that I have seen founders get tempted to want to: (i) steer current customers of their employer in the direction of their side venture; (ii) sign up key customer or supplier contacts of their employer as "advisors" for their side venture; (iii) talk to co-employees about joining their side venture; and (iv) the worst temptation of all (but thankfully rarely done) use an inside contact at their employer's business (or use their own position) to steer project work toward the side venture._

On 3, does this mean you can be successfully sued for hiring a co-worker? What if it's 2 years later?

On a side note, it's pretty damned fascist that relationships can be treated as corporate property. That only passes because the corporations now own the legal system.

<comment><USER4> Nonsolicit is a very common contract provision. As "fascist" as it sounds, my experience has been that it favors small shops.

They're apparently hard to enforce. That's totally irrelevant to you; just taking you to court is enough to kill your startup.

<comment><USER5> +1 on "taking you to court is enough to kill." And you personally -- even if you win you don't get your lawyer fees back (contrary to popular opinion).

Nonsolicit is actually one of the clauses I think isn't unfair. It's one thing to leave a company, quite another to cause an exodus.

<comment><USER6> I think nonsolicit is quite unfair. You can't force any of your co-workers to leave with you, and if they're happy where they are most of them won't. If the company sucks, a Good Friend would try to take as many with him as possible when he found something better. That's just people helping other people out of crappy situations.

I've heard some people espouse the idea that there might be some ethical misconduct in courting [soon-to-be] ex-co-workers. I don't see any basis for that belief. Again, the most you can do is make an offer; if your company's staff is all going to jump ship when someone comes to them with vague and shakey musings about founding a startup together, that should really tell you something about the company you work for. There's nothing wrong with making a proposition, imo.

I have worked with people who have signed oppressive contracts. I find it deeply sad that some people have done that. Neither of my co-workers from my last job would be available if I wanted to proposition them, as they are both engaged in multi-year contracts which state departure before Month Year is punishable by big, big financial penalties. Only for the employee, of course; the employer can terminate them at its leisure without any responsibility according to these documents.

</comment></comment></comment></comment></comment><comment><USER7> _"I work on my hobby only at home and on my own time; it is not in conflict with my employee agreement. I own it; [Company] has no ownership or rights to it."_

That may or may not be true, depending on the employee agreement. Many of the ones that I've seen give the corporation ownership rights to any software developed by the employee, even at home and on their own time.

Check this before you start.

<comment><USER8> Most states limit the reach of IP agreements. In Illinois, for instance, I was once presented with an employment agreement that included an IP clause like that. I looked into the law and found out that it wasn't enforceable in IL. I quite the job because I thought the people who sprung that on us were fucking loons.

My current company (Condé Nast) has a shockingly fair IP agreement compared to other large corps.

</comment></comment><comment><USER9> I disagree with most of his advice. I really doubt you'll be able to quit your job and get anywhere with your business if you follow it. I don't really want to get into details for obvious reasons, but when I worked on my business on a side last year, let's just say I wasn't following the advice in this article, and I glad I didn't. If I did, I would still be working for "the man" and hating my life.

Everything in life takes balls. Decide what's important for you, and go for it, fuck everything else. You've gotta have the attitude that your business is #1, and the corporation just doesn't really matter that much. Again, I can't post that many details, but pretty much reverse most points from this post and you'll have a good idea of what to do.

<comment><USER4> The logic you've employed here works for stealing cars, too. If cars are really important to you.

<comment><USER9> Ok, maybe I should be more careful, what I wrote could definitely be misconstrued as that. Obviously I'm not saying to do anything illegal.

But - telling your employer in advance that you're working on your own project? Really? What's the advantage in it? What you do in your off time is 100% yours [unless you signed something that says it's not], and letting your employer know about it will not bring you any additional benefits. On the other hand, the disadvantages are huge - everybody will start mistrusting you, knowing that you're looking for a way out, you'll never get promoted, etc.

And that's just one point.. Not doing business phone calls in the day hours? C'mon, how realistic is that? How is anybody going to take you seriously if you don't pick up your phone during the day? Instead, you should FIND time during the day for important business-related phone calls. When I was employed, I always ate lunch at my desk in about ten minutes. At lunch hour, I found a nice quiet place in a plaza 2 minutes from the office, brought a notebook to take notes, and made 2-5 business calls.

My point is, while you should definitely not do anything illegal, if your #1 goal is to quit your job and make your business your primary source of income, you should find creative ways to reach that goal, and stop at NOTHING before you do that.

<comment><USER4> The treacherous thing about these precautions is that they don't matter to most startups, because most startups don't succeed. It's only when what you're doing _actually matters_ that it starts to make a difference whether, in year 1 of the company, there are phone records of you fielding tech support calls from your cube.

<comment><USER3> The "assume Big Brother is watching" advice seems to be good in all cases. If the startup doesn't succeed, then you need the day job and don't want to be found out and lose it. (Your company is not likely to think "startup" when they see "strange activity", but rather "interviewing elsewhere"; that, however, will get you just as fired in a lot of places.)

</comment></comment></comment></comment></comment><comment><USER10> One reason I love working for my current employer is he really cares not a jot about what we do on the side (and even if it leaches into the day job at times).

Actually he'd even part funding a current pet project of mine :)

It's at the point where I dont even have a contract any more because of the limitations it actually put on our relationship (note: not generally recommended - before everyone sprays tea/coffee on the keyboard)

You just have to find out if your employer is going to be a douche or not - and if not then be open about what your up to.

<comment><USER11> This becomes really apparent if you live in a country with a less-capable legal system. Contracts are basically meaningless. It's the people behind the contracts - and their character - that are more important. That is why if you try to do business in a place like China or Brazil, the hosts will take you out to dinner and events to get to know you first before talking business.

This is even true in North America although you don't need to spend as much time getting to know someone as you have a little more safety.

</comment></comment><comment><USER12> There is interesting story about moonlighting at Microsoft.

For many years Microsoft required employees with side projects to submit and get approved moonlighting request. The problem was that it was not easy to get approved for start-up-like projects: neither management nor legal didn't want to take responsibility and were pushing requests back and forth for months.

Finally, in the beginning of 2006, some brilliant legal head solved the issue once and for all: they removed approving process entirely and released set of guidelines you have to use _yourserf_ to determine if there is conflict of interest. So in one simple move they not only reduced amount of work legal department has to do, but also reduced possibility that employees would choose to create start up by pushing everyone in gray area and keeping door open for later litigation threat.

BTW, if you have day job you want to incorporate early so you can do proper assignment of invention related to your start up (in addition to incorporating for liability reasons).

</comment><comment><USER13>
      3. You can't afford to hire three developers to add features and bugs.

I got a kick out of that one - Everybody know that only big businesses can afford to hire developers to add bugs.

<comment><USER5> Awesome, I'm glad you got that joke! I don't think anyone else mentioned it. :-)

I've seen studies too on things like "Developer Productivity" or other such crud where they didn't even measure stuff like "new functionality added" but ONLY "how many bugs were injected."

</comment></comment><comment><USER14> "If they decide to sue, they get to look through your email records (it's called "discovery"). Then they have 100 emails you sent during work hours. You lose."

The simple solution that PG has recommended in the past is to rewrite all the code. Does that protect you from the above?

<comment><USER4> No. You still invested your employers resources in your business.

</comment></comment><comment><USER15> Great bit from the article:

"If they decide to sue, they get to look through your email records (it's called "discovery"). Then they have 100 emails you sent during work hours. You lose."

Weird. I submitted this article but my submission has now disappeared and it's now on front page under bhousel? Probably just a coincidence?

<comment><USER16> They get to look through your _personal_ emails?

<comment><USER17> Sure,

<quote> Under the law of the United States, civil discovery is wide-ranging and can involve any material which is relevant to the case... </quote>

<http://en.wikipedia.org/wiki/Discovery_(law)>

</comment></comment></comment><comment><USER18> Does anyone have any insights into how Google handles this? What approach they take?</comment>


GCC always assumes aligned pointer accesses - <AUTHOR> https://trust-in-soft.com/blog/2020/04/06/gcc-always-assumes-aligned-pointers/ <comment><USER2> About 30 years ago, I was porting an Ethernet driver to the MC88K, which also didn't allow misaligned accesses. Guess what happens when you fill a page- aligned buffer with an Ethernet packet, go past the 14-byte Ethernet header, and try to read the first 4-byte value in the IP header as a single word? You guessed it: SIGBUS. Every time. The same problem existed many other places, so I had to go find all of them. Eventually I implemented an exception handler that would emulate the access, and also log an error message. For months afterward, this turned up ever more obscure cases until there seemed to be none left.

Coming next: how modern programmers can't imagine a different word size or byte order. After that: different memory-ordering models. That one's _really_ fun.

<comment><USER3> Mixed memory order as in, a memory write stores the data in an order like 5, 7, 6, 4 instead of 4, 5, 6, 7?

<comment><USER2> _Basically_ yeah, but it gets much more complicated. For example, when a write hits memory is actually not the same thing as when it's observable by some particular other processor. There might be particular rules for writes that have dependencies too. Here's some good reading material if you have a spare afternoon.

[https://www.kernel.org/doc/Documentation/memory- barriers.txt](https://www.kernel.org/doc/Documentation/memory-barriers.txt)

Amusingly, it treats dependency issues as obsolete, but I worked on a processor as late as 2009 that had all of the weak-memory-ordering issues of the Alpha (because it was the same design team). We uncovered _lots_ of missing memory barriers in the Linux kernel. Good times.

<comment><USER4> The modern thing is using acquire/release semantics on the variables you actually care about intra-thread ordering on, rather than full barriers, which impose a higher cost.

<comment><USER2> I think we're talking about different kinds of barriers. Acquire/release at the C++ level translates roughly into an rmb/wmb pair at the processor level, unless it's implemented using an actual interlocked instruction which is _worse_ than barriers.

<comment><USER4> Nope. Acquire/release at C level translates into a compiler barrier and the exact machine implementation will depend on hardware. However, on x86, for example, with its strong memory semantics, ordinary stores already have release semantics and do not require an architectural barrier (wmb/sfence). No sfence, no lock prefix.

<comment><USER2> First you said that the modern way is to use acquire/release instead of a barrier, then admitted that it _is_ a barrier at the compiler level. The fact that it doesn't require a barrier instruction on the x86 is pretty much irrelevant. Not all the world's an x86, and even the x86 hasn't always been the same in this regard. So your rude "nope" is unwarranted. This attitude of "as it is (in my world) now, so it has ever been and ever will be (everywhere)" is exactly why these bugs occur.

<comment><USER4> Compiler barriers and machine barriers are completely different things, despite having a similar name.

In about the era you described, the Linux kernel community did go around throwing rmb()s and wmb()s everywhere, and those did translate to hardware fences. (And in general, it is not safe to elide a hardware fence on x86 despite relatively strong memory ordering.) This is what I believed you were talking about; maybe I misunderstood: apologies.

Putting explicit compiler barriers in code is still not quite the modern model for relaxed atomic consumers. You use the abstract acquire/release load/store pseudo-functions, and they do the right thing depending on implementation. _The compiler barriers in the relaxed atomics model are an internal implementation detail, not the API_.

x86 is just an example where the cheapest way to do a release-semantics store is a plain store. I never said all the world was x86 — if it were, abstract acquire/release relaxed atomics would be kind of pointless.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER5> This isn't just an issue with GCC but embedded compilers as well. On embedded systems its common to work with packed data structures to maximize serial protocol efficiency.

Lets say you have a packed structure with a type of

        struct MyPackedStruct {
          uint8_t byteValue;
          uint32_t intValues[5];
        }

Normally a compiler would add 3 extra bytes between the uint8_t value and the uint32_t array to keep alignment of the int array, but that won't be the case if you force it to be packed. This results in uint32 values that span two word boundaries. If you access one of those array values in code directly, the compiler is smart enough to perform 2 separate memory reads and combine the resulting value so you don't have to really think about it.

But if you do something like this:

        uint32_t *intValues = myPacktedStruct.intValues;

The compiler allows this, but the resulting intValues pointer loses all packed awareness, and trying to dereference that pointer will result in an unaligned memory access exception.

Moral of the story - only use packed data types when serializing/deserializing a protocol stream. Avoid using packed data types 'at rest', because it can cause subtle issues like this. The downside is that it results in extra parsing work when converting between packed and unpacked types.

<comment><USER6> I would argue that this is a bug and should probably be fixed in a future C/C++ standard that allows declaring misaligned types. Something like "members of a packed struct have [[aligned(1)]] attribute and cannot be converted to a pointer type with different alignment except with a reinterpret_cast", so you'd have to do

        uint32_t [[aligned(1)]]*intValues = myPackedStruct.intValues;

Would be nice if we also got e.g. float/intNua_t for unaligned types. Any code that gets broken by this change was broken to begin with.

</comment></comment><comment><USER7> Specifying a target architecture (ISA) when compiling does not change the programming language's semantics.

C is _not_ a high-level assembly language, as pointed out in the article.

So just because you know that the target CPU supports e.g. unaligned accesses does not make them suddenly valid C.

</comment><comment><USER8> No. [as in: this isn't about GCC.]

The C standard requires that pointers generally be created from referencing a valid, existing object. A misaligned integer is not a valid "object", thus the compiler may assume that all pointers to ints are aligned (to 4 bytes.)

[https://en.cppreference.com/w/cpp/language/pointer](https://en.cppreference.com/w/cpp/language/pointer)

      Every value of pointer type is one of the following:

      - a pointer to an object or function (in which case the pointer is said to point to the object or function), or
      - a pointer past the end of an object, or
      - the null pointer value for that type, or
      - an invalid pointer value.

Relatedly, `malloc` is required to return a pointer with the largest alignment of any type ("suitably aligned to hold an object".)

Edit/Add: that's C++ in the link above, but it's the same in C. You can get a pointer from either a valid static/stack object, or malloc, which is "max" aligned. Either way it's required to point to a valid object, which includes correct alignment. If you implement your own memory management / allocator, it's also your responsibility to meet these same alignment requirements.

[https://en.cppreference.com/w/c/language/object](https://en.cppreference.com/w/c/language/object)

<comment><USER9> Why "no", you're agreeing with the conclusion

<comment><USER10> Sort of. He definitely talks about the fact that it is undefined behaviour to create a misaligned pointer:

> Strictly speaking, the function f invokes Undefined Behavior when it > computes [the misaligned pointer]

But he thinks it is still a problem with GCC, in that GCC should not be allowed to take advantage of this particular UB. He explains his view much better in the bug report:

> GCC assumes that pointers must be aligned as part of its optimizations, even > if the ISA does not force it (for instance, x86-64 without the vector > instructions). The present feature wish as for an option to make it not make > this assumption.

> Since the late 1990s, GCC has been adding optimizations based on undefined > behavior, and "breaking" existing C programs that used to "work" by relying > on the assumption that since they were compiled for architecture X, they > would be fine. The reasonable developers have been kept happy by giving them > options to preserve the old behavior. These options are -fno-strict- > aliasing, -fwrapv, ... and I think there should be another one.

<comment><USER11> The problem with disabling this optimisation is that it will produce garbage code for basically every architecture. Code which does unaligned accesses are noticeably slow compared to aligned accesses -- this is why there are separate instructions and intrinsics for aligned and unaligned addresses on most architectures. That way you don't pay the penalty of unaligned accesses all the time. But if you try to use the aligned instructions on unaligned pointers you will get all sorts of fun errors.

And note that this slowdown would have to apply to _every pointer operation_ in your program because GCC can't know whether a pointer is aligned at compile-time. I'm sure many more people would complain about significant performance slowdowns in a GCC update than about unaligned memory accesses being something you need to do with great care in C.

<comment><USER12> > And note that this slowdown would have to apply to every pointer operation > in your program because

No, because I think that on x86 the instructions are the same for aligned and unaligned up to, and including, 64 bits (quadword). The only slowdown that would occur is due to missed compiler optimizations, and the author proposed disabling them as an option.

<comment><USER13> Yes, up to 64 bits. They're different for x86 SIMD (128 bits and up, SSE & AVX). For example vmovapd (requires alignment) vs vmovupd (can be unaligned).

</comment></comment></comment></comment></comment></comment><comment><USER13> Few seem to know x86 can generate misaligned access exception. Enabling EFLAGS Alignment Check (bit 18) flag causes an exception on any misaligned access, if the kernel has enabled this feature by setting CR0 register Alignment Mask (bit 18).

<comment><USER14> You do not need to enable anything. SSE instructions require aligned access, and will crash if used with wrong alignment, irrespective of the flag.

<comment><USER15> I noticed this when I discovered the NVIDIA OpenGL driver used SSE without thinking.

Nothing in the OpenGL specs says the buffers passed to it (think it was glBufferData) has to be 16byte aligned, but with NVIDIA it would crash with an alignment exception if they were not. The memory allocater in the language I used, Delphi, only used 4 byte alignment (32bit).

They might have fixed this, this was well over a decade ago.

</comment></comment></comment><comment><USER16> Putting aside that gcc's behavior is totally in line with the standard, I'd rather have a compiler (& language spec) with more effective room for auto- vectorization than support for unaligned pointers.

</comment><comment><USER17> The complaint isn't about alignment at all, it's that the optimizer assumes that two pointers to the same basic type cannot overlap in memory. The generated code is correct except for the fact that the two arguments are distinct pointers to the same three bytes in memory.

I believe this behavior is actually specified in the standard, actually, in the same section that defines the aliasing rules.

<comment><USER4> Yes, this is the compiler optimizing UB due to _aliasing_ , not due to alignment.

<comment><USER18> Yes, the optimization assumes that given two pointers to int, either they point to the same int, or they point to distinct, non-overlapping ints. Under that restriction the result is guaranteed to be 1. It's allowed to do so by the standard because those are the rules.

C was portable assembly back in the early 1980s. The result was that it was crushed in performance by Fortran for scientific codes, and most of the difference had to do with assumptions the compiler could make about aliasing (or the lack of it). This was fixed by the first ANSI C standard (finalized in 1989).

Yet I still see people who weren't even born then, or were young children then, talk as if C is supposed to be "portable assembly". It isn't.

<comment><USER19> > The result was that it was crushed in performance by Fortran for scientific > codes, and most of the difference had to do with assumptions the compiler > could make about aliasing (or the lack of it). This was fixed

Calling it "fixed", as if it were a problem of the language rather than programmers' expectations, is a rather slanted view of the history.

</comment></comment></comment></comment><comment><USER20> Why not? We program with a model that assumes NULL is zero, that we have a flat memory model...

If it's meant to be in a certain way, it is because it would not only simplify the implementation, but also - "I hope you know what you are doing."

Of course, the point of this is that if you feel strongly against it, I'd rather you submit a patch / use a fork where it shows benefit. If enough people require this behaviour, they may enable it in the tree. They're looking for more contributors, not less.

</comment><comment><USER21> The example of bad gcc behavior was essentially type punning, which is well- known to cause trouble.

Is there an example where things break on misaligned access to non-overlapping objects?

<comment><USER8> Misaligned accesses, in general, without any qualification, can earn you a SIGSEGV or SIGBUS. It's mostly x86 that's being very tolerant here; other architectures are much less forgiving to varying degrees.

That's also why this rule is in the C standard to begin with. Misaligned accesses need different / multiple instructions on some of these architectures, making them significantly more expensive. So the decision was made in favor of assuming things are aligned.

<comment><USER4> All (or almost all) of the big architectures that have survived to this day and attempt to compete with x86 permit misaligned accesses in general purpose memory. It's true that if you threw a dart at a historical computer architecture, they would likely not be tolerated. But e.g., aarch64 tolerates misaligned access.

</comment></comment></comment><comment><USER14> Interestingly enough, I've just checked the code from this article ([https://pzemtsov.github.io/2016/11/06/bug-story-alignment- on...](https://pzemtsov.github.io/2016/11/06/bug-story-alignment- on-x86.html)), linked by the OP's article, and guess what - CLANG generates code that does not crash, although it still uses SSE4.</comment>


Ask HN: Should I go for engineering? - <AUTHOR>

Hey guys, I have a question.
I'm currently working as a front end developer at a brand agency in Stockholm, Sweden. The work's fun and varying in difficulty - sometimes it's brand websites, sometimes it's prototypes and sometimes it's interaction demos. It also pays decently considering my age (23), experience (3 years) and earlier education (2 years at Ad school).
As it stands right now, I'm self taught. I enjoy programming a lot, but I know that I do lack some basics that CS bachelors know. I still am not fluent in any other language than javascript, even though I know my way around php and swift.
I'm considering going back to school to get a bachelors in CS, but it would mean a huge time investment. I didn't read enough math and physics before graduating, so I'd need what the Universities in Sweden call a "basår". It's like a year where you get prepared to study the actual engineering programs. All in all it'd mean 4 years to get a bachelors. I can freelance during those 4 years, I've got a good network, but I'm not sure it'd be the best way to spend my time.
Should I go for it or should I not? Anything else I should consider? <comment><USER3> Basing on my experience I would first ask you a question - how much do you like doing it. "it" means fiddling with code, handling legacy and not so often creating your own stuff. Also what technologies do you want to work with - <USER2> technologies is that right? I'm guessing some people won't like that idea but I can advice basing on my own experience - you do not need to go back to school to do this stuff for your living. I'm holding MSc in engineering not relevant to software engineering nor computer science and still I'm working in software engineering. Having that said holding a valid qualification is an entry requirement for many well paid job posts out there. So if you do not hold a degree then it's a good time to get around that since later it will be much more difficult (i.e. when you consider a great project called 'family' your time is basically vanished).

<comment><AUTHOR> Thank you for the response. The family aspect is certainly something I do think about. I don't think I'll be having kids for another ten years, but I'd like to know that I could get a job in a smaller town than Stockholm, which isn't as easy as a front ender compared to an engineer. A kid needs a bit of nature, I think :)

Doing web is not as important as I might've made it sound in the original post. I just want to feel challenged at all times, and front end isn't doing that as often as I'd like it to. For now I'm moving into full stack, but I think the concept of machine learning is intriguing as well, even if it is very far away from where I am at this point.

<comment><USER3> In such case going for degree might be a good idea - depending on university you pick there are wide and narrow courses. Wide in the meaning that they touch many areas giving you a feel of what is it waiting down the corner if you decided to specialise in that direction. That's what I was studying - pretty multidisciplinary course and I'm happy with it even though I work in quite a different market than what I was studying for.</comment></comment></comment>


Show HN: Taskyo: Access Google Tasks on your mobile device - <AUTHOR> http://www.dannyroa.com/2011/07/18/taskyo-access-google-tasks-on-your-mobile-device/

<comment><USER2> They've got 3 interfaces you can use external to Gmail:

<https://mail.google.com/tasks/android?pli=1>

<https://mail.google.com/tasks/ig>

<https://mail.google.com/tasks/canvas?pli=1>

The first being a mobile one that works fine on Android and iOS.

<comment><AUTHOR> Thanks. Not sure why I didn't know about that.

So to give my app an advantage I'll be adding a feature that a lot of users have been clamoring for that's not in the official site.

Hoping to get it done in the next week or two.

</comment></comment><comment><USER3> I'm using an excellent GoTasks for iOS <http://shurakov.name/gotasks>

</comment><comment><AUTHOR> Direct Link to mobile site:

<http://www.taskyo.com/>

</comment><comment><USER4> Working great on BB 9780.

Thanks, just started Google Tasks this afternoon.. this is perfect.

</comment><comment><USER5> Very cool. Would be nice if it supported the nesting that is shown in my gmail.</comment>


Texas Is Too Windy and Sunny for Old Energy Companies to Make Money - <AUTHOR> https://www.bloomberg.com/news/features/2017-06-20/texas-is-too-windy-and-sunny-for-old-energy-companies-to-make-money <comment><USER2> It appears we're at the inflection point where even natural gas (in addition to coal) is getting pushed out of the generation mix. Good! About time.

This may require paying natural gas generators for their ability to quickly throttle to back renewables, but only as a temporary measure until utility scale batteries fall in cost.

<comment><USER3> Natural gas energy can be transported much more easily than solar or wind. As more export capacity comes online in the US I would expect natural gas projects in the US to continue apace even if domestic consumption stays flat or declines.

<comment><USER2> There are multiple transmission line projects in progress in the US to drag wind energy to major load centers. Solar can be produced anywhere of course.

Natgas exports _may_ increase, but it appears everyone is getting off of fossil asap.

You cannot compete against an energy source with no fuel cost.

<comment><USER4> > Solar can be produced anywhere of course.

I take issue with "of course". It will be always be wildly more economic to produce solar power in places with a lot of sun. And without checking, my ballpark guess would be that you get at least 10 times more solar energy out of a panel in Texas than a panel in, say, Canada. Our eyes are just so good at adapting to different light levels that we don't notice the different energy densities that much.

<comment><USER5> It would also be pretty difficult to use solar in Murmansk, Russia, for about a quarter of the year (it's within the arctic circle, so the sun is below the horizon for most (or all near the solstice) of the day during the winter.

And it can actually be less efficient if there's too much sun, solar panel efficiency decreases with temperature. Solar thermal also depends on temperature differential, so if the environment around the plant is too hot the efficiency drops.

<comment><USER6> Noboby wants to live in Murmansk.

<comment><USER5> True, but I'm being pedantic about the use of "anywhere". Also it's a pretty important port for Russia, though of course the population is small at only 300k people.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> I wonder what the economics would be without the federal tax incentives for wind and solar. Does anyone know?

EDIT: Someone above provided a link that provides the figure I was looking for:

"Between 2010 and 2016, subsidies for solar were between 10¢ and 88¢ per kWh and subsidies for wind were between 1.3¢ and 5.7¢ per kWh. Subsidies for coal, natural gas and nuclear are all between 0.05¢ and 0.2¢ per kWh over all years." [1]

I wonder how much of a subsidy there is for LED lighting. A lot of energy goes for incandescent lighting.

Also, there should be a lot of subsidies to replace heaters in building burning #6 and #4 fuel oil which is very, very dirty and pollution (NYC where I live banned #6 a few years ago but #4 is allowed to persist until 2030 I think).

[https://www.forbes.com/sites/jamesconca/2017/05/30/why-do- fe...](https://www.forbes.com/sites/jamesconca/2017/05/30/why-do-federal- subsidies-make-renewable-energy-so-costly/#69da9278128c)

<comment><USER8> It's a complex question. In trying to answer it, one should keep in mind that the tax incentives for fossil fuel production dwarf the $15 billion per year or so that supports renewable energy. In addition, fossil fuels impose an estimated $200 billion/yr in social costs (external costs), in the form of pollution, etc. And it would be hard to estimate how much of our defense spending should be attributed to the need to secure the middle Eastern oil supply.

<comment><USER9> The Harvard study estimated the negative externalities of coal at 200-500 billion annually. The study estimates the effective subsidy from not including these costs at 9-27 cents per kilowatt hours.

</comment></comment></comment><comment><USER10> Very amusing that the article ends with

       "It's pretty slim pickings right now,"
       Ferguson said. "God is not manufacturing
       more coastal property."

Part of the concern for renewable energy folks is that you could argue that God _is_ arranging for more coastal property, though not perhaps in ways useful to wind farmers on the Texas coast.

<comment><USER11> > Part of the concern for renewable energy folks is that you could argue that > God is arranging for more coastal property

Not really though, the overall coastline length will shrink so assuming constant coastal property size, the number will go down not up.

<comment><USER12> Climate change will make climates in parts of the globe more extreme though, no? Is that beneficial to wind power?

<comment><USER11> No. More extreme = less consistent, and likely too violent, these are not things you want for wind power.

You want consistent wind within the efficiency band of your turbines. Wind spikes are not a good thing, best case your turbines go into protection (they brake and the blades are feathered), worst case they're on fire. Significant gusts also increase wear of the blades, aging them prematurely and increasing the risk of catastrophic failure.

<comment><USER13> what about offshore wind farms? More water wouldn't be "so bad". haha. Plus, there was a cool idea about how they could be use in mass to mitigate hurricanes' strength to some degree but I'm not sure how feasible that is

</comment></comment></comment></comment></comment><comment><USER14> After driving through Texas last year, I really can't overstate just how many wind turbines there are, and how windy it is. I stopped at a little rest stop right in the middle of the state - in the middle of the day - and I was nearly blown over getting out of the car. And the number of turbines... Just amazing. Miles and miles and miles. It really looked like an endless landscape of turbines.

</comment><comment><USER15> The last lines of the article elicited a bit of cynicism:

"That's because the market is so oversupplied that it's even difficult for the wind guys to make money at these electricity rates. And besides, it's hard to acquire land by the water at reasonable prices."

"It's pretty slim pickings right now," Ferguson said. "God is not manufacturing more coastal property".

In 70 years it will be nice and cheap at this rate, which is ironically and sadly just the sort of problem cheap wind power would help alleviate.

<comment><USER16> >In 70 years it will be nice and cheap at this rate

what?

<comment><USER15> The implication is that the rise in sea level will make those formerly coastal areas effectively worthless.

</comment></comment></comment><comment><USER17> > It blows the most in the dead of night, precisely when there's the least > demand for electricity. That's true for just about every wind-blown spot > across the U.S., from the foothills of the Tehachapi Mountains in California > to the coastal plains of North Carolina.

I live in Northern California (SF). Winds don't start until about 1pm or so. And it's almost never windy after 8pm.

I think this pattern holds for most coastal places, because as the sun reaches the peak, it heats up land, forcing the air over the land to rise; but the water doesn't heat up as much, and hence winds come in from offshore, to replace the air rising above the land.

</comment><comment><USER18> Seems to be a smart idea, really allowing capitalism to thrive... \- [https://www.forbes.com/sites/jamesconca/2017/05/30/why-do- fe...](https://www.forbes.com/sites/jamesconca/2017/05/30/why-do-federal- subsidies-make-renewable-energy-so-costly/#35791d2f128c) \- [http://www.nationalreview.com/article/436228/wind-energy- sub...](http://www.nationalreview.com/article/436228/wind-energy-subsidies- billions-and-billions-your-tax-dollars)

<comment><USER19> In the absence of a fair pollution tax, I don't think subsidies for less- harmful technologies are necessarily bad. Unless you are actively in favor of the tragedy of the commons, these negative externalities have to be addressed somehow.

</comment></comment><comment><USER20> I live in Dallas Texas and buy renewable (wind or solar) electricity from the grid. It cost only marginally more

<comment><USER7> I'm assuming this is a joke since there aren't separate power lines for renewable energy. :-)

<comment><USER20> No it is not. As a consumer in Dallas we get to choose which power company we want to buy from. Basically, we have to buy our share of electricity that is used from the grid.

<comment><USER7> But in this case, you are simply throwing your money away since the green producers aren't going to produce more energy because you and other consumers are paying them to. They will produce the same amount regardless.

In that case, better to give the money to some charity that say, replaces incandescent bulbs with the newest LED lamps starting with your own house and office if you haven't already converted. Also, better to take mass transit than use the car.

BTW, our brilliant NY Govenor Cuomo is putting a lot more carbon-based fuel back on-line. Because nuclear is more expensive than gas powered generation, he is removing the Indian Point nuclear power plant from the grid. This plant generates 1/4 the electricity for NYC and adjacent Westchester County.

The population of NYC is 8.5 million, Westchester County is about 1 million. So removing the carbon-free power for about 2.5 million people.

All will be replaced with carbon-based fuel generation. So much for people like you trying to be responsible and green.

<comment><USER20> Are you trying to tell me that they won't build more windmills if that's what people are paying for?

<comment><USER21> Are you suggesting the transmission company would refuse the electricity from the wind mills if enough people aren't paying for the clean option?

I'm curious how this works. What happens if you pay for clean and the wind isn't blowing at night? What happens if everyone paying for clean turns on their appliances and the demand outstrips the clean supply?

I highly doubt there are blackouts in these occasions so it seems like someone is getting screwed.

<comment><USER22> There is a secondary marketplace of "green energy futures".

edit: Going from memory... The fine print on your electric bill in Texas says something like: "If we, the electricity provider, don't have enough renewable energy to meet your current need, we promise to offset the amount of non- renewable energy we provide to you now with a future purchase of the same amount of renewable energy from an electricity generator." In other words, you get the electricity today, they get the money today, but they have to buy more renewable energy in the future.

</comment></comment></comment></comment></comment></comment></comment><comment><USER23> They didn't really go into the wind surfing enough to point out why Texas is actually damn good for water sailing sports.

One of the non obvious reasons is the inner gulf coast has very little chop. Chop (which is basically little waves of water turbulence at the surface as well as constant little swells) massively decreases boat/board speed even for planing boats/boards.

Of course large swells are generally worse (with some exceptions... like wanting to do tricks and if your going downwind).

</comment><comment><USER24> I think we're in the early stages of a genuine disruptive event.

"They were actually worried about an 'energy crisis' back then. Didn't they realize free energy falls from the sky all day long?"

</comment><comment><USER25> I assume the natural gas people are fighting against shallow-water coastal wind generation. That would add a lot of surface area to build and could probably supply more than 50% of the energy mix.

</comment><comment><USER26> I'm sure the politicians will solve that problem.

<comment><USER27> Yep. I've seen some documentary where they said that in a very sunny region of Spain it was too expensive to put solar panels on your own roof due to taxes. The large companies made sure it was not feasible for home owners to do so.

<comment><USER28> It's unfortunately a nation wide law, so all regions are affected.

</comment></comment></comment><comment><USER29> This is such good news.

</comment><comment><USER30> Texas is right now the 5th ring of hell in the summer</comment>


Tell HN: Moniker increased the price of .tc domains from $28 to $140 - <AUTHOR>

I've a couple of '.tc' domains bought through Moniker. Up until very recently the price for '.tc' domains were only $28. They increased the price of this domains from $28 to $140 without sending any notice. The domain was configured for auto-renewing, and I just got charged for $140.
I've nothing but bad experiences with Moniker for the last three years. One of my domains didn't get renewed and was about to get deleted, even though that they charged me and sent me a renewing confirmation. They later tried to charge me extra fees in order to retrieve my domain, despite the fact that it was their problem!
Just wanted to let you know about my experience. My advice is to be aware if you're a customer, and stay away if you're not. <comment><USER2> The company that operates the .TC registry raised the price to $119; that's what registrars like Moniker pay. Notification of the change would've been appropriate, but as far as the charge goes, it's either fulfill your renewal as agreed at the new price, or let your domain expire. If you had known about the price increase from the registry, would you still have renewed the domain?

</comment><comment><USER3> > They increased the price of this domains from $28 to $140 without sending > any notice. The domain was configured for auto-renewing, and I just got > charged for $140.

That is most definitely a violation of their merchant agreement. Probably some consumer protection laws too.

<comment><USER2> You can make neither of those definitive statements without reviewing the contract terms he agreed to during the purchase and creation of the auto-renew subscription. It is entirely possible to authorize recurring charges even if prices may change.</comment></comment>


Show HN: Canon of Man – Enjoy the serendipity of browsing bookstores, anywhere - <AUTHOR> http://canonofman.com <comment><AUTHOR> Partly out of frustration with my filter bubbles, partly out of nostalgia for the joy of browsing bookstores, and partly out of concern for a society increasingly directed exclusively by algorithms and social networks, I made this.

I know these topics tend to be regarded importantly here on HN, so I figured it worth posting here.

Happy to answer any questions and receive any feedback.

<comment><USER2> Quick feedback:

I have no idea what a flâneur is and I'm a pretty highbrow snob, who even knows some French. You're limiting your audience there.

"Canon of Man" ... it's a very imposing name that again is deterring the vast majority of your potential audience. (Especially if you're targeting mobile, which you seem to be.) (Also it doesn't fit, when the first piece of the "Canon" I land on is "The No Asshole Rule".)

Tinder-swipe paradigm didn't make any sense on the webapp. I right swipe and it pops up a side menu.

Does this thing let me read the books? Why am I swiping? How is this producing a serendipitous experience? You need to invest more time and effort explaining these things before you can get meaningful feedback on the concept.

<comment><USER3> I'm not sure what a flaneur is either. But I do recognise it as a term Nassim Taleb uses frequently.

<comment><AUTHOR> Taleb introduced the word to me, and in spite of a few searches that indicate its usage is increasing, I got caught up in my own filter bubble and overestimated its broader reach.</comment></comment></comment></comment>


How Much Hotter Is Your Hometown Than When You Were Born? - <AUTHOR> https://www.nytimes.com/interactive/2018/08/30/climate/how-much-hotter-is-your-hometown.html <comment><USER2> About 2 degrees cooler. Summers were weeks of 90+, now we get less than 2 weeks in total of 90+ days. Most days are around 85. Winter is now warmer thought were we used to have weeks of snow coverage, now it snows on a Tuesday gone 3 of 4 days later and a lot more ice.</comment>


Learning to Program the Arduino - <AUTHOR> http://www.linuxjournal.com/content/learning-program-arduino# <comment><USER2> I'm not sure how many of you actually want to learn Arduino, but for those that do:

<http://www.allaboutcircuits.com/>

Read it, learn it, live it. I started working through it and even just through the first ~5-10 chapters, you'll be able to understand most electrical diagrams in beginner Arduino projects. This way, you won't be assembling a jigsaw puzzle by pictures - you'll be interpreting the diagram.

Arduino uses C, with a few libraries that you'll get familiar with following any set of beginner projects.

<http://arduino.cc/>

If you're on the fence, and have ~$80 to spend on a hobby - go for a beginner kit that comes with LEDs and a servo, and resistors, etc. It makes life easier.

I have no idea why, but it's just so damned satisfying.

<comment><USER3> _I have no idea why, but it's just so damned satisfying_

I'm an embedded developer and a few years ago I introduced another (web/desktop) developer to simple microcontrollers. His reaction was the same. It's basic programming, but there is something really visceral about making a cylon LED chaser or wiggling a motor back and forth.

That connection to the physical world outside the computer is what's kept me in embedded systems for 20 years.

</comment></comment><comment><USER4> What a terrible article. It's aimed at teaching people how to use an Arduino, and the point of the article is to give a beginners look into it, yet the disclaimer says it's only about the software side. I'm sorry, but an article about the Arduino should be equally about hardware and software.

The real reason I'm saying this is that his diagrams with the LEDs will not work. The potential across the LED leads is 0. In fact, on the example with 3 chasing LEDs, it may blow the ports (I don't know know if the pin is an open collector or a current source).

<comment><USER5> Yep, he doesn't seem to have any idea of how a breadboard works. In fact, he's got it completely backwards (LEDs on the power rails and power rails in the component rows). It probably won't blow the ports with the resistors there, but it definitely won't work the way he says it does.

Also, the Arduino IDE already has a serial terminal built in, so all of the Processing terminal handling stuff is moot.

Final point is that running motors from the same supply as the Arduino tends to break down if you put a decent load on them - you'll get brown outs and weird resets.

On the plus side, he does include his bibliography on the last page, so you can check out the original tutorials. That's a pretty decent set of links and books.

</comment></comment><comment><USER6> There's Jody Culkin's "Introduction to Arduino" comic as well: <http://www.jodyculkin.com/comics-2/introduction-to-arduino>

A friend & I used this as a teaching resource for the first part of a 3 hour workshop for non-programmers getting started with Arduino. We found it to be a great teaching resource (although I'm not a teacher and haven't tried any other methods, so I have nothing to compare it to.)

</comment><comment><USER7> Coming from a web developer background, making stuff with the Arduino has been very fun and a nice change of pace.

I'm working on Internet of things projects, generally on the server side, but I decided to try my hand at making an actual device so I made a stationary bike computer that automatically upload workout sessions on Runkeeper:

<https://github.com/reefab/CyclingPusher>

</comment><comment><USER8> I had never heard of Fritzing [1], the program used to draw the diagrams. 18MB for the windows version, I think I'll check it out. it looks to be at least 3 years old. found it on hack a day [2]

[1] <http://fritzing.org/download/> [2] <http://hackaday.com/2009/08/25/fritzing/>

</comment><comment><USER9> I'm teaching my kid Java. Does Java for Arduino exist? I don't want to confuse him with disparate languages, even though going to C++ wouldn't be a horrible stretch.

If Java on Arduino isn't a possiblity, are there Arduino-like boards for Java?

<comment><USER10> I think your best options are LeJOS (Java for Mindstorms) or the Sun SPOT ( <http://www.sunspotworld.com/> ). Both are a bit pricier than the (already overpriced) Arduino, but the Sun SPOT is a lot more powerful computationally.

<comment><USER9> Sun SPOT sounds really interesting, thanks.

We have Mindstorms and have switched to RobotC from CMU rather than using the graphical programming approach. That works well enough. It seems that all middle and high-school programs that do Mindstorms stay with the graphical programming approach which is a shame because it makes doing anything serious very difficult.

</comment></comment></comment><comment><USER11> Even a kid can program an arduino. Though it's syntax is very C-like, its much simpler to work with.

<comment><USER12> The syntax is actually straight up C++, though you can also use C code in the Arduino IDE if you give your file a .c extension.

<comment><USER13> It's C++ made to look like Processing, for some reason.

<comment><USER14> FWIW, it's not "made to look like Processing", it _is_ Processing. They use (or at least built on top of) the Processing IDE.

<comment><USER12> They are different. Processing is built on Java, Arduino is built on C++.

<comment><USER14> That's true for the _languages_, but the Arduino development environment is built on Processing, see second para here:

<http://arduino.cc/></comment></comment></comment></comment></comment></comment>


Tesla's VP of Autopilot and chip guru Jim Keller is leaving - <AUTHOR> https://electrek.co/2018/04/25/tesla-autopilot-jim-keller-leaving-chip/ <comment><USER2> That's a good indication that the company is trying too hard to blow smoke up peoples asses with their "autopilot" effort. When people of this caliber throw in the towel after such as short time, it usually means reality can't cash the checks the PR department is writing.

</comment><comment><USER3> I've said it here before, and will again, Keller is THE man when it comes to chips. If you study his work history, and respective company achievements, nobody comes close. I'm sure others are involved and I mean not to take away from them, but if you want to lead the chip business, you hire Keller. Secondary, this appears to be his MO from an outsiders perspective. Once he has finished what he started, he seems to bounce. Not sure if it's his style, or if a different company throws more piles of cash at him, but it's interesting to watch.

</comment><comment><USER4> According to a quick search Keller is apparently moving to _Intel_.

Wow, I really hope that doesn't worsen the current imbalance of the x86 and GPU markets. Given that Keller seemed to be to Ryzen at AMD what Raja was to Vega/Polaris, it doesn't look good.

</comment><comment><USER5> Does anyone have insight into these departures? The attrition is crazy.

<comment><USER6> Read the comments there. It's way overblown actually.

<comment><USER7> keep telling yourself that. the comments on electrek mean absolutely nothing. its a tesla fanboy site, period.

there is a very real attrition situation at tesla, coming from someone in the industry.</comment></comment></comment>


The homogenization of scientific computing (2013) - <AUTHOR> http://www.talyarkoni.org/blog/2013/11/18/the-homogenization-of-scientific-computing-or-why-python-is-steadily-eating-other-languages-lunch/ <comment><USER2> The astronomy department I worked at briefly during my undergrad underwent a similar process. The ten or so grad students separately used Matlab, Mathematica, C, IDL, and a couple of the newer members used Python. They spent some time on the side working on the AstroPy package and all started transitioning to Python as their needed functions and data processing pipelines were implemented.

I'm in nuclear engineering now, I'm seeing a similar process. It used to be Matlab for everything but once the Anaconda Python distro came out and made installing python and the science libraries a simple process many undergrads are now using Python instead. The Spyder editor with the documentation window makes it really easy for undergrads to lookup functions, similar to the Matlab editor.

<comment> Iwan-Zotow !

My SO is teaching physics in small university. Used to use Excel, Matlab, some other statistics packages. Now it is Anaconda all the way down.

</comment></comment><comment><USER3> I wonder why nothing as good as RStudio seems to be available for Python yet? I feel like Python is stuck in Jupyter rutt - a local minima (or maxima, depending on your perspective) where Jupyter is capturing all the interest but is fundamentally not as good for data exploration (just my opinion, from using both intensively over years). I often _want_ to use Python but I keep going back to RStudio because I find Jupyter painful (even after enhancing with BeakerX [1] which I love for what it is, but it can't fix the underlying constraints of Jupyter ...).

[1] [http://beakerx.com/](http://beakerx.com/)

<comment><AUTHOR> RStudio? Really? What do you like about it? I see various advantages R has, but RStudio never appealed.

As for Jupyter (which I love), there's nteract [1], which Netflix seems to be supporting [2].

[1] [https://github.com/nteract/nteract](https://github.com/nteract/nteract)

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

</comment></comment><comment><USER4> No mention of Jupyter notebooks — I think that's a critical part of this change, in that it provides a sharable human-readable analysis format.

Also for the original poster (whose psycholinguistics work I am familiar with), it's easy to move data between R and Python using the rpy packages (which works in notebooks!)

<comment><USER5> Does scientific computing happen in notebooks? I'd think they mean Supercomputers, not experiments running in the browser.

<comment><USER4> Yes, definitely. Only the GUI for Jupiter is in the browser — the computation is on a workstation, server, or an iPython parallel cluster, so you can use proper HPC resources. Another common pattern (because socket-based communication can die) is to run the heavy HPC stuff with SLURM, etc. then compile and analyze the results in the notebook.

</comment></comment></comment><comment><USER6> I remember the great joy it was rewrtot some MATLAB and Bash scripts for neuroimaging to Python, and how fast it let us iterate. Thanks to that rewriting we ended up having a proper pipeline that we were able to parallelize.

Since then Python is my go-to language, but that didn't stopped me from exploring other languages like Julia, for large numerical analysis or Go.

I see that Pythonification he talks about around me, and it's true that is becoming ubiquitous and the defacto langugae on sciences, specially on life sciences.

</comment><comment><USER7> Discussed in 2014: [https://news.ycombinator.com/item?id=7729006](https://news.ycombinator.com/item?id=7729006) and [https://news.ycombinator.com/item?id=7030097](https://news.ycombinator.com/item?id=7030097)

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

</comment><comment><USER8> I suspect Julia will eventually rise to the occasion.

<comment><USER9> I haven't used it, but can Julia replace Python as a production language for dual use by software devs and data scientists?

</comment></comment><comment><USER10> This really needs a [2013] in the title.

<comment><USER7> Added - thanks.</comment></comment>


Words You Might Think Came from Science (Actually From Science Fiction

) - <AUTHOR> http://io9.com/5850293/10-words-you-might-think-came-from-science-but-are-really-from-science-fiction

<comment><USER2> It's interesting to see that "zero-gravity" was originally used in a context that actually _was_ a zero (or very small) gravitational field. The normal usage (where there's plenty of gravity, it's just that things are falling free in it) is deeply frustrating, because it misleads people into a misunderstanding of what gravity is. Similarly "micro-gravity", which is probably even worse.

</comment><comment><USER3> Great list, but not all that surprising. It's the job of science fiction to be speculative and one of the things that can make sci-fi great is when the fictional technology is plausible, fits the science we know even if we can't go there yet. If sci-fi authors are looking at science and imagining where technology will go, it's only natural that tech will catch up to fiction in a lot of cases. I'll bet you could find a lot more than ten instances in the history of sci-fi.</comment>


Google AdSense Leak – Part 2 - <AUTHOR> http://pastebin.com/DXTu8Mcm <comment><USER2> We don't even know if this is by the same person.

The fact is, unsubstantiated accusations whether true or not are just that - unsubstantiated, so unless any actual evidence comes to light I don't see any point reading anything more about this unless it is:

A) A response from Google B) A confirmed googler or ex-googler going on the record about it C) Actual evidence - doesn't have to be rock solid but something substantial. And it has to show that this was a matter of policy (whether explicit or implied) - one rogue team doing this, whilst bad, does not constitute the scandal that the poster described.

</comment><comment><USER3> Given the latest from our 'anonymous whistleblower' I do wonder why he/she has not hooked up with someone that was robbed, furnished them with the evidence and taken the big G to court.

Taking the 'anonymous whistleblower' route is fine if you are taking on the government or one of their agencies because the government puts themselves above the law. But using 'Pastebin' to be judge, jury and executioner in this case doesn't seem that prudent. A court of law would have sufficed.

</comment><comment><USER4> Original thread: [https://news.ycombinator.com/item?id=7667976](https://news.ycombinator.com/item?id=7667976)

Draw your own conclusion, but the original "leak" is very repetitive and doesn't provide any solid evidence. Sounds like someone got banned and has a chip on their shoulder, or at most an ex-employee who had a bad time.

</comment><comment> waqas- why isnt this exploding all over the web? this is highway robbery from google

<comment><USER5> because anonymous unsubstantiated claims?

</comment></comment><comment><USER6> The other thread of this was deleted, Google must have put pressure on Hacker News

its interesting to see censorship at work here

<comment><USER7> The other thread of this was killed by user flags. No moderator touched it or, as far as I know, even saw it.

Please don't make claims you don't know anything about.</comment></comment>


LaRitzy – An all-natural and cruelty free shaving subscription for women! - <AUTHOR> http://www.laritzy.com

<comment><AUTHOR> Hi guys!

LaRitzy is an all-natural monthly subscription which curates its boxes from vegan and cruelty free artisans. The box includes a Vegan Coffee Body Scrub, an All-Natural Shave Oil, Blades, and an Exfoliating Bath Mitt.

What are your thoughts?</comment>


Launch of Elon Musk's Private Rocket Fails; Three Satellites Were Onboard - <AUTHOR> http://www.nytimes.com/2008/08/03/science/space/03launchweb.html?_r=1&ref=science&oref=slogin

<comment><USER2> It's amusing how many tech entrepreneurs use their fortunes for space exploration.

Paul Allen invested in SpaceShipOne. Charles Simonyi paid millions to go to space. Sergey Brin invested in a space tourism company. Larry Page is on the board of trustees for X PRIZE. John Carmack has a aerospace/space tourism startup. And of course Elon Musk.

Am I forgetting anyone?

<comment><USER3> Jeff Bezos, Blue Origin: <http://en.wikipedia.org/wiki/Blue_Origin>

<comment><USER4> Mark Shuttleworth, second space tourist.

</comment></comment></comment><comment><USER5> That's too bad. I really want to see them succeed, but it's a whole series of difficult engineering problems.

I'm glad to hear they've got cash to keep them going for a while, but they need to start racking up successes soon.

</comment><comment><USER6> And it took the Wright Brothers how long to pitch that bucket of sticks and cloth into the sky?

I'm confident the crew will work the kinks out and we'll look back at this phase as "humbled beginnings".

</comment><comment><USER7> So, do the customers get their money back? Why would any company rely on a yet to be successful rocket to launch them into space?

Don't get me wrong it's a cool idea but wouldn't you want some reasonable assurance of success ie: past success before you forked over your cash?

<comment><USER8> "Why would any company rely on a yet to be successful rocket to launch them into space?"

2 of the 3 payloads, PreSat and NanoSail-D, were paid for by NASA.

With NASA retiring the shuttle in a 2010, the Falcon rockets are looked upon as the next generation of rockets before NASA's Constellation program begins in 2014.

Bottom line: NASA is re-positioning itself to help private industry succeed even if the risks are high.

<comment><USER8> PreSat - <http://www.nasa.gov/mission_pages/smallsats/PRESat.html>

NanoSail-D - <http://www.nasa.gov/mission_pages/smallsats/nanosaild.html></comment></comment></comment>


Ask HN: How to make people laugh while talking? - <AUTHOR> <comment><USER2> Be comfortable to laugh at yourself.</comment>