TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

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

1331 点作者 luigi超过 12 年前

141 条评论

jlongster超过 12 年前
What the fuck. (And I rarely say that word.)<p>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.<p>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 from publicly humiliating someone in front of thousands (or more) people. And for what purpose? To say "funny" things like "our eyes are bleeding!". Seriously?<p>I really will never understand why people can't simply be more positive. If I ever start a company the #1 thing I will look for in others is positivity. I wouldn't stand for this crap.
评论 #5106996 未加载
评论 #5107227 未加载
评论 #5107236 未加载
评论 #5107208 未加载
评论 #5107401 未加载
评论 #5107089 未加载
评论 #5107204 未加载
评论 #5111306 未加载
评论 #5112261 未加载
评论 #5107878 未加载
评论 #5107074 未加载
评论 #5108323 未加载
评论 #5108054 未加载
评论 #5107549 未加载
评论 #5108055 未加载
kevinalexbrown超过 12 年前
<i>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.</i><p>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 the most well-liked and nice person in my lab were to criticize my ability as a scientist (in the same manner), I would worry about what everyone else thought about me now, that someone who never seems to say mean things would so something like that.<p>These individuals do good things: they contribute voluntarily to communities, they help high school kids learn to code, etc. And these individuals are visible. And if you search steveklabnik on HN, his comments don't seem mean or negative.<p>It's easy to forget, and it's a little paradoxical, but when you're really nice, there's a different standard. Perhaps there shouldn't be, but it does have a different impact.
评论 #5109608 未加载
评论 #5107538 未加载
评论 #5111200 未加载
评论 #5108457 未加载
mintplant超过 12 年前
&#62; <i>Steve Klabnik ‏@steveklabnik</i><p>&#62; <i>@harthvader @zeeg nothing's _wrong_ with it, but I don't want to build my app on top of others' code who are at this level of understanding</i><p>This message [1] in particular is absolutely disgusting. Someone hacked together a script that met their needs, and threw it up onto GitHub in case anyone else found it useful? Yes, let's take the opportunity to condescendingly insult their mental competency.<p>What does he even mean by saying that he doesn't "want to build my app" on top of harthur's code? Nobody asked him to; steveklabnik himself made the original post, taking the opportunity to show off this smug sense of superiority.<p>[1] <a href="https://twitter.com/harthvader/status/293829635823792128" rel="nofollow">https://twitter.com/harthvader/status/293829635823792128</a>
评论 #5107421 未加载
评论 #5107007 未加载
评论 #5107128 未加载
评论 #5107298 未加载
评论 #5107083 未加载
评论 #5107194 未加载
评论 #5108256 未加载
mrb超过 12 年前
Heather, I agree that people are unnecessarily rude to you. Don't sob. Your code shows you are already a more capable programmer than most of the ones I interview. No one has given you a clear answer as to why your code is reinventing the wheel, so allow me to do it politely. I took every single example from your README, and show you below how everything can be reimplemented with sed -r (nice extended regex syntax, mostly like js regexs), and find/xargs:<p><pre><code> replace 'var' 'let' * sed -ri 's,var,let,g' * replace 'var' 'let' . -r find . -type f -print0 | xargs -0 sed -ri 's,var,let,g' replace 'var' 'let' test/file1.js test/file2.js sed -ri 's,var,let,g' test/file1.js test/file2.js replace '(\w+)_(\w+)' '$1-$2' * sed -ri 's,(\w+)_(\w+),\1-\2,g' * replace 'var' 'let' . -r --include="*.js" find . -type f -name '*.js' -print0 | xargs -0 sed -ri 's,var,let,g' replace 'var' 'let' . -r --exclude="*.min.js,*.py" find . -type f ! -name '*.min.js' ! -name '*.py' -print0 | xargs -0 sed -ri 's,var,let,g' replace 'var' 'let' . -r --preview find . -type f -exec sh -c "echo == {}; sed -r 's,var,let,g' {}" \; (not sure if --preview does exactly that, I echo the filename followed by the modified content) </code></pre> There is only one case that justifies reimplementing things: if your tool has the requirement of supporting the <i>exact</i> js regex syntax, then yes you did the right thing to reimplement this in js. I have run into similar situations myself. One time I had to support Perl regexs, and I started by simply using Python's standard regex module, thinking that it would work because both Perl and Python use PCRE. Well as it turned out the regexs I encountered used some advanced features (such as negative/postive look-behind/look-ahead, etc) that Python's regex module plainly did not suppport. So I ended up rewriting part of my implementation in Perl.<p>Edit: I spoke too fast. As a commenter pointed out, other legitimate cases for reimplementing this in js would be when you can't afford to or don't want to fork a process to run find/xargs/sed. It sounds like you were running the tool from the command line, so I didn't think that would be your situation.<p>Edit 2: Yes, the exercise of reinventing the wheel is also useful for learning... I am not going to argue that.<p>Edit 3: If you care about <i>simplicity</i>, I would personally rather write a small shell script wrapping find/xargs/sed and hiding their arcane options, as opposed to writing 173 lines of js.
评论 #5107628 未加载
评论 #5107534 未加载
评论 #5107577 未加载
评论 #5107706 未加载
评论 #5107529 未加载
评论 #5107770 未加载
评论 #5107520 未加载
评论 #5108043 未加载
评论 #5107633 未加载
评论 #5107821 未加载
评论 #5107555 未加载
评论 #5108360 未加载
评论 #5108510 未加载
评论 #5107535 未加载
评论 #5107618 未加载
评论 #5108042 未加载
评论 #5107560 未加载
评论 #5107629 未加载
评论 #5108564 未加载
评论 #5111709 未加载
评论 #5109044 未加载
评论 #5110104 未加载
评论 #5114046 未加载
评论 #5108907 未加载
评论 #5110709 未加载
评论 #5109240 未加载
评论 #5109839 未加载
评论 #5110135 未加载
评论 #5108306 未加载
评论 #5117197 未加载
评论 #5113064 未加载
评论 #5108268 未加载
评论 #5108333 未加载
wasabian超过 12 年前
Funny how @coreyhaines has made hugboard.com ("giving the gift of encouragement"), @steveklabnik is a maintainer of hacketyhack, a tool for learning how to program.<p>"Hackety Hack will teach you the absolute basics of programming from the ground up. No previous programming experience is needed!"<p>And while you're busy learning the basics, we'll just wait until you release something so we can publicly ridicule you on Twitter because you did something we don't approve of. Hurrah!
评论 #5106974 未加载
rachelbythebay超过 12 年前
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": <a href="http://www.paulgraham.com/disagree.html" rel="nofollow">http://www.paulgraham.com/disagree.html</a><p>Having done that, I can now just privately laugh at anyone who fails to come up with an adequate refutation of my central point. People who just say things like "this is crap" can be prodded like "okay, maybe it is, but you didn't say how", and then when they fail to come up with how, you know where they are functioning.<p>It looks like she did exactly this (asked them to explain it) on Twitter, and got the same sort of "it just sucks" reply. Eventually, you can get to a point where they can be safely ignored or even used for your own personal entertainment.<p>One sent to me on HN: "What an asshole. Chromium's code is there for review, you know."<p>I said in reply: "Thanks! Comments like this mean I'm on the right track."<p>Yeah, it's stupid that you have to suffer before you can get to this point, but it's not like we're talking about an industry which defaults to caring for others.<p>...<p>Regarding the actual program, I don't write shell utilities in JavaScript so I can't say whether it's a good or a bad implementation. It's just not my space. It's not something I seem to need (since I tend to abuse perl to do such work), so I can't comment on the overall utility, either.
评论 #5107056 未加载
评论 #5107127 未加载
评论 #5107422 未加载
评论 #5111299 未加载
spohlenz超过 12 年前
I was pretty appalled when I first saw those tweets. I held my tongue at the time (after all, who am I?) but as a member of the Rails community, seeing this sort of behaviour from community leaders is frustrating and kind of embarrassing, and I do think it needs calling out when it happens. I'm finding Twitter has become more and more depressing lately with similar incidents.<p>I don't know much of Dave or any others who stuck the boot in, but Steve and Corey are both involved in educational endeavours and should know better. Steve also recently railed against the idea that "you are not your code" (<a href="https://twitter.com/steveklabnik/status/279399353729286145" rel="nofollow">https://twitter.com/steveklabnik/status/279399353729286145</a>) which makes his jab even more insulting.<p>I've often wondered why concepts such as MINSWAN even exist, but it seems some people actually have to be reminded to be nice.<p>If they haven't already, they definitely owe you an apology.
pg超过 12 年前
Maybe before we spend a lot of time complaining about how federal prosecutors are unsympathetic assholes, we should start by examining our own community.
评论 #5107611 未加载
评论 #5107484 未加载
评论 #5108019 未加载
评论 #5110484 未加载
评论 #5107641 未加载
jrockway超过 12 年前
I don't really see the problem. I never remember sed syntax and instead just use perl -e. It follows that someone may want to use JavaScript instead though I would personally avoid JavaScript at nearly any cost.<p>As for haters on the Internet, yeah, welcome to the Internet. If you do something, chances are someone hates you. Why? They are jealous that you are getting attention instead of them. They could write a better version of grep, but are too unmotiviated, lazy, or dumb. So instead they trash your version. Attention flows back to them, they look smart in front of their friends, and ???, profit! You don't have to play a part in their fantasy, though. Just ignore them and let them bask in the idiocy of their idiot friends.<p>Or, if they have actionable feedback ("line 34 is indented wrong"), fix it and send them a thank you. Investing any more thought than one of those options, though, is a waste of time and mental energy.
评论 #5107205 未加载
评论 #5107050 未加载
评论 #5107147 未加载
wippler超过 12 年前
"Most of being nice, in a software context, is about being considerate. Not unnecessarily trash talking other people's stuff. Not going out of your way to be a jerk. Try to be helpful. Treat others how you want to be treated" - <a href="http://blog.steveklabnik.com/posts/2011-08-19-matz-is-nice-so-we-are-nice" rel="nofollow">http://blog.steveklabnik.com/posts/2011-08-19-matz-is-nice-s...</a><p>What can I say?
评论 #5107178 未加载
brotchie超过 12 年前
There exist two types of people:<p>1. "Hur hur, sed piped with other tools already does this, you loser, why did you waste your time?"<p>2. "Cool, a different take on sed written in Javascript. They've written some basic doco and made a npm package, I might try it."<p>Ignore #1 online and in-person, be friends with #2.<p>People who adhere to type 1 behaviour are alien to me. I fundamentally don't understand what their motivation is to respond with such harsh criticism. You've liberated some close source, personal tool, into the public domain. There's some group of people, perhaps in the long-tail, that will use this tool, or learn from the source code. Clearly people have expressed interest in the tool (74 stars and 5 forks).<p>Again, ignore #1, friend #2.
评论 #5106940 未加载
评论 #5107003 未加载
评论 #5107104 未加载
评论 #5106960 未加载
评论 #5106985 未加载
nmcfarl超过 12 年前
First up a clickable link to the project: <a href="https://github.com/harthur/replace" rel="nofollow">https://github.com/harthur/replace</a><p>---<p>When I see a project that reinvents the wheel I tend to think that the author needed a very particular wheel and decided to start with first principles. And even if it seems useless to me - open sourcing it lets me see how this wheel was created, and maybe learn something from it.<p>And of course sometimes someone reinvents `grep` as brilliantly as `ack` and I end up using it every day.
swanson超过 12 年前
This is pretty cringeworthy. I know probably everyone has made an offhanded jab about someone else's software (I know I have) - but in these days of twitter and real-time notifications, we have to remember that the real person behind something is often just a tweet away.<p>I'll try to keep this in mind next time I take to twitter to unleash 140 characters on rage on something that someone has made and cares about.
bstar77超过 12 年前
I've been following 2 of the 3 guys in that twitter conversation for several years. The first thing I can say is that they both are big parts of the ruby community and generally represent it well.<p>With that said, this exchange really upsets me. I've noticed that there is definitely a sense of elitism among the guys that speak at many of the ruby conferences. I think a situation like this is simply a case of them forgetting that Twitter is public and that their personal message board isn't so personal after all.<p>Guys, this is bullying and it's fucking pathetic. It's not the first time, but it needs to be the last. I've at least seen Cory talk and the guy is definitely one of the good guys, but this puts him in really bad light. How much more effort would it have been to post a defect to the github account and informing of the issues?
评论 #5107244 未加载
dandelany超过 12 年前
Many people here seem to be commenting on the quality of the code in question - they are clearly missing the point.<p>Others are offering advice on how to deal with negative criticism on the Internet. They, too, miss the point. The point of this post isn't to complain "people trashed my work and now I feel bad, make me feel better", it's a call to action - "as a community, we should be better than this". Of course there will always be trolls and negative comments on the Internet. Instead of just preparing ourselves to deal with them, we need to be proactive about creating a community where everyone feels welcome to share what they're working on, even novices who don't write perfect code. (my previous thoughts on the matter: <a href="http://news.ycombinator.com/item?id=4700490" rel="nofollow">http://news.ycombinator.com/item?id=4700490</a> )
评论 #5107009 未加载
评论 #5107179 未加载
tiktaktoe超过 12 年前
This is pretty awful. Steve and Corey are both well-known in the Ruby community.<p>Steve is an instructor at gSchool in Denver, for example, which trains software engineers. It's bad enough that they're both respected in the community, but being a student is a vulnerable position. If Steve were my teacher and he reacted that way to a project I released, I'd be absolutely humiliated.<p><a href="http://www.gschool.it/#instructors" rel="nofollow">http://www.gschool.it/#instructors</a><p>I don't think encouraging participation in open source and being a good teacher are that different. A more productive response would've been to submit some issues or pull requests to Heather's project.
tylerlh超过 12 年前
Steve Klabnik runs Hackety Hack (<a href="http://hackety.com/" rel="nofollow">http://hackety.com/</a>) which is supposed to encourage and teach new programmers, but this is the shit he says to other developers in the wild?<p>Nice.
bmmayer1超过 12 年前
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.
评论 #5107079 未加载
评论 #5107243 未加载
评论 #5107848 未加载
评论 #5107109 未加载
评论 #5107492 未加载
评论 #5107131 未加载
评论 #5107985 未加载
评论 #5107192 未加载
ryan-allen超过 12 年前
I kind of expect more from Corey Haines, he's supposed to have a reasonable reputation according to people I know and trust. I'm supposed to be going to one of his 'Code Retreats' in Melbourne this year. I hope I don't get made fun of!<p>Good code seems to be whatever the majority of nodding heads agree upon, and rarely that is merit based. It seems to me that unfortunately most of the nodding heads are people who act like this.<p>I've been ridiculed for my code by people like this, even in situations whereby I've been trying to help solve their annoying problem (and in fact, did help solve their problem). What did I get back? Mostly condescension &#38; ridicule, and no credit.<p>Anyway, if anyone wonders why valuable people run screaming from the software industry, it's people acting like this.
评论 #5114394 未加载
btucker超过 12 年前
To quote Mark Twain: "Keep away from people who try to belittle your ambitions. Small people always do that, but the really great make you feel that you, too, can become great."
评论 #5107314 未加载
biesnecker超过 12 年前
At some point during my teenage years, my dad gave me the one of the most useful pieces of advice I've ever gotten: "the world is full of assholes, don't let 'em get you down, but don't put up with 'em, either."<p>Or, in this case, don't work with them, or recommend that anyone you know work with them, because while the world is indeed full of assholes, it's also full of enough awesome people that you should never have to put up with the assholes.
评论 #5107070 未加载
orangethirty超过 12 年前
I was about to contribute to an OSS project run by one of the people making fun of the OP. Not anymore. I will not work with people who set out to humiliate others on "code quality" (whatever the fuck that means).
评论 #5107867 未加载
kamaal超过 12 年前
Frankly, I think by now I've sort of got used to it. Its not just the case with Open source projects, This happens <i>everywhere</i>. I've been facing these sort of problems since I was a kid. Be the first guy to build a model from clay, or the one to write an essay, or the one to participate in the science exhibition. Nearly everyone will first find ways to crap on your work than find something positive about it.<p>After all these years, I just feel these are just ways a guy who doesn't work find a way to justify his inaction. Just make others work look bad, and then you can just go back relax and do nothing. Make your inaction look better than than the guys action.<p>People just don't get <i>90% of all success is just showing up</i> thingy. Now coming to this project, a guy on twitter as shown on the blog says 'Ever wanted to make sed or grep worse?'- Oh! What does this guy think? Sed and grep are the best designed tools out there? Heck learning sed is a nightmare- the language is so terse it may take you months to make any significant headway learning it. There are like dozens of special cases you have to learn and handle.<p>Then why does sed win? It wins because the tool occupies space where there is no, or little competition. Sed shows up!!!<p>Everytime you see somebody produce a piece of work which is helpful in solving a problem think about why you couldn't have been the guy who could have done that, instead of finding ways to justify why you aren't have the guy who did that.<p>At the end, only ones who don't get laughed at are the ones who do nothing.
madhadron超过 12 年前
More important: why are you listening to what anyone on Twitter says? For that matter, why are you listening to what anyone on Hacker News says (assuming you read this)?<p>Personally, I have no idea what anyone might have said about any of my code on github on Twitter, blogs, or otherwise. No, scratch that, I remember a terrifying moment when I realized the link in a sentence along the lines of "who says Haskell isn't ready for the real world?" pointing to my serial port library in that language. Anyway, that's beside the point.<p>You should have a short list of people whose opinion matters. Hint: your family, a set of people whose character and abilities you respect, and anyone who has direct power over you (though if the third isn't a subset of the second, you might want to work on that, too). Random people on the Internet don't count, no matter how famous they may be in their sandbox.
kstenerud超过 12 年前
It's bullying, plain and simple. There is no excuse for this kind of behavior, nor can I respect anyone who engages in it.<p>Even now I feel my blood boiling...
confluence超过 12 年前
Which is funny because the guy pictured, Steve Kablink, has this sentence on his about me page:<p><i>&#62; Most of my software development work is in teaching these days. I run classes with Jumpstart Lab, and make Hackety Hack</i><p>You'd think a "teacher" wouldn't act like this - but so arrogance goes.<p>With open source - your complaints are worth zero which is the exact same price you paid for the software.<p>Help others with pull requests/contributions - or shut the hell up.
coreyhaines超过 12 年前
Others have linked to this, but, as one of the people who was in the bad, I want to say I'm sorry. <a href="http://programmingtour.blogspot.com/2013/01/im-sorry.html" rel="nofollow">http://programmingtour.blogspot.com/2013/01/im-sorry.html</a>
评论 #5107517 未加载
评论 #5107459 未加载
evanprodromou超过 12 年前
Here are some of Heather Arthur's other projects on Github:<p><a href="https://github.com/harthur/brain" rel="nofollow">https://github.com/harthur/brain</a> - neural network <a href="https://github.com/harthur/classifier" rel="nofollow">https://github.com/harthur/classifier</a> - bayesian classifier <a href="https://github.com/harthur/clusterfck" rel="nofollow">https://github.com/harthur/clusterfck</a> - clustering <a href="https://github.com/harthur/glossary" rel="nofollow">https://github.com/harthur/glossary</a> - term extraction<p>You can see more here:<p><a href="https://github.com/harthur?tab=repositories" rel="nofollow">https://github.com/harthur?tab=repositories</a><p>Nice stuff.
eranation超过 12 年前
I'm surprised no one mentioned it, but hey, there are people using windows out there where that can use this (instead of installing cygwin, or finding out what on earth is the equivalent of grep on windows command line)<p>I think it's just immature behavior to criticize like this and I'm happy to see the top voted comments here<p>Criticize in private, praise in public. Otherwise you are just a bully.
评论 #5108085 未加载
IvyMike超过 12 年前
You know, reading the various devs' tweets, they use twitter in a way that is completely foreign to me. Is there anything these guys think that they <i>don't</i> tweet? ("Hey, who's picking me up from the hotel?" is not something I'd ever announce to the world at large.)<p>This incident shows a danger of working that way--one of these guys apparently had a rude little thought best kept private--and let's admit it, we all have those thoughts at one time or another. But because he tweets <i>everything</i>, that little passing thought was pushed to the world, which is not good for anyone involved.
Anechoic超过 12 年前
FWIW, Corey Haines apologized: <a href="http://programmingtour.blogspot.com/2013/01/im-sorry.html" rel="nofollow">http://programmingtour.blogspot.com/2013/01/im-sorry.html</a>
评论 #5107347 未加载
serf超过 12 年前
Reverse misogyny. Had a man wrote a blog entry about crying due to 'boohoo comments' on the internet would get chastised out of the industry. A woman writes a blog entry about how her feelings get hurt and everyone with a set of swingers breaks down , puts on their big boy/high moral pants, and makes a grandiose apology (via published blog post, rather than private channels, because the fanbase must be informed lest we reduce our hits per month!)<p>Is this really a 250+ post thread about someone getting offended on the internet? Want to see an artist get offended about their work? Go check out deviant art.<p>Open code is inevitably peer reviewed. The development community since the mid 80s has been notorious relaxed, leisurely, casual. No suit, no tie culture. Are you really upset that you received a negative peer review in casual tongue?<p>Science has a similiar dilemma with peer review causing depression. Science and academia, however, do not have the same casual environment, however, and that is reflected in the peer review. Instead of "My eyes are bleeding", you receive things like "Das ist nicht nur nicht richtig, es ist nicht einmal falsch!" ("Not only is it not right, it's not even wrong!") Is that not rude?<p>Don't open up your code and you won't receive harsh sentiments from those that read it. Worked for MS.
评论 #5108866 未加载
评论 #5109792 未加载
kt9超过 12 年前
I don't know Steve Klabnik or Corey Haines (or any of the other people mentioned in the post), but I just lost a lot of respect for them.<p>If I do come across them (in a forum, in person etc), I'll remember more about how they tend to make disparaging comments about people on the internet rather than any code on github.<p>Lastly, kudos to you for writing code, solving a problem and putting it out there. I think is great what you're doing and you should ignore non-constructive criticism.
评论 #5107222 未加载
rdegges超过 12 年前
David Cramer's response (via Twitter): "Are you mad that the Internet disagrees with you? Maybe get off the Internet?"<p><a href="https://twitter.com/zeeg/status/294305445521268736" rel="nofollow">https://twitter.com/zeeg/status/294305445521268736</a>
评论 #5107508 未加载
评论 #5108319 未加载
twog超过 12 年前
Oh the irony <a href="http://blog.steveklabnik.com/posts/2011-08-19-matz-is-nice-so-we-are-nice" rel="nofollow">http://blog.steveklabnik.com/posts/2011-08-19-matz-is-nice-s...</a>
评论 #5107322 未加载
kenneth_reitz超过 12 年前
I'm so tired of this.<p>In honor of harthur's efforts, and to take a stand against bullying, I've decided to fork the project. I'm currently porting it to Python!<p><a href="https://github.com/kennethreitz/replace" rel="nofollow">https://github.com/kennethreitz/replace</a><p>I encourage others to do the same in their respective languages :)
评论 #5109732 未加载
评论 #5108347 未加载
评论 #5110373 未加载
kyro超过 12 年前
That's pretty infuriating. Learn to grow callous to it, laugh it off, and bury your head in the ground and keep pushing forward. You'll have assholes from every corner of the earth say demeaning things. But now I know Steve Klabnik is a dick, and Heather Arthur is a decent human being who's willing to put her work out there. Keep doing that and you'll be the happier person in the end.
jmillikin超过 12 年前
<p><pre><code> &#62; Then I see these people’s follower count, and I sob &#62; harder. I can’t help but think of potential future &#62; employers that are no longer potential. My name and &#62; avatar are part of its identity, and it’s just one step &#62; for a slightly curious person to see the idiot behind &#62; this code. </code></pre> Oh come on now. Potential employers are not going to be crawling through your github on the off chance they can find a hastily-written script to laugh at. If they do claim that they won't hire you because you wrote this tool, they are lying to cover for some less socially-acceptable rejection cause.<p>As for why people are laughing at this project, it's likely because you reimplemented a time-tested tool (sed) in a flavor-of-the-week platform (node-js) without any obvious awareness of how silly that looks. If you put a quick explanation in the README, like "I wanted a 'sed' that used Javascript regex syntax", then I doubt anyone would make any such fuss.
评论 #5107060 未加载
评论 #5107013 未加载
marcamillion超过 12 年前
This is par for the course in the Rails community. Once some Rails devs get more experienced, they think it's ok to shit on everyone else.<p>Granted, not all are like that...but many are.<p>God forbid you should stumble into #RubyOnRails on IRC. Thank God for Stack Overflow!
评论 #5107686 未加载
swdunlop超过 12 年前
A quick scan of the project source doesn't suggest that "it makes my eyes bleed" was a fair criticism. It isn't going to cure cancer or solve deep problems, but who cares? The world is full of projects where people just snap a few cogs together and hit "Show HN" on their way to "... 3) Profit."<p>If you are going to put something in the public space, you have to be ready for any trolls in the vicinity to take a dump on it. It's not fair, but it's the economy of attention and identity at work.
评论 #5107334 未加载
sharms超过 12 年前
I really like the easy to use approach of replace, and don't understand why every hackernews comment falls back to sed and grep. Free software is about choice, and this project is certainly another viable one. Thank you for open sourcing it!
评论 #5107073 未加载
nowarninglabel超过 12 年前
Man I know how this feels. The very first piece of code I ever open-sourced (5 years ago) was put on a "Wall of Shame". Turned out though that the person doing this had never even looked at my code, they were just a petty, jealous person who saw something with a title that irked them. I don't claim to have great code, but I am happy to still be putting lots of open-source code out there, and I'm happy I didn't let that first asshole discourage me. Fortunately, the rest of the community saw that this guy was an asshole, and the "wall of shame" was quickly brought down, but it'd be really nice if we didn't let such petty assholes make it into a position where they can ridicule people in such a public and far-reaching way in the first place.
Fuxy超过 12 年前
What's all the drama about? So what some famous people criticized your code. Get over it. They may disagree with it for whatever reason ultimately it's you who has to find the tool useful. Please don't whine about it just take it with a grain of salt they could be a million reasons they would say that.
kenneth_reitz超过 12 年前
<a href="http://kennethreitz.org/be-cordial-or-be-on-your-way.html" rel="nofollow">http://kennethreitz.org/be-cordial-or-be-on-your-way.html</a>
luigi超过 12 年前
Here's the Twitter discussion alluded to in the post:<p><a href="https://twitter.com/harthvader/status/293829635823792128" rel="nofollow">https://twitter.com/harthvader/status/293829635823792128</a><p>Main justification is the nicer syntax. I agree it's nicer, but would approach it by wrapping sed, not re-implementing in Node.js from scratch.<p>I don't think that excuses the ridicule, though.
评论 #5107001 未加载
评论 #5106965 未加载
评论 #5107080 未加载
评论 #5107229 未加载
manish_gill超过 12 年前
I don't care how "popular" these guys are, they are douchebags. This kind of bullshit behavior is stopping me from trying Ruby.
评论 #5107636 未加载
评论 #5107703 未加载
ispivey超过 12 年前
<p><pre><code> $&#62; diff @coreyhaines-apology @steveklabnik-apology &#60; grace --- &#62; sorry if i made you upset </code></pre> A side-by-side example we can all use to learn how to apologize better.<p>[1] <a href="http://programmingtour.blogspot.com/2013/01/im-sorry.html" rel="nofollow">http://programmingtour.blogspot.com/2013/01/im-sorry.html</a><p>[2] <a href="http://blog.steveklabnik.com/posts/2013-01-23-node" rel="nofollow">http://blog.steveklabnik.com/posts/2013-01-23-node</a>
jumby超过 12 年前
Seriously, i dont know what everyone is getting worked up about. Some wannabe smarty pants said something mean on the internets. How is that different than any other day?<p>Steve Klabnik: what exactly is his claim to fame [2]? Lets all mock him for reinventing the wheel with 'pomodoro'. "Messes with your hosts file" and run some crap ruby daemon on :80 so you can't browse the web for some number of minutes? WTF: it's called a proxy people or iptables. Why reinvent the wheel? OHHHH and a big no no here: shelling out to the system. LOL, the irony [1]. I need HIGH PERFORMANCE on everything I do including a local webserver. Gosh.<p>Corey Haines: huh? some software trainer who has written a well known anything? His github is less than inspiring.<p>Some other ruby people: big whoop. Lets see their githubs and then we can all point fingers.<p>[1] <a href="https://github.com/steveklabnik/pomodoro/blob/master/lib/pomodoro.rb" rel="nofollow">https://github.com/steveklabnik/pomodoro/blob/master/lib/pom...</a> [2] <a href="https://github.com/steveklabnik/bring_back_snowman" rel="nofollow">https://github.com/steveklabnik/bring_back_snowman</a>
评论 #5112040 未加载
lwf超过 12 年前
This seems like a nifty utility that lacks the learning curve of some classic Unix tools.<p>Granted, it duplicates stuff in sed and grep, but it looks like it would probably be useful to many people.<p>A project this reminded me of: <a href="http://betterthangrep.com/" rel="nofollow">http://betterthangrep.com/</a>
crowbar超过 12 年前
Seeing this sort of negative behavior, both in groups online and off and coding and not, affected me greatly, even when I wasn't the target. On one hand, it gave me pause to consider and critique my own work, enhancing the final product. On the other hand, it made me go into over-perfectionist overdrive and too scared to release stuff lest "everyone" hates it. This fear, however irrational, has gripped me for many years. Stories, scripts and projects being left in folders partially because I wasn't sure where to go with them, but I believe in part that I was too scared to see it through and be rejected (The McFly effect, if you will.) I'm only now just coming to terms with it and learning how to, excusing the french, not give a fuck what others think. If I'm happy with it, that's a great start.<p>It's like with improv comedy: Denying the other person doesn't go anywhere and typically ruins the whole scene. Working with the other person in a positive light,though, goes miles and miles.
maxdeliso超过 12 年前
This is kind of saddening to see, but it is a crime that virtually every programmer has committed at one point or another in their careers. Let's be honest - in some cases it can be quite fun to do. The underlying problem is the ego, and the corresponding lack of objectivity that results.<p>From reading someone else's code - even glancing at it in some cases - one can infer a great many things. For example, if the indentation on some code is totally borked, most programmers will immediately be extremely doubtful about whether that code contains any interesting or useful ideas (though of course this is not always the case, counterexample being intentionally obfuscated code). In some cases, they will simply refuse to continue attempting to understand the code and dismiss it as useless. A similar thing can happen at the semantic level when the programmer detects a mismatch between the language/framework being used and the problem space; this dissonance is likely what is irking all of the people who are so childishly ridiculing your replace utility.<p>Sometimes when you're looking over someone else's code you spot some perceived inconsistencies/flaws/bugs. The crucially important part is <i>what you do next</i>. If you choose the route of publicly shaming them to stroke your own ego, then you have not only hurt yourself by appearing childish, insecure and unsociable, but you have also hurt their feelings. It's important to remain objective in these situations, and take the self out of the equation. If you HAVE to indulge yourself by tearing the code apart in a humorous manner then at least keep it between with your friends!<p>As I alluded before, I would guess that the reason people where poking fun at it was probably because there exist a lot of other utilities which have the same functionality and are readily available on most any system. Personally, I thought your code was interesting, and I thank you for choosing to make it public :).
评论 #5107195 未加载
_pmf_超过 12 年前
&#62; I can’t help but think of potential future employers that are no longer potential.<p>Remember that this also applies to the potential employers of the people making these remarks. I don't think employers like these kind of toxic comments and sometimes I think Twitter actually has some use for decent people in that it acts as a honeytrap for exposing certain tendencies in not-so-decent people that would otherwise go unnoticed due to the holier-than-thou aura these people create for themselves. "Bro, look at his code! Guys! Guys! Look!"
Xcelerate超过 12 年前
A tool like "replace" is actually very useful for someone like me.<p>Within the past year I've been learning OS X and the associated Unix environment (coming from a Windows background). At times I wonder how to do find/replace in the command line. So I look at sed. Glance over the man page -- what the heck? Google it; okay's so there's apparently different versions of sed, and OS X has something weird with -i since it's BSD sed instead of GNU sed... and oh look! It uses a different type of regular expressions than I've been using for the past 10 years. And, oh crap, I just accidentally overwrote my file because I typed in the command wrong.<p>The alternative for me is to open the Coffee REPL and get that crap done in seconds.<p>Yeah, I'm slowly picking up the Unix skillset (and Vim is invaluable after finally getting around to learning it), but I think people forget the sheer amount of <i>memorization</i> involved to navigate in a Unix environment.
ripter超过 12 年前
This guy needs to stop being a pansy and grow some balls.<p>Oh noes! Someone on the internet doesn't like my work! My world is over!<p>What are you, a little girl? Nine, maybe ten years old. I'm seeing pigtails and a frilly skirt.<p>Get over it dude. It's impossible to make everyone happy. haters are going to hate. No need to make a big deal about it.
评论 #5113208 未加载
michaelwww超过 12 年前
I hate to say this -- as an older person -- the only solution is to get a thicker skin, because people on occasion are going to be assholes to you. Even good people in a moment of snark. Even when they completely misunderstand what you did and that it is good. And worse, there are those who just tear down anything. It's just a fact of life. I suggest you read Feynman's "What do you care what other people think?" It helped me a lot.
评论 #5109087 未加载
chris_wot超过 12 年前
Even if the tool wasn't as useful as the traditional tool users have liked, I think that the following was an interesting comment:<p><pre><code> I think that, at least hypothetically, this app won’t be significantly faster written in C than in JavaScript. It’s I/O bound, and in JS regular expressions get JITted to native code (which sed won’t even do!). The real slowdown here with our current JS implementations will be overhead for creating and replacing-in strings. This app actually just gave me a crazy idea for how we could optimize this kind of usage, so I wanted to say thanks! </code></pre> <a href="http://harthur.wordpress.com/2011/06/06/replace/#comment-776" rel="nofollow">http://harthur.wordpress.com/2011/06/06/replace/#comment-776</a>
dblock超过 12 年前
Maybe it's cultural, but what was ridiculed was the project, not the person. Russians, for example, make a clear distinction between the two, so what the tweets said didn't shock me somehow.<p>I can totally understand how one can take it personally and I definitely think the apologies were necessary. Even though I am Russian, I would certainly apologize profusely if I had offended anybody for whatever reason and would be sincerely sorry.
评论 #5110420 未加载
evolve2k超过 12 年前
Reimplementing existing tools is a great way to learn and enhance your code fu. Hats off to the author. Haters gonna hate.
webreac超过 12 年前
At my office, I would be very angry if I encounter your tool. That would mean that the guy who has brought it was too lazy to learn the proper way and makes me waste my time learning how to use a useless tool. Your tool has no advantage over standard unix tools, it is just limited to a reduced number of use cases.<p>This kind of tools does not favour improvement of skills or good practice. I think this is the cause of the strong reactions.<p>On the other hand, your program seems well coded and I may use it when I need to code something similar in javascript. Thank you for open sourcing it. I think you should update your README.md file in order to indicate the proper way of doing things and to discourage the use of it for any other purpose than learning.
评论 #5108576 未加载
评论 #5108938 未加载
dougk16超过 12 年前
Apology from one of the tweeters: <a href="http://programmingtour.blogspot.com/2013/01/im-sorry.html" rel="nofollow">http://programmingtour.blogspot.com/2013/01/im-sorry.html</a>
magikarp超过 12 年前
As the lead developer for Cryptocat, this sure rung a bell for me.
评论 #5107291 未加载
einhverfr超过 12 年前
There are a few open source projects which I would be willing to ridicule. In general the projects have traction, a significant history, and horrible code which never gets more than marginally better over more than a decade. It is one thing to be starting out. It is something else to decline self-improvement.<p>The problem though is this (and I have been on the receiving end of very harsh criticism of people I respected, some of which was shown correct over time), that there are often problems with critics jumping to conclusions and at the same time not being very detailed. Thus a response like these tweets can only be a "gut reaction" and never really very helpful to anyone. There is no time involved trying to grok the code. There is no opportunity to discuss what potential tradeoffs have been made or why. These two things need to be corrected.<p>I don't think folks should criticize code without trying to work with it and understand the API's. I don't think folks should leave a critique like "that's the old 1990's way of doing things" or "that code sucks." It is much better to get something like "So I see a few problems with the code... and ...."<p>In fact the few times I have gotten the latter (publishing code and getting responses like "I see some important concurrency issues there. This isn't safe to run on production.") I have been happy with the panning because I could fix the problems. But that's a far cry from what the article is referring to and it is, unfortunately a lot less common, IMO.
shaurz超过 12 年前
Although I don't see anything particularly wrong with that script and why people are laughing at it, she needs to be less sensitive and not take it personally. After all, publishing open-source code is a very public act and makes you a very easy target for criticism. Imagine if the Linux kernel devs cried every time Linus went on one of his abusive rants. Not that I'm particularly defending this abusive behaviour, but you have to be realistic and realise that it happens.
qwertybob超过 12 年前
Someone's going to cry over this? I would have thought going through normal ridiculing in middle school and high school would have toughened someone's skin enough. And why are you even paying attention to the great twitter circle-jerk?
davidbrenneman超过 12 年前
I wonder if the amount of ridicule correlates with the fact that the author is a woman?
ddunkin超过 12 年前
It looks fine to me, I would actually use something like this internally for employees who can't regex. Except the node.js part, but that doesn't make it any less useful, I respect that other people use other tools.<p>The part that I see some may disagree with, is when these apps are posted in public repository indexes (npm). I feel a usefulness filter should be applied. That may be at the heart of the comments. Not that it was posted publicly, but that it was included with a generic name in a public repository (<a href="https://npmjs.org/package/replace" rel="nofollow">https://npmjs.org/package/replace</a>), now it has the potential to be annoying to some users. The way these guys disagreed was just, ugh.<p>I write all sorts of cool little networking utilities for my company, but they were not ever intended for an end user, but could be used or adapted by someone else very quickly. My code doesn't leave my company (probably shouldn't, I'd get torn up just like this, I know it). If it did, I would just not want it in a repository.
klibertp超过 12 年前
I just wanted to point out that the code (I know, it's not about the code) here is perfectly fine JavaScript, much, much better than tons of JS I saw in the wild. "eyes bleed"? What the heck? Have these guys never seen truly bad code? And if it's really just about language war...<p>Look, I understand that one can prefer one language over another, but trashing the code <i>someone already written</i> (meaning you won't be forced to write this thing in this language if the need be) is so short-sighted, so closed-minded that I can't find proper words to describe it.<p>I almost refuse to believe that this is the kind of people who are the "stars" of communities - I really thought that to be really good with one language you need to know and respect many others and I thought that being a "star" involves being being good in the language you want to champion. I guess I was just deluded and we're choosing those who yell the loudest as our representatives. Whatever happened to meritocracy?
mosselman超过 12 年前
This seems like a totally reasonable way to deal with criticism.<p>Also, "I can’t help but think of potential future employers that are no longer potential." because some guy called Steve Klabnik and his wannabe follower Corey Haines who wants to suck up to him say your code sucks?<p>Don't take yourself so seriously please.
EGreg超过 12 年前
First of all, I don't think it matters whether a man or a woman wrote the code. I for one didn't know when I read the link, until I saw this discussion.<p>There are several aspects to this. The obvious one is that anything you put out there is going to get criticisms. Look at Barack Obama being called a socialist muslim atheist, who attended Rev. Wright's church for 20 years. The point is, if you step up, not everyone will like you.<p>Now, being denounced by people who are well-respected and with a big following can hurt. Then again, I doubt it's very permanent. If this is the ONLY thing you've ever done, then you should just do more things.<p>If you are that sensitive about something, don't release it under your own name. Invent a handle just for this project. Kind of like a limited liability company. The art of the pseudonym goes back hundreds of years.<p>Also keep in mind the culture. Unfortunately in my opinion, the coder culture is full of elitist snark against noobs who are too visible. Maybe because it's so male. I have seen far worse reactions to people's code on IRC, especially some assholes in EFNet chatrooms. Freenode seems a bit nicer and well-behaved. But saying ridiculously quirky offensive things in response to code is something coders do to each other all the time. It's just the way many of them speak. I personally don't, and I find it extremely annoying, and I wish it would go away, but it's the reality.<p>Now as far as open source ... I remember releasing what I considered to be a very impressive (at the time) framework, <a href="http://phponpie.com" rel="nofollow">http://phponpie.com</a> , and although I got pretty positive responses <a href="http://news.ycombinator.com/item?id=1682933" rel="nofollow">http://news.ycombinator.com/item?id=1682933</a>, and constructive criticism, it didn't really take off. I tried a bit of self-promotion and it didn't pay off either. So to me, releasing open source is kind of a lot like releasing any product ... if people don't really want it, then you're putting in a lot of effort for almost no return. Think about product-market fit in open source, just like anywhere else.
gadders超过 12 年前
Those people are arseholes, but sobbing? There's no sobbing in business (to paraphrase Tom Hanks).
donnfelker超过 12 年前
This code is better than 90% of the code I've seen. Why? It shipped.
jakejake超过 12 年前
It strikes me as the OP is a new-fangled node.js programmer who unwittingly stepped into shell-script land and felt the judgmental wrath of those who dwell there.<p>This post has a lot of conversation which I take to mean it touched a nerve with a lot of people as it did me. I grew up when computer nerds were not cool and a lot of guys dealt with it by being self-righteous, condescending assholes. I thought those days were behind us now that computer guys and gals are off getting rich and running the world. But clearly the need to feel superior still exists in some communities. It bums me out to see people who otherwise do good work with such a mean-spirited attitude.
redmattred超过 12 年前
People will criticize your work, good or bad, can't take every comment on twitter to heart.
评论 #5107051 未加载
d4vlx超过 12 年前
Developer elitism at it again. The dev community really needs to lose this trait.
brunolazzaro超过 12 年前
I can't find any reasons to tweet stuff like that. Pretty sad to see that the mentality of some "popular" developer is.
评论 #5108126 未加载
jpeg_hero超过 12 年前
I always cringe when i see a blog post along the lines of<p>"A great way to do X in unix"<p>because it is almost always followed by the true unix gurus coming on and schooling the poster.<p>literally, people: assume any unix script you post, no matter how trivial, must meet the standards of a mathematical proof to Fermat's Last Theorem.<p>and i must confess, i look down on bloggers that blithely post a unix script. Not because of their lack of Unix foo, but rather the shear naivete of posting it (and the ignorance of the fact that the grey wizards will come out of their tower and pound you for anything less than perfection)
tlear超过 12 年前
You have been ridiculed by a RoR core team member.. that is pretty awesome.
评论 #5107511 未加载
评论 #5108161 未加载
numbnuts超过 12 年前
Steve Klabnik's apology:<p><a href="https://twitter.com/steveklabnik/status/294302391279435776" rel="nofollow">https://twitter.com/steveklabnik/status/294302391279435776</a><p><a href="https://twitter.com/steveklabnik/status/294302539510337536" rel="nofollow">https://twitter.com/steveklabnik/status/294302539510337536</a><p>He posted this ~2 years ago: <a href="http://blog.steveklabnik.com/posts/2010-09-24-trolling-is-a-art" rel="nofollow">http://blog.steveklabnik.com/posts/2010-09-24-trolling-is-a-...</a><p>I guess he's still working on his communication skills.
评论 #5107988 未加载
almost_usual超过 12 年前
Fuck it, ship it.<p>At least you're contributing to the world and bettering yourself.
TheCapn超过 12 年前
And we wonder why the programmer geek/nerd/shut-in stereotype or whatever sticks. We fucking step all over eachother as a chance to look better. "Oh, look, someone wrote a helper function that does something <i>I</i> already know how to do."<p>What's the benefit of calling that person out?<p>Seriously. Answer that question before you take to a twitter mob.<p>People through this thread argue whether its worth the time, but if it took Heather one hour to write it, the function paid for itself once she used it for an hour of work that would otherwise be spent crawing man pages.<p>Hell, she says it was written a few years ago. Every piece of code I wrote two/three/four years ago can be looked at and often makes me cringe. You learn in time but that doesn't mean you should vanquish your mistakes. Grow from them, show them proudly as a statement of where you were and where you've come from. Whether you've evolved to a better programmer or not if that single function proved useful to you at one point it means that just one single person out there needed it. Does it make you wrong for not knowing/finding the tools it mimics? Maybe, but without someone beside her in the first place how should she have known. Perhaps taking to twitter with a knife for someone's back is a better start?
wolfeidau超过 12 年前
Very disappointed with the people that made these statements, they should know better.<p>Kicking other peoples puppy is never cool, people forget where they started.<p>Some times you have to take this sort of crap on the chin and keep hacking away, the best thing you can do in situations like is just ignore them.<p>I think in this case they have realised how stupid their statements where and are hopefully truly sorry for the hurt they have caused.<p>Also a note to those with many followers, don't be a dick.
bane超过 12 年前
It's astonishing how somebody's earnest hard work, put out in the world for all to see and benefit from, draws so many unmitigated assholes out of the woodwork.<p>Is it jealousy at quickly and elegantly producing something simple and useful?<p>protip: here's how to recognize you made a mistake and humbly apologize <a href="http://programmingtour.blogspot.com/2013/01/im-sorry.html" rel="nofollow">http://programmingtour.blogspot.com/2013/01/im-sorry.html</a> Good on Corey.<p>here's how to do the opposite <a href="http://justcramer.com/2013/01/24/being-wrong-on-the-internet/" rel="nofollow">http://justcramer.com/2013/01/24/being-wrong-on-the-internet...</a><p><a href="http://blog.steveklabnik.com/posts/2013-01-23-node" rel="nofollow">http://blog.steveklabnik.com/posts/2013-01-23-node</a> <a href="https://twitter.com/steveklabnik/status/294302391279435776" rel="nofollow">https://twitter.com/steveklabnik/status/294302391279435776</a> <a href="https://twitter.com/steveklabnik/status/294302539510337536" rel="nofollow">https://twitter.com/steveklabnik/status/294302539510337536</a><p><a href="https://twitter.com/zeeg/status/294307568019464192" rel="nofollow">https://twitter.com/zeeg/status/294307568019464192</a>
TheEmpath超过 12 年前
1.) Open Source is a meritocracy intentionally designed to counter the never-ending threat of software homogenization that profit motives lure us into embracing, not a soapbox for fleeting quandaries about morality and "social change" (whatever the hell that means for the week). Apples and oranges. Mountains and molehills.<p>2.) Open Source is not some cool kid's club where people who understand what a semi-colon can do try their hand at avoiding the recession. Even if coders did not make the money they make, THEY WOULD STILL BE CODING BECAUSE IT'S ABOUT TRICKING FUNDAMENTAL PARTICLES INTO DOING MATH FOR YOU. IT'S FUCKING AWESOME SO PUT UP OR SHUT UP.<p>3.) You code... you put it out there... and you have, literally, -ZERO- idea what is going to happen. People might like it, people might hate it.<p>Now this is the important part to my final point:<p>---IT IS NOT YOUR PLACE TO CONTROL OR FILTER THOSE RESPONSES---<p>So you throw some code out there and people don't like it? You get mocked by some asshole? And? What, did you expect civility and ponies and rainbows? What fantasy model of human interaction are you relying on as the core of such assumptions?<p>Nay, sentient being. It is your place to ADAPT to those responses.<p>So... in short....<p>There is a BLAME option in version control, so point out the flaws in her code or shut up. So there's that.<p>Now as per the frothy mob trying to turn Open Source into some anti-bullying kumbaya because they watch too much Rachel Maddow...<p>There is -not- a SHAME option in version control, so either understand what problem Open Source is trying to solve (promoting software heterogeneity) or go back to the service sector where people are forced to be nice.
评论 #5112628 未加载
simonh超过 12 年前
I have an application I've been working on for about 5 years. I started it as a way to learn desktop and object oriented programming, and it's now grown to something like 10,000 lines of code. There have been long periods of 6 months or more when I've not touched it, then gone back in and get started again, as a result the code base is a bit of a mess. The coding style is a bit haphazard and it includes a fair sprinkling of ugly hacks.<p>But by and large it works and would make a decent alpha release. There are a few bits of functionality that need to be made more robust, which I'm working on now, and when that's done I'm going to bite the bullet and load it into Github. I've implemented a plugin system so users can customize it, and tried to do my best to make that part of it as consistent and clean as possible.<p>I do worry that uploading this thing could cut both ways. I'd like it to get some use, but I'm very aware of it's flaws. I wonder home many projects never get released because the authors are worried about this kind of reaction.
berlinbrown超过 12 年前
Because of this post I learned a little bit about node.js and may want get into.<p>See how that works. And she has other interesting projects as well.
zachrose超过 12 年前
harthur, your work is awesome.
egypturnash超过 12 年前
So here is a thing I've learnt as an artist: never offer unsolicited critique of other people's work. It makes you look like an asshole.<p>If someone WANTS crit, I will ask them if they really, really want it, and give them the caveat that I am probably going to rip them a new one. For my best artist buddies, I don't bother with the preface. They know how to detach themselves from their art.<p>And sometimes, yeah, I come across something so amazingly badly made that it becomes a thing of wonder. When I want to share that, I don't do it in public. I use private, limited channels. Email, private forum, locked Twitter account, whatever. Come to think of it I really tend to just say "holy cow look at this" rather than being super specific.<p>Tearing other people's stuff down in public makes you look like an asshole, period. Especially when you are tearing down the work of people less skilled and/or well-known. It also makes you look pretty insecure.
rehack超过 12 年前
Okay, I upvoted this story for the sake of 'missing kindness', in general on the Internet.<p>But after having understood, the whole story. What replace does is that, basically it is a good small utility for the author of the post to replace some content from a lot of files, also recursively going through directories. And the author happened to make it depend on nodejs.<p>In defense of these folks, who made nasty comments: they appeared to have made so, in the context of <i>this nodeJS-based-replace</i>, attempting to replace the sed/awk/grep and unix scripting.<p>To any long time unix user, any quick hack to replace the said commands, does indeed appear to be falling short. And also a bit of a <i>why would you need to do such a thing?</i>.<p>Honestly, they should have been just empathetic enough to understand a non-unix user, hacking a quick utility, with the tools she is familiar with (nodeJS and javascript) to come up with something useful for self and friends.<p>edit: rephrase
f4stjack超过 12 年前
Github is not a beauty pageant. We do not write code for the people to evaluate them aesthetically. What we do, however, is to learn and teach. What we did to solve that problem and if there are others, they may use our solution as a step to solving their similar problems or better, they may offer a better solution.<p>What did these tweets add to the so-called "eye bleeding" code? What did they teach? What did we learn from all of these?<p>If I was in Heather's shoes, I would feel anxious whenever I sync to my public repo in Github. Or anxious whenever I code, worry whether this code is "beautiful" enough. And, folks, no one has any right to make a person feel like this.<p>I don't mean "no there shouldn't be any criticism on github" on the contrary, if you have something constructive to say, go ahead and shoot. I would not make a repo public if I don't want to see my mistakes, improvement starts with realizing what a mistake is.
kysol超过 12 年前
I'm amazed someone hasn't said "well that escalated quickly".<p>On topic, I've never really released code due to being scared of peer-disapproval, and also paranoid from the public display of potential attack vectors I haven't seen. I don't think that I will ever open source a live project due to these issues.<p>You should never say "that's bad code" without giving a reason why, and or showing how to make the code better. It's like walking out of a new release block buster movie and saying in a louder than normal voice "well that movie was bad". Anyone that can hear is going to start questioning, "what movie?", "why was it bad?", and instantly they are going to start wondering if the next 3 hours of their life is going to be wasted.<p>Basically I put this down to a generation of self absorbed twats that like to hear their own voice, and feel all warm and fuzzy inside when ever they grunt something "amusing" to their minions.
obstacle1超过 12 年前
It is an unfortunate fact that this sector of the world has a higher proportion of absolute assholes than other sectors. Egos are extremely fragile, cognitive dissonance is high, arrogance is the norm.<p>I'd say don't let it get to you, but that'd be dishonest. It'll get to you. The thing is you can't stop. That's the hard part.
slohr超过 12 年前
This topic is so hot in the community it's hard resisting the urge to weigh in. That being said I don't think I can add much to the particular direction the current conversation is going.<p>But given that I gave in to the urge to comment I do want to say this: Good job Heather! Keep up the coding and continue to have fun doing what you're doing. Solve the problems you see fit to be solved.<p>My guess is that you have a pretty good support network and you'll brush this whole thing off soon enough. However the next time you are one key-stroke away from submitting another project to GitHub, and you are given pause due to this whole fiasco, I say charge forward and submit. I look forward to seeing your contribution to the community. Just as I look forward to any contribution from anyone across the globe.
jeffdavis超过 12 年前
I agree with the other comments here. It reminded me, unfortunately, that I did something like that once:<p><a href="http://thoughts.davisjeff.com/2007/11/17/700-queries-for-one-page-load/" rel="nofollow">http://thoughts.davisjeff.com/2007/11/17/700-queries-for-one...</a><p>I can rationalize it in a few different ways, I'm sure. But the bottom line is that, if it's open source software, the correct approach is to either offer constructive criticism directly to the developers, or just not say anything without being directly prompted (e.g. "should we use this software").<p>I can see exceptions for major projects with a large developer base. You still need to keep it constructive, but I don't necessarily think you have a responsibility to join the mailing list for everything you want to complain about.
jondot超过 12 年前
I wish the guys involved would submit pull requests to amend what they thought was so bad. It has a better educational and apologetic value.<p>It also shows the kind of respect people should get; if you don't like the code you're seeing on Github, improve it and submit a pull request - why not?
评论 #5111006 未加载
mark_l_watson超过 12 年前
I don't do much JavaScript or Node development but her projects look cool. As frustrating as this must have been for Heather, I hope that in the long run she might get some value from the publicity.<p>I was going to comment on the twits (misspelling intentional) but decided to stay positive.
pekk超过 12 年前
This is a cultural problem. I don't see any reason to believe that this is because she's a she. This kind of horrible arrogant douchebag attitude is just an epidemic. If you are a guy, and especially if you are nobody known, you do not have anything like this recourse.
hardik988超过 12 年前
I replied to @steveklabnik's tweet saying (<a href="https://twitter.com/hardikr/status/293819210965082113" rel="nofollow">https://twitter.com/hardikr/status/293819210965082113</a>)<p><pre><code> "There's also a search command. It's like grep, but with replace's syntax, and slower!" Wow - I'm sold! </code></pre> If it was not clear, I was just kidding - and I apologize if my tweet and caused her any sort of distress. I'm just a novice in the open-source world, and I really respect harthur for her contributions to open-source. I was just "smiling" about Javascript's use to replicate grep. In fact, it is my Github everyone should be laughing at - it is filled with small useless scripts, and really terrible code.
akrymski超过 12 年前
Thank you Heather! I could never be bothered to remember the commands for the swiss knife that is sed to do something as simple as this. Why I love this:<p>- js syntax for regular expressions is what I'm most familiar with - defaultignore is very helpful - completely cross-platform - can be used directly from my other node projects that need to search and replace files - it's something i'd never be bothered to write because looking up sed syntax takes less time - so thank you for taking the time to do it and open source it!<p>Don't get me wrong - sed's great cause it's so powerful. Bash is powerful too. But I'm not a fan of either. Software should make our lives easier, not force as to learn cryptic commands to get simple things done. Compare "sed --help" to "replace --help". What will the future generation prefer when they need to do a basic search/replace task? The route of least resistance of course.<p>Making simple tasks simple is what real innovation is about. I don't consider myself a poor developer, I know a handful of languages, I'm just not a linux geek because I believe that interfaces should come first. I'm a developer / designer and I love simple and elegant solutions to every-day problems. Your module is exactly that. The reason some "experts" are up in arms is because it challenges the status quo. You no longer need to be a linux wizard to search and replace files. Hell - you don't even need linux. And the simplicity and approach of Node is what makes it possible. As Steve Klabnik said - this is actually their way of showing how much they hate node. And hate is a powerful word for "being afraid". And I'd be too if I dedicated a good chunk of my life to becoming a Ruby expert. "Ever wanted to make sed or grep worse?". Hahaha. I guess Apple I was also worse than the all-powerful mainframes of its day. That's probably exactly what the IBM guys said. Buy a PC that doesn't come with a screen? That does only a fraction of what IBM PCs do? Ever wanted to make an IBM PC worse? :) When the experts are afraid - that's when you know the Node movement is on to something.<p>PS Already almost 400 people have starred your project - I think that's saying something. Would be interesting to know the number of installs :)
kurko超过 12 年前
Klabnik is the first to fight for rights etc, now he's doing exactly the opposite. He's trying to rise his own status by decreasing others'.<p>I wonder if all his fights aren't just a means to justify his own weaknesses and need to feel superior.
lilsunnybee超过 12 年前
The criticism is so stupid too. Just because there's another tool out there already that can accomplish the same thing, does that mean no programmer should try to do the same thing again ever? How else do people learn?<p>And if she wants some of her work online to show potential employers or just to share, whats wrong with that? People should just mind their own business, and not be assholes.<p>If you don't like an open source project, make the same thing yourself, and make a post about how it improves on the older one. Don't tear someone down for not being as "smart" as you.
deltasquared超过 12 年前
I don't understand, not the critics, not the project.<p>Why insult something that someone obviously put a lot of care into?<p>The code is nicely formatted and clear. I can see how it works. Props to harthur for making something easy to read and then sharing it on Github. Both readable code and sharing should be encouraged.<p>I don't really get why someone would want to implement text processing utilities in node.js. It seems to be a bit heavy on the overhead.<p>Might someone re-implement harthur's user interface (which a bunch of people seem to like) in c, and submit it to the GNU Coreutils project?
conradfr超过 12 年前
You know the Gmail extension that delay your mail, or the one that ask you at 2am if you really want to send that (drunk) text ? They should implement that in Twitter.<p>(note: I avoid Twitter as much as I can)
rytis超过 12 年前
I see absolutely nothing wrong with this approach of writing your own tools. If a person feels that it's better, why ridicule it? Noone is forcing you to use it. If you feel it's not for you, that's fine.<p>On the other hand, some people are advocating this approach as a way to improve your programming skills: <a href="http://www.rodrigoalvesvieira.com/copy-unix/" rel="nofollow">http://www.rodrigoalvesvieira.com/copy-unix/</a>
JabavuAdams超过 12 年前
So, I've felt the same way about uploading my own work-in-progress code to GitHub, but I use it as an antitode to perfectionism / procrastination. It's almost a form of militant pragmatism.<p>I've worked at some quite successful small companies, and they all share the property that you really don't want to examine the code too closely. The sausage is inevitably somewhat disgusting on close examination.
sharjeel超过 12 年前
Steve Jobs' response:<p>"By the way, what have you done that's so great? Do you create anything, or just criticize others work and belittle their motivations?"
vital101超过 12 年前
This is a lot what it feels like to blog about something technical, and then have someone swoop in and question not just your article, but your parentage and your IQ. It hurts a lot that people can't be constructive with their criticism, but I hope that Heather continues posting open source projects. Haters 'gonna hate, you just can't let them bring you down.
rjempson超过 12 年前
I've followed 2 of those individuals on twitter in the past. Note the tense.<p>I found CH to be particularly tiresome, all show and little substance. Also very much prone to contradictions, he doesn't seem to realize that people remember things. I haven't met him in person, but I imagine he talks quite a lot at a loud volume.
davesque超过 12 年前
This blog makes an extremely good point. The industry we work in is very competitive and it's easy to get into the habit of making snarky comments about other people's code, even if you're actually not a jerk in real life. It's always good to remember that you should avoid doing this as often as possible.
kodablah超过 12 年前
Similar thing happened to me when I wrote a nodejs abstraction in GWT: <a href="https://twitter.com/jdub/status/25537683967180800" rel="nofollow">https://twitter.com/jdub/status/25537683967180800</a>. Gotta shrug off the haters when it comes to showing projects like this. It is the internet after all.
meerita超过 12 年前
I never understood such gloating on open source communities. If you can change it for good, why gloat, why complain. There's obviously many reason to rage when you see bad code on commercial and privative stuff, but on open? Dammit, fork it, change it, contribute.<p>It was a bad behavior and people should understand it.
suhair超过 12 年前
The disturbing thing is I never expected such a behavior/ being an accidental asshole (as he has later confessed) from a reputable online identity like @steveklabnik, a contributor to <a href="http://thechangelog.com" rel="nofollow">http://thechangelog.com</a> besides many things
stephengillie超过 12 年前
If their criticisms aren't constructive, they're wasting <i>your</i> time. Don't let them. Ignore them if that's all they have to say. I don't care if it's your mom or your boss or Jeff Besos or Obama, wasting a person's time is an insult to that person.
e4c5shev超过 12 年前
This just verifies my experience that Corey Haines is a fake.<p>His cult of personality is defined by lots of high-fives, 'that's awesome', 'i am such a positive person' statements.<p>So, he like to pretend he is really positive, nice, friendly... but this event shows that is all fake.
xmlblog超过 12 年前
I've forked your repository and tried to offer some helpful insights: <a href="https://github.com/xmlblog/replace/blob/master/replace.js" rel="nofollow">https://github.com/xmlblog/replace/blob/master/replace.js</a><p>I hope you find this useful in some small way.
r4pha超过 12 年前
Now that's a feature I'd like to see on github: an asshole filter.<p>What really bothers me is that, like me, I'd say a lot of those people learn daily from the work of others on the internet. What about giving something back? What about doing something to add?
zeeg超过 12 年前
(I copied this from another HN posting)<p>I was one of the people who made a comment about this. I'm also assuming the reason I was pulled into this is because people much more important than me said similar things.<p>I'm not going to defend that I think attempting to replace sed/grep is a bad idea (especially not in 140 characters), but I will defend people's opinions.<p>Everyone has one, most of them you won't agree with. Whether they're nice or not. I'm generally not a nice person, at least online, that's my choice. That said, especially with this being the internet, you have to deal with others opinions.<p>While some people may go above and beyond (even myself sometimes) and actually be very mean with their opinion, that doesn't change the fact that they're entitled to it. If you don't like it, ignore it. If you can't ignore it, then you won't survive.<p>The fact that people somehow managed to turn this into the continuous drama debate about gender is just pathetic.
评论 #5108864 未加载
评论 #5108583 未加载
Nordichacker超过 12 年前
oh my god - people will always throw shit - often for no apparent reason at all. In fact - I would take it as a compliment. If you do great things, and shit come your way, it means you're successful. Don't let it get to you. Ignore it.
skrebbel超过 12 年前
harthur, if it's any help, I immediately `npm install pg replace`'ed. I love your tool's simplicity, for common scenarios, compared to the more common alternatives. Without all this drama, I wouldn't have come across it!
cslarson超过 12 年前
Just starred your project on github. Thanks for bringing it to my attention.
codysoyland超过 12 年前
Chris Dickinson's response to this whole ordeal is very much worth the read: <a href="https://gist.github.com/02cbd380b7b3b1df62b5" rel="nofollow">https://gist.github.com/02cbd380b7b3b1df62b5</a>
pan69超过 12 年前
The truth is that there are a whole bunch of morons out there with petty little opinions and with no real achievements of themselves. They call the people Trolls (with a capital T). Ignore them.
评论 #5108791 未加载
suyash超过 12 年前
@Author: Everyone has a right to say and have an opinion. Learn to accept people's reactions and hopefully you will understand why they said what they said. In other words, stop being a pussy!
countessa超过 12 年前
sucks to be on the receiving end of some nasty/uncivil comments. On the other hand, <i>you</i> are now the person that re-wrote sed. That's pretty awesome.
arcatek超过 12 年前
I'm curious : what is the use case for this utility ? If I look at the README, it says :<p><i>&#62; Modifies files when matches are found</i><p>Just like sed's -i option (except that -i allows you to specify a backup extension just in case)<p><i>&#62; Recursive search on directories with -r</i><p>I usually use find with sed, so it's not so much a problem (and it actually allows to filter the files by extension, exclude directories, etc, which is pretty handy)<p><i>&#62; Uses JavaScript syntax for regular expressions and replacement strings</i><p>I'm not sure that it's an advantage :)<p>So, is there something that I missed ?
评论 #5106883 未加载
评论 #5106909 未加载
评论 #5106987 未加载
评论 #5106870 未加载
评论 #5106859 未加载
评论 #5106874 未加载
评论 #5106863 未加载
评论 #5107477 未加载
评论 #5112370 未加载
berlinbrown超过 12 年前
Also, I think the concept could probably be done with sed and whatever bash scripts.<p>But the code didn't look that bad. It is Javascript after all.
ricardobeat超过 12 年前
850+ votes, 480+ comments and counting. Who is going to write that easy to use, 'properly written' shell wrapper around find/sed?
gcv超过 12 年前
Nice job, guys.<p><a href="http://www.lolbrary.com/post/35279/gamer-girls/" rel="nofollow">http://www.lolbrary.com/post/35279/gamer-girls/</a><p><i>headdesk</i>
marklittlewood超过 12 年前
XKCD has the answer. <a href="http://xkcd.com/1053/" rel="nofollow">http://xkcd.com/1053/</a>
jpeg_hero超过 12 年前
a girl?<p>does that make a difference?<p>(honest question)
kschua超过 12 年前
Better shit code that gets the job done than beautiful code that gets nothing done
davethespider超过 12 年前
I spent a summer once writing a substandard 'ls' command because I liked doing it.
jezi22超过 12 年前
this is why i am afraid to open source my own personal projects. this fear.
mulligan超过 12 年前
Isn't the whole node.js ecosystem subject to this criticism?
cdibona超过 12 年前
One nit: I'm not seeing an open source license in the repo. This is what would keep me from using or caring about this code snippet or start caring about how the developer was being treated.<p>Is there one and am I just missing it?
jpeg_hero超过 12 年前
dude, unix is serious.... oh, wait a minute...<p>Never mind.<p>"Everybody gets a Trophy!!!!!"
shaurz超过 12 年前
The Unix weenies strike again.
shizzy0超过 12 年前
No good deed goes unpunished.
paulhauggis超过 12 年前
The open source zealots have been like this for years. 5 or 6 years ago, I forked a project and started charging for it. I was completely within my rights to do so as I followed the license (GNU) specifically and also gave out the full source code.<p>This didn't stop the death threats, taunts, and aggression I got from the general community. This and things like the recent word press theme debacle have put a bad taste in my mouth when it comes to open source.
andyl超过 12 年前
"Then I sob harder. I can’t help but think of potential future employers that are no longer potential."<p>As an employer, I expect there to be criticism associated with a person's code. Criticism isn't a black mark.<p>But sobbing in reaction to criticism? Getting all upset about mild criticism from a-hole strangers on twitter? That's a black mark.
DannoHung超过 12 年前
Who else here really doesn't enjoy using sed, awk, grep, and xargs?<p>I try to use ack whenever I can avoid grep or find, personally. I wish there were better replacements for the other tools and that they were widely available (possibly as portable libraries).
camus超过 12 年前
big shots tend to forget they are just humans and make mistakes. like all of us.