And suddenly, you're hip - <AUTHOR> http://blogs.perl.org/users/su-shee/2011/01/and-suddenly-youre-hip.html <comment><USER2> Thing is, while both Ruby & Vim have been driven by what she's describing she neatly sidestepped why those movements got started in the first place. Ruby gained huge traction primarily via Rails because working on PHP is unenjoyable to many and Ruby is a really pleasant language to work with. Vim's recent resurgence can largely be traced to development of Textmate grinding to a complete halt. Textmate's rise a few years ago was due to BBEdit failing to evolve. Git beats seven shades of shit out of SVN. Erlang provides a proven answer to concurrency issues. Javascript is the only choice for the ever more important front-end side of web development. Each of these shifts of development momentum have rational, logical underpinnings.

The buzz, the screen casts and other errata are a consequence of a lot of people making the same logical, reasoned choice and talking about it in public. I cannot think of anything that's changed in Perl that'd justify any such interest. I admit that may be my ignorance. Making sexy screencasts might get a little traffic but you can't astroturf wave of developer momentum with them.

<comment> Su-Shee Sure, there are plenty of reasons of the whys and whens - on the other hand, we could easily ask "why didn't everyone choose Emacs when textmate's development came to a halt" or "Why didn't people choose Python as their web language of choice when they didn't like PHP" or "Why not Bazaar instead of SVN" or why Ryan Dahl chose JavaScript as a base language for Node.js and not any of Python, Ruby, Perl, Scheme, Lisp or Lua - but JavaScript - and so on. (As others already pointed out below so I'm summing this up in one sentence here..) Thankfully we have plenty of options to choose from nowadays.

And yet I'm still convinced that the choice of Git over Bazaar has something to do with the smoothness of Github and with "It's from Linus!", the choice of Ruby/RoR with the image 37signals so nicely projects, that JavaScript's recent rise and massive change in perception comes thanks to Douglas Crockford and Erlang would have probably stayed in its niche if it wasn't for CouchDB.

So I was surprised and amazed by the change in perception of Vim over the last year and therefore I blogged about it.

And yes, along your examples Perl faced a similar situation around 2000 (so thanks for the well chosen examples) and decided to do Perl 6 to re-ignite the Perl spark. (Let's set aside for a moment wether or not it worked and what happened after that and boy am I sure the second I hit the submit button people will _exactly_ totally get into this subject.. ;)

I also didn't ask wether or not one really wants the success of the masses or if it might be a good thing to stay in a well-defined niche with a community of your choice, creating your own culture - as for example shows the Linux distribution Slackware very happily year by year and to a great satisfaction of its users.

I also didn't mention how much it might have to do with the age of developers, wether some changes plainly might be a generation thing of "first generation web developers" and "second generation web developers" or how much Apple's regained success does play into all that.

But as we can see within the comments below, old Perl cliches aren't really dead and get repeated all over wether or not the subject was Perl's marketing and not Perl's qualities (or the perceived lack thereof...)

Or maybe we all get kicked our asses by Lisp next year - thanks to Peter Seibel's Practical Lisp Programming book or "Land of Lisp" and of course Paul Graham and Emacs wins all over. ;)

<comment><USER3> Predictably Irrational talks about what you are describing here. You see, despite many of these technologies having a smaller install base, what they have done is create a new anchor in technology, which allows them to monopolize the conversation. The iPhone and Rails are the most significant anchors within the past 5 years. You can't make Perl popular by acting like rock stars and making videos on youtube, you can only making Perl popular by creating a new technological anchor for others to hook themselves to.

<comment><USER4> I agree with this whole-heartedly. My sentiments exactly.

</comment></comment></comment></comment><comment><USER5> I used to be a huge Perl advocate; I loooved perlmonks back in the day. (Just tried to log back into it after probably over 10 years but the forgot password link doesn't work) I read the Camel book cover-to-cover and giggled at the footnotes.

While I loved the language, I can't imagine going back to it. Now perl programs look like cat typing to me. It was way too expressive. The TIMTOWDI mentality meant that I could never read code I didn't write myself, and even some that I did. It was terse and dense like poetry and hard to understand - like poetry. To really "know" the language meant knowing a huge surface area full of exceptions and special conditions.

Sure, you could limit yourself to certain best-practices and styles but it was like being handing the keys to the porsche and told to only drive 35. At every turn, the language was begging you to flex that newly acquired knowledge of special syntax. The obfuscation contests, the perl poetry, the quines… Many languages have this failing in my opinion and it certainly matters more when you're working in a large team (hence, rigid boring old Java) but Perl taught me what it was like to go too far down that path.

It is what I would call a write-only language.

<comment><USER6> You are describing a Perl mentality that really doesn't exist today and is only really touted by people that used Perl "back in the day". The community mindset has changed a lot in the last couple of years. Now, that community is trying to show that change to the world...and slowly...it is working.

</comment></comment><comment><USER7>
        where btw is A NICE HIP FEMALE PHRASE I COULD PRINT
        ON A SHIRT?

I'm a vim ballerina!

        "we" are literally invisible to the bigger public, not
        matter how much CPAN grows and no matter how much #perl
        is the biggest IRC channel on freenode.

Secret societies are cool.

<comment><USER8> I don't see why females can't be ninjas and rockstars, or are these things just not as appealing to the "fairer sex"?

<comment><USER9> I thought this part of the essay was strange, because they sure as hell can be. Courtney Love, Brody Dalle, Joan Jett.

Not to mention: <http://en.wikipedia.org/wiki/Kunoichi>

</comment></comment></comment><comment><USER10> From the article:

 _"The iPhone isn't the highest sold smartphone"_

Sure it is. At least in the U.S., Japan, New Zealand and Australia. In most other countries, Nokia is the most popular smartphone _vendor_ , but because they offer hundreds of different models, I doubt Nokia has one specific model that sells better than the iPhone 4.

[U.S.] [http://www.engadget.com/2010/11/01/canalys-iphone-becomes- mo...](http://www.engadget.com/2010/11/01/canalys-iphone-becomes-most-popular- smartphone-in-the-us-andro/)

[Australia] [http://www.idc.com/about/viewpressrelease.jsp?containerId=pr...](http://www.idc.com/about/viewpressrelease.jsp?containerId=prAU22603210&sectionId=null&elementId=null&pageType=SYNOPSIS)

[New Zealand] [http://computerworld.co.nz/news.nsf/telecommunications/andro...](http://computerworld.co.nz/news.nsf/telecommunications/android- knocking-on-iphones-door)

[Japan] [http://www.businessweek.com/news/2010-04-23/apple-iphone- cap...](http://www.businessweek.com/news/2010-04-23/apple-iphone- captures-72-of-japan-smartphone-market-update3-.html)

</comment><comment><USER11> I learned vim over emacs because vi is installed on every linux machine I have ever touched, so when I sit down to a server and I need to edit a config file, I try vim, then I use vi, and I always find one or the other. I just opened Terminal on my Ubuntu 10.10 machine and typed "emacs" and it informed me that it wasn't installed, but was available in a slew of packages.

<comment><USER12> I never understood this rationale for learning vim. Do you really spend a lot of your development time on random Unix boxes you and all of your friends lack root access to?

<comment><USER13> These days, probably not that much, with the advent of virtualisation. But a decade ago there were a lot of shared shell servers in use with only a minimal install and a small per-user quota. So the rationale made sense...

</comment></comment></comment><comment><USER14> A suggestion for a Perl screencast: using the Perl debugger. ~1.5 years ago my friend found a bug in the Perl debugger that had rendered it basically non- functional for several releases. I think it's telling that no one picked up on that for so long (i.e. no one is using the Perl debugger, probably because they don't know it exists and/or how to use it).

[ IIRC, it might be the bug under: <http://perldoc.perl.org/perl5100delta.html> ; search for 'PERLIO_DEBUG' ]

</comment><comment><USER4> I guess I'll throw my hat in the ring. Perl is awesome, and since I've been using it practically my entire career and have contributed quite a substantial amount of time developing libraries for CPAN I suppose it my core-competency.

Bottom line, CPAN is awesome ... but lets not be a one trick pony. When you hear things over-and-over you should probably take notice (and maybe even onus). "Perl is not newbie friendly, past or present (modern)", "Perl community is not friendly (rtfm)", "Perl is not used for the new web", "Perl has no good IDE", etc.

I'd like to see Perl restored to its former glory because it is an incredibly versatile language. IMHO, I think Perl developers need to develop more purty public-facing tools, e.g. Websites, Web Apps, Desktop Apps, etc. .. see Lacuna Expanse for example.

CPAN Modules are not public-facing (or are to a point) and do nothing towards altering the perception of Perl.

</comment><comment><USER15> Why Ruby? is a pretty damn good presentation. He talks about how the benefits include the culture, as well as the language.

<http://ontwik.com/ruby/david-hansson-why-ruby/>

<comment><USER16> I came to comment just the same. I used to work with Perl for about 4+ years, and now I'm on my way to exit a PHP work after 2 years. My next project will be in Ruby and this presentation helped me to rationalize the guts I had for Ruby (I've been playing a little bit with it).

The idea of making tools that are joyful to use to the programmers (wether it's the programming language, the editor, the SCM...) is something that appeals a lot to me, and it's something that (unfortunately) Perl lacks, basically due to it's syntax.

The community around the languages also affects, both have a great community around with hundreds of incredibly smart people with it's own quirkinesses, but the Ruby quirkinesses are more appealing to me (think DHH or _why) than Perl's (think Larry Wall or all the JAPH/golf...).

<comment> Su-Shee This is bascially what I was talking about.

Though the Ruby community managed somehow to drive off _why and someone like Zed Shaw if I remember correctly. If that really appeals to you...

<comment><USER17>
        if I remember correctly

You don't. _why left open source for unknown reasons.

<comment><USER18> Don't really wanna go down here, but _why left after someone claimed to post his IRL name/info

<comment><USER17> That's certainly one leading theory, and probably the most likely. However, that happened earlier in the summer, a month or more before he actually shut everything down. There are other possible theories, eg, in his last tweets he lamented about feeling left behind by the progress of open source, or the theory that he planned it all along based on the Poignant Guide's ending.

No matter which of those reasons it was, it's pretty baseless to claim that he took down all of his websites, comics and open source software in a variety of languages including one he created due to some mysterious, unmentioned, irreconcilable beef the Ruby community, especially considering he was one of the most influentual people in defining that community.

</comment></comment></comment></comment></comment></comment><comment><USER19> 'I've always wondered how those mechanism of "being THE it-language" or "the tool the cool kids use these days" or "success" in terms of "spreading everywhere" really works.'

Just having CPAN isn't enough. There need to be new and interesting projects that stand on their own and are current and relevant. I'm not saying there aren't, I just don't read about them on HN, reddit, etc. Perl was always about making things easy, and it wasn't hard to see how a perl script was better than a cgi handler in C. How is writing a DSL interpreter in Perl cool compared to, say, Ruby? How do the Perl MVC frameworks make things easier/better than rails or django?

<comment> Su-Shee That's totally not the point with all our languages these days - Ruby, Python, Perl - next year JavaScript will probably have a similar ecosystem of modules as we do as productive as the community writes code. Who doesn't have some amazing web framework these days?!

The differences boil down to details, architecture, stability, speed, security, documentation and the like - but seriously, do you really think some route handler in _programming language_ X or Y does make _any_ difference?

I personally didn't like the philosophy of RoR - I liked Merb better and got really put off by its community (and still am) and specifically by blog postings selling me shit as gold and all this "awesome <insert some simple basic not even well crafted solution to an every day problem here>" selling - but this is a matter of _taste_ and _personal preferences_ and don't really count as an argument.

Of course you can write a damn DSL in Perl in any way you like - otherwise a project like Moose wouldn't even be possible which wrote an entire metaobject OO system in Perl.

My point was that people usally plainly don't _know_ about those things and blindly think that PHP is the only language you can do "Web" with, Ruby the only language to write a DSL in and Python the only language well I have no idea what Python might be the only language for. ;)

</comment></comment><comment><USER20> Marketing re-energised the web after the period of downtime after the dot-com crash (O'Reilly and Web 2.0), I'm sure it could similarly re-energise Perl.

EDIT: If Web 2.0 wasn't a well crafted marketing campaign I don't know what is.

<comment><USER21> Now your edit is a phrase that would make a great tee shirt!

</comment></comment><comment><USER22> Also, Ruby is a better language than Perl. No amount of campaigning will change that.

(Before anyone follows-up with the usual "the right tool for the job", it's not the point here. There are good screwdrivers and bad screwdrivers).

<comment><USER23> in terms of stability? really?

I hear this a lot about Python. And I know a little bit about Python; I know less about ruby. But the thing of it is, from a SysAdmin perspective, Python is where Perl was in 2000. In 2000, you had differing versions of perl that were close enough to step on oneanother, but still so incompatible that you had to maintain one version of perl for your base OS tools, and usually another version of perl for every major application you used.

Perl has stabilized to the point where this is no longer a problem. I can run nearly everything on system perl without worrying about it. Python, on the other hand, I've had to wrangle with many RHEL systems that have two versions of python (one, because the RHEL base system requires a staggeringly ancient version of python, and then the other for the application the server was running.)

Python just isn't "done" in the way perl is. In five or ten years, sure. But for now, it's still a pain in the ass.

Hell, I'd bet money that at this point, perl5 has fewer memory leaks and other programming errors in the compiler than Ruby does, just because people have been pounding on it for so long.

<comment><USER24> I'm going to draw an analogy from Larry Wall's own words: Python 3 is to Python 2 what Perl 6 is to Perl 5, a different language.

Just because you had a bad experience with Python legacy code (yes, RHEL sucks), doesn't mean you get to discredit the language. What is it about the _language_ you find unfinished? I'd be 99% certain any issue you're going to mention is actively being worked on.

<comment><USER25> Interesting... Are people using Python 3, now?

(Hint: I don't think the grandfather comment was about Python 3.)

And different languages doesn't say much. :-)

Perl 6, compared to e.g. Python 2/3, is a _really_ ambitious undertaking. But OK, with the backporting going on, Perl 5 might end up being similar to Perl 6... :-)

<comment><USER26> I'm sure some are, but it's not mainstream. For example, the Django team hasn't started porting to Python 3 yet. For now, you can ignore Python 3.

</comment></comment></comment></comment></comment><comment><USER27> Nice article, although I'd fear a "Project for a New Perl Century". If there were an International Criminal Court for Programmer Rights, Perl should be the first language tried for crimes against programmerdom.

<comment><USER6> Any "crimes" were the fault of the programmer and not the language. Period. End of story.

</comment></comment><comment><USER24> I don't get it; when the Perl folk thought they had to reach the masses, instead of making Perl 5 more accessible to newbies, instead of covering Perl events (a comment on the blog mentions some specialized hardware for doing so - lol), instead of actively pushing Perl projects, they decided to come up with Perl 6!

Yet Perl 6, except from some blog posts describing its utter dominance over Perl 5 performance, still hasn't seen the coverage/promotion it deserves (I'm assuming here, because I'm not using it).

Maybe there are some lessons to be learned here.

<comment><USER28> _I don't get it_

To start: there exist Perl programmers who have worked on both Perl 5 and Perl 6, specifically to make Perl 5 more accessible and to make Perl 6 more imminent. Don't assume the entire Perl community is a hivemind with a single shared purpose.

<comment><USER24> I don't; and that wasn't my point.

<comment><USER28> To whom does the pronoun "they" refer, if not "the Perl folk"?

<comment><USER24> I started replying, but I'm not going to engage in a discussion of syntax and semantics. Feel free to downvote me.

</comment></comment></comment></comment></comment><comment><USER29> I'm just getting into Ruby and converting to vim as my primary editor, and I didn't even know that this is a "hip" thing to do. All of a sudden I feel trashy for making logical choices.

I think the author misjudged why people like me choose Ruby and vim -- choices that have nothing to do with each other, btw.

I'm a fan of terseness and readability. Ruby has a reputation for both. I've never heard the following phrases spoken: "Perl is great for writing DSL's." "Perl is very readable."

The most amazing experience has been going on GitHub on day one, reading the Rails, Haml, Sinatra, Tilt, you name it, code and being able to understand virtually any part of it. This is not only a testament to the language, but also a testament to the quality of the frameworks and the API's that are being produced with it. Show me a web framework written in Perl that I can dig into and understand with zero Perl experience.

Vim, on the other hand, is a sour-sweet topic. Here is the only reason I'm using vim: everything else sucks ___. Vim also sucks ____ because in 2011 it is still a text editor that can't copy paste using the "normal people" shortcuts. I'm looking forward to the day I finally customize vim enough to match Notepad in usability.

As much as vim usability sucks, I know that I can spend a year customizing it (and it will take a year) and be able to rely on it for the rest of my life. In contrast, there is no such incentive to invest into the monstrosities riding over the JVM (not calling names).

Also, screencasts are great because I read all day and its tiring, physically tiring. Sitting back, relaxing my eyes and being educated while I sip on a coffee and have a cookie is my idea of fun. Screencasts are free, bite sized, training. By the author's logic Khan Academy is worthless as an educational tool because most of it is written somewhere.

<comment><USER30> Regarding vim and "normal people" shortcuts, if 'source mswin.vim' doesn't work for you, here are the mappings I have in my .vimrc to give it the normal CTRL-C, CTRL-X, and CTRL-V, as well as sharing the clipboard with windows:

        " share clipboard
        set clipboard=unnamed

        " CTRL-V is Paste in insert mode
        imap <C-V>		"+gpa
        " CTRL-C is Copy, CTRL-X is Cut, in visual mode
        vmap <C-C>		"+y
        vmap <C-x>		"+d
        " Use CTRL-Q to do what CTRL-V used to do
        noremap <C-Q>		<C-V>

<comment><USER29> Thank you for sharing that. I've never heard of source mswin.vim. The standard copy paste shortcuts are platform agnostic at this point, hell, even my phone uses them (webOS). This is where I've found vim and emacs incredibly frustrating out of the box.

</comment></comment></comment><comment><USER31> Communication skills correlate with social standing. News at 11.

:)

<comment><USER20> Sure, maybe the idea is obvious - I suppose the interesting question is 'how can a transformation occur?', which is something the article tries to address.

</comment></comment><comment><USER32> Hip or un-hip, ChargeSmart loves perl - developers looking for work at a San Francisco based funded payments start-up should email me their details, pmikal [at] ChargeSmart.com.

</comment><comment><USER33> _"... Err, yeah well of course Vim is a really nice programming editor, man - why do you think we use it?! ..."_

traditionally because if you are on a machine with limited memory vi, vim is the only editor that will load and there is no way you will get me using 'ed' again ~ <http://www.faqs.org/docs/artu/ch13s02.html#id2963445>

</comment><comment><USER34> Maybe you should market Perl as uncool and weird and without annoying yuppies like DHH. ;P

</comment><comment><USER35> This article kind of made me want to get better at Vim.</comment>


Show HN: Anime character recognizer - <AUTHOR> http://avallet.vcd.design.kyushu-u.ac.jp/anime_recognizer

<comment><USER2> Interesting idea. There is a blog post with more information at [http://alexisvallet.github.io/posts/anime-character- detectio...](http://alexisvallet.github.io/posts/anime-character-detection/)

Also, it incorrectly identified two characters on the demo for me: [http://a.pomf.se/pykdwz.png](http://a.pomf.se/pykdwz.png)

Source: [https://github.com/alexisVallet/anime-character- detection](https://github.com/alexisVallet/anime-character-detection) it seems

<comment><AUTHOR> Hi! Author here.

The blog post and source code refer to an older algorithm than the one in the demo. Currently it is using a convolutional network for prediction not dissimilar to [1] or [2]. I'm writing a paper about it, if there is interest I'll put it online :) .

Thank you for the feedback on incorrectly identified characters! The algorithm is not quite perfect - 70% accuracy on a randomly chosen test set.

[1]: [http://arxiv.org/abs/1409.4842](http://arxiv.org/abs/1409.4842) [2]: [http://arxiv.org/abs/1409.1556](http://arxiv.org/abs/1409.1556)</comment></comment>


Admiral to price car insurance based on Facebook posts - <AUTHOR> https://www.theguardian.com/technology/2016/nov/02/admiral-to-price-car-insurance-based-on-facebook-posts <comment><USER2> Blocked by Facebook: [https://news.fastcompany.com/facebook-has-blocked-a-car- insu...](https://news.fastcompany.com/facebook-has-blocked-a-car-insurer-from- profiling-users-to-find-out-if-theyre-safe-drivers-4023658)

<comment><USER3> Looks like episode 1 of this series of Black Mirror has got them spooked. ;-)

Good call by Facebook in my opinion.

<comment><USER4> Or they simply haven't agreed to sell that data to Admiral, _yet._

<comment><USER5> People will stop using social media if it's used for stuff like this. I don't think we are in huge danger of it until that changes.

</comment></comment></comment></comment><comment><USER6> It's interesting because they clearly believe they have workable actuarial data to support this, so in many ways good on them for using the data that's available.

On the other hand, based on the examples given, it seems this is going to penalise people using language incorrectly - which I would assume can be strongly correlated with poor education. So on that basis, they're going to be saying that poor people are worse drivers and so must pay more? Is that ok?

But the biggest upshot of this whole thing is that suddenly there is a potential for real world financial consequences for what people write online. This is a game changer - and one I would imagine Facebook should be quite worried about.

I hope it triggers the start of a general awakening of the people when it comes to the impact of data overshare.

<comment><USER7> I would assume things like income and education are already now used in this kind of pricing decisions.

<comment><USER8> To a point, yes. I don't think they are allowed to know the income in the US - and I'm not sure they can ask your education either.

But they do use credit score, which negatively affects poor people. They say it is because people with poor credit are more likely to file a claim (note it isn't because of poor driving, just simply ability to cover a smaller incident).

They also use crime rates in an area, how far you drive to work, whether or not you have off street parking - and if that parking is by your house or not. All indicators of a person's finances.

Civil status affects insurance rates - after getting divorced, my rates increased. I've never had a ticket nor an accident. (I think they lower after marriage - somehow, you are assumed to be more responsible even though nothing else changed).

It is amazing how much doesn't depend on your actual driving habits. I understand some of it (ie, crime rate, how much you drive to work) because it does increase risk, but not things like whether or not I'm married.

<comment><USER9> You can volunteer that you are a college graduate to get a discount.

</comment></comment></comment></comment><comment><USER10> From the article: "The scheme is voluntary, and will only offer discounts rather than price increases, which could be worth up to £350 a year. However, Admiral has not ruled out expanding firstcarquote."

This is not a discount for courteous people. What this is is collection of personal data for advertising and data collection (to be resold) and a good way to advertise to people's friends.

And 350 a year? I'll believe it when I see it.

<comment><USER3> > What this is is collection of personal data for advertising and data > collection (to be resold) and a good way to advertise to people's friends.

I can see nothing to that effect in the linked article. Are you hypothesising or is there something I missed?

I'm not saying it's not plausible but the T+Cs should clarify one way or the other.

<comment><USER10> Just hypothesizing.

</comment></comment></comment><comment><USER11> In the sidebar: "Facebook forces Admiral to pull plan to price car insurance based on posts"

[https://www.theguardian.com/money/2016/nov/02/facebook- admir...](https://www.theguardian.com/money/2016/nov/02/facebook-admiral-car- insurance-privacy-data)

> Facebook said protecting the privacy of its users was of the utmost > importance to it and it had clear guidelines about how information obtained > from the site should be used.

> Section 3.15 of Facebook's platform policy states that the social media > site's data should not be used to "make decisions about eligibility, > including whether to approve or reject an application or how much interest > to charge on a loan".

Well, that didn't last long.

<comment><USER12> So what happens if the user _consents_ to giving that data up?

As in: "Welcome to Admiral. We're going to charge you X. If you want the possibility of being charged less, give us your Facebook and Twitter passwords."

<comment><USER13> Next step. Agree.

Do you want to trade access to your FB account for £350 ?

</comment></comment></comment><comment> martin-adams This to me feels like a step in data privacy that I do not like. Why not issue health insurance based on Google searches?

While it's voluntary, it may be seen as ok. But what happens if you opt not to do anything on social media and you end up with a premium penalty, or worse, refusal to be insured. This happens today when applying for a mortgage. If you've never taken a loan and had no credit history, they have no data to score you against.

I would prefer a mechanism that analysed people's driving behaviour to assess risk, not what I like on Facebook.

<comment><USER14> Apologies.... obligatory reference to Black Mirror. Season 3, Episode 1 'Nosedrive' has covered this to it's dystopian conclusion.

In other news, looking forward to the disruption self driving cars will have on the auto insurance industry.

</comment></comment><comment><USER15> "You will only get discounts"

Yeah right, that is not how insurance works. The cost per year for an insurance company is relatively stable and simply the chance a person crashes * the average cost of a crash * the amount of people insured. The other customers, without FB or who use a lot of exclamation marks will thus pay for a higher amount of the total costs. This gives them an incentive to go to a fair insurance company.

<comment><USER8> I always find the "you will only get discounts" version of anything. "participate in x wellness program and get x tests and pay less for health insurance!"

I always read this as them trying positive language: The real meaning is, "do this or be penalized by paying more". The more tight on funds one is, the more folks need the discount.

</comment></comment><comment><USER16> Won't this cause people to game the system to get discounts? I'm sure once people learn more about the internals (some of which have been revealed in the article), they could change their online behavior (not necessarily offline) to make it more suited to what gets a better value for them. Or they could even have multiple accounts - one to show a good face to such companies and another that's a personal account (even though this is not in line with Faceboook's ToS). This in turn could mean that the company would be relying on curated and made up information to make decisions.

<comment><USER17> Do you personally plan to spend time trying to reverse-engineer Admiral's insurance model? If not, multiply that by everyone else and you have your answer.

It's less work to just switch insurance companies.

<comment><USER16> One thing I missed in my point was that many other companies seem to want to exploit (or have already indulged in exploiting) information on social media. This could just be a trigger for other insurance companies to do something similar. Once it becomes somewhat well known, then more people will start curating their social media presence. This curation has already been a big thing on Facebook for other reasons. [1] It's just that the companies may not derive any real value out of such exercises in the long run.

[1]: [https://stratechery.com/2016/what-facebook-is-and- isnt/](https://stratechery.com/2016/what-facebook-is-and-isnt/) \- this is a great read on this topic of how people present themselves on Facebook

</comment></comment></comment><comment><USER18> from the comments: [https://www.openrightsgroup.org/press/releases/2016/facebook...](https://www.openrightsgroup.org/press/releases/2016/facebook- is-right-to-stop-admiral-insurance-from-using-its-data)

also related: [https://www.openrightsgroup.org/blog/2016/facebook-is- right-...](https://www.openrightsgroup.org/blog/2016/facebook-is-right-to- sink-admirals-app)

</comment><comment><USER19> And there goes FB's business model. Nobody is going to post anything once people realize their money is at stake. This seems like a good opportunity for a new friends and family social network.

<comment><USER20> new service idea: PR friendly facebook accounts. Pay £1 / month to have a 2nd facebook account with auto generated posts that get you discounts on car insurance.

<comment><USER21> It could also fake fitness bands data, since they are eligible for insurance discounts as well.

</comment></comment></comment><comment><USER21> Is it possible that some insurance company are already doing such things without the customers knowing?

Are there laws that require insurance pricing to be transparent?

</comment><comment><USER22> Having a "social media" account seems more like a pita than it's actually worth.

</comment><comment><USER23> When I gave up FB a good while ago I wasn't sure I was doing the right thing. Many thought I was being paranoid. As the months roll by I feel nore and more vindicated.

</comment><comment><USER24> I think it's a positive innovation since young people are currently assumed to be a very high risk, deservedly so in many cases but not all.

</comment><comment><USER25> Also discriminates against dyslexics.

</comment><comment><USER26> Good. Hopefully this will make people more aware of the consequences of what they share on the internet. With the IP bill in parliament at the moment looking set to pass with minor amendments, this could not be more timely.

<comment><USER27> That IP bill is a horror show and it's passing with a wink and a nod, I'm fast losing what little faith I had in Government to do the right thing.

We seem to have the worst government we've had in my life time (or perhaps I'm just politically more aware of whats going on).

<comment><USER26> With full support from both the Tories and Labour, there's nowhere serious to turn.

<comment><USER27> Yep, We really need to get rid of FPTP but that requires the turkeys voting for Christmas and the last campaign was _foul_.

[https://dailyelection.files.wordpress.com/2011/02/no-to- av-s...](https://dailyelection.files.wordpress.com/2011/02/no-to-av- soldier.jpg)

[https://dailyelection.files.wordpress.com/2011/02/no-to- av-m...](https://dailyelection.files.wordpress.com/2011/02/no-to-av- maternity.jpg)

How the _fuck_ do we let them get away with shit like that.</comment></comment></comment></comment>


OCaml and Mirage now running on rumprun, including bare metal - <AUTHOR> https://www.freelists.org/post/rumpkernel-users/OCaml-and-Mirage-now-running-on-rumprun-including-bare-metal

<comment><USER2> This will be extremely useful for running on very small devices (not all ARM boards have the virtualisation extensions that are needed to run Mirage unikernels as Xen VMs).

But it also looks like lots of progress has been made with cross-compilation support in the OCaml compiler too. At the moment, I compile my Xen unikernels on my Cubieboard, but it would be quicker to cross-compile to ARM on my laptop and just push the final VM image.

<comment><USER3> What small devices do you have in mind? True, the Raspberry Pi doesn't support virtualization, but in that case, you can run Mirage applications as normal Unix processes on Linux or FreeBSD, using raw sockets.

<comment><USER2> I was thinking about smaller devices than the Pi. Security devices, monitors, IoT type stuff. Especially where you want to minimise the amount of C code running and know exactly what it's doing.

I think it's also fun from a hobbiest point of view to do useful things without a traditional OS (Xen still requires Linux or similar in Dom0), but instead using a safe high-level language for most of it.

</comment></comment></comment><comment><USER4> Glad to see a hypervisor-generic way of doing unikernels is advancing. I never liked to tie in with Xen (or another hypervisor) when building an app as a unikernel.

<comment><USER5> The interesting thing about the unikernel approach that we're discovering is how useful the portability of the resulting applications is. Because everything is structured as a graph of libraries, only a little modification can pull in a huge amount of useful functionality.

For instance, Martin's work on Rump+Mirage now pulls the whole safe OCaml stack into a bare metal environment: the type-safe TCP/IP, HTTP, TLS, DNS libraries can all be deployed onto any target supported by NetBSD/Rump -- which includes some pretty small embedded ARM devices that we couldn't boot on before due to the Xen requirement!

On the other side of the spectrum, Thomas Leonard has ported a good chunk of the MirageOS stack to JavaScript, and built browser applications using the Irmin Git datastructure library: [http://roscidus.com/blog/blog/2015/04/28/cuekeeper- gitting-t...](http://roscidus.com/blog/blog/2015/04/28/cuekeeper-gitting- things-done-in-the-browser/)

We're working hard on getting all these pieces upstreamed at the moment, so it's not quite ready for primetime yet (the bare metal stack still has no network driver ported), but it's rapidly all coming together. I'm excited!

<comment><USER6> Any idea to replace the existing C bits by Rust now that 1.0 is out?

I remember seeing some post related to that as possible scenario.

</comment></comment></comment><comment><USER7> So rumprun allows you to run rump with the NetBSD lowlevel bits included getting a baremetal image where the highlevel parts target rump. Is that what this is and does that limit hardware support to NetBSD drivers and supported architectures?</comment>


ProseMirror has been open-sourced - <AUTHOR> https://github.com/ProseMirror/prosemirror

<comment><USER2> At this time, it is kind of wild that handling rich text content editing is so hard on the web. It is understandable, but a bummer, that really good content tools (google docs, office 365, medium) do not open source their editors. There are some good tools (textbox, aloha, hallo, quill) and some decent legacy ones (ck, mce), but nothing that is clearly a go-to tool that handles rich text, structured text (tables and lists), operational transforms, and sanitizing input well. It's always like: choose two.

Kudos to ProseMirror for tackling this. I can't wait to see how this works out. Also, it is kind of nice to have a way to contribute monetarily; I don't have the time (or expertise) to really contribute code. I would, given the need.

<comment><USER3> Guardian's scribe is another very good example of keeping the view separate from the model. The model produces clean data, which is the same across browsers.

</comment></comment><comment><USER4> There was a 8k euro Anonymous donor 2 hours ago. Wow.

[https://www.indiegogo.com/projects/prosemirror/x/1663745#/fu...](https://www.indiegogo.com/projects/prosemirror/x/1663745#/funders)

<comment><USER5> The anonymous donor was Aha! ([http://www.aha.io](http://www.aha.io)). It wasn't as anonymous as we expected because Marijn tweeted it :-), but we are excited by ProseMirror and the opportunity to contribute. WYSIWYG editing is a huge part of what our app does, and so I have always been on the lookout for better ways to build editors. Marijn's approach of using a shadow document representation ([http://marijnhaverbeke.nl/blog/prosemirror.html](http://marijnhaverbeke.nl/blog/prosemirror.html)) is the most promising solution I have seen for a while.

<comment><USER4> Thanks for this! Aha is an inspiration for me. I am working on something similar but not a direct competitor to Aha.

</comment></comment></comment><comment><USER6> Congratulations! Just added a contribution from the Overleaf[1] team who've been great admirers (and supporters) of CodeMirror -- it's a great editor and I look forward to seeing where ProseMirror goes! :)

[1] [https://www.overleaf.com](https://www.overleaf.com)

</comment><comment><USER7> This is Marijn Haverbeke's project, creator of Eloquent Javascript and CodeMirror. Good to see that it was funded!

</comment><comment><USER8> Having struggled with through the web content editing for over a decade, I am excited that this project is moving forward and will be open source. Glad that I was able to contribute to see it happen, and thanks to everyone else who added their funds.

</comment><comment><USER9> Here's an alternative editor I wrote that also supports input using raw HTML [http://bevacqua.github.io/woofmark/](http://bevacqua.github.io/woofmark/)

<comment><USER10> Not the same, you wrote contentEditable=true-based editor; ProseMirror is the full editor implementation separate from DOM, like Google Docs.

</comment></comment><comment><USER11> So glad to see this get funded!

I'm probably going to try to use this in my project _really_ soon.

</comment><comment><USER12> Very very cool! Great news!

</comment><comment><USER13> What is ProseMirror? I don't want to download it before i see it.

<comment><USER14> [http://prosemirror.net](http://prosemirror.net)</comment></comment>


Security Holes - <AUTHOR> http://xkcd.com/424/ <comment><USER2> This is pretty funny as usual. Ironically, Randall uses a Windows XP tablet PC. He said he couldn't switch to Linux cause he needs Photoshop (I told him about Wine).

By the way, did they every figure out which dev was responsible for commenting out the relevant lines? _smanek asks innocently without waving around around a big beating stick or anything_

<comment><USER3> | (I told him about Wine)

What about Gimp?

<comment><USER4> Ya know, as much as I love Gimp; Photoshop it ain't.

</comment></comment></comment><comment><USER5> xkcd is consistently awesome... and consistently lost on most people.

<comment><USER6> That's cool, though-- because it isn't aimed at "most people." Part of what makes xkcd so consistently awesome is how (unconsciously) tuned in it is to its target audience.

What's always surprised (and scared) me, on the other hand, is that the readership of "Dilbert" scaled so well....

<comment><USER7> "What's always surprised (and scared) me, on the other hand, is that the readership of "Dilbert" scaled so well...."

With what I've seen, it would have surprised me if it didn't.

I'm one of those who never really laughed at Dilbert. I just said, "Yea, I've seen that before." Sad, but true.

I have to admit, thought, I've never _really_ seen a feline human resource director. I've seen many that were dumber, but never feline.

<comment><USER8> I've found that when I start laughing at Dilbert cartoons it means I need to quit my job.

That rule of thumb has worked well twice for me. Hopefully I won't have to apply it too many more times.

</comment></comment></comment></comment><comment><USER9> Lame.

</comment><comment><USER10> Webcomics belong on the comics subreddit.</comment>


Why Python is Slow: Looking Under the Hood - <AUTHOR> http://jakevdp.github.io/blog/2014/05/09/why-python-is-slow/ <comment><USER2>
        Dynamic typing makes Python easier to use than C

I disagree with the implications. The main reasons Python is easier to use is independent of type system. Not having to manually manage memory, for example! Overall it is a higher-level language, whereas C is designed for maximum performance.

Dynamic typing is probably preferable to a 40 year old type system. But Python could be easier to use (catch bugs ahead of time!) and execute faster by adding a modern type system. Optional typing (like TypeScript or Facebook's new PHP implemntation) would probably be appropriate.

<comment><USER3> I'd love to see optional typing in Python, I wonder if there is any official reasons about why it never got introduced.

I very rarely change the type of a variable, so it would be essentially free speed and free speeds for me.

I actually wonder, do people use dynamic typing so often? I mean, it's nice to do "variable = int(variable)" when I know that I'm getting an integer in a string, but that's probably the only use case can I can think off that doesn't just reuse variables for something else.

<comment><USER4> I started programming in Java, and moved to Perl and now Python. At first it seemed a bit weird, dynamic typing, but now I embrace it and enjoy the flexibility it offers. I see that many people prefer static typing and I am not sure why.

Can someone give me a concrete example of when static typing would be beneficial? (The majority of my work revolves around databases, so I guess I rely on that as a kind of type checking to a degree).

<comment><USER5> In Javascript (which is also dynamically typed) I've had a few times where adding 1 and 0, say, yielded "10" because either the 1 or the 0 originally came from a string. OK, I can live with that, but I find the fact that you can use that string in numeric comparisons potentially confusing.

The general argument is that if you write enough unit tests, you can guarantee that your code doesn't make those kinds of mistakes. The statically-typed response is "why should you have to write unit tests when the compiler can make that guarantee for you?"

<comment><USER6> Adding strings to integers is usually referred to as weak typing, which is a seperate and orthogonal concept to dynamic typing. The runtime of a dynamic language could look at the two types of the values, decide they're different and throw a type error. Similarly, a static type checker could look at the types of the values and decide it knows how to do an implicit cast from one to the other.

<comment><USER5> That's a valid point. But, being dynamically typed, you don't find out about the type error until runtime. It's possible, although unlikely, that a Python web application can run for months before hitting a particular code branch where a string and an int are added together, and an exception is thrown. (In Python, it's also possible to get syntax errors long after you start your program).

It's possible that the compiler would have had enough information to determine this, if the compiler were to check types. Again, the proposed solution is to simply write enough tests to exercise all code paths.

For what it's worth, I enjoy working in Perl. But I realize when I do that some things are deferred until runtime. I also enjoy working in C and C++, partly because I can push some things to compile time (type checks, sure, but also arithmetic ( [http://en.cppreference.com/w/cpp/numeric/ratio/ratio](http://en.cppreference.com/w/cpp/numeric/ratio/ratio) ), unit checking ( [http://www.boost.org/doc/libs/1_55_0/doc/html/boost_units.ht...](http://www.boost.org/doc/libs/1_55_0/doc/html/boost_units.html) ), a decent amount of reflection ( [http://en.cppreference.com/w/cpp/header/type_traits](http://en.cppreference.com/w/cpp/header/type_traits) ), some assertions (static_assert), etc.). I don't necessarily push it all to compile time, but C++ allows me to.

</comment></comment></comment></comment></comment></comment><comment><USER7> The bigger picture is that CPython's core team simply does not care too much about performance. Performance has never been a fundamental requirement, but merely an afterthought.

The biggest reminder of this was Python 3, which for me was a complete disappointment. They could have limited python's super-dynamic behavior (e.g. changing builtin functions, patching classes on the fly, etc.) or made them optional. They could've added optional typing annotations a la Cython. Or even changing the builtins and language syntax to allow more inplace operations and preallocations, so that temporary results wouldn't have to be allocated on the heap over and over again. All of these changes would have made python faster and more JIT-able. None of these things happened. Performance-wise, python 3 is no step forward.

Python+Cython is still a powerful combination, but eventually Julia or similar languages will eat python's lunch with respect to scientific computing.

<comment><USER8> I think if python3 had made major performance improvements (not to mention the GIL) there wouldn't be nearly as many 2.7 holdouts.

<comment><USER9> And it still wouldn't be done.

</comment></comment></comment><comment><USER10> One thing that bothers me - and has for a long time - is why Python (Perl, Ruby, etc), never have really leveraged the work Common Lisp systems have done (CMUCL, SBCL, etc), which provide very good performance without sacrificing dynamic typing or the REPL.

<comment><USER11> What work specifically are you referencing?

<comment><USER12> Maybe:

[http://www.flownet.com/gat/papers/lisp- java.pdf](http://www.flownet.com/gat/papers/lisp-java.pdf)

[http://www.iaeng.org/IJCS/issues_v32/issue_4/IJCS_32_4_19.pd...](http://www.iaeng.org/IJCS/issues_v32/issue_4/IJCS_32_4_19.pdf)

</comment></comment></comment><comment><USER13> Python (and Ruby for that matter) are slow because there are no billion-dollar companies stuck with an initial choice of language that impedes their ability to grow. PHP and Javascript used to be extremely slow and now after several dozens of millions thrown at JIT, rewrites, forks and redesigns they're starting to get much much faster.

<comment><USER14> Not so. Google uses Python extensively in-house (it's one of the four "blessed" languages) and, in fact, employed GVR until he was recently hired away by Dropbox--another billion-dollar company which relies heavily on Python. At one point Google even spearheaded an ambitious effort ([https://code.google.com/p/unladen- swallow/](https://code.google.com/p/unladen-swallow/)) to make CPython much faster. It failed.

At the point where even Google can't make it happen, it really starts to look like Python performance is limited at some very fundamental level to what we see today. Personally I think this is fine. I use Python for everything day- to-day and offloading the intensive stuff to a C extension (a la Numpy) works just great. There are very few instances where I find myself wishing Python was faster.

<comment><USER15> Unladen Swallow started as an intership project and didn't get very much support at Google [1]. When US started (~2009), Google had been writing their core, high-performance stuff in Java and C++ for many years already so there was no internal or existential need to make Python faster.

[1] [http://qinsb.blogspot.com/2011/03/unladen-swallow- retrospect...](http://qinsb.blogspot.com/2011/03/unladen-swallow- retrospective.html)

<comment><USER16> On the other hand, there may have been applications higher up the stack that would've benefited from a more efficient Python. I don't know if it still is but I heard GMail was written in Python, you'd think an application of that scale would benefit from better performance.

<comment><USER15> The internet says it is written in Java: [http://en.wikipedia.org/wiki/Gmail](http://en.wikipedia.org/wiki/Gmail) (possibly with some Python build tools, for which performance doesn't matter)

<comment><USER17> The Gmail frontend is Java. The backend (mail routing, spam filtering, virus checking and parts of storage etc) is C++.

</comment></comment></comment></comment></comment></comment><comment><USER18> Yes, Python is slower in execution than some other languages, but:

       ... efficient use of development time ...

That is the reason, why Python counts (not only references). Python has many very good libraries, is a good OOP language, easy to learn, but still very, very powerful. You can express in Python some things in a single line, where you need hundreds of lines in C++ or other languages.

The few percent of running speed that you might loose, are neglect-able in most cases against the win in development speed.

In many applications you don't need the full CPU power, but often times you are hindered by e.g. the disk speed or other factors ... and than you don't lose anything when you are a little bit slower in some minor tasks.

<comment><USER19> > You can express in Python some things in a single line, where you need > hundreds of lines in C++ or other languages.

citation needed.

<comment><USER20> Example: x = {'foo':34,'bar':[1,2,3],'baz':'quux'}

The headers alone for STL maps are hundreds of LOC.

<comment><USER21> Counting headers is rather unfair.

C++11:

map<int, char> x = {{1, 'a'}, {3, 'b'}, {5, 'c'}, {7, 'd'}};

Any not-ancient C++ using boost Assign:

map<int, char> x = map_list_of (1, 'a') (3, 'b') (5, 'c') (7, 'd');

Shamelessly stolen from here:

[http://stackoverflow.com/questions/138600/initializing-a- sta...](http://stackoverflow.com/questions/138600/initializing-a-static- stdmapint-int-in-c)

</comment></comment></comment></comment><comment><USER22> > Python ends up being an extremely efficient language for the overall task of > doing science with code.

This is pretty close to how I characterize my time, 'doing X with code', and Python yields great returns in these terms.

</comment><comment><USER23> While everyone is on the subject, I thought I'd mention some weird behavior I saw today.

I just switched my program from using a defaultdict to a regular dict.

I.e., from defaultdict(lambda:'NA') to regular dict using get(val, 'NA') for access.

And I got a something like a 100x speedup. It runs in two minutes instead of two hours. I had no idea a defaultdict would be so much slower.

Unless there's something funny going on in my program and it's unusual behavior.

<comment><USER24> The docs for the defaultdict are here: [https://docs.python.org/2/library/collections.html#collectio...](https://docs.python.org/2/library/collections.html#collections.defaultdict)

And they pretty much say that there is only one method that's been overridden from the normal dict class. And all it does is it executes the anonymous method (lamda) you supplied instead of returning the default value you pass in.

Also, this depends on your usage, and what you have in the lambda expression. I'm curious about your code, care to paste/link some of it for us?

<comment><USER25> I would guess that the code tries to get the value for keys that do not exist in the defaultdict. Well, if the key does not exist then it is being added with the default value 'NA'. So in this way you can end up with a huge dictionary where most of the values are just 'NA'.

<comment><USER23> Oh, wait, so defaultdicts actually insert missed keys?? I thought they simply gave you a default value instead of a keyerror. If you're right, then that would certainly explain it.

<comment><USER26> They have to, because they cannot, in general, decide whether the lambda you gave it is idempotent _and_ returns an immutable value.

For example, if you provide a function that returns an empty list, and do:

        l = foo['bar']
        l.append('baz')
        print len(foo['bar'])

That should print 2 (apologies if this isn't correct Python)

If one had a defaultdict that took a default value in a language with enough reflection, you might be able to deduce that the lambda always returns a simple value such as 3.1415927, and not store copies in the dictionary.

<comment><USER27> What you have there will print 1.

</comment></comment></comment></comment></comment></comment><comment><USER28> This is convenient, since it's almost exactly what I plan to talk about in the undergrad class I'm teaching today ([https://github.com/williamstein/sage2014](https://github.com/williamstein/sage2014)). I view this sort of article as good motivation for Cython, and the value of this article is merely that it aims at typical undergraduates _not_ in computer science.

</comment><comment><USER29> Good read. Whenever I read stuff like this, I always wonder if it is always true that dynamically typed languages are slower than statically typed languages ? Also, do we have to take this for granted that more higher level the language is, the slower it will be ? Or are there exceptions ?

Also, it is worth asking if for majority of use cases of python for data/analysis, the ease and flexibility outweights the slowness.

<comment><USER30> Always is a bit of a strong word but yes, it's always true.

Virtual functions in C++ which allow some form of dynamic behaviour are slower than static function calls because they inherently involve another level of indirection. Static calls are known at compile time, they can be inlined by the compiler, they can be optimized in the context in which they're called. Now, nothing prevents the C++ run-time from trying to do the same thing at run-time but you can relatively easily see that it'll have to make some other compromised to do so. Nothing prevents a C++ program from generating C++ code at run-time, compiling it, and loading it into the current process as a .so. Now that's a pretty dynamic behaviour but there's again an obvious price. You can also write self modifying code. At any rate, static languages are capable of the same dynamic behaviour that dynamic languages are capable of but you often have to implement that behaviour yourself (or embed an interpreter...).

Fundamentally, a dynamic language can't make the kinds of assumptions a more static language can make, it can try and determine things at run-time (ala JIT) but those take time and still have to adapt to the dynamics of the language. The same line of code "a = b + c" in Python can mean something completely different every time it's executed so the run-time has to figure out what the types are an invoke the right code. Now the real problem is that if you take advantage of that then no one can actually tell what this code is doing and it is utterly unmaintainable.

To compound the problems facing dynamic languages is the fact that CPUs are optimized for executing "predictable" code. When your language is dynamic there are more dependencies in the instruction sequence and things like branch prediction may become more difficult. It also doesn't help that some of the dynamic languages we're discussing have poor locality in memory (that's an orthogonal issue though, you could give a dynamic language much better control over memory).

EDIT: One would think it should be possible to design a language which has both dynamic and static features where if you restrict yourself to the static portion runs just as fast as any other statically compiled language and still allows to switch to more dynamic concepts and pay the price when you do that.

<comment><USER31> It's not always true in practice. See for instance: [http://benchmarksgame.alioth.debian.org/u64q/benchmark.php?t...](http://benchmarksgame.alioth.debian.org/u64q/benchmark.php?test=all&lang=fsharp&lang2=sbcl&data=u64q)

Common List on SBCL is often faster than F# on Mono, eve though Mono is statically typed, as the former runtime has had a lot more work put into optimising it.

Or, compare F# on Mono with Clojure on the OpenJDK: [http://benchmarksgame.alioth.debian.org/u64q/benchmark.php?t...](http://benchmarksgame.alioth.debian.org/u64q/benchmark.php?test=all&lang=fsharp&lang2=clojure&data=u64q)

Clojure again is faster, due to a more optimised runtime.

<comment><USER32> Notably, tho, Both SBCL and Clojure have optional types. So the number of indirections necessary is already substantially reduced, as per the GP. For this to be the case in practice, tho, requires that type annotations actually be commonly used in both lisps.

A more interesting counter example would be LuaJIT, since it has to support completely dynamic code with a fair bit of monkey patching going on. But that is more of a showcase for tracing JITs being fairly powerful (for hard to predict code bases) than that indirections are cheap.

<comment><USER31> That's a good point. SBCL at least attempts type inference though, so I often find the code is quite fast without annotations. But then I suppose SBCL with type inference is probably closer to a statically typed language in that sense.

</comment></comment></comment></comment></comment><comment><USER33> Jake's blog is pretty great. I really suggest reading more stuff in there if you care about scientific computing.

</comment><comment><USER34> Related: "Python is only slow if you use it wrong" [http://apenwarr.ca/diary/2011-10-pycodeconf- apenwarr.pdf](http://apenwarr.ca/diary/2011-10-pycodeconf-apenwarr.pdf) [pdf]

</comment><comment><USER35> The 'slow' part wasn't so new to me, but the `id` command and the attendant understanding that smply typing 110 in the interpreter creates an OBJECT and when you assign a=110 `a` points at that object (and when you reassign a=30, a new object is created and a points at that), blew my mind. Thanks for this!

Previously I had thought that doing a=110 creates an object 'a' that stores the value 110 (and when we do b=a, b simply points to a). I had no idea there is a third object in play.

<comment><USER36> That's pretty central to any OO language. "Everything's an object." Veering away from that, only serves to turn the language into a mess of boxing and unboxing.

That's not to say that OO is necessarily the ideal language paradigm, but it has certainly been the most dominant in the era Python has existed.

<comment><USER37> OO languages do not have to do this. Ruby doesn't, for instance (that is, it turns the language into a "mess of boxing and unboxing", but that's invisible to the programmer and makes working with integers so much more efficient). There's simply no reason to allocate integers on the heap -- it's a bad design desicion.

<comment><USER38> How does Ruby know that 'a' is an integer and not any other type? Java and C# can use the variable types to track this, but I don't see how would a dynamic language work without tagging the value.

<comment><USER2> My understanding from 5 years ago is that in MRI the leading bit is reserved to indicate whether something is an integer. This of course reduces the size of numbers that fit into a machine word but it seems like a pretty good tradeoff.

<comment><USER38> Yeah, apparently they're called tagged pointers. _The More You Know_.

EDIT: And here's Guido explaining why he didn't want that in Python: [https://mail.python.org/pipermail/python- dev/2004-July/04614...](https://mail.python.org/pipermail/python- dev/2004-July/046147.html)

</comment></comment></comment></comment></comment></comment><comment><USER39>
      > binary_add<int, int>(a, b)

no... there is simply not function call overhead for adding two integers in C.

<comment><USER40> It's just notation, to make it clear that two integers (and not some other type of object) are being added.

<comment><USER39> It's just not good notation at all, though. It strongly implies "call". And "object". This is misleading.

</comment></comment></comment><comment><USER41> This is hardly breakthru stuff.

<comment><USER42> True. It also never claims to be.

The very first part says that this is only a writeup for people who are not intimately familiar with why "dynamically typed" might slow down Python.

<comment><USER43> Based off my own experience, dynamic typing has much less to do with slowness than the plethora of string copying which occurs in your typical python script.

<comment><USER44> but for scientific computing with numbers - the author's target audience - dynamic typing is the main bottleneck.

<comment><USER45> Boxing and memory locality are the the main bottlenecks in scientific computations with Python, dynamic typing is orthogonal.

<comment><USER46> If a language is dynamically typed, it is very likely that it will use boxing, so they do not seem orthogonal to me.</comment></comment></comment></comment></comment></comment>


Ask HN: What to ask before joining as 2nd hire in early stage startup? - <AUTHOR> I've worked with startups before, but that was already established 10 engineer shop. I've spent some time working with large 1000 dev unicorns, which later I found isn't my taste. I'm considering moving back to startups.
Primarily I'm focusing on founders, their style of work, their vision and if I'd like to work with them around. If both parties are happy at the end, I'll be their second hire. I'm 5+ years exp engineer (if that matters).
I'm at lack of non-tech questions. So far, I've asked about how their daily routine looks like, how's week-over-week growth and I also found this post recently and will ask some of them the next time we meet https://hharnisc.github.io/2018/11/25/twenty-questions-to-ask-before-joining-a-startup.html
Are there any other behavioral/non-tech things I could ask? Or any other tip? <comment><USER2> On top of other obvious things to be concerned about, I'd want to figure out how they think, how they deal with communication, and how they deal with disagreement, if you have different opinions, how they react and how the conversation develops.

</comment><comment><USER3> I listed a few things on this other HN thread from a while back: [https://news.ycombinator.com/item?id=19048108](https://news.ycombinator.com/item?id=19048108)</comment>


Integrating Django with Tornado's web server - <AUTHOR> http://groups.google.com/group/django-developers/browse_thread/thread/8d1b7f514ef4e88e?hl=en <comment><USER2> For what it's worth, here is a (bleeding edge) way to run Django with Twisted: [http://clemesha.org/blog/2009/apr/23/Django-on-Twisted- using...](http://clemesha.org/blog/2009/apr/23/Django-on-Twisted-using-latest- twisted-web-wsgi). Full working example code is linked from the article.

With this you get the benefit of being self-contained and you get Django with all it's joys plus Twisted for your long-polling, etc.

</comment><comment><USER3> FYI, the instructions referenced in this message with Django/Tornado getting started code is at [http://groups.google.com/group/django- users/browse_thread/th...](http://groups.google.com/group/django- users/browse_thread/thread/de314eb9854695b9)

</comment><comment><USER4> What is the virtue of running a Django application on Tornado over Apache or lighttpd?

<comment><USER3> It may actually be faster, but I am still getting the load test environment set up. I will post the load tests here or on my blog when I run tests.

Mainly, I wanted to make sure Tornado integrates with existing frameworks so that more people can play with it, and the separable parts are useful to people who don't want to use the whole Tornado stack.

<comment><USER5> Running this (for me) has a lot, _a lot_ of advantages over using apache. Not the least of which is it's microscopic compared to Apache. I'll be very interested in this; and might take the django bit for a spin this week. Thank you.</comment></comment></comment>


Practical Tips on Starting Your Own Company - <AUTHOR> http://blogs.hbr.org/cs/2010/08/fifteen_hyper-practical_tips_o.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+harvardbusiness+(HBR.org) <comment><USER2> We need more posts like this. The nuts and bolts of bootstrapping. Too many articles talking about what to do at step 43, need more about steps 2-5.

Speaking of, has anybody had success with rather than dumping the 9-5 and jumping straight into your startup, tried going contractor for a while and use the down time to work on the start-up?

<comment><USER3> Yes, me. Been doing it for a couple of months, although I started contracting 3 months ago.

Key points:

1\. It's hard. Get a calendar and worship it.

2\. It works only if:

A. Your contracting is earning enough to pay the bills. Otherwise you'll be stressed beyond belief (because you'll be failing at 2 things simultaneously).

B. You force non-contract time to do startup. Doing it on the side/evenings/weekends doesn't work. I average 3-4 days a week contracting and working on startup a bit daily with guaranteed 2-3 full days a week. Yes it eats into the weekend, but you'll be 100% ok with that!

Happy to talk more if you want by email. Drop me a line.

</comment></comment><comment><USER4> Overall - not bad, however I'd have to say that "Print your long emails" is pretty old-man-ish for such a list. Also, the part about "pick a time of day to work" should probably just be changed to religiously manage progress on set goals - hours are even a little retro in many businesses.

</comment><comment><USER5> This is a great example article with short, concise points that are practical and EVERY startup can use.

For his point 8, I would suggest getting the best chair possible since you'll be spending 10+ hours a day in it. If possible get something ergonomically like the Herman-Miller Embody. It may seem expensive, but if you divide by the hours you're going to spend in it you're actually getting a deal.

<comment><USER6> This can't be emphasized enough. Herman Miller chairs were made fun of during the dotcom boom as an example of lavish spending, and it was totally unfair. Those chairs come with 10 year warranties, so they're still around today. $1000 might seem like a lot for a chair, but not when compared to how much we spend on computer hardware.

<comment><USER7> Exactly. About 95% of the DotComs who bought Aeron chairs are gone. But probably 95% of the Aeron chairs they bought are still in use, somewhere, by somebody. Something to think about when deciding what's a wise thing for a business to spend money on. Spend money on assets or things that last a long time and have decent resell value.

<comment><USER8> I had one of those, many years ago, and honestly it wasn't the most comfortable chair I've ever had. It didn't support my back quite right. I think my favorite was some bomb-proof thing I bought off a guy shutting down his welding business in Mountain View. It weighed a ton, but was quite comfortable.

</comment></comment></comment></comment><comment><USER9> I'm assuming this article is aimed at more traditional, brick-and-mortar businesses. I'm starting a new online venture this week ... here's my thoughts on:

1\. Not a fan. Quickbooks (IMO) is for painting contractors and coffee shops. I'm digging InDinero so far–I have linked to our chase account and it looks to be a good product.

2\. I did a California LLC

3\. Why even get a cc? Why not just a debit card on your business checking account? I did this and it still earns rewards so I see no value in a cc.

4\. Hiring is not part of starting a business. It's part of growing a valid, established one.

5\. Not familiar with this, but I can get one here for $9: <http://venturehacks.com/articles/cap-table>

6\. Don't have a printer in my office. GMail -> Instapaper

7\. This seems to be pertinent to people in financial industries: <http://en.wikipedia.org/wiki/Errors_and_omissions_insurance>

That's all I got for now ...

</comment><comment><USER10> Not crazy about having "Fifteen Amazing Tips" lists on HN, but this one did make me smile:

> Never ask for an NDA from third parties, except a) actual employees, b) > contractors, or c) key business partners. Don't ask for an NDA from friends, > potential employees, or potential investors. If you do, they'll say no, and > they'll know you're amateur hour.

<comment><USER11> Could someone explain or expand on that particular point, for those of us who are just plain inexperienced or ignorant?

</comment></comment><comment><USER12> "Pick a company name based on URL availability."

What does everyone think of this? I cringe every time I see another company name ending in '.ly', and I think names chosen by URL availability often sound cheap rather than clever.

I'd rather go for a name I like and pick a domain of the form <name><verb>.com, but will that be bad for business?

<comment><USER13> I think you're agreeing with the point, with the caveat that not all domain names are created equal. I too am not a fan of TLD hacking - I figure if you can't get the .com then there are other domains out there.

I'm also a fan of the two-short-easy-to-spell-when-heard-words domain names. My startup, for instance, is GeekStack.

</comment></comment><comment><USER14> _Before you hire your first person, decide when your company's "day" starts (i.e. what time you are going to open the office each day). Stick to the time and expect your first colleagues to join you. It's a tone-setting decision that's hard to change later._

Ugh. The Asses In Seats syndrome. This article is old, I hope.

</comment><comment><USER15> One Tip on Starting Your Own Company:

Satisfy a customer.

All the rest are details, "hyper-practical" details maybe, but details nonetheless.

<comment><USER16> As they say, the devil is in the details.

<comment><USER17> Maybe; but if you have a customer then a business can usually be pretty shoddy and still turn something of a profit

</comment></comment></comment><comment><USER18> It was also submitted 6 minutes later, but without all the feedburner, etc, crap in the URL:

<http://news.ycombinator.com/item?id=1612318>

</comment><comment><USER19> I know it might not be totally related but I often see that and I was wondering if anyone could explain it to me:

(quote You will become a better interviewer fast, learn more about the right requirements for the job, understand the candidate pool, and learn how to sell the role to the best candidate well before you meet (emphasis her.))

Why is "her" used there?

<comment><USER20> Because in English (at least speaking formally) there is no singular gender- neutral pronoun that can be used to describe people. Many people (including me) incorrectly use "they", which is actually a plural. "Her" was used in place of "his" more in the interests of political correctness than anything else. Some authors will switch genders between examples, some will use "his or hers" (which seems overly formal to me), and some just use "they".

I'm of the opinion that English will evolve over the next few decades to include "they" as a formally recognized singular pronoun. Languages exist to serve the culture they're a part of, not the other way around - and many (most?) of us are already using "they" incorrectly.

More information available at Wikipedia: [http://en.wikipedia.org/wiki/Gender- neutral_pronoun#Modern_E...](http://en.wikipedia.org/wiki/Gender- neutral_pronoun#Modern_English)

</comment></comment><comment><USER21> Not a bad little article, but "Get good t-shirts"? Methinks 15 tips sounded better than 14.

</comment><comment><USER22> I read the title as "hyper-spatial" and was all excited, only to be disappointed. Apparently obsessively reading the Doc Smith Lensman series recently is taking a toll.

<http://en.wikipedia.org/wiki/Lensman_series>

</comment><comment><USER23> hyper-practical? What the does that even mean?

<comment><USER24> <http://en.wiktionary.org/wiki/hyper->

It's a prefix, to denote an unusually high amount of something. I'm guessing the reason why he wrote the article in the first place was because he wanted to share start-up tips that had an unusually high practicality. Thus, he's signifying the significance of these tips with that phrase.

<comment><USER23> still doesn't make sense.

And I'm going to stop here because my original comment isn't grammatical since I removed the word "fuck" from it.

</comment></comment></comment><comment><USER7> buy E&O insurance? that sounds like a later stage tip, if at all. felt so out of place it almost smells like front-running. screw that, just find paying customers, tune and scale up.

even rent is not something you have to think about when starting a company. use homes (that everyone should have anyway), garages, sheds, Starbucks, libraries and bookstores to start.

<comment><USER25> > use homes (that everyone should have anyway)

I agree with your overall sentiment, but this part... I'd disagree with. Home ownership is not for everybody.

<comment><USER7> Replace with "the place where you sleep at night" for the general case, in the developed world. (Roof, kitchen, livingroom, bedroom, etc.) Possibly shared with family. The point is, even if you don't own a business, you're going to want a place to live, and you'll have to pay for that _anyway_ so, assuming no other complicating factors, it seems like a smart idea to also consider using that space to work on your new business. Home != house != ownership. Home is where you sleep on a regular basis, where you store your stuff, etc.

<comment><USER25> Sorry, I was being dumb. I thought you meant 'buying a house is better than renting,' not "don't get an office, your house is fine."</comment></comment></comment></comment>


Ask: How to postpone Gmail message sending? - <AUTHOR>

I remember reading on here about a plugin/app that worked with Gmail and allowed you to postpone sending messages until an allocated time.  I was wondering if anybody remembers what it was or knows how to do it? <comment><USER2> Boomerang for Gmail (<http://www.baydin.com/boomerang4gmail/> \- currently in beta) works great for this. It's the only tool I'm aware of that lets you send messages at a certain time.

See this review for more info: [http://www.howtogeek.com/howto/26143/send-or- receive-emails-...](http://www.howtogeek.com/howto/26143/send-or-receive- emails-in-gmail-on-your-schedule-with-boomerang-and-we-have-invites/)

</comment><comment><USER3> The closest thing I'm aware is us Undo Send in Google Labs.

</comment><comment><USER4> Etacts and Rapportive are the two gmail plugins that have been in the news lately, but I don't think either one allows scheduled sending.</comment>


Value over replacement player - <AUTHOR> http://en.wikipedia.org/wiki/Value_over_replacement_player

<comment><AUTHOR> The ESPN piece by Rob Neyer, linked at the bottom, details some context: [http://sports.espn.go.com/mlb/hotstove06/columns/story?colum...](http://sports.espn.go.com/mlb/hotstove06/columns/story?columnist=neyer_rob&id=2751842)

I find it interesting that new metrics still pop up for something over a century old ...</comment>


When Your Boss Controls Your Bladder - <AUTHOR> http://theweek.com/articles/611585/when-boss-controls-bladder <comment><USER2> maybe the lack of bathrooms in the Amazon HQ were intentional afterall :p</comment>


Playstation2 java - <AUTHOR> http://www.mikekohn.net/micro/playstation2_java.php <comment><USER2> Does that mean it can run the old version of Minecraft on PS2?</comment>


I'm Bill Gates. AMA about Covid-19 - <AUTHOR> https://www.reddit.com/r/Coronavirus/comments/fksnbf/im_bill_gates_cochair_of_the_bill_melinda_gates/ <comment><USER2> Excuse a bit of hyperbole, but what sort of medieval nightmare-world are we living in when the citizens of the world's most revered democracy are waiting with bated breath for the pronouncements of the wealthy on fighting a viral pandemic?

Gates Foundation, research, etc etc. I get it. He's been involved with health stuff for a while. In theory, too, I'm open to a good idea regardless of its source. But this remains a guy who dollars to doughnuts I'd bet does not know how much milk costs at his supermarket. And he's telling us about chipping and digital tattoos?

It'd be legit pretty hilarious if it weren't so insane.

<comment><USER3> Bill called this years ago. He's also incidentally done more to save lives from disease than possibly any other living human, having prevented millions of deaths by malaria and other illnesses purely because he wanted to.

There is lots of other information out there from doctors and scientists. We needed that and we got that. The point here is to get Bill's unique and valuable high-level perspective.

Nobody is 'waiting with bated breath for the pronouncements of the wealthy'; this is ridiculous and I think you'll know it if you read it back with even the slightest attempt to look at the situation neutrally.

<comment><USER2> If he's so prescient about pandemics, why didn't he spend the last 20 years, I don't know, making sure healthcare workers in his own darned city had enough masks and gloves to deal with one? Surely he could've saved a few lives in his own backyard while we was busy in Africa, right?

<comment><USER4> This isn't how effective altruism works.

<comment><USER5> Maybe it should be.

Think about it this way: had he done this, would it have made things better, worse, or no change?

And don't forget: had he looked into this, he would have realized that they were dramatically unprepared, and I suspect he would have been smart enough to assume that there was a possibility that the same state of affairs may exist in other cities, and then look into that.

Did this thought not cross his mind? It seems like an interesting question.

</comment></comment></comment></comment></comment><comment><USER6> This is a total privacy nightmare. It is so sad that billionaires won't use their wealth for good especially at this pandemic.

This can also go much worse than privacy concerns:

Year 2040: Now chips contain remote activated doses of poison, if you don't have good social credit or you are at the age of retirement(40) they can remote activate it and kill you.

<comment><USER7> Much more likely scenario is every vehicle runs on closed source software controlled by state government which can halt the movement of the citizen at will based on social credit or any some thing like that.

</comment></comment><comment><USER8> This is going to make people who are concerned that there is a global oligarch overlord driven secret plan to dose up the world with vax disguised drugs and chip them for compliance extremely concerned. I'm surprised Gates who 'can't give his money away fast enough for it to not keep growing' has not injected a significant amount of his massive wealth into the wold economy at this critical time. Any of the measures he discusses will need very strong accountability, transparency and data access political control by the people to assuage concerns about fascism.

<comment><USER9> How about these rich guys just open a domestic mask factory or two? I think I'd like to see that as an ante in the "Here is how you should all live going forward" game.

<comment><USER10> Because it takes months to open a mask factory.

<comment><USER9> Ah, well, that explains it. Mask technology is extremely advanced, after all.

And how long does it take to produce a safe, well tested vaccine that we are supposed to give to our kids?

<comment><USER11> _> And how long does it take to produce a safe, well tested vaccine that we are supposed to give to our kids?_

Didn't we cover this in SARS-COV-1 and Ebola outbreak 1 and Ebola outbreak 2 and Ebola outbreak 3? It takes a while. Generally months. When one of these shows up, you'll hear some news about an expiremental vaccine and someone volunteering to get it, but it normally takes quite a while- _-months-_ to get all the stuff in place to actually get it to your kids.

Betting on a vaccine swooping in to save isn't smart.

<comment><USER12> There is apparently one trial beginning now: [https://www.npr.org/2020/03/21/818759617/i-wanted-to-do- some...](https://www.npr.org/2020/03/21/818759617/i-wanted-to-do-something- says-mother-of-2-who-is-first-to-test-coronavirus-vacci)

Per current rules, there's 14 months of monitoring involved before it is considered safe.

</comment></comment></comment></comment></comment></comment><comment><USER13> This AMA is weird. Bill Gates mentions chipping everyone for vaccine purposes. This is at best, extremely inefficient and insecure and open to fraud (I get a chip, and now I can be someone else?). Additionally inserting a chip is traumatic. People don't like the idea of having an electronic microchip embedded in their bodies. Immune systems tend to reject that and bacterial/yeast biofilms tend to grow on implants causing inflammation.

It's already been proven that biometrics are the gold standard for identification. You can't swap in someone else biometrics and fraudulently walk around as someone else. And you simply connect these biometrics to a cloud registry and go from there. Why wouldn't we just go with what works?

And if you don't consent, do you get locked out of the economy? Or do we hold you down and force inject you with a chip?

This implant doesn't make ANY sense and will systematize ID counterfeiting. Shame on Bill Gates. This should be laughed out of the room and then scolded as a human rights violation.

<comment><USER14> I believe context is needed, so here is Bill Gates:

"Eventually we will have some digital certificates to show who has recovered or been tested recently or when we have a vaccine who has received it."

Either that means a biometrics being signed by 3rd parties or a chip being signed by 3rd parties. At best there are major privacy concerns.

But things get weird elsewhere when you have developers talking about "anonymously" tracking people for purposes of identifying contacts. Just because you swap IDs with something random doesn't make it anonymous or safe.

"Shit like this is why im a developer." \- we have plenty of talent and a plethora of bad ideas

</comment></comment><comment><USER15> At a time when there are so many rumors and wrong information, why is he adding more confusion? he's involved in the efforts, but please let space for doctors and scientists to talk about that subject, we need science to be at the frontline, or people will also be tempted to listen to some crazy Elon Musk or Adam Neumann too...

</comment><comment><USER16> He mentions he's in favor of the MIT created digital tattoo to show when people are vaccinated. I'm not thrilled with the idea of being marked like cattle.

<comment><USER17> If only we had a system for 'fingerprinting' individuals, and digitizing the results into a searchable 'database'

<comment><USER18> I know! We should use a Blockchain right?

/s obviously. Although probably less ridiculous than other uses.

</comment></comment></comment><comment><USER19> Billionaires don't give enough! _argh_

</comment><comment><USER20> Why would I ask Bill gates about a virus?

<comment><USER21> Because he's quite knowledgeable on the subject matter of pandemics.

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

</comment></comment><comment><USER22> Like it or not, BG is among the few public figures who currently hold any authority/insight on this situation. Watch his TED Talk from 2015. Look at his Foundation's activity.

See Event 201 from 6 months ago: "The Johns Hopkins Center for Health Security in partnership with the World Economic Forum and the Bill and Melinda Gates Foundation hosted Event 201, a high-level pandemic exercise on October 18, 2019, in New York, NY. The exercise illustrated areas where public/private partnerships will be necessary during the response to a severe pandemic in order to diminish large-scale economic and societal consequences." ([http://www.centerforhealthsecurity.org/event201/](http://www.centerforhealthsecurity.org/event201/))

So basically as recently as last year he was simulating/preparing for the chaos we are experiencing now: "Event 201 simulates an outbreak of a novel zoonotic coronavirus transmitted from bats to pigs to people that eventually becomes efficiently transmissible from person to person, leading to a severe pandemic. The pathogen and the disease it causes are modeled largely on SARS, but it is more transmissible in the community setting by people with mild symptoms. ... There is no possibility of a vaccine being available in the first year. There is a fictional antiviral drug that can help the sick but not significantly limit spread of the disease. ... Since the whole human population is susceptible, during the initial months of the pandemic, the cumulative number of cases increases exponentially, doubling every week. And as the cases and deaths accumulate, the economic and societal consequences become increasingly severe." ([http://www.centerforhealthsecurity.org/event201/scenario.htm...](http://www.centerforhealthsecurity.org/event201/scenario.html))

This sounds somewhat similar to what we're experiencing now, and it was Bill Gates who possessed the foresight to see this before anyone else. If anyone knows what's going on and what will happen in the coming future, it's him. Know when to follow. You can question his motives and intentions, but you must recognize his superior knowledge and preparedness.

<comment><USER5> I believe your analysis may be somewhat imperfect, I will endeavor to explain my reasoning. If you see flaws in my reasoning, I encourage you to point them out to me so I may sharpen my own logical tools.

The way I see it, what you have presented is a narrative. It could be 100% correct, it could be 100% incorrect, and it could be somewhere in between.

For the purposes of this exercise, let's assume it is true, or _true enough_.

Once a person holds a narrative such as this in their mind, it subsequently facilitates the ability to make a broad range of very precise _predictions_ , both of the future, and the unknown in general. But don't forget: your mind is producing _predictions_ , but sometimes these predictions have the nasty side effect of not being distinguishable from facts. Fields like psychology, neurology, etc have done significant work studying the particulars of this odd behavior.

Now, let's take an example of some predictions and think more rigorously:

"If anyone knows what's going on and what will happen in the coming future, it's him. Know when to follow. You can question his motives and intentions, but you must recognize his superior knowledge and preparedness."

I will clarify this a bit (please let me know if I've done this in a manner not to your liking):

\- Bill Gates has a demonstrated track record of exceptional skill in the domain of pandemics.

\- An event has occurred related to the domain of pandemics.

\- Therefore, it logically follows that Bill Gates is _the_ person who knows what's going on regarding this event.

\- Therefore, it logically follows that Bill Gates plans should be followed, in their entirety.

Disclaimer: Yes, I do realize that I have taken the most uncharitable interpretation of your words possible, _but that is my very point_. I believe that if one desires to know the truth, uncharitable deconstruction of beliefs into discrete binary statements is the most valuable tool that humans have at our disposal. But rather than wield this impressive power in making the world a better place, it seems like instead people prefer to use it to engage in ideological arguments. Fiddling while Rome burns as they say.

And yes, I too see many obvious criticisms/shortcomings of this approach (thinking about reality in a highly skilled manner is a bit complicated, go figure) - again, I present this as just one piece of an overall larger puzzle that humanity should realize is sitting right in front of us, and has been for generations. It's waiting to be solved, but first you have to acknowledge its existence.

And finally, to be fair, you did note: "You can question his motives and intentions, but you must recognize his superior knowledge and preparedness". So, please think of this not as a criticism of you personally, but rather as an illustration of a larger generic principle.

<comment><USER22> Thank you for your response and noble (if socially naive) pursuit of truth / honesty.

To be honest (in return), the main intent of my post above is to inform critical readers about the mentioned pandemic simulation that was carried out in October of 2019, and allow them to consider for themselves what that implies. Just informing / expanding the conversation. What people think about BG is irrelevant to me, I just saw that it was the topic being discussed here. :) *edit: also I deliberately took the extreme stance/tone (TRUST BILL) because it seems obviously absurd and contradicts bigger picture critical thinking. Speculative tone (which would've been more honest) is always rejected as weak. So I say "Trust Bill, because x," when I actually want to say, "are you aware of x?" By taking a stance I'm being dishonest and inflammatory but generating discussion / thought and hopefully avoiding censorship and outright dismissal due to existing biases. Sole intention is to expand the overton, generate thought / discussion / awareness of fact. No one else in these comments brought up E201 and many likely haven't heard of it, but it is worthy of consideration and some may find it interesting!

<comment><USER5> > Thank you for your response and noble (if socially naive) pursuit of truth / > honesty.

Technically, it only appears to be naivete. I am _extremely_ cognizant of the fact that people don't think using logic or facts, or care _comprehensively_ about what is actually true.

> By taking a stance I'm being dishonest and inflammatory but generating > discussion / thought and hopefully avoiding censorship and outright > dismissal due to existing biases. Sole intention is to expand the overton, > generate thought / discussion / awareness of fact. No one else in these > comments brought up E201 and many likely haven't heard of it, but it is > worthy of consideration and some may find it interesting!

Kudos for your efforts, the more the better.</comment></comment></comment></comment>


Facebook is Building a Search Engine - <AUTHOR> http://mashable.com/2012/03/30/facebook-social-search-engine/

<comment><USER2> I hope it works better than people search. If they're not in your friends list already, good luck.</comment>