skysight-inc/HackerNews huggingface dataset:
I hate Python too, only because of its insistence on indentation and because of its verboseness relative to, say, Perl.

I'm not against the non-Perl philosophy of There Is Only One Way To Do It, but for God's sake, don't insist on indentation! I am under a personal vow that until Python lifts its indentation requirement (say, via a command-line switch), I'm no way using this language for my programming needs.
I'm really kind of surprised at some of the negative reactions I'm seeing about this redesign.

Digg lost me as a user about 3 years ago -- the S:N ratio had been getting pretty bad and reddit was still more focused and attractive for me. What I'm seeing of Digg v4 will probably win me back.

I'm finding myself increasingly annoyed at the noise on reddit, to the point that it's becoming almost useless as a general news outlet for me. The thing that is most appealing about the new digg to me is that it effectively allows a user to reduce the size of the community that propagates their feed without totally throwing away the advantages of their huge userbase.

Either way, I'm excited about possibly having a social news site that lets me vet my sources and, as a result, show me things I'm more likely to actually want to read.
You Laffer curve types never seem to be very good at math. Explain to me, using math, how much the 35% tax rate needs to be lowered to incentivize this guy to work at $500.

Once you figure out the math we can move on to psychology.
I used git for keeping track of changes to my thesis. Since LaTeX is really just code, keeping track of the changes was pretty easy.

The slightly more novel thing was using it to keep my research articles synced. Lesson learned: downloading 30 or 40 journal articles in pdf form through git on a wireless connection can be very slow.
Imo, the most important technique (besides standard ajax with js lib of choice) is making use of hashchange and organizing your behavior into 'routes' based on the hash. You'll notice that Gmail does this -- it has URIs ending with #inbox, #label/action, etc.

Using hash routes allows you to keep track of state and decouple event handlers that set state from code that updates the page. Plus you get back button functionality and bookmark support.

Some background info on hashchange: http://blog.whatwg.org/this-week-in-html-5-episode-3

jquery library for dealing directly with hashchange: http://benalman.com/projects/jquery-bbq-plugin/

Higher-level jquery library for handling hashchange: http://code.quirkey.com/sammy/ . It has more assumptions and imposes more constraints on the structure of your code. But in return you get route parsing and a DSL.

If you go through the examples/tutorials in those two libraries you should gain enough knowledge to get started.
Yesterday there was an interesting link on HN comparing NLP in Python vs. other languages: http://nltk.googlecode.com/svn/trunk/doc/howto/nlp-python.ht.... I think this article shows the clearness of the Python language - - and this clearness and simplicity is the reason why I love to code in Python.
Kitchen Equipment
Well you definitely need something to handle AJAX. I pick between Prototype and jQuery, depending on the project. Sometimes I mix and match with both, since jQuery can coexist.

Next, you need to decide whether you will transport XML/JSON and have client-side code stick in in the DOM, or eval the AJAX response. In the latter case, you need to be generating JavaScript on the server-side. I know the Ruby on Rails RJS piece of the stack can be extracted from Rails 3, but I'm unsure about Python, so you might be better off taking the former approach.

There's a lot you can do with regards to animation in Prototype/jQuery alone, but I like Scriptaculous, and I've heard good things about MooTools.

Making a GMail-like interface isn't all about XML-HTTP-Requests though. There's a lot of value in nailing the usability, the basic concept. Then there's maintaining the history, undoable actions, HTML fallback and such.

My best advice is to start building a decent static interface from the ground up, and when you have it nailed, just augment all the minor GET actions with AJAX first (like going back to the index after reading an email). Then enhance primary POST and UPDATE actions (replying, marking with a star, moving to archive).

Half way through, you'll probably notice most of the page reloads that remain are acceptable. At that point, focus on refining the original concept with new methodologies you picked up along the way.

It's just the way I do it though, make sure you investigate other suggestions to find a perfect fit (by the looks of it, GWT is quite a paradigm-shift).
If you can see through the language, repetitiveness and overlook some of the context setting, the best resource is here.

http://www.greatwesternvehicle.org/ati_website/canon/sutta/m...

It is supposedly a transcript from the buddha discources.

There is nothing "spiritual" about it and is very systematic (basically lists of what to do) and worded very carefully. Most practaces I have gone to seem to lack the precice details.

Here is the main part, sorry for the length, but I tried to summarise and it would not do.

"Now how is mindfulness of in-&-out breathing developed & pursued so as to be of great fruit, of great benefit?

"There is the case where a monk, having gone to the wilderness, to the shade of a tree, or to an empty building, sits down folding his legs crosswise, holding his body erect, and setting mindfulness to the fore.[1] Always mindful, he breathes in; mindful he breathes out. "

"[1] Breathing in long, he discerns that he is breathing in long; or breathing out long, he discerns that he is breathing out long. [2] Or breathing in short, he discerns that he is breathing in short; or breathing out short, he discerns that he is breathing out short. [3] He trains himself to breathe in sensitive to the entire body,[2] and to breathe out sensitive to the entire body. [4] He trains himself to breathe in calming bodily fabrication (the breath),[3] and to breathe out calming bodily fabrication.

"[5] He trains himself to breathe in sensitive to rapture, and to breathe out sensitive to rapture. [6] He trains himself to breathe in sensitive to pleasure, and to breathe out sensitive to pleasure. [7] He trains himself to breathe in sensitive to mental fabrication (feeling & perception), and to breathe out sensitive to mental fabrication. [8] He trains himself to breathe in calming mental fabrication,[4] and to breathe out calming mental fabrication.

"[9] He trains himself to breathe in sensitive to the mind, and to breathe out sensitive to the mind. [10] He trains himself to breathe in satisfying the mind, and to breathe out satisfying the mind. [11] He trains himself to breathe in steadying the mind, and to breathe out steadying the mind. [12] He trains himself to breathe in releasing the mind, and to breathe out releasing the mind.[5]

"[13] He trains himself to breathe in focusing on inconstancy, and to breathe out focusing on inconstancy. [14] He trains himself to breathe in focusing on dispassion [literally, fading], and to breathe out focusing on dispassion. [15] He trains himself to breathe in focusing on cessation, and to breathe out focusing on cessation. [16] He trains himself to breathe in focusing on relinquishment, and to breathe out focusing on relinquishment.
Check the title, it's Chroma, not Chromea.
I've never understood this objection. Do you not indent your code anyway? If so, why should you also need to delineate scopes in another way? Python allows you to choose your indentation, it just requires consistency: something that is always required by coding standards (with good reason).

If there was a command line switch, would you use it? Why?
Gogo (White) Adult Boots 
Super selection of all types of costumes and clothes for adults and children and a reduced rate of freight, while a super day. Enjoy shopping risk-free area and the number of exclusive costume!
Guardian added some clarification:

http://www.guardian.co.uk/theguardian/2010/jun/26/correction...
I've had a client once tell me that my rate was outrageously high (it was average, but anyway). Since then I have come to the conclusion that basically, it is impossible to have an outrageously high rate. My rate is not the value I assign to a particular task (ie solving the clients problem). My rate is the value I assign to my own time. How can anybody else besides me judge the "fair" value I assign to my own time?

There are exceptions, of course - I guess if I was a surgeon and I would refuse to operate on somebody because they can't afford me, the ethics would be very questionable.
Do you hate scripting languages in general?
Maybe you should compare python with other scripting languages.
I'm not going to contribute to the snowballing of this particular thread by adding what I know of what he did on some of those teams and companies he lists, but...exactly. It's his ego that rubs me the wrong way the most. The way he writes like he was instrumental in the creation, development and/or success of the apps he was involved in, when there's, oh, many other people that've worked with him that could list their credentials the way he does, except...wait. They don't. And there's more than one person on a team that makes things happen. sigh :(
Maybe you should use lisp, like my boy says to
on top of things like using Ajax you might want to read up on RESTful web services for building services. Jquery and Jquery UI are great otherwise.
>not capitalists advocating efficient trade, they're Keynesians or something.

Keynesians are capitalists and I've never heard of them being opposed to efficient trade.

One thing that inspires people to spend money is feeling that they won't be laid off. People do not have that feeling right now. Should we just wait for that to happen? Producing while people aren't buying leads to inventory gluts which leads to deflation.
tldr: stop using tldr
I think he is not proposing anything substantially new. Collecting data before formulating your hypothesis is the norm, not the exception.

First you see an object fall and them you wonder why. The same applies to birds flying, wood afloat, fire, atmospheric pressure... we observe(collect data) first, we make assumptions and look for more data later.

BUT, never underestimate the power of a GooglePlex for gathering and analysing data(like generic one). Never before we had used it, and so we could see things we never did before.

You know what happened when a man without studies created a miscroscope. The "scientist" of the time said that he didn't knew Latin, so he could not be called scientist, and that the microscope will only work for seeing the same things we already know bigger.
wheels you need to get laid
As my boy would say, if you aint using lisp yous using blub, and blub programmers get a spanking!
At the office: realize that if you don't have confidence, you are unlikely to get actively anywhere further (promotion, enhanced responsibilities).

In a word, cross the door, then people will hold it open for you. The opposite doesn't work.

For everything else: as said by others, plan, iterate, think, correct, repeat.
I don't have much experience with scripting languages - I've only written some bash scripts to automate stuff (other than Python, of course).

Unless, of course, Brainf*ck counts as a "scripting language". :D
First, to the topic question, I'm not qualified by your criteria to answer the question, but I'll say anyway that I prefer doing video game programming in Python for 99% of the tasks that come up compared to C++. (For example, the PyGame wrapper for SDL just feels a lot better than the C++ interface, plus it adds some nice features.) My own take on mental models can be simplified with the example of strings. In Python, I can think of a string as a string, or a word, or a sentence, or an iterable list of characters. In C, I can't ever forget that it's all pointers. Python lets me think at higher abstractions more readily from looking at code. Plus I really love dynamic duck typing.

And to the parent: I really hate to be "that guy", but can you give me an example where non-indented code looks better than indented code (since all your complaint really is about is style rather than what Python can help you do)? If it's just braces you're after, Python "supports" those by just commenting them out. When I first learned Python years back I was coming from a PHP and some Java background, and my code was sometimes single-space-indented, sometimes not indented at all, and it was hideous. After I realized I should be indenting anyway, Python made a lot of sense, all these languages with braces or 'end's everywhere didn't, and I can't think of any case I've ever thought "Man, I wish I didn't have to indent here." The one thing I can say I don't exactly like about Python now is the occasional self-hell.
Open Source Stock Technical Analysis
We better start a Hacker Certification Program to make sure we can sort the true hackers from the fake ones.

Question 1: What is your hacker handle?

A1: Zero Cool, A2: Crash Override, A3: Acid Burn, A4: Cereal Killer (select one)
Before I ever encountered Python, I'd gotten pretty familiar with a wider variety of languages than C, C++, and Java.

So if you don't have to learn Python right now, maybe you should first learn Lisp, Haskell, or whatever else you want or need to learn that isn't much like C/C++/Java. I think you'll have more fun this way. :-)
I cycle commute and am therefore fairly actively engaged in transportation (though your mind can wander at times if your route is as pleasant and winds through parks and along rivers as mine does). I don't consider this much of a loss as cycling is a joyous activity, much as I'd imagine car driving might be if you were the only one on the road. In the reality of stop'n'go rush hour jams car commutes are stressful. I saw one report that claimed driver stress in commutes is on a par with fighter pilots and I can believe it.
Did you read what my boy said about Python? He said they are smarter programmers. Who do you think you are?
Residents catch on to local con artist..using a local wiki
Last time I contracted for a hardware maker, I had to have two separate computers: one box where I had manager role, where I could compile and debug code (with Visual Studio), that sat on a network that had unrestricted access to the net, and another that could access the corporate Exchange server and the internal network. By default, all webites were locked out, but you could request access to what you needed, one site at a time, and the security folks would see what thy could do. It took me a month of signatures to get my second computer, the one with full Internet access.
Also, my boy said that hackers and painters have a lot in common
The only reason I have had lately to get annoyed at Python is when one of the guys I'm working with on a project was using an editor where the tabspacing wasn't set correctly. That meant anything that he changed/added led to the script not working. Even though this was an easy change (=G in vim), it's still annoying to think that such a minor issue would completely kill the script.

Of course I prefer Ruby, but that's a whole other can of worms :)
From memory, I think it says somewhere on his blog that the whole tone is just an act. It gets him a lot of publicity, and sometimes he says some interesting things. I'd be willing to bet he's a really nice guy. In my book, it takes a lot of nice to take yourself so lightly.
> and that's supposed to make you an expert on them somehow?

No. But it has a good chance of making their experience broader. Microsoft is nothing but a tiny spec in the software development tools set. Using only Microsoft is not a good sign.
Heh, hell yeah.

Question 2: Which of these systems do you have control over? (Circle all that apply.)

A1: National Electric Grid A2: Local Electric Grid A3: Any Television Station A4: Any Cellphone Tower A5: Any Satellite A6: Your neighbor's wireless router
This is the main draw for me. Compared to Python, other languages (well, some) seem to require you to do so many things that just seem... unnecessary.

I couldn't believe all the junk Java required of me when I took a stab at it. It's like being confronted with some unhelpful bureaucrat: I know what I mean, they know what I mean, but they're damn well going to make me trudge through all the nonsense so that what I mean is turned into something the bureaucracy understands. The linked NLP examples are great for illustrating this.
Sometimes I have trouble when breaking looong lines of Python code in multiple lines ... like for example when I have method chaining. I don't like long lines of code, it makes the code unreadable.

Of course, most situations can be solved by a backslash-enter, and simple statements can be separated by ; but there are places where I wished for more flexibility.

This is only about readability, and overall Python code tends to be more readable than in other languages, although I've read beautifully written code in Java or Perl or C++, and the readability really depends a lot on the programmer writing it.

I think the major problem is the lack of focus in high-school / college on such things ... quite the contrary, many teachers are usually disconnected from real-world projects and don't have this skill themselves.
Well, oddly enough, I'm midway through an M.A. in Buddhist Studies, and did my undergraduate thesis on psychoanalysis, so, yes, I have a perspective.

I'd argue that the differences between the disciplines outweighs the superficial similarities. If one is so inclined, one can definitely make lists of similarities, and can stretch the interpretation of the doctrines of one field to fit the other, but what would be the point, really?
Make a GSM Signal Detector
True.
Considering that one can develop android app on any machine but iPhone SDK requires Mac OS (else they can't be published to the app store).

I suppose, Apple has lost a lot of hearts after the series of close-structured and seemingly unfair app store policies. Though the fairness could be debated and a different issue altogether.
Preference for languages can take into account everything from the syntax to the libraries to the community. It's not surprising when someone has strong opinions about them. The problem is when people get precious, but you seem to be straight up about it. And with C and C++ you certainly won't suffer because you aren't a Python guy.
The indentation is not a big deal at all. You indent your code anyway, right? Python doesn't enforce a specific standard, you can indent however you want, just as long as you use the same units of indentation consistently.

The only time I've had a problem with indentation is while copy-pasting things, occasionally that can get messed up and be annoying. Everything else is fine.
Is direct comparisons of download numbers the correct measure? The iPhone has nearly three times as much users as of Android and a greater lure of larger returns.
Let's leave the meta-memes on reddit. This is a little bit personal to be funny imo anyway.
He was already working for Apple before moving teams internally, probably because his DTS job wasn't working out or the perks of switching were too great, i.e. he started at DTS a year ago, and before that year was up he switched teams and then presumably quit altogether. He wasn't hired by Apple expressly to come impart his wisdom onto the team working on the app.
Yeah, I used to use an air filter for this purpose. Now I just use earplugs.
My son's worst decision was hyping Arc - I told him to stop hyping things he cant deliver on, but he never listens. Daddy knows best!
Two days with Apple iPhone 4
Yes, you're a bad person. We're assembling a re-education camp for People Like You right now.
I was thinking it was the man-in-suit fist and pelvis pump towards his phone while dialing his wife.
Hey, dont talk back to Paul's mother. Shes had a hard enough life raising a kid who cant decide if he is a hacker or a painter.
I agree that short python samples are as clear as a high level language can possibly be. Implementing algorithms, for instance, becomes incredibly easy in Python. I face problems when Python programs get above a certain length.

I've done some Django programming in the past. A view gets a request object (pardon me if I'm wrong or if this has changed recently) and is supposed to then render the response (or something similar, I don't remember exactly). Now what is a request? If Django were in C, I would know what a request object really was, grep for it, and look up the header file. If request has a GHashTable named post_data, I don't think I need two guesses about what it exactly is. Same goes for C++ and C#.

Then you've inconsistencies. The same method may return a string object or an integer on different calls. And this happens in practice - I remember when I was (trying to) model a relational database in Django, I found a ManyToMany field returning (when invoking values ()) a list of dictionaries instead of a list of Model objects (which I was expecting).

Of course, if I was not dumb enough to not read the documentation I might not have stumbled; but the point is that Python allows this to happen. And since I don't have the benefits of a compiler, anything other than basic syntax errors (the ones I can catch by calling py.compile) explode at runtime.

The thing I've begun to notice that scripting languages tend to require you to hold the entire structure of the program in your head as you code. In C++ you know that unless you've gone out of your way to do some casting magic, a string get_foo () will always return a string. And you can always do get_foo ().c_str (). In python you're never sure.
Python for me is the language closest to pseudocode. There are no decorations and few gimmicks. You simply write your ideas down into code.
Google python style guide has a very good way of dealing with long lines:

http://google-styleguide.googlecode.com/svn/trunk/pyguide.ht...

In fact at Google the maximum line length for python code is 80 characters because long lines make the code unreadable, and following the style guide basically anything can fit in a nice and readable way.
My son doesnt like Java, is he a bad person?
Java is, as I said, a toy language.

A language that needs you, the client programmer, to define getFoo () and setFoo () methods manually can't be right.
In C and C-like languages, you have indentation for the humans and curly brackets for the compiler. Python simply unifies this into a single convention. Both parties "see" the code in exactly the same way. If you see someone else's code, there's never any ambiguity about what they meant.
The way you should never interview people
I wondered the same thing. If you assume that the level of investment dictates the number of trips, then the ROI is steadily decreasing. Whether it's any worse than the ROI on, say, roads I have no idea.

My opinion, and I have no hard data to back it up, is that it's not a case of build it and they will come, but a case of they come, they complain bitterly about the lack of facilties and then and only then does it get built.
The Firehose: Welcome to Ruby, Javascript and Ubuntu Linux
Python is a great language. But there is nothing bad about preferring one language/style over another. There are great programmers in all the camps.

Try the other two scripting languages - Ruby and Perl. I would prefer Ruby. See if you like the way things are done there.

If you find that you are more at home with this language than Python, try analyzing what makes you prefer it over Python.

I would suggest you to start with the basics of the Ruby language, and then try building a simple web app with Sinatra. I find the Ruby style much more comfortable than Python.

But if you don't like any of these languages, its still well and good. If you get can shit done with C#, thats all it counts.
The above comment applies here as well.