Live data from Hacker News

How to become a programmer, or the art of Googling well

okepi.wordpress.com

121–130 of 155 posts

Re: How to become a programmer, or the art of Googling well

#121
post #3

This is very true, but it's a bit more complicated than that. "I'd come to understand that the answer was out there, somewhere." The answer is out there, but so is the wrong answer. Recognizing the right answer is the hard part. I also must point out that the answer is out there if you know English . Knowing English is a strong privilege. Success rate plummets if you Google programming questions in a language other t…

As a comparison, my German (as a foreign language) used to tell us the first year we learned it, "beginners shouldn't use a bilingual dictionary". In order to ensure the word you found in the dictionary is correct, you need to be good enough in the language. Often there will be homonymns in your native language, and you'll get the wrong word. For example you want to translate the bank of a river but end up with the p…

> In order to ensure the word you found in the dictionary is correct, you need to be good enough in the language. Often there will be homonymns in your native language, and you'll get the wrong word. For example you want to translate the bank of a river but end up with the place that keeps your money.

That's why you use a good dictionary that support phrases, and even give a context annotations[1]. That makes the advice a bit obsolete.

[1] http://www.dict.cc/?s=bank+of+the+river

Re: How to become a programmer, or the art of Googling well

#122
post #77
post #76

Earlier quoted context omitted.

I am curious. What exactly is wrong with "some few words"? In german it would make total sense.

You can't say "some few". Either are fine, but not together. It makes sense to me, but I'm not a native speaker either so I don't know if there's an actual rule behind this.

Sometimes you use few with a countable name. Some is for not countable. A few friends means that you know perfectly how many friends you have, if you have some friends the number of friends you have is subject to a great uncertainty from 1 to infinity. So some few is saying you have few but are uncertain or don't want to say how many, but that is not very rational. Why this reasoning? Because it can help you to avoid repeating the same error (or unidiomatic expression). The simple fact of analyzing any mistake it a way of becoming vaccinated against it.

Re: How to become a programmer, or the art of Googling well

#124
post #37
post #4

Earlier quoted context omitted.

This is something I've always wondered - how do programmers who don't natively speak, read, or write English cope with the sheer amount of literature they have to parse to have a career programming?

OReilly has released basically all of their books in Japanese

Japan is a bit of a special case since the Japanese can function well without learning English. In most European countries and increasingly throughout the rest of the world, English is the lingua franca.

Re: How to become a programmer, or the art of Googling well

#125
post #52
post #48

My 2cents. Don't be fooled by this false sense of know-how when you just start being able to write some html/js stuff. Googling a problem is a reflex when you start coding, and yes, good or bad googling abilities could be the difference between you still being in the industry in 5 years or not. But, still, this is only a first step on your path, and stopping there will also stop you from being a real hacker. There ar…

I started learning in 2000, before Google was big and Stack Oveflow didn't exist. I think every new programmer gets a false sense of how easy everything is. 14 years of learning later, I now realize how little I know.

I started coding in high school in 1973 and professionally in 1981 with no benefit of any classes (other than the one in high school). Believe me I prefer to live in the modern age where your knowledge is expanded by the world's collective brains. In the "old days" you only had your own brain and limited library books and periodicals and maybe a good buddy. It was much harder than today to do anything you didn't already know but we didn't know any other way. Today it's much easier to find information, get ideas and opinions. I even use Google to find method names in iOS documentation (Xcode's sucks). But you still need to be able to understand what you read, decide if it is relevant, and how to apply it. Those things you can't just learn from Google fu, it takes experience, trial and error, and a willingness to recognize when you are wrong.

Re: How to become a programmer, or the art of Googling well

#126
post #94
post #31

Earlier quoted context omitted.

As someone whose native language is not English (and didn't receive particularly good English classes at school, but had access to the Internet): if you start at a young enough age, you pick it up somewhat naturally. Seriously. In my case, wanting to "do X thing in VB6" drove me to read heaps of text in English, and even if I couldn't make sense of everything I could kind of guess what they were saying from the conte…

"if you start at a young enough age" My understanding is that less than 12 is a good definition of young enough. (Although, ironically in the context of this discussion, my google-fu is too weak this morning to find the reference that convinced me of this. :) In any case, a distant 2 years of high-school German coupled with 6 months of effort last year (pretty nearly an hour a day) was not enough to give me the skill…

"learning a language is hard"

I don't agree here. First off, your two years of high school German, like my two years of high school Spanish, were likely a waste of time. I had the highest grade in class and couldn't speak a word of Spanish, although I could write simple sentences in present tense quite successfully.

I moved to a French speaking country when I was 23. Initially, like most Americans, I thought that learning languages was hard so why bother. After one year abroad I basically spoke 0 words of French. Once I decided to stay long-term I took a French class, it was once a week for two hours for about 7 months. I was teaching physics in French a few months later. Granted I wasn't fluent, but it was good enough and my students were incredibly patient. By the time my own French course started up again it was unnecessary, I was learning more than enough during the day so I quit.

The key part was that the French class was only in French from day one. You could not ask a question in any language other than French because the teacher couldn't understand you (in reality she simply feigned incomprehension). Amazingly, a good teacher can make you understand a language you don't speak by speaking to you in that language. For the life of me I don't understand why high schools in the US don't adopt this system.

Babies are great at learning languages and you have a massive advantage over them, you have the power of reason. You also have the massive disadvantage of people refusing to speak to you like a 2-year-old.

My advice, if you really want to learn German, is to spend the next 6 months speaking to someone in German for an hour everyday (there are some websites that let you do this remotely). Same time investment as before, but I'm guessing you didn't spend so much time last year actually speaking with someone. Babies don't learn to speak through books, they listen for a year and then start saying extremely simple things. Learning to read in German will do wonders for your vocabulary, but it won't allow you to have a conversation. As someone who is quite anti-social, I find this unfortunate, but the wiring required to speak another language gets put in much faster by speaking said language.

Also, don't bother learning how to speak in present tense, learn how to speak in the past and future. You want to be able to say what you did yesterday and what you are doing tomorrow. People ask you how your weekend was and what are you doing for vacation, they know what you are doing right now because you're talking to them. Surprisingly, I can't think of a language where it is harder to speak in the past or the future than in the present due to verb conjugations becoming largely trivial.

I want to emphasize that I was not an especially gifted student in my French class. We were all total beginners and by the end of the course most people were functionally speaking French.

Re: How to become a programmer, or the art of Googling well

#127

Earlier quoted context omitted.

Reading literature, watching films, listening to the music. Basically, delving into culture which contains common phrases, idioms and sayings scattered around. You hear/read them, understand meaning from context, and commit to memory so you can use it later on. This is not really that different from how kids learn idioms too, isn't it? By the way, a lot of idioms/saying are pretty similar in different countries. Thei…

France here - starting as a student and stepping into the university library, it took me 30 seconds to realize that everything interesting was written in English and not being able to proficiently ingurgitate vast amount of it was going to be a problem. I just shunt French as written input for the next 5 years. When the valley called for a job, I was ready. Pasteur said "Chance favors the prepared mind" - he was rela…

I wonder about the mind/minds

I should say Chance favors those with a prepared mind or Chance favors only favor people with prepared minds, perhaps minds is plural in Spanish an singular in English and this is reasoning? Can anyone confirm this reasoning or I am completely confuse?

Edited: Gooling I found people with heads are smarter, so here they use the plural. So why mind and not minds.

http://gnosticwarrior.com/head-size-matters.html

Re: How to become a programmer, or the art of Googling well

#128
post #10

I currently work with a bunch of people who are "business majors" or whatever and are similarly self-taught in the Tech/IT/Programming space. It's interesting to watch how they work and the kinds of outputs they produce. Quite a lot of the stuff works... mostly... It's entirely untestable, not repeatable, undocumented and just stuck together with flaky glue code. Sure, if you aiming to "make it work" you can do that.…

This is a false dichotomy. I'm a self-taught programmer and the software I develop has full test coverage as well as thorough documentation.

Proper technique and best practices are definitely important. They can, however, be a part of the self-learning process, just like learning how to write the program itself.

Re: How to become a programmer, or the art of Googling well

#129
post #73

Earlier quoted context omitted.

How long have you been living in Britain, for people to think you're British from your accent? I started pretty much the same way, trying to make sense of C++ and VB manuals when I was young and I think I have pretty good reading and writing skills now, although a native speaker can notice English is not my primary language. Spoken English is still an obstacle for me, I moved to London a year ago, I got a pretty good…

About a year now. My spoken English was pretty rough back then, but I started copying the sounds I heard when other people spoke, and it seems to have helped. Yeah, it's a lot harder to convey thoughts by speech in a foreign language, and I think it's because you have to make a conscious effort to find the right words or expressions. It's like getting data from RAM (foreign language) or from the L1 cache (native). It…

I would guess you aren't thinking in the language in question. You are translating your native language sentence into the appropriate english sentence on the fly. To use a programming analogy, it is like writing Haskell code as if it was C. Because you aren't thinking functionally, for every imperative step the C code in your head takes you have to translate it to some sort of functional analog.

You can get through it, but it is slower, and looks "funny" to a "native".

Re: How to become a programmer, or the art of Googling well

#130

This was fun to read. What I saw was someone say that they were panicking because they needed time to understand how all the things that go into learning to be a researcher goes into learning how to be a professional programmer. I'm quite sure his mind will be blown once he realizes that creating things, while incredibly rewarding, is only half the work. The other half is getting someone else to use your widget. Also…

>>but what really pushed me was getting a job, on campus, writing software to support PhD candidates in another discipline. I quickly made the jump from researcher to practicum precisely because I was trained as a researcher, then applied those skills to understanding what my customers needed.

I think what allowed you to make that jump was that you were inherently familiar with the problem domain; even though your customers did research in another discipline, at the end of the day they were still researchers.

I was the lead trainer at my company, and the training materials (hundreds of pages of them) used to be on Word documents. I got fed up with it, taught myself Rails, developed and deployed a learning management system, and migrated the content there. It was very successful because as the lead trainer, I knew exactly what features would be needed and how they should work. It was kind of funny actually because when I gave a demo to the trainers in other teams, they basically said, "wow, this is exactly what we need -- when can we start using it?" Which is music to any programmer's ears.

Post reply on HN