Live data from Hacker News

What It's Like To Be Ridiculed For Open Sourcing A Project

harthur.wordpress.com

671–680 of 826 posts

Re: What It's Like To Be Ridiculed For Open Sourcing A Project

#671
post #525

Earlier quoted context omitted.

> I cannot even make this stuff up: You are clearly well versed in this subject. So, how would you attribute this remark?

Twitter; you don't have space for detailed (and possibly constructive) criticism, you substitute witticisms because that's what gets retweeted (i.e. what the environment rewards). Maybe you read another snarky tweet just before and want to one-up it. Maybe you just worked on some messy code and are a bit frustrated and this looked like the right place to vent. Off-hand snarkiness can be pretty mean, but that doesn't…

> you don't have space for detailed (and possibly constructive) criticism, you substitute witticisms because that's what gets retweeted (i.e. what the environment rewards). Maybe you read another snarky tweet just before and want to one-up it. Maybe you just worked on some messy code and are a bit frustrated and this looked like the right place to vent.

And that's basically what we shouldn't do.

Re: What It's Like To Be Ridiculed For Open Sourcing A Project

#672

Then I see these people’s follower count, and I sob harder. I can’t help but think of potential future employers that are no longer potential. There's a big responsibility that comes with being well-liked and nice. When someone with a good reputation and the means to broadcast it speaks negatively about someone, it matters much more than someone who is routinely rude, frequently negative, or unknown. I know that if t…

The open source community surrounding popular languages such as Ruby and to a lesser extent Python has some really obnoxious behavior. They look more like popular girls at a high school than serious programmers interested in sharing good things with the world and helping others.

Also, people who live in glass houses should not throw stones at others. What is to prevent someone from going all Dijkstra on them? So be kind to others, it won't take much for someone much smarter than you to trample you.

This is nothing but bullying and can have a serious affect on the bullied person's mental health.

Re: What It's Like To Be Ridiculed For Open Sourcing A Project

#673

Earlier quoted context omitted.

Ever wanted to see a bad argument? Read the post by Dylan16807!

As long as you're linking a specific post, go for it. I've made mistakes. But I'm going to hope it's not just a post you disagree with. Just like I hope you don't call code bad because it uses OTB or omits semicolons. It should be failing to solve the problem it sets out to solve, and in an interesting manner. (Note: I have not looked at the code tweeted about.) Edit: Wait how did THIS post get downvoted? I can under…

Don't know, but possibly because you're derailing the discussion.

The outrage is not about constructive (or even unconstructive) criticism of the code itself (which appears to be fine): At least one of the guys ridiculed the author and questioned her competence for the sole reason of implementing a subset of the features of GNU find+sed on top of Node.js.

Re: What It's Like To Be Ridiculed For Open Sourcing A Project

#674
post #643

Earlier quoted context omitted.

I didn't say that find couldn't ignore source control directories or find only specific file types. However, ack does that far better as it has a better semantic awareness of both concepts. I don't have to worry about updating my find command lines to account for new types of source code or source control folders in unfamiliar programs, I need only ensure that ack is kept up-to-date.

I'm not sure what you are trying to say. Your post contradicted itself. You literally said "I don't use ack because it is find+grep, I use it because it is find+grep". I am simply pointing this out.

Except by that logic, you could say that any user of a high-level language was really claiming (in the end) to be using assembly.

C++ once compiled to C, but even then people wouldn't claim they were using C, they'd claim they were using C++. "I don't use C++ because it's C with 'classes', I use C++ because it sets up my vtables and overloaded functions"

Re: What It's Like To Be Ridiculed For Open Sourcing A Project

#675

I get a fair amount of ridicule any time anything I write makes it into sites like reddit, and a small amount (depending on topic) when it makes it onto HN. When one of my posts hit the front page yesterday, I decided to re-read "How to Disagree": http://www.paulgraham.com/disagree.html Having done that, I can now just privately laugh at anyone who fails to come up with an adequate refutation of my central point. Peo…

I looked at the actual code and, although I'm no expert with Node, it looks pretty reasonable. The only things I can find to criticize was the word "replacize", which makes me cringe much like "performancing" or "optimizely", and the use of == instead of ===. But I think reasonable people could disagree about those things. Someone who isn't me might think "replacize" is sufficiently humorous to retain, for example.

The nesting goes a little deeper than I would like: https://github.com/harthur/replace/blob/master/replace.js#L9... is 7 indents deep, for example, where I think something like 4 indents is a place where I should stop and start questioning what I'm doing. But three of those indents are a tradeoff forced by the node.js async API: anything that has to wait on the result of an asynchronous operation must necessarily be in another function, and you can choose whether to nest that function deeper or to move it somewhere unrelated and give it a name; and you have to use error codes instead of exceptions for error handling from those operations.

The program actually includes a synchronous version of the same code, where the line corresponding to line 90 above is https://github.com/harthur/replace/blob/master/replace.js#L1..., the blank line following "var text = fs.readFileSync(file, "utf-8");". If that fails, it throws an exception, so the "if" block isn't needed, and the code that follows doesn't need to be nested.

This is the agony and the ecstasy of Node: everything is (normally) asynchronous, giving you unwanted levels of nesting, but on the other hand, everything is asynchronous, so you can process the files in the order that the filesystem finds it most convenient to return them to you in. I wouldn't be surprised if it turned out that Heather's code was typically much, much faster than find | xargs -P sed, simply because it was able to productively manage many more outstanding I/O requests at once.

Line 90 also points to a pitfall that often befalls us with parallelism: at some point parallelism stops being productive, so you have to limit it. In this case, Heather's code throws the ball back to the user and suggests that they rerun their command in synchronous mode — albeit having partially completed the replacement task, which might be a bad failure mode, depending on whether your replacement is idempotent.

Re: What It's Like To Be Ridiculed For Open Sourcing A Project

#676

What the fuck. (And I rarely say that word.) We've got to grow up. This is 9th grade all over again. You know, those weird people that do things that you don't understand? They're the ones that grow up and make big impacts on the world. Why can't we get over our negativity? We can't stop ourselves from thinking horrible things, or even saying them out loud to people around us, but surely we can restrain ourselves fro…

No one taught middle school kids how to deal with emotions.

That's because the adults around them don't know how to deal with them.

We are educated in a math & science heavy society. That's good. However, it puts the focus on evidence. Emotions don't leave much of a trace unless you act on it. So we use behavior resulting from emotion as evidence of reality and ignore the experience of reality.

Then we say, "be real" and cut off an entire spectrum of reality -- that of experiencing emotions.

These are the makings of the shadow side, the Jungian shadows. When you disown or suppress experiences, then they get stronger.

So yes. We have not grown up because we don't know how. Or at least, no one told you how.

You cannot "get over" negativity. That's a form of rejecting something you don't want to feel. The only way out is to accept the experience of it as is, without rationalizing it and without acting on it. That's probably the hardest thing you will ever do in your life, but the most important if you want to grow as a person.

There are several methods by which one can do this. One of them, called vipassana, was taught to some prisoners with great results (http://www.dhammabrothers.com/). However, you don't need to be a criminal to use this.

Re: What It's Like To Be Ridiculed For Open Sourcing A Project

#677

For years I have been terrified about putting my code on Github for fear of rage and retribution from the programmer community. This is a real problem for us amateur coders who enjoy hacking but don't necessarily have the chops to go head-to-head with the serious guys.

After participating in these comments tonight, I decided to purposely post some of the worst garbage I could find in my home directory. That way, I get to control the fact that yes, I have bad code. They can't act like it's a surprise. http://rachelbythebay.com/w/2013/01/23/crap/

I've seen way worse than that. I've probably written way worse than that. I wish I knew where to find it.

Re: What It's Like To Be Ridiculed For Open Sourcing A Project

#679

Earlier quoted context omitted.

HN's collective reading comprehension seems to have dipped lately. Fortunately, pg is usually concise enough that we can use this as an exercise: "Maybe before..." "before" merely implies order. It does not mean "instead of". It means, "this first, then that." "...federal prosecutors are unsympathetic assholes..." The subject here is not jail sentences or felony convictions or legal antics. The subject here is sympat…

I was mainly making a joke, but the content of the statement was a problem. Let's consider the relative merits and priorities of "spending time complaining about federal prosecutors" vs. "examining our own community". The former is about trying to change our society to make it more just, the latter is aimless introspection. The comment was a bit of a troll and not insightful so I trolled back. If this were not pg's w…

> The former is about trying to change our society to make it more just, the latter is aimless introspection.

On the contrary, the former is something we probably won't change [1], while the latter is almost certainly something we can change.

> The comment was a bit of a troll and not insightful so I trolled back. If this were not pg's website, I am certain you wouldn't be defending the statement because it lacks substance.

I seriously doubt he was trolling, and you shouldn't be so certain. This being pg's site is completely irrelevant in this case [2]; I'm simply ... actually, disgusted is about the best adjective I can think of to describe how I feel about the nonsense arguments on HN lately. People seem to be in some kind of a hurry to disagree, because they aren't actually reading and comprehending what other people are writing, they aren't stopping for a moment to consider that perhaps the person they're responding to isn't an idiot or a troll, they aren't maintaining basic principles of civility, they're commenting on (and arguing about!) subjects that are way outside their expertise, and they seem to be nearly drooling at the chance to engage in a witch hunt.

For example, nothing in my reply was a defense of pg's statement. Nothing. Not a single word. The entirety of my reply was a tutorial on high school level reading comprehension and a snide remark about HN (well, and a question about you). So, how is it that you interpreted that as a defense of his statement?

--

[1]: I may yet be pleasantly surprised. I certainly wouldn't've guessed at how much press the Aaron Swartz case would end up getting, and there is some small chance now that it might end up causing some kind of change somewhere. That would be great. As of yet though, it has changed absolutely nothing.

[2]: Assuming of course that you don't find it significant that the founder of one of the programming communities on the internet is indicting the community's behavior -- although it's not clear if he's referring to the HN community or the broader programming or technical community.

Re: What It's Like To Be Ridiculed For Open Sourcing A Project

#680

Earlier quoted context omitted.

Sure, if this were intended for doing it from within a JS program. But it's not. It's a command-line tool. To replace the best, most powerful, most flexible, most stable tool (and additional tools) made for the command-line for this exact purpose. This is the definition of reinventing a square wheel. It's just a bad idea. (p.s. by using xargs (with or without -print0) you can use one option to parallelize the functio…

I'm not going to downvote you, but you've not really put your case. Using replace simplifies the workload for a lot of people, the commands (which incidentally, I actually like using) is still somewhat arcane even to the most experienced Unix guru. If you can replace a long line of pipes with a simple command line, then why not?

Perl was created as a replacement for sed, awk, grep, and other tools of the day. It can be used as one command to perform anything you could ever want to do, with a minimal amount of typing and several command-line arguments to perform useful tasks with ease.

When admins use it, they often simply shell out to the identical console tools. Why? It's easier. They just do everything you need, they're universal, and they work well together.

Go ahead and write a new Perl in JS, and nothing will change; the console tools will still be there, better than anything else.

I agree that it simplifies the workload. Unfortunately, it does not reduce the workload.

Post reply on HN