Show HN: Nip – Use JavaScript instead of awk, sed, or grep - <AUTHOR> https://github.com/kolodny/nip <comment><USER2> I think we should all make an effort to try harder with our comments.

The author writes "this is for people who aren't 'devops' and who can't crank out a fancy piped shell script using _awk_ and _sed_."

Whatever we may feel about people who have inexplicably failed to learn to use _awk_ or _sed_ , or perl, or python, or ruby, criticism on the basis of these methods being "better" (if only one learns how to use them) is a waste of everyone's time.

If you really want to make a point about how less performant javascript is than perl, that's a different matter. If you want to critique the goals, concept, implimentation, or whatever, that's a different matter.

But it's simply too easy to write "why not do 'X'", especially if you're going to ignore the fact that the constraints on the problem have already ruled out 'X' in the first place. That takes less than no thought. It takes an active deficit of thought.

<comment><USER3> Without putting too fine a point on it, I think people should make an effort to try harder with their tooling. "This is for people who aren't 'devops'" can be just as easily read as "this is for people too aggressively incurious to step outside their sinecure for even the teensiest of seconds and maybe learn something."

Reinventing every wheel "because $my_pet_language" is fractious, generally worse than the alternative, and creates fairly unproductive noise--I think it's reasonable that people should catch at least a little flak for doing it. I mean, if criticizing anti-cooperative behavior is a waste of time, what was engaging in it? The idea that bash and GNU coreutils are "devops" tools, instead of the tools of basically competent Unix-based software developers, is so ludicrous as to be worth a little roasting. (And it has been a little. Nobody here, not even me in this post, is being more than mild.)

HN doesn't go for gratuitous negativity, and that's pretty cool, but if this thread's any measuring stick, negativity at this sort of behavior is a long way from gratuitous.

<comment><USER4> In the end, nobody cares how I renamed all the images from lolimag_{i}.jpg to 2015_05_20_img_{i}.jpg, they just care that I did it.

Yeah sure if you mastered perl, grep/awk/sed and can whip up what you need in a few seconds, more power to you, but I'm not going to waste an hour of my time googling and reading man pages when I can take 3 seconds to write a quick function in JavaScript to do what I need for that one task.

<comment><USER3> Learning to use sed for that kind of trivial task would take, what, a minute? Maybe two? If you know regex, you know enough of sed to do anything, and if you're not using regex in your JavaScript transform you're quite inarguably (and I don't use that word lightly, but regular expressions really are required knowledge) screwing up anyway...so what's the point?

Polluting the global namespace with yet another tool that's _worse at its job_ than the existing ones because of a particular breed of aggressive incuriosity and epistemic closure is _real_ weird. (This isn't a failing unique to the JavaScript community. Go people love doing this, too, creating bad solutions to solved problems. You used to see it a lot in Ruby, but the community seems to have grown up a little.)

<comment><USER5> > Go people love doing this, too, creating bad solutions to solved problems.

My anecdote: most "Go people" doing this are actually "Go beginners" that are still learning the language and attempting to write something familiar to cement their understanding. I imagine this is often the case for other languages.

<comment><USER6> You'll also see this (that is, go replacements for common tools) as a direct result of a Suckless challenge to do exactly that. The idea being to get rid of the complexity of the current bash tools (let's be honest, when `cp` has options you would expect from `rsync`, it's gotten rather complex), with the side benefit of being statically compiled.

I'll admit, I've written a few of these myself to help nail down both my knowledge of Go and the basic toolset I use every day. It was quite useful as a learning tool, even though they'll never replace the originals.

Heck, I'd even recommend re-creating `dc` to anybody who is interested in learning a language, or writing a parser/interpreter for a language.

<comment><USER3> _> You'll also see this (that is, go replacements for common tools) as a direct result of a Suckless challenge to do exactly that._

This is what I was referring to, yeah, and it is to my mind a sign of a certain amount of cultural insularity and maybe a little hubris. Reimplementing something like `dc` to learn a language is great, it's when you start movements to start replacing things--or even trying to be taken credibly as an alternative--that I think you had best come _very_ correct or be ready to defend your contention that the status quo is for some reason unsuitable. "I don't already know sed" is not, to my mind, a good defense, which touched off this subthread.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> I like this a lot.

...

As a developer who, while (I like to think) competent, _hasn 't_ learned to use sed/awk very well .. I find it aggravating and at times arrogant that long-time users scoff at the idea of replacing them with more general and accessible tools. Why should I have to learn an esoteric syntax with loads of historical baggage and obtuse documentation(1), just because you put up with it?

(1) man pages suck, sorry. Good tool documentation starts with basic examples. If I just need to delete a line, search a file, or uncompress a tarball, I should be able to find the simple command in O(1) lines read.

...

Case in point, there's a comment here:

"Wait: nip 'function(l) { return /^var/.test(l); }' is supposed to be better than egrep '^var' ?"

Yes, it absolutely is better (except when performance really matters), because it's very easy to see how to extend that to more complex things, whereas I don't know how to extend egrep without doing lots of reading - if it's even possible without switching tools. And because I can trivially wrap the former in a shell script to produce the latter, more or less.

...

I feel this way about a lot of things. I think some people who 'grew up with' certain older technologies end up saying everyone else should use them (which may be true because they're omnipresent) and then extend that logic to say that they're actually _good_ (which is not necessarily and often not true).

<comment><USER8> One of the big reasons to learn the old fashioned tools is that they're always there. Period. Yes, you have node on your server, and your development machine, but what about when you need to do some work over on the database server? Those antique shell utilities have saved my ass when my more preferred methods weren't available to me.

Though the example in question, you're putting in a huge amount of boilerplate code that you're going to have to write a wrapper for with each new script. Most of the basic tools -- sed, grep, awk, even perl -- tend to have a quick and dirty form that does what most people need, with the more powerful portions at the ready. The "new and improved" tools tend to end up a lot like your examples, and get swiftly ignored because it becomes a pain in the ass to type the same thing over and over again, or they grow shortcuts and secrets as time goes on until they too are full of history and shortcuts that only the old timers know. Someone's going to eventually want a patch for a command line flag that wraps all that boilerplate in, and you're going to end up with perl's -n flag, and the horribly ugly code of

        perl -ne '/^var/ and print'

which will confuse beginners, and be a godsend to veterans.

<comment><USER9> > what about when you need to do some work over on the database server?

You get the angry DBA coming over with a bat to smack sense into you because You Do Not Work On Servers.

</comment></comment></comment><comment><USER10> Why use this instead of perl/sed/awk?

Because you program in JS all day long and don't want to look up man pages every time you want to do some simple text processing, that's why.

</comment><comment><USER11> Why? (Yes, I read that section on the readme.)

If you learn sed and awk you can slice and dice text damn near everywhere. Nip is only going to be useful where you have enough control to install it.

<comment><USER12> If you already know sed/awk and you don't know JavaScript then as you say, it would make sense to just use the former tools.

But for those of us for whom it's the other way round, it makes far more sense to use the scripting language we already know for the occasional text processing task than to spend time learning another language for the purpose.

</comment></comment><comment><USER13> Unless you're really a JS-only developer, it's hard for me to see why this is better than using Perl (or just sed/awk/grep themselves) for text-munging.

<comment><USER4> I don't know perl or sed/awk/grep that well, but I know JavaScript pretty damn well.. So what do I do?

Look up man pages or Google Stack Overflow answers for 15 minutes to do what I need?

Or I can just use nip and write a quick snippet that does what I know and move onto what's most important, the task I was trying to accomplish.

In the end, nobody cares how I renamed all the images from lolimag_{i}.jpg to 2015_05_20_img_{i}.jpg, they just care that I did it.

<comment><USER14> I would argue that you could spend 1 hour of your time to learn the bare minimum of sed and grep and grow as developer/*nix user.

</comment></comment></comment><comment><USER15> OK, I am an intermediate to advanced BSD sed user. I can do things with only basic regex that I have seen others struggle to do with extended and Perl- compatible regex.

But I am as green as it gets when it comes to Javascript.

I am sometimes forced to use a Windows workstation.

So I installed "super sed" (ssed.exe), a Windows sed, from sed.sourceforge.net.

It is painfully slow. Ridiculously slow.

I'd like to try using Javascript to do some sed-style editing on text that comes through the browser.

Let's say I open up the Javascript console in a browser, e.g., Chrome.

I know little of Javascript but I do know about window.location() and XMLHttpRequest().

Assuming I can get the text I want to edit into the browser window... what do I do next?

<comment><USER16> If you have Chrome dev tools open, you can go to the console and define a variable that holds your text using an ES6 string template, like so:

       var text = `Hello World:
       Here is a multiline
       piece of text`

I would then follow this guide on JavaScript regex:

[https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/R...](https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions)

Here's a short example/sample, based on the text above: (You should be able to copy-paste this directly into the console as well, following the declaration of `text` above)

        // Logs the lines to console that match a certain regex.
        // This is a very poor approximation of grep.
        var re = /(Hello|text)/g

        text.split("\n").forEach(function(line) {
          if (line.match(re)) {
            console.log(line);
          }
        });

Using the JavaScript console of your browser is a great way to learn the language, prototype ideas and sometimes to debug into your webapp. (Sometimes it feels like hotswap when using the JVM :))

</comment></comment><comment><USER17> I remember seeing someone who did this (for Python) with magic for auto- importing modules. I can't seem to find it for the life of me, but that feature was really nice.

I'll give a shoutout to a similar project I did with Python (but that doesn't auto-import modules) [https://github.com/samzhang111/pit](https://github.com/samzhang111/pit)

</comment><comment><USER18> Wait:

        nip 'function(l) { return /^var/.test(l); }'

is supposed to be better than

        egrep '^var'

    ?

<comment><USER10> I think he was demonstrating function syntax. This shorter version also works:

nip 'return /^var/.test(line)'

An implicit return, added if the input doesn't match /[function|return]/ would be nice, along with aliasing line as l, then you'd have:

nip '/^var/.test(l)'

</comment></comment><comment><USER19> I wrote a similar tool in Perl, called "flt" \- short for filter. It executes the command for each line in the input file and gives me a bunch of extra functions to work with. I use it dozens of times every day, about as often as I use cat, grep and sort. But when the one-liner becomes 3-4 lines long, it's time to write a proper Perl script with its own source file.

</comment><comment><USER20> I would appreciate some more common use-case side by side comparisons. I've been hesitant to learn awk or sed myself, instead using Ruby, but my intuition tells me that javascript will require comfort with at least some basic utilities library, and lacks a lot of built-in niceness that Ruby has.

</comment><comment><USER21> A Python version of this is called 'The Pyed Piper', yes it was named before the show :p

[https://code.google.com/p/pyp/](https://code.google.com/p/pyp/)

</comment><comment><USER22> Most *nix machines will have Ruby already installed, it's much better suited, right out of the box, for this kind of work than Javascript is, having descended from Perl and all.

<comment><USER4> I don't know perl or Ruby, but I know JavaScript, what now?

<comment><USER6> Identify the value that learning more than just one language would offer you, and use the opportunity to broaden your horizons.

Javascript is not the be-all-end-all programming language. Neither is Ruby, Awk, Haskell, or Prolog. However knowing more than one will help you grow in your chosen profession.

</comment></comment></comment><comment><USER23> This is awesome, simple and powerful. awk and sed are especially annoying to work with -- now I can use one of my favourite languages to do the same tasks.

I will shed a single tear for grep though.

</comment><comment><USER24> Hmmm, how performant is it?

<comment><USER25> There's really not that many possible way to beat GNU grep at least in the regexp matching case. It's as close to the optimal solution as you'll find (especially with `--mmap`) and really, as close as is possible.

<comment><USER26> [https://github.com/ggreer/the_silver_searcher](https://github.com/ggreer/the_silver_searcher)

<comment><USER25> Okay, that does sound like it might be faster. If Ag unrolls the main loop and ignores line breaks unless there's a match, the JIT regex might well give you the decisive speed edge. (I'm ignoring the parallel part of Ag, obviously that's a winner in the ack use case.)

I'm going to seriously consider switching to Ag from ack, especially since my work source tree has recently switched to an SSD.

<comment><USER26> That 33% gain on typing speed is the real gain ;D</comment></comment></comment></comment></comment>


MySQL vs. Neo4j performance on a Large-Scale Graph Traversal - <AUTHOR> http://markorodriguez.com/Blarko/Entries/2010/3/29_MySQL_vs._Neo4j_on_a_Large-Scale_Graph_Traversal.html

<comment><USER2> _In conclusion, given a traversal of an artificial graph with natural statistics, the graph database Neo4j is more optimal than the relational database MySQL._

I get what they mean, but "more optimal"? Please...

Maximal, minimal, optimal, and the corresponding verbs, require proof. Why not use "better", "improved", "shorter", "reduced", "faster" or "sped up" instead?

</comment><comment><USER3> I sometimes use Neo4j but I don't know much about its implementation. Assuming that there was a lot of disk I/O involved in this benchmark, does anyone know how graph data is stored on disk, indexed, etc.? This is a very different problem than in-memory graph operations.

</comment><comment><USER4> Well, luckily I would choose neither of these for traversing a graph, neo4j being bound to java, and MySQL lacking recursive CTEs.</comment>


Twitter Falls Below IPO Price as Concerns Mount Over CEO, Growth - <AUTHOR> http://www.bloomberg.com/news/articles/2015-08-20/twitter-falls-below-ipo-price-as-concerns-mount-over-ceo-growth <comment><USER2> To me the problem with Twitter lies solely with what Twitter's logged-out homepage looks like. I don't know what it's trying to be but asking me to sign up, browse categories (?), and read top celebrity posts is not it.

Why is logged-out Twitter not a search engine? They have up-to-the-second thoughts from their users about everything and it's the first place I go when a site is down, or some news story is breaking. They're sitting on a search goldmine yet they're trying to convert signups and popular celebrity post clickthroughs.

<comment><USER3> I've long wondered this. I haven't followed the evolution of Twitter's homepage, but I'd be really shocked if they hadn't tested this to death.

The thing is, this keeps causing me to miss moments to engage with them. Someone posts a link, I find something on a website, etc. that go to Twitter? BAM! SIGN-UP NOW OR LEAVE!

While I do of course have an account, if I were a non-user, I'd keep thinking "why would I sign-up when I have no idea if it is worth my time to be nagged by you via email?"

There's a well understood notion that on user-generated content sites like Twitter, Reddit, etc. the number of content producers is relatively low compared to the number of content consumers. While I don't have data to support my hypothesis on this yet, my gut tells me that you have a better chance of converting people to content producers if you can get them hooked on being a content consumer. Lowering the barrier to entry for that is critical. If I felt like I was really missing out on all the cool stuff going on within Twitter, I might be more inclined to sign up if I hadn't yet, and exposing that data lowers the barrier to entry.

But again, I'd be shocked if they hadn't tested that to death.

<comment><USER4> > _Someone posts a link, I find something on a website, etc. that go to > Twitter? BAM! SIGN-UP NOW OR LEAVE!_

If they force you to sign up, they get more user data for the pool. I don't think that the slice of their market they're losing out on by this is very big.

> _Lowering the barrier to entry for that is critical._

The barrier to entry for content creation on twitter is absurdly low. It's not the login process. It's the content itself, which is only a couple of sentences. It's not editing a video, or writing a short article, or creating an image, or managing a forum. It's just 'spurt out what I'm thinking right now in one sentence'. Login processes are not the barrier to content creation, effort required is.

<comment><USER5> Anecdotally, I've never bothered to sign up for Twitter, and the experience for logged-out users has contributed to that. Instead of thinking "wow all my friends and important people are on there so I guess I'll sign up," I think "well this isn't very engaging, but I still technically got the content I came for, so I'm not really incentivized to go further."

And I disagree in general - login processes are often a huge barrier. People don't want to create accounts everywhere; it used to be cool and novel, now it's a burden.

<comment><USER4> I do agree that login processes can be a huge barrier. Slack got to be a gorilla by making onboarding buttery smooth, whilst its competitors had a fairly vanilla approach, clunky by comparison.

But, in terms of content _creation_ that the GP mentioned (rather than content _consumption_ ), login processes are not the problematic part.

</comment></comment></comment></comment></comment><comment><USER6> From a product standpoint, I feel like Twitter has barely changed in 5 years. There's been some polish and redesign, sure, but the main dynamics are almost exactly the same.

Facebook has features like intelligently improving the quality of your feed, being able to hide posts from certain people, prioritizing posts (not just stacking them based on their age), calendar/birthday stuff, events, chats, etc.

Twitter is just a never ending stream of information, not prioritized and always overflowing with too much content (at least IMO).

I think Facebook nailed it with realizing their engagement levels are directly related to the quality of the newsfeed, and because of this they put a great deal of effort into making it as relevant as possible to each user. They realize that if you friend (or follow) somebody, you're not necessarily interested in ALL of their content, but maybe only their most interesting or popular. They also realize that if you only log in 2 times per week, they should prioritize with the best recent content, not just the stuff that was posted 1 hour ago.

<comment><USER7> I know that "intelligently improving my feed" was the final straw for me leaving Facebook, and if Twitter forced it on me it would probably end my Twitter fetish as well.

AND I know that I'm likely not the ideal client for Facebook and their efforts probably enhance the experience for said clients. I'm not sure who Twitter's ideal client is...

<comment><USER8> Twitter could probably use some sort of light scoring which users have the ability to over-ride. Tweets can not be re-arranged outside of chronological order like Facebook now does.

There are different markets that need to be addressed.

For the "pro" users, Twitters is basically a two way news ticker. You follow people you need to communicate with, who are always doing interesting things, or who you need to hear from directly when something occurs. If you want to see the latest on VR, or WebGL, or whatever topic, following the right people on Twitter is pretty much unparalleled.

The second is the casual users. These are the 13-25 year olds who would have been using Twitter 5 years ago and have gone on to use Instagram and Snapchat.

When you split the pro group from the casual, Twitter's holes start to appear. Casual users post crap and they post a lot of it. On Facebook is gets auto- buried. One Twitter it doesn't. On Instagram and Snapchat users get to publish images and pictures that in most cases they created themselves. Even if a photo is noise, the user can scroll past it in a quarter of a second.

Whatever they do, they can't burn the pro user base. Those users are their moat. The casual users will be fought for continuously because casual social apps are more like fashion than tools.

</comment></comment></comment><comment><USER9> Is there anyone else who hates Twitter because of its 140 character limit and overall focus on broadcasting rather than sharing? For the 140 character limit, I get the historical SMS reasons and that it helps you "focus" your content, but taking 10 minutes to squeeze a thought in that turns from something half interesting to "bc u r 4 the GPL" or whatever. Sure MAYBE I could reword things a little denser, but a tweet should be somewhat in the moment and nothing takes me out of it like editing to some arbitrary limit. As for the aspect of people liking smaller messages, they can do what FB does and hide behind a "Read more" link.

Overall, Twitter feels like being in a crowded bar. Lots of noise, not many conversations.

This could all just be me, though...

<comment><USER10> It's what makes Twitter, well Twitter. I love the 140 char limit because it enforces brevity and aids quick consumption. That's me.

<comment><USER11> But often it encourages abusing the limitation by splitting long(er)-form content into multiple tweets.

I agree that it's so fundamental to the brand and Twitter's identity that it might cause a lot of problems if it were reverted, but frankly it's completely arbitrary. If you want to produce 140 (or less) content, you can do that without a hard limit.

People hack around it because it's such a ubiquitous platform, but people would also like to address that audience in long(er)-form. It culminates in inconvenience for both producer and consumer.

<comment><USER12> It creates a barrier to doing long form content although, encouraging brevity. The amount of multi-part tweets are low compared to the average tweet.

</comment></comment></comment></comment><comment><USER13> I never thought the problem was the product, rather it is the management and the community. What's valuable about hacker news is the people who are involved, and what's great about Quora are the people who give a response. It's not helpful that most people spam useless tweets constantly. It took a while, but I finally set my twitter to follow news updates perfectly.

<comment><USER14> > I finally set my twitter to follow news updates perfectly

Just curious: What's your setup or setup philosophy?

</comment></comment><comment><USER15> I feel like every three weeks I see an article like this on Hacker News and a gazillion good ideas about how to improve Twitter's service.

At the same time, there have been no core changes to Twitter in the last several years.

Is Twitter the only company in the Valley where every engineer isn't checking Hacker News every few hours!?

<comment><USER16> This exactly captures why Twitter is so disappointing.

From my normal user perspective (not advertising, not a celebrity...) they've never been an internally innovative company - @mentions and retweets are community inventions, the best clients for niche, power, and general use have always been 3rd party, and after stumbling onto a private messaging hit they shot DMs behind the woodshed just before the world went wild for whatsapp and snapchat. The community continues to come up with interesting ideas, never to be implemented. There's no doubt Twitter has stellar engineers. It's strategy that needs to be externalized. A shame they've spoiled so many developer relationships.

<comment><USER17> For the past five years Twitter engineering has been focused on two things: rebuilding the infrastructure and building an ad platform. They nailed both of these. But unfortunately that left little time for product engineering. Add in the revolving door of heads of product and it's no surprise there hasn't been much substantive change to the product.

</comment></comment></comment><comment><USER18> I've been short on Twitter from the get-go, I just didn't think it would take this long. This doesn't mean I'm anti-Twitter - I would actually prefer that it stay the niche platform for journalists/celebrities/activists.

I don't know the business strategy to make sure that is viable, but I don't want it to be a mass-market product (except in terms of consumption)...the signal to noise ratio is so much better than other social platforms.

Twitter, quite bizarrely, is filling a void no longer filled by newspapers (wow, what that says about our attention spans). It's only peripherally mainstream but incredibly useful as a _tool_ to a small group of people. It's not any one thing: it's different depending on who you are.

<comment><USER19> That's why I wrote 'Twitter Should Be A Public Utility' [http://blog.higg.im/2015/06/12/on- twitter/](http://blog.higg.im/2015/06/12/on-twitter/) For me the disconnect was that Twitter failed and partially succeeded in making Twitter what I call 'plumbing', or a sort of duct tape for the web. If microblogging had a stack similar to TCP/IP that could be fundamental to how the web operates, then they missed that boat repeatedly.

</comment></comment><comment><USER20> "At stake is whether Twitter [...] can become a mainstream platform instead of a niche forum favored by journalists and celebrities."

I found that line interesting, because I often think of Twitter as a niche forum favored by technology workers and celebrities.

<comment><USER21> When I think of twitter I think nothing but mainstream. There are two platforms that anyone who is anyone (celebrity or business or politician) needs to have: either Facebook or Twitter. Niche is Instragram. Niche is Snapchat. But when Kardashian is on CNN once an hour because of a tweet, it's not niche. App.Net is niche. Twitter is the epitome of mainstream.

<comment><USER22> I think thats the main problem with Twitter, saturation. Its mainstream enough the regular people are not likely to jump on Twitter now if they already haven't.

<comment><USER23> And yet Facebook is still signing up users

<comment><USER24> I'd argue they're better about extracting value from network effects – Facebook allows you to broadcast, but it really encourages interactions... the value grows a lot more with your network... whereas, following more people on twitter just makes it harder to follow.

</comment></comment></comment></comment></comment><comment><USER25> Twitter is the Ganges River of Social Media. Filled to the brim with garbage, everyone who floats in it drinks the water, dies and joins the floating corpse pile at the end of the data funnel. you can't have a fresh mountain spring of great data when you let people pollute constantly with their verbal offal.

<comment><USER26> I'll be using "Twitter is the Ganges River of Social Media." in casual conversation from now on. Great analogy.

</comment></comment><comment><USER27> Twitter owns unique and compelling content. Lots. Yes, there is lots of junk, but there is also lots of junk on the web. The challenge is surfacing and distributing great content, and this is where Twitter should focus: maximizing reach and curating content.

Instead of forcing users to come to Twitter, Twitter should go wherever users are. Bring Twitter's amazing content to them, wherever users are, through partners and syndication. Get people hooked as consumers before worrying about conversions. The upside is much cheaper user acquisition by piggybacking on media habits rather than breaking them. The downside is less revenue and possibly less loyalty, at least in the near term.

Media distributors like HuffPo and Yahoo boast massive audiences but need interesting content. Twitter can supply the content while Yahoo and others provide the users and sell ads. Both sides share revenue.

Outsourcing user acquisition to Yahoo and distributors doesn't endanger Twitter. Twitter and only Twitter can produce this content, and since the content is unique, there is no risk of Yahoo swapping out Twitter for another company.

Put another way, syndication only strengthens Twitter as a product. Syndication expands the audience for tweets and deepens the incentive to publish via Twitter, which in turn generates more content and attracts more users, which in turn attracts more publishers. Syndication feeds a virtuous cycle.

The second piece, curating content, requires doing more to help individuals find and consume interesting tweets, and helping partners find and present interesting tweets. There is lots more Twitter could do, both with man and machine, in this area.

Maybe Twitter's greatest sin is not being Facebook, but it shouldn't be. There is enormous potential in helping people connect with others and enjoy content based on interests (Hi Reddit), not friendships. Many people, especially those on Wall Street and in the media, need a foil for Facebook, but hopefully the next CEO is not among them.

Twitter is a special company with special potential.

<comment><USER28> Facebook fell out of favor after its IPO, so some of this seems like the periodicity for Twitter is similar, just stretched out much longer and more attenuated due to the lower market cap and lower rung on the ladder.

Your comment that Twitter owns unique and compelling content: I view unique and compelling content as a scarce resource. Growth rate in the boring tail perhaps means less if they're cornering the market on the compelling blurb real estate.

Twitter as a REIT, where the real estate is focused attention on compelling content? Are The Donald's FB posts featured on the networks nightly?

The nightmare scenario for Twitter is that they've stumbled into a Craigslist- style niche of providing incredible, essential value that can't be monetized in proportion to the value it actually provides.

<comment><USER29> The problem is simpler: the cost of disintermediating their service, e.g. to go ahead and build your own feed, is just too high. And maintenance is just a pain. It is far better to view tweets other's tell you to, than use your own feed.

What Twitter needs is better intermediation - they need better tools to tune in and tune out of streams. The need, for want of a better analogy, a way to change the channel from Election heavy tweets to NBA tweets, when your team is on and you stop watching the debates.

TL;DR Twitter makes it too hard to bother, most of the great tweet content is made available at some point, and you rarely regret missing anything.

<comment><USER27> Precisely. One strategy for addressing this in the near term is to create more tools and products for partners/distributors like Yahoo and HuffPo to find and present interesting tweets for their audiences. Twitter can't curate everything in house in the near term. Algorithms aren't reliable enough, so they need a mix of algorithms and people. Some of those people can be in- house, but the faster, more scalable way to reach every nook and cranny of the world is to outsource a bunch of the curation through distributors who understand different audiences. Users have proven they won't curate on their own. As a bonus, Twitter can analyze these curation strategies to refine its own machine-learning algorithms.

</comment></comment></comment></comment><comment><USER30> Twitter was the first in a long list of current (i.e. post-2000) startups where I thought to myself, Really? That's a $X0 billion business? I wonder if this is just the tip of the iceberg.

<comment><USER31> Twitter had a Q1 revenue of $436 million. Doesn't it make it a $X0 billion business or am I missing something ?

The main concern to investors is primarily the growth and their ability to warrant a premium price on the stock.

<comment><USER32> Twitter is huge, it costs a lot of money to run. They had a net profit of negative $162.4 million Q1. I don't know what defines an $X0 billion business, but I would imagine that it would be profit.

<comment><USER33> Put simply, future value. Otherwise a sidewalk lemonade stand profiting 1 cent per glass would be far more valuable than a lemonade manufacturing business which sells millions of bottles a day and pumps all the profits plus additional investment money into manufacturing facilities. At some point, the money-losing lemonade manufacturer no longer needs to ramp up their facilities, they pay down the equipment cost, and generate boatloads of profit. That or they get bought out by a larger player who wants to enter the lemonade market but doesn't want to reinvent the wheel.

<comment><USER34> Of course, but at some point the whole "future value" logic runs flat. The market is losing faith in TWTTR's ability to generate value.

</comment></comment></comment></comment></comment><comment><USER35> Twitters main problem is that it's a protocol more than an actual content platform. What they need is to get more content onto their platform and the only way to really do that is to allow for richers posts which means loose the 140 character limit.

I know a lot of people will say "but thats what so great about twitter" and I would claim that it isn't, they just think it is. The short tweets and the asyncronous character of twitter creates quite a lot of noise and so you are actually reading way way more than interesting 140 character tweets you also read a lot of noise and redundancy.

No whats really great about twitter is that it's more centerede around interests than friendship and that this provide the actual value of using the service.

<comment><USER36> Totally agree. I stopped using Twitter because I got so tired of rewording everything to fit into 140 characters. The most interesting people on Twitter tend to use multiple tweets to broadcast one message, and join them up with "...", but when I see that I'd rather they had just written a short blog post and linked it.

In my opinion, what Twitter is most useful for is sharing links and short updates to prompt action from your followers, like reading your new blog post. And because of this, it's not the kind of place where you want to spend a lot of time, because the content isn't that engaging, it's just the news ticker that you scroll through for 5 minutes and leave.

</comment></comment><comment><USER37> Twitter seems like both current-shareholders and the userbase would be best served by either acquisition by Google/Alphabet, or a takeover by either activist shareholder or private equity, with new, product-focused management.

If you focused on mobile in the right ways, you could turn Twitter into a legitimate $30-50b company.

It's amazing that FB Newsfeed has basically taken the low hanging fruit from Twitter -- "normal" people sharing life events, leaving only weird communities of people interacting in public. There has to be a way to preserve that, grow that, and get interpersonal interaction among more closely-knit communities happening.

They had such a huge opening when Facebook fucked themselves with the shitty- HTML5-only-mobile-clients. Sad.

</comment><comment><USER38> I gave Twitter two solid tries (ie spent time finding people to follow, downloaded the mobile apps,installed desktop apps too), once in 2010 for 3 months, and again over 2011-2013. I'm a technical business person and really believe that outside of the tech and media scene it is pretty much useless for every day use. They have a cool brand, but pretty uncompelling and un-engaging user experience. And I never missed Twitter compared with the way I "miss" Facebook or LinkedIn when I haven't logged in for a while.

Their instability with their management team doesn't help them much either. IMHO they'll be out of business in a decade at most.

</comment><comment><USER39> Twitter hasn't focused on anything else besides twitter. Facebook is taking on the mission of "connecting the world". Google has gone well beyond being only a search engine. Amazon has expanded into mobile, AWS and ...

Twitter, on the other hand, is still pushing the same product.

<comment><USER40> Taking a step back, what's the advantage to society of every company growing into a conglomerate? Why not just let a company live and die on its core business?

Do we really want to allow all that power to be consolidated into company boards and executives?

<comment><USER41> imagine if snapchat announced that they would start living and dying on their core business rather than try to expand

now you have a bunch of investors who are upset that they invested in a company at a 16 billion dollar valuation that has jack diddly squat for income and has no promise of some magical "over the horizon" way to monetize

<comment><USER40> But that just doesn't seem sustainable in the long term. That's how power and wealth consolidate into a small number of hands.

</comment></comment></comment></comment><comment><USER42> At one point Facebook's stock also fell below IPO price. It happens. I hope they will come back like FB.

<comment><USER6> It's not really the same... Facebook had a botched IPO where the price tanked immediately, but then recovered after a few quarters and their earnings started rolling in.

Twitter has had consistently bad quarters, whether through poor earnings or over promising on their projections. But in one way or another they are not meeting expectations.

</comment></comment><comment><USER43> Twitter should do group messaging and structured tags. I want to do things like:

@friends Don't forget my birthday party on #(Aug 20, 8pm) at #SomePub

or

@friends Don't forget my birthday party! #invitation(Aug 20, 8pm, SomePub)

And I want to be able to create a list where all invitations from people in the @friends group go

And finance people could do things like

Twitter has bottomed #buy(TWTR)

And I want to be able to specify a rule that makes these messages go to my stock trading list

<comment><USER44> This would be fantastically niche and tech-person-oriented, probably not the right move for the company as a whole. That said, nothing stops you from writing a bot on top of Twitter to power any of these interactions.

<comment><USER43> It would be a big niche if you consider how many people use Excel functions. It could make Twitter part of enterprise and group communications infrastructures.

</comment></comment></comment><comment><USER45> Twitter should print out these comments and throw darts to pick their new executive team.

</comment><comment><USER46> I have never installed Snapchat. I don't know if it is good or bad. All my friends doesn't have Snapchat, but everyone has Twitter. I found Twitter a better place, and it's ageless to me compared to all those new-UI paradigms that come each year. The problem of Twitter is they cut off all the innovation of 3rd party software developers to keep their shitty in house software.

<comment><USER47> snapchat is pretty cool

<comment><USER48> relevant username ;)

</comment></comment></comment><comment><USER49> Am I the only one who never really liked the whole concept of Twitter?

<comment><USER50> It's really hard to sell/explain to the uninitiated because it's a diverse platform. Even my twitter feed is very diverse- breaking news and headlines from the beat writers for my favorite teams, activists and protesters covering police brutality, and developer blogs.

With this mix, my twitter feed varies greatly. Unrest in Ferguson? Breaking news from the ground. Microsoft Build conference? Latest in tech from Redmond. Eagles training camp? Live highlights from reporters I trust. It's really a wonderful thing.

<comment><USER49> No, I've tried it. I've really tried to like it, but it just didn't click with me. I know it's perfect for others, but it can never reach the growth of a platform like Facebook that is more universally liked. That's pretty much my point.

<comment> mkr-hn You sound like someone who dislikes Reddit because they think the defaults are all there is. Twitter could do a better job helping people discover their interest communities, but Twitter is more than the gossip-focused logged out home page.

You need to look deeper if you think it has nothing for you.

<comment><USER26> > You need to look deeper if you think it has nothing for you.

Surely the onus is on Twitter to make the information easy to locate? This is one of their key failings, if you have to wade through too much noise to find something of interest, then the app isn't good enough.

</comment></comment></comment></comment></comment><comment><USER51> Many here comment just on sub-IPO price of shares.

The problem is bigger. As per Financial Times, there is a larger shift in investor mood towards Twitter. It seems that there are many who intend to short Twitter indicated by the amount of "borrowed" shares.

</comment><comment><USER52> I read all the comments, and have a totally different point of views. Yes, twitter needs to innovate more. You need to make a number of changes to the user interface and give more options. But I think that for now, the best and easiest thing they can do to bring back most users is to give more power to his Big Players. Help than make more money, be more promoted, have more publicity in twitter than any other social network. Stop thinking that promoted hashtags and other options that are only used for spam have a great return for the sponsor. Celebrities, players, journalists, politicians. People want to talk to them and twitter is the best media tool for this.

</comment><comment><USER53> Everyone says it is all about growth. Twitter is not growing. Pretty simple story, really.

<comment><USER54> Twitter is still growing in terms of revenue, but they're losing money. They've already scaled up. They've had ads ("promoted tweets") since 2010. It's not clear where they go from here. Increasing the ad density to boost revenue begins the Myspace death spiral.

<comment><USER55> IIRC they announced a Buy button, but I haven't encountered any instances of it in my feed.

</comment></comment></comment><comment><USER56> > _Noto struck a critical tone, saying user growth won't improve until the > service boosts its appeal to a bigger market and that product improvements > and marketing so far have met with minimal success._

This is going to sound anecdotal, but still feel is telling: until my parents and my co-workers (enterprise IT professionals) see the benefit in adopting Twitter, then Twitter will forever be in limbo. I fear the same for reddit. Neither service has a product that supports a wide enough appeal to be considered for that demographic, and they are effectively the last mile in this equation.

</comment><comment><USER57> Time to open up their (very nice) API to third party clients again. I think there's still a lot of room for innovation on the Twitter platform and it isn't going to come from Twitter themselves.

<comment><USER58> Once bitten, twice shy. I'd never built my business around twitter api however nice it is. It's just not worth it to close shop after twitter blocks your token for superficial reasons.

</comment></comment><comment><USER59> I get constant emails from twitter.com, I finally just marked them all as spam. I have a twitter account to get tweets, why do I need them to email me other tweets?

</comment><comment><USER60> Twitter is one of those you either "get" or you don't (same with Snapchat).

I could never get Twitter. I couldn't understand why I would want a rapid fire stream of messages that were a third witty banter, a third retweets of marketing messages, and a third "breaking" news.

I know you can filter your feed out, but for me, it's too much work.

</comment><comment><USER61> Twitter has been a go-to for celebs and the powerful. The entertainment / fashion celebs are adopting Instagram in a huge way. Right now it's easy to have Insta. auto-post to Twitter, but it doesn't speak well of Tw growth. If other types of influential people follow suit, that will be another headache for Twitter.

</comment><comment><USER62> Stop stressing out. Twitter will be fine.

<comment><USER63> IMHO with the current management Twitter will stagnate and die.

<comment><USER64> As opposed to the previous management? 3 heads of product since 2013: Sippey, Graf, Weil. How's that supposed to work?

</comment></comment></comment><comment><USER65> Snapchat's "Stories" page is the UI Twitter should have built...It has search, a list of your friends updates, and targeted content from a few big name media vendors. Logging into twitter just takes you to a big list of crappy, uninteresting content IMO.

</comment><comment><USER64> The interesting question will be the on-going struggle between engineering (Roetter/Weil) and business (Noto/Bain), who actually want to run a profitable company. My bet is Roetter and Weil will be out before the year is done.

</comment><comment><USER66> As a developer, I'm really hoping they fail and some developer friendly alternative comes up. Google Plus is really bad because not many people use it and they only approve certain verbs. Twitter is really bad because they banned a bunch of my games for letting people tweet their scores easily claiming they were too much like clients and have starved a lot of apps with user token limits. Unfortunately there's really nothing out there that has Twitter's numbers and is developer friendly. Facebook has some screwed up approval process nowadays where their rejection reasons don't make any sense. They seem to have gone the app store route and are having call centers in third party countries try to apply rules to apps and ending up with a bad experience.

</comment><comment><USER67> I like twitter, but there is just no compelling use case for it. Basically, I use it as a news aggregator + pmarca monitor. But it's not super exciting.

</comment><comment><USER68> Good times to buy into $TWTR ;).

</comment><comment><USER69> why does twitter not have a default feed of the most favorited/RTd individual tweets? they only show trending topics/hashtag, but not a default feed.

or have create a couple of curated best/of feeds. tech, sports, humor, etc. sort of like apple music, pandora, but for tweeters.

<comment><USER70> Single "most popular" feeds tend to the most mind numbingly banal. See G+ and its "What's Hot" problem. That stream is insultingly vapid.

A set of highly filtered feeds might be better. Still tough to pull off.

</comment></comment><comment><USER71> Time to flush the toilet.

</comment><comment><USER55> Both Jack Dorsey and Anthony Noto recently bought shares, fwiw.

<comment><USER72> Jack Dorsey has sold more than 10x the amount of shares he just bought over the last few years, so the gesture rings a little hollow.</comment></comment>


Ask HN: What does an ideal django workflow setup look like? - <AUTHOR>

I've Googled, but have not found any really organized and layman-friendly overview, which is why I came here
I know how to get python/django working on my computer (PC or Mac) and have developed simple test apps using django's built-in dev server and a mysql back-end. So I can get things to work and don't need help on installing stuff.
But as a coding hobbyist, I don't know how to set up a pro workflow. I don't know best practices on how to setup and maintain a dev and production environment, how to efficiently publish to production, how to integrate all that into a version control system (i.e., git), basically anything that a pro coder at a startup would take for granted as "the way to do things".
I understand there are many different ways and products to use to setup a great workflow for developing in django, but would like to hear how you or your startup team (or corporate dev group) does it. Specifics would be amazing, as I need a little hand holding, i.e. please cover anything and everything that I should know in order to develop efficiently, robustly, and eventually collaboratively.
Basically, please explain it in a way that a layman can follow the steps and setup a workflow without pulling his hair out. =P <comment><USER2> <http://github.com/robhudson/django-debug-toolbar>

This is an invaluable resource for benchmarking performance, both CPU and database and will help you optimize your queries through the ORM.</comment>


Getting rid of bad teachers - <AUTHOR> http://roomfordebate.blogs.nytimes.com/2010/02/24/getting-rid-of-bad-teachers/

<comment><USER2> This American Life did an excellent piece of "Rubber Rooms" (mentioned in this blog post). It's quite an eye opener to the sorry state of the NYC public education system:

[http://www.thisamericanlife.org/Radio_Episode.aspx?sched=128...](http://www.thisamericanlife.org/Radio_Episode.aspx?sched=1286) (see act one)

Let me also qualify this by saying I have the utmost respect for educators there. I have a close friend that teaches 4th grade in Harlem--some of her stories are pretty unbelievable.

</comment><comment><USER3> I don't understand why public employees are allowed to unionize. If the public does not have a choice whether to pay your salary, then at least the public's representatives should have the right to easily fire you.

<comment><USER4> I'm pretty sure that position, if fleshed out, would seem crazy to me. Can you try and flesh it out?

Basically, I don't see how being employed by 'the public' means that contracts that you agreed to and signed can be ripped up at will by the other party.

Don't get me wrong, I think there is something wrong with the situation NYC finds itself in, but this anti-union response seems like a non-sequitor.

<comment><USER5> > Basically, I don't see how being employed by 'the public' means that > contracts that you agreed to and signed can be ripped up at will by the > other party.

Because "the public" can't take their money elsewhere if it doesn't like the decisions made by management. And, public employee unions can drive tax dollars into their members pockets.

If Ford makes crap, for whatever reason, I can take my money elsewhere, so I don't care what stupidity it engages in.

<comment><USER4> Ok. So you _do_ think that being employed by 'the public' means that you shouldn't have the protection of a contract? That is, if you sign a contract, and you are a public employee, that contract should be worthless in asserting your rights under the contract?

And this: > And, public employee unions can drive tax dollars into their members pockets.

Makes no sense to me at all. Of course they can. That's kind of their purpose...

<comment><USER5> > Ok. So you do think that being employed by 'the public' means that you > shouldn't have the protection of a contract?

No, but thanks for raising a strawman.

As I wrote, I think that public employee contracts should be limited in ways that private employee contracts aren't limited.

> Makes no sense to me at all. Of course they can. That's kind of their > purpose...

I agree that that's their purpose. As a member of the public I object. Ford can't get my money without my agreement. Since govt can, I want different rules.

And, if someone doesn't like those terms, they're free to find an employer that has the terms that they do like. As long as tax money isn't involved, I don't care.

<comment><USER4> Hardly a strawman

>> Basically, I don't see how being employed by 'the public' means that contracts that you agreed to and signed can be ripped up at will by the other party. >Because "the public" can't take their money elsewhere if it doesn't like the decisions made by management.

I also don't see where you are referring to when you say > As I wrote, I think that public employee contracts should be limited in ways that private employee contracts aren't limited.

In any event I find it hard to grasp your position. You don't think that being employed by the government means that you shouldn't have the protection of a contract, and you do think that public employee contracts should be limited in ways that private employee contracts aren't.

<comment><USER5> > In any event I find it hard to grasp your position. You don't think that > being employed by the government means that you shouldn't have the > protection of a contract, and you do think that public employee contracts > should be limited in ways that private employee contracts aren't.

It's quite easy to grasp. I think that public employee contracts shouldn't have certain provisions.

The "right" to a contract does not imply the right to any possible contract. We already restrict private employee contracts - I'm just saying that there should be somewhat different restrictions on public employee contracts. Folks who object to the restrictions specific to public employee contracts are free to seek private employee contracts more to their liking.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> Few districts are going to hire a teacher that's been laid off for poor performance, so if you fire a teacher you've essentially ended their career and kicked them to the curb with a worthless degree, no experience outside academia, and no skills that transfer to other jobs. Firing is serious business, and it's not surprising to me that districts are reluctant to resort to the nuclear option or that teachers fight so hard to prevent it.</comment>


Ask HN: What Podcasts Do You Listen To? - <AUTHOR>

<comment><USER2> Startups for the Rest of Us (Rob Walling and Mike Taber, largely targeted at people who are pre-product on SaaS), Tropical MBA (eclectic small/Internet business topics), Boostrapped with Kids (two guys with bootstrapped startups), Bootstrapped.fm (two other guys with bootstrapped startups), and a few others, but those are more than enough to match my coffee/gym time these days.

<comment><USER3> Another podcast in a similar vein is Our Own Little Accelerator [http://www.ourownlittleaccelerator.com/](http://www.ourownlittleaccelerator.com/)

</comment></comment><comment><USER4> Quite a few...

Techzing [http://techzinglive.com/](http://techzinglive.com/)

No Agenda [http://www.noagendashow.com/](http://www.noagendashow.com/)

TWiT [http://twit.tv/](http://twit.tv/) I am selective about it though, Windows Weekly, some of the Floss weekly, some of Security Now and TWiT itself only if Dvorak, Calacanis or Adam Curry are on (sadly 2 of them appear to have been blacklisted).

Startups for the rest of us [http://www.startupsfortherestofus.com/](http://www.startupsfortherestofus.com/)

Sans Podcast [https://isc.sans.edu/podcast.html](https://isc.sans.edu/podcast.html)

I used to listen to [http://mixergy.com/](http://mixergy.com/) quite a lot but Andrew is an animal and I couldn't keep up.

</comment><comment><USER5> I've been listening to EconTalk with Russ Roberts[1], The KunstlerCast [2] and Poetry Magazine podcast [3] for years. Good stuff. It'll put hair on yer chest.

[1] [http://www.econtalk.org/](http://www.econtalk.org/) [2] [http://kunstler.com/writings/podcast/](http://kunstler.com/writings/podcast/) [3] [http://www.poetryfoundation.org/poetrymagazine/](http://www.poetryfoundation.org/poetrymagazine/)

</comment><comment><USER6> I like these small business/bootstrapping podcasts: Kalzumeus, Product People, Techzing, Foolish Adventure, Eventual Millionaire.

I also like these speculative fiction podcasts: Escape Pod for scifi, Podcastle for fantasy, and Drabblecast for a little of everything.

</comment><comment><USER7> The Slate Political Gabfest is by far the best current events podcast I've come across: [http://www.slate.com/articles/podcasts/gabfest.html](http://www.slate.com/articles/podcasts/gabfest.html)

My favorite comedy podcast is Judge John Hodgman: [http://www.maximumfun.org/shows/judge-john- hodgman](http://www.maximumfun.org/shows/judge-john-hodgman) and I similarly recommend anything else from the Maximum Fun Network: [http://www.maximumfun.org/](http://www.maximumfun.org/)

<comment><USER8> I love the Slate Political Gabfest. I attended a live show in Chicago, and it was great fun; I strongly encourage anyone who likes the show (and/or who is interested in politics) to attend.

Two other great podcasts, for those interested in US politics, are The Political Scene (from the New Yorker, [http://www.newyorker.com/online/blogs/newsdesk/podcasts/](http://www.newyorker.com/online/blogs/newsdesk/podcasts/)), and Ken Rudin's "Political Junkie," done by a funny former NPR reporter and analyist ([http://kenrudinpolitics.com/](http://kenrudinpolitics.com/)).

</comment></comment><comment><USER9> History:

\- The History of Byzantium

\- History of Rome (finished)

\- Revolutions

\- The China History Podcast

\- Ancient Warefare Podcast

\- A History of Hannibal

\- A History of Alexander (finished)

China:

\- Sinica Podcast (Part of Popup Chinese)

\- China Money Podcast

\- The China History Podccast

\- The Creamcast

Tech:

\- Think Distributed

</comment><comment><AUTHOR> I'm personally a fan of Adam Savage's Still Untitled [1] and The Amp Hour [2]

[1] [http://www.tested.com/still-untitled-the-adam-savage- project](http://www.tested.com/still-untitled-the-adam-savage-project)

[2] [http://www.theamphour.com](http://www.theamphour.com)

</comment><comment><USER10> Tech Related

1) CoderRadio

2) TechSnap

3) Linux Action Show

4) Accidental Tech Podcast

5) Programming Throwdown (no new podcast in a while)

Non-Tech

1) You Made it Weird by Pete Holmes

2) This American Life

3) The Moth

4) Unprofessional

5) 99% Invisible

(a few more) :D

<comment><USER11> On the non-tech side, give caustic soda a shot. The guys are hilarious and it's amazing fun.

</comment></comment><comment><USER12> These are the one's I listen regularly to.

1.) Manager-tools - For management. No fluff and actionable info. 2.) Stanford Entrepreneurship thought leaders - For Startups 3.) 99% invisible - For design 4.) Ted Talks - For knowing brilliant people 5.) Security Now - IT Security

</comment><comment><USER13> Just a self plug: I recently made a directory of programming podcasts:

[http://www.programmingpodcasts.com](http://www.programmingpodcasts.com)

</comment><comment><USER14> Tell'em Steve Dave [http://smodcast.com/channels/tell-em-steve- dave/](http://smodcast.com/channels/tell-em-steve-dave/)

</comment><comment><USER15> 1) kcrw good food 2) kcrw dna (design and architecture) 3) from the top 4) dinner party download 5) this american life 6) fresh air

</comment><comment><USER16> Accidental Tech Podcast atp.fm In Beta [http://5by5.tv/inbeta](http://5by5.tv/inbeta)

<comment><USER17> Unfortunately on yesterday's episode Gina and Kevin announced that next week will be their last In Beta, and someone else is taking over the show. Curious who it'll be, but definitely won't be the same.

</comment></comment><comment><USER18> JavaScript Jabber and Ruby Rogues.</comment>


Where's Waldo: Terminator Edition - <AUTHOR> https://medium.com/@bradkenstler/wheres-waldo-terminator-edition-8b3bd0805741 <comment><USER2> Kudos to Brad. He did some machine learning work for us as well! Hope we keep seeing advances in this field.</comment>


Obama "delays" promised elimination of capital gains taxes on start-ups till 2014 - <AUTHOR> http://business.theatlantic.com/2009/03/talk_and_walk.php

<comment><USER2> Tax the rich, change carried interest capital gains rules and now leaving startups out in the cold.

Can Obama find any more ways to take the incentive to succeed away from Americans?

He is killing the American dream and trying to implement Karl Marx's dream. Good night America, so sad to see you go.

</comment><comment><AUTHOR> It's not just the lost profits to the founders that will hurt. The bigger damage might be that angels and VCs will now have less incentive to invest. That means more startups won't make it.</comment>


Ask HN: How to promote my web service without spending money? - <AUTHOR>

Hi All,
My friend developed a web service to trace the android devices ( http://blog.mobilecare.cc/install ) The web service is a little bit like google latitude, and it support "groups" functionality. You can share your position with your family and colleague. You can also set up a specific time period time to trace the android devices because maybe you don't want your boss to know where you at some specific time. :p
I've tried to promote it on my own web site: http://www.android-x86.org. Does anyone have ideas where I can promote it without spending money ? For example, some web site that we can exchange link, or some forums that we can write some introductory post. Thank you in advance!! <comment><USER2> Me too. I want to know how to promote. Hope some guys will share your real experience. Thanks!! :D</comment>


Zoom security bug lets attackers steal Windows passwords - <AUTHOR> https://mashable.com/article/zoom-vulnerability-windows-passwords/ <comment><USER2> "The problem lies with the way Zoom's chat handles links, as it converts Windows networking UNC (Universal Naming Convention) paths into clickable links."

This is deeply concerning, but I feel this should really be looked at more as a Windows bug than a Zoom issue. I get that UNC is mainly intended for local networking, but why is the (encoded) user password included in the string? This just seems like a huge security vulnerability, it wouldn't surprise me at all if this bug is exploitable in many other applications besides Zoom.

</comment><comment><USER3> Different article, same subject: [https://news.ycombinator.com/item?id=22748379](https://news.ycombinator.com/item?id=22748379)</comment>


Introducing Surinx (Ruby syntax w/ Java typing) - <AUTHOR> http://blog.headius.com/2009/08/introducing-surinx.html

<comment><USER2> The Fibonacci implementation here:

[http://github.com/raganwald/homoiconic/blob/master/2008-12-1...](http://github.com/raganwald/homoiconic/blob/master/2008-12-12/fibonacci.md#readme)

Does a pretty quick job using plain-old-old-ruby (POOR Implementation):

        time ruby /Users/raganwald/Desktop/matrix_fib.rb   102334155

        real    0m0.012s
        user    0m0.007s
        sys     0m0.004s

That doesn't mean we shouldn't welcome implementation improvements, but in my lifetime the quest for a "sufficiently smart compiler" that will do away with thinking programmers has enjoyed only modest success.

Append: This is _not_ a criticism of Charles' amazing work dragging Ruby into the 1980s and designing Ruby-like languages for the JVM. If asked to choose between algorithm improvements and implementation improvements, I answer "Yes!"

<comment><USER3> Neat hack, but needless, and besides that, irrelevant: the author didn't really care about the fibonacci sequence. He cared about function calls and additions.

See Performance and Evaluation of Lisp Systems, <http://www.dreamsongs.com/Files/Timrep.pdf>, for more discussions of the nature of benchmarks.

<comment><USER2> Thank you, I am aware that the author was deliberately picking a "most pessimum" algorithm as a benchmark. I am not commenting on the nature of benchmarks, but rather on the relative importance of algorithms and implementations.

You may find it irrelevant to the author's point, others may find it an interesting byway to follow in a larger conversation. Or not.

<comment><USER4> OK, but the implementation layer is just another layer of algorithms, except that you have somewhat less control over it. I notice your code uses inject, which is coded in C rather than Ruby -- as are many parts of POOR where C offers better performance.

The point of Duby/Juby is to give us _more_ control over these algorithms by dragging them out of the base implementation language and into Ruby. Why should inject be written in C or Java?

<comment><USER2> > Why should inject be written in C or Java?

I agree with your point and bless you with a mighty upmod. One of my peeves about inject being written in C is that there is very little pressure to make Ruby fast enough that inject could be written in Ruby. So who cares? Well, if you want to make your own language feature that is like inject but not inject, your feature will be 100x slower.

So making Ruby fast enough that Ruby can be implemented in Ruby is a huge win for metaprogrammers :-)

> Now it is not correct to say that Matz does not use Ruby. He does, and so he > does eat his own dog food. And for the domains where he uses Ruby, he has > optimized Ruby to be a useful tool. But since he doesn't use Ruby to build > Ruby, he does not have the same incentive to tune Ruby for the purpose of > building languages.

[http://weblog.raganwald.com/2006/11/significance-of-meta- cir...](http://weblog.raganwald.com/2006/11/significance-of-meta- circular_22.html)

<comment><USER5> Smalltalk Agents had no "primitives." (Read, no methods written in C.) The JIT was deemed good enough that everything could be written in Smalltalk. VisualWorks still has primitives, but a surprising number of things are written in Smalltalk, like Dictionary lookup.

</comment></comment></comment></comment></comment></comment><comment><USER6> One of the beautiful things about JRuby is that for performance-intensive code, you can drop to Java instead of dropping to C. Java's almost as fast, and a whole heck of a lot nicer to program in.

If Surinx is able to produce Java-like speeds, that means that you never have to drop out to a different language _at all_. That's pretty awesome, and it would open up a whole new world to Ruby programmers.

I hope some of this work gets pushed into JRuby. I'll take 5x speed boosts any day, constant factor or not.

</comment><comment><USER7> > ... fib(40) in only 7 seconds on current MLVM (OpenJDK7 + invokedynamic and > other tidbits), a five-fold improvement over JRuby's fastest mode (jruby > --fast).

I was going to say, "damn, that's it? that's pretty slow" until I realized:

       $ time python fib.py 40
       102334155

       real    1m43.363s
       user    1m36.824s
       sys     0m0.577s

It may be the fact that I have a ton of stuff running on my machine right now, but still.

<comment><USER8> Does fib.py use psyco? If not, that does still seem slow. Standard numerical benchmarks indicate that c or fortran or whatever should have a much larger speed advantage relative to regular python than 40/163. E.g. on the n-body benchmark here:

[http://shootout.alioth.debian.org/u32/benchmark.php?test=nbo...](http://shootout.alioth.debian.org/u32/benchmark.php?test=nbody&lang=all)

Python is about 65 times slower than c/c++/java/fortran/scala.

<comment><USER7> No, it doesn't use psyco. If it did, I'd expect it to be faster of course.

I just rewrote it in C though:

       $ time ./fib 40
       102334155
       real    0m3.063s
       user    0m2.912s
       sys     0m0.014s

Which makes the python version something like 35x slower in wall clock time.

<comment><USER9> Or you could simply make your python code tail-recursive:

      $ time python fib.py 40
      102334155

      real	0m0.013s
      user	0m0.000s
      sys	0m0.010s

<comment><USER7> Of course you can, but that's not going to work when you run out of stack space. The point of my stupid benchmark was to write the equivalent ruby code, and then the equivalent C code, forgetting the fact that there's a much more optimal way to do it (e.g. write it in scheme with tail calls).

<comment><USER7> > was to write the equivalent ruby code,

that should have stated "equivalent python code"

</comment></comment></comment></comment></comment></comment><comment><USER6> One thing to remember about a lot of JVM language benchmarks is that they include the startup time for the JVM. Java code running on a pre-warmed JVM is significantly faster, and for short programs can be faster by an order of magnitude (or two).

For a good example, check out Nailgun (<http://martiansoftware.com/nailgun/background.html>).

</comment><comment><USER10> I never stop being impressed by Charles (the JRuby lead dev)... remind me to ship a case of the Sierra Nevada Hefeweitzen to Engine Yard.

The best thing is that this will likely percolate into JRuby, and it bodes well for JRuby performance on JVMs that support invokeDynamic (not sure if OpenJDK does yet...)

<comment><USER11> You are reminded to ship a case of the Sierra Nevada Hefeweitzen to Engine Yard.

</comment></comment><comment><USER12> Boo is a similar project with Python and .NET:

<http://boo.codehaus.org/>

</comment><comment><USER13> There are so many (new) languages for the JVM; its becoming a curse of plenty! (Not complaining.) Its a great platform, and invokedynamic will usher in a whole new generation of languages.

Lets just hope the Java 7 actually happens given the change of ownership, and I would love to see John Rose's call for programmatic access from Java (<http://blogs.sun.com/jrose/entry/jsr_292_support_in_javac>) realized. (ASM is great stuff, but I'll admit that its not a great joy to use for me.)

</comment><comment><USER14> Or you could just use Groovy.

</comment><comment><USER15> Java has a type system?</comment>


GoPro Developing Line of Consumer Drones - <AUTHOR> http://online.wsj.com/articles/gopro-developing-line-of-consumer-drones-1417020883 <comment><USER2> I really hope they don't use the word 'drone' when these go to market. This is my new least favorite overloaded word since 'hack'.

There are two kinds of autonomous flying machines that we call drones: small quadcopters that hobbyists fly around, and winged planes that our govt. uses to monitor and attack their enemies.

Most people think drone == drone. So there are two camps. The first thinks all drones are killing machines. This is wrong and causes irrational fear about our cool toys. The other camp thinks all drones are the friendly Amazon delivery helicopters. This reduces their concerns about a troublesome government program.

Sorry for the mini-rant. I just wish we'd separate the terms so we can deal with toys and war machines separately.

<comment><USER3> > There are two kinds of autonomous flying machines that we call drones: small > quadcopters that hobbyists fly around, and winged planes that our govt. uses > to monitor and attack their enemies.

In most cases (in both classes), aren't these remotely piloted rather than autonomous? (And there are several others -- the term is generally used for remotely piloted vehicles, including, e.g, target drones.)

> I just wish we'd separate the terms so we can deal with toys and war > machines separately.

"Military drones", "Armed drones", "Predators", are all terms of various specificity that are in use to specifically refer to the "war machine" kind.

"Delivery drones", "civilian drones", and other terms of varying specificity are in use to specifically refer to the other kind.

I don't really see any problem when "drone" itself is used in a context where the _kind_ of drone doesn't need further specification in the term, since the longer description already tells you which class it falls in.

</comment></comment><comment><USER4> Google Link to get past pay wall:

[https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&c...](https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CB8QqQIwAA&url=http%3A%2F%2Fonline.wsj.com%2Farticles%2Fgopro- developing-line-of-consumer- drones-1417020883&ei=aXt2VN6kMoSuogTF_4KQBQ&usg=AFQjCNHFcQfN6FLbccvLm0E3PKqhvxxn1g)

<comment><USER5> That's not working for me, even in an anonymous browser window.

<comment><USER6> No need for anonymous window, if you go to a WSJ link from google search results it should work. Try clicking the first organic listing on this page: [https://www.google.com/search?q=GoPro+Developing+Line+of+Con...](https://www.google.com/search?q=GoPro+Developing+Line+of+Consumer+Drones)

</comment></comment></comment><comment><USER7> What is this really?

GoPro is now a _public company_.

Their IPO was for around ONE BILLION

Now their market cap is TEN BILLION

Are they _really_ worth that? Well, no not really :-) They _desperately_ need to justify this valuation somehow. Watch this space. They'll be acquiring startups left and right most likely. And entering new markets. What is the flavor of the month? Drones of course. So, there you are.

That said, I think everyone will have very high expectations for this. But who will it be for? Drones are the new "toy for grownups", very similar to GoPro cameras. Anyone in the market for a DJI phantom, or one of the myriad Pixhawk- based "follow me drones" to hit kickstarter last year (airdog, etc.)

</comment><comment><USER8> Why? There's plenty of consumer drones around already, heh...

<comment><USER9> The current de facto standard is a GoPro on some sort of DJI or DJI-clone quadcopter. That's a monopoly the brand would be foolish not to try to exploit - and rebadging a clone quad with some GoPro-ness (physical robustness, integrated photography and control app, some follow-me features maybe) is a fair bet.

</comment></comment><comment><USER10> Great, more plastic trash. Nobody talks about what happens with these drones when they break, are outdated, or the owner dumps them: they end up in our oceans or landfill, which eventually makes its way to the oceans through floods. The companies should incur this environmental damage. Instead they only reap the profits and let us keep the damage.

<comment><USER6> I highly suggest reading the book "Cradle to Cradle: Remaking the Way We Make Things" by Michael Braungart & William McDonough. Essentially the book explains how things currently are made in a "Cradle to Grave" style, meaning products are sourced from the earth and then deposited back in an unusable form. Cradle to cradle would be where a product is made and when it's life is up we reuse the product's materials to build a new product. This is not how recycling works. Recycling could be better described as "downcycling" in that every time say plastic is recycled it's grade is lowered and it becomes less useful due to being mixed with other plastics and contaminates. The book explains this much better than I and is also a great primer on material science.

Here's a simple example of how a consumer product can be created in a cradle to cradle fashion.

1) Raw materials are sourced from the earth.

2) Raw materials are manufactured together in a way where they can easily be seperated.

3) Product ends up with a consumer.

4) Product lifecycle ends.

5) Manufacturer pays consumer for the product.

6) Manufacturer uses product's raw materials for step 2.

<comment><USER11> This sounds really interesting; I'll check that book out.

That said, I'm sympathetic to your parents sentiment. If I was taught correctly, the "reduce, reuse, recycle" arrow diagram is meant to be exercised in order:

1) reduce (your consumption)

2) reuse (a product or material in its existing state; repair if necessary.)

3) recycle (as a last resort - it's expensive, and if the usefulness of the current <thing> isn't completely used, you're wasting it.)

This is why I (for better or worse), don't take the Prius owners seriously when they look down their noses at my still 100% viable 40-year-old air-cooled VW.

Edit: formatting, bracket-matching.

)))))))))

<comment><USER12> I'm convinced the push for greater recyclability of vehicle parts is having a worse effect. A new VW is full of plastic parts which seem to have a ten year lifespan at best. Too many of these breaking render the vehicle uneconomic to repair. The result is that eh vehicle is scrapped and parts recycled. Great- except that recycling takes an enormous amount of energy, and building a new car and getting it to the consumer takes another enormous amount of energy (and materials). It would have been better if the original vehicle had a longer economic life.</comment></comment></comment></comment>


Ask HN: How do you overcome disappointment after a failed project? - <AUTHOR>

<comment><USER2> Review what your failure has taught you and focus on trying again.

</comment><comment><USER3> start something else.</comment>


Twilio ramps up mobile play with programmable SIMs for IoT, handsets with T-Mo - <AUTHOR> http://techcrunch.com/2016/05/24/twilio-ramps-up-mobile-play-with-programmable-sims-for-iot-and-handsets-with-t-mobile/?ncid=rss <comment><USER2> Is anyone else thinking of porting their mobile number to Twilio and setting up their own, personalized google voice using the twilio API ?

This occurred to me when I decided that what I wanted my phone to do was ring forever if I didn't answer. It turns out, twilio gives you a way to do this:

[http://stackoverflow.com/questions/22410430/twilio- respond-t...](http://stackoverflow.com/questions/22410430/twilio-respond-to- incoming-call-by-ringing-forever)

... and there are a lot of other very interesting things you could do:

[https://www.twilio.com/blog/2013/03/building-beyond- google-v...](https://www.twilio.com/blog/2013/03/building-beyond-google-voice- with-twilio.html)

<comment><USER3> So I've actually been doing this in various forms for the past few years. Mind you I actually chose to go with Plivo (a competitor) instead of Twilio, a decision I'm still thinking about to this day (MMS primarily). The way it works for me is I actually use Slack as the interface to my contacts. Each person is their own private slack room. I use it just like any other, I send them slack messages and it sends them a SMS and vice-versa. So far it's been pretty great, I get to take advantage of all of Slack's clients and I just write the code that transits the messages using the Slack API. What's really fun is that I'm starting to allow slash commands so that my friends can use some of them in the rooms with me and we can have sort of a shared chat-bot experience over regular SMS.

If anybody is interested in seeing the code, some parts of it are already open source[1]. The most interesting piece is the dialer, as someone in the thread pointed out, setting the caller ID on the outbound is tricky. On Android there are actually APIs that can intercept outbound calls, manipulate the number, and make the call to my gateway and then input the actual number as DTMF codes followed by a terminator. It doesn't always work but in 95% of cases I've never had a problem.

[1]: [https://github.com/saarons/ward](https://github.com/saarons/ward)

<comment><USER4> This is a clever way to handle the client. I like it.

</comment></comment></comment><comment><USER5> Good timing for Pebble Core? [https://news.ycombinator.com/item?id=11762535](https://news.ycombinator.com/item?id=11762535)

</comment><comment><USER6> The pricing seems rather outrageous. Is it not fair to compare with, say, Google Fi at $10/gig?

<comment><USER7> with google fi you can also order extra data sim's with no monthly fee. And they use your phone's $10/gb plan.

<comment><USER8> You can get a bucket of data to use across multiple data devices with Google Fi?

</comment></comment></comment><comment><USER9> Plug: if you're at the Clockwork Alchemy Steampunk Convention at the Doubletree Hotel in San Jose this weekend, check out the Telegraph Office.[1] That uses Twilio for SMS handling.

[1] [https://www.youtube.com/watch?v=6F_hhp4nCHE](https://www.youtube.com/watch?v=6F_hhp4nCHE)

<comment><USER10> I like the Telegraph Office idea, but the flashing in that video made my eyes hurt pretty quickly

</comment></comment><comment><USER11> I paste this in every time there's talk about cheap data SIMs for IoT stuff:

[https://www.truphone.com/us/consumer/sim/](https://www.truphone.com/us/consumer/sim/)

I'd love to hear other people's experiences, but basically: $0 a month per SIM, $0.09 per MB. Since there's no monthly fee, you're supposed to use a certain amount of credit per month or they'll charge you a small fee to keep your number active, but mine has been unused for maybe six months with zero charges still. The SIM costs $30, but half of that is service credit.

</comment><comment><USER12> Any idea where/when we can get one?

<comment><USER13> _Twilio says the service will be available broadly in Q4, 2016._

</comment></comment><comment><USER14> Programmable SIMs for the IoT?

Now we are definitely going to run out of phone numbers.

</comment><comment><USER15> Does anyone else wonder whether or not the explosion of solar panel telemarketing calls are a consequence of how easy Twilio makes it to set up call center operations and change in and out of numbers?

<comment><USER16> Twilio requires that you call from either a number you have in their system, or a number you've verified ownership of. That's a higher bar than a lot of voip providers -- i've gotten many calls from numbers that don't even fit in the dialing plan.

<comment><USER15> From what I remember, you can change in and out of phone numbers like with Google voice - and there are a ton of them. I don't know if that matters for spammy calls - I don't know anything about that domain.

Twilio allows you to automate calls programmatically, and what a lot of the callers do is wait for you to say hello - they're robo dialers. I wonder how much Twilio has influenced that (unknowingly or deliberately)

<comment><USER17> This is very easy and cheap to implement with Asterisk and a no-name VoIP provider. I've done some messing around with phones in the past and I would expect that Twilio has little/no effect on this space -- the barriers to being spammy with Twilio are higher than with Asterisk and another VoIP provider.</comment></comment></comment></comment>


MSDN and TechNet subscriptions gain access to Windows 8, downloads available now - <AUTHOR> http://www.winbeta.org/news/msdn-and-technet-subscriptions-gain-access-windows-8-downloads-available-now#.UCvbQJ5p1X8.hackernews <comment><USER2> Having trouble downloading? Try using Internet Explorer and installing the download manager MS ask you to. The download isn't astoundingly fast, but I'm getting between 1.5 and 2MB/s here in Poland.

Generating keys took a couple of attempts and a minute or two, but no major hassles.

</comment><comment><USER3> _...and gain access to a legitimate product key for activation._

Activating windows is _now_ a feature!

<comment><USER4> IIRC with 2008 R2, they didn't limit functionality if you didn't activate, they just took away the background and popped up a dialog when the system started. Activation was really only necessary to make sure you were licensed correctly (which isn't really relevent to TechNet/MSDN subscribers who could install as many copies as they want for evaluation/development purposes IIRC).

If they took the same lenient approach to activation (which probably isn't the case because it's a consumer OS), I could almost understand not giving license keys to technet subscribers, as their software is for planning/evaluation purposes only.

<comment><USER5> I can't speak for Win8, but all the older OSes came with perfectly functioning product keys for activation.

</comment></comment></comment><comment><USER6> The site is being hammered it appears. I am getting service exceptions every time I try and download, or even browse for that matter.

</comment><comment><USER7> Any idea when this is going to hit Dreamspark Premium (used to be MSDN Academic Alliance)?</comment>


Scripts from over 10,000 movies - <AUTHOR> http://www.springfieldspringfield.co.uk/movie_scripts.php

<comment><USER2> There have been more than a few occasions when I've needed to review a movie script to quote it for a paper, only to find that it's quite different from what I'm seeing in the movie. Are these transcripts from the films, or scripts used to shoot the film (which may be improvised on, rewritten on the spot, etc.?).

<comment><USER3> These are certainly not what's used to shoot the movie. These appear to be closed captioned data from the films.

<comment><USER4> TV closed captions at that, going by the occasional lines of material from adverts/promos appearing mid-script.

Nice resource, though.

</comment></comment></comment><comment><USER5> Tragically, not scripts. Transcripts from closed-captioning.</comment>


The Ergodicity Problem in Economics - <AUTHOR> https://www.nature.com/articles/s41567-019-0732-0#Sec7 <comment><USER2> 'Ergodicity' was solved by Bellman with multi-stage sequential decision problems. There's no breakthrough here. If you leave out key parts of the problem like bankruptcy or finite capital or opportunity cost, surprise surprise, naive greedy expected value maximization gives you the wrong answer.

"Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?"</comment>


In-Memory Performance for Big Data (2014) [pdf] - <AUTHOR> http://www.vldb.org/pvldb/vol8/p37-graefe.pdf <comment><USER2> Has this pointer swizzling concept been adapted by any big data-focused databases?

Would be interesting to see how this works with bigger pools of volatile and persistent memory (disclaimer: I work at Intel on Optane DC SSD/PM-related things).

<comment><AUTHOR> BTW: What's your take on random read speed? I think with SSDs now and maybe NVRAM in the future we can address physical storage more fine granular than with HDDs and for instance with [http://sirix.io](http://sirix.io) data is only clustered during writes (batched and synced to the flash drive) and it versions variable length in-memory and physical pages such that not every record has to be copied and written again. For instance to reconstruct a page we have to read from random places (maybe in parallel) to reconstruct a page in-memory. Thus Sirix relies on fast random read speed and on find granular access to the physical stored records.

<comment><USER2> My take on random read speed? Check out this paper from Lenovo testing the performance of Optane DC Persistent Memory on their servers: [https://lenovopress.com/lp1083.pdf](https://lenovopress.com/lp1083.pdf).

There's another good paper from a team at UCSD testing all sorts of usages and file systems with NVRAM here too: [https://arxiv.org/pdf/1903.05714.pdf](https://arxiv.org/pdf/1903.05714.pdf).

Sirix sounds like a good fit to take advantage of App Direct access on Optane DCPM, but you're way more of an expert than me. Perhaps make a request for alpha access at GCP to test Sirix with the new tech? [https://docs.google.com/forms/d/e/1FAIpQLSeX1tN6Qt- aQUK2iVVi...](https://docs.google.com/forms/d/e/1FAIpQLSeX1tN6Qt- aQUK2iVVioClFX5N-061jqO46vzpHzAPHkjwzVw/viewform)

</comment></comment></comment><comment><USER3> Had to look this up:

[https://en.wikipedia.org/wiki/Pointer_swizzling](https://en.wikipedia.org/wiki/Pointer_swizzling)

<comment><USER4> The term pointer swizzling isn't familiar to me, but it seems to be the same technique by which variable-width tuples on a page are accessed via a fixed width item pointer array (sometimes called an indirection vector) within most database systems.

</comment></comment><comment><USER5> Interesting, sounds a bit like the way write-barriers made the combination of copying garbage collectors and direct object pointers feasible.</comment>


Eliminating wars by designing and deploying a highly contagious brain virus to change human nature for the better - <AUTHOR>

Is such a thing feasible?  Would you classify it as terrorism? <comment><USER2> Not being a biologist, add a grain of salt and all that, but...

Of course not! It's just not even remotely feasible. There are two reasons, but I'll start with the big one.

We have shown a marked inability to micromanage "changing human nature for the better." We just don't understand enough about the brain to make e.g. violent criminals stop being violent, using psychology, drugs, surgery, or anything else really. See any crime statistics you like on the subject. The one exception is wherein we can stop someone from being violent, by basically stopping them from doing anything -- not a desirable outcome as applied to the entire human population.

The second reason it's not feasible is, well... What happens to the one guy who finds out about this, and spends a year in his basement becoming completely immune to the vector? People are resistant to gene therapy vectors from time to time, with no deliberate action. Deliberate action just makes this scenario more likely.

Eliminating violence is a nice sentiment, but this methodology is just not even remotely feasible. Ethics are a whole other can of worms.

</comment><comment><USER3> Have you seen Serenity? It was the _bad guys_ who tried something like that.

</comment><comment><USER4> Well, if nothing else, it would probably be one of the weirdest applications YC has ever gotten.

</comment><comment><USER5> There's an experimental webcomic about an alternate history of the afghan war where the military develops a spy network of millions of robotic spiders, but for lack of operators decides to open source their operation on the internet.

Among other novel uses of tech in warfare, they deploy an 'empathogenic' aerosol which goes to work on the empathy centers of the brain, making people permanently unable to kill. The story revolves around an American soldier who was accidentally exposed to it. See: <http://www.e-sheep.com/spiders/3.5/10_knife.html> and <http://www.e-sheep.com/spiders/3.5/000_hospital.html> and <http://www.e-sheep.com/spiders/3.5/11_epilogue.html>

</comment><comment><USER6> Idiotically dangerous, for two reasons. The qualities you would eliminate are the very ones that help our survival as a species. Second, and more important, wars are always about population pressure and competition for resources. Always. Your virus could poop Valium and morphine -- but it wouldn't change the root cause.

<comment><AUTHOR> _...wars are always about population pressure and competition for resources. Always. Your virus could poop Valium and morphine -- but it wouldn't change the root cause._

So what would happen if war is never an option?

<comment><USER6> You're begging the question. There is no 'be violent' chemical in our brains. It's a complex emergent behavior. So your hypothetical virus would either be ineffective, or so effective it make the organism (that's YOU) unable to feed itself.

<comment><AUTHOR> [http://en.wikipedia.org/wiki/Testosterone#Effects_on_the_bra...](http://en.wikipedia.org/wiki/Testosterone#Effects_on_the_brain)

<comment><USER7> Decreasing our testosterone would reduce violent tendancies, but it would also mess with our ability to reproduce. And besides, war isn't usually about irrational aggression, it's often more about fear, which afaik is mitigated by testosterone

</comment></comment></comment></comment></comment><comment><USER8> I'd classify it as hubris.

</comment><comment><USER9> You may find Stephen King's short, "The end of the whole mess" interesting. The point is how to define "better nature".

</comment><comment><USER10> It's feasible, but not terrorism. If developed, aggressive humans would use it as just another tool to stay in power.

</comment><comment><USER11> The story is called "The Giving Plague", by David Brin:

<http://www.davidbrin.com/givingplague1.html>

</comment><comment><USER12> What if by trying to deploy said virus, you started a war? Because not everyone, myself included, wants to lose their warmaking ability and/or skills.

</comment><comment><USER13> I'd take such an action as a declaration of war on my own free will, and act accordingly.

</comment><comment><USER14> Yeah.... that idea is never gonna backfire at you and wipe out all the human race

</comment><comment><USER15> ....Imagine how powerful you could get by finding a cure for that virus....

<comment><AUTHOR> Cures take time and scientists can work on many such viruses -- though you would need to ensure that being infected by several such viruses does not yield bad results.

<comment><USER15> Once you found a cure, you could pick up a sword, or boxcutter, and force scientists to stop coming up with new viruses.

</comment></comment></comment><comment><USER16> Feasible, no. Terrorism, no. Immoral, yes. Desireable, maybe.</comment>


Gitlab to add 3rd party telemetry, disable web/API access until users consent - <AUTHOR> https://gitlab.com/gitlab-org/gitaly/issues/2113 <comment><USER2> Threads merged into [https://news.ycombinator.com/item?id=21337594](https://news.ycombinator.com/item?id=21337594), which was posted first.

</comment><comment><USER3> There's a related GitLab issue [https://gitlab.com/gitlab- org/gitaly/issues/2113](https://gitlab.com/gitlab-org/gitaly/issues/2113)

<comment><USER2> Thanks. We've changed to that from [https://paste.sr.ht/~sircmpwn/23e31a29f427066ef261b2ffa7fd9b...](https://paste.sr.ht/~sircmpwn/23e31a29f427066ef261b2ffa7fd9bf46530d904).

</comment></comment><comment><USER4> Gitlab blog submission about this [https://news.ycombinator.com/item?id=21338720](https://news.ycombinator.com/item?id=21338720)</comment>