Show HN: Theremin I/O - <AUTHOR> http://theremin.io <comment><USER2> That site, while beautiful, really frustrated me. I kept clicking to get something to happen, but couldn't. I tried to scroll and each time it would put me back at the top of the page. Let's say that I'm intrigued by the product, but not enough to fight with the site, unfortunately. :(

<comment><AUTHOR> That sucks, what OS and browser are you using?

<comment><USER3> Same thing happened to me.

Safari Version 7.0 (9537.71), OS X 10.9 (13A603)

Screencast: [http://i.imgur.com/7uigOMg.gif](http://i.imgur.com/7uigOMg.gif)

Couldn't two-finger scroll, couldn't click the navigation circles, and when I dragged the scrollbar manually it'd snap to the top when I let go.

<comment><AUTHOR> Seems window.scrollTo does not work properly in safari when you kick the layers in to hardware accelerated mode.

I've disabled the snapscrolling now on all Safari versions. Try it now! I think I'll end up disabling it everywhere since people seem not to like it that much :)

</comment></comment></comment></comment><comment><USER4> Oooh man, this is an awesome idea. I will be playing with this soon.

But just one suggestion: video footage of the app being used on the page, front-and-center.

The live logo is really neat, but it doesn't really convey anything about the _purpose_ of the app.

I'm already familiar with Theremins, but I'd bet a lot of your userbase wouldn't immediately grasp the nature of the app from what's on the page if they haven't seen one being used before.

</comment><comment><USER5> If you don't have an iPhone, you can build your own Theremin (with vacuum tubes) by following this Popular Electronics article from 1955: [http://www.swtpc.com/mholley/PopularElectronics/Apr1955/PE_A...](http://www.swtpc.com/mholley/PopularElectronics/Apr1955/PE_Apr1955.htm)

Simple!

</comment><comment><USER6> Just tried the app. Cool stuff! Managed to hook the midi out up with Traktor. Here's a movie of the beatmasher in action: [http://bergstroem.nu/theremin.m4v](http://bergstroem.nu/theremin.m4v)

</comment><comment><USER7> Are there any open source variants of this? Would love to play around with different possibilities (saxophone or cello setting, piano on your laptop, slappin da bass, etc).

<comment><AUTHOR> Nope, but we are discussing releasing the sensor code as a open source library. It's pretty modular already, and wouldn't require a ton of work :)

</comment></comment><comment><USER8> To be honest, I'm most impressed by the directional lighting simulation in the header. Any hints on how it was done? Mouse position and image opacity?

<comment><AUTHOR> It's done using webgl and additive blending of 3 light sources rendered with maxwell render. (check the console for a list of libraries used ;)

</comment></comment><comment><USER9> This site reminds me of the Mac Pro site: [http://www.apple.com/mac- pro/](http://www.apple.com/mac-pro/)

I hate libraries that alter the scrolling action, don't mess with that please. That's like switching keys on the keyboard, it is a very bad UX...

On a happier note, checking the console made me happy. I didn't event know you could "style" log messages. Very cool.

</comment><comment><USER10> Very nice. You might want to consider supporting OSC as well as midi. The mobile platform is providing a way to break from that horrible proprietary 1970s protocol, and you can do your bit to help out!

I really should write that essay about how midi is an evil tyrant holding back musical expression.

Also OSC will allow you to have less "discrete" notes, so it might actually sound like a theremin.

</comment><comment><USER11> This was fun. Why don't you allow setting the key though?

Also, I would love to see a less skeuomorphic interface. Some things are particularly bad, like when changing the scale (you have to tap a button to the left of the active selection to bring up the choice selector).

</comment><comment><USER12> I like the design of the site, however it hijacks the two-finger swipe to go back for me. I haven't seen this happen on any other webpage before. Chrome on OS X 10.9.

</comment><comment><USER13> Looks very interesting - but I had to switch to Chrome to view the site. The scrolling (using mouse wheel / trackpad) doesn't work properly on Safari 6.1.

</comment><comment><USER14> check out standaloneV2 as well [https://itunes.apple.com/us/app/standalonev2/id656556702?mt=...](https://itunes.apple.com/us/app/standalonev2/id656556702?mt=8), works similar but based on sound waves and is free for the month as a part of the wrong biennial [http://thewrong.org/](http://thewrong.org/)

</comment><comment><USER15> I also noticed that the screenshots in the iTunes Store are not in the best quality. You can even see some artifacts on the tab bar at the bottom.

<comment><AUTHOR> I can see that now as well. The screens i uploaded was PNGs, Apple must have replaced them with pretty low quality jpeg versions :/

</comment></comment><comment><USER16> Confusing site, why not just make a normal website.

</comment><comment><USER17> Interesting app. Also, the website's source code seems to contain a secret code. When you type it in, it unlocks teh funnies :-)

</comment><comment><USER18> Very cool! Apps like these make my phone a beautiful, versatile thing, not to- do lists.

(Hijacked scrolling doesn't work in Safari, fyi)

</comment><comment><USER19> This is unfortunate. I have never heard a worse instrument, and I've been to events where this was played by practiced people. Okay, maybe those annoying horns some cultures play during soccer are worse, but these are still really bad. I consider it more of something that was easy to make rather than something that was made to produce a good result. They would have been better off just coming up with their own thing.

<comment><USER20> Correct me if I'm wrong but it has midi functionality on the payed version. This actually means that it could sound as anything as soon as you plug it on your computer and apply some sampled sound.

</comment></comment><comment><USER21> Bought it. Does not seem to work properly with iOS6.1 and iPhone 4s. Hopefully there'll be an update on this!

<comment><AUTHOR> If you send me an email at firstname.lastname@example.com we can try to sort it out.

<comment><USER21> It works now! Had to boot my phone for some reason. Looking good :)

</comment></comment></comment><comment><USER22> Just write "disco" anywhere in the page. The creator left a surprise. Cool webGL work.

<comment><USER23> I was going through the code and found that as well! Nice effect.

Seems like the main.js[1] file is inordinately large to me - did you feel that way?

[1] [http://theremin.io/scripts/main.js?v=5](http://theremin.io/scripts/main.js?v=5)

<comment><USER22> I did feel the same.

It's quite large and poorly fragmented in my honest opinion. But the code sure does the job !

</comment></comment></comment><comment><USER24> Very neat, now I'll spend the rest of the day attempting to master Good Vibrations.

</comment><comment><USER25> This site is literally just a black page for me on Chromium/Crunchbang.</comment>


How to Say "I Love You" When the Language Doesn't Exist - <AUTHOR> https://catapult.co/stories/mistranslate-column-aishiteru-how-to-say-i-love-you-when-the-language-doesnt-exist <comment><USER3> > The phrase most directly means "(I) am loving (you)," as if to convey that > love is an active labor, not just an amorphous feeling tossed between two > parties.

I really connect with this.

In the west, love seems to be this thing you cannot control. It can come upon you suddenly and leave you just as suddenly. In that context, "love" is a scary thing. It seems to have a mind of it's own. Truly, I don't believe that it's love at all, but usually either lust or infatuation in disguise.

I believe whole heartedly that "love" is always an act. You can say you "love" someone while actively doing things that prove you do not love them. Likewise, you can actively show someone love without saying anything to them. True love is a controlled action and is accompanied by feelings (at least at times), but it does not have to be.

Perhaps the Japanese got this completely right.

<comment><USER4> > Perhaps the Japanese got this completely right.

You can't just say that and then not elaborate :)

Edit: Oops, didn't read the article.

<comment><USER5> Gp was probably assuming an audience who had read the article.

From the article:

 _In Japanese, the phrase "I love you" exists linguistically, but does not exist culturally. Linguistically, it is best translated as 愛してる or Aishiteru. Unlike English, it does not contain the "I" and "you" involved in "I love you"; instead, the "I" is implicit, belonging to the speaker only in assumption, as is the "you." The phrase most directly means "(I) am loving (you)," as if to convey that love is an active labor, not just an amorphous feeling tossed between two parties._

</comment></comment></comment><comment><USER6> Russian is the same way.

You can translate "I love you" linguistically, but it doesn't really make sense to say - people express it through actions rather than words. It's definitely an interesting (and rather significant) difference in Western culture that grants the 3 words such importance.

<comment><USER7> What do you mean? It absolutely makes sense to say (я тебя люблю). People tend to say it less frequently because the communists attempted to eradicate display of superfluous emotions by pretending they don't exist, but if you go back to the classics the characters talk about love all the time.

<comment><USER6> I didn't mean it didn't make sense grammatically, just that it's not really something people use in the way they do here in the U.S.

Anecdotal, but growing up surrounded by Russians and consuming Russian media daily, "я тебя люблю" as a phrase is something I've heard uttered by others maybe a dozen times, ever, compared to American culture where it's omnipresent and not uncommon to use many times a day.

Movies and books do talk about love, of course, Russian poetry especially expresses love in a truly amazing way. But the article is referring to the frequent conversational use and Western importance of "I love you", and in that sense, there's a major cultural difference. Didn't know about the historical context behind it - that's an interesting point.

</comment></comment></comment><comment><USER8> Poor article - of course it exists. The right answer is at the end, you say 大好き usually in Japanese, nobody uses 愛してる, its too formal and not commonly used.

and usually the proper way to say it is X のことが好きです which is difficult to translate but it's a subtle nuance referring to the substance of the person instead of just the person.

<comment><USER9> I wonder if Google's Pixel Buds will ever accidentally trigger a romance.

のことが好きです == "I like that":

[https://translate.google.com/#ja/en/%E3%81%AE%E3%81%93%E3%81...](https://translate.google.com/#ja/en/%E3%81%AE%E3%81%93%E3%81%A8%E3%81%8C%E5%A5%BD%E3%81%8D%E3%81%A7%E3%81%99)

This would make for a rather unlikely, but interesting, meet-cute.

<comment><USER10> The parent comment just left out the 大 (big/great) from the sentence example

好き - <USER2>

大好き - love (lit. "great fondness")

<comment><USER8> You dont need dai- to declare your love in Japanese, unless you are an immature teenager.

</comment></comment></comment></comment><comment><USER11> In French, _Je t 'aime_ means both _I love you_ and _I like you._

<comment><USER8> No, not really in French you make the distinction by adding "bien" at the end to clarify that it's liking and not love.

<comment><USER12> It's a bit trickier than that. "J'aime X" is translated to "I love X" if X is a person, but if X is something else, it becomes "I like X". If you really love chocolate, you have to use "J'adore le chocolat" or add some positive adverb to aimer, like "J'aime vraiment/énormément le chocolat".

Funnily enough, while "bien" is also positive word, it's indeed used to lessen the power of "aimer". That's the kind of stuff native speakers don't even notice but can confuse everyone else.

<comment><USER13> The rule I learnt was aimer with people, adorer with everything else, and add bien to aimer for liking a person instead of love.

</comment></comment></comment></comment><comment><USER14> Something else I've recently found out from an ex, I always thought `te quiero` (in Spanish) meant "I love you", but really means something like "I feel fondness for you" (and can be used between family and close friends), but `te amo` means "I love you". First time she told me, I almost broke down in tears.

It's amazing how much language affects how we relate.

Edit: after learning the difference, and because she wasn't ready to say it, even though I was, and not wanting to make her uncomfortable, I invented `te quieramo` as a nice substitute. She seemed to enjoy that :)

<comment><USER15> I've always found the subtle variations in roman languages to be interesting. At least in those I know. In spanish, you have "te quiero", from the verb "querer", which also means want. And "te amo", from the verb "amar", which has the same root as the french "aimer" or the italian "amare", used, respectively in "je t'aime" and "ti amo". I don't know about italian, but in french, "aimer" has both the meaning of "querer" and "amar" depending how you use it. Then, you have catalan, which uses "estimar" in "t'estimo", which also is used with both meanings and has the same root as the english esteem.

<comment><USER16> In Italian you would say "ti amo" to a significant other. When talking about a person you may want a relationship with you would say "mi piace" (I like him/her). If you're referring to a friend or a relative, you would say "ti voglio bene" (which is a different connotation of "I love you").

If you're talking about something, you would say "mi piace" (as in "mi piace il cioccolato" -> "I like chocolate") unless you really like it, in which case you can as well say "amo il cioccolato" ("I love chocolate") or "adoro il cioccolato" ("I adore(?) chocolate").

<comment><USER14> Does 'mi piace' mean something like 'I desire'?

<comment><USER16> Nope. That would be "voglio" or "desidero". Maybe you mean "mi piacerebbe" which can be translated as "I'd like".

</comment></comment></comment></comment></comment><comment><USER17> In Belarusian language we have two different "love" words. There is one "love" [кахаю - ka-ha-you] for "I love [ka-ha-you] you / her / him", and there is another one which we use in any other case, like "I love English language". The latter cannot be used when you express your feelings for another person. Oddly enough, I don't think we use ka-ha-you in "I love myself" that often, most likely there will be the same "love" word as in "I love English language".

-ss

</comment><comment><USER18> The book, "The Five Love Languages" answers the question extremely well. Anyone planning to get married should consider it mandatory reading.

</comment><comment><USER19> In the Bavarian dialect, you can't say "I love you" without switching out to proper German. We do have at least two words for peeing, though.

</comment><comment><USER20> I found that after almost 25 years I'd forgotten how to be romantic in English. Despite speaking English also all that time, and watching plenty of rom-coms and the like, I just didn't know how any more.

</comment><comment><USER21> whorf sapir, lets go

</comment><comment><USER22> qaparHa'qu'

<comment><USER23> That's expressing the opposite of hate, however. Which isn't necessarily love.

In Klingon, Love would be better expressed through actions.

In this way, Klingon has the same issue as Japanese.</comment></comment>


Meemoo iframework: modular web media patching - <AUTHOR> http://meemoo.org/iframework/

<comment><AUTHOR> Modules are iframes (that can live anywhere online) that communicate with window.postMessage() based on how they are patched together. They can be programmed to send and accept text, numbers, image data, audio... anything really. Programming the modules is a fun, because you can visually rewire them into another "app" that does something totally different.

I'd be happy to answer questions and get any feedback on design, UX, architecture, module ideas, anything...

This is my thesis project with help from Media Lab Helsinki and Mozilla WebFWD.

(There are more examples in the lower-right: cam2gif cam glitch processing flipbook camdoodle text2speech.)</comment>


New Open Data API – Restaurant Health Inspections - <AUTHOR> http://hdscores.com/api

<comment><AUTHOR> @HDScores has created a public API which contains the unified dataset of 1,285 jurisdictions across 29 states covering 615,526 restaurants showing 4,088,978 inspection reports & 12,287,898 violations.</comment>


Python 2.7 Retirement Countdown - <AUTHOR> http://pythonclock.org/ <comment><USER2> No, I'm getting sick of my code being broken.

My C code from 15 years ago works fine, but code in other languages can end up breaking within a year. I've moved much of my development back to C++ just so I can have reasonable confidence my code will work when I come back to it in a couple of years.

I don't care if Python 2.7 never gains another feature, as long as my code will still work in Windows 13 and Mac OS X 10.17.

<comment><USER3> Your C code might still work but are you not relying on any libraries which might have been updated in 15 years in a non-backwards compatible way and thus broken your build?

<comment><USER2> It's not perfect, I'll admit.

I'm probably in a special area -- algorithms research. I tend not to use many libraries, and I'm often taking code written 10-20 years ago and wanting to get it working. The code is often VERY complicated, and I don't really want to reimplement it.

Finally (and probably most importantly) I don't care about security holes, I'm not going to run this code on malicious input.

</comment></comment></comment><comment><USER4> This again? Python 2.7 is never going away, no matter how much people wish it did. Python is the Cobol/Java of dynamic languages. There is way too much volume of code written in it. This means there is a golden consulting opportunity for those willing to take it: support 2.7 code/libraries for money.

<comment><USER5> This again indeed, because Python 2.7 _is_ going away. Python 3 is the future, and we've been resting on our "eh, python 2.7 is convenient enough" mindset for too long. We should just bite the bullet and move to 3, which isn't even that bad of a migration.

Also, "supporting legacy code for money" is already everyone's job, unless you're implying that there are as many Python programmers as there are COBOL ones.

<comment><USER6> That's incredibly naïve. Python 2 will be around and have new software written with it for at least a decade to come. Keep saying "Python 3 is the future", that will surely make companies invest in switching. Meanwhile ford still uses 40 year old IBM mainframes with COBOL, and will continue to do so until they are physically unable.

<comment><USER7> As others posters have commented, Python 2 will survive in the sense that there will always be some code running on it (and there will be a niche market for dark artists who can massage it). Python 2 will not survive in the sense that no one will be writing _new_ code for it. Python 3 is already commonly used for new projects and it's scheduled to get several big boosts in that direction as Ubuntu and Fedora switch to it as the default Python.

The old meme that it's unsafe to use Py3 is not true anymore. Practically all of the big libraries work fine on Python 3 now. Py3 code is going to be dominant in new projects in short order if it isn't already, and it's plausible that new Py2 projects will be virtually extinct by 2020.

</comment></comment></comment></comment><comment><USER8> Man, the amount of people and support going for Python 2.7 is mind boggling. Coming from another language, I find the slow adoption of Python 3 insane. Don't you want Python as a language to advance?

Python should've abandoned and deprecated 2 ages ago. I still see new tutorials teaching 2. What the hell.

<comment><USER9> A lot of people really dont care about the future of python, they just want to write code.

...and honestly, whats wrong with that?

really, what difference does it make if people use old python versions?

Other than the core python team, which get to be embarrased that many people have zero interest in the work theyre doing?

Does it affect you? nope. Does it break the ecosystem? nope. Does it make library authors suffer? nope (dont support it if you dont want to).

Come on. Live and let be.

If you love python3, use it. Dont winge pointlessly (not you personally; all the hostile frothing at the mouth python3 advocates, especially on reddit)

<comment><USER10> I think you missed the whole point of this thread. People want ongoing official support of Python 2.7, which involves resources that could be used elsewhere. Supporting stuff is not free, you know?

<comment><USER9> [https://hg.python.org/cpython/graph](https://hg.python.org/cpython/graph)

I guess you can decide for yourself if the 'official support' of python is a massive drain on resources that could be used else where.

(The red line with a few commits now and then is the 2.7 branch)

<comment><USER10> That's a lot of commits. You just disproved your own argument.

<comment><USER9> Oh please. It's a handful of backports and bugfixes. Actually read the commits.

</comment></comment></comment></comment></comment></comment><comment><USER11> 331/360 of the most popular repos on pypi supports py3 [http://py3readiness.org/](http://py3readiness.org/).

Also python 3 support is increasing, while python 2 support is decreasing overall [https://blogs.msdn.microsoft.com/pythonengineering/2016/03/0...](https://blogs.msdn.microsoft.com/pythonengineering/2016/03/08/python-3-is- winning/)

<comment><USER12> Is the list correct?

It shows MySQL-python as 3.0 ready, but MySQL-python page ([https://pypi.python.org/pypi/MySQL- python/1.2.5](https://pypi.python.org/pypi/MySQL-python/1.2.5)) notes:

> MySQL-3.23 through 5.5 and Python-2.4 through 2.7 are currently supported. > Python-3.0 will be supported in a future release. PyPy is supported.

<comment><USER11> The tool they use to determine py3 support is the following: [https://github.com/brettcannon/caniusepython3](https://github.com/brettcannon/caniusepython3)

They have overridden mysql-python with mysqlclient [https://github.com/PyMySQL/mysqlclient- python](https://github.com/PyMySQL/mysqlclient-python)

<comment><USER12> > They have overridden mysql-python with mysqlclient

I am aware of this, but the fact that the tool is reporting MySQL-python as 3.0 compatible, when it is not, is worrying.

<comment><USER13> Overrides are mostly for drop in replacement. So you could use mysqlclient but chance very little in existing code.

</comment></comment></comment></comment></comment><comment><USER14> I just recently started learning Python for the first time, and at some point I switched from playing with 2.7 to 3.x, and my uninformed opinion is that I'm shocked at how many seemingly completely unnecessary breaking changes there are.

Did the parameter names to open()d really need to change? Why did I have to change from io.open() to open() for a stream? Did str.lowercase really need to become string.ascii_lowercase? The number of errors in my toy little program upon upgrading really surprised me.

<comment><USER15> Python 3.0 was basically a line in the sand to throw in all these "unnecessary" breaking changes. At the end of the day, no changes are actually necessary.

But to keep Python improving without weighing itself down, some changes couldn't just be slipped into the 2.x series. Because they're fundamental enough changes to even effect toy programs.

So, yes, I'd say that the default string type did need to change from bytes to unicode. And not only do I not miss str.lowercase, that kind of vestigial feature is exactly the type of thing that should be purged with the unicode transition.

</comment></comment><comment><USER16> Well I'm sure this is a naive point of view, but I'm going to put it out there anyway. It seems there are many Python devotees out there who are lukewarm about Python 3, and quite a few who really don't like it at all, hence a slow adoption rate. Right now it seems like the community is fractured along that fault line.

Is it too late? Can we back out of the current incarnation of Python 3 and go down another path instead? In other words, turn the slow adoption rate into a plus, call a do-over and mold the new Python into something more people are happy with.

<comment><USER17> As someone who learn Python 3 first, I'm amazed that people really think Python 2 is better.

After so many years, why the resistance?

<comment><USER16> I hope you didn't read my comment as saying Python 2 is better. Personally I don't have an opinion on that. But as you can see from this thread and many, many others, a lot of people are disappointed with Python 3's choices. You're right, it's been a lot of years, but if adoption has been as slow as some are suggesting, maybe we could cut our losses and put our beloved Python on a different path, as a community.

<comment><USER17> Maybe, but at the same time I haven't yet seen a criticism of py3 that wasn't just a litany of complaints about backward compatibility. Even in this thread, I don't see a whole lot of substance behind the discontent.

</comment></comment></comment></comment><comment><USER18> Yeah, don't hold your breath.

</comment><comment><USER19> Most everything good from Python 3 has been back-ported to 2.7. Except for built in parameterized tests in unittest.

Python 3 has the subTest context manager (which looks great)

[https://docs.python.org/3/library/unittest.html#distinguishi...](https://docs.python.org/3/library/unittest.html#distinguishing- test-iterations-using-subtests)

In 2.7 you must use pytest, ddt, nose-paramemterized or dynamically add test methods to a TestCase class at runtime.

<comment><USER20> Most everything good? Like high quality unicode support and async def?

<comment><USER21> High quality unicode? Where every string with even a single emoji takes 4 times the memory. They should have used UTF-8 for their internal representation.

Putting that aside, my issue with 3.X is that I have to use the unicode type even when I'm manipulating byte strings.

<comment><USER20> > even when I'm manipulating byte strings

What? No you don't. The `bytes` object is what you want when you deal with byte strings.

<comment><USER21> The bytes object is not a string type. It's treated more like a list of integers. It has very little string operations. Only in 3.5 did they add back the ability to % format.

Not to mention all the b prefixes it just becomes painful.

</comment></comment></comment></comment></comment><comment><USER22> Don't really like the tone of this, they are resorting to psychologically tactics now? (btw, I'm all in for pushing Py3)

<comment><USER23> Might this not simply have been made by someone who is tired of having to deal with Python 2?

</comment></comment><comment><USER10> People here keep bemoaning the golang designers' decision to not upgrade their language with things like generics, but suddenly their panties get twisted in a bunch when the Python community actually decides to fix problems in their language.

Get off your high horse and upgrade your code. So many people did it before you, and so can you.

<comment><USER24> If Go upgrades itself with support with generics but break backwards compatibility in a horrible way and the breaks cannot be caught at compile time, people will be complaining and resisting upgrade just the same.

<comment><USER25> And what should the Go team do if the only reasonable way to add generics is to break backward compatibility? Just rip the bandage off? Stagnate? Abandon the language and start a new one?

<comment><USER26> Programming languages are not like that. There is an unlimited amount of ways to implement a feature without breaking backward compatibility. Perl, for example, at some point kept compatibility even with bugs, because many people were relying on them.

<comment><USER25> I don't understand this at all. Yes, you can add features, but if they are not ergonomic, then why bother? For instance, you can't just add features that introduce syntactic ambiguity or change your parser to become context sensitive without making the language significantly more complex all around.

Yes, you _can_ add anything without breaking backward compatibility. That's why I qualified it with "reasonable" \-- there are very good reasons to break backward compatibility, and being a slave to it will pile up technical debt in very unpleasant and potentially avoidable ways.

It's like trying to make a skyscraper taller without rebuilding the foundation. Sure, you can add giant ugly supports on the side, but once you've done that a few times, nobody is going to feel safe near your building. And no self-respecting architect would do it.

<comment><USER26> There is nothing stopping you from implementing a feature in a reasonable and ergonomic way without breaking backward compatibility. Programming languages are fun like that. Anything can be done, your imagination is your only limit. And on this level technical debt is not a concern, not even a little. But having good rationale for a feature is, and a huge one. Most of the time the authors themselves don't know why they need it, they just feel like having it.

</comment></comment></comment></comment></comment></comment><comment><USER27> There are enough large organizations using Python that no doubt at least one will find it to be cheaper and more convenient to continue maintaining a 2.7 interpreter. Dropbox is working on one just to increase performance. PyPy also has due to how it works fundamentally a huge interest in maintaining Python 2.7 support for the forseeable future.

You've to be quite naive to believe that Python 2.7 will retire in 2020. It will only fade from popularity slightly faster.

<comment><USER28> Guido van Rossum (Python BDFL) himself works for Dropbox, so I'm not sure I believe that...

See also: [https://www.dropbox.com/s/83ppa5iykqmr14z/Py2v3Hackers2013.p...](https://www.dropbox.com/s/83ppa5iykqmr14z/Py2v3Hackers2013.pptx)

<comment><USER27> He does but how much influence does he really have there? I doubt it's enough to push them to 3.x just because. Pyston 0.5, the interpreter developed at Dropbox, was also just released a few days ago.

They're going to do what's pragmatic and cost efficient. Making everyone stop improving the product and porting the code base, is probably more expensive than just having one team maintaining and improving the interpreter.

</comment></comment></comment><comment><USER29> 3 Years 10 Months 13 Days 20 Hours 54 Minutes 31 Seconds until a community fork occurs.

<comment><USER30> Actually, it seems to me that everyone who is active in the community is already on Python 3 and is heavily in favor of upgrading.

The people who are still using Python 2 are the 'lazy' ones, who don't really care about the community at all; the ones who keep making comments like 'I just use whatever the `python` command starts.' I'm pretty sure these people couldn't maintain Python 2 by themselves.

<comment><USER31> I have a reasonably large project that was started in late 2013 (so only 2.5 years ago) when 2.7 was already long "to be deprecated" but some of the key libraries used were not yet python 3 compatible.

I haven't actually checked, it could probably be ported now - but why would you do that _now_ \- everything can change in the next 3 years.

<comment><USER32> We're over the hump if something would change and still was python it would most likely be compatible with python 3.

There two things that might help you port things:

1\. You can use Cython to mix python 2 and python 3 code together. You compile python2 code as a module and then reference it from the python3.

2\. MyPy ([http://mypy-lang.org/](http://mypy-lang.org/)) - This might not seem like related, but if you provide information about types refactoring the code becomes much easier (like in statically typed languages) so when you change something it's easier to find all other places that also need to be changed. Some IDEs (for example PyCharm) also understand typing which helps when using their refactoring functionality.

</comment></comment></comment></comment><comment><USER33> The amount of effort Python puts into screwing 2.x users is excessive.

<comment><USER34> It's not that maintainers want to screw anyone over, it's that folks who give away labor for free to maintain libraries want to be able to use the new features in 3.x without spending additional unpaid labor to maintain separate 2.x versions.

<comment><USER12> And vice-versa, it is not like users have some grunt against developers. They just don't want to go through the pain of having to migrate their applications and the instability that this will bring.

(Disclaimer: I am not supporting any side)

<comment><USER35> Why does end-of-life mean you __have __to migrate your application? 2.7 isn 't going to just go poof and self-destruct on your computer.

<comment><USER12> I am not following.. Using the same logic they could have stopped support for 2.x the moment 3.0 was released.

<comment><USER34> But they wouldn't be able to say "you should use python, we have all of these libraries!" Now, they can. There are a bunch of libraries that run under both 2.7 and 3.5, but they are doing extra work to make sure they work under both codebases and they are refraining from using any of the nice features of 3.5

</comment></comment></comment></comment></comment></comment><comment><USER36> I'm hopeful we'll abandon Python 3 instead.

<comment><USER23> Do you like Python 2 better than Python 3?</comment></comment>


Race you to the kernel - <AUTHOR> https://googleprojectzero.blogspot.com/2016/03/race-you-to-kernel.html <comment><USER2> When I try to zoom in to read the rather small image illustrations on iOS MobileSafari, it just takes me to a different blog post. Going back again leaves a huge animgif running at the side of the page :( Please don't override scroll and zoom gestures :(

<comment><USER3> [https://archive.is/WRDSx](https://archive.is/WRDSx)

</comment></comment><comment><USER4> I always find these exploits interesting, since they show how Unix primitives are implemented in terms of Mach.

</comment><comment><USER5> Could this be used to jailbreak iOS <9.3?

<comment><USER6> No, due to full userspace codesigning.

<comment><USER3> Then what _can_ it do on iOS <9.3?

You can load any code you want by signing it yourself, so if this lets you escalate from there it should work for a jailbreak, although a more complex one than usual. IIRC some jailbreak releases used developer certificates to get the first code running.

<comment><USER3> From reddit:

>it doesn't yield kernel code execution (except on OS X where you can just load kexts with the right entitlement), and it requires execve (which you cannot call under the container sandbox profile on iOS).

[https://www.reddit.com/r/jailbreak/comments/4bm9ka/news_proj...](https://www.reddit.com/r/jailbreak/comments/4bm9ka/news_project_zero_race_you_to_the_kernel/d1ahphr)</comment></comment></comment></comment>


Ask HN: Startup stole our software, and raised $2MM with it. What should we do? - <AUTHOR> About 2 years ago, my firm developed software under contract. About 4 months later, after falling behind on payments, the customer "charged back" all his previous payments (via PayPal), and kept the software (it was not yet finished, but functional enough to charge customers).
We recouped about half the money through PayPal's dispute process. We let the rest go, deciding it wasn't worth trying to squeeze blood from a turnip.
Fast forward to today, the very same company is on the front page of HackerNews:
https://news.ycombinator.com/item?id=8225738
The business' name is Pigeon.ly / fotopigeon.com (when we worked on it it was called pichurz.com / picturgram.com). The owners names are Fredrick Hutson and Alfonzo Brooks.
So, HN, what should we do? We have a signed contract with them which states that the software becomes our property in the event of non-payment. Should we assert ownership of the software? Of their business? Should we sue them? Should we reach out to their investors (Kapor Capital and Base Ventures)? Should we include Kapor Capital and Base Ventures in the suit?
I would really appreciate any advice HN can offer. We will of course rely on our attorney's advice primarily, but I am optimistic that someone here has dealt with a similar situation before.
Thank you for your time! <comment><USER4> You really need to be careful about how you approach this sort of issue.

While the advice may be trite, it is particularly apt here to emphasize the importance of consulting with a lawyer who is strong on IP issues.

In particular, this would normally need a careful evaluation of the contract language, which may or may not define what happens in the particular case you describe. If it should not adequately define what happens in express contract language, then there are default rules that potentially govern what happens. _Those rules may or may not support your position_. I have bumped into cases where the default rules basically say that the contract assigns the IP rights to the customer regardless of non-payment, with the remedy for the developer simply being to sue for payment. I am not saying that such rules govern your case because it is not possible for anyone to really know your case absent a proper legal review by a knowledgeable lawyer. I am saying you may be making assumptions about your legal rights that may or may not be correct and you should not casually just assume that they are.

It goes without saying as well that you should be cautious about using pejorative language about the person who did this in public because of the obvious risk of setting yourself up for a defamation claim. Again, in the end you may be justified but why complicate your own claims by giving those who did whatever these people did free ammunition to fight you with.

I don't mean to sound unsympathetic. It hurts to get screwed and it sounds like that happened here. Just be careful to go about it the right way in trying to correct the wrong that did occur.

</comment><comment><USER5> I wouldn't name and shame here on HN, because when you file a lawsuit they'll counterclaim for defamation. No point in muddying things. You're also susceptible to the defense that the PayPal dispute was a negotiation and settlement of the purchase price.

Disclaimer: I'm not your lawyer, this isn't legal advice. Do get your own lawyer to advise you on this, one familiar with licensing disputes.

<comment><USER6> Screw that, name and shame away. The nasty gits deserve it!

<comment><USER5> They might legitimately have no idea they "stole" the software. They probably didn't read the contract carefully, and they might assume that they did "pay" for it, albeit at a reduced price.

That said, they have every incentive to burn the $2m fighting this claim, because otherwise they have nothing. The best result for OP would be a negotiated sale of the software for some $$, or perhaps equity in the business if they can stomach the risk. Nobody wins if the legal dispute eats up all the money and sours the business.

<comment><USER7> Which gets to my point, and for which a lawyer, as an emotionally uninvolved 3rd party can be far more valuable than as someone who merely knows the law:

Decide what you want to get out of this:

Do you want to destroy the company? Perhaps take them over/replace them in some way? (A good lawyer will ask "What does this accomplish", although deterrence is not illegitimate in my viewpoint).

Get paid for your work, with suitable interest and penalties?

Get a piece of the action of the other company?

If you're telling the truth, there's a good chance you've got them in an exquisitely delicate situation. While they've officially raised a lot of money, if it just happened there it's unlikely it's all been transferred to their bank account. Even if so, you can mess them up going forwards with justified legal action.

For those panicking over defamation, truth is an absolute defense to it, you just have to be able to afford to get your day in court. Although I'll note everyone who's every been in a lawsuit, on whatever side, says it becomes a consuming thing, you've got to think about the opportunity cost. Something a good lawyer will bring up.

<comment><USER8> Truth trumps defamation, but it isn't necessarily enough to keep you out of court; your opponent just needs to find a way to twist your words enough to create a colorable claim. You'll win in court, but that's incredibly expensive and slow.

I wonder how this company could have made it through DD with a venture capital firm, since that would have involved contract review.

</comment></comment></comment></comment></comment><comment><USER9> My name is Frederick Hutson, and I am the President and CEO of Pigeonly. I was recently made aware of this post.

In light of the defamatory nature of the poster's statements, I felt compelled to respond. Well over two years ago, we entered into a work-for-hire agreement with the poster to write aspects of the software code for a beta version of our initial e-commerce platform. Our agreement with the poster makes it clear that we own all work product produced pursuant to the agreement. In the end, however, we were very unhappy with the quality of the poster's work so we terminated the relationship and requested a refund.

In addition to my own assessment I consulted with several independent sources including a founding member of the CakePHP project (the framework the poster used). Everyone who evaluated the code said the same thing, to sum it up (in their professorial opinion) the framework was not utilized correctly which resulted in the numerous bugs and browser incompatibility issues. The truth is even if we wanted to work with the code the poster provided we couldn't because it was flawed. So we were left with no choice but to start from scratch with a new developer.

The bottom line here is that through hard work and determination, we indeed built the Pigeonly platform from scratch and in no way incorporated any of the code produced by the poster. We are very proud of what we have built at Pigeonly, our mission is to build great products that solve the type of problems most would overlook.

<comment><USER10> > In light of the defamatory nature of the poster's statements, I felt > compelled to respond.

Useless filler.

> Our agreement with the poster makes it clear that we own all work product > produced pursuant to the agreement.

Again, useless filler. You own the work and they need their money for work in question.

> I consulted with several independent sources including a founding member of > the CakePHP project

That's great. I audited hundreds if implementations that sucked. The different is that those developers still got paid.

It's your fault for not knowing what you are doing and not having another source involved earlier in the process to make sure things are going smoothly.

Also, you are showing your lack of experience. Project was 2 years long (multiple CakePHP releases, I bet?) ofcourse people will say it's outdated and written poorly.

You are also working with a low level agency (no offense) and then get the code reviewed by 'founding member of X', what do you expect? Are you even serious here?

> So we were left with no choice but to start from scratch with a new > developer.

Let me audit that code, I'm 100% sure it will not be up to /my/ standards. Will you fire the developer and sue him for the salary you paid?

> The bottom line here is that through hard work and determination,

The bottom line here is that you really have no idea about technology.

<comment><USER11> > That's great. I audited hundreds if implementations that sucked. The > different is that those developers still got paid.

Say you go get your car fixed. It breaks down as you drive out. There are 3 other garages right next door who all look at your car and say you shouldn't put gum to plug a hole in the fuel pipe. Would you demand a refund? Of course you would, you went for a professional service and you didn't get what you were paying for.

> The bottom line here is that you really have no idea about technology.

He shouldn't have to. When someone says they can write you some code for money, they should be able sort everything out for you. If they can't provide what they said they would, can you honest expect people to pay? You shouldn't have to be technically proficient to get someone to write some simple custom software for you. Just like you shouldn't have to know all the ins and outs of plumbing not to get ripped off by a plumber.

<comment><USER10> Please don't use car analogy with someone who is in auto technology sector.

Two years without any auditing is a mistake of the founder, if your car is in the shop for two years for massive amount of work you will go there to check it out. And you better bring a friend who knows about cars if you don't have a clue.

I will give you a better analogy, you go to a random mechanic leave the car there for two years without checking on it. You have no clue about the problem or the car.

Then you finally get the car out and decide to bring it to another mechanic. What will happen in 99% of the cases is the mechanic will talk shit about the previous shop and find every little thing that's not 'up to code'. The coolant hoses (that were not part of the original job) are old now after sitting for two years. Oops.

You still have no clue about anything. So you hire your own mechanic who you think has a clue (but you can't gauge that) to do the 'fixes' and he tells you 'it's great now!'. Bullshit.

This is common in tons of other industries. With programming it's harder to tell what 'shit code' is. Especially when you have 2 year timeline working with a framework that changed significantly within that timeline.

Furthermore, you are missing my point. He does not have A level team to rewrite software. Let's not pretend the magical rewrite is a super car here, not with his team.

> He shouldn't have to. When someone says they can write you some code for > money, they should be able sort everything out for you.

Again, missing the point. How do you know everybody else is not feeing him bullshit? If you don't know something, don't wait two years to get third party audit on a TWO YEAR OLD code.

Overall, I don't think you know what you are talking about either. You might think you do just like the founder but you are not fit to run a technology company.

<comment> squeaky-clean The attitude of your posts is disgusting. Both the firm, and the startup made big mistakes here. The answer should be to get a lawyer, because none of us know all sides of the issue, and that is going to be the end result anyways. A lawyer, or drop it. There is no need to attack the above posters for having an opinion opposite of yours. And your analogy is worse than the one posted above. Regardless of whether or not you are in the auto technology sector (why do you even assume people know that about you before commenting)?

<comment><USER10> Do you have anything to contribute besides expressing your 'disgust' at my counter point because it's not covered with kittens?

This is the place for discussion, not a kindergarden.

If they wanted to get a lawyer they would have; but this is on HN and I will openly comment on it.

<comment><USER12> > This is the place for discussion

Exactly, so don't shit all over people with your superior "I'm in the auto technology sector so my analogy is better than yours" bullshit. His analogy and points are perfectly fine and I agree with him, but furthermore you being a jackass makes me automatically dismiss your arguments.

<comment><USER10> No, that was more of "It's funny that you are using this analogy, because I'm A) a car guy B) in an automotive sector".

He got me to bite. If you think this is some sort of superiority play, please go outside your bubble.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER13> As with every dispute that comes up on Ask HN that requires legal action - <USER2> a lawyer. (and a good one)

<comment><USER14> And start putting together every piece of data you can that will help your case - emails, IM message logs, source code etc.

</comment></comment><comment><USER15> First things first, definitely edit the OP. You get nothing from outing them, much less calling them "thieves" in public. Don't give them any ammo.

Second, gather your contract and lawyer up right now. The reality is you're probably still squeezing blood from a turnip (despite the VC); your best move would probably be asking for a licensing agreement in lieu of a bulk sum.

Third, I think it makes sense to bring this to the attention of the VCs - <USER3> won't hurt (the way publicly outing them might) and they could possibly work at mitigating/mediating this.

Again, $2M might seem like a lot to you, but this is mostly budgeted already. If, like most startups, this is relatively short-lived, you may want to recoup via a license, although this is a new contract that would need to be drawn up fresh.

<comment><USER16> > Third, I think it makes sense to bring this to the attention of the VCs

Don't do anything without talking to your lawyer. This advice could lead to claim a of tortious interference.

Hell this whole post could be tortious interference.

</comment></comment><comment><USER17> Find a lawyer. Dont comment any further on the matter in public.

<comment><USER18> This is the only advice to listen to. Succinct.

Already commenting on HN is too far. It should have all been private. Do no further damage.

For qeorge: If you win in court, depending on the outcome and or any settlement, you can potentially still write about the whole thing in a blog entry if you still feel the need to be public about it.

</comment></comment><comment><USER19> Oh dear, airing dirty laundry in public. Maybe there were reasons why Fredrick and Alfonzo didn't pay you? We wouldn't know as hacker news and you are unlikely to tell us. I would suggest letting a judge decide and hiring good legal council.

However, I would say that your judgement in maybe panicking and posting so publicly is far from the mark. You should remove this post if you can as soon as possible. Only bad things can come of this!

</comment><comment><USER20> How do you know that they are using any of your IP (code)?

I presume that they approached you, originally, to create software for them, but the idea was theirs. If they terminate a contract with you, however unsatisfactorily, they are still free to start over with another dev agency.

3 years is a long time in terms of what can be delivered in software. The system doesn't sound all that difficult to replicate.

</comment><comment><USER21> 1\. Stop talking about it publicly.

2\. Hire a lawyer.

<comment><USER22> I feel like this is the only right answer.

It's been said, but there's not much value in discussing this in public; it just introduces risk/complication.

Are you really going to put any weight on insight gained from this thread? If not, the cost/benefit of keeping this up is out of whack.

In that case, the "benefit" become solely the name/shame which isn't an awesome reflection of professionalism, either.

</comment></comment><comment><USER23> Read earlier today that one of the founders was convicted of drugs trafficking and served four years in the pen. [http://www.forbes.com/sites/hollieslade/2014/08/21/how- this-...](http://www.forbes.com/sites/hollieslade/2014/08/21/how-this-man- built-a-3m-business-a-year-on-from-four-years-in-prison/)

<comment><USER24> What could this possibly have to do with anything?

Maybe do a little research about the project first...you come off as pretty ignorant with a statement like that.

</comment></comment><comment><USER25> Edit their names out of this post, this will definitely be used in court, get a lawyer.

</comment><comment><USER26> Disputes like this at the very least becomes very costly for both parties, notwithstanding the fact the damage each one may inflict in just trying to get the upper hand over the other.

Considering that you've brokered into an agreement before, haven't you explored the possibility of just resolving this amicably, with both parties finding a common ground to ensure a win-win situation for both.

Going through the lawyers and courts should be the last resort. I know to some degree this advice (which you could take with a grain of salt) may not hold some ground with the others. But just the same, you've worked together before and there should be no reason for you not to be able to settle things properly.

</comment><comment><USER27> Personally I would not be posting things like this one the internet. The reason being if you sue them and in fact they aren't in the wrong they might decide to sue you back. Your making some very big claims.

You could be sued for liable or malicious falsehood.

</comment><comment><USER28> Thank you for sharing this information. I think that while jumping into the more expensive lawyer arena is one choice. A shot across the bow of Pigeon.ly is a good alternative. I think hiding behind lawyers benefits only the lawyers. As a civil society, I think people should be called out for their poor behavior, and explain themselves. You've made your case, now Pigeon.ly should explain themselves. A public court of opinion is, in the end, the only court that truly matters. Or so I think.

</comment><comment><USER29> In cases like this, do investors usually have protections built into their investment contract that if something like stolen IP or possible fraud wasn't initially disclosed they can recall their investment?

I imagine this can't be the first time something like this has come up.

<comment><USER30> Sounds like the perfect use case for insurance, kind of like title insurance in real estate.

</comment></comment><comment><USER31> Seems to me that your damages would be limited to the amount you originally agreed to. The fact that they had a funding round and press shouldn't matter.

Payment + chargeback is a bit different than non-payment; complicating the fact is that you received some money from PayPal.

Aside from PayPal, did you pursue any recourse?

Does your contract have a mutual non-disclosure clause? If so, I suspect you just violated it.

I'm sure when you saw their funding event, you were upset. Bottom line: if everything had gone according to plan, you would have been paid, and they'd still have their funding event.

</comment><comment><USER32> I can appreciate the frustration you must be feeling. Working with clients seems to highlight the best and worst of humanity.

I believe that you should always lead with your best. A situation such as this can definitely impact your business in a negative way. It's more of a one- sided allegation and your choice of wording is defamatory. At this point, consider hiring a lawyer. They may not be able to tell you what you should do, but they can definitely tell you what NOT to do, which is just as important sometimes.

Good luck.

</comment><comment><USER33> As a general rule, consultants should always develop code on their own servers and transfer the code to the client only when full payment is received. In this case, I realize that the ship has sailed, but I'm sure there is a lesson to be learned.

</comment><comment><USER34> I would do a DCMA take down notice against the web host and send it to whoever funded him as well. He did not pay in full. He not only stole the code but committed credit card fraud. If he has a parole officer I would try to find out.

</comment><comment><USER35> Nobody can give you much more advice than to collect all your papers/email/documents regarding this and discuss it with a lawyer.

I know your upset, and want to hit them hard – but outing them probably won't do much good in the long run.

</comment><comment><USER36> My question is why are you caring about it now, if it was 2 years ago? Now that it made HN.. now you care? Its funny how it didn't matter the past 2 years. If it was a real issue you would of gotten a lawyer already, get over it and keep on doing business. I'm tired of everything becoming a lawsuit over nothing that mattered in the first place.

The only ones who will benefit in the long haul are the lawyers, don't waste money. Every lawyer that wants the case will tell you, you have a case and we got this, lawyers love to drag things out. Long and expensive process.

Another question... How did they get all the code for the website if they hadn't paid in full? If my clients don't pay they never get any code on the server they own.? So you gave it all up before payment?

</comment><comment><USER37> I can understand your feelings but you gotta hire very GOOD lawyer! Keep Calm and Fight Legally!

</comment><comment><USER38> Have you seen the Forbes article about this? Sounds like you're dealing with an ex-con.

[http://www.forbes.com/sites/hollieslade/2014/08/21/how- this-...](http://www.forbes.com/sites/hollieslade/2014/08/21/how-this-man- built-a-3m-business-a-year-on-from-four-years-in-prison/)

</comment><comment><USER39> i'm sorry for your loss. however you need to consult a lawyer to understand where you stand and what your options are. i'm not sure there a lot of them on hn. goodluck

</comment><comment><USER40> Ouch! You should finish the software and launch a competitor.

<comment><USER41> Yeah if they stole a semi finished product I'm sure OP could blow them out of the water with feature. Thought the alleged thief has a jumpstart on marketing.

</comment></comment><comment><USER42> we are in the same boat, amazon zocalo is our app.collablayer.com ditto , we are adding another set of feature to come out of this nightmare.

</comment><comment><USER43> I find it funny how there's so many articles about this guy who was in prison then does right and starts this company. Then this comes out...

</comment><comment><USER44> So a company started by felons stole software from you.

</comment><comment><USER45> I know this isn't Reddit or 4Chan, but I've never felt more compelled to post the following:

[http://i.imgur.com/agJIP.gif](http://i.imgur.com/agJIP.gif)

<comment><USER46> Yup...[http://i.imgur.com/NnoGhN1.gif](http://i.imgur.com/NnoGhN1.gif)

</comment></comment><comment><USER47> oh cool, and they're taking this opportunity to cash in on vulnerable and disenfranchised populations. real winners here.

</comment><comment><USER48> What like you own what you worked on?!?? Fuck that! Patents and ownership of property is fucking stupid! This is hacker news!

Everyone knows that it's how well you implement, not whether you developed the idea or not. Clearly they implemented your idea that otherwise would have been nothing. If you had never written it someone else would have written is just as well as you did!

That's how the world works nowadays. Right??!?

<comment><USER43> If the contract says they own it, they own it. That's how the world works</comment></comment>


Ask HN: Idea of building music player depends on your mood - <AUTHOR>

I thought of doing an side project, which does this. Based on what I'm currently doing in my PC, the app will play a music.
To get started I thought of doing this: Build an chrome extension, which does analyse the web page your currently in, find the mood of it, and play the corresponding songs from your local system.
The idea looks good to me, but I wonder, whether this can be really achievable.
I really need your thoughts and inputs regarding this. <comment><USER2> I think people have different moods for similar activities. Someone might enjoy classical music while coding while others might enjoy dub step or the like. And if you have to provide your mood how is it different from songza/spotify? Nevertheless, it would be kinda interesting to see how you get the mood of a website. What mood would HN have?

<comment><AUTHOR> > I think people have different moods for similar activities

         I totally agree with you.

> Nevertheless, it would be kinda interesting to see how you get the mood of a > website.

Ya analysing the mood of the HN site is very difficult one. I thought of using lib like NP that are available in Python.

Something like this: [http://text-processing.com/demo/sentiment/](http://text- processing.com/demo/sentiment/)

But I have never tried them.</comment></comment>


Over 80% of online ad effect is on offline sales - <AUTHOR> http://sciencebulletin.org/archives/10024.html <comment><USER2> The study isn't published yet so I withold my judgement. Given that the results are beneficial to people selling adverts caution should be exercised. (Two of their big problems are that click through rates are abysmal and many people dislike ads. They benefit if advertisers believe they achieve "additional sales".)

EDIT: FOLLOW UP. I had a deeper look. The article is dated, "Posted in Business on February 3, 2017". I found one copy of the paper published December 29, 2015 and another July 26, 2016. Both same I think, but one author had moved from Google to Pandora.

The article text seems off beam. The paper describes a method to better estimate advertising impact, not directly what that impact is. Odd.

</comment><comment><USER3> if i am not mistaken, ads used to pay a lot more. for example, a friend of mine used to run a website and was able to pay for the hosting costs with a few adsense ads and modest traffic. apparently that is not possible anymore.

there are problems with ad blockers and malicious ads. i simply dont understand why these things are a problem. why do we not see simple ads, static images with no java script, implemented in such a way that ad blockers cant really block them? i mean, if your ad is some image inserted somewhere in one or all of your web pages, how could an ad blocker know which image it was out of the many which are probably going to be present on any given page? and why are people not willing to pay for such an advertising vector? people visit the website, they will see the ad like a billboard or any other traditional ad, so why is it not possible to charge traditional rates? its very confusing to me so if anyone with experience in the matter could weigh in that would be very nice.

<comment><USER4> > why do we not see simple ads, static images with no java script, implemented > in such a way that ad blockers cant really block them?

I've posted about this before as I've actually been involved in a site that does just this. It has basic text ads, side graphical ads, and banner ads. There is no JavaScript used for any of it, all the site images including the ads are served exactly the same way. The text ads are completely embedded in the page text. No 3rd party ad services are used at all.

Ad blockers have no problem blocking every one of them.

<comment><USER5> > Ad blockers have no problem blocking every one of them.

that's interesting. how would they block a comment like this: This post was made possible by McDonald's (I'm lovin' it), if it were embedded this deeply in post content?

I'm interested only because i have briefly entertained the idea of ad content embeded directly into a db query via a sproc, for example, so that the ad and the post content are basically one and the same... if the entire content is blocked, maybe that's the desired outcome? never bothered to try it though.

<comment> jay-saint If all you wanted to do is embed " This post was made possible by xyz co." Most blockers would miss this. However most advertisers want to have a link provided to track results . It's trivial to block the links to xyz.co/partner=123 . With the above knowledge and some trust a retailer could gain customers and bypass adblockers by bypassing links in their ads and focusing on views.

</comment></comment></comment></comment><comment><USER6> monetization hungry websites made the sites unusable with extra and extra ads. users responded with ad blockers.

Instagram , snapchat and other app silos will come up as winners as you can't block their ads and open web will turn into a paid web slowly.

PS: I m using ad blockers</comment>


Supporters gather after reports Assange may be ousted from embassy - <AUTHOR> https://www.theguardian.com/media/2019/apr/05/supporters-gather-after-reports-julian-assange-may-be-ousted-from-embassy <comment><AUTHOR> Quite surprised he didn't attempt a covert exist before it came to this. If it is indeed true.</comment>


Ask HN: Ever "think in Google"? - <AUTHOR>

Do you ever find yourself thinking in keywords when away from the internet, as if Google were an extension of you?  I think I did too much research online over the past few days and I noticed Google is reshaping the way I think.  Ten years ago if I heard someone interject a few disjoint words, I wouldn't think much of it.  Now I wonder if they're "thinking in Google", too. <comment><USER2> Yes.. that is, yes you did too much research online over the past few days!

<comment><AUTHOR> I hope that's it. I don't want to become any more incoherent than I already am.

</comment></comment><comment><USER3> I've tried to ⌃⌘D a word in a real book before.

Also caught myself searching for ⌘Z after spilling something.

<comment><USER4> I once thought to myself that I needed to set the coffee cup to zero, then I realized that I actually meant wash it.

<comment><USER3> If only it were all that easy.

Though I suppose a little work is better than the coffee cup exploding because we forgot to free some memory for the toaster.

</comment></comment></comment><comment><USER5> Recently I've woken up thinking in C. I'll say hi to my wife, and immediately check to make sure that in my mind, there were parentheses and a semicolon after I said 'hi'.

<comment><AUTHOR> That too. In various programming languages, Lisp a few weeks ago. Luckily not the parenthesis part for me, though.

(edit - curiously it's most often when waking up also)

</comment></comment><comment><USER6> While focusing on a problem, my google-fu always seems to diffuse. An example from today:

ie7 css background-image second try load page

Unsurprisingly, this did not return the results I was looking for.

</comment><comment><AUTHOR> I feel vindicated: [http://afeeblemind.blogspot.com/2008/04/do-you-think-in- goog...](http://afeeblemind.blogspot.com/2008/04/do-you-think-in-google- script.html)</comment>


Show HN: BookBuddy helps you maintain a steady reading habit - <AUTHOR> https://bookbuddy.me/welcome <comment><USER2> Upvoted just for the idea. It's definitely something I need. I'll give it a try!

I highly recommend reading Nir Eyal's book _Hooked_ , which may provide some additional insight into making this product work.

<comment><AUTHOR> thanks!</comment></comment>


A Task Management App for Remote Development Teams - <AUTHOR>

I had an idea pop into my head the other day, and am interested in hearing the HN opinion on it. Here is the basic idea: A task management app that links up with bug tracking programs and automatically creates a notification for that bug. This notification would be assigned to a delegator that would then take the bug and assign it to a developer. It would be a real time app, designed for remote development teams to make it easier to manage delegating specific tasks to developers. It would also mean that tasks could be assigned to developers as soon as a bug presented itself. By integrating it with instant notifications such as push notifications on mobile and Growl style desktop notifications, it would be easy for a delegator to look at the bug, and assign it to a developer, who would then also receive an instant notification.<p>What does everybody think? Does something like this already exist? If it doesn't, is it needed? <comment><USER2> I like the idea, but I don't think there's a need to reinvent the wheel.

That is: I think it'd be more useful to build integration tools for existing products, than to force people to use a brand new task management app. If they like their bug-trackers and they like their task managers, why not just build a way for those existing products to talk with each other?

</comment><comment><USER3> Pivotal tracker has a new relic integration that will generate new tickets of type bug when an exception is captured.

Also, a lot of places like to just wire an exception handler and email the dev team when an exception happens (with the stack trace, request headers, etc). That way, annoying emails keep coming until the bug is fixed. It's a good reminder ;)</comment>


High-energy experiment is generally statistically unsound - <AUTHOR> https://kirstenhacker.wordpress.com/2019/09/29/the-walrus-and-the-carpenter/ <comment><USER2> Seems like a misguided rant. The whole beginning of "but what about applications?" makes no sense.

The complaints about what is essentially p-hacking might apply to CERN (but probably not), but doesnt work with LIGO where many events were detected by their model-free pipeline.

<comment><USER3> Indeed, but if you ignore much of the crack-pottery and the lack of understanding of fundamental statistics you could find some valid criticism of current physics in this piece (but more like needles in a hay stack).

Physics is now entering a new era of "exploration". This means lots of data and little results. The career of the average scientist will be a series of papers where they prove that they found nothing. I can see how this is frustrating or boring to many people but it is the only way forward. The low hanging fruit has been harvested decades ago. The methodologies of measurements have to adjust accordingly and the purpose of experiments has to be advertised correctly.

<comment><USER4> > _Indeed, but if you ignore much of the crack-pottery_

She claims to have studied physics for twenty years and have a PhD in accelerator physics. If true (and she seems too well-informed to be lying), her crack-pottery is at the very least well-informed enough to likely contain many useful insights and views worth considering. Especially regarding physicist _culture_.

There is a page where she shares a few of her novel[0], and speaking as someone who dropped out of physics myself (just a lot earlier than she did) I certainly recognize more than a few themes in the feedback contained therein.

[0] [https://kirstenhacker.wordpress.com/2019/07/30/reviews/](https://kirstenhacker.wordpress.com/2019/07/30/reviews/)

<comment><USER5> It's kinda neat that one of her major complaints with physicist culture is pernicious groupthink, and that some of the primary arguments against her are prima facie dismissals for not subscribing to consensus.

<comment><USER2> Not subscribing to consensus is not an argument against her. Not addressing that there are non-model-dependent detections (ie not in danger of p-hacking) and her support of much disproved (experimentally) tired light are why people don't take her seriously.

There are plenty of things wrong with high energy physics and cosmology, the fact that most theory is not-even-wrong is a big one. She is, however, often barking up the wrong tree.

<comment><USER5> It sounds like you are more familiar with her beliefs and this subject material than me. Would you mind elaborating on your disagreements?

Personally, I don't think any measurement is non-model-dependent. It's a question of which model. You need a model to turn some physical phenomenon into bits in memory and yet another model to interpret these bits.

I am also not convinced tired light is any more falsifiable than any other cosmology. I'm sure all it's problems could be rectified by adding enough terms that depend on variables we cannot ever measure. A version of it may be falsified, but there could always be another version with dark-whatever that explains any deviation. I feel this is just another way of expressing dismissal by non-adherence to consensus.

</comment></comment></comment></comment></comment></comment><comment><USER6> Reading this felt like a breath of fresh air.

Her blog is really worthwhile to read, also this article about the first picture of a black hole:

[https://kirstenhacker.wordpress.com/2019/08/24/signs-of- the-...](https://kirstenhacker.wordpress.com/2019/08/24/signs-of-the-times/)

I'm not qualified to judge either way, but I like the style of her reasoning very much.

<comment><USER7> The whole thing is just a big straw man argument. Well, actually the piece is pretty incoherent and I found it hard to find a red thread through the musings on such diverse topics as WIMPs, pentaquarks and the functioning of drift chambers. But the core of it seems to be at she thinks that scientists are now sitting on massive piles of data, mine through it looking for any oddities and then jump on the chance to publish a discovery of a new physical phenomenon as soon as one is found.

I can't judge whether she is just ignorant or deliberately misleading (she claims to have worked in physics), but this is just not how experiments are done. You _almost_ always start with a theoretical prediction by a new theory, and there is no lack of theories out there so it has to be a pretty good one that has plenty of justification to merit attention enough to invest the 10+ person-years of effort it typically takes to conduct a rigorous analysis of a chunk of data from a modern large scale scientific instrument. You carefully demonstrate in various side bands your ability to correctly model every background process and instrumental effect that could influence the measurement. After that, if the data very clearly favors the new prediction over the null hypothesis, you may publish the discovery in order to invite other scientists to confirm or refute it. This does _not_ mean that you or your peers accept that the new theory is correct.

And this is all supposedly in support of the thesis that large experimental facilities are a waste of money, which is patently nonsensical. They have been estimated to pay for themselves in direct returns alone (training of students and researchers, spin-off applications to silicon sensors, cryo technology, vacuum technology, lasers, accelerators, computing, etc). And the long term importance of investments in fundamental research are incalculable. For perspective, remember that the electron was considered a "useless" discovery back in 1897.

<comment><USER5> It's a bit of a ramble, but it's hardly incoherent. What seem to like diverse topics to a physicist are actually not all that diverse when looking from a holistic perspective. It's not that scientists are sitting on huge piles of data and mining them for interesting results without testing hypotheses (though we are doing exactly this in many domains), it's that the fundemental approach to statistical analysis is flawed.

With enough data, good enough filters, and a wide selection of adjustments for background processes, any model can be made to work. Putting the blocks together is fundementally an excercise in bias, and truly limiting this bias requires significant discipline that is highly disincentivized and therefore uncommon.

The way she writes invites dismissal from working scientists due to its imprecise and conversational style, but I think she makes many salient points about the flaws in the modern scientific institution.

<comment><USER7> > the fundemental approach to statistical analysis is flawed

This is a very strong assertion. What changes do you think are needed?

> With enough data, good enough filters, and a wide selection of adjustments > for background processes, any model can be made to work.

Sure. Which is why no scientist will care that a particular signal model "can be made to work". You try everything you can to explain your data with only background processes and only if this fails do you consider alternatives. The more adjustments you allow, the harder it becomes to favor signal over background.

> Putting the blocks together is fundementally an excercise in bias, and truly > limiting this bias requires significant discipline that is highly > disincentivized and therefore uncommon

Another wild accusation without evidence. Why do you believe this is true? And if it is, where are all the false discoveries? In a small team with less oversight, I'm sure cutting corners happens. In a large experiment like those discussed here? No way. The embarrassment of having to retract a false discovery is a pretty strong incentive to ensure the integrity of results, and they have enough internal controls to enforce it.

<comment><USER5> It's not a "wild accusation" or personal attack, it's a fundemental truth about the nature of modeling. You can do better against it if you start off by recognizing that it is there. Nothing is unbiased.

The embarassment of retraction is also a strong incentive to not challenge the status quo. If everyone is using the same bias and assumptions no one has to worry about retraction. The more small teams you have, the easier it is for different biases to live; the more centralized, the easier it is to succumb to groupthink.

</comment></comment></comment></comment></comment><comment><USER8> >Let's put aside the fact that one cannot directly observe what is inside of a proton or a neutron and that it is quite a logical leap to assume that the extremely unstable particles that come out of a collision exist in a stable form within the non-collided particles.

This is nonsense, deep inelastic scattering experiments have for example directly shown that protons have the predicted internal structure [1].

[1] [https://en.wikipedia.org/wiki/Deep_inelastic_scattering](https://en.wikipedia.org/wiki/Deep_inelastic_scattering)

</comment><comment><USER9> This is the gist i believe:

> In 2015, CERN's LHCb found pentaquarks in their data with 9 sigma > significance!!! This either proved that CERN can find whatever it wants in > its data or it proved that the experiments which showed the pentaquark did > not exist were wrong. I suspect that the former is true because I wonder > what the expected probability of seeing the particle was in their > application of Bayes' theorem.

I 'm not sure that's an indictment of LHC itself or rather of the sloppy way with which science attribute importance to whatever is statistically significant. It's probably true that there is too much data and not enough good models.

<comment><USER7> > the sloppy way with which science attribute importance to whatever is > statistically significant.

But we don't. Just because an effect is statistically significant doesn't mean it could not also be explained by some systematic effect and physicists are very aware of that.

The famous five sigma rule prevents a claim of discovery without statistically significant evidence. It does NOT mean that we automatically accept every five sigma deviation from the background model as new physics.

</comment></comment><comment><USER10> "A question which does not get asked in physics circles is: 'do impossible to measure things objectively exist?'"

The reason that the question isn't asked in physics circles is because the question is a philosophical question not a physics question.

<comment><USER4> Her larger point is that there are still _assumed answers to these questions anyway_ that physics is building on.

<comment><USER10> I am not sure that physists do. Many of the physics I know seem to subscribe to the "Shut up and calculate" school of physics where they say all of these things are a model that gives results that correspond to the experiments.

<comment><USER4> Yes, and they say this at the same time as they say share plenty of stories about alternative formulations that work as well but rejected because they lack "elegance" or whatever, and somehow they do not see any conflict in this. It's a weird kind of denial of making first principle assumptions.

<comment><USER10> True but if you have two alternates that are of equal predictive power then the choice between them can be totally arbitrary.

<comment><USER11> With the contrast she made between WIMPs+tiredlight and Higgs+bigbang, I think she suggested that when both languages have equal predictive power, one should choose the language that is consistent with existing definitions. If a new language confuses definitions and creates the appearance of paradoxes, it is not a good language. This is drawn out in some of her other articles.</comment></comment></comment></comment></comment></comment>


Why an NDA (or Any Small Contract) is Worth Your Time - <AUTHOR> http://www.softwarebyrob.com/2008/06/05/why-an-nda-or-any-small-dollar-contract-is-worth-your-time/ <comment><USER2> Signing some elses NDA exposes you to things you don't have (much) control over. If a client wants me to sign an NDA in order to even discuss his $1-2K job, I'm going to decline. The legal exposure is not worth it to me.</comment>