On Tue, Jul 21, 2009 at 10:14 PM, Wayne Lam<[log in to unmask]> wrote: > Hi all, > > I am new in here and i am currently worked in the library too. > I am always confused that when i read the post in here, there are always > something i don't understand > and there are so much to learn. > So, the question is, hows everybody learns to be a good coder for > libraries, what s the secret and what > kind of technology are most important to learn? > Hi Wayne, There's lots of projects out there in library land and I feel like I rarely know as much about all the projects and technologies as I would like. That being said, what is your background as far as programming and computing in general? Also, do you prefer to learn from classes, working with one or two people, or are you a solitary learner? I guess for now I'm going to assume you're working in a library and want to learn how to be a programmer. If you're really interested in programming and you are very new to the field, I'd say the best thing would be to take some basic computer science classes like systems architecture, algorithms, programming 101, database 101, and a software engineering course. Whenever you get an assignment where you can chose what to do, do a problem related to libraries. Programming a lot will get you comfortable with programming, learning more about how everything works and looking at other people's work should make you a better programmer. As far as languages, I'd probably lean towards ruby or python for starters or maybe Java. Then move into php after you have a grasp of good programming practice. You'll also figure out more what you like to work on. One issue is with most college-level cs courses is that they teach theory but they're not going to teach the tools that will be really useful to learn for day-to-day programming and practice. Start playing around with different Integrated Development Environments (IDEs). Maybe try to install something like Gforge onto a spare machine. Get into the habit of using a version control system like svn or git. I have a tendency to recommend having a linux computer to learn programming on, although windows/microsoft have become better again about providing tools for the learning programmer. Get comfortable using the command line, there's plenty of documentation out there now. If you already have the computer background but are more curious in library software, that's a whole other set of answers ;). Jon Gorman