Humor on the web and how to stop it - <AUTHOR> http://blog.bumblebeelabs.com/social-software-sundays-1-humor-on-the-web-how-to-stop-it/ <comment><USER2> Wikipedia is an interesting case study in that not only has it not been overrun by joke memes, but it has virtually eliminated humor from both its public-facing articles and its internal communication. I spent several years as a fairly active member of the community -- never an admin, but enough to get frequent unsolicited requests to voice in on edit disputes. During that time, every word I typed was in that awkward mock-professional tone civil servants use, masked only slightly by saccharine PR-speak when talking to noobs. Jokes were a dead giveaway you were an outsider, and there's nothing more important in the world of WP than sounding like you know what you're doing.

Despite all the annoying pretense and the persistent damage to my writing style, I suspect this sort of culture might be necessary, or at least not harmful, to what WP is trying to accomplish. Formality is a sign that a group of people needs to get something done despite not necessarily liking each other very much. This has always been ubiquitous in the physical world of geographically assigned coworkers, but quite rare on the Internet.

<comment><AUTHOR> This is interesting. Thanks for the info.

</comment></comment><comment><USER3> It comes down to culture. HN for example, generally frowns upon humor unless it really is providing some kind of insight into the discussion -- I've called this place the least funny site on the Web and I still mean it.

<comment><USER4> I disagree. HN is humor neutral and stupid hostile.

What gets passed off as 'Internet humor' is not actually funny. It is too stupid to be funny. It is something else. I think this article inadvertently makes this argument. (Some sort of postmodern misappropriation of the idea of humor).

To say that a community or group of people frown upon humor makes me depressed. Humor is a fundamental human coping mechanism. It is how we deal with things that are painful or stressful or otherwise bad.

If the culture here starts claiming that humor is 'frowned upon,' I'm not letting the door hit me in the ass as I leave. Who the fuck wants to be a part of that culture? I'm not a damned robot, I like things that are funny. If it makes me laugh, how will I be frowning?

We've all observed that x website 'went downhill' when people started using 'internet humor'. This isn't the fault of humor in general, heck, it isn't even a causal relationship; it is correlative.

It is just as possible that as the user base expanded, you had a higher quantity of people who could not meaningfully contribute to the debate. One way for these users to interact with everyone else is through stupid memes and lolcatz.

There are plenty of other ways, however, for them to interact with the greater community, and (it seems to me that) these are just as toxic (trolling, flame- baiting, repeating what someone else already said, repeating platitudes or creating various forms of cults of personality and hero worship around the users that actually can contribute meaningfully).

So please, 'frown upon' humor that contributes to a low level of discourse. Burn it to the ground. But don't resort to a slippery slope argument against all humor, and don't turn a blind eye to behaviors that are just as bad.

<comment><AUTHOR> The problem is how do you craft a set of effective community norms that allow for one type of humor and not the other? What are the design primitives that support this enforcement?

I don't quite know the answer to this which is partly why the essay remains unfinished. But I do want to note that the upvote/downvote mechanism happens to be especially vulnerable to pathological humorous behaviors. A small, concerted clique of the "wrong element" can radically change the tenor of the site compared to a large and silent majority and, once the shift is made, the trend becomes self-reinforcing.

All it takes is a couple of redditors coming over and unthinkingly upvoting the humorous answers to start a mass movement.

<comment><USER5> The community norms around here reward humor that is (1) relevant to the topic at hand, and (2) insightful, and additionally (3) not mean-spirited.

Trolls only have an outsized influence to the extent that the rest of the community has fuzzy or differing ideas about community norms. The larger the community the more likely this becomes. Trolls work by flirting with the boundaries of acceptability.

<comment><USER3> I agree with this. Every so often a little humor slips through the HN downvote filter and it usually fits your supplied parameters. I'd also add (4) not ironic or sarcastic (5) not absurd.

Crafting a joke that fits all that is probably worth an upvote just on principle.

</comment></comment></comment></comment></comment><comment><USER6> What's also interesting, beyond the idea that we're internet citizens (and not just American, btw), is that we switch between cultures. A lot of people on HN are also active on reddit, and were on digg before that. And while it's true that you drift between your favourite communities, you also change your attitude dependent on which one you happen to be visiting.

I could change tabs over to reddit in a moment and post in a pun thread, or head over to twitter and #stickto140.

So not only are we netizens, but we're also often multi-nationality netizens.

<comment><USER3> It reminds me that it's an echo of the old cyber-punk concept of corporate countries. In Snow Crash, "Mr. Lee's Greater Hong Kong" and "Narcolumbia" represents franchised corporate/country soil entities one can slip into and out of as needed, and might be interspersed throughout a geographic region like McDonald's and Burger King.

It's an interesting idea where the aspect of national membership is decoupled from identity. I think you're closer to how it actually works though, where people assume different identities depending on their virtual national membership.

</comment></comment><comment><USER7> The #python IRC channel has a "NO LOL" policy. That channel is one of the most helpful channels on Freenode.

The article makes a great case for why humor on the web can be bad for the web. But I was disappointed that it stopped there. It didn't go into how to stop it at all.

Humor is important but only when carefully practiced in the most tasteful way. The humor-user must provide undeniably useful content sprinkled with humor for it to be positive.

<comment><USER8>
      The #python IRC channel has a "NO LOL" policy. That channel
      is one of the most helpful channels on Freenode.

Does it proof anything?

<comment><USER8> No, honestly. I want to know whether you can turn any IRC channel to very helpful simply by having "NO LOL" policy, or does it work the opposite way: by allowing LOLs your channel will become less helpful…

Post hoc ergo propter hoc?

</comment></comment></comment><comment><AUTHOR> I am the author of the piece and I agree the title is poor but the title came before the piece did so apologies that it did not go where I promised.

The title is a riff on Johnathan Zittrain's "The future of the internet & how to stop it" <http://futureoftheinternet.org/> and the post was a pretty free- form exploration of the topic written with a tight deadline.

I'm glad people are enjoying it, I honestly didn't know what the reaction would be when I posted it.

<comment><USER5> A response: <http://xkcd.com/794/>

Take a look at any play, novel, poem, song, painting, etc. etc., and you'll find that they're all filled with in-jokes and references to some shared canon or to recent events. The idea that once you hit the internet this becomes some uniquely exclusionary practice seems pretty historically revisionist.

<comment><AUTHOR> This is one thing I neglected to address in my piece due to lack of space. It's not a difference of kind but of magnitude. Offline humor also serves many of the same operational purposes that online does but they are not solely comprised of them.

<comment><USER5> I think you need much more evidence. The reason that most of the offline written material we look at (e.g. famous novels) is "substantive" by comparison with online material (e.g. YouTube comments), is that the vast vast majority of the complete crap has been filtered out by editorial and publishing processes, or lost to time. The reason that internet jokes seem obscure to people not in the internet community is not that they're "operationally different" than other jokes, but just that jokes quite often lose meaning out of context.

I would guess that if you looked for instance at the letters received by congressmen or newspapers, you'd find just about the same amount of incomprehensible garbage.

I dispute your claim that there is a substantively different purpose to the use of "humor" in online writing vs. online writing: it doesn't match my experience. But even if it happens to be true in some sense, your essay doesn't provide convincing evidence.

* * *

On the other hand, I think your commentary about the internet having a "citizenry" is pretty interesting.

<comment><AUTHOR> I agree, the purpose of the piece was not a proof, but a narrative. The long tail of quality vs edited, curatorial content is an orthogonal argument to the one I'm making.

I guess I'm arguing that, given the same person, placed in two contexts, they will produce two different types of humor and the offline version will be objectively funnier than the online version. And the core of the difference between the two is due to the affordances of the space. Is that a bit clearer?

<comment><USER5> Okay. But I would guess that the main reason that the offline one is "funnier" (insofar as that's true at all) is that you're more likely to know the guy making the joke. If you just walked up to a random guy on the subway and he started telling a joke, it wouldn't be any funnier than if you found the same stranger's e-joke.

People clearly tell different jokes to different audiences, but I don't think the distinctions in audience here are inherent in the medium. For example, someone telling a joke in an IRC channel with a bunch of regulars who know each other will tell a different kind of joke than someone writing a Youtube comment. Likewise a guy might tell his poker buddies a different joke than he'd scrawl on the inside of a bathroom stall.

<comment><AUTHOR> It's funnier because the people who are joking know each other and are able to affect each other's lives in much more significant ways.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> The title isn't very descriptive of what's actually in the article, but the article itself is a very good insight to the 4chan mentality.

If you are doing any kind of a social/crowd-sourcing website, you need to understand the topics mentioned in this article, or it will bite you.

<comment><USER10> om nom nom nom

<comment><USER11> This is actually a great example of how to discourage stupid humor on a (mostly) serious website.

Heck, I downvoted it.

</comment></comment></comment><comment><USER12> I've been a member on one particular site for the last 10 years. Our inside- jokes help us create continuity in our community, a continuity that has helped maintain a certain level of maturity and professionalism that isn't well matched anywhere else. Yes, an inside joke _is_ a signalling by the user that they are part of the "in crowd". That is exactly the point. The only way the user can be considered part of the "in crowd" is if they have participated to the point to be generally recognized by others as such. Proper execution of institutional jokes not only signal to other non-members that you are a member, but to members that you are worthy of being a member.

<comment><AUTHOR> If you're comfortable revealing the name of the site, I could give a more insightful comment but yes, humor becoming operationalized also means it can be operationalized for good.

</comment></comment><comment><USER13> When I read the title I thought 'Why the hell would I want to know how to stop humor online.' The article is interesting and would be better served by a title like:

Humor on the web and why to stop it (if you run a community site)

<comment><USER14> Agreed. For a moment, I expected the piece to be some kind of satire.

Trying to avoid having your social network trolled by 4chan types doesn't really fit my idea of "stopping humor online." Goatse isn't exactly what I think of when you say "humor."

</comment></comment><comment><USER15> As the author notes, one aspect of humor is that it can tend to be off topic, ie about being funny rather than the content of the thread. But, he is mistaken about absurdity; absurdity has a logical form and is commonly employed in discussion. The difficulty is that absurdity easily slides into sarcasm because it can't be wrapped in rainbows and delivered by unicorns.

The article misses a key aspect of humor (and its intellectual companion wit): appropriateness. Sites without humor may be appropriate for some purposes, particularly those which strive to provide only factual information -- such as the previously mentioned Wikipedia where humor (and wit) is never deemed appropriate.

From my observation, HN is accepting of humor and wit, but the standard of appropriateness is generally higher than elsewhere on the web. As is the case with Wikipedia the standard is maintained only by a ruthless and constant editorial commitment to community standards.

I believe that for sites where users generate editorial content at least some forms of humor will always be deemed appropriate, e.g. self-deprecating and that which softly defuses contention. For building a diverse community of experts, some level of off topic humor is necessary. Otherwise you only get fanatics.

Although most people don't want to participate in 4chan, they have an intuitive sense that life with Jorge of Burgos in charge is likely to be worse.

</comment><comment><USER16> That's a good observation: that humour online is mainly about showing off rather than bonding, like offline.

<comment><USER17> I don't think it's showing off. No one is excluded from adding to the joke or building on a meme, so long as it's funny. In that way, it's more meritocratic. Yes, you have to learn what the joke is about, and it creates its own culture and language and community, but that doesn't make it exclusionary just because it's not common knowledge. Exclusionary would be saying, "YOU can't say that because YOU are new here."

</comment></comment><comment><USER18> Are there any design/font people that can tell me why the font in the article is so hard to read?

<comment><USER19> It looks fine to me. What browser/OS combination are you using?

<comment><USER18> win server 2k8 (r1) + Chrome.

</comment></comment></comment><comment><USER20> Wait, did he seriously just use goatse as an example of internet humor?

"By far the largest majority of humor on the web comprises of memes, catchphrases, remixes and repetition. All your base are belong to us, lolcatz, goatse and the rest."

<comment><USER21> I've seen far too many image threads of real-world objects staged/photographed to mimic goatse. I wonder how many kids are going to see these (unaware of the origin) and come to the conclusion that the concept of two hands and a circle are somehow hilarious.

</comment></comment><comment><USER22> As a citizen of the internet, I do want to point out that the perception of humour varies in what he ironically refers to as meatspace. To some people, "that's what she said" really does sum up their entire sense of humour. The internet, like the world, has a lot of different types of humour. If you don't like it, eat an onion*

*As the author of this blog post does not explain how to stop these comedic citizens.

</comment><comment><USER23> i'd argue that almost everything done online (posting to twitter, writing a blog, and yes posting comments here, updating facebook) is done primarily to show off, garner attention, feel important, show people how gosh darn smart you are, etc.

anybody who disagrees with this just wants even more attention.

<comment><USER17> I think that says more about your perception of the world than online users' perceptions of the world.</comment></comment>


Apple App Store Bans 'Saga' #12 Over Graphic Sexual Imagery - <AUTHOR> http://www.comicsalliance.com/2013/04/09/saga-12-apple-app-store-banned-brian-k-vaughan-fiona-staples-sexual-content/ <comment><AUTHOR> Do note that you can buy the issue directly on ComiXology's website and then download it into the app.

Also, given that "The Boys" is available in app, I am having a hard time figuring out what could be worse.</comment>


Bowing to pressure, Facebook to simplify privacy controls. - <AUTHOR> http://www.nytimes.com/2010/05/27/technology/27facebook.html?pagewanted=2&hpw

<comment><USER2> They don't seem to want to admit that the problem is not how complicated it is to set privacy levels, but that there are things you just can't control any more. For example, whether your profile picture gets shown to people outside your network, or whether what pages you join get shown to people outside your network. These options left long ago, and show no signs of coming back.</comment>


An interesting take on aggregation - <AUTHOR> http://inflo.us/

<comment><USER2> seems interesting enough, i'm curious to see how it is actually implemented though.</comment>


VC List - <AUTHOR> https://docs.google.com/spreadsheets/d/1c5zoCzjQKlzdDW-6cctRm71ZiCmLQ7EJFZJtp_6cbeI/edit?rm=minimal#gid=428940999 <comment><USER3> Worth mentioning, as it's the easiest form of contacting VC: [https://signal.nfx.com/login](https://signal.nfx.com/login)

<comment><USER4> Has anybody, ever, raised a seed round (say more than a $100K) by cold calling a fund?

Lets say u r decent developers, and a web site, and some revenue, and usage is growing. But its not doubling every month, and you are not 4 FAANG technical leads.

Do serious people spend more than 10 seconds on reading such an email?

<comment><USER5> Yes, it happens. Deal flow is a common performance metric in funds so if you catch someone at the right time they _will_ read it. You can't raise a whole round that way, but you can definitely get a meeting and leverage that for intros into other funds. Once you have a foothold it doesn't really matter. Most VCs do deals referred by other VCs, even if the first VC doesn't make an investment.

Important note: this only works if you are credible. Credible doesn't mean FAANG, it means you can be googled and you look like you might be a credible founder.

<comment><USER6> > Credible doesn't mean FAANG, it means you can be googled and you look like > you might be a credible founder.

So glad to hear this!

I have rejected offers from FAANG before and generally avoid their recruitment consultants to save myself from their golden handcuffs. I am sure not all investors will overlook not having credentials of FAANG but some of them will. And those are the ones that matter to me.

<comment><USER7> Look at the YC application. One of the questions essentially asks to give an example of your exceptionalism. There are lots of ways to get there but if a founder has no notable previous accomplishments it's difficult to make the leap as an investor that suddenly they will have success. Most VCs don't want to take founder risk because it tends to be negativelty, not positively correlated with large outcomes. Cold email someone and in one to two sentences mention factual impressive academic or professional accomplishments of you and your team.

Also it's fine to email associates. They do a lot of the screening work since partners are trying to spend more time with an existing portfolio, networking, and startups further fown the funnel. If you can't impress an associate it's unlikely that you'll have impressed the partner.

</comment></comment></comment></comment></comment><comment><USER8> if you're going to share this sort of data, why disable the export option - <USER2> just makes it annoying to extract the data out, it doesn't prevent someone from doing so .

</comment><comment> vi-mode To get a no-BS CSV list, copy'n'paste all in (n)vim, then:

      :%s/,/;/g | %s/\t/,/g

</comment><comment><USER9> Wow. This list has 2894 lines.

It took Google Docs what seemed like several minutes to serve it to me (mostly waiting time before the first byte), so I copied and pasted it into an Excel sheet, here you go:

[https://gofile.io/?c=gKQ5we](https://gofile.io/?c=gKQ5we) (Excel file.)

I didn't clean up the formatting that is just a straight copy and paste.

<comment><USER10> > Excel

Guess many people don't like to install this slow bloatware like I do.

<comment><USER11> Excel is slow?

which other mainstream spreadsheet software is capable of handling hundred of thousands rows as fast as excel?

<comment><USER12> Exactly. People love to bitch about Excel but any other product I've tried fails miserably handling the many large files we have at work. I'm talking "epic failure" level performance from any other product I've tried. Most either can't even open the files or outright crash at some point along the way.

Excel is also extremely powerful and, in my opinion, pretty fast when you consider it's basically an extremely advanced REPL software that also checks cell dependencies and evaluates/updates on the fly. Not to mention extended functionality through scripting (VBA).

</comment></comment></comment></comment><comment><USER13> with downloading

[https://docs.google.com/spreadsheets/d/1gwyILJKvr5MD6S60s4wO...](https://docs.google.com/spreadsheets/d/1gwyILJKvr5MD6S60s4wOqXzyIVQTaJGixdO_elfChqI)

<comment><USER14> Or you could just, you know, press Ctrl+S on your keyboard... :P

<comment><USER15> That would save the html page, whereas the link above allows you to save it to your drive!

</comment></comment></comment><comment><USER16> And for everyone who visits this outside of incognito, prepare to be contacted as your email address is exposed...

</comment><comment><USER17> I love your list!

(If you wanted to make a quick buck -- you could probably publish part of your list for free, and charge people a few bucks for access to the rest of it... I'm sure they'd pay... it's valuable info...)

But, this being said... I am grateful your list is free!

<comment><USER18> I think the email list is already up for sale, they just don't mention it. See how the email column says "Yes" for most entries, as in: "yes, we have their email". Though you'll have to follow the clues and use the contact information from the header to get a quote.

The way all of this is presented, along with saving the doc being disabled, is pretty sneaky.

</comment></comment><comment><USER5> For any founder who thinks this list is comprehensive or worth paying for: It's laughably incomplete, even in major VC markets. From a cursory scan I'd guess at least 50% of VC firms I've done deals with in Boston, SF and LA are missing.

<comment><USER19> Where is the claim that this list is comprehensive? It's a spreadsheet that someone has taken the time to compile for FREE.

<comment><USER5> I believe they are actually selling the emails, though it doesn't say so explicitly.

</comment></comment></comment><comment><USER20> a) This is very incomplete. Australia has more than just two VC.

b) If you're looking for a complete list just signup for a Crunchbase Pro trial, scrape the site and then cancel it. Or just invest in it if you are seriously fundraising.

<comment><USER21> Who are the main VCs in Australia?

<comment><USER22> My guess was Blackbird or Airtree. A search shows them being in the top 5:

[https://www.smartcompany.com.au/startupsmart/analysis/austra...](https://www.smartcompany.com.au/startupsmart/analysis/australia- most-active-venture-capital/)

</comment></comment></comment><comment><USER23> Looks like the google doc has editing/downloading turned off... if _only_ there were a way to disable it...

 _cough cough_ [https://stackoverflow.com/questions/40296831/is-it- possible-...](https://stackoverflow.com/questions/40296831/is-it-possible-to- force-a-copy-of-a-protected-google-doc)

[https://stackoverflow.com/questions/13405383/how-to- disable-...](https://stackoverflow.com/questions/13405383/how-to-disable- javascript-in-chrome-developer-tools) _cough cough_

<comment><USER24> [https://docs.google.com/spreadsheets/d/1c5zoCzjQKlzdDW-6cctR...](https://docs.google.com/spreadsheets/d/1c5zoCzjQKlzdDW-6cctRm71ZiCmLQ7EJFZJtp_6cbeI/preview) works too

</comment></comment><comment><USER25> Thanks for putting this together! What a huge effort. Ignore all the haters here, they'll complain about anything.

</comment><comment><USER26> Interesting list, I'm wondering how did you get this data?

</comment><comment><USER27> Thanks for sharing

</comment><comment><USER28> Vulture Contact List ?</comment>


Ferris Club: Fight Club meets Ferris Bueller - <AUTHOR> http://www.mkebiz.org/ferris-club-fight-club-meets-ferris-bueller/

<comment><USER2> I'm not personally totally sold on the theory, but the video was cool.</comment>


Jquery-timing and the timed invocation chain - <AUTHOR> http://creativecouple.github.com/jquery-timing/documentation.html

<comment><USER2> Can someone explain what this does in usability/design terms?

<comment><AUTHOR> I don't think usability is the point. I believe they are going for cleaner code for when timing capabilities need to be used.

Use of timing capabilities can have a lot of benefits.

<comment><USER2> OK, so this is a tool for a developer, not a front-end designer, correct?

<comment><AUTHOR> Yes, it is helping developers.</comment></comment></comment></comment>


Hipsters mostly look alike. There's math to prove it - <AUTHOR> https://www.bostonglobe.com/business/2019/03/11/hipsters-mostly-look-alike-there-math-prove/qjISEcE3G5hCUNB159hPtI/story.html <comment><USER2> Dupe: [https://news.ycombinator.com/item?id=19368040](https://news.ycombinator.com/item?id=19368040)</comment>


The Development of the C Language (2003) - <AUTHOR> http://www.bell-labs.com/usr/dmr/www/chist.html <comment><AUTHOR> Excerpt:

"Thompson was faced with a hardware environment cramped and spartan even for the time: the DEC PDP-7 on which he started in 1968 was a machine with 8K 18-bit words of memory and no software useful to him. While wanting to use a higher-level language, he wrote the original Unix system in PDP-7 assembler. At the start, he did not even program on the PDP-7 itself, but instead used a set of macros for the GEMAP assembler on a GE-635 machine. A postprocessor generated a paper tape readable by the PDP-7.

These tapes were carried from the GE machine to the PDP-7 for testing until a primitive Unix kernel, an editor, an assembler, a simple shell (command interpreter), and a few utilities (like the Unix rm, cat, cp commands) were completed. After this point, the operating system was self-supporting: programs could be written and tested without resort to paper tape, and development continued on the PDP-7 itself.

 _Thompson 's PDP-7 assembler outdid even DEC's in simplicity_;

it evaluated expressions and emitted the corresponding bits. There were no libraries, no loader or link editor: the entire source of a program was presented to the assembler, and the output file—with a fixed name—that emerged was directly executable. (This name, a.out, explains a bit of Unix etymology; it is the output of the assembler. Even after the system gained a linker and a means of specifying another name explicitly, it was retained as the default executable result of a compilation.)"

<comment><USER2> As excerpt I prefer:

"Although the first edition of K&R described most of the rules that brought C's type structure to its present form, many programs written in the older, more relaxed style persisted, and so did compilers that tolerated it. To encourage people to pay more attention to the official language rules, to detect legal but suspicious constructions, and to help find interface mismatches undetectable with simple mechanisms for separate compilation, Steve Johnson adapted his pcc compiler to produce lint [Johnson 79b], which scanned a set of files and remarked on dubious constructions."

Since 1979, fighting for good practices adoption in C.

</comment></comment><comment><USER3> > Thompson went a step further by inventing the ++ and -- operators, which > increment or decrement; their prefix or postfix position determines whether > the alteration occurs before or after noting the value of the operand.

This man has given programming so much.

</comment><comment><USER4> It's really interesting hearing about the language designs were looking at floating-point hardware as an optional feature back then. These days I barely think about its usage, and I love seeing my perspective challenged on what comes "in the box".

<comment><USER5> Floating point hardware was optional for a long time. 486 in 1989 was first Windows PC CPU with floating point standard. Before that it was an add on co- processor for the 386. New 386 models were coming out until 1992, so it took a long time before you could count on floating point support being there.

There are still a lot of embedded microprocessors without floating point support.

<comment><USER6> Even the relatively expensive Motorola 68k chips didn't have built-in floating point until the 68040 in 1990.

<comment><USER7> I'd forgotten it was that early. The Sun box on my desk was a 68020 with a 68881. Everything having to do w/ FP, certainly on our DSPs (which is silly), we had to implement a knock-off of IEEE 754 in software ourselves.</comment></comment></comment></comment>


Coronavirus survivors banned from joining the military - <AUTHOR> https://www.militarytimes.com/news/your-military/2020/05/06/coronavirus-survivors-banned-from-joining-the-military/ <comment><USER2> This is absurd. If anything they should be looking for people in good health who gave already had it.

<comment><USER3> ... but there's no indication that having it once gives you future immunity

<comment><USER4> That doesn't take away from the absurdity (after enough time has passed from infection).

There is _no chance_ that somebody who has not contracted COVID-19 is safer than somebody who has.

In the case of no immunity, they're both equally dangerous. In the case of yes immunity, those being banned are safer.

, they're equally likely to contract COVID. At worst, the person who h

</comment></comment></comment><comment><USER5> Remains to be seen if they immediately discharge all active-duty service members who receive a positive diagnosis, following the same logic they used to arrive at the current decision.

<comment><USER6> They won't because that's not how medical in the military works once you're actually in, you go on waiver process for physical tests (and mental occasionally) and will get med boarded if you are on waiver to long, to test if you can do your jobs minimum requirements you pass, you stay, you fail, you get separated.

They are much more picky on coming in because they know people will gradually breakdown as they work through the military job (as any job really too) and want the person to have as low a burden coming in as possibly.

</comment></comment><comment><USER7> Perhaps the rule is to prevent recruits from infecting other recruits during training?

<comment><USER6> It says history, so even if you had it say 2 years later (as its written its a memo so it can change fairly fast) you can't join without a waiver or probably physical exam to check lung functions.

</comment></comment><comment><USER8> Clearly it's a paperwork issue, since it makes no sense.

But whats with the pathetic "Coronavirus survivors"?

Is this a medical term, meaning the disease has passed?

Or is it the on going bullshit that anyone who stubs their toe is called a 'survivor' so they can have a better sounding Facebook group that they can join and share?

<comment><USER9> My understanding is some COVID-19 patients (as in, the fraction of people who experience symptoms much more severe than a regular flu but do not die as a result) suffer severe permanent reduction to their aerobic capability (lung damage caused by pulmonary edema).

I am certainly not suggesting that ALL servicefolk who contract COVID-19 should be medically discharged, but statistically a portion of them will have severe enough cases that medical discharge is the only sensible option, as they may be endangered if left in place. It is not their fault, but if an existing servicemember is no longer physically fit to serve then it seems fair to medically discharge them. And similarly to reject an applicant on medical grounds.

I do not think it is fair to blanket reject all COVID-19 patients, as most will make a full recovery and would be perfectly able to serve, but if you had sufficient applicants that you could be choosy about it you would understandbly want to choose the ones with less doubts about their medical history. I am not from the USA so I do not know how picky they are with recruiting at the moment, but if it is a trough in the cycle then I would expect to see recovered coronavirus patients turned away.

<comment><USER8> At the higher level of the military, at least, they know almost all Americans will get Covid-19.

So to say people who have had it are "banned from joining" wouldn't really make sense.

But yes, for now perhaps it is true.

Someone who's had it vs someone who'll get it later, not sure why you chose the later.

I guess if re-infections continually weaken the person, the later will be stronger.

But then you have the unknown of how badly it effects them since they haven't had it yet.

<comment><USER6> Most likely there will be a lung test if you were previously positive for COVID19 to determine eligibility for waivers, they currently have no process to go through waivers though so PDQ will be exactly that permanent without a chance to go at all.</comment></comment></comment></comment>


Hal Finney received the first Bitcoin transaction. Here's how he describes it. - <AUTHOR> http://www.washingtonpost.com/blogs/the-switch/wp/2014/01/03/hal-finney-received-the-first-bitcoin-transaction-heres-how-he-describes-it/?tid=hpModule_88854bf0-8691-11e2-9d71-f0feafdd1394&hpid=z11

<comment><USER2> "My bitcoins are stored in our safe deposit box, and my son and daughter are tech savvy. I think they're safe enough. I'm comfortable with my legacy."

<comment><USER3> Interesting thought: Since those bitcoins were part of the first transaction, and since the transaction history for those coins would be saved and hence documentable, is it possible that _those particular coins_ might become "collector's items"? And perhaps "worth" more than the "face value" of 10 BTC, to the right collector?</comment></comment>


Dont Worry Government, I Got This Porn Filter Sorted - <AUTHOR> http://sicksad.com/blog/2013/07/28/dont-worry-government/ <comment><USER2> > Any request that is denied by OpenDNS is then allowed by our DNS server, and > any request allowed by OpenDNS is blocked by us.

The most interesting part of this to me is using multiple DNS providers to determine which category the site is in. It's both simple and effective.

If they actually go ahead with this plan in the UK and it's implemented similarly (eg. via DNS rather than IP blocking), somebody should make a list of what's blocked. Go through the top N sites and for each run a DNS lookup from both a filtering DNS server and also a couple non-filtered ones (ex: Google DNS[1]) then compare the results[2].

Bonus points if someone builds a way to crowd source the data so that it gets logged from multiple DNS servers round the world.

[1]: [https://developers.google.com/speed/public- dns/](https://developers.google.com/speed/public-dns/)

[2]: This would need to do more than a plain A == B as each address could resolve to multiple IP addresses.

<comment><USER3> They can't and _don 't_ do it with just a DNS, it'll have to be DNS + HTTP URL. Otherwise porn hosted on one large shared hosting would block everything. (e.g. imagine if the Amazon EC2 DNS got blocked).

The current UK ISP filter (the one that already filtered Wikipedia), used DNS & HTTP. IP addresses that needed filtering were redirected to their HTTP server by sending back their IP address, and then a HTTP proxy was used to filter specific URLs. This allowed them to block certain URLs. It was initally detected because lots of wikipedians noticed a lot of edits (basically lots of the UK) coming from a small amount of IP addresses (the IP addresses of the proxies)

<comment><USER4> They CANNOT use HTTP filtering as that would break on HTTPS.

<comment><USER5> Nope, the domain is always visible on HTTPS, due to SNI. They can just block it.

<comment><USER6> Older Win XP machines doesn't support SNI, so you could get around it with an older machine. Of cause that's a problem that will go away over time.

<comment><USER5> To connect to an HTTPS site without SNI, the IP can only host a single domain, so they can just block the whole (IP:443) combination without affecting any other site.

<comment><USER4> What if the IP is dynamic? Say an Azure Cloud Service.

<comment><USER7> I think the problem is that you'd need a different X.509 certificate for TLS, for each and every single IP.

<comment><USER4> The certificate is issued for the domain, not the IP.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> Pretty comical video, one quick tip. If you typed a command on the terminal and you get the "Operation not permitted." You can run the last command prepending _sudo_ like this:

      sudo !!

<comment><USER9> You just gave me 2 more years back.

<comment><USER8> Heh, no problem here are 2 more _bang_ tricks. !<charachters> runs the last command you ran that starts with the characters you type.

      !gre      # will run the last command starting with gre (so probably grep)

If you type _history_ , then !<number to the left of the history command>, the shell will execute that command.

      $ history # shows command history
      $ !200    # executes command 200

<comment><USER10> Keep them coming, imagine the manyears you're recovering!

</comment></comment></comment></comment><comment><USER11> The section with William Hague (UK Foreign Secretary) at the end of the video is priceless.

</comment><comment><USER12> ... ask not what your country can do for you — ask what you can do for your country ... JFK would be proud.

<comment><USER13> hehehe. Good one.

</comment></comment><comment><USER14> Awesome. Advanced assignment: build a search engine which for each jurisdiction only contains results blocked-in-Google-by-legal-threats in that jurisdiction.

</comment><comment><USER15> No comments? I guess Hacker News gets blocked when you install it. :)

</comment><comment><USER16> Step 1: Put your dic (delete)

pns.py

I was cracking up. Brilliant!

</comment><comment><USER17> He should have made the server run on port 69.

</comment><comment><USER18>
      sudo ss -lpu 'sport = 53'

</comment><comment><USER19> Brilliant! Now only if there was a cat filter that only showed cats and cat related material.

<comment><USER20> I thought that filter was called a web browser.

</comment></comment><comment><USER21> Absolutely wonderful. Well done!

</comment><comment><USER22> Slightly NSFW, could someone add the tag to the title?

</comment><comment><USER23> +1 for using Twisted</comment>


Petition posted to White House Web site seeks Death Star construction - <AUTHOR> http://www.washingtonpost.com/blogs/in-the-loop/post/petition-posted-to-white-house-web-site-seeks-death-star-construction/2012/12/03/17d489f8-3d61-11e2-a2d9-822f58ac9fd5_blog.html?tid=socialss <comment><USER2> Three times? Is the article trying to count the Darksaber or something?</comment>


Ask HN: What Vim Plugins do you use? - <AUTHOR> I have switched to vim a little more than a week ago and would love to see what plugins/extensions others are using.<p>What plugins do you use and what is your favorite plugin and why? <comment><USER3> Like a lot of people I have a fair amount of Vim-related stuff on Github. I'll put links at the end:

@ pathogen - to manage all the other plugins neatly

@ delimitMate - autoclose quotes, (,{,[ - you can define protected regions (e.g., strings) for no autoclose

@ vim-endwise - automagically enter an 'end' as needed in Ruby files

@ vim-bufexplorer - work better with buffers

@ vim-fugitive - lots of Git goodness for Vim

@ vim-surround - add, delete and change common pairs easily

@ IndexedSearch - show total count number and current hit for searches

@ gist - add support for sending buffers to gist or editing gists via Vim

@ vim-pastie - adds support for <http://pastie.org/>

@ rvm.vim - show current Ruby interpreter in status line

@ vim-perlbrew - ditto for current Perl interpreter

<http://github.com/telemachus/vim-perlbrew>

<http://github.com/telemachus/vim-varia>

<http://github.com/telemachus/dotfiles/tree/master/vim/>

</comment><comment><USER4> I have my entire .vim directory on github. You can see my plugins folder here:

<http://github.com/ninjagod/etc/tree/master/vim/plugin/>

I've been using Vim for three years or so. Apart from the usual bunch of plugins (NERD_tree, snipmate, etc), I have a few scripts I like:

Pretty much everything by Tim Pope - surround.vim, matchit.vim, fugitive, etc.

Fuzzy finder. I don't know how I survived without this until a few months ago. It allows you to enter a search term, and returns fuzzy matches, and you can jump to any of the matches. Things that Fuzzy finder supports include files, buffers, tags, help, etc.

Bufexplorer: One more of my favorites. "\be" brings up a little text file which you can use to manage your buffers. This is similar to Emacs' buffer explorer (C-x C-b). Except since this is also a text buffer, you can use common motions to delete, switch, save buffers, etc. (Another item is minibufexplorer, which shows all the buffers like "tabs". I stopped using this after switching to a more emacs-esque way of keeping buffers open and using only one gvim window").

Bufkill.vim: Is a very useful little tool for me. I use splits a lot, and sometimes killing a buffer closes the split. This small tool has been invaluable. :BD closes the buffer, but keeps the splits in place.

Eclim: You can use Eclim as a frontend for eclipse. I use some fancy eclipse IDEs sometime like CDT, PyDev, Aptana, etc. But eclipse's editor isn't spectacular. Eclim allows me to use vim as the editor and lets eclipse do the heavy lifting - autocomplete, project management etc.

Supertab: Use Tab for all your insert mode completion. Somehow any form of intelligent completion was always very flaky for me with vim. Still, I map this to keyword complete, which is usually pretty helpful.

Remotes: This isn't a plugin, but a native feature. You can use Vim remotes to keep one instance of gvim running and use "gvim --remote" instead of "gvim" to open files inside a single instance, rather than open each file inside a terminal, and close it when you're finished. I found this really helps improve productivity.

I even aliased "vim" and "vi" to map to the remote editor. You can see my tiny workaround for this: <http://github.com/ninjagod/etc/blob/master/zshrc#L31>

I would recommend you read Peter Krumin's articles on various vim plugins, etc.

<comment><USER5> I've been using Vim heavily for quite a while now. I almost exclusively open files with Fuzzy Finder (the Text Mate variant). I've _never_ manually managed buffers. I open and close splits frequently, but more or less treat my project as if it were entirely in memory at all times.

So, serious question: What benefit do you get from Bufexplorer, Bufkill, etc? Why should I ever think about buffers?

<comment><USER4> I use Bufkill and bufexplorer for a very special use case.

I've got $EDITOR set to "gvim --remote --wait" which means that the file is opened in an existing instance of vim. Unlike "gvim --remote" which will return control to the shell the moment the file is opened in gvim, the --wait option forces the command to wait till the file is closed (which is the standard expected behavior for most things like writing git commits, etc).

Now the interesting problem is that I have to kill the buffer rather than quit the editor. so I do a :w and :bd to delete the buffer, which makes sure things go fine on the shell.

Sometimes, if I have opened the file in a split (which is invariably the case), using :BD will ensure that my split isn't closed as well, when the buffer is killed.

Plus, BufExplorer has a very neat little trick which I just discovered recently. Sometimes I can close a buffer and might have to reopen it. So I bring up Bufexplorer and press "u" to undo changes, and I can go reopen any of those buffers.

</comment></comment></comment><comment><USER6> I use:

\- pathogen (for keeping bundles nicely separated)

\- pyflakes-vim (highlighting errors in Python files on the fly)

\- slime.vim (sending text in the current buffer out to a screen session)

\- scratch.vim (an easy way to make a scratch buffer, great when used with a REPL in a screen session and slime.vim)

\- ack.vim (easy way to use Ack instead of grep)

\- NERD Commenter ("toggle comments" is the only function I use from this, but it works great)

\- PeepOpen (much prettier than FuzzyFinder TextMate, and actively developed!)

\- NERD Tree (for when I need to add/move/rename files [I do all my opening with PeepOpen])

\- rainbow (Highlights pairs of parenthesis/brackets in their own colors. Great for LISP, sometimes useful for other languages as well)

\- snipmate (TextMate-style snippets. I'm still building up a decent set of snippets I use often.)

\- sparkup (like Zen Coding, but just seems to work more smoothly with vim)

\- surround (modify surrounding brackets, tags, parentheses, ets)

\- repeat (just for repeating surround actions)

\- yankring (awesome yank/paste manager)

My dotfiles (including the vim stuff) are on Bitbucket: <http://bitbucket.org/sjl/dotfiles/>

<comment><USER4> Ah! Found a few really nice plugins which I hadn't heard about before. Thanks. I was looking for something like yankring.

</comment></comment><comment><USER7> If you do Python development, definitely check out my pyflakes-vim plugin that highlights errors on the fly: <http://www.vim.org/scripts/script.php?script_id=2441>

Another really useful plugin I need to "release" is a "I'm Feeling Lucky" plugin that opens a browser window with the first Google result of the word the cursor is over--this such a useful general-purpose search that I use it all the time.

Finally, VCSCommand.vim is pretty great for viewing SVN/Git/etc diffs, making commits, seeing annotated files, etc: <http://www.vim.org/scripts/script.php?script_id=90>

</comment><comment><USER8> * NERD_tree : Tree navigation

* gnupg : Plugin for transparent editing of gpg encrypted files.

Not a plugin, but related: my .vim directory/.vimrc is a symlink to a directory/file in my Dropbox folder, to keep my plugins and settings in sync on multiple PCs.

<comment><USER9> _Not a plugin, but related: my .vim directory/.vimrc is a symlink to a directory/file in my Dropbox folder, to keep my plugins and settings in sync on multiple PCs._

Yes, I started doing the exact same thing. Same for my ~/.bash_profile.

Also if you find yourself editing files in your dropbox folder, it helps to have

      set directory=~/tmp/

in your .vimrc so that it doesn't keep creating .swp files in your dropbox folder, which keep getting synced.

<comment><USER10> Beware putting swapfile in /tmp. On many distributions, /tmp is cleared when the computer restarts. Lose power -> lose all your changes.

</comment></comment></comment><comment><AUTHOR> Btw here is my list:

* pathogen : install plugins in seperate directories

* NERD_tree : Tree navigation

* NERD_commenter: Comment/uncomment lines. File type agnostic

* Rename : Rename file in buffer

* Ack : Search using ack not grep

* Command-T : Fuzzy find files in path * Rails.vim : shortcuts to open models, controllers and other ruby on rails related stuff

* snipMate : Textmate like snipplet funktion

* surround : Add, change or delete surroundings

</comment><comment><USER11> Very few, really. Here goes:

\- Taglist : uses exuberant ctags to parse your code and present you with a nice source code browser. It's a lifesaver for large projects.

\- surround : Add, change or delete surroundings (punctuation, quotes, tags, etc.) in pairs.

\- lhCpp : a suite of C and C++ plugins

\- SuperTab : all insert-mode completion done with Tab

\- minibufexpl : if you're working with buffers a lot, it will make your life easier

Those are all, I think. Of course there's heaps of other functionality that I've added in my own .vimrc, does that count? :)

<comment><USER12> Foc C++ development I'd add A.vim: switch (or split) quickly from header to its corresponding c/cpp file.

<comment><USER13> This is definitely my must-have vim addon for working in vim.

Being able to quickly split and have your header file open is incredibly useful, considering how common an action it is.

</comment></comment></comment><comment><USER14> If you watch the PeepCode screencasts "Smash into Vim", <http://peepcode.com/products/smash-into-vim-ii>, (I only watched part two) they have a .vim directory that you can use as a starter. Specifically it uses the pathogen plugin to organize the plugins into a bundle directory, which i find much nicer.

</comment><comment><USER15> If you are developing with RoR, <http://github.com/astrails/dotvim#readme> is a good resource to start your quest for knowledge.

</comment><comment><USER16> I put my .vimrc and .vim directory on github: <http://github.com/mgrouchy/vim>

Its a constantly evolving thing, wherever I find a pain point, or an optimization to be made, it gets changed.

The focus is mostly python development on OSX using MacVim, but I have isolated most things that require MacVim/GVim so they don't load in a terminal.

It doesn't matter so much because whenever I want to get setup, I just git clone those directories into my home directory but I am seriously looking into Pathogen, which seems like a saner way to handle packages in vim.

edit: I just noticed there is a little whitespace bug in my django template handling, so be aware of that until I fix it.

edit edit: Fixed!

</comment><comment><USER17> I use almost no configuration changes either. I use a lot of machines, and I can't be bothered to install configs and plugins on every machine I come across. If I become dependent on weird plugins, what do I do on a machine that doesn't have them?

Also, I haven't even come close to mastering all of the commands and other things that are already built into vim. If I haven't mastered all of those, why do I need to add more? Instead of changing vim, I should change myself. It's much easier, and it transfers to every machine automatically.

</comment><comment><USER18> Other than the usual ones mentioned here, in a rails specific environment, I use rsense[1], acp[2], rails.vim[3]. This works really well for me and I would recommend it to any rails developer.

[1] <http://cx4a.org/software/rsense/>

[2] <http://www.vim.org/scripts/script.php?script_id=1879>

[3] <http://www.vim.org/scripts/script.php?script_id=1567>

</comment><comment><USER19> Anyone who has a good plugin for html/javascript? Tried a couple but noone seems to support the mix of html and javascript in the same file :(.

//Buzzz

</comment><comment><USER20> To anyone using fuzzy-finder or Jamis' fuzzy-finder-textmate, I highly recommend checking out _Command-T_. I find it to be much faster and more stable. I was never all that thrilled with fuzzy finder, so this has been a joy to use.

<http://www.vim.org/scripts/script.php?script_id=3025>

<comment><USER21> _Very_ true...even Jamis recommends it over his own creation:

<http://twitter.com/jamis/status/13735390978>

</comment></comment><comment><USER22> Fugitive has been the most lifechanging one. Takes working with git to the next level:

      - view diffs of the current file with vimdiff
      - stage from within vim
      - commit from within vim
      - blame from within vim
      - repository-wide grep within vim

</comment><comment><USER23> Here's mine: * project - configurable file lists * NERDTree - <USER2> browsing * autocomplpop - autocomplete pop ups * markdown - syntax highlighter * pathogen - sane plugin management * Molokai - nice colour scheme

</comment><comment><USER21> I'd advise putting your vim directory (or ALL of your dotfiles) under version control. To keep things clean, the first thing you should do is install Tim Pope's pathogen plugin which allows you to install each plugin in its own self-contained directory under ~/.vim/bundle/plugin-name/, and it will autoload everything for you.

      $ cd ~/.vim/
      $ git init
      $ mkdir {autoload,bundle}
      $ wget -O autoload/pathogen.vim http://www.vim.org/scripts/download_script.php?src_id=12116
      $ git add autoload/pathogen.vim
      $ git commit -m 'add pathogen.vim plugin'

Then, you can just extract each plugin under that bundle directory, or if they're managed by the same version control software you're using, you can use something like git submodules to track the plugins automatically. Add this to the top of your ~/.vimrc file:

      filetype off
      call pathogen#runtime_append_all_bundles()
      filetype plugin indent on

...and you're off to the races. Let's say you want to add NERD_tree:

      $ git submodule add http://github.com/scrooloose/nerdtree.git bundle/nerdtree
      $ git submodule init
      $ git commit -m 'add nerd tree plugin as submodule'

From then on, you'll be able to track upstream changes to the plugin, and everything is self-contained so you don't have to worry about copying all the files into /doc, /ftplugin, /syntax, etc. The one thing you'll want to do is generate all of the help docs after you have your plugins installed by loading up vim and running:

      :call pathogen#helptags()

The list of what I use goes a little something like this:

@ pathogen - to cleanly organize all of your plugins

@ bufexplorer - to explore your open buffers

@ command-t - a better fuzzy finder for opening files

@ endwise - add proper end statements for ruby code

@ fugitive - fantastic git wrapper

@ matchit - jump to matching brackets or logical statements

@ nerdtree - navigate and manipulate files

@ pastie - post code to pastie.org

@ repeat - adds the ability to repeat functions with .

@ speeddating - Ctrl-A/Ctrl-X manipulate dates properly

@ surround - alter stuff that surrounds text like quotes and html tags

@ taglist - helpful source code browser

Beyond that, I have a bunch of syntax files for various languages and file formats.

Realistically though, if you're just starting out. Learn how to use the editor first, then if you notice certain use cases that you don't have with built-in features (and there are a TON), then start looking for plugins to make your life easier. There's a lot you can do with custom settings and functions in your ~/.vimrc file too, so it will take time (years) to build up what works best for you. Be patient, it's worth it!

If you're curious, you can always find gems by looking through other people's configs: <http://github.com/elasticdog/dotfiles>

</comment><comment><USER24> If your language has REPL, I must recommend ConqueTerm.

<http://www.vim.org/scripts/script.php?script_id=2771>

</comment><comment><USER25> vindect: vim indentation detection. Set the tabs vs spaces settings and shift width to what the file currently uses. Indispensable for hacking code someone else wrote.

a: flip between .c and .h files a bit easier.

snipMate: code snippets. Filling out the shebang line, and C/python main idioms in throwaway experiments are the main reason I use this.

vcscommand: I only really use VCSVimDiff, but it works great for viewing changes in the current file when using git, mercurial and subversion.

emacs: inspired by vimacs[0], I also fixed ex command line editing to work with readline/emacs keys. Mapping Alt in insert mode is really buggy, so I use to ctrl-g instead of esc.

patchreview: like diffpatch, but for multiple files and you can specify a base path.

I have a whole bunch of my own silly plugins that I've created over the years, mostly unreleased, that do lots of great stuff. The :make and :grep quickfix highlighting I lifted from eclim is particularly useful.

I miss emacs.vim and vindect the most when I use vim on some other machine that doesn't have them.

[0]: <http://www.vim.org/scripts/script.php?script_id=300>

</comment><comment><USER26> Fugitive. Cscope. taglist

I also have NERDTree but very seldomly use it.

<comment><USER27> I can't overstate how useful Cscope is for large C projects. With a couple keystrokes, you can do searches like:

\- Where is this symbol defined? \- Where is this function called? \- Where is this variable referenced? Assigned?

It's the one plugin I use all day, every day.

</comment></comment><comment><USER28> None. I use vim on so many different machines, so it isn't feasible for me to move a bunch of plugins around. I'll very rarely use BufferList, if it's installed, I often forget it's there.

Here's my .vimrc: <http://gist.github.com/517464>

I like to use cursorcolumn and cursorline with low contrast colorschemes like obsidian or evening.

I've been using vim for 10-15 years.

<comment><USER29> I also use a lot of different machines, but I keep all my vimfiles, including plugins, in a repository. This keeps it fairly simple to add plugins to all computers.

This is my configuration: <http://bitbucket.org/johannes/vimfiles/src>

<comment><USER28> The problem with a repository is not every machine I work on has git installed (nor could I install it in some cases).

I'm a netadmin doing a sysadmin's job, though. If I was slingin' code regularly, I'd use several plugins.

When I wear my developer hat, I dig nerdtree and vimoutliner.

<comment><USER29> Ok. My strategy is clearly not suited for a netadmin. There is probably an order of magnitude difference between our "many different machines" :)

</comment></comment></comment></comment><comment><USER10> A favorite that hasn't been mentioned yet: fix-whitespace, <http://github.com/bronson/vim-trailing-whitespace> Highlights trailing whitespace in red and offers the :FixWhitespace command to obliterate it.

</comment><comment><USER30> My favorite would be LustyExplorer: <http://github.com/sjbach/lusty> . Why? Among all the different file browser plugins, I found Lusty to be the most easiest to use while being intuitive.

</comment><comment><USER31> Concur with the other recommended plugins here, but if you're doing any C or C++ reco a.vim

</comment><comment><USER32> latex-suite; it's a must have if you write LaTeX docs. If you work in an office where everyone uses Word and PPT, being able to write docs in Vim, format with LaTeX and compile to PDF for distribution to others is handy.

</comment><comment><USER33> I have used vim some time now do not use any scripts. Only 3rd party thing I have is zenburn colorscheme. I would recommend learning vanilla vim properly first, then let it grow based on your needs with scripts.

</comment><comment><USER34> My .vim/GetLatest/GetLatestVimScripts.dat:

ScriptID SourceID Filename

\</comment><comment></comment><comment></comment><comment></comment><comment>--

642 1 :AutoInstall: getscript.vim

1075 1 :AutoInstall: netrw.vim

1502 1 :AutoInstall: vimball.vim

2010 1 :AutoInstall: sessionman.vim

1896 1 :AutoInstall: ragtag.zip

273 1 :AutoInstall: taglist.vim

1984 1 :AutoInstall: vim-fuzzyfinder.zip

</comment><comment><USER35> I use a plugin to provide VIM emulation in Visual Studio. And that plugin itself doesn't allow plugins within it.

<http://www.viemu.com/>

</comment><comment><USER9> dbext - An excellent plugin to execute sql against a db server from within vim - works with almost every major db engine.

snipmate - textmate like snippets. Works very well.

NERD_tree: As others have mentioned.

Not really a plugin but, this is useful for automatically closing your '(' and '[' and quotes etc... [http://concisionandconcinnity.blogspot.com/2009/07/vim- part-...](http://concisionandconcinnity.blogspot.com/2009/07/vim-part-ii- matching-pairs.html)

</comment><comment><USER36> All the plugins I use: <http://github.com/remiprev/vimfiles/tree/master/bundle/>

My favorites would be:

\- surround

\- zencoding-vim

\- rails-vim

\- yankrink

\- nerd_commenter

</comment><comment><USER37> Syntax Highlighting: vbnet.vim svndiff vim-rails vim-haml

Other: taglist Nerdtree matchit zoomwin dbtext

</comment><comment><USER38> Here's the short list:

* NERD_tree - Nice tree list of files for project browsing

* NERD_commenter - Mapped to ,c<Spc> to toggle between commenting and uncommenting

* SimpleFold - Folding that doesn't suck courtesy of the eigenclass blog

* a.vim - quickly alternate between a .c and .h file

* ack - way better searching than vimgrep or regular grep

* vimclojure - A must-have for Clojure dev in Vim <3

* ctk - auto-compilation and syntax check for languages. I use it to check ruby files on save

* easytags - automatically generate the tags file for your buffers

* eclim - I develop enterprise Java, eclim keeps me sane by giving my almost all of Eclipse's useful features in Vim

* fuzzyfinder - great file-finding tool similar to Emacs' C-x C-f

* gist - automatically post your buffer to a gist, download gists etc, super handy

* localvimrc - allows me to have project-specific vimrcs

* matchit - for beter % matching

* narrow - Emacs'-style narrowing and widening

* netrw - edit files remotely over ftp/ssh/etc

* paredit - the paredit.vim file from the slimv plugin, doesn't work as well as Emacs' paredit, but it's semi-useful

* pastie - post your buffer to pastie

* rails - various helpers from the vim-ruby project for rails

* repeat - allows repeating things that aren't normally repeatable with '.'

* securemodelines - don't let people do mean things in modelines

* showmarks - I'm on the fence with this one, great if you use a lot of marks and want to show them

* slime - pipe text from a vim buffer to a screen session

* snipmate - Textmate-like snippets for various languages

* supertab - tab-completion that works pretty well, this + eclim is great for java dev

* surround - tools for messing with surroundings of files

* taglist - use ctags to display a tag list in a pane

* twitvim - seriously, why use a twitter client when you can use vim

* vimball - used to install a lot of vim plugins

* vimwiki - I store all of my tech-related text here

* visualstar - this lets you use ' _' to search for more than just a single word

_ yankring - a ring of yanks when doing copy/paste

If I had to pick just one for a favorite, it'd be a tie between fuzzyfinder and NERD_tree, way better than manually trying to find the file to edit.

In addition there are quite a few filetype plugins for better syntax highlighting for the variety of languages I work with.

My entire vim setup dir can be found here: <http://github.com/dakrone/dakrone- dotfiles>

</comment><comment><USER39> NERDTree</comment>


Ask HN: Interesting problems that should be solved but aren't being worked upon? - <AUTHOR> What are some of the most interesting problems from you respective domains that you feel should be solved but which aren't in focus areas of decision-makers and not being worked upon by enough people? <comment><USER2> The government's lack of uniform application of the law and disregard for rule of law. I'm tired of the hypocrisy and corruption.

Unionizing or creating a standardized contract for software developers across the industry. I'm tired of companies breaking their own policies, eroding benefits, and having unrealistic expectations.

Political parties need to be refreshed and probably add more so there aren't just two mainstream ones. I hate that this election will be a choice between two corrupt, senile, old a __holes.

Restructuring government spending and taxes. For example, property taxes funding education - it provides uneven funding based on the socioeconomic status of the locale and also provides a mechanism to throw the elderly out if their homes, or prevent that transfer of 'wealth' to the next generation (who likely need it). And the spending side is ridiculous with their turf fields, fancy new buildings, etc.

I could go on and on.

<comment><USER3> >Unionizing or creating a standardized contract for software developers across the industry. I'm tired of companies breaking their own policies, eroding benefits, and having unrealistic expectations.

Why on earth would software developers unionize? There probably isn't a profession where the workers have more power. If you don't like the way a company is treating or compensating you, leave!

Standardized contracts would also not be positive. The problem with standardized anything is that is where things stay, they don't get better. Competition in the marketplace is how contracts will get better.

So if you are tired of companies breaking their own policies, eroding benefits, and having unrealistic expectations, leave when your company does those things. By staying, you are voting for those things to continue.

<comment><USER4> The vast majority of software developers don't have leverage over their employer. There are some in high demand tech hubs that do.

Some interesting things that could happen:

\- We software developers create a hierarchy/training program much like trade workers (electrical for instance) where your title in the union is dependent on mentoring and peer reviews.

\- Silly interview leet bullshit disappears. Union people interview and assess candidates/new union people. Titles are earned via a formal process.

\- Specializations could emerge that have more stringent requirements to attain a title/modifier.

\- A company wouldn't need recruiters, they would be part of the union. If unionized software devs work at company ABC, then the union rep would know the contract is being expanded and they need 10 more devs and at what levels.

\- Union representatives would negotiate contracts for pay and benefits. They would be uniform across devs at that company, possibly that region.

\- Union workers could go on strike if they determine they find the employer doing morally questionable business practices.

\- A bunch of software nerds will make a lot of poor attempts at jokes and memes like they are union mobsters so it should be called a guild, it suits us better :)

</comment></comment></comment><comment><USER5> A "Wikipedia of Arguments", one can refer to in public discussions.

Relevant links: [https://github.com/canonical-debate- lab/paper/blob/master/RE...](https://github.com/canonical-debate- lab/paper/blob/master/RE..).

[https://www.societylibrary.org/](https://www.societylibrary.org/)

<comment><USER6> This reminds me of a joke.

\---

After years of training to be a monk, John left his monastery to travel the world and visit other places of worship. One day, he ended up at a monastery high up in the Himalayas. After exchanging pleasantries with his fellow monk brethren, they all gathered for their evening prayer followed by supper. Afterwards, the monks got to telling jokes to pass the time.

"Who would like to tell the first joke?" Said the lead monk.

"I would!" Replied brother Jacob. After some thought, brother Jacob said: "35!" Suddenly, all the monks began to laugh hysterically. John was confused as to why everyone found this so funny, so asked the monk next to him, who replied: "we monks have lived together for so long that we tell each other the same jakes over and over again, so we decided to number them to make things simpler."

After a few more jokes, John was called upon to tell a joke. After thinking hard, John said: "126." John then witnessed the monks laugh harder than he had ever seen before. John was both proud of himself and somewhat confused at the same time, so he asked the monk next to him "why is everyone laughing so hard at that joke?"

The monk turned to John and said: "because we've never heard that one before!"

\---

Imagine in future arguments, a discourse that sounds like:

Person A: The sea levels are rising. Person B: 4,512 Person A: but 125 Person B: Yes, and also 51.

<comment><USER5> Haha, good joke and indeed very related!

</comment></comment></comment><comment><USER7> Fusion! We know it's possible. We have some half working proof of concept projects. I was shocked when I learned that research spending on fusion energy worldwide is something like $1.5B. Thats basically a rounding error compared to the gains of solving it.

Room temperature superconductors also come to mind but I think that venture is somewhat better funded than Fusion.

<comment><USER8> It seems like something really hard to do lol. Maybe one step is also improving education to funnel more people into it. Energy in general is the basis of economic health. Even if we got more people into fission, that's a huge step forward.

</comment></comment><comment><USER9> All kinds of medical cures, for flu, for colds, for acne, for Lyme, for West Nile, for chronic fatigue syndrome, the list goes on. They say the flu is too difficult to cure because it mutates, but they also said DNA was too difficult to sequence. For many of these there is no research funding at all and no one is really even trying.

</comment><comment><USER5> News aggregatores, where the voting score actually correlates strongly with the quality of the content.

All aggregators I know are driven by feedback loops, which lead to false negatives (good content with bad score) and chaotic behavior of what actually bubbles to the top.

</comment><comment><USER10> Clean drinkable water from ocean water and dirty water. most of the world suffers from lack of clean drinking water. create a tech to clear sewer water without needing much electricity in a cheap way

</comment><comment><USER11> How can we slow, stop, mitigate, and/or reverse the effects of global warming ---- in a way that aligns with capitalist incentives and the natural human inclination to be lazy?</comment>