skysight-inc/HackerNews huggingface dataset:
The most famous example is his discovery of relativity coming from envisioning himself riding along a beam of light.

But most people when hungry think "I'm hungry" (if they have a conscious thought on the matter at all, which they may not) rather than picturing a hamburger. Or so my psychology professor said.
MySQL has an awful lot of mindshare because sites like Slashdot run on it. If your application does very simple queries and very many more reads than write, perhaps MySQL is suitable. The problem comes when people who don't know much about databases extrapolate from there into inappropriate problem domains. Which in this case is, anything that isn't like Slashdot. Which is a lot of things.

It's unfair to criticize SQLite, tho'. It does exactly what it claims to do (unlike MySQL which has "Enterprise" stickered all over it now). Incidentally MySQL's claims to be the worlds most popular open source database are lies, SQLite has orders of magnitude more installations (hint: you probably have a copy of it running in your pocket or your bag right now).
It depends. English is my third lamguage. French is the second. Wolof the first. I think in all three depending on the situation. When I first moved to the States I would speak in French in my head and translate it in English from brain to mouth. As the years went by, I started to automatically think in English. When I speak with my mom I think and process all the info in Wolof. If the conversation becomes more political or academic with her, then I start to process the information in French because that is the administrative language where I come from.
You have to post this again later. It is a bit too late so you may not get enough feedback.
It's the other way 'round. IDEs appeared because languages like Java require so much scaffolding. Why should I even have to see generated code, let alone write it, that's the compiler's job! Automation (which the exception of simple stuff like paran matching) doesn't add much to succinct languages because there isn't much in your code that isn't directly addressing the problem you want to solve, and that has to come from inside your own head.
I am bi-lingual: English and Russian (having lived in US since 1996). Often times, however, I can't quite tell whether it is Russian or English I am thinking in.
I'm also a Mac developer. I've been building a couple of applications while I'm in University and it looks like I'll have a good steady income to grow the business on once I'm out of school.
I'm actually learning Russian right now, while living in St. Petersburg, so I think about this a lot. The program I'm in is intended to take us to a high level of fluency-- Superior, or Level 3-4 on the various scales. As a result, there is a lot of talk about thinking in the target language. I, sadly, still feel like I very rarely do this. I can handle very simple contexts rapidly, but I don't know if I'm actually thinking directly in Russian, or simply using the lookup table you describe at an extremely rapid rate. When I read texts or hear other people speaking in Russian, I almost always still reform the sentences into English in my head.

Some of the other students seem to not have this problem. By their own admission, they're able to operate in many, if not most, contexts completely in Russian-- though, of course, there's no way to know what this means. They mention dreaming in Russian, for instance. This hasn't happened to me yet. There are times when I can intuit what someone wants without actually translating word for word, but usually that's just because I didn't catch all of their words to begin with.

It might be background-- I'm the only engineer, the others are all Russian majors. Maybe they have less need of precise rules and translations. It's very hard for me to adopt a new Russian phrase without having found an English equivalent for it. It might be time spent learning the language. The other students have been at it 2, 3 times longer than I have. It might just be that I'm older: 30, as opposed to 22, 23. When I was in the Peace Corps, the volunteers in their 50s and 60s had huge problems learning the local language. So it's probably true that, at least for most people, the older you get, the more ingrained your modes of thought. I guess that means that the earlier you can expand this, the better.
The article's main point is just that languages have started including much larger standard libraries. Larger libraries save time, but they make the programmer's job more "searching for the right function" rather than "writing functions."

I suppose he laments the old days when he used to reinvent the wheel ...
Hindi is not THE national language. It is "A" national language.

Hindi is just the language used for the transacting business of the Central government, for which English is a constitutionally and legally acceptable alternative.

Coming back to the topic, I think in English most of the time, just because a majority of my waking hours are spent thinking about tech and programming, for which English is a natural fit.

Note: I'm trilingual (actually more like 3 + 0.5 + 0.1 + 0.1 + ..., the fractions being other south indian languages).
I debated this MySQL vs. Postgre issue for a little while before deciding it was just better to go with MySQL and get started rather than nitpick over a solution.

It's one thing I've realized pretty quickly in a startup -- don't try solving or predicting architecture problems that don't even exist yet. MySQL does just fine for almost all new startups.
Nobody thinks in English or any language. I know this, because I actually thought about the problem you are describing when I was a child of about 8 - I was faced with the problem because some guy said he thinks in words. I realised that I didn't think in words, but in concepts.

Later, when I was much older, I realised that parts of my thinking seemed to be words - but just seemed. With some effort, it's possible to remove the words from the thinking and just think in concepts - the words are automatically placed on your thoughts, but you are not thinking in them.

Let me explain again : You have a thought, and then the words matching that thought are created. Then you reprocess those words as input. You can also skip the reprocessing step, but for that you have to avoid a fatal mistake - the replacement for words is not images. Rather, you need to simply not try to inteprete the concepts you are working with in your head.

For example, if I say 'empathy', you know what it means without a dictionary definition of empathy. If I write out a sentence - the man felt empathy with his begging son, you can imagine the situation without needing words or pictures, and only when the entire concept is finished do you convert it into words. I.e, in the sentence above, you are not breaking empathy down, you are breaking the entire sentence down.

There is a simple way to discover how to do this - think of some random object. Then think of something related to that object, then something else related to it. For example Book, Page, Letters, Reader. And so on. Just go through a list of interconnected things, but as you do so, try actively to avoid putting words on the concepts. After a while, also try not putting pictures either. You should see your thinking speed up significantly as you improve.
Coder Who Says Py: What's with the 3.0 hatin'?
I actually use Notepad2 for Javascript. It is a great, all around, bare bones, dead simple editor. I say ggrrrrr because I want my IDE features!

I'm actually quite proficient at Vim. I used it day in and day out at Google for 3 months. It just drove me nuts. Vim (and presumably Emacs) are fantastic general-purpose text editors. Too bad I only spent a tiny portion of my time editing general text. I spend the vast majority of my time editing CODE.
Yes, I agree :)

My blog post is ephemeral and so is BS songs
How credit cards become asset-backed bonds (video)
Who needs a watchman when your company has someone who's technical at its reins (or close enough to them)?
Yeah, I guess I'd do that, too, for the right price.
As a child, I used to think in pictures too, but the school system beat it out of me.
BS does come to mind.
That's remarkable. This is exactly the sort of information I hoped I would be fortunate enough to receive. I want to say "write more", but I'm not sure there is anything left to say. But you should definitely write a blog post about this, if you're interested.

I find it interesting that you discovered this at such a young age. Maybe that's one reason it's so natural for you not to think in a language.

By the way, roughly how fast do you read? (Extremely fast, average, very slow, etc.)
As someone who started learning C a few months ago, it was comforting to hear a 20+ year veteran programmer say that coding in C made him "feel like a real programmer again".
It'd be interesting to see a wide spread study on this.
I've yet to meet a good programmer that uses an IDE, but that could just be an anomaly.
I'm also on 64 bit linux & it works. Wish he had made a huge draw button. I read about that feature here before I saw it on the page.

PS 2.5 million reactions really? Why aren't they all listed in /reactions/ hmm? :)
AT&T considers selling a streaming TV add-on for iPhone 3G
How can you not attach a picture to a word or concept? And if you do not attach a picture to something - what do you see?

Tennis.

So, did you see a racket, people playing tennis or something else as you read the word? And if not, what did happen as you skimmed from paragraph to paragraph?

edit:

Hmm. I just realized that when I read a list of words [ball, car, frisbee] I don't visualize anything, but when I think of any of the words individually I do visualize. Even when just writing down a simple list. That's peculiar.

edit 2:

It can only mean one thing - that when reading you don't think at all about the nouns. Obvious in retrospect. This also explains why you immediately forget a list when just reading over it, but recall perfectly when you visualize each item for an instant.

edit 3:

> Just go through a list of interconnected things

For most people this should be really difficult when listening to music with lyrics, and really easy in a quiet environment. "proving" that you're still using the linguistic part of your brain, even when you're painting a mental picture.
I have a real concerns with "Don't be evil" -
1. subvocalising "Don't"
2. focusing on the action "be evil"

As a cyclist, I often tell new cyclists: "if you see a rock in the middle of the road, focus on the clear road either side of the rock, focus where you want to go. If all you think is 'don't hit that rock' 'don't hit that rock' 'don't hit that rock' guess where your focus is? Guess what you will likely end up doing?"

I see Google's mantra in the same light. It is far better to focus on DOING something than NOT DOING something. "Be good" is a far better mantra to have, and that's before all the good reasons you cited, Paul.

Thanks for the essay, have been looking for some inspiration lately and had forgotten about YC and your essays.
Hidden API features turn iPhone into "gaming device."
Do you live off of this?
Nobody thinks in English or any language.

That's a pretty bold statement that many eminent linguists and psychologists would disagree with.

From my limited knowledge of linguistics what I've gathered is that current thoughts are that people think in symbols, which are often words, and that our abilities to think in many types of abstract thought are directly connected to the language faculty of the brain. Modern linguistics is driving towards there being a fundamental underlying universal grammar in which human languages can be seen as specializations of.

The unification of cognitive psychology and linguistics seems to be one of the goals at the moment, and there is the notion that abstract thought and language aren't fundamentally different things.
There's no such thing as a free meal.
Alright, what about a child who sees cars everyday, but has never been told what a car is. He can still manipulate the car concept as easily as if he knew the word for it.

Or some people have very small vocabularies, simply because they have been exposed to a small number of words - does that affect their cognitive skills?

Abstract though and language may not be fundamental different things, I don't have enough information to say. But what I am saying in my post is that first you think in a concept, then you translate it into a word. You don't think in the word first. So you can think without needing to translate it into words. The relationship between the words and the concepts is of course strong, because we use words to vocalize the concepts we have.

Think about it - what is a word actually? It's just a series of sounds we create in the air. So the sound of a word is quite irrelevant to the concept behind it - the construction of the word is not relevant. Imagine we did not have mouths but instead we communicated by flashing a series of pictures in the air. The part of us that creates these pictures is just a sensory IO appliance like our eyes or mouth. Would that change us in any fundamental way? No - we would construct a similar grammar and communication method with pictures as we would with words.

What this implies is that the words themselves are unimportant, they are just representations of concepts we are dealing with. This representation can take many forms - but because we are used to vocalising our thoughts, when we do indeed think, we automatically prepare the things we are dealing with for vocalisation, leading to the illusion that words are actually involved.

What happens this is that this vocalisation becomes a sort of feedback loop for your thoughts - you think of concepts, convert them into words, then reabsorb the words to be reprocessed as if someone told you them. That is, they come back in as if you were listening to them from other people. You can observe this sometimes with people when they mutter to themselves. When we rehear our own thoughts, we can sometimes process them better (for reasons I don't know). But this step is optional, one can also do it without reprocessing, though this will fail with very abstract things that actually need concepts alien to us.
A fascinating WebApp, and really useful to schools and students, I would have thought. I've only tested it for about 2 minutes, but I already found one odd ommission - try searching for Ethene and see what you get.

Also it says that yo can search by common name, which is fabulous, but you might want to open the system up to crowd-sourcing so that people can contribute common names and attch them to molecules.

A search on Deoxyribonucleic acid, for example produces no hits.
Don't go to business school (Seth Godin's alternative MBA program)
When a word or concept 'ends', you will translate it. Before it ends, you can can deal with it without converting it into a picture or a word.

For example, the sentence: "there is a lion coming". How do you deal with the sentence. Do you imagine a lion coming? If so, where is the lion coming to? To me or to you? What's the context?

There are too many variables, so it's difficult to convert that sentence directly into a picture - but you still understand what it means. It's just a fragment, but it represents some type of mental concept, and this mental concept could be related to danger. As soon as I can complete the fragment:

"There is a lion coming up behind your desk", you can immediately convert it away from a a mental concept into pictures or words.
An amusing side effect of that is that though my native language is English, after 7 years of living in Germany, if I've been drinking I have trouble forcing myself to switch into English. I catch myself even speaking German to friends who speak English better than German. Since I'm so used to "social activities are in German" I can't shake it.
Sarbanes-Oxley is probably not going to be repealed or significantly reformed, so was the point purely theoretical?
Haven't ever happen to you that you have the concept in your mind but you are not able to remember or even know the word for it? And nevertheless you are able to think about it!
Apx Alarm - Home Security Systems
From C++ to Objective-C
Best Objective-C guide I've come across.
Why is this a tautology?
I was raised in Central America by US parents. At 4, I knew more Spanish than English. We moved back to the US when I was 14. Since then, I've lost quite a bit of my Spanish, but I'm still fluent.

When I was younger, I would think in Spanish and occasionally dream in Spanish. I don't do that any more. I've been in the US for so long that the transition to thinking in Spanish requires effort.

But, yes, there are concepts and shades of meaning in one language that are hard to communicate in the other.

I think that being monocultural is much more constraining than being monolingual, however. When you grow up between separate cultures, you're not only acutely aware of multiple ways of talking. You're also acutely aware that there are multiple ways of living, of relating to people and family, much different sets of priorities, completely different ways of problem solving and of being. It's hard to appreciate unless you've made a big cultural transition like emigrating or growing up multicultural.

If you want to get past it, move to another country for a couple of years.
I think in Italian occasionally, but of course English is my native language so that's what gets used most. When programming, it's English only, and speaking Italian doesn't come as naturally. I started trying to think in Italian as a way to practice the language, a long time ago, and found that it was pretty effective.
But in some cases, you have to think in pictures. Like trying to solve a Graph problem, it is even hard for me to describe a specific Graph problem in proper language...
My view is that people think in (1) words (2) pictures and (3) concepts. How much of each depends upon the individual.

As for myself, I think mostly in pictures and concepts, very rarely in words.

I am bilingual, but since I rarely use words for thinking, languages don't matter as much.
It's cemented a lot of ideas that I had about time management, focusing on generating income and outsourcing as much non-essential stuff as possible. I've started to use eLance a bit more for non-programming tasks, and I'm hoping to hire a part time virtual assistant this next year.

I tested a selling a database via adwords as suggested in the book, and I got a decent enough response that I'm outsourcing the the database development in the next few weeks. It's not going to make tons of money, but it might make $300-1000 a month in passive income. That's worth the effort for me.

His sections on time management don't translate extremely well to developers, but focusing your time very narrowly on what's essential and most productive makes a lot of sense.

Yes, there's a tone of self aggrandizement throughout the book that can get annoying. But there's a lot of really helpful ideas which are worth the read.
You might find this interesting:

http://en.wikipedia.org/wiki/Pirahã_language#Pirah.C3.A3_and...

A lot of what you're saying is intuitive, but modern research suggests that it's wrong.
It will handle that one, yes, but there are enough cases where the "best" transformation is ambiguous and so has to be determined heuristically that there'll still be plenty of work left over for human programmers (not to mention cases where 2to3 cannot determine a transformation at all, or cases where it can be fooled by code which uses 3.0-isms in 2.6 code, or the need to thoroughly test, re-test and test again to make sure everything still works).
I think in the language that I am using or have experience on the subject - my native language is Bulgarian, but sometimes I think in an another language when I face a concept I experienced in another language. Those cannot be only natural languages but also formal ones - its too confusing and slow to translate mathematical, psychics, programming or any notation into a natural language.

I sometimes only know English terminology on a subject and I am forced to think and even use English words.. I consciously try to avoid that. Usually people with only ostensible knowledge of English AND the subject pollute their native language with unnecessary foreign words. Unfortunately those people are very common here and annoy me daily, but on the other hand its fairly easy to separate the signal from the noise by looking at how often such fancy words are used.

I really recommend this essay in which the unnecessary use of foreign words is only part of a bigger problem:
George Orwell, "Politics and the English Language," 1946
Born in China, still in China, I think in neither Chinese nor English, people don't think in human languages, human languages are only for communications.
The language/culture influences quite a bit.

I know this quite well, because I grew up with a mother language quite different from my current language (both are not English), so learning other languages (preferably really different from your mother tongue) is always a mind opener.

I made this experience: while slowly growing into my 2nd language/culture, I extended my horizon, without loosing what I learned so far. So, it's not that I'm now inside my 2nd language, and lost my 1st experience/capabilities, but: my horizon is widened, I'm more logic and more flexible in both languages, and in my whole thinking process.

BTW, I never explicitly think in the words of my human language, words may accompany the thinking process, but thinking is so complex and fast, that you would not be able to follow directly; it mostly 'happens'...
> What bugs him, AFAICT, is that it's harder to throw together an app for a few users that solves some pain they have. VB6 is possibly the best environment for doing this ever, so I see where he's coming from.

Thank you! This 2008, why can't i get a platform independent way of quickly and easily coding up a GUI app like I could in VB4 in '95?