MIT releases report on its actions in the Aaron Swartz case - <AUTHOR> http://web.mit.edu/newsoffice/2013/mit-releases-swartz-report-0730.html <comment><AUTHOR> Those of us who believe MIT deserves some blame for subsequent events do so because they could have asked the prosecution to desist, as JSTOR did, or at least downgrade the charges to a misdemeanor, but chose not to. That amounted to an implicit endorsement of the prosecution, which would have been difficult to pursue without the support of either MIT or JSTOR.

The report appears to find that MIT should not have changed its neutral stance, which is disappointing, and I'm skeptical. Here's a quote (IV.B.3):

        Given the lead prosecutor's comments to MIT's outside
        counsel (see section III.C.3), MIT statements would
        seemingly have had little impact, and even risk making
        matters worse—although this information was not shared
        with Swartz's advocates.

It does reinforce what we already know: that the public prosecutor was mostly interested in collecting a scalp.

Update: Taren Stinebrickner-Kauffman, Aaron's partner at the time of his death, has released a statement. Full disclosure: Taren's a friend, Aaron was a friend, and I'm not exactly a disinterested party here.

[http://tarensk.tumblr.com/post/56881327662/mit-report-is- a-w...](http://tarensk.tumblr.com/post/56881327662/mit-report-is-a-whitewash- my-statement-in-response)

<comment><USER2> "Those of us who believe MIT deserves some blame for subsequent events"

To be clear do you mean that MIT deserves blame for the suicide?

<comment><USER3> Correct me if I'm wrong but they deserve blame for initiating the destruction of someone's life (jail time and fines in the millions) and not doing anything to stop it like JSTOR did. Yes not everyone offs themselves when their lives are ruined, but there are a lot of people who do. Now they're essentially trying to be free of any blame by releasing a CYA document during a time when everyone's attention will be on something else.

Even if Aaron was still alive, the things MIT did would be no less wrong.

<comment><USER4> > Correct me if I'm wrong but they deserve blame for initiating the > destruction of someone's life (jail time and fines in the millions)

So Aaron had nothing to do with getting himself into the situation that he did?

<comment><USER5> There exists such a thing known as a _disproportionate response_. I assumed that was the implication here. (Not that Aaron did nothing wrong, but that the response to his wrong-doing was wildly disproportionate.)

<comment><USER6> People are discussing _when_ the disproportionate response occurred. Was it calling any police at all? Was it a prosecutor offering a six-month plea bargain to a charge that likely would not have gotten Swartz any jail time at all even if guilty on all charges?

<comment><USER5> What? That wasn't what I responded to. Look at the progression of the parent comments:

        >> Correct me if I'm wrong but they deserve blame for initiating the
        >> destruction of someone's life (jail time and fines in the millions)

        > So Aaron had nothing to do with getting himself into the situation that
        > he did?

        There exists such a thing known as a disproportionate response. I assumed
        that was the implication here. (Not that Aaron did nothing wrong, but that
        the response to his wrong-doing was wildly disproportionate.)

My response is saying that nobody is claiming Aaron doesn't deserve any blame. Only that there was a disproportionate response. Just because X acted wrongly doesn't mean Y had to have acted rightly.

<comment><USER4> The question above: Is a 6 month sentence and no jail time plea bargain considered disproportionate?

<comment><USER3> That was only mentioned AFTER he died. Let's take a look at their press release: [http://www.justice.gov/usao/ma/news/2011/July/SwartzAaronPR....](http://www.justice.gov/usao/ma/news/2011/July/SwartzAaronPR.html)

"AARON SWARTZ, 24, was charged in an indictment with wire fraud, computer fraud, unlawfully obtaining information from a protected computer, and recklessly damaging a protected computer. If convicted on these charges, SWARTZ faces up to 35 years in prison, to be followed by three years of supervised release, restitution, forfeiture and a fine of up to $1 million."

Gee I wonder why someone would contemplate suicide?

<comment><USER4> Unless he had the worlds worst lawyer, he would have known that those terms are theoretical maximums which always get trotted out in the news and in press releases. This keeps getting ignored for some reason in this case.

Also there are thousands of people every year sentenced to possibly long term jail time who don't kill themselves, therefore I put the blame more on Aaron himself than MIT.

<comment><USER3> "Andy Good, Swartz's initial lawyer, is alternately sad and furious.

'The thing that galls me is that I told Heymann the kid was a suicide risk,' Good told me. 'His reaction was a standard reaction in that office, not unique to Steve. He said, 'Fine, we'll lock him up.' I'm not saying they made Aaron kill himself. Aaron might have done this anyway. I'm saying they were aware of the risk, and they were heedless.'"

"Marty Weinberg, who took the case over from Good, said he nearly negotiated a plea bargain in which Swartz would not serve any time. He said JSTOR signed off on it, but MIT would not.

'There were subsets of the MIT community who were profoundly in support of Aaron,' Weinberg said. That support did not override institutional interests."

<comment><USER4> Dropping charges because someone is at risk of hurting themselves is not a good policy law enforcement policy. The charges could proceed as normal, but extended supervision should be the proper response.

<comment><USER3> In this case, you're talking about the enforcement of keeping publicly funded research out of the public's hands. Was any of this necessary?

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> The problem with MIT's neutral stance is highlighted in the report and the one which I find particularly interesting.

        However, the report says that MIT's neutrality stance did not consider
        factors including "that the defendant was an accomplished and well-known
        contributor to Internet technology"; that the law under which he was charged
        "is a poorly drafted and questionable criminal law as applied to modern
        computing"; and that "the United States was pursuing an overtly aggressive
        prosecution." While MIT's position "may have been prudent," the report says,
        "it did not duly take into account the wider background" of policy issues
        "in which MIT people have traditionally been passionate leaders."

IMO, the MIT fraternity (particularly the faculty) should have been a bit more proactive in this regard.

<comment><USER8> Well, that kind of stuff is all over the report.

        We note that no one from MIT called the Secret Service.
        The MIT Police contacted the Cambridge detective by calling him on his individual cell phone.
        The special agent became involved because he accompanied the Cambridge detective.

Things just magically fall together. The MITs neutrality apparently extends so far that they don't even bother with what kind of police forces are strolling around on campus.

(Also note that, presumably due to their neutral stance, MIT intervened in court cases asking for the release of documents produced on Swartz and the case)

<comment><USER9> > The MITs neutrality apparently extends so far that they > don't even bother > with what kind of police forces are > strolling around on campus.

Inter-agency task forces have become common in American law enforcement since 9/11\. Many people have multiple affiliations. For example, I have a friend that is part of the New England Electronic Crimes Task Force. He's a Secret Service agent and does Secret Service details. But, he's a Boston police officer, works out of the Boston police headquarters, and overall is the exact same as any other Boston cop except where the funding line that allows Boston PD to cover his pay check comes from.

<comment><USER10> > _Inter-agency task forces have become common in American law enforcement > since 9 /11._

Still, you call for a Cambridge detective, the Secret Service also shows up, and that doesn't cause major head scratching? I wish the summary had expanded on that part.

FD: I'm an alum.

Edit: From the report:

 _For the same reasons, the MIT Police sought forensic assistance from a detective in the Cambridge Police Department who had expertise in computer crime and with whom they had worked repeatedly in the past. The Cambridge detective, who was a member of the New England Electronic Crimes Task Force, responded to the call, accompanied by an agent of the U.S. Secret Service. While the inclusion of the Secret Service agent was not the intention of MIT, it was a recognized possibility. It was not until a few days later, when Aaron Swartz was arrested, that MIT learned the identity of the person involved in the JSTOR downloading. Thus, we find that MIT did not focus on Aaron Swartz at any time during its own investigation of the events that led to his arrest, and that MIT did not intentionally "call in the feds" to take over the investigation._

So it wasn't MIT's intention to "hand it over to the feds" but it was indeed a recognized possibility that the feds would get involved when the request was made.

The summary would be improved if that were included.

<comment><USER11> No, it doesn't cause head scratching. You called the police because you need computer forensics expertise while investigating a crime. The local cops show up with extra computer forensics experts who are also law enforcement. Not a big deal.

<comment><USER12> Calling in a computer forensics team is already over the top, far beyond what was needed in this case.

</comment></comment></comment></comment></comment></comment><comment><USER13> Direct link to the report, good summary starts on page 13: [http://swartz- report.mit.edu/docs/report-to-the-president.pd...](http://swartz- report.mit.edu/docs/report-to-the-president.pdf).

My very general impression from reading the "key findings" is that the report seems to me to invoke naiveté, an image academic institutions very carefully cultivate. But for the institution as a whole, that's pretense. MIT is a big business, a multi-billion business, and invoking naiveté on its part is wholly disingenuous. And ultimately that's the problem with this report. It's written by a professor, and you can't fault him for invoking that academic naiveté in good faith. Administrative officials assiduously avoid exposing faculty to the dirty realities of the machines that are modern academic institutions. Had the report been issued by the Office of the President itself, the conclusions would have rung hollow and rightly so.

</comment><comment><USER14> My TLDR on this is that it all basically went haywire when MIT IS&T decided to call MIT Police for a machine downloading content on their network. They screwed up in many ways after that, but once someone unleashed a politically ambitious US Attorney on the case, it was kind of a lost cause.

I don't believe universities should have police departments (or really that any private organizations should have police departments, or even quasi- government organizations like transit agencies). University police essentially exist to cover up rapes on campus. In general they're underresourced and get used in a weird "quasi insider" role.

I don't think a competent IS&T would have gone directly to the _Cambridge_ police if there were no MIT police. The "oh no, China!" thing is BS; traffic analysis would show that the china logins were (presumably) ssh portscans and not real connections. Basic network monitoring would show that this was just a badly written scraper and not anything more malicious. Odds would be that it was a MIT student scraping, and calling the cops on a MIT student for scraping a resource like that would have been bogus, too.

I love how MIT tries to pin blame on their budgetary cutbacks and staff furloughs, too.

I also think aaronsw was a moron in several ways (not rate limiting, not treating the box as a throwaway encrypted box, general behavior, and ultimately killing himself), but I'm more willing to cut a 24 year old slack than a multi-billion dollar endowment university which claims to be at the forefront of science.

Today I'm kind of sad I dropped out of MIT to do a startup, because it means I can't burn my diploma and promise to never donate to MIT. Oh well.

<comment><USER2> "University police essentially exist to cover up rapes on campus."

Oh come on what kind of statement is that to make?

<comment><USER14> A factual one, which has been widely reported over the years.

Universities pay for their own police. The goal of the university is to avoid incidents which would deter parents from sending their children to the school. Rape, particularly date rape/incidents involving alcohol are quite common on campus, if only due to demographics (young, socially connected, etc.)

There are three ways to solve it -- either actually addressing the underlying issues, or full prosecution of every incident, or sweeping it under the rug to the extent possible.

#1 is obviously ideal, but difficult. #2 would end up with both scary stats and large numbers of other students with felony convictions. #3 is the standard university police outcome.

[http://www.huffingtonpost.com/bennett-l-gershman/campus- cult...](http://www.huffingtonpost.com/bennett-l-gershman/campus-culture- complacency_b_1095510.html) is one article.

Anyone who is a victim of a serious crime in a place with "internal" police should almost certainly report directly to the territorial police instead, or at least in addition to, since they have much fewer conflicts of interest, and probably more expertise in dealing with serious crimes.

("Real" police departments are also (theoretically) much more accountable to voters and the public, too. This is particularly an issue with weird transit or internal-to-agency police like the BART Police (who are tied with East Palo Alto PD as the worst department in the region).)

<comment><USER2> Interesting. So you are saying it has to do with essentially restricting or retarding the flow of information that could be harmful to the University.

Then I would expect over time with the Internet that that would not be as effective as it was in years past before the Internet.

Do we have any data on how this has changed now that anyone can broadcast anything and get attention? I would expect that if the primary reason for existence of the police force was to control the information flow as I think you suggest (which it could do quite easily pre internet) that we should see much more of this negative information has come out because it has a path.

Has that been the case? (Serious question).

<comment><USER14> Good question. I think it's more about having alternatives to official reporting channels so the stuff never actually gets reported, vs. hiding reports. But, we've seen citizen cameras as a huge force to accountability in cases of police abuse, too (Rodney King for a city PD; BART and Toronto for transit police, various people who came forward at Penn State after the Sandusky stuff blew the issue up there). So it seems plausible.

I'm not saying the only thing the police do is hide rapes, it's that their essential differentiation vs. other LEOs would be to protect their employers from embarrassment which would be detrimental to the organization's mission, which rape would be. So the reason it exists as a distinct force is that, whereas they still spend a large percentage of their effort in duties totally in common with a city police force.

<comment><USER15> Really, leveling such an accusation at the university police is trying to deal with a symptom. Abolishing university police forces won't cause rape instances to decline appreciably, but it _will_ accelerate the implosion of higher education as a whole. Precisely for the reasons you stated.

Perhaps it would be better to look for a solution where universities are less motivated to compete for student head count, so that their police forces are less motivated to cover up incidents that would reduce it.

</comment></comment></comment></comment></comment></comment><comment><USER16> The number of people in this comment thread who have not read this report in detail is outstandingly large. It is a 100+ page document and I've been reading it for longer than this link has been active and I still haven't finished reviewing finely enough to comment intelligently on the contents.

<comment><USER16> Update: Still on Part III. I am amazed that people are posting like they have gotten through it all.

<comment><USER16> Finally read all the the text and most appendices (skipped the definition of terms at the end). Overall I think that this report is very long but unfortunately difficult to process. In the end it, in compliance with its charge, does not propose recommendations but merely provides statements of facts, and identifies critical questions.

The overall opinion I'm left with is that the legal system is incredibly complex, and that MIT's decision to take a position of neutrality and active disinterest in the case while a defensible position made it harder for the administration and others to act. In the end MIT did not identify an outcome it wanted for the process, which is _okay_ but far from world leading, or inspiring. I agree with the sentiment of the report in the conclusion that " Looking back on the Aaron Swartz case, the world didn't see leadership. As one person involved in the decisions put it: "MIT didn't do anything wrong; but we didn't do ourselves proud. "

</comment></comment></comment><comment><USER17> This report is necessarily missing important information: MIT is still intervening in a Wired reporter's FOIA request. You don't bother to block an information release unless something important would be released; that doesn't pass the smell test.

Here's a statement from Swartz's partner: [http://tarensk.tumblr.com/post/56881327662/mit-report-is- a-w...](http://tarensk.tumblr.com/post/56881327662/mit-report-is-a-whitewash- my-statement-in-response)

<comment><USER17> I have no reason to believe the authors aren't honest people who worked hard and firmly believe what they wrote, BTW.

But they're _also_ members of the MIT community, and Abelson at least is a professor first and investigator second; that's going to affect the investigation process and conclusion.

That's why when there are big investigations in government, they often go hire an outsider as inspector general or independent counsel; there's no substitute for independence, complete access, and an investigator's skills and mindset.

<comment><USER16> Andrew Grosso.

</comment></comment></comment><comment><USER14> Interesting dropping this 2h before the PFC Manning verdict, and during the week of hacker conferences.

<comment><USER18> This is more coincidence than conspiracy. People look for patterns where they do not exist.

<comment><USER3> It's relatively easy to delay the release of MIT's findings, even when they became aware late in the cycle.

Let's also remember that MIT has filed an objection to the Freedom of Information Act requests.

There's just too many coincidences to belittle it as "conspiracy theory".

</comment></comment></comment><comment><USER19> Direct link to report: [http://swartz-report.mit.edu/](http://swartz- report.mit.edu/)

</comment><comment><USER20> > _" In a letter to the MIT community announcing the release of the report, > Reif wrote, "The review panel's careful account provides something we have > not had until now: an independent description of the actual events at MIT > and of MIT's decisions in the context of what MIT knew as the events > unfolded."_

How is this an "independent" report when three of the five people named as leaders of the investigative committee work for MIT?

> _" Compilation of the report, "MIT and the Prosecution of Aaron Swartz," was > led by Hal Abelson, the Class of 1922 Professor of Computer Science and > Engineering, at the request of MIT President L. Rafael Reif in January. In > conducting his review, Abelson was joined by MIT economist and Institute > Professor emeritus Peter Diamond; attorney Andrew Grosso, a former assistant > U.S. attorney; and MIT assistant provost for administration Douglas > Pfeiffer"_

</comment><comment><USER21> So why are they trying to stop the FOIA request if they did nothing wrong, as they claim?

<comment><USER22> They aren't trying to stop the FOIA request. They are intervenening to review it.

</comment></comment><comment><USER23> I undertsand that universities can take a neutral stance when it comes to politics. But this was not a political issue. I have examined the report and I think it's sincere (dare I say it spoke to me a vibe that says "People please! There was not much we could have done!"), but certainly does not make up for what MIT had not done in my view. This of course, is solely my idea. And it's that MIT should have stated, the moment the case has been filed, "We understand if there are any repercussions stemming from any violation of license agreements between JSTOR and MIT, however, it is unfathomable that a federal prosecution demanding years of incarceration has begun from making available to public a massive piece of random information, which was intended to be 'publicized' in the first place. With utmost respect to legal authorities, we as MIT do not wish that this prosecution move forward."

I feel relieved.

</comment><comment><USER24> Wow I didn't expect them to lie so openly. As someone who was completely let down by their "elite" university, it's hard to understand what it feels like to be an MIT student these days.

</comment><comment><USER25> That's a lot of hand-washing.

</comment><comment><USER26> Absurd. Typical, gutless reaction we have now come to expect from large corporations/institutions. I would be absolutely shocked if MIT had dug their heels in that nothing about this situation would have changed.

</comment><comment><USER27> I did not follow this case when it broke, so do guys know what Aaron planned on doing with all that JSTOR material he was downloading? (~80% of JSTOR, according to one article I read)

<comment><USER12> It is not clear. The prosecution claims that his goal was to distribute the articles freely to the world (yes, the terrible crime of using university resources to spread knowledge), but that is just a hypothesis based on statements he made years ago.

<comment><USER28> Maybe he should have asked. Or gone about it in a legal way.

Breaking the law, is breaking the law. However noble your intent.

</comment></comment></comment><comment><USER29> He was ostensibly trying to do this to enable analysis of the archives. I think if he explained that to a librarian, they may very well have tried to help him.

Librarians want to help people.

</comment><comment><USER30> > "MIT didn't do anything wrong; but we didn't do ourselves proud."

It'll be a great shame if MIT is ok with this "not proud", and stops doing more on this case.</comment>


Help me test an astrological theory: need data - <AUTHOR> Learning Vedic Astrology is one of my covid activities at home. I would like to be able to test astrological theories. We need massive data sets. How do I go about this?
Example: one theory says that the significations of the sixth house and the planet in it from natal moon placement would indicate that the native carries 'pending karma' from a past lifetime. And in their 22.5 year, they would have shed tears about it. And when that emotion has been expressed, the karma gets cancelled. (I don't know why it's only tears, but it's very specific).
I tested this with five people and their charts..and it was remarkably accurate. But that's too small a sample set. I would like to be able to reference this with thousands and thousands of charts. I can't stop studying astrology now.
Could predictive astrology be a hack to a future machine? What if we are all living in someone's simulation and astrology is the hack and/or manual? <comment><USER2> Pet peeve: "Vedic Astrology" isn't Vedic. The Vedanga Jyotisha of Lagadhacharya is only concerned with the calendar and fixing the times of rituals. This system was abandoned in favor of the five siddhantas which form the basis of contemporary jyotisha and show Greek (or more perhaps Babylonian) influence.

Anyway, even leaving aside scientific views from a philosophical point of view I don't see how this kind of prediction could work. There are an infinite regression of past lives. How can you know in which life which karma happened and in which life it got cancelled?

<comment><AUTHOR> It doesn't matter to me. I am reading original Sanskrit texts and Brighu Samhita and some KP padhathi. Parashara and Jaimini. So I am calling it Vedic astrology.

Re your second point. I don't know how it would work either and that's what I want to find out. Predictive AI might seem like God but we know it's numbers. It is not scientific to discard something before it's tested.

If I were to write a sci fi short about it...i would say that it seems like some kind of source code or predictive AI machine. Or someone outside of what we consider our reality is running a simulation. But this isn't fiction. It has centuries of practical and real life application. It's worth looking into it.</comment></comment>


Show HN: gridvisual – search and visualize EU data (D3.js) - <AUTHOR> http://www.gridvisual.com

<comment><USER2> Really cool! A few suggestions:

\- It'd be handy to highlight search terms and maybe sort by some relevance measure

\- For example in this graph:

[http://www.gridvisual.com/datasets/unemployment-rate-by- sex-...](http://www.gridvisual.com/datasets/unemployment-rate-by-sex- eurostat?q=unemployment)

It'd be handy to be able to see both sexes as different lines on one graph. If I scroll down enough to the widget that switches between male-female-total, I can't see the graph anymore which makes it difficult to compare data across facets. There's an interesting tradeoff here of putting the controls on the side for easy access but then having to make the graph smaller.

I like the idea of the subscribe feature.

In any case, good stuff! Is this raw d3?

<comment><AUTHOR> All very good suggestions, they will help prioritize what to do next!

Yes, charts only use d3. By now the charting code has become a small d3-based js charting library.

Before I continue working on this I'm trying to understand who the potential users are and how they would use software like this. Thx for your comment.</comment></comment>


Java: Execution in the Kingdom of Nouns  - <AUTHOR> http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of-nouns.html <comment><USER2> I will agree that Java encourages some poor modeling around nouns, moreso than many other OO languages. That being said, most of us have "been there done that" with Java and current best practices do not encourage what Yegge fears. I do wish that we had more first-class language support for functions, however, as several lines of boilerplate to achieve them is straight up insanity.

</comment><comment><USER3> If you're at least 25 and you weren't reading Yegge in 2006, it's time to seriously examine your priorities. ;)

</comment><comment><USER4> (2006), please.

<comment><USER5> Which would be a relevant point if the Java language had changed since 1994, 1958 called it wants it's lack of closures back.

<comment><USER6> Java 8....we can always hope.

<comment><USER7> C# 3 had lambdas with closures. It's only three and half years old now. What kept you?

</comment></comment></comment></comment><comment><USER8> Most startups that deal with large data processing eventually becomes a Java shop one day. Get over yourself with the whole language war.

<comment><USER9> (disclaimer: I'm currently a Java web developer)

If startups choose Java for performance reasons, which I believe was your point, couldn't they instead focus on alternative JVM languages, such as Clojure / Scala?

With these languages, you get the best of both worlds. You can use a more "powerful" language, while keeping the benefits of the JVM (performance, portability, tooling). And you can very easily use Java libraries (Lucene, Hadoop...) if needed.

Jython and JRuby also look interesting. And JDK7 will bring invokedynamic (JVM instruction to better support dynamically typed languages).

<comment><USER8> Start-ups use non-Java for their main apps. But the other "infrastructure" stuffs that they developed after 5 years of existence usually required Java somewhere.

Hadoop, HBase, Hive Cassandra, JMS are all Java solutions.

Maybe it's for performance, maybe just because Java has more libraries for that particular domain.

Google (pre-dominantly Java), Amazon (Java shop), ITA (they also use Java EE to my knowledge), Facebook (HBase, Hadoop, Hive, and maybe even haystack?), Zynga, Flickr (small part of back-end), Twitter (back-end stuffs), LinkedIN (Java shop), Last.FM (back-end stuffs), PowerSet (they came up with Hadoop)?

I don't know why Twitter uses Scala for some part of their systems when eventually they need to write some Java code (and probably make that Scala code talk to Java infrastructure). If you're not writing bajjilion code for that particular portion of your systems, I don't see why you need to have both. Just pick one. Perhaps they have other reasons (personal or not).</comment></comment></comment>


Marketing for Hackers: Turn your weekend project into paying customers. - <AUTHOR> http://marketingforhackers.com/

<comment><USER2> Seemingly sketchy pdf hosted on some download site with cheesy ads and popups...</comment>


Does JavaScript Software Embrace Classes? [pdf] - <AUTHOR> http://aserg-ufmg.github.io/2015_saner.pdf <comment><USER2> My bet? Because classes does not deliver things that are promised - encapsulation.

</comment><comment><USER3> This is the first time a research paper has ever called me classless, and boy am I proud. #semantic-ui

</comment><comment><USER4> Good to see researchers of my hometown talking about js in hw. :)</comment>


Trump Refuses to Release Birth Certificate - <AUTHOR> http://www.theguardian.com/us-news/2015/jun/26/donald-trump-refuses-release-birth-certificate-passport-records <comment><USER2> Why should he? Obama refused and he's president, so it's obviously not a requirement for the job. It's a smart strategy: You never give up more than you have to.

Hell, we don't even need ID to vote.

<comment><USER3> If he wants any shred of credibility he should. If his supporters want any shred of credibility they should demand it too.

<comment><USER4> What supporters does Donald Trump have? For that matter, what shred of credibility? It would be interesting to know whether how far he is aware that he is a sideshow act--he could be fully aware, and just regard it as publicity.</comment></comment></comment>


Ask HN: How good are freelance programming sites? - <AUTHOR> Does anyone have any particularly good/bad experiences to share about using freelance programming sites like elance, rentacoder, scriptlance, odesk, guru.com, etc?
Would you recommend using them?  Does any freelancing site stand out from the rest or are they all pretty much the same?
I've heard horror stories about people not getting paid, projects never getting finished, etc.. how representative are they?
Scanning through the listings on some of the sites, it seems a lot of ads are looking people with many years experience and a buzzword-compliant resume to work for them for next to nothing.  Are there some good jobs to be had through these sites, or are they pretty much a waste of time? <comment><USER3> I've had great luck with rentacoder, and have only good things to say about the site itself and the controls and mechanisms it has in place to help ensure the process goes smoothly (ratings, on-site communication so there's a paper trail, escrow, etc.).

However, there are caveats:

1) Best used with very small, very well-defined jobs.

2) You must put in a fair amount of careful work to specify what you want done, in a way that leaves no room for interpretation.

3) Best used with low-risk (experimental / proof-of-concept) type projects.

4) Don't bet your company on getting good quality. You'll usually get something usable, but it often won't be exemplary code.

If "usually get something usable" sounds scary, see point #3.

5) Don't expect to save yourself time. Instead you spend the same amount of time as you would have spent _had you already known how to do what needed to be done_ but you instead spend the time on communication, and you get your job done by someone who knows how to do it.

A corollary to #5 is for some small jobs, you might be able to learn how to do the task and then do it yourself, all in the same amount of time you spent directing the freelancer.

So why do it at all? Because of #6:

6) Using such a service can move an item off your to-do list, because having a person at the other end of a job bid (and having your reputation on the site as a buyer on the line) you get forced to finish the item. So effectively it's an anti-procrastination tool.

This is my experience, which is biased toward small jobs. But then, I wouldn't use one of these sites for a big job.

<comment><USER4> Good tips. I must add that I would not count on them knowing what they are doing. They may get you something usable but it usually won't be good practices. See the comment above about unfiltered SQL statements in the GET requests. If you don't know why that is a bad thing then when you get the code back from the people and it has this type of huge security error you will not know what to look for.

That being said I think there is a fair bit of work that can be safely outsourced to these people without too much fear of security. PSD to HTML slicing, etc.... But the old adage applies that you get what you pay for.

</comment></comment><comment><USER5> My vote: complete waste of time. I experimented very briefly with rentacoder before giving up on the idea of sites like this altogether. My experiences with services like this (and to a lesser extent craigslist) have been unpleasant to say the least. These days I only take on gigs that come to me through my network and even then I'm careful to vet potential clients before accepting a gig.

<comment><AUTHOR> How do you vet your clients?

<comment><USER6> Next to simply being familiar with the marketplace and being able to tap informed individuals within it to learn about a potential client, LinkedIn is a GREAT way to vet clients. Networking in various forms is the best way not only to promote yourself, but to build a body of knowledge and a network of knowledgeable individuals who can help you to make determinations in these situations.

There are also various signs you become familiar with during the pre- sale/sales process. They shouldn't be completely inflexible. They should be willing and able to pay a reasonable deposit, or open to an early-payment discount mechanism that ensures you are pre-paid.

People skills. Networking.

</comment></comment></comment><comment><USER7> I've used it for small web coding projects and had decent luck.

I always lay out the items which need to be completed with excessive specificity. That's the stage where I've seen a lot of people get let down, disparity in the expectations due to assumptions from each party involved. Never had any issues with payment, either.

If you're very plain and up front things will work out. Make sure you ask any questions so everybody understands what they need and what they're getting prior to any work or payment being completed.

</comment><comment><USER8> From a buyer's point of view: odesk.com and elance.com are pretty good. All the others - not so much.

As a service provider - you will always get paid a bit less though - <USER2> of the real time competitive bids. When 15 coders bid for the same project, no matter how skilled you are - you will have to make competitively priced bids to win the projects.

</comment><comment><USER9> I have been using RentaCoder for about 2 years now and find it pretty good. Once you establish a reputation, its upto you to pick up projects that are interesting and there are many prototype projects. Gives you an opportunity to try out new technologies that you may never do otherwise.

But as I get more experience on the site, I stopped bidding for low bid projects as the back and forth between buyer and seller takes a lot of time (for e.g. some sellers expect that you do a prototype before accepting the bid) and it does not work out for the amount bid for.

As for payment, Ive never had an issue with RentaCoder, Ive tried both snail mail and PayPal and they both have been fantastic.

My experience has been this: I only work for 2 or 3 clients now on Rentacoder because that takes all the time I have. They have been repeat buyers for me and keep giving more projects as I finish the current ones.

</comment><comment><USER10> "Getting the best out of Freelancing Site" could be a decent selling book.

<comment><USER11> Is this area too fast moving for a "book"?

Perhaps a newsletter might be a better bet?

</comment></comment><comment><USER12> It looks more like you're asking from a providers point of view... I'm usually a buyer so I'll tell you about my experiences as a buyer:

I've been working with numerous freelancers for quite a while. It took me a long time to figure out how to choose my freelancers and I've had several failures along the way. The first things I outsourced were website PSD to HTML conversion ("slicing") and php scripts. These projects were usually somewhere between 50$ and 200$. While I did check their references and their ratings, I always tried to take one the cheapest providers. The projects grew and my average project size currently is 1000$, with the smallest ones still 100$ and the bigger ones 15k USD. I have changed my criteria since then and now look for the following things:

1\. If you need a special skill (i.e. I once had a project that involved a lot of work with the google maps api): I most often search these sites my self and usually invite only the people that actually have that skill mentioned on their profile page. That way you can be sure that they actually know what they're doing and that they don't have to learn it while working for you.

2\. Average hourly wage & price is the most reliable predictor about the quality. Usually providers will try to be as cheap as possible, providers who have enough work and who are confident enough that their work is really valuable however won't play this game and usually charge more per hour. I usually pick developers who charge more than the average.

3\. It may look like you'll get a great deal but most of the time you won't. If someone is bidding 200$ on a project that even a non techie like you can say that the project won't be just a 3hour job but weeks of work, then don't pick this bidder. Most of the developers quickly loose their motivation to do anything after they have exceeded their own budget for this project, start to do sloppy work, or argue about not implementing required features.

4\. Don't trust the ratings. There are some providers that go out of their way to get good ratings even after they screwed up big time. I've had people begging me not to give them bad ratings even offering me a refund. When looking at their ratings the valuable information is usually in the buyers comments not in the 5-star "grades"

5\. Always check the code they're writing. I've had freelancers who screwed up you couldn't even imagine. Like putting and SQL query into a GET variable and then execute it on the server unfiltered.

This is when buying from one of these sites. By now I more or less figured it out but especially in the beginning I burnt my fingers quite a few times when working with freelancers. It's something that takes time to master.

I agree with ankeshk, I've had the best experience with odesk because their workforce is better qualified and the hourly billing is ok for me. I also oftentimes use elance for some projects.

Another helpful tip: I was working on a project where I needed a twisted proxy to translate something for me. I started reading the documentation of twisted and after a few minutes I decided that I'll try my luck in their IRC chat. I went in there and basically just said: I need some help with twisted, would anyone be interested in a small half day project and earn a few bucks? and worked with the first guy to answer in the chat. It worked out quite well.

I've also hired people from djangogigs.com and it worked out ok however you have to watch out that these people really are freelancers that want to do freelancing, I've worked with a few who said after a couple of weeks that they couldn't do it after all because they don't have enough time after their normal workday to do freelancing.

There are outsourcing companies like Itteco.com and x-minds.org which I can really recommend for bigger projects and longer lasting partnerships. I have worked with both of them, I don't know all of their developers but they certainly have good developers. If you decide to work with a bigger company I would usually only do that with a personal introduction and/or careful due diligence.

Generally speaking: if you're looking for freelancers, ask people in your network, if they know good freelancers that's the best way to find them.

</comment><comment><USER13> I have worked through Guru.com and enjoy it. The web site provides a lot of nice tools, including escrow payments, work rooms, and private message boards. You pay for it though -- around 7% fees on each project.

The one complaint is that you have to lower your rates substantially at the start until you build up return clients. At the point, they like your work and give you private projects.

</comment><comment><USER14> check out lancemonster.com. It's a new freelance site but it's really easy to use. I used them already. its free to join, bid, and post projects. Great site!

</comment><comment><USER6> Independent tech consultant here. I did a healthy five figures in part-time indie consulting in 2008. I went fulltime indie in June 2009, and in that last half-ish of the year, did more in Twitter-related work in '09 than all work in '08, and billed something like 200-250% total in '09 over '08.

I've subscribed to various freelance sites for years (since 01 or so) ... guru.com, elance, rentacoder ... I've never once landed work off of any of those sites. You have to spend too much time competing with:

a) cheap offshorers b) cheap "clients" uneducated in project management/software development and are therefore unwilling to pay appropriately for it c) noise, noise, noise d) general wage pressure of the "marketplace"

... to make it worthwhile. Some people who got in and got big early on made their reputations there, but individuals on these sites tend to top out at maybe 40k/year -- and those are rare. The only people making any greater money on them tend to be people who have turned around and co-opted teams of other developers via the site.

You're better off networking, both online and in-person. Make sure you have a solid skillset and a unique value or unique sales proposition. Focus in one area to begin with -- new consultants who try to generalize too soon tend to fail before they have a safety net of money or reputation. Once you're really, really good at something, consider branching out.

Attend and present at local and regional user groups and unconferences. Offer webinars and seminars. Maintain a regularly-updated blog and newsletter that focuses on that initial niche. Write (useful, not overly markety) whitepapers. Join your local Chamber of Commerce. Attend relevant Meetup.com meetups; start relevant meetups. Check out your local SBA office. Always carry a business card, and manage your personal brand and reputation -- it's your finest and most valuable tool.

All of these things are far more worthy uses of your time than piddling it away on noisy, garbage-filled, flake-filled "freelance marketplaces."</comment>


Servo: Building a Parallel Browser [video] - <AUTHOR> https://www.youtube.com/watch?v=7q9vIMXSTzc <comment><USER2> I was at this presentation. Before the recording started, he said that the volatility of the Rust standard and its library really inhibited productivity.

He said something along the lines of: "By the time we update the codebase for a syntax update, there would be a library API change and vice versa."

I recommend checking out the rest of the LCA2015 talks; very informative if they apply to your area, IMHO. Dave Chinner's talk about how important "knowledge transfer between humans" was to kernel development and software engineering in general resonated strongly with me.

<comment><USER3> Well, Rust is now at 1.0.0 alpha, which means that the language has almost all of the planned breaking changes implemented (there are still a few corners where there are a few breaking changes planned, but in things that are minor enough to be unlikely to break much code).

The standard library is still in rapid iteration mode in the preparation for 1.0.0 beta, and thus large portions of it are marked unstable and so only available if you opt-in via a feature gate, but the plan is to stabilize that through the alpha and beta period and have a usable, stable standard library at 1.0.0, which is planned to come out within a few 6-week release cycles from now. And things which are not ready, or not really appropriate for a core standard library, are being moved out into separate Cargo crates that can iterate independently from the core language.

So yes, Rust has been iterating rapidly on the road to 1.0, which makes keeping up with the treadmill painful, but it's finally settling down; very soon you should be able to use it without constant breaking changes.

<comment><USER4> > in things that are minor enough to be unlikely to break much code).

As much as I want this to be true, it's not. `io` is one of those libraries. That's going to break a lot of stuff, probably.

Beta is the 'your code will almost absolutely not break' release.

<comment><USER3> Sorry, tried to make that distinction by saying that the _language_ has very few breaking changes left, and those that are left are expected to be minor, but the _standard library_ is still in rapid iteration mode and is expected to break a lot.

</comment></comment></comment></comment><comment><USER5> I keep hearing about Servo (and compiling it every now and again), but I really don't know - is Servo meant to eventually, maybe replace Gecko? Or is it/will it always be just a Rust playground?

It seems like it could seal Rust as a player if Servo became "A Thing" for real. What's the plan?

<comment><USER6> I believe they've already said that it will replace Gecko on Android and in Firefox OS (this year). It's 2x faster than Gecko on a single core and 3x faster on four cores.

If it's really that good (and so much safer, as Firefox tends to be the browser with the most vulnerabilities) then it would be crazy for them not to build it into a full browser eventually. Microsoft is doing it, so they should do it as well.

Maybe with a new browser they can make Electrolysis be much more optimized as well. I think the main reason it takes them so long to get multi-process to work is because they have to optimize _around_ Firefox's quirks, and I'm worried it still won't end up as safe or as quick as Chrome's multi-process system, which was built for Chrome from day one. In a new browser it might work much better.

<comment><USER7> Not quite, and certainly not this year. We've said that we want to release an alpha version of something powered by Servo on Android this year; the Firefox OS work is just another good way to show viability of our ideas - it would be a huge feat of engineering to get it ready to ship on devices under the Firefox OS banner.

</comment></comment></comment><comment><USER8> > 34 security vulnerabilities in WebAudio due to use-after-free and out-of- > bounds errors

This is what happens to any language that builds on C's compatibility.

<comment><USER9> out-of-bound errors happen in other languages as well. use-after-free happens in almost every language that is not gc'ed.

<comment><USER8> > out-of-bound errors happen in other languages as well.

In sane languages an out-of-bounds error causes program termination, unless it was disabled on purpose (assuming it can be disabled). In C anything goes.

An out of bounds can cause the program to be injured, but not die, and eventually have some kind of inconsistent state.

> use-after-free happens in almost every language that is not gc'ed.

Yes, true if we are speaking about Modula-2 or Extended Pascal dialects. The most notable alternatives to C with manual memory management.

Everything else has at very least reference counting support.

<comment><USER9> Reference counting does not avoid using something after freeing it...

<comment><USER8> Then the reference counting is not properly implemented, otherwise reference count would be greater than zero.

<comment><USER9>
        object = create_object() // RC 1
        object.release() // RC 0 => will be released
        // ...
        object.doSomething() // Used after object was released

    ?

<comment><USER10> I think parent means reference counting built into the language (like Python)

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> I was looking at Servo some time ago for more general Rust GUI framework but then the event-system was still incomplete, iirc you couldn't use Rust code directly as handler for DOM events. What is the situation today?

<comment><USER7> No different. Once we're able to run browser.html [1], using it as a GUI for other things will be a more realistic proposition.

[1] [https://github.com/mozilla/browser.html/](https://github.com/mozilla/browser.html/)</comment></comment>


XPS 17 9700 Laptop 17-inch Display in a 15-inch Body - <AUTHOR> https://www.dell.com/en-us/shop/cty/pdp/spd/xps-17-9700-laptop#carousel-example-with-caption <comment><AUTHOR> Dave Lee reviewed a sample of this device here: [https://www.youtube.com/watch?v=XyRUWM_LOPQ](https://www.youtube.com/watch?v=XyRUWM_LOPQ)

</comment><comment><USER2> Very cool looking, but the marketing is a bit misleading because I feel like you'd have to go back 10 years to find a 15" laptop that big.</comment>


The Trick - <AUTHOR> https://www.reddit.com/r/talesfromtechsupport/comments/hrn8ih/the_trick/ <comment><USER2> Was not a fan. Basically reads as--I could not get on the same page as the client, my boss was useless in helping with these interactions (but... is the "best boss ever"), so they took me off the project, and a jaded / more experienced developer told me that he'd lost his passion for the work, so apathy must be the solution to communication issues.

<comment><USER3> Same, it seemed like the story was building up to something and then ends abruptly with that quip.

I think at some point, the average poster on that subreddit started posting longer and longer stories rather than just humorous short ones, and that's when it became less enjoyable to read. There are folks who post stories with "chapters" that become wildly popular, but they're always very light in substance. I don't see the appeal.

</comment></comment><comment><USER4> Every enterprise project ever. If you don't set personal boundaries at the outset, that client is just going to ride you until you drop. Consider what people who don't make things actually do for a living. They "manage" dynamics, which means you have a black box with inputs and outputs, and your job is to constantly tweak and regulate the inputs to increase the outputs. The black box in this case is the author's project, which he is describing being tweaked and regulated to produce an output. The problem is the author demonstrated to the customer out of the gate that being dominated gives the desired output, and so the author received the behaviour he specifically rewarded.

A product manager or owner can handle a dominating customer by managing those boundaries. Not all PMs do, but this customer would have been manageable if either the author or his boss had a spine.

Consider that the extreme of agreeableness becomes oily, deceptive, and even mendacious when someone is pushed past their limit, which is why so many managers can seem untrustworthy. The cycle was that this "Alpha" customer kept pushing to see if the author had a bottom or backbone, and when he didn't find one, he became less and less trusting, pushing even more and then finally just taking control of a process he perceived as out of control for lack of anything solid.

<comment><AUTHOR> Thanks for your insight. You may very well be right about the client looking for more resistance.

How could I have given more resistance? I don't see how I could have had more of a "spine" without it turning into a shouting match. But perhaps that was what the client wanted?

Having had all my opinions so completely disregarded was very frustrating. I seriously do not believe it would have been possible to somehow educate the client and help them understand the need for my suggested changes.

The only option left was dropping them. Or was there any other solution?

<comment><USER4> The longer it was left, the harder the change would have been as by the time you had to drop them, the relationship was considered unsalvageable by all parties. I think your boss should have taken more ownership earlier. Turning it around probably wasn't going to happen because it would have been a 180 renegotiation of how you related.

To be fair, the customer also seemed to hustle you with a variation of "if you're a good guy, do me this small favour?" followed up with, "why won't you do me this next favour, I thought you were a good guy, now I'm unhappy..." and then leveraged the sunk cost you already put into the project to add incremental scope.

The conversations I have begin with things like, "let's decide on outcomes and we'll get you there." Full stop. This is before you start working, because if you start working without an agreed outcome, your project is not delivering professional service value, it's being their employee. You're doing the favour. I get Agile is iterative with constant customer feedback, and this customer wanted a waterfall commitment process, but the job of your boss (imo) was to bridge those needs.

It's great when a customer is happy, but that's the effect of providing value and solving their problems, happiness itself is not the job. I wouldn't worry about shouting matches, they're just a front. It's never the biggest dog that barks. Personally, I'm immediately suspicious of people who act unhappy because they only act that way because they think it works. So there wasn't a tactical change that would have made this relationship different, but there is a different way to relate in general that will ensure it doesn't happen again.

<comment><AUTHOR> Thanks. Very insightful.

> To be fair, the customer also seemed to hustle you with a variation of "if > you're a good guy, do me this small favour?" followed up with, "why won't > you do me this next favour, I thought you were a good guy, now I'm > unhappy..."

Yup. Was I being manipulated?

</comment></comment></comment></comment><comment><USER5> The problem is the relative social status between the client and Geon.

If the client had heart palpitations and Geon was a cardiologist, this wouldn't happen. You would not have Mr Alpha explaining to the doctor how he needs to do the scan and the surgery, and being very cross when he didn't get his way. Even though Mr Alpha probably cares more about his heart working than a user interface.

The same goes for pilots and other professionals, they get less crap than they would if they didn't have some sort of status that prevents most of the I-know-best crowd from sticking their heads in.

For some reason, software doesn't have that feel to it. In many places, it's a sort of implementation detail, where the generals have already decided the strategy, and the devs just have to follow the orders.

It would be good with some cultural change around what people think devs do and what you can say to them.

<comment><USER6> > If the client had heart palpitations and Geon was a cardiologist, this > wouldn't happen. You would not have Mr Alpha explaining to the doctor how he > needs to do the scan and the surgery, and being very cross when he didn't > get his way.

This is a bold assumption

<comment><USER5> I'm not saying nobody's ever done that. But you cut most of the little annoying people with a bit of status. Ever sat in a lecture by someone famous, vs one by some random grad student?

<comment><USER7> Most people take doctors seriously, but "Alphas" do exactly the same thing to doctors and lawyers and other professionals that they do to programmers and tech support etc.

</comment></comment></comment></comment><comment><USER8> I was hoping Geon was going to do a psychological trick to make the client happy, but nope... "the trick" is to just stop caring (spoilers).

With people like Alpha you have to be very strict about adhering to the contract and not an iota more.

It's like the classic meme:

"I design everything": $100

"I design, you watch": $200

"I design, you help": $500

"You design, I help": $1000

"You design, I watch": $5000

"You design everything": $10000

</comment><comment><USER9> I gotta say. I am not impressed with how the author handled the client interaction. There are better ways to handle a stubborn client other than, "I'm better at this than you are and that's that." There doesn't seem to have been a clear understanding about what the scope of the project was, so Alpha really thought it was his project to do with what he pleased. The author does indeed need to work on his people skills. Communication is weird, complicated, and important.

<comment><AUTHOR> > There are better ways to handle a stubborn client other than, "I'm better at > this than you are and that's that."

While I can see how you got that impression, it is not how it happened.

I carefully explained all my suggestions and backed them up with UI conventions, implementation details and code reuse. Nothing helped.

For example, the same data could be edited from 3 subtly different screens. I suggested it should be broken out into a separate dialog that could be reused. It would be more consistent, be more in line with virtually all other software, quicker to implement and less error prone. No go.

<comment><USER10> Don't want to sound arrogant, but it seems that projects like this was a good lesson for you. With one lesson (among many others), that "I carefully explained all my suggestions and backed them up with UI conventions..." will not work with some people (technical ones) and there should be other styles of communication in your toolbox. I learned this the hard way when I wanted to be a freelancer and had to do everything (coding, managing project, accounting) on my own. Now I work at a company as a coder and project managers are "shielding" me from clients eccentric needs.

</comment></comment></comment><comment><USER11> >> Alpha: No. Since we have little time, it is important that you complete one powerpoint screen at a time and NOT go back to it. When it is done it is DONE. I absolutely do not want to hear that you are rewriting code that has already been completed.

This reminded me of something an acquaintance had once said, about "the least productive workers", by which they meant programmers. It seems this is a common theme among non-technical co-workers at tech companies. Basically, there is a sense that programmers somehow overcomplicate things and that everything would go so much more smoothly if only programmers learned to do the simple thing that everyone else can see is so easy to do. Common sense, innit.

The same spirit is behind requests to do something "simple" that "doesn't need much work". "It's just a few lines in SQL, you can do it real quick". Of course, it never is. But if you say, "yeah, it's easy, I'll do it" (because you haven't learned yet) it _will_ take a lot of work, you _will_ take much more than a little time and they _will_ be displeased with you because you're "taking so long for something that is so easy".

<comment><USER12> I once sat in a meeting where a high up person was giving us requirements for a new feature she wanted to add to our application. It was adding a button to the screen, and when the user clicked the button it would initiate some complex logic and actions that would be invisible to the user.

When we gave her the estimate for the change, she went nuts. She couldn't understand why it was going to take so long and cost so much. No matter how I tried to explain it to her, all she said over and over was "It's just a button!".

<comment><USER13> "so, you want just a button? or a button that _works_?"

</comment></comment></comment><comment><USER14> Customers almost always know "What" (they're not making this up).

They usually know "Why".

Then never know "How".

So, the "What" is theirs, the "Why" is ours, and the "How" is mine. All documented and agreed upon before a single line of code is written (except for a prototype, wireframe, or proof of concept).

Take the time and energy to do this up front or stop caring. Your choice.

</comment><comment><USER15> Everyone seems to come out pretty badly from this story.

The client clearly isn't good at working with people.

As noted by controlledchaos the author isn't good at working with clients, communicating complexity is hard to do but it's essential to work through this with a client. It can be very frustrating and takes a lot of time but just stating that you're an expert is never going to win anyone over. You have to demonstrate that fact to them and understand their goals and motivations.

The author's boss sucks, he basically threw the author to the wolves and only stepped in at the last minute by which time it was too late.

The senior developer's advice to not care is toxic.

</comment><comment><USER7> Lots of comments here, none about the core of the issue as I see it.

OP and OP's manager allowed "Alpha" to design the UI, and then to state that the mocks were the specification.

There's no shorter road to frustration than allowing UI mocks as a specification. UI mocks as a talking point are great; UI mocks as a spec are cancer mixed with broken glass. See [0] for some discussion from yesterday.

Words in a spec are abstract, but pictures are concrete. People get fixated on pictures. People also fall in love with their own creation. Allowing the customer to create the mocks almost guarantees that they will not be reasonable about them. Not only are they in love with their ideas, they're also in love with their imagined implementation.

I get it! Imagining the implementation is my favorite part of software! For someone with lower introspection and empathy it can feel like an attack when someone wants to change the thing you've fallen in love with.

0\. [https://news.ycombinator.com/item?id=23837406](https://news.ycombinator.com/item?id=23837406)

<comment><AUTHOR> > People also fall in love with their own creation.

That was exactly what happened! I have used those exact words when talking about it.

> Allowing the customer to create the mocks almost guarantees that they will > not be reasonable about them.

Oh. I wish I had known that. Any other examples you can share?

<comment><USER7> I work on mainly company internal projects, so not exactly equivalent. I had two projects shortly after transitioning from tech support to test where the pictures of the UI was the specification. After having a terrible experience on both of them, there was another project where the "owner" wanted to give us drawings of how the screens should look. We let them make the drawings, but we did not track them as requirements or specifications. It went all right, not great.

I've worked on other projects where we had an actual UX designer, and those went much better. UX is not taken very seriously by many people in tech, but it's our equivalent of industrial design.

</comment></comment></comment><comment><USER16> I read this hoping there was going to be some educational "trick" it taught. Was disappointed, just sounds like somebody who wants to be purely technical is stuck working with difficult people.

Geon should either change or jobs (to something less client-facing), or accept the job as it lies, which would involve recognizing psychology/therapy/emotions is a huge part of client interactions. In this case "alpha" clearly has a lot of emotions influencing his decisions, understanding those and getting him to like you is probably part of being a good contractor.

If he perceived his work was dealing with a complete wildcard, and managed to, that's something Geon can take pride in.

[Not to say any of this is common-sense, when I was young I probably would have felt like such projects were a waste of my time]

</comment><comment><USER17> I literally had someone tell me once after a demo of progress on a project: _" That may be what I asked for but its not what I want"_.

<comment><USER18> Depending on the tone that could show a lot of self awareness. I'd respond "I totally understand! That's why we said at the get go this stuff is hard. Sometimes we can't see what we want till we try to build it. Let's figure out what's off about this and setup some more sprints."

<comment><USER17> I very much took the tone to mean: "I'm a very senior manager at this company and I can be as unreasonable as I want and you can't do much about it".

It was an internal project at a large company and there was a fair amount of politics. I just loved how he managed to say something like that without a trace of contrition - not like this was the first time he'd seen it.

</comment></comment></comment><comment><USER19> Well, so there is couple of issues with "not giving a shit".

The problem is that it is all too easy to normalize this and get in a habit of stopping giving a shit for smaller and smaller reasons. You begin rationalizing your reasons and at all times feel completely justified in your not-giving-a-shit attitude.

I don't want to be the person that doesn't give a shit. "Not giving shit" is exactly opposite of what I would like to be doing. The moment this happens I feel I will become mindless drone that I have complained about for so long.

I believe solution in this case would be to stop for a second and propose to clearly attribute design to the person that proposed and required the design to be this and not the other way. Being able to decide something is in my book synonymous with responsibility. If I decide, I take responsibility for the decision, if I do not decide, I feel no responsibility. It is just a matter of communication to explain to everybody else who is decisionmaker in which aspects of the project.

<comment><USER20> There's a difference between not giving a shit and not allowing this type of behavior to impact you negatively. I might casually describe the latter as not giving a shit.

<comment><USER19> I think if you care for your project and take pride for the result it is going to be difficult to separate both (not impossible, just extremely difficult).

I personally find it very difficult to accept outside direction to meddle in the project if I see it is clearly unwarranted, meddlesome and damaging to the project.

If I feel responsibility for the wellbeing of the project I also feel responsibility to act on such damaging attempts and it is difficult to act with conviction if you feel dispassionate.

</comment></comment></comment><comment><USER21> > to plan everything out in detail and start building it all at once very > rarely works, is expensive, slow and can't handle changing requirements. And > requirements always change.

I'm struggling with the opposite. 90% of what we have to do is realizing requirements we get from externally (our competitors get the same requirements more or less). We can only release an update when we have done all the external requirements. Still we're supposed to be an agile company so you don't work directly with the external requirements but a project manager creates a stream of work items, so you never have the time to try to get the big picture.

Most of the time you don't know what you have to create and working in increments makes sense to find that out. But there's also stuff that you can plan for ahead. If you don't you will end up with a worse product and you will also drive people mad.

</comment><comment><USER22> The title isn't very good, but neither is the story.

</comment><comment><USER23> User testing the UI is a powerful tool to keep scenarios like these from creating scope creep and bad design. Your client wants to design? Sure, we can test that design and see if the target audience can use it to accomplish your business goals.

</comment><comment><USER24> It seems like the core of the disconnect was that the customer ("Alpha") was designing screen using power point at a font size and page size that did not translate well into actual screen real estate. I wonder if the developer could have provide a PPT template that had a page size and font size that would minimize the gap--and first prototyped in PPT to point out problems at low cost.

<comment><AUTHOR> > and first prototyped in PPT to point out problems at low cost

That part actually worked excellently. The problem was that when the problems were pointed out, they were completely disregarded.

</comment></comment><comment><USER25> I had an annoying micromanaging client like this once that insisted on designing an entire UI and then just having me implement it exactly as is, of course the design was terrible.

When I suggested why he didn't just write up some code to go along with it, he told me he doesn't know how to write code.

And I replied that I was confused, because until now he seemed very confident doing shit he knows nothing about.

Never heard from him again.

</comment><comment><USER26> In my opinion:

If you cannot communicate effectively with your customers it is your fault, not the customer's.

The customer _is_ always right in the sense that they are the only ones that know what they want, like and don't like. Either you can figure that out correctly or you can't. That is a very important part of your job.

Whether you want to deliver what your customers want is a whole other question. You don't have to deliver things you haven't agreed to.

Basically, I think the author of this post has a poor perspective, and another one might work much better for all involved.

</comment><comment><USER27> Great post. He should have just sucked it up and billed the hell out of Alpha's company. Let him pay for his ways.

</comment><comment><USER28> "Alpha" is a sociopath. You'll never win playing their game; document everything in writing, fire the customer as soon as posible.

<comment><USER29> It's unlikely that you've achieved a difficult clinical psychological diagnosis by reading a one-sided second-hand account.

<comment><USER30> "sociopath" isn't even a diagnosis in most of the world. That said, there is a distinct recognizable group of people exhibiting such dominant-abusive behaviour and they are easy to recognize. We all know our schoolyard bully or neighborhood tyrant.

<comment><USER29> > "sociopath" isn't even a diagnosis in most of the world.

The fact that much of the world doesn't consider this a valid diagnosis even when it's done by a professional does not add credibility to your amateur diagnosis.

> That said, there is a distinct recognizable group of people exhibiting such > dominant-abusive behaviour and they are easy to recognize. We all know our > schoolyard bully or neighborhood tyrant.

Yes, we all recognize these archetypes of people who, more often than not, aren't sociopaths.

</comment></comment></comment></comment><comment><USER31> Never let the client dictate the _how_. Focus on outcomes.

It sounds like this was a tough person to work with. I've been a consultant (independent and on behalf of larger enterprise vendors) for some 20 years. After reading your story, that's my strongest piece of advice to you.

Would you tell the carpenter renovating your house what technique he should use at his tablesaw? Try it and see how long it takes before he walks off the job.

" _I began to explain the methodology we like, that I personally as well as most of the software industry believes in; minimum viable project. In essence... "_

Your shop uses MVP, tell them that's how you'll deliver. Don't get technical. Just "we'll start with a small prototype to get something in your hands quickly, then fill in the features from there".

 _" Whoa! The sketches have suddenly become a specification. Inconsistencies and all."_

Good on you for recognizing what happened. When you realized the PowerPoint became a defective spec, you needed to go back to the client and make them fix it before you accepted it. "Sorry, what you've sketched for this room can't be built."

That's part of your job. It's clear you have a lot of professional pride - don't be an architect who allows construction to begin knowing the rafters will crash down on someone's head.

 _I carefully explained all my suggestions and backed them up with UI conventions, implementation details and code reuse._

Readiness to explain your recommendations is an asset. Unfortunately this time you were speaking into a black hole. I'm sure by this point you saw the pattern in your working relationship with the customer - the more detail you expose, the more control over it they try to exert. With this guy in particular, you need to actively avoid that trap, and project strong signals as to what is and is not in his purview. Clearly the client was invested. A really talented PM will steer that energy to where it's useful (or at least someplace less destructive).

Again, avoid diving into nitty gritty implementation details and talking about things like "code reuse" with the client. You're not selling them a methodology, you're selling them a product.

I hate to say it, but ultimately I think you needed to "alpha up". It's clear you were intimidated by this guy. He's big, strong, powerful, older and bull- headed. If you met him and his clan in a tribal woods setting it would make sense to submit. But in a software development setting, you're the authority. Act like it. You're not a junior fellow. You have good judgement, a wealth experience and a strong sense of what works and what doesn't. BE the expert the client is paying you to be. Be opinionated on the stuff you know. Flex that opinion, and don't be afraid to tell a client "that won't work, here's why". It's good you want to make them happy, but that doesn't mean blindly doing everything they ask. A customer relationship is just like any other, and it's normal for some frustration and conflict to develop along the way. Don't be afraid to exercise your professional judgement and take charge.

Work on projecting confidence. You don't even have to pretend - confidence can come from experience, and this project was a formidable teacher. Draw on this well next time you need to convince yourself to be more assertive.

There's a comment elsewhere on this page suggesting ' _the problem is the relative social status between the client and Geon_ ' and you mentioned your ' _suggestions were so completely disregarded. There was no motivation, or reasoning given. Just "no, do it my way"_'. It's also been proposed this wouldn't happen to a doctor or cardiologist.

I think software developers tend to be more reserved individuals; there's even this colloquial stereotype they're what became of the "wimps" you knew from childhood. Behind that cautious demeanor may be someone who really knows their stuff. If doctors don't have to deal with condescension as often, one reason is they don't put up with it. Mine would probably tell me firmly "Decide as you will, but I'm the expert and I'm telling you X is a problem, you need to do Y, and if you don't, Z will happen." They'll also refuse to prescribe or perform a procedure they feel is plainly not in the interest of the patient.

Please don't take the advice of your coworker to stop caring. Rather, care enough to push back. Hopefully you work for a company that will support you. If I was your CEO I'd put someone with grey hair on the project to help stick- handle this client, and if that didn't work I'd intervene personally to clarify the roles (which we tend to set out clearly in our contracts).

</comment><comment><USER32> If his boss/company weren't desperate for the contract, they wouldn't tolerate crazy shit like this. If the customer has no incentive _not_ to ask for whimsical shit all the time, then they're absolutely going to ask for whimsical shit. This is especially a huge problem when you are dealing with a group of people rather than project-manager to project-manager, although that doesn't sound like the case in this story. At any rate, here is my take: find a better job for a more financially secure company. Then you won't have to deal with flakes.</comment>


How Puberty Kills Girls' Confidence - <AUTHOR> https://www.theatlantic.com/family/archive/2018/09/puberty-girls-confidence/563804/?single_page=true <comment><USER2> You know what also kills girls' confidence? Telling them their natural rite of passage into womanhood causes them to lose confidence.

So puberty kills girls' confidence. Then they have college rape campuses to look forward to.

Thanks to the media, we've conditioned females into fearing society, schools, cities, everything. Why stop there? Why not condition them to fear their natural process of growing up. Something they can't escape or avoid. All for those clickbait pennies.

All media should come with warning from the FDA just like cigarettes. Cigarettes - toxic to your lungs. News/media - toxic to your mind.

<comment><USER3> In my lifetime, I've seen the concept and notion of femininity ridiculed more and more, and I don't see any sign that it's slowing down. If femininity isn't being ridiculed, it's being redefined to the point of meaninglessness so that it's exactly the same as masculinity, or just doesn't exist at all. But, like it or not, politically correct or not, grown women's physical characteristics are undeniably, unavoidably, feminine - so it shouldn't come as much of a surprise that when you have a society with a 50+ year history of insisting that to be feminine is to be a failure, to be oppressed, to not living up to your potential, finding yourself unmistakably so would tend to put a damper on your confidence.

<comment><USER4> In what ways does society insist that to be feminine is to be a failure, to be oppressed and to not live up to your potential?

TBH I'm not sure exactly what point you are trying to make. If it is that society is against femininity as a concept, then I disagree.

</comment></comment></comment><comment><USER5> Yeah, only girls are affected by puberty...said no teenage boy ever.

<comment><USER6> According to the article, much less so than girls. I have no idea if this is correct. Feel free to contribute evidence to the contrary, if you have it.</comment></comment>


Introducing R: a 6-axis smart assistant, designed by Teenage Engineering - <AUTHOR> https://raventech.cn/r <comment><USER2> I wonder how many people find these types of emotion-bots actualy worth of the hefty price? I feel like the novely wears off quickly. I've never owned one but I just get a weird feeling of having emotions for a bot. I'd much prefer getting a dog.</comment>


Being Data-Driven In A World That Increasingly Isn't - <AUTHOR> http://www.ciopedia.com/u/24

<comment><USER2> This is tied to an earlier article about arguing. It's difficult to win an argument if your position is based on facts and another person's argument is based on their opinion...

</comment><comment><USER3> the web page has "hard newlines" (implemented by BR tags or by some other device) so that a person like me who likes his text size a little on the large size and does not have a huge monitor has to scroll horizontally every single line of text to read the page.

I see that more and more these days.

<comment><USER4> I see

 in the source, not
. I suspect your browser may be to blame.</comment></comment>


Louis C.K. is selling another comedian's standup on his site for $5 - <AUTHOR> http://buy.louisck.net/purchase/tig-notaro-live <comment><USER2> Well, that's awesome. I've liked Tig's stuff for years, too.</comment>


MailChimp Launches $1 Million Integration Fund - <AUTHOR> http://www.centernetworks.com/mailchimp-launches-integration-fund

<comment><USER2> I don't understand why that ad abundant site was linked rather than [http://www.mailchimp.com/blog/mailchimp- launches-1-million-i...](http://www.mailchimp.com/blog/mailchimp- launches-1-million-integration-fund/) which is actually much better.

Edit: Never mind, previous discussion <http://news.ycombinator.com/item?id=1920133></comment>


Ask HN: Any real estate listing API - <AUTHOR>

Are there any real estate listing sites that provide developers with API in order to access listings?<p>What do you use to access real estate listings for your applications? <comment><USER2> At least in the research I've done, it seems MLS data is very fragmented (regional MLS groups) and the industry is fairly protective of it.

I think your best bet is to start local and team up with an agent/broker so you can access things like flexmls. Even then, be prepared to pay.

</comment><comment><USER3> <https://www.flexmls.com/developers/api/> \- it's an API used to access the MLS, which is the same listing service that realtors use.

</comment><comment><USER4> Depending on your needs, there may be something here for you:

<http://www.zillow.com/howto/api/APIOverview.htm></comment>


Carla Hayden Confirmed as 14th Librarian of Congress - <AUTHOR> https://www.washingtonpost.com/news/arts-and-entertainment/wp/2016/07/13/carla-hayden-confirmed-as-14th-librarian-of-congress/ <comment><USER2> I will just note that the Librarian of Congress is responsible for exceptions to the DMCA.</comment>


Seriously? Fortune 500 companies hosting their own videos? - <AUTHOR>

Correct me if I'm missing something here...
But WHY!?
YouTube: - individual control over an account - its what they do - the embed codes are even there for you! - organic SEO ( duh ) - this issue has been solved
Why are we still waiting for video feeds on commercial websites... as stated earlier, from fortune 500 companies!? <comment><USER2> "Watch the new video about Asus EEEPad tablet on YOUTUBE" 10 seconds later "buy an ipad today" ad appears at the bottom.

Who would like to see ads about their competitors in their own videos, which WILL happen on Youtube.

Stuff like that and complete control over their own content.</comment>


Review: PGP Whole Disk Encryption for Mac OS X - <AUTHOR> http://paulstamatiou.com/2008/09/06/review-pgp-whole-disk-encryption-for-mac-os-x <comment><USER2> I wonder how whole disk encryption works with Time Machine.</comment>


Advice On Partnering With The Big and Powerful: Don't - <AUTHOR> http://33bits.org/

<comment><USER2> Is there an article at that link about partnering with the big and powerful?</comment>


Jason Lorimer - Weve all been hacked - <AUTHOR> http://www.huffingtonpost.com/jason-lorimer/weve-all-been-hacked_b_1082864.html

<comment><USER2> Thanks for posting this up. I'd love to hear what you guys have to say on the topic.</comment>


Show HN: Do you have a controversial opinion? Well Prove it - <AUTHOR> https://aqueous-lowlands-9383.herokuapp.com/provers/sign_in

<comment><USER2> I like the ideas on the comment organization and forum interface (the "more" and "less" is specially nice), but the need to register, the enourmous sign-up form, the lack of explanation, the low appeal of the basic idea (a new forum site?) and the crudeness of the interface will not let this have any success.

The ideas about forum discussion you had should be implemented on top of some other forum platform, maybe, or, better, bundled into a whole new product that is actually usable instead of into a simple forum.

Just thinking.

</comment><comment><AUTHOR> Hey everybody! Welcome to my first website! Please feel free to create an account and look around. Post as many new topics or replies as you like. Don't worry about using a real email address – verification is turned off right now.

NOTE: For best results (by far!) please use Chrome or Firefox.

Before quickly concluding that this is yet another boring discussion forum, look again. It has a unique feature that I find fascinating based on the assumption that there are actually such things as "truth" and "fiction", and it's actually possible to discern the difference. Too often people find that they disagree on a topic only to eventually "agree to disagree". This is usually after dragging each other in circles in futile attempts to prove their positions. Valid points are often made but quickly obscured in the confusion of verbal battle. Subjects of even average complexity are very difficult to manage mentally. What is needed is a discussion forum that provides a format that helps manage this complexity. ProveIt! does this, and more.

Before trying to figure out what this website does, it's important to understand that: 1) an opinion is a conclusion based on limited (or uncertain) knowledge. 2) Facts are not opinions. 3) Opinions are not facts. 4) Personal preferences are not opinions. (It is not your opinion that green is your favorite color. It's either a fact, or it's not.)

Anyone who says, "In my opinion, two plus two equals four" should be corrected and informed that this is not an opinion but rather a universally accepted fact. On the other hand, a claim that "Syracuse has the prettiest girls in the Big East", should never be considered a fact until it has been clearly demonstrated as such, at which point it ceases to be an opinion. ProveIt!'s main purpose is to identify opinions as either fact or fiction.

Unfortunately, many people cling to their opinions with little interest in considering other views – or much less, changing their positions. They have learned to embrace the flexibility and almost limitless latitude afforded by this word. Their targeted audience is rendered defenseless and has but two options: either except these opinions, or attempt to argue. As many of us have learned, arguing is usually a fruitless endeavor as people will often deflect all facts and reasoning, and ultimately insist that they are entitled to their opinions. We are left with nothing but frustration. Dennis Miller made famous the line, "of course, that's just my opinion... I could be wrong." I recall laughing at the subtle irony! ProveItt! will force people to face objections and either accept them as fact, or refute them.

So with that said, feel free to log in. I've already been too long-winded here and could go on forever. Instead, I highly recommend you read the "About" and "Help" pages first. This will better explain what ProveIt! is, and how it works.

Although constructive criticism is welcome, please be kind! Again, this is my first website ever! In addition to technical observations, I'd really like to know what people think of the concept. Although I've already implemented a lot of features (like "lone wolf" and "semi-private" posts and fallacy objections), I have plenty of other ideas swimming around in my head. Please let me know if you have any suggestions or ideas! I sincerely thank anyone who takes the time to log in and look around.

Note that most of the existing posts are by fake users controlled by me. I attempted to emulate a realistic feed. Unfortunately, I found that this was harder than it sounds! Please forgive the lame entries! I'm sure real people could come up with more interesting (or funnier) topics!

Also note that most of the fallacy verbiage has not been populated yet. I'll be working on that soon!

Thanks!!!

<comment><USER3> When clicking the link I thought there was too little information for me to sign up, didn't understand what the site is about. The went in to see your comment, but found it too long to read. I would suggest describing what it's abound in a few words on the website. Good luck!

<comment><AUTHOR> Thanks thyselius! As I said, this was my first shot at building a web site and it was suggested that I post it here once it reached MVP status. But what I'm learning (and not just from your comment) is that people want to see more flash! I'm thinking I need to implement some sort of carousel on the landing page so it doesn't look so stark -- or something like that! Like I mentioned in my first post. The breadcrumb links at the top of the page are accessible (without creating an account) for anyone interested in what the page is about and how it works. I'm not sure what more I can do. Yes, It's a lot of reading but the first paragraph covers the gist. Thanks again! I really appreciate the feedback!</comment></comment></comment>


A trip through the Graphics Pipeline - <AUTHOR> http://fgiesen.wordpress.com/2011/07/01/a-trip-through-the-graphics-pipeline-2011-part-1/

<comment><AUTHOR> parts 2 and 3 to this article:

[http://fgiesen.wordpress.com/2011/07/02/a-trip-through- the-g...](http://fgiesen.wordpress.com/2011/07/02/a-trip-through-the-graphics- pipeline-2011-part-2/)

[http://fgiesen.wordpress.com/2011/07/03/a-trip-through- the-g...](http://fgiesen.wordpress.com/2011/07/03/a-trip-through-the-graphics- pipeline-2011-part-3/)

</comment><comment><USER2> For those who don't know, the title is reference to a famous series of articles by Jim Blinn called "A Trip Down the Graphics Pipeline".

      http://penguin.ewu.edu/cscd470/2009/JimBlinnsCorner/

</comment><comment><USER3> Way too much useful information, I could spend hours reading this blog :)</comment>