Hi all,

I had many years’ experience as a cobol programmer before, but now I am really into web and mobile development, so I start to learn PHP, JS, HTML, CSS myself by reading books and playing around with the code examples in those books. I am also creating my own website using these technologies.

Currently I am watching a computer science course which uses C(to describe algorithms), I learned C many years ago and never used it in my work. But that course makes me eager to review C and those algorithms. My question is:

1. My goal is to become a professional web and mobile developer. Will it be of great help if I review C and the algorithms(by watching CS50 and reading K&R)? I know that algorithmsand data structures are fundamentals to good programmers, the question is: whether I need to learn it at the same time with learning PHP, JS, HTML? Or I should focus on PHP, JS, HTML first, after getting a web developer job, then I can review C and algorisms later?

2. I never used OOP in my work, but today PHP and JS are all OO languages. I plan to lay a solid OO foundation by learning C#, and guess after that it would be easier for me to use the OO part of PHP and JS. Also I want to develop mobile apps using Mono(use C#) later. Could you give me some advice?

3. Is it better to join an open source project to gain some real experience, especially for a self-learner like me? I just don't know where to start.