|
|
|
|
|
by niels_olson
5394 days ago
|
|
> don't just point them at Google. Tell them YOUR story ... and .. what YOU would do differently ... > Use your friends These are good bits of advice. I would also encourage folks here to realize just how far programming is from what most people do all day. When you live in Windows XP all day, grew up with Windows, and spend your time talking with people about, in my case, medicine, and family in the evenings, programming isn't even on the periphery. It's on the other side of a freaking ocean. In the few occasions I've actually met a programmer and talked with them, it is a fantastically rare luxury, and I have learned to try and ask the best questions I can when I have those moments. Most don't want to "talk about work". It can be a long (years) slog. In my case I had to figure out enough networking to be given an old CPU in exchange for setting up a router. Then figuring out how to burn and load a SuSE on it (10.3, with a very broken Zypper -- imagine suffering with that as your first distro when you don't even know if it's your fault and don't know anyone who can help). Then I had to figure out enough command line stuff to not be totally lost (and forget huge numbers of one-liners, not sure if they would be useful in the future). Then try about 10 different languages trying to find what works. Oh, did I mention learning Vi and Emacs with nothing but Google? To anyone out there alone in the woods, trying to learn this on their own, I definitely recommend buying Lutz's Learning Python and read what of it you need to while working through Zed Shaw's Learn Python the Hard Way. And have questions ready in case you ever find yourself sitting next to a professional programmer on a bus in Okinawa. |
|
I don't get a lot of chance to code, but I do enjoy scripting. Google is fantastic at answering questions when I know what it is I want to do. But it's terrible at preventing bad habits. "But this guy on this website said do -foo- and it works perfectly!", to which my mentor says "yuk yuk yuk yuk. do not do that. It does not scale. It relies on -bar-. And most importantly, it's revealed that you do not understand the concepts behind why you are doing -foo- and what it is you actually want to achieve".
I'm extremely fortunate in that I have access to a very good mentor who loves chewing the tech fat with me and genuinely loves sharing tech info with anyone at any level. I don't take enough time to take advantage of him, but I recognise that it's really rare to have someone who is both highly skilled, a good teacher, and motivated.
Google is great for the things that google is great at. But it does not take the place of a good mentor. I've read code sample after code sample and made a script do -foo-, but my mentor has picked up some subtely as to why I should be doing -bar- instead.
To some extent, it's reflected in the "RTFM" ideology. Man pages are great... if you already know what you're doing. If you're new to a concept, they vary from 'great' to 'fucking abysmal', as they take all sorts of knowledge for granted. Telling someone "just go learn from the documentation" is slightly evil, in my opinion. Yes, absolutely, there must be a culture where you go for the documentation early and often, but guidance and direction from experts is extremely important.