VC Pavel Curda Admits He Pestered Woman Entrepreneur For Sex In "Deal" Email - <AUTHOR> http://techcrunch.com/2014/08/20/european-investor-admits-he-pestered-woman-entrepreneur-for-sex-in-deal-email/

<comment><USER2> "I am ready to apologise again in person with a big bouquet of flowers"[1]

How patronizing.

[1] [http://thenextweb.com/voice/2014/08/20/sexual-harrassment- te...](http://thenextweb.com/voice/2014/08/20/sexual-harrassment-tech- industry/)

<comment><USER3> Not just patronizing, but continuation of the shitty, harassing behaviour that got him in trouble. Giving flowers is easily read as a romantic gesture.

<comment><USER4> Well, to me it's fairly clear that this guy probably has a very misogynistic view of the world in general, and that he genuinely doesn't have the self- awareness to realize how inappropriate and douchey his behavior is (I guess anyone with that sort of behavior doesn't have that self awareness).

The problem is that when "we" call him and out and shame him, he'll play the apology game because he's smart enough to realize that that's what you should do - but his underlying thought patterns and behaviors will remain the same.

So, what do we do/what can be done for people like this, who have lived for several decades with their way of thinking, to actually shift their perspective and make them be respectful towards women/minorities/etc. beyond just mere PR reasons? (or, to state the same problem in different words, how do I make my 70 year old uncle Mitch respect black & gay people "for real"?)

<comment><USER5> > or, to state the same problem in different words, how do I make my 70 year > old uncle Mitch respect black & gay people "for real"?

You can't. General sentiment changes over time as people "age out" of society and those with other beliefs enter the majority. See: Gay marriage tolerance, recreational drug tolerance, etc.

</comment></comment></comment></comment><comment><USER6> While the content of the e-mail is of course noxious and appalling, what's really awful is the sense of entitlement exuded by this. It isn't just an obnoxious proposition: it's an attempt at coercion. "I won't leave until you sleep with me" isn't usually put so clearly by harrassers, but there you have it.

> Following that story, Curda – who is divorced – yesterday Tweeted that his > email had been "hacked".

Isn't "I've been hacked!" becoming a pretty trite excuse these days for when one is caught in an embarrassing situation involving e-mail, technology, etc.? It almost invariably turns out to be a fairly bald lie. [0]

[0] [http://www.politico.com/news/stories/0511/55877.html](http://www.politico.com/news/stories/0511/55877.html)

</comment><comment><USER7> This reminds me of a Reddit post from yesterday: [http://www.reddit.com/r/TwoXChromosomes/comments/2dyi9j/look...](http://www.reddit.com/r/TwoXChromosomes/comments/2dyi9j/look_ill_be_completely_honest_with_you_i_want_to/)

In particular, the bit about the persistent apologies. From the Reddit link:

 _He 's distanced himself from the situation - his nauseating apology texts are dripping with the clueless narcissism that deeply engrained chauvinism is made of: "I know you said not to contact you anymore but I have to apologize so I can get over this... This has turned out almost the exact opposite as I thought it would [sic] and has caused me inexplainable [sic] discomfort .... I just have to come out and say it, I like you."_

Also, some of the stories in the comments had similar elements, like:

 _This exact thing happened to my current gf after she was raped. She just wanted to bury it and he kept pushing his guilt on her for about a year sporadically begging for forgiveness and for her to help him convince himself it wasn 't actually rape._

The initial behavior is bad enough, but the continued demand for interaction and forgiveness is entitled and pathetic.

Incidentally, I'm curious as to why I saw this link on the front page of HN from my phone, but when I jumped on the desktop to comment, I was unable to locate it anywhere on at least the first four pages of HN. Now it seems to be back on the second page.

<comment><USER4> > Incidentally, I'm curious as to why I saw this link on the front page of HN > from my phone, but when I jumped on the desktop to comment, I was unable to > locate it anywhere on at least the first four pages of HN. Now it seems to > be back on the second page.

Yeah, that's happened to me very consistently over the past few months. I'll see a link on my phone in the first 10 positions, switch to my desktop (where I'm logged in) to comment on it, and it has just disappeared from the front page.

Given the frequency at which I observe this, I suspect the mods do this (maybe programmatically, maybe not) with articles that are likely to be "controversial".

<comment><USER8> > I suspect the mods do this (maybe programmatically, maybe not) with articles > that are likely to be "controversial"

We do this (no need to suspect—it's not a secret) but the greater effect comes from user flagging.

Why do we do this? Because hot controversies automatically get upvotes due to being hot and controversial. If there were no countervailing factor, HN's front page would consist of those, plus celebrity stories, trends of the moment, and the like.

The site's mandate is for stories that are intellectually interesting. That's far from the most powerful kind of interesting, so it needs to be protected from the other kinds.

Moderators doing this is not a perfect solution or even a good one, but it works, and has worked this way for years. We're definitely interested in finding a better solution long-term, though. In the meantime, I think most (though not all) of the users flagging stories are doing so responsibly and with the mandate of the site in mind.

</comment></comment></comment><comment><USER4> _" Hey <initial>. I will not leave <city> without having sex with you. Deal?"_

Aw, poor thing, he doesn't even have the mental bandwidth to use different copy for his messages :( Maybe someone can start a company to generate unique sounding sexual harassment messages? I predict a $10M acquisition.

<comment><USER9> The bigger question is how did he manage to send (1) 2 messages with practically identical content, (2) one via email, another via text, so he probably retyped the second one, (3) using the correct initials for each woman, and (4) without any spelling mistakes, _while he was completely drunk_ (according to his own testimony. Something stinks here.

<comment><USER10> Considering he tried to lie about it by claiming he got hacked, I wouldn't put a huge amount of stock in whatever he's saying now.

</comment></comment></comment><comment><USER11> Sad of course, Damaging to Pavel no doubt, but was there any learning? This I don't know. Will this stop Pavel the next time he drinks too much with an attractive entrepreneur? Will it let Gesche simply cut off contact with folks like Pavel in the future without a second thought?

In the ideal outcome people who are making misogynistic and inappropriate comments will get marginalized and their success and influence will fade, while people who are targets are able to shun such people without hesitation experience success and acceptance. And thus purge this sort of behavior from the community.

That will take a while I think.

Given my experience of how long its taken to go from 'business as usual' to today, about 15 - 25 more years.

<comment><USER12> Pavel brash nature to send this email out is a number of indication that previous pursuits has been successful.</comment></comment>


Ask HN: How to interview for good software engineers versus good programmers? - <AUTHOR> I will try to make a distinction.
Good programmers are good at algorithms, data structures and even system design interviews.
Good software engineers get stuff done by finding the right tool for the job and piecing things together. Software engineers are great at using google to find the answer, can quickly parse documentation, can quickly evaluate tools, existing solutions and APIs. Good software engineers make good decisions and are able to use an unfamiliar API.
Algorithms tests are great, I'm not suggesting we abolish them. What is a a good way to evaluate this ability to research and use the right solution?
Any example questions you could ask?
System design questions touch on this area but do not have a research component, it's purely memory based. <comment><USER2> To me engineering is all about the skill to approach solving problems and how you go about that. Good engineers newer get stuck, unless it's a very uncommon problem they are trying to solve. Like you say, there is a space to to test whether they can code themself out of a loop, but you really want to see how they would work if they work for you - that is the point of the interview. So make sure you design your tests accordingly - this guy makes the argument and I cannot agree more [https://youtu.be/bx3--22D4E4](https://youtu.be/bx3-- 22D4E4)

</comment><comment><USER3> I think programmers focus on aspects of the program - like memory optimisation, speed, accuracy, correct data processing, storage, database optimisation, etc. Good software engineers focus on aspects of the system as a whole - like the technology with the best memory optimisation, fastest filesystem, most suitable database, etc.

Engineers look at the big picture as a whole, programmers make sure the detailed aspects of it are working in the best possible manner.

For example, a good programmer will tell you to never use nested for loops, but an engineer may go for it nevertheless, if he feels that there is not much difference in the speed and memory consumption. He will make some tradeoffs depending on different factors.

</comment><comment><USER4> Generally the engineers will get less hung up on semantics.

I'm guessing you're more of a programmer?</comment>


Xerox Alto Is Rebuilt and Reconnected by the Living Computer Museum - <AUTHOR> https://medium.com/@PaulGAllen/xerox-alto-is-rebuilt-and-reconnected-by-the-living-computer-museum-e56a7e86be91 <comment><USER2> Seeing Mazewar again brought a tear to my eye.</comment>


The only anti-establishment, communist, and socialistic anarchist CEO - <AUTHOR> http://www.craigslist.org/about/jim_buckmaster <comment><USER2> There really are some of those: <http://news.ycombinator.com/item?id=247104></comment>


Function musicForProgramming(task) {} - <AUTHOR> http://musicforprogramming.net/ <comment><USER2> This would be perfect for me, I love ambient music while doing almost any task, only 2 qualms tho. One being the high pitched beep when pausing/playing, it hurts. Second there isnt a volume slider. I keep different applications at different audio levels in the Volume Mixer, with chrome at full, making it very loud. Other than that, I love the idea!

</comment><comment><USER3> I used to use this site, it really is a curated list of ambient mixes. Definitely useful for some people.

</comment><comment><USER4> Music for programming... assuming you like ambient music.

</comment><comment><USER5> 42 and 43 hold a special place in my heart (not that I have listened to all the others)

</comment><comment><USER6> classic</comment>


Ask HN: What helped you leave your day job and start on your own? - <AUTHOR>

Question to entrepreneurs who left a day job to start their own company, what helped you make the decision? Did you already have a running business before leaving or just had an idea or left your job and started searching for something to work on? I have a few things in which I want to do, but leaving the comfort of monthly salary seems very difficult specially because job enables me to financially help my family. Does that mean I am not motivated enough and it would be idiotic to leave the job? My job doesn't motivate me to do anything challenging and is full of enterprise politics. <comment><USER2> I recently made this jump. I'm a programmer and I wanted to work on some ideas I have. It helps that I can also do some contract work to keep some money coming in. Here are the main things that helped me make the jump:

1\. Believing in myself

Almost everywhere I've worked I've never been included in important decisions and I've seen teams I'm on make poor decisions without consulting me. This is entirely because of egos. People that work for other people aren't trying to build that business, they're trying to build themselves within that business. These egos and politics got in my way far more than I could stomach anymore. I've also noticed a big difference between my enthusiasm and passion for becoming a better programmer and that of my coworkers. I hope to be able to employ other people someday and give them a great culture for building and learning.

2\. Having Money/Savings

I saved a lot of this before making the jump recently. Some people might recommend 6 months of savings, I saved enough for quite a bit longer than that and I hope I can maintain a lifestyle at least similar to what I had before. I'm married without kids but it's very important for me to not put any burden on my wife with my starting of a business. Trust me, no matter how good you feel before going into this, your head will get messed with a lot as those first few Fridays pass by and no direct deposit is hitting your bank account. It takes a few times to get over it.

3\. Desire for more Money/Savings/Freedom

The advancements that you make in wealth when working for someone else are very incremental. Maybe I'm just impatient, but I want bigger earning potential and I want it quicker. It helps that I can do some consulting to make a little bit of money while I work on the product ideas that I have.

<comment><USER3> > People that work for other people aren't trying to build that business, > they're trying to build themselves within that business.

I really like this sentence. I've been looking for a way to express this thought nicely.

</comment></comment><comment><USER4> What helped me was: 1) I had saved a year's living expenses, 2) I left my job after the end of a project, rather than in the middle, 3) I had a specific idea that I wanted to pursue, and the idea was not in the same area as my old company.

I am perhaps more risk averse than some people on HN, so I thought carefully about my plan while saving money.

I realized that when I quit, that my company might not succeed and that I may either need or want to work for someone else again. Therefore, I wanted to be able to tell to a future potential employer a story I would be proud of: "Yes, I did quit a job to start a company, but when I left my old job I showed professional responsibility by finishing my project. I'd didn't quit in the middle and I didn't quit because I didn't like working or because I hated my job, I left to do something positive and start a company doing the following carefully thought-out idea. Also, I did not steal this idea from my old company. Even though the idea did not work out perfectly, I learned a lot, and now I can be a more valuable employee to you."

<comment><AUTHOR> Thanks, that makes sense, but I might not be able to complete the project I have been assigned as it is a long term thing, but I'll be able to give the first deliverable and do a knowledge transfer. That was always the plan. My situation is like you, just need to work on #1

</comment></comment><comment><USER5> I haven't left my day job, but I've definitely struggled with the same thoughts about whether I was "flaking out" by not leaving a stable but non- challenging job.

First, you should never feel guilty about providing for your family. We glorify start-ups in silicon valley because of survivorship bias and it's silly given the realities of a person's family responsibilities. So let's get that out of the way.

Second, if you think about leaving all at once it can seem daunting. Instead, you should prepare yourself over the next years to manage the risks of starting your own business. This means understanding your family finances, saving money, setting a timeline for your business, and setting a time to call it quits and go back to a salary job to reorganize.

Make a plan, communicate with your family about your goals, and then prepare yourself to execute that plan. Good luck!

</comment><comment><USER6> If you want to dive into self-employment and it seems daunting compared to steady income, you gotta make it so that change can will be easy, then make that easy change (got that from a Twitter quote somewhere).

I'm not running a product company, I do UI consulting instead, but for me the ways I made the change easy was: saving enough money so I didn't have to worry about feast & famine times that naturally occur with freelancing, reading a bunch on running a consulting/freelancing business and letting people know that I will soon be available for work. Then when the right time came I just made the easy change.

<comment><AUTHOR> I haven't been an keen reader, but recently started reading stuff online and offline. Recently read "Rework" by Jason Fried. What good reads do you recommend for consulting/freelancing? How difficult was it to get work in initial days? Is it not very difficult to get work for someone who has no freelance projects to showcase?

<comment><USER6> Part of the "make the change easy" was making sure that I had work lined up before leaving my job. So by the time I was ready to quit, I was already jumping into projects (these projects were with people that I had worked with in my last job and started their own companies or knew very well in the local startup scene).

It is difficult to get work without a showcase of some kind, especially a designer. That's why I relied on contacts I would consider good friends as my first clients. As mentioned earlier, they either worked with me in some way or I've talked to them before about the cool stuff I was working on, but was ready to start something of my own. They didn't need to see my work, because they either seen me work or have heard me talk about this stuff at local meetups (helps that the community is small here). Though I consider myself extremely lucky to not have had done any outbound sales for my first gigs, so YMMV.

As for reading material, these are the books I went through last month specifically for consulting/freelancing + the one I'm currently reading. If you're not a designer I'd just recommend reading the last three.

\- The Designer's Guide to Freelancing ([http://nathanpowell.me/guide-to- freelancing/](http://nathanpowell.me/guide-to-freelancing/))

\- Design Is a Job ([http://www.abookapart.com/products/design-is-a- job](http://www.abookapart.com/products/design-is-a-job))

\- Double Your Freelancing Rate ([http://doubleyourfreelancing.com/](http://doubleyourfreelancing.com/))

\- Million Dollar Consulting ([http://www.amazon.com/gp/product/B002MPQ230/](http://www.amazon.com/gp/product/B002MPQ230/))

</comment></comment></comment><comment><USER7> I got fired for not disclosing a company directorship/founding.

I had little choice but to get on with a it after that.

I doubt this is the kind of path most people would want to take though! I imagine there are easier ways than sink or swim.

</comment><comment><USER8> I was deeply unhappy with working for other people and it only got less tolerable every day. Running off the cliff was the only way through; at the time it made no sense (I had little saved and no backup plan and no funding).

<comment><AUTHOR> You left just because you did not want to work for someone else? Is that a good enough reason to leave a job? At that time it didn't make sense, but how is it coming along now? More insights on what did you learn from it?

</comment></comment><comment><USER9> cash in the bank, ticking time clock with career/kids

</comment><comment><USER10> I felt the whip.</comment>


A brief introduction to XDP and eBPF - <AUTHOR> https://blogs.igalia.com/dpino/2019/01/07/a-brief-introduction-to-xdp-and-ebpf/ <comment><USER2> > I'm aware there's a lot of resources and information nowadays about eBPF, > but I feel I needed to explain it with my own words.

I guess that's as good a reason as any.</comment>


Hello Rip - <AUTHOR> http://hellorip.com/ The GitHub team (+ others) are taking a stab at a better, more general solution for Ruby library packaging than RubyGems. <comment><AUTHOR> This basically looks like an effort to clean up some of the warts of RubyGems, which have become especially painful in the era of the DVCS. GitHub has made forking of Ruby libraries easy, which is great for pace of development, but also causes rapid proliferation of many potentially-conflicting versions of libraries.

Rip looks like one reasonable approach to reclaiming some sanity out of all of that.

<comment><USER2> exactly -- reminds me of "strong named assemblies" from .net :) (but implemented elegantly w/ a canonical URL and tag/branch/version string)

it's a missing piece that has needed a solution for a while, and rip looks like an awesome approach.</comment></comment>


Ask HN: How do you stay focused while it's compiling? - <AUTHOR> Nowadays, every time I need to compile and run my code, it takes about 3 minutes to complete, before it finally starts running.
These three minutes are usually enough for me to open hackernews, reddit or some other news website, and... voilà, just lost 20 more minutes.
So...
What do you do during long compiles? Can you stay focused? <comment><USER2> This isn't a direct solution to your problem, but when I worked on a large C++ code base, I found it tremendously helpful to lean more on unit tests as a source of fast feedback for a particular code unit rather than compiling and booting the whole app for a manual test. Manual tests will still be necessary, but they should be less frequent so your long compiles will be less frequent as well.

Even less helpful for you, I recently been able to use Go more frequently, so I have no more long compile times. :p

<comment><USER3> This is true. I have seen some very effective programmers do this. They do this even when playing with a new library.

</comment></comment><comment><USER4> I'd go completely insane if it took more than a few seconds to compile something, especially as I like compiling frequently.

I remember having to work in Java codebases, and it was an absolute nightmare. Slow was the name of the game at all levels: slow to design anything, slow to write the code required, slow to navigate, slow to compile, slow to start, etc.

What are the nature of the changes you're making? Is it something you can write and debug in another (faster) language, then translate to the main language? If you were able to do it this way, then you wouldn't need as many compilations.

<comment><USER5> What language are you using now that has faster compile times with a codebase similar in size to what you worked on in Java?

<comment><USER4> It seems to be more than compile times. Something about Java, the IDE, and all the other tools/plugins/whatever make it painful to use.

The first thing that usually happens when there's a switch from Java to most other languages is a shrinking of the codebase. That is, it's not uncommon to go from 200,000 lines of code to 20-30,000.

If you still need the runtime speed Java offers, then that's one thing, otherwise, you can use some dynamically typed language like Python or Ruby. I suppose there's also Go, as many can't go without static types.

At the end of the day (especially if all compile times end up being similar), I'd prefer almost any other language over Java. Swift, Kotlin, Nim, Rust, Elixir, Crystal, Julia, D, C#, anything.

<comment><USER5> > Something about Java, the IDE, and all the other tools/plugins/whatever make > it painful to use.

That's an issue with your toolchain.

> The first thing that usually happens when there's a switch from Java to most > other languages is a shrinking of the codebase.

This is debatable and depends heavily on the langauge you're moving to. Further, even if true, it will definitely result in either a performance hit or a code complexity hit (heavy use of FP), or even both.

> I suppose there's also Go.

I haven't seen the numbers comparing compile times for equivalent Go and Java codebases, so I cannot comment on that. I'm assuming that Google's main goal with Go is to improve compile times relative to C++ and Java, which they extensively.

<comment><USER4> Not my toolchain, whatever was the case where I worked. That aside, my main point is that it was generally a slow, painful experience using Java, and it's more that I'm not entirely sure if compile times were the reason (or only reason).

For example, I continually noticed long and painful compile times, but when I mention these things elsewhere, the responses say Java actually compiles very quickly.

There can be a runtime performance hit, but that's mainly if one switches to a language like Python or Ruby. That is, many compiled languages have runtime speeds similar to Java's.

As for equivalent codebase sizes, do you mean literal lines of code, or having them provide the same functionality? I look mainly at equivalent functionality, as 1000 lines in Python can easily be doing much much more than 1000 lines in Java.

You can probably search for comparisons (of Go and Java). In the beginning, Go was indisputably faster, but apparently they've introduced certain changes in the last year or so that's resulted in slower compile times.

Even with slower compile times, it's likely Go still compiles much faster than Java, while also resulting in a smaller, more manageable codebase.

<comment><USER5> > There can be a runtime performance hit, but that's mainly if one switches to > a language like Python or Ruby. That is, many compiled languages have > runtime speeds similar to Java's.

Yes, but you won't get a 10x reduction in LOC as you claim. The point is that LOC reduction is usually not "for free".

> As for equivalent codebase sizes, do you mean literal lines of code, or > having them provide the same functionality? I look mainly at equivalent > functionality, as 1000 lines in Python can easily be doing much much more > than 1000 lines in Java.

Functionality. Of course it can, but you sacrifice performance.

> Even with slower compile times, it's likely Go still compiles much faster > than Java, while also resulting in a smaller, more manageable codebase.

From what I've seen of Go, you typically need more LOC to achieve the same task compared to Java.

<comment><USER4> A 10x reduction isn't uncommon, unless the code wasn't doing much (or wasn't very large) to begin with. Either way, the reduction is quite significant.

Where have you seen Go codebases being larger than Java's (with both providing the same amount of functionality)?

<comment><USER5> Primarily common snippets or tasks I felt were a bit verbose in Go compared to Java, or at least as verbose as Java.

> A 10x reduction isn't uncommon, unless the code wasn't doing much (or wasn't > very large) to begin with. Either way, the reduction is quite significant.

I'll shoot your question back at you: do you have any specific examples to back your claim?

I don't like Java either to be frank, but I'm defending it because I'm not convinced by your original claim, i.e., Java has long compile times and is 10x more verbose.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER6> Go look out the window. It makes you get up and walk for a bit, which isn't bad. It also is something that you're probably not going to do for 20 minutes, so you'll come back sooner.

(I say that, but I usually look at HN...)

</comment><comment><USER7> Add a loud noise to the end of compilation, like a fog horn or something. Assuming you're not writing web software and compiling locally, you could also add a command to kill your Chrome processes. If you lost a tab you really liked, you could always pull it back from your history.

<comment><USER8> one thing that worked for me was iterm and growl integration to show me a system notification on compilation completion.

<comment><USER9> I do this with PROMPT_COMMAND and notify-send.

</comment></comment></comment><comment><USER10> I always wonder about people that __need __a extreme fast feedback cycle. I mean most of the time I do things, I actually think about new code, watch a side project, discuss in gitter.

Our code's full test suite takes longer than 10 minutes and I still feel pretty productive when working at it. Actually we lint/transpile our JavaScript with Google Closure which is faster than webpack, but it still takes over 5 seconds which is more than our scala app takes in continous compile? Also I always see these cool JavaScript people, but I've never seen any real world app that still has a amazingly fast micro seconds cycle.

</comment><comment><USER11> Do 30 pushups during every compile cycle. Or any other body weight exercise.

</comment><comment><USER12> Came here and read this while 115,508 packages complied. So, no.

</comment><comment><USER13> Consider yourself lucky. Where I work it takes 20 minutes to compile the app, and another 6 minutes to start the server. I'm not kidding.

<comment><USER3> Run dude. More seriously, people who don't value your time don't value you.

</comment></comment><comment><USER14> A few years back I was compiling hardware inside an FPGA. Typical "compile" times were 2-3 hours.

I used to read a book while waiting for compiles when I was in High School.

I have test suites that take 5-20 minutes to run and I do just about everything I can to cache data to bring that time down.

I feel your pain.

</comment><comment><USER15> Or build system pops up a desktop notification when the build finishes. Fairly easy to do on Linux with dbus.

</comment><comment><USER16> My staging build takes around 8 minutes due to some bad optipng task or something, and my API only works on staging so I usually just browse HN or reddit during that time. I typically enjoy the break unless I have something urgent to deploy.

</comment><comment><USER17> I use [https://freedom.to/](https://freedom.to/) to block HN and Reddit. If I'm doing something that is very stop-and-go, I listen to a podcast or audiobook.

</comment><comment><USER18> 3 minutes is just enough time to stand up, walk around a bit, rest your eyes, stretch, and get a drink of water. That's probably what I would do.

</comment><comment><USER19> Probably easier said than done, but why not invest these 3 minutes into trying to speed up the build, or equivalently, trying to split it into smaller parts?

</comment><comment><USER20> Read only short articles that you have found during your surfing. Most articles these days only take a few mins to read and you learn while you compile!

<comment><USER15> But they have links! Interesting links!

</comment></comment><comment><USER21> I always have one of those learning sites open in a tab and try to go there when I have to wait.

At the moment it's pluralsight.com.

<comment><USER22> Seems like a lot of context switching.

</comment></comment><comment><USER23> tup</comment>


Ask HN: Competitor is giving my app 1 star reviews... what do I do? - <AUTHOR>

Hello,<p>I launched my app (https://play.google.com/store/apps/details?id=com.senstore.alice.harvard) about a year ago and it's performed very nicely, with an average review of 4.6. However in mid-december I started getting one 1 star review a day and over hte last month the average review score has dropped to 4.48 which has reduced my place in the charts. At almost the same time a new competitor arrived, and so I'm suspecting them of giving me the reviews. What should I do? <comment><USER2> Someone trying to bring you down a fraction of a decimal a day seems far less likely than some people just not being happy with your product.

2 stars legitimate?

        Lauren Bee  December 29, 2013
        Not enough info
        They give you a wide range or symptoms, but
        you can't check all the symptoms that apply to you just one
        at a time so they can't tell you exactly what's wrong they
        just describe what could, be wrong just based on one symptom.

1 star illegitimate?

        Ashley Cochren  December 29, 2013
        Poor Douse not work the way it says

<comment><AUTHOR> It's the significant change in number of poor ratings. I used to get one or two 1 star reviews per month, now it's nearly one per day. And most don't leave a comment, whereas they used to. I haven't released a new version for months, so unclear to me why else there would be a sudden change in bad reviews.

<comment><USER2> Have you been improving your app in that time?

Bad ratings may be relative to other apps improving while you idle, or focus on improving the wrong areas, or your improvements aren't helping like they should.

Are you providing a communication channel for your users outside of reviews where you can get feedback and get to the bottom of problems they have?

<comment><AUTHOR> There's a feedback section built into the app so I'm tracking those comments. I hadn't released a new app version in a while, so it's possible it's just relative to new apps... Am working on a new version now...

</comment></comment></comment></comment><comment><USER3> Many developers are complaining about an influx of 1 star reviews lately, so I doubt it's your competitor. More likely it's related to Google making the "Rate this app" box more prominent: [http://forums.makingmoneywithandroid.com/android- development...](http://forums.makingmoneywithandroid.com/android- development/3898-google-play-bad-rating-after-10th-december.html)

<comment><AUTHOR> Thanks, just the kind of information I was looking for. That looks like exactly my problem too.

</comment></comment><comment><USER4> Make sure these reviews aren't coming from Turkey, there is an alarming trend there of posting one star reviews.. Was on HN a while back I think.. [http://blog.appwared.com/awful-app-review-trend-among- turkis...](http://blog.appwared.com/awful-app-review-trend-among-turkish- users-this-is-why-your-app-gets-so-many-one-star-reviews/)

</comment><comment><AUTHOR> Update: here's the graph of rankings... anyone other suggestions for what could be causing the change? Used to steadily improve, then suddenly a change in behavior: [http://postimg.org/image/gk0t343gp/](http://postimg.org/image/gk0t343gp/)

</comment><comment><USER5> Can you prove this or are you just going on assumptions?

<comment><AUTHOR> Can't prove, but it's a very sudden change in behavior from users. Would also welcome other suggestions about what could cause this, or ideas for how to prove.

<comment><USER5> I don't see that many 1 and 2 start reviews and form the ones that i see they seem legit like: "Pointless Keeps saying no internet connection even though I have one and all other data apps work. Will only address one symptom at a time when it does work. Most conditions have multiple symptoms... " .

Some of the users have a G+ account as well which is linked to their name and those seem legit as well.

Do you see an increase in the app downloads/installs?

Edit: And yes some are just stupid reviews: "Stupid lol" .</comment></comment></comment>


Conformal Prediction: Machine Learning with Confidence Intervals - <AUTHOR> https://scottlocklin.wordpress.com/2016/12/05/predicting-with-confidence-the-best-machine-learning-idea-you-never-heard-of/ <comment><USER2> Interesting post!

A quibble:

> If you're a Bayesian, or use a model with confidence intervals baked in, you > may be in pretty good shape. But let's face it, Bayesian techniques assume > your prior is correct, and that new points are drawn from your prior. If > your prior is wrong, so are your confidence intervals, and you have no way > of knowing this.

I don't agree. Baysian models must be validated, like any model. While no validation process is exhaustive, a predictive validation process is designed to directly test the applicability of the prior to a set of results.

Furthermore, there are priors (Jeffrey's for example) that are entropy maximizing, from an information standpoint. These non-informative priors are designed to be used when an otherwise possibly misspecified prior would otherwise be introduced. It is not uncommon for reviewers to ask for results reproduced with Jeffries priors to ascertain of this is indeed the case.

<comment><AUTHOR> I said it in an awkward way. The important thing is, your CP gizmo will tell you when something has gone haywire while you're using it. Your Bayes doodad might not (other than noticing errors). In particular, some very important new point may have a bad prediction associated with it, with bad error bars: CP may be of big help here. There's an example of this in page 102-106 of the original book I think. Another good example is applying this idea to HMMs which you can read about in "Hidden Markov Models with Confidence" Giovanni Cherubin1 and Ilia Nouretdinov

I'm not throwing poo at Bayesian models, which I think are sadly neglected these days, but with CP ideas you can get more useful results. While I think CP is useful for practitioners now, the most exciting applications are in stuff like active learning, and developing novel techniques associated with this basket of ideas.

Really, my blog kind of missed the mark. I need to do more with examples.

<comment><USER3> > Really, my blog kind of missed the mark.

It'd be sad if people only published stuff once they considered it perfect. I enjoyed the post, thanks for writing.

<comment><USER2> > I enjoyed the post, thanks for writing.

Same. My quibble was just part of the discussion, not intended to imply it was a poor article.

</comment></comment></comment></comment><comment><USER4> i'm glad to see conformal prediction getting a bit more exposure. the idea is quite interesting and reasonable (in terms of the assumptions you make), and in principle the conformal transductive approach can be used to turn any standard supervised learning algorithm into one that produces some kind of conformal confidence intervals. but, as Scott writes

> Practically speaking, this kind of transductive prediction is > computationally prohibitive

I tried to use this some years ago - with the simpler ridge regression conformal approach described in the book [1] - when fitting empirical models to experimental data (low number of samples, very high cost of obtaining more samples, high dimensional space) where it seemed desirable to produce some kind of reasonable estimate of the uncertainty of the model fit without making a bunch of assumptions about the underlying relationship.

> There are a number of ad hoc ways of generating confidence intervals using > resampling methods and generating a distribution of predictions.

In practice I ended up doing something ad-hoc -- just boostrap sample and fit a bunch of decision trees, then back some kind of crude confidence interval out of the distribution of resulting predictions. I think I ended up preferring this over over a conformal regularised linear model approach because the trees seemed to be a better able to model the actual relationship than whatever simple family of linear model we were using (probably just degree 2 polynomials in the raw input values, there wasn't really enough data for the number of dimensions to support doing much else).

I've never read up on the non-transductive approaches to conformal prediction, so it'll be interesting to read up on some of the references from this post.

[1] Algorithmic learning in a random world - Vovk, Gammerman, Shafer [http://www.alrw.net/](http://www.alrw.net/)

</comment><comment><USER5> That's an interesting discussion! Having read the Vovk papers, this blog post definitely presents things much more clearly. The original papers often don't adhere to the standard definition/lemma/proof style of mathematical exposition, which makes them really hard to follow.

It's also an interesting coincidence that this story on the front page today. I'm giving a talk tomorrow at AAAI on some work that extends this theory. We show how to do uncertainty estimation (e.g. calibrated probabilities for ML classifiers) under fully adversarial assumptions (input data can be chosen by an adversary). I'll do a shameless plug and post the paper here, in case people are interested in this general topic:

[https://arxiv.org/abs/1607.03594](https://arxiv.org/abs/1607.03594)

<comment><AUTHOR> Some guys in Reddit pointed this out as a more clear presentation:

[https://people.dsv.su.se/~henke/DSWS/johansson.pdf](https://people.dsv.su.se/~henke/DSWS/johansson.pdf)</comment></comment>


Your idea is terrible. - <AUTHOR> http://kellysutton.tumblr.com/post/10164180568/your-idea-is-terrible

<comment><USER2> And those federal agents and cops are exactly why Palantir Technologies is awesome.

</comment><comment><USER3> This recent discussion in Disrupt talks about the same issue: [http://techcrunch.com/2011/09/12/max-levchin-and-peter- thiel...](http://techcrunch.com/2011/09/12/max-levchin-and-peter-thiel- innovation-in-the-world-today-is-between-dire-straits-and-dead/)

I think the low barriers to entry leads to so many social games, the next check-in app, trivial notification apps, deal aggregators, etc. Everyone thinks they can start a business these days, but in actuality, you really need domain expertise to start a successful one.

I do concede if we don't have the ability to tackle on these problems, and if the alternative is a 9-5, then maybe creating the next social game isn't such a bad idea.</comment>


ShowHN : my SxSW project = Rate My Speaker to rate SxSW speakers - <AUTHOR> http://ratemyspeaker.com/

<comment><USER2> Not seeing the benefit of this over SpeakerRate (<http://speakerrate.com>), which has been around for a year and change.

</comment><comment><USER3> Over 3000 speakers are in the database ! Exclusivity for HN: in few hours update of user's profile pages on RateMySpeaker !</comment>


What The New Patent Reform Act Means For Innovation - <AUTHOR> http://www.fastcompany.com/1779071/first-to-file-a-patently-obvious-reform

<comment><USER2> The author has the concept of a patent troll entirely backwards. The author is arguing that the trolls are people who have prior art to a patent and then come along and submarine legit patents after they have been issued. In the author's world, the victim is the patent holder who paid the money to get a patent.

In the real world, the patent trolls are the patent holders that don't actually use their patents, not the ones invalidating patents with prior art. This law only makes it worse, now the patent trolls don't even need to buy patents from legit inventors, they simply have to patent inventions before the inventors get around to it.

Before this you could keep good records of your work and be safe in the knowledge that if anyone patented your idea after you created it, you would at least have the prior art to prove you came up with it first. Now you _must_ patent it in order to be safe. A troll can come along at any time and patent your idea and screw you out of your hardwork.

If I'm an un-employed patent lawyer, why don't I just sit around reading tech news all day and patent every un-patented startup idea that comes up and sue the companies for their VC money?

<comment><USER3> >Before this you could keep good records of your work and be safe in the knowledge that if anyone patented your idea after you created it, you would at least have the prior art to prove you came up with it first. Now you must patent it in order to be safe. A troll can come along at any time and patent your idea and screw you out of your hardwork.

This is only true if you apply for the patent at a later date, without publicly releasing the invention or giving out any details. In a first-to- invent case, you would have a prior art argument if you applied for the patent after the other party. However, if you don't ever bother patenting or releasing the invention, you do not have any protections in either a first-to- file or first-to-invent system. Those rules only apply when two patents for the same invention are applied for around the same time.

If you release the invention as a product, and someone files for the patent after you released it, that is a clear prior art case, and they should lose the patent.

<comment><USER4> > If you release the invention as a product, and someone files for the patent > after you released it, that is a clear prior art case, and they should lose > the patent.

Releasing a product does not constitute prior art. The invention must be documented and you must explain its use, in a public forum. Today, most inventions play supporting roles in the background. They are rarely seen or heard or documented.

In our current system, you have some protections as you can demonstrate that you are indeed the first to invent by using your product as evidence and you can publish your work down the road, if it becomes an issue. In the new system, nobody cares. He who files first wins.

<comment><USER3> >In our current system, you have some protections as you can demonstrate that you are indeed the first to invent by using your product as evidence and you can publish your work down the road, if it becomes an issue. In the new system, nobody cares. He who files first wins.

You have protections only if you apply for a patent. You do not have those protections if you do not. That has not changed. The only thing that has changed is what is used to grant two similar patents that are submitted around the same time. In the current case, it's the nebulous "invention date". In the new system, it's whoever files first.

</comment></comment></comment></comment><comment><USER4> How very nice that they bury the horrible news toward the end of the article.

Getting a valid patent is an expensive prospect. Today, many times, small businesses innovate, use their innovation, but never file for a patent because of the prohibitive costs.

With this new law, there will be absolutely nothing to stop a large firm, a competitor, or just a random patent troll to notice your invention (which you are using) and then file a patent for it. And then, guess what? You're screwed.

IBM happy about the new law? What a shock.

<comment><USER5> First to file doesn't invalidate prior art.

<comment><USER4> For it to be prior art, the entire invention must be publicly documented and published. You must also disclose how to use it.

In other words, you must release it to the public where everybody, including your competitors, can use it as they see fit. While that's better than getting your pants sued off by a troll or a big corporation for using your own invention, it's most certainly worse than the status quo.

On top of that, the courts have a funny way of defining what is and what is not obvious. You may think the process you created and use in your company is obvious, so you never bother to document it or publicly disclose it, and then you end up in court. With zero protection. Is that what we really want?

<comment><USER6> Third parties can now submit prior art to patent applications. This is huge, it means we can help intercept and readjust before patents get granted and people get sued.

What we need now is a website tracking patent applications and assignments by companies (specifically Intellectual Ventures and their cronies) and inform the public to submit prior art for these applications and now help the patent office do a better job than it's been doing, and prevent the courts from even having to be involved.

</comment></comment></comment></comment><comment><USER7> How will this change OSS development? Do we need additional patent lawyers filing patents for every open source idea? What happens when someone makes a commit today and then mega-patent troll notices this tomorrow? They certainly will beat me to filing the patent.

<comment><USER4> It won't, as long as you clearly comment your code and explain what everything is and what it does. You should be doing that anyway for an OSS project.

</comment></comment><comment><USER8> I really hope that this decreases the amount of patent trolling there is, I think that there is nothing worse than if you were to put your hard work into something and someone else comes along and sues you for your good idea.</comment>


The Web is Slow Because of Database Queries in Loops - <AUTHOR> https://functionwhatwhat.com/the-web-is-slow-because-of-database-queries-in-loops/

<comment><USER2> The Web's simple, easily-accessible form made it great for those of us who cut our teeth writing awful-looking Geocities pages with <blink> tags and stealing images from other sites in the early and mid 90s. The syntax is more or less straightforward and easy to comprehend, the format is simple and doesn't need a compiler, and you can write your whole site in notepad if you want.

I think that that's been a blessing and a curse because, damn it, a lot of "web developers" are still stumbling onto concepts that systems developers figured out in the 1970s.

Maybe it's just the perspective that comes with age, but even I know better than to re-establish a database connection _every single loop iteration_. Isn't this pretty basic stuff? I don't pretend for an instant to be an all- star coder, but surely people have progressed beyond what 16-year-old me could have recognized.

If it's as widespread as the author claims, aren't/shouldn't things like this be taught in your basic CS courses?

<comment><USER3> > If it's as widespread as the author claims, aren't/shouldn't things like > this be taught in your basic CS courses?

Its pretty much been covered in every introductory database book/course/etc. I've seen. The problem is that application developers (and this is by no means limited to web app developers, or application developers which in other domains have limited technical skills) often feel that they don't need to understand databases, and tutorials on application-side technologies that use databases often promote bad use of databases (and, often, ORMs go even further in making bad choices the path of least resistance.)

<comment><USER4> Thankfully we are nearing the end of the era in which "object oriented" was considered to mean "superior choice" and the veils are coming off of our eyes. Similarly NoSQL has moved on from the "neat new toy" phase in to the "deconstructing the RDBMS" phase which allows us to have our cake (SQL) and eat it too (PostgreSQL hstore and JSON support).

<comment><USER3> I don't think OO has ever really been the problem with regard to databases, or even the particular C++ and Java approach to OO, nor do I think SQL engine support for document storage apporaches is a solution any more than SQL engine support for OO structures was.

The problem is developers of applications which rely on persistent data not feeling the need for a more than superficial understanding of the data storage technology they are using, which is a problem independent of programming paradigm or database paradigm or database language.

</comment></comment></comment></comment><comment><USER5> To add to this blog post (which I thought was very good, definitely informative) -- This problem is ofter exasterbated by incorrectly/inefficiently used ORMS.

Usually a combination of lazy-loading + loops, or doing things in python/ruby/etc that the SQL/whatever optimizer could have done much faster

</comment><comment><USER6> There's also approach 5: Pre-caching. 0 ms.

There are _so many things_ that could be pre-cached on most sites, and still, tools and frameworks often optimize for the use case of request -> query -> response.</comment>


The OxVent: a rapidly assembled ventilator costing under £1000 - open-source-ux https://oxvent.org/ <comment> open-source-ux Related ventilator guidance: _Rapidly manufactured ventilator system specification_

[https://www.gov.uk/government/publications/coronavirus- covid...](https://www.gov.uk/government/publications/coronavirus- covid-19-ventilator-supply-specification/rapidly-manufactured-ventilator- system-specification)</comment>


An artist is using AI to paint with his mind - <AUTHOR> https://www.washingtonpost.com/technology/2018/12/12/this-artist-is-using-ai-paint-with-his-mind/ <comment><USER2> Bizarre</comment>


How to get started with Blockchain? - <AUTHOR> Lately there are tons of articles mentioning how Blockchain is the game-changing technology and how it is going to disrupt all the industries. I don't have any prior experience with it. How to get started with blockchain technology? Looking for resources targeted towards smart contracts and creating applications on blockchain.<p>Edit: Added description for what I want to do with blockchain. <comment><USER2> I suppose it depends on what you want to get started doing. Trading bitcoin is different from writing smart contracts or mining bitcoin and those are different from creating your own coin or verifying auction bids on a distributed ledger.

<comment><AUTHOR> More interested in smart contracts and creating applications using blockchain.

<comment><USER2> Probably start at the etherium documentation and start building. Testing might require buying some ether. That will open up a rabbit hole of wallets and exchanges if you haven't gone down it already. But it's a necessary rabbit hole.

Good luck.

<comment><AUTHOR> Thanks!</comment></comment></comment></comment>