skysight-inc/HackerNews huggingface dataset:
I would like it if the `where` tests supported DataTables for a slightly more declarative style. Here's an example from Scala/Specs2: https://github.com/snowplow/snowplow/blob/master/3-enrich/ha...
Suggesting that python will soon enough become the new perl is high praise indeed. Perl runs a good portion of the internet, and is (and will likely for the next half century) be a very, very popular language.

It's definitely the case that python was shoehorned into some places where it probably wasn't the best fit, but, at the time (1999-2001) was really the high-level dynamic language that had a lot of mindshare. A lot (almost all?) of companies that tried to use Zope as their application server back then would probably be looking at Java as their deployment platform today.

Python sits in that nice "batteries included, easy to read, reasonably fast to write" space. I tend to write most of my scripts in Python, because a week later, I could never understand the perl code I wrote, but, for some reason, python code never had that problem for me.

I don't expect too many people are writing quick "one-off" scripts in Go (I'd be interested to be proven wrong though), so perl/python/awk/bash all still have a place in people's toolkit.
At Zapier, we jumped through a lot of extra hoops to make sure that emails are categorized and you can easily opt-out with a single click (no matter if you are logged in or not). Some emails cannot be opted out of (the only two right now are payment transactions and forgotten/reset password) but everything else can be.

We have a lot of other cool stuff in emails like single click logins, viewing pixels with custom payloads, our open source drip campaign mailer for Django, and much more. If there is any interest, I'd be happy to go into deeper detail.
Aha, I was wondering how the cops and courts were going to keep up all that revenue they used to get from pot busts. Piss test roadblocks for everybody!
I don't understand hash tags and I don't understand why someone would want them on a shirt. Is this best understood by immersing myself in the twitter culture? I don't get it from the outside. The main place I see hash tags is where networks will display them with a TV show. Aside from that, I don't understand how people come up with them and how they are used other than searching and linking?

For example, #SalmonCat (a TV shirt on the home page) apparently refers to some tv show called Sam and Cat? Googling that reveals it's the 17th episode that aired today. If I loved the show enough, would I go buy a shirt with the hash tag on it? http://hashtagtee.me/products/salmoncat-shirt

I am admittedly not one of the 230 million+ twitter users.
The underside of a Tesla is quite a bit more sturdy than your oil or transmission pans. A piece of debris able to do this would do something far more serious than cause a dent or leak.
I always find if I need to loop a list there is a good chance the index can help

You may always find this, but lots of people don't. I find myself doing lots of iteration that doesn't need the index.

and even if I don't need it it doesn't hurt to have one either

Yes it does, because you're adding extra code to compute the index to every iteration, whether it's needed or not. It's not a good idea to encumber such a basic language construct with any extra baggage; that's why the extra baggage is in "enumerate", so you only get it if you actually need it.
Whoever downvoted me have some weird negativity here.

It doesn't against ethos of Python. There is a Zens of Python, I don't know Ethos of Python.
http://www.python.org/dev/peps/pep-0020/

Beautiful is better than ugly. Writing .items() or surrounding enumerate() does not make your code look prettier, does it?

Explicit is better than implicit. In fact, my proposal is more explicit than the implicit of for key in my_dict or for item in my list. I think returning both key,value are more explicit than say remembering the default return value in looping a dict is a key, not value, or relying on remembering enumerate or items.

It is simpler to write such code, and if you just need one of the return values, just that one, they are named.

You want a use case. I will give you one: find the location of a specific item in the list. and if you use django, you know your template engine can read your psudeo python template code. And you often need that index.
All this weaponization of the words "political correctness" is quite obviously a nervous white phenomenon, a defense mechanism -- for example, do we talk about the banning of the ethnic studies program and Latino/Latina social studies books in Arizona as "political correctness gone awry"? [1] No, but that's obviously what it is: latin@ teachers exposing latin@ high school students to material [2] that offends white people. If anyone but white people are offended they're "just being PC"; if white people are offended, they get to be "victims of reverse racism"; same for gender of course.

As a colleague of mine put it: "Political correctness, as a concept, is a figment of right wingers, that usually accompanies ideas like agenda, or guilt. I think what we're referring to when speaking of sensitivity is something other than the typical "PC" concept. Inclusivity, and thoughtfulness are nearly unarguably good things.

I think most reactionaries, and lesser angry white guys typically dislike the increased sensitivity that goes along with this more inclusive attitude America has today. No one has a right not to be offended. No one should expect civil treatment 100% of the time; people aren't that thoughtful. Further, there's no responsibility to not harm or injure another's sense of well being through speech.

I'm free to be a racist ignoramus, and alienate anyone I choose to talk to in public, and it's a good thing. It's also a good thing that I will have to face consequences for socially unacceptable behavior. I'm mostly tired of trite apologies from people that lacked the backbone to stand behind their speech, for instance, Tracy Morgan, who repented quickly about his anti-gay stand up. I wish people had the foresight to realize the consequences, and if they decide to say something, they should have enough will to counter criticism as a valid personal opinion, which all types of heinous stuff are. It's heinousness is not the same as lacking in credibility, or serious intent."

FIRE is an explicitly right-wing org whose purpose is to deliberately conflate violation of free-speech rights (which only the government can do) with criticism and banning of certain kinds of speech by non-government people and institutions from their forums and spaces, when it is not illegal to do so. It's a bit like the ADF, whose purpose is to conflate criticism of Zionism with anti-Semitism... it also reminds me of people who complain about CPS, but that's just me

[1] http://saveethnicstudies.org/

[2] http://azethnicstudies.com/banned-books
Scala is a great language with a rich excursion into type system design (and other things). Pyret is designed to reinforce specification (more general than types) and to do so through a combination of static and dynamic means. That much I've already said.

Let me point to testing as an example of where we differ. Testing is really important to us. As you've seen, we have lightweight, in-place test cases. In addition:

1. We have a growing family of language support for writing tests well (e.g., see "satisfies" on the Pyret home page). I expect this to grow richer and richer.

2. We are working on some interesting ideas about the scope of testing blocks. We don't say this on the home page, but you can also write "test" blocks for data definitions, not only for functions. But now the functions that operate over those data are going to want to use instances of the data. We're working on a "scope conduit" to take definitions from the data definition to its functions.

3. As some readers have noted, in most languages, you simply cannot write unit tests for a function nested inside another, because you can't even name it. In Pyret, because definitions can include tests, this creates no problem at all.

4. We are now working on a type-inference approach that uses tests, rather than code, to infer types. The code is then checked against these inferred types.

Essentially, testing is a kind of metaprogramming, and metaprogramming works best when you integrate it into the language (what Racket has shown) rather than as ad hoc external tools. Each of the above four examples is really just a specific instance of this general issue. Since testing is an especially important form of (dynamic) metaprogramming, integrating it well into the language from the very beginning is likely to lead to expressiveness, flexibility, and cleanliness that may be harder to achieve from the outside.

This is part of a more general philosophy. To me, testing is a form of _specification_, and we want to see rich descriptions of program invariants expressed with a gentle blending of static and dynamic methods. We don't want to be so grandiose as to call Pyret a "testing-oriented" programming language, but in our minds it is, with testing having both the base role of making sure we (as programmers) didn't screw up but also the exalted role of providing an alternate, independent description of the program we're trying to write. (This is something I emphasize a lot in my teaching: eg, http://cs.brown.edu/courses/cs019/2012/assignments/sortacle, http://cs.brown.edu/courses/cs019/2012/assignments/oracle).

This is a philosophical position, and so hard to quantify through individual bits of code, but I already see small influences of this (as above) and I expect it to guide us to a very different point in the design space over time. It feels safe to say this is quite different from Scala's viewpoint.
Android: The Land That Python Forgot
> The only country it is harder to get tourist visas for is probably North Korea.

and Turkmenistan.
Gotta love the story:

A story, that had been told to my brothers, and me since we where small, also helps explains my strong connections to Portugal: In the 1960′s my father, a journalist, was in the Congo covering the war after it’s independence from Belgium. The car he was driving had skidded off the road, and turned over. United Nation’s troops passed him by without stopping, but suddenly out of nowhere a bunch of Portuguese cigarette smugglers appeared. They dragged him out of the car into their car, then sped him across the border, and dropped him of at a hotel…

My rescuers bought me a large South African brandy at the bar, gave 500 Rothmans [cigarettes], checked my wallet to see I had enough cash, then left me, delivered back to my native culture, never to see them again. It was the first time I had met Portuguese knowingly – and my first encounter, not only with their extraordinary reaching-out to a stranger in need, but with their blend of bravado, honour, ingenuity and poise.

Extract from The First Global Village: How Portugal Changed the World, by Martin Page
With all due respect to your work, somehow I never understood the "t-shirt" startup idea. We live in a world where there are many problems to tackle in health, science, government and politics, yet I've seen dozens of attempts at these t-shirt startups.

I do not mean to discredit your work, that being said.
And ``key in dict`` wouldn't work any more

The "in" operator is actually a separate operator; it doesn't depend on the dict iterator implementation. So you could keep the semantics of the two separate.

However, if the dict iterator semantics were changed, it would make sense to change the semantics of "in" as well--and since it doesn't really make sense to change the semantics of "in" (if you're asking if something is "in" the dict, you mean the key), that would explain why the dict iterator semantics are the way they are: the dict is a container of keys, not key-value pairs.
my_dict is a dictionary while items() and friends return an iterable. Your proposed change would lead to ambiguity and confusion- what determines how we should iterate (what does it return, when is it done)? How would we define custom iterables?
__ is basically a namespace for official language extensions. How would you suggest they do it? Prevent "next()" from being a valid method name?
> Likewise stuff is called 'Her Majesty's $FOO' for entirely vestigial, historical reasons.

Although the notion of 'On Her Majesty's Secret Service' is indeed vestigial, it still has modern day implications. For instance, the majority of the public sector in the UK (Police, NHS, HRMC, etc) are Civil Servants, except for the British Intelligence Services (BSS, SIS, GCHQ, (what was) SOCA) which are technically Crown Servants. This makes them reportable to the Crown rather than the current government. This may sound like hair-splitting but it allows the intelligence services to avoid the brutal austerity that is being inflicted on most of the civil service; indeed we have had guaranteed pay rises for the last few years.
Absolutely. For instance, if you leave off an argument in a recursive call, Haskell will quietly think you meant to curry the called function, which can manifest itself as a type error in some entirely different place.
is the expected semantics of 'x in y' for sequence types the same as 'any(x == z for z in y)'?

For sequences that aren't strings, yes. :-) Strings are a sort of hybrid between "atomic" values and sequences, so their semantics can be different.
I agree that they should absolutely not be asking for this information. But how can it be a privacy issue when the information is publicly posted?
I'd really like to see the video for these slides. But here's what caught my interest:

Set and dict comprehensions
{x**2 for x in range(10)}
{x: x**2 for x in range(10)}

Why reduce() must die:
... the applicability of reduce() is pretty much limited
to associative operators, and in all other cases it's
better to write out the accumulation loop explicitly.

int [divided by] int should return float

nonlocal

Explicit nonlocal variable modifier which (I guess) "promotes" the variable outside its local scope. Kind of the inverse of Java requiring 'final' to bind a variable to a closure.
I am not a fan of that sequence of languages, and the fact that it seems to keep changing every so often shows that the course(pair) hasn't yet found a canonical, good answer.

However, I don't see any reason why Pyret needs to be the _second_ language. OCaml is brought in to introduce types (amongst other things) because Racket doesn't have them. Pyret eliminates that need.

There are other reasons, too. But this sounds like a debate we should be having in a hallway, not on the Web. (-:
Is there even a good way to test if someone is high in the field like a breathalyzer? I have always been told if you don't admit they can't prove it.
From the About page:

We use the highest quality shirts and deliver them with the most affordable pricing.

Does this imply that the $25 price is the lowest possible point at which the OP can attain reasonable margins? If so, they really need to reevaluate their infrastructure, as $25 for a text-only tee shirt is very, very high, and the OP is likely being ripped off by their suppliers.

Given the price, I have doubts about the willingness of potential customers to purchase shirts of this sort. The precedent for comparable services like Teespring and even for individual shirt vendors seems to be $10 to $20, substantially lower than what the OP is charging.

Other than the pricing, I'm not entirely sure whether hashtags would make suitable shirts. Hashtags tend to be highly ephemeral, and most cease to be relevant within a few days. Most people keep shirts for years, and thus would be likely be wearing these shirts for a period far longer than the life of the hashtag. It's a novel idea, but at the end of the day it's trying to turn what are highly transient cultural artifacts into something permanent.
Thanks for taking the time to reply, it was informative.
To summarize: banks aren't constrained by reserve ratios because they can borrow reserves from other banks or, if total reserves are low, from the central bank whose policy is not to let total reserves get low due to the impact on interbank rates.

Is that correct?

Do you work in finance?
Can you recommend any books on money?
Wow

Much plus
Has anyone ever used this site to get a name for their business? Is it legit?
The Python ecosystem is far too diversified to get knocked down by one language. Python has a wealth of production-quality libraries across a ton of domains (Web, scientific computing, data science, NLP, parsing, scripting/automating, etc). Go is a non-entity in most of these domains and isn't even a top-20 programming language on Github (source: http://sogrady-media.redmonk.com/sogrady/files/2013/07/progr...)

Python went everywhere Perl did and then expanded the map for "scripting languages". This didn't happen by accident: Python is, by design, very easy comprehend and learn. The Python community also one of the most newbie-friendly around, with mountains of freely available resources for beginners.

A programming language cannot be sustained by uber hackers, PLT nerds, and hipsters alone. You gotta make it reach the world (Like JavaScript, Java) or it'll never be"Tier 1" programming language. I have yet to see the Go's developer or community put forth a strategy to make this happen -- which is completely understandable given how new the language is.
The very question gives me an ugh feeling. I try to do right by my friends and family. I try to do no harm to all you random NPCs. I don't try to do anything by my employer, except stay employed for as long as I want to, and do as good a job as satisfies me.
Defamation laws vary from jurisdiction to jurisdiction; the advice your lawyer gave in your situation is not necessarily applicable to all situations. Some jurisdictions have allowed the common law (which itself is particular to jurisdictions and so can evolve in different directions in different places) to govern it, others have legislation, still others have a mix of the two.

In particular, truth is usually a complete defence to defamation, but not always. Sometimes it is only a partial defence and sometimes it is not a defence at all.
Second Ruby example is in place now.
A Fraying of the Public/Private Surveillance Partnership
> Yes, normal combustion engines catch on fire, but they don't explode in a fireball when they hit debris on the highway

And neither did this one, so I'm not sure what your point is.
As a former Catholic, I find that really interesting...
What do you mean by "ugly renames?" How many times in using Python did you have to look at .__next__() or .func_name ?

I have been using Python full time for the last 7 years and I very rarely have to call either of those function.

> Too few alternatives of doing things.

Can you explain that as well? What do you mean by alternatives of doing things? Like say you want to read a file and you might want to use a wider variety of options when opening the file handle or say you want to parse JSON and you'd like standard library to have more parsers available?
Can I get an "amen"
As you wish! We now have two Ruby examples on the home page. You may not call it love. <-:
I almost never use enumerate in python - 90%+ of the time it's the values I'm interested in - an exception might be if I'm trying to print a numbered list - and it's just handy to have the index instead of incrementing a counter. In your scenario, though, to find the location of a specific item in a list:

>>> b=['one','two','three','four','two']
>>> b.count("two")
2
>>> b.index("two")
1
>>> b.index("two",2)
4
> or the NULL-pointer are indeed mood

Just FYI, the word you probably mean is 'moot'.
The product is about the people. You have to demonstrate caring for the people before you can get them to share your views on what makes a better product.

Always remember that everyone disagrees on the details. As the old adage goes: Quot capita tot sensus.
this can already be done.

https://support.google.com/adwords/editor/answer/1211190?hl=...

Note also that most A/B testing networks can be used as defacto Ad Serving/Dynamic content serving because you can target operating systems as well.
How many countries did so earlier?
Wearhaus: listen together wirelessly
$25 for a shirt I could print at Zazzle for less?

No thanks.
Venezuela is officially the 'Bolivarian republic of Venezuela', so Simon Bolivar actually has _two_ countries named after him (the other being Bolivia).
so filth
Yes, login-to-unsubscribe would be much more palatable if it were for things I actually opted in to. If I did not subscribe, then it should be easy to unsubscribe.

I'm looking at you, LinkedIn and Twitter. I've unsubscribed from about three or four waves of your bullshit. No, I don't care about what I might have "missed on Twitter". I didn't subscribe to this, you spamming fucks.
If s-expressions constitute "most" of the benefits of Lisp, that's a pretty sad statement for Lisp. I don't see any other benefits that it gives up.
Rails will Ruby-kill Meteor — on why
If I have to login to unsubscribe, I block the sender and report the emails as spam.
Wow. These ATM operators to read up on anti-money laundering and anti terrorist financing laws. There are laws against what they are doing, and at that volume, Federal regulators are likely to notice and come down hard on these guys.
my proposal is more explicit

One could just as easily say that your proposal is less explicit, because a sequence is a sequence of items, not (index, item) tuples, yet you're making the "for" iteration yield tuples.

Similarly, a dict is a container of keys, not (key, value) pairs. The reason is that otherwise you would be unable to check to see if a key was in the dict unless you knew the value that went with it: but in that case why would you need the dict? (Technically, you could still iterate over the entire dict looking for your key, but that's extremely slow; the whole point of having a dict is to be able to do fast lookups of keys in order to retrieve their values.)

Writing .items() or surrounding enumerate() does not make your code look prettier, does it?

Neither does having to extract just one item from a tuple when I don't need the index. There's no way around the fact that one of the types of iteration (either just items, or index, item tuples) is going to have to be spelled with something extra. So just saying "I shouldn't have to type something extra" isn't a sufficient argument. You need to justify why your preferred type of iteration should be the one with the shorter spelling: and since your preferred type of iteration has extra baggage attached to it, it seems perfectly legitimate to me that it should have the longer spelling, not the shorter one.

find the location of a specific item in the list

That's what the "index" method is for.
Probably because the OP was able to create this in a weekend or less in hopes of generating some passive income. That really doesn't compare to any problem (trivial or otherwise) in the areas you mentioned.
Smartphones Destroying High-End Camera Sales
That has been addressed in some many other ways by several languages that goes from the C++ way where you actually have namespaces to the C way where you don't worry about it and pick another name. From all of them I find this the most odd way to address it, specially when python was supposed to improve legibility by design (at least for me those underscores are very distracting)
Don't forget to add about 10-20% to the prices for exchanging money or using your debit card. I live in Chile right now. Living in Middle America would be much cheaper.
There's no need to make it not be valid. C++ uses begin() and end() for obtaining iterators to containers, but nothing's stopping you from using those method names for your own purposes.

It's just that if you want to use a few new language niceties like range-based for loops then you'll need to conform to that convention.
It seems like I've been reading about the difficulties of Python V2 -> V3 for awhile. Why is that? Is this Python upgrade unusually difficult/ambitious? Or is the Python community just very reluctant to jump on new things?