Posted by cpelham on August 22, 2008 at 6:08am
I have some programming background but would like to learn php enough to become a developer instead of just a dabbler. I've read a php book and of course read things online but would like a good class in order to go through the process of doing homework, etc. to really absorb it. Can anyone suggest the best places to learn in NYC? Does anyone teach php specifically for Drupal? Would anyone like to tutor me (for a fee, of course)? There might be other people who'd also like to learn and maybe we could create an ongoing class or something?

Comments
I would absolutely
I would absolutely participate in a PHP-for-drupal class (ie. Pay to attend). I'm not a coder, and when I try to learn PHP in general on my own, it's often too broad to put to good drupal use (or too specific in the wrong direction). It's also difficult because I learn best by being able to apply new learning to something I'm working on, but I'm building drupal sites, not coding an app or a site from scratch (which is what most php resources assume you are doing). Having a teacher to put it all into context would be invaluable. This is something I've been looking for for some time now; thanks for thinking to create the post.
Intermediate Drupal Class
I would certainly sign up too.
Regular sessions of how to get basic Drupal/PHP/SQL interactivity to work taught by an experienced developer who is willing to take things slow and give explanations when necessary would be extremely valuable.
Drupal Camp attempts to do this but is compressed into a short time frame and there are too many people for anyone to get much individual attention
Just for the sake of discussion, if 8 people were willing to pay $80 per 2 hour session that would get the instructor $640.00 per session. Of course the need for a room with network connections would be an issue, but there are plenty of pay per use office suites that would probably work inexpensively.
Also, the teaching responsibilities could be split among a few developers each one teaching a session or two.
I would be willing to look into space availability and help organize a program if there were enough experienced instructors and interested attendees to make this a reality.
Some Options
I was in those shoes a few months ago; I wanted to take a deep dive into PHP and Drupal instead of just using the GUI.
Ultimately, what I did was read some books on PHP and Drupal (e.g., Pro Drupal Development) and then found a PHP/Drupal tutor, who happens to be Oleg (litwol). He sat down with me for three 3-hour sessions during which I raised any questions I had from the books, and then he provided me with some direction and assignments. Since then I've been using the great tutorials from Drupal.org, accessing the <a href="http://api.drupal.org>Drupal API and PHP.net's reference guide, and leveraging blogs and IRC. At this point I'm trying to build my first customized Drupal-site to apply everything I've been learning. I don't know what Oleg's availability is, but I'd definitely recommend him as a teacher.
However, before taking the route I did, I also found some other PHP-centric options:
NYU Continuing Education
If you want a highly structured environment, you can look into NYU's continuing education courses in Web Development. For example, they have a PHP course that consists of ten 3-hour sessions. This course costs $1,045. While it might seem like a large lump-sum, if you break it down on a per hour basis, it only costs $35/hour. (Note: I don't know if there are extra registration fees, taxed, etc.) Only you can judge whether this is too high or affordable. There's also a full catalog of web development courses.
NYC PHP Users Group
Another option is reaching out to the NYC PHP Group and posting a message there. When I did that, I got several responses. Not everyone was familiar with Drupal (of course we'd all expect there to be more Drupal expertise here), but if you just want to start with PHP this may be the place.
That being said, I think wildfeed's idea is great.
Hope this helps,
Stuart
I'd be happy to do this
I'd love to run session like this if people need something that they're not getting from the meetups, camps, books and documentation. I've been doing Drupal training for a while now, both corporate and for individuals. I prefer to keep groups pretty small so that the differences between people's skills and interests aren't too wide. I've got space available downtown, so that wouldn't be an issue.
I wouldn't claim to be a PHP whizz, but I can do the important stuff which is guiding people through how to use PHP to develop Drupal modules & themes.
Get in touch if you'd like to take this forward!
The other alternative would be to put this forward as an idea for the meetup following this one. It seems a pretty good fit - as a topic it could be broken up into different areas - php for theming (to build on this month's meetup), php for modules, basic, advanced, etc.
http://www.thomasturnbull.com
http://twitter.com/thomasturnbull
You've hit it spot on. This
You've hit it spot on. This is the kind of stuff i would like to launch within the group. This month's meetup is a test run if we can pull off a real educational meetup. the more people we educate the more people will contribute back! lets pay close attention to what will work and what will fail in this month's meetup and build on top of that. lets discuss an actual plan of action to accomplish this.
------------------
Sometimes interesting things appears on http://litwol.com
great idea
Other than the thought of charging money, I think this is a great idea.
I know of three organizations that would most likely provide space for free to help enable such technology skills sharing classes.
On Charging Money...
I would love to be on the receiving end of a skills sharing class although I would never ask people for their time without offering something in return. My thought has never been to exclude those who cannot afford it.
I've been a member or the NYC DUG for about 18 months and it has been great. Aside from being really flattered by having my design for the sticker accepted, I'm extremely happy to finally be able to contribute something to the group, especially something that supports its identity and sense of community.
something in return. not always money.
I have a lot of respect for what you are saying. It is clear that you understand the value and don't take for granted when people share knowledge.
What follows are some thoughts I have on this topic, they are not intended as a criticism of you, this just seemed like as good a place as any to post them.
I believe it's best when we draw a clear line between things done for and by the community and things done for money by people in the community.
Free Software communities are generally built around the concept of gift economy. By giving code and knowledge away, we know that we will get something back in the long run.
I have fears, based on seeing past experiments go bad, of a confusion being created when there is no clear line between the group doing an event where you exchange some cash as a thank you and a for-profit venture from members of the group.
I have done trainings as part of my professional life, in those cases it is clear that I am acting in my capacity within the company I work for. Even though that company has a long history of participating in and giving back to various Free Software communities, for me, it is important to make it clear when I am acting as a part of the community and when I am acting as part of a company or other organization I play a role in.
When I do trainings and skills sharing within the community, I am paying back my debt/fulfilling the implicit responsibility towards the community that comes from using Free Software.
I would like to see the events that are done within this community be based on that understanding of responsibility, community and the long-term value that exists in the free sharing of code and information.
Awesome idea
I too would love to expand my PHP knowledge and would be totally into this. Thanks for bringing up the idea!
php for Drupal training
Great! Since there is clearly interest, why don't we discuss this more at the conclusion of or following next week's meetup?
Christopher Pelham
Director
CRS (Center for Remembering & Sharing)
http://www.crsny.org
CRS (Center for Remembering & Sharing) is an arts & healing center located just south of Union Square in Manhattan.
I would like to say that I
I would like to say that I am working on things to push towards this kind of educational system from within our community. Please allow us time and work with us to pull this off.
People that request to be put on the right track and educated, please be verbose about what you would like to learn. the more you tell us the more we know how to satisfy your need.
People that know this stuff and are willing to teach, Please come to the front and let people know that you wish to do this. even if you dont know how to teach we will help you. just knowing this material and willing to share it is enough to start you off.
------------------
Sometimes interesting things appears on http://litwol.com
I'm also interested
I'm also interested
I think the NYC drupal group
I think the NYC drupal group is taking some good steps in starting these type of meetings especially with breaking up the meetings to multiple presentation.
I wouldn't mind teaching a class on php and how it ties in to module development. I would never claim to be an expert at any subject that includes drupal or php but I'm always willing to share my knowledge but like Oleg said everyone needs to be more specific on what they want to learn.
I used to offer a course
Hi,
I used to offer a course for complete beginners. The basic idea, iirc, was to go from basic html to webmastering your own site that you built in class on Drupal. I had it mapped to 4 stages, 3weeks, 1 day a week. In this manner people comfortable with there localhost and basic html (and severeral other basic concepts) could skip weeks 1-3.
I worked out a syllabus and some class schedule but never got any takers. People seemed more interested in an instant fix. 12 weeks was way too long to take to learn this stuff :)
I'd be fine dusting this off again if people are interested. I would probably charge for my time, but could be persuaded otherwise. Something on this scale though is a serious time commitment.
Similarly, I can probably work a deal with my office for a weekend day. But would need to confirm that.
Advomatic
CNDP, LLC
Very Interested!
If you decide to proceed, count me in.
About the basic part, perhaps you could shorten that up as many seem to have basic skills. If you provided reference material to help fill in gaps I think you could move a class forward from that point.
I've stated before, I'll pay a reasonable fee. IMO if you kept the cost reasonable you would essentially be covering your expenses and still be giving something back to the community. Eric's recent post advises caution when members of the community profit from community activities and I respect his point of view, but even so, living in the most expensive city in the world means it costs money just to break even.
Original Syllabus
I would definitely do this differently now. This was created tailored to my strengths 2-3 years ago. Also, in retrospect class times need to be doubled at least, or twice a week. And the emphasis on differrent sections needs to be completely reworked. However, as a point of departure, this was from the original ad I placed for this idea:
CNDP, LLC
How to make it free.
I am really interested in this idea as well.
I do a lot of support in #drupal-support and there seems to be a general crying need for this type of training, as Drupal attracts more and more people who know little more than HTML, some CSS, and almost no PHP or server stuff, figuring out ways to train people can become a real strength that many Free Software communities are lacking.
I am also willing to share my knowledge.
If one person were to take on the responsibility to develop the syllabus, prepare for the classes, teach the classes, and possibly review the work that their students were doing, they should almost definitely get compensated for their time. That is a huge commitment to make for little more than the good feeling you get for doing it.
However, I tend to agree that things done for the community should be free whenever feasible.
Looking over this thread, I'm counting at least five people (myself included) who have said that they would be interested in teaching. This is where we can get the cost savings, and thus offer this as a free resource to the community.
If a few of us decide to move forward as co-teachers, this reduces the time commitment of the individual significantly. Between the five of us, I am sure we could cover a huge amount of basic PHP, Drupal coding style, hooks, FAPI, etc. over a five week period. I'm envisioning one laid back syllabus meeting for the teachers, where we would break up who is teaching what. Then each week, someone would come in and do their thing. Asking for two nights of free labor is vastly different than asking for a solid 5+ week commitment.
This would make for a really interesting collaboration between teachers and allow people to teach their strengths, rather than having to stay one week ahead of the students.
php for Drupal class: how to make it free
This sounds like a good idea. I say that though as a potential student rather than as a potential teacher. Depending on the class size and time, I might be able to provide space for the class at my arts/healing center near Union Square.
Christopher Pelham
Director
CRS (Center for Remembering & Sharing)
http://www.crsny.org
CRS (Center for Remembering & Sharing) is an arts & healing center located just south of Union Square in Manhattan.
Spot on!
A teaching community is a great solution. Can this be discussed at the meetup and possibly refined at Drupal Camp?
where to discuss
can we keep the discussion here for now, and then move it to some face-to-face meetings once the idea is a bit more developed?
From the agenda litwol posted, I think the meetups are already overloaded for there to be any substantial discussion on this topic.
It could be possible to pull off the first face-to-face about this during drupalcamp, it might be hard to do on saturday since most of those interested in this idea will be running sessions, but I can see it being possible on Sunday (and it fits the proposed format for sunday sessions).
php for Drupal
I am the one who first asked for the class. You guys are free to do whatever you want, but that schedule doesn't work for me. I will not be at Drupal camp for one, and, if I do not find a teacher within the Drupal community in the next week, I will likely register for the NYU class (although it is not impossible that I take the NYU class and a Drupal community class). But I asked if someone in the DrupalNYC group could teach this class so I could avoid taking the NYU class.
Christopher Pelham
Director
CRS (Center for Remembering & Sharing)
http://www.crsny.org
CRS (Center for Remembering & Sharing) is an arts & healing center located just south of Union Square in Manhattan.
Great idea!
I also think this would make for a great book. Learning PHP/MySQL in the abstract was not helpful at all when I decided to make the jump to developing, and I looked far and wide (in vain) for such a class. Even though I've now been developing full time for a year and a half I still would benefit from something like this.
Alex Urevick-Ackelsberg
ZivTech: Illuminating Technology
Alex Urevick-Ackelsberg
ZivTech: Illuminating Technology
I've got the proposal halfway written...
If I ever have time to do half of the things in my head it will be a miracle. The idea would be to have chapters in a book that trace the flow of an HTML request, and build up to 'dynamic html with php', 'storing data with mysql, and ends the book with performance tuning.
Cause you hit the nail on the head. I can't count the number of times when I was learning that I was poring over a module trying to solve a DNS problem or looking in CSS to solve an html problem.
Advomatic
CNDP, LLC
Great idea!!! I'm pretty
Great idea!!! I'm pretty good with PHP but a camp-style setting with fewer people on, say, writing modules or something would be worth $80.
Organizing Community Education
I would like to help organize the Community Education Component of the NYC User Group. Please make any suggestions as to how this should be structured and posted on the website along with your thoughts regarding operational guidelines and curriculum.
My plan is to solicit volunteers from those capable of teaching, give interested students a place to sign up and post a syllabus that serves the group. Sam Tresler posted a very workable course outline.
The issue of location needs to be resolved, so if anyone has access to a conference room and can host, that would be great. Otherwise I can begin to look for possible classrooms.
I would like the group to determine how this program is organized. If there is someone better qualified to organize this effort, I urge them to step forward.
Disclaimer: I have a personal interest. I would like to learn to be far more effective at developing and themeing Drupal sites.
Thanks for taking the initiative
Thanks for taking the initiative wildfeed. Talk to Oleg about organizing topic specific classes. I like Sam's outline above. There is so much to Drupal that it is impossible to even cover the basics in one session.
For example, setting up a local development environment could easily be a 2-3 hour class that goes through setting up the local dev, dealing with issues and quirks users are certain to encounter, and managing data transfer from and to the remote server and live site.
In fact, each program used in local dev environments could be a 2 hour class in itself e.g. terminal, subversion, mamp, Navicat, Zend Studio, etc. P.S. I'd be willing to pay someone to setup my local dev and teach me best practices for working with the applications I just mentioned. I'm sure we could get a group together just around this topic.
Thanks for volunteering to do this
Its great that you are stepping to help push this idea towards reality.
I think we can handle signing up and posting the syllabus through g.d.o, similar to the way the upcoming camp is being handled.
As far as generating a syllabus, I like Sam's outline, and those of us stepping up to teach could definitely break that up and tweak it to reflect our skill sets, and the needs of those looking to learn. I really like the idea of breaking it up into sections so that you can jump in where your skill sets drop off.
Eric mentioned that he can think of three organizations that might be willing to provide space. If there is a solid interest (as there seems to be), perhaps we should inquire about availability of those spaces.
The fact that you are active in the group, and stepping up to facilitate this process is qualification enough for me.
My thoughts on organization is that we figure out who will be teaching, and those folks figure out a rough syllabus that they present to the group, through g.d.o. There, perspective attendees and other interested parties can give feedback and share their thoughts or ask for foo to be covered instead of bar.
Ultimately, those teaching the classes will have to decide on their ability to teach certain topics, but given the wide range of talents in this group I don't anticipate people asking for things that someone doesn't know.
Nothing wrong with that.
I may be able to host
At our offices on weekends. If the group were <10. Ideally less than 6-8. I don't like large class sizes for detailed work. Big intro sections for large classes are fine, but not when dealing with really getting to the nuts and bolts.
Advomatic
CNDP, LLC
If you guys would like me to
If you guys would like me to orchestrate this, i would be happy to help. If anyone else would like to take the torch and run with it they are welcome. I really would like to see some wheels turning.
How would you like to proceed ?
------------------
Sometimes interesting things appears on http://litwol.com
I can't find where, but I
I can't find where, but I thought I saw someone talking somewhere about doing a BOF at camp, where this idea gets discussed in somewhat more detail.
Even if that's not the talk going around, I think it makes sense to have an informal discussion about this at camp, using this thread as a catalyst for discussion. We can than reflect that discussion back onto g.d.o (either on this thread or a new one). This is a broad enough topic that it really warrants a little face to face time, so we can have a rapid fire discussion. And, since DrupalCamp5 is this weekend, its not that long to wait.
I also thought we would discuss it at Drupal Camp, but..
If you want to get a head start, I think the way to go is as follows:
Agree on a syllabus: http://groups.drupal.org/node/14181#comment-47400 is a good place to start.
Set class size (8 students per session seems reasonable)
Create Signups for Instructors
Organize schedule and secure locations
Allow students to sign up
If this works well there is a possibility that enough instructors will volunteer that the burden of teaching will be distributed among enough volunteers, eliminating the need for paying an instructor. If not, we will have to decide if some form of payment will be required and if it will be necessary to rent space.
In the spirit of exchanging skills, I volunteer to do sessions on the following topics if there are enough members interested:
Photoshop for Ninjas: How to leverage the power of Adobe Photoshop to create site graphics.
Prinicples of Graphic Design: How to make the most of a stock theme.
Discussion of expanded educational initiative for NY DUG
A panel to discuss the objectives of the educational component to the NY Group examined possible initiatives on Sunday 9/14.
In attendance were litwol, ixlr8, winstond, tresler, gnat, eric and wildfeed.
Highlights were as follows:
PolyTech is willing to make classroom space available with the stipulation that their students are allowed to attend sessions.
In order to go forward the group must analyze the educational needs of the membership: Who will participate and what do they need to learn? Posting a questionnaire to address this was suggested.
winstond is a training professional. He feels that a single instructor can handle a group of up to 16 people and still have it be hands-on.
A basic curriculum was discussed and a diagram drawn which will be posted later.
An initial session would outline what a student would need to know to develop for the web and help clarify their reasons for learning and using Drupal.
An Intro to Drupal track that covered setting up a server environment (local host), Drupal installation, principles of site configuration and administration would be next.
Comprehensive discussions of PHP, CSS, MySQL, HTML, Apache as they relate to Drupal would follow.
Advanced tracks would cover Theming, Code development, and Systems adminstration/server practices.
Also suggested was setting up the training to explain the concepts, provide students with a work at home assignment, followed by a discussion of how those were accomplished and problem solving.
A number of possible instructors emerged, but the consensus is that to induce the more experienced members to participate as instructors they would limit their participation to two sessions. If teaching required a greater time commitment it will be hard to get volunteers and financial incentives may be necessary.
php for Drupal class
I am really sorry I had to be out of town last weekend and could not attend the camp. I am so pleased that folks have really made such an effort to respond to my request for a class. I applaud you guys for working out a generous and practical arrangement with PolyTech and for setting out a roadmap of sorts. However, I doubt that I will be able to attend a class that is held in Brooklyn. If enough people can attend, then I encourage you to go forward with this plan, but if so, I would still like to find someone to teach php for Drupal (module development and issue queue problem solving and feature development for existing modules like Views, Panels, etc) here in Manhattan, either at my office near Union Square or somewhere else convenient to transportation.
Christopher Pelham
Director
CRS (Center for Remembering & Sharing)
http://www.crsny.org
CRS (Center for Remembering & Sharing) is an arts & healing center located just south of Union Square in Manhattan.
Trying to move forward with Education and Training
I have posted a Poll at http://groups.drupal.org/node/16517#comment-56508 to get feedback on what topics and curriculum might work. If you are interested in participating, please vote.