7,119 karma · joined March 16, 2009
There is a demand for this type of service. Real-time chat is in extremely high demand still. Chat was the number one requested feature a "build-you-own" social network startup I worked at a handful of years ago even before Facebook added their chat.
Line 17 of PEP-20 sums up my thoughts on this code as more than an intellectual exercise.
> If the implementation is hard to explain, it's a bad idea.
Regarding using Python as a replacement for shell scripting: if you have to rewire the language to do what you want, why are you using a different tool for the job?
All that said, this is horribly un-Pythonic. A much better route to so is something like envoy[1] which simply wraps `subprocess` in a sane API.
2) I think being a jerk online and lack of in-person social skills aren't correlated. For whatever reason, when it's a computer screen in front of you, people tend to be more aggressive about their point of view. Unchecked, that can turn into "jerkiness," but I don't think it's a one to one. Don't get me wrong, I know plenty of people who are jerks online and the same offline. I also know plenty of people who are jerks online and the kind of person you hope passes you on the highway when you've got a flat or run out of gas---it's a given they're stopping and helping in any way they can.
3) I'm a little disturbed by the implication that a stunted career is what motivates people to contribute to open-source software, but I assume it wasn't meant quite that way. This illustrates an interesting point. Given that I don't know the context of where your fourth paragraph is coming from, I'm assuming the best and that you didn't mean it as I took it during my first reading.
That type of small misunderstanding could have resulted in me (or someone else) firing off a quick response calling you out on it, or even less hostilely taking issue with it and trying to rebute it. That in turn could have made you feel more defensive, so your next post might have been preemptively aggressive, and so on. This quickly deteriorates into a cycle where we're making each other more aggressive without meaning to and give rise to this mentality.
Subtly is lost online. It's ashamed, but the way it seems to be.
All that said, I do think those who the community looks up to are the ones that set the tone, for sure. I can point to many a project mailing list that have been rendered useless because some of the biggest (or perceived, historically, or actual) contributors take it over with their overly curt style of responses. :-/
It's great to advance, but when you start out as being quick and easy to get started in then everyone starts progressing you can easily forget that it's taken years as a community to get to this point. If you're not careful, as a community, you end up leaving the newbies always playing catch up instead of providing them a helping hand to get started.
Care to elaborate? virtualenv has worked fine for me and that plus pip means that the rest of the community can use and understand your code and all of its dependencies without having to have access to you or your machine to figure them out.
That focus is what's sets us apart from many of the other open-source offerings out there, in my opinion.
Don't get me wrong, this is all awesome, but a lot of it could have been re-used from better sources without having to spend time working on random API wrappers and the like. I would definitely like to know the reasoning behind creating everything from scratch.
It's always encouraging to see new people get involved. It's quite another to see someone relatively new to the community try to go around that community by announcing "new features" for a project they've barely started work on.
Sorry if that comes off a little bitter, but seeing this as the top post on HN today rubbed me the wrong way.
stuff = stuff is not None and stuff or []
That said, the `if stuff is not None:` is the most Pythonic way of doing it.I assume since you're coming from PHP you're going to want to do some web stuff with it. Django has excellent docs and there's DjangoBook.com as well.