views:

255

answers:

7

I have a friend who is a graphic and web designer and he has been involved in programming in some projects, he has learned himself some ActionScript and his logic is good, also he has been in touch with PHP and he's not so bad (he has no formal programming training).

We both live in Mexico and here the salary of a graphic or web designer is really low compared to the salary of a programmer (he doesn't want to be a senior programmer but just be able to do some tasks and maybe freelance), so he wants to change his profession and I want to help him.

The reason of change is not just the money but for create a professional career, he is decided to invest time and effort, and that's the reason I decided to help him

What are your suggestions for making a training program for my friend? I was thinking about teaching him PHP (as he has experience with it) and mySQL for making a blog app at the beginning. If I'd choose PHP... What would be next? What do you think is the probability of success?

The main purpose of the question is not to create a discussion about this but to get help making a training program for him based on your appreciated suggestions

CONCLUSION - Just for closing this, I decided to use what he knows about ActionScript to teach him OOP (he already knows the OOP sintax in AS and I'm fluent on it) and after this maybe we'll take a look to Ruby on Rails (because he already knows HTML and it has more sense to a web-developer to program something with output on a web page and not in a console). I discarded PHP. Thanks a lot!

A: 

I would advise that if one wants to be a decent developer/programmer one needs to start with some basics - like the data structures, algorithms, OO - nothing too complex, but a basic understanding. The next step is to practice, practice and practice. And look at lots of good code examples - open source projects provide plenty of opportunities (though quality can sometimes vary). With the right analytical approach and understanding of what is actually going on - chances are pretty good to succeed. You have to be sure though that you want to do programming - without a hint of passion your are doomed to be just an average in which case I would think that being a really good designer should still pay better than being an average developer.

mfloryan
Since he started to work he has been focused in multimedia design cuz he found passion in making things move and have a behaviour. His decision of change is not just because of the money but also because he likes programming more.
victor hugo
A: 

Looks like you're just looking for page views...

Anyway, you could always tell him to make a portfolio for himself. Chances of success depend completely on him.

vidalsasoon
In what terms does this answer resolve my question?
victor hugo
@vicotr - oh give me a break... as if you're gonna train one of your friends and expect a traning manual from us! such a vague question was asked to get a lot of responses from the SO crowd.
vidalsasoon
Yeah! This question will make me the next John Skeet ;)!
victor hugo
A: 

That depends entirely on the person and his level of motivation.

If he wants to make a career out of it I think it'd be better to start at a lower level language like C++ and learn fundamentals before trying to jump right in.

Learning to program is greater than learning a language

McAden
+2  A: 

Trying to dive headfirst from scripting into web based programming is a big step. I'd suggest starting him on a more structured general purpose language like Java, C++ or Visual Basic which can be used to build CLI applications and evaluate from there.

Jherico
A: 

I think anyone can become a programmer. So yes, a graphic designer can become one :-)

However, I would strongly recommend that PHP should not be used to learn programming, as the language lacks a lot of fundamental features that are common to other languages.

I would start with a more object oriented language like Java, C#, or Python. Learning any of those languages will teach you various object oriented features that you need to know if you're trying to program as a profession. Also, most jobs out there are for Java or C# positions, so knowing this will increase the chances of being employed.

LeeMobile
+3  A: 

A good combination of a graphic designer and a programmer could be golden. The question is whether your friend is willing to invest time (and nerves ;) to teach his brain to think like a programmer (that's what basically "learning programming" amounts to).

PHP is a good choice for extending skills in Web development, but if he feels ambitious, I suggest also starting to learn some object-oriented lamguage (Java or C# would not be bad choices). To at least get some basics about OO paradigm.

Igor Brejc
+5  A: 

If you're going to be teaching him, teach him something you're comfortable with, so that you have the answers to his questions.

It almost doesn't matter what language or technology you start with, he just needs to learn what programming is about in general. Most languages are pretty similar to each other.

Don't send him off to do Ruby because you've heard it's easy for beginners to do ruby, yet you have not used it very much. It is easier to learn if your teacher is very fluent in the language.

Kekoa
Precisely I was thinking about teaching him Ruby but your point is good, I'm not fluent in Ruby :D! Hehehe
victor hugo