Community & Support

I need your opinions (learning Drupal)

So i've spent the past 6 months learning drupal,html,and php, watching 50+ hours of video tutorials on drupal. And even now I feel like I still don't get the bigger picture. It's like drupal is just some magic black box only uber coders understand, and if you want to do something really custom you got to make your own module. Now I'm getting close to finishing the fundamentals of php, and have started reading pro drupal developer, but I want to know what you guys or gals use to learn drupal. It seems that most "get it" to a level I can't really relate to. And I've tried to read through drupal.org, and with no disrespect intended I subjectively find the layout of information related to drupal horrible. Somedays I will tell myself I want to learn a subject like drupal themeing and with drupal.org's never ending link (book) structure, what seems like 5 pages is actually 10+ with code snippets only a drupal developer would know how to understand. That and poor documentation of some modules make what was intended to simplify my life in to that much more complicated. Do I really just have to hack myself through the drupal core, do i need to learn drupals 100+ specialized hooks to get it to do what I really want? Granted you can always say hey man, what do you want to do?, oh ya there's a module for that. But if I don't get how it all comes together, I could really get myself in trouble when things occasionally go bad.

What am i missing? How do you guys learn this stuff? There's got to be the ultimate resource I don't know about that the modder's know about. It seems the more I learn, the more I don't understand.

Favorite Tutorials:
Gotdrupal.com
Mustardseedmedia.com
learnbythedrop.com

Reviewed Already:
lynda.com Essential Drupal training
lynda.com themeing drupal

Comments

_

I would recommend to work your way through one of the books that take you step-by-step through Drupal.

They start with the basics of setting up Xampp or similar - this may not be relevant for you - but even though, you are getting some experience with URL settings, path, settings.php - etc. that will come in handy later.
You will go through a lot of simple (often too simple) tasks - but see this as learning and more though practice - repeatedly doing things gives you confidence and routine.
Follow one or more of these books and from the level you feel you are at and work up a bit. Set-up one of the websites they are proposing to take you through - I followed the restaurant trail of David Mercer - not so exiting I often thought - but it gave me a good base.
I am not a coder. My job is anyway more strategic and develop some sites for particular businesses besides, though, related to my regular consulting business.

I take the time to help in the forum - like commenting here - and I can see how this helps me to learn. Initially I asked questions - then I tried to report back solutions when I found them - a little tedious - but it works - great learning curve.

I used some paid, professional help along the way and still and will always do - but always on the basis I learn from what they do - so all is documented by them - how it should be anyway.

In my case I feel now I am getting somewhere easily - 1y 43w down the line. After 1y i probably felt quite confident.

But there were some 20 or so websites along the way and lots of late nights, frustration and just keeping at it - the latest was Twitter to change their apps system and announcing it days later - http://drupal.org/node/404470 - 120 plus comments in a few days of people trying to resolve a problem of big boys (Twitter) not telling on time, dev status modules, ....

Don't give up - in my mind Drupal is worth the effort and will be around for long to give all people the power to do a lot of things in the web that was not even possible for the most prof. coders not that long ago.

-----------
Good luck .....
the results of trying Drupal just once are
www.mallsandmore.com
www.sds-i.com
www.proRotaTherm.com

If you are not a php coder,

If you are not a php coder, then the Pro Drupal Development book is not a good place to start. It is not really written for people who are not confident with php already and the examples only cover individual functions and are not tied together.

You can do a lot with Drupal without module development (it can be hard sometimes to find the correct module to do a specific function because there are so many now) and can build theming by building sub-themes with a knowledge of css, html and only basic php (I actually learnt a lot from the handbook theming guide).

I agree with you that the Drupal site is not that well organised. There is a lot of good information but it can be spread over different sections of the handbook and the forums and, not forgetting, other sites which deal with Drupal - don't limit yourself just to this one. A lot of the Drupal pages are also written by highly knowledgable and experienced developers, but they assume a certain degree of knowledge that beginners may lack. Don't be afraid to add comments to pages to ask questions or post questions on the forums.

I suggest the following ways to learn Drupal:
Build yourself a site - nothing beats hands-on experience. It doesn't matter if it is only on your local PC rather than on a server. If you have an idea then that is good, or try to copy another site's functionality using Drupal. This will get you to use a lot of the main modules (Views, Panels, CCK, etc) and theming. Don't get too attached to the site as you may end up wiping it and starting again when you find how to do things better.

Read some of the forum posts as they come up. This will let you see what others are doing and what solutions are suggested. You may end up knowing some of the answers from things you have read or from similar posts just a few days before and posting your own replies.

Look at some of the (simpler) modules you use. Are then any bugs? Are there any features you would like? If no one else has posted a similar issue on the module, post one yourself. Think how you would solve it and (possibly) write a patch and submit it.

If you need help with anything, don't just rely on Drupal.org. Use google to do a wider search as there are a lot of sites out there with information and many of them explain things a lot better and have videos to follow.

One last thing, I don't think you ever stop learning with Drupal. As soon as you are confident with one version they bring out a new one and you have to learn aspects all over again.

-- SweeneyTodd

Thanks

Well thanks for the input. I will keep on keeping on, one step at a time I suppose.

For me one of the biggest

For me one of the biggest learning curves for learning Drupal (and other cms's) was understanding PHP. I already knew (X)HTML, CSS, and some other programming languages. I've found the learning curve pretty steep.

Besides books something that really helped me was the PHP website. Everything is pretty well explained, although sometimes difficult to understand, it usually has extra examples at the bottom, and there are some good tutorials on the web as well. Once you start to understand PHP, Drupal becomes a lot easier to understand as well.

Take a look at the API as well. Although it can be overwhelming at first, it gave me a lot of clues.

For me for example, it took me awhile to understand what:

{

}

means (can be compared a little to a paragraph in a piece of text). Once you get those basics, and understand what variables, functions, arguments, if statements, and arrays are, life will get a lot easier.

Don't focus too much on the code examples on drupal.org, I've found too many times that they don't work, but learn to read and write from scratch. Don't depend on modules too much either. People can stop maintaining modules, it can contain bugs, etc. Yes, it's good to help out and fix those, and yes there are excellent modules out there, but when learning Drupal, don't add too many modules at once. Too many things going on then to figure out. Turn on one (core1/ contributed) module at a time, figure out what it does, what kind of theme output does it create. What are the options for it. It's a beginner's mistake to want to install all kinds of modules, and that may be fine for users, but when you're building a site I've found myself overwhelmed sometimes. Finally a lot of times documentation for modules can be found in the module folder under names such as readme.txt or install.txt.

Also I've learned to do things in Drupal in small steps. Set up a development website instead of working on a main site. Create a few content pieces first, and build your website from there, instead of importing the entire database, only to find out you mangled your development site half way down the line, and having to start all over. Always keep backups, and save your database and files at key points in the development cycle.

It's a bit like learning a strange language. At first you don't understand a word, slowly you start to recognize small 'words' and 'sentences', and before you know you'll be able to speak it.

Hope it helps, and open to feedback. This is how I experienced getting started with Drupal while learning PHP along the way, it's been a rocky road to say the least. But once you understand it a bit, you'll never want to work with anything else, simply because it does it all, or can. And that is one of the things that make open source systems such as Drupal beautiful.

1 Please note that, at the time of writing, there are some core modules which are needed for the basic operation of the cms, and should not be turned off or uninstalled. These modules are listed seperately on the modules page.

----

Have some spare time? Consider helping, and fixing bugs. :-)

Learning something is

Learning something is completely different from practicing it, as in all fields you just memorize the information, methods, data in your mind trying to collect them and not forget them, however, without using them correctly.
The best way to prevent this is through practicing drupal, for at least a week everyday and you will find it easy, after 1 month it will be like drinking some water, is it difficult?

Shop with [url=http://www.promotional-coupon-code.com]coupons[/url] like [url=http://www.promotional-coupon-code.com/neato.com/]Neato coupon codes[/url] to save.

hands down the best tutorials i ever watched:
beginlearningdrupal.com
the person that created it made it for designers

nobody click here