First let me define a sample:

- a sample is not a showcase

So I am not looking for list of sites, those are developed based on drupal (powered by drupal). That's what I do not want.

I want source code of a sample site which shows different aspects of drupal coding; by different implementations of modules, blocks, working with menus, themes, ....

For example http://www.dinnernow.net/ is a sample for learning ASP.NET 3.5; implementation of different layers; description of possible techniques (like AJAX,...), blah blah blah - with source code: IT'S PURPOSE IS TO BE A COMPLETE SAMPLE.

Thanks in advance :)

- I hope such things actually exists! ;)

Comments

yelvington’s picture

Source code is all in the downloadable files.

What makes a Drupal site interesting is the configuration, not code.

In the Drupal community, configurations are often called recipes, and there's an entire handbook section devoted to them.

If you carry the concept one step further, it's possible to write code that automates the configuration process. The result is installation profiles.

ksh2drupal’s picture

Thanks!

Assume I am going to develop a new site for a recording company; What must I do?

Some of them are (I think) (This is a scenario; I ask questions here to demonstrate what I mean):

- developing a new content type for musician's brief info: image, name and a link to biography.
- why we need this? because new musicians will be added in time and there should be no need to bring the developer himself to do
this kind of tasks (this is a CMS is all about)
issues here:
- how to upload images? (which module "actually works" for this? In 6.x?)
- how to manipulate uploaded images? (which module ...)

- developing a content type for musician biography (almost same issues...)

- a page for viewing # number of musicians per page (using a view module?)

- a similar subsystem for published audio CDs: Adding new ones, Detailed view, List, Buying Online, ... (e-commerce module?)

- [A DIFFERENT TASK] developing a new module for embedding video/audio content (from another video company named X)

and sort of that (application specification).

So I want developer's recipes, not administrator recipes; and If I got it right these configuration-based power-set is useful for administrating the thing.

Thanks,

ScoutBaker’s picture

You are asking for several things--module integration, site configuration, module development. Quite frankly, all of that will take time and effort.

On the plus side of this, there are resources. I would start with the Handbooks. Beyond that, there are several new books which deal with Drupal that you may find helpful:
Drupal Multimedia
Drupal for Education and E-learning (it has information useful for all sites, despite the title)
Using Drupal

For development, I've also used Pro Drupal Development (the 2nd edition covers Drupal 6).

Good luck and welcome to the community.

---
"Nice to meet you Rose...run for your life." - The Doctor
My first public Drupal site - EyeOnThe503

mm167’s picture

are u asking for Free Lunch? or u will pay ...?

ksh2drupal’s picture

Thanks for helping!

And do you name all provided samples and documents by "Microsoft" free lunch or what?

For sure I am learing PHP and Drupal and I am not expecting being a master at 1 week (Actually I have got some books but they are not practical enough - for *me*); It is just I think Drupal has not a clean design like Ruby on Rails or django or a straight forward design like ASP.NET.

Enough rants...

Where are the documentation for conventions?
- default names for regions in Html and for CSS classes of blocks, modules, ...
- a list of Drupal variables and their scope for example: $user for [...] and it's scope is request (or session or application)
- time line for calling hooks

Thanks

Anonymous’s picture

Might i suggest that you install the software, and play like many of the rest of us have.

Then install modules that you seem to like, based on their description, reading the issue queues as a guide to possible issues and if the module is well supported. After a few weeks you will have an idea of what will work for you, make a note of those and start again for real, you dont need much data to experiment.

There is no easy way of explaining everything in a small time frame. I have been using Drupal for 2 years, starting from scratch. no prior knowledge of PHP, CSS. I now have a website with 7000+pages and quite well structured.

Dont expect your site to be perfect overnight, it won't happen. It will take time

As hint you may want to look at CCK, Views Contemplate as a minimum

ksh2drupal’s picture

I totally agree on "it takes time"; it seems just things are messy a little...

Actually I have installed some modules like CCK and FCKeditor. I have also tried TinyMCE but I could not make it work on 6.8. Then I have tried IMCE for uploading and manipulating images. I have not learned well enough about Views yet.

Then I have started to develop some custom modules; tiny toys. For example a specific problem for me is how to manipulate images based on the user and an specific id. I tried to extend an image gallery to what I want; but I have failed to install a working image gallery module.

That would be a good starting point for me: a working file-handling or image gallery module.

Note: Believe me midkemia; I know enough about software development to understand the learning curves (for sure all of us had enough of them). It is just there is not any "classic drupal development guidelines"! And maybe drupal is the best CMS out there for many website-providers and administrators (I do not know). But for sure I will not recommend it to any team with less than 10 members; from a developer point of view - someone like me; who is going to add drupal support for their own product or even starting to develop a website - it is really messy. Creative, flexible, powerful but really messy.

Thank you!

Anonymous’s picture

You definitely need to look at Views and get to know it, without it most task will just take longer. TinyMCE will work with 6.8, just takes a bit of configuring. For images I do not use IMCE and the likes, but then I FTP direct to the server so can not offer suffestions. Lightbox2 has some nice features.

As to custom modules , i would suggest not wasting any time on them until you have got to grips with CCK and Views
You can do most things with them. If you need taxonomy on top of that Content Taxonomy is a choice.

Depending on what manipulation you need for images it could be as simple as adding a bit of code to a views template, or maybe Contemplate for the complete node

The problem, or advantage of Drupal, is there are often many ways to achieve a goal, none right, none wrong, each having minor variations from the other The hard bit, which comes down to personal preference is finding the one for you

mm167’s picture

haha ..I am not saying there's no free lunch ...

there are a lot of free lunch on the internet ....thanks microsoft as u mentioned.

any way, d.o. is free ..enjoy.

ScoutBaker’s picture

There's multiple handbooks, including for development if you click on the Documentation tab at the top of the web page.

---
"Nice to meet you Rose...run for your life." - The Doctor
My first public Drupal site - EyeOnThe503

bonobo’s picture

http://api.drupal.org for an overview the codebase

The Trace and Devel modules are also useful learning and development tools: http://drupal.org/project/trace and http://drupal.org/project/devel

The coder module will do a pass over any modules you develop and highlight places where they do not conform to coding standards: http://drupal.org/project/coder

The theming handbook is also a great resource: http://drupal.org/theme-guide/6

Cheers,

Bill

-------
http://www.funnymonkey.com
Click. Connect. Learn.
Using Drupal in Education

ksh2drupal’s picture

I will check them out; for sure they will be handy when working with Drupal!

Thank you!

bonobo’s picture

iimitk’s picture

Welcome to Drupal.

Drupal is an open source software. When you download it, you get all the source code that makes it up. Also it is licensed under a GPL license, which allows you to use, modify, distribute & even make commercial use of the software, providing that you give users of your derived work the same rights you've got when you used the original software. This is a whole world of openness that is never practiced in the properitary closed-source world of technologies like .NET & other Microsoft's products. I assume that you've the whole picture of the difference between these distinct philosophies.

Now, regarding your original question, I think you were referring to 'Case studies', right? A usually detailed & well-written article about the specifics of using a software (or anything else) for solving a particular set of problems & challenges. Well, Drupal has a dedicated section on Case studies. I'm sure you'' find many of them very interesting & worth reading.

Also, there's a large sub-communities within the largest Drupal community for members who share common interests in almost everything, from coding & computers issues, to hobbies & general interests.

These sub-communities exist in Drupal Groups. I just did a quick search and found this group about building online music communities using Drupal. You might want lurk around a bit. ;)

________________________
"Creativity is knowing how to hide your resources" - Albert Einstein.

dman’s picture

I think the responses here are all grabbing different parts of the elephant from your question.
I THINK that your request would be served by the Drupal Install profiles.

That is -
- You still need to download Normal Drupal Source, and be able to run it.
- You also download a chosen Install profile , which is a self-configuring, bootstrap site recipe that pre-configures a lot of things in a customized way.
- That will tell you (when you try to start it up) about the dependancies (extra modules) you should also get.
- Now, you have a working site with many fancy things ready to go.

Now.
- yeah that's a bit of fuss.
- the available profiles are not actually that great. Although there's a ton of talk about wishlist profiles

So maybe you really want an out-of-the-box preconfigured-everything site to play with.
So Jumpbox or Acquia bundles might by what you want.

Either way, there is still a huge cognitive gap between
- available, out-of-the-box generic solutions and useful starting points
and
- a customized exactly-like-you-want-it ready-to-go site

The more tweaked any distro is the more un-tweaking you have to do to unlearn it and make it your own.

But, in general, it's possible that someone could actually bundle a snapshot of a working Drupal site - with all its SQL, modules etc as a learning tool. I just don't know of any to recommend that are not already out-of-date.

.dan.
if you are asking a question you think should be documented, please provide a link to the handbook where you think the answer should be found.
| http://www.coders.co.nz/ |

ksh2drupal’s picture

"Install profiles" seems to be an important concept - and refreshing; and I will look into that, and other items deeper.

About "a customized exactly-like-you-want-it ready-to-go site":
I am a ASP.NET developer and came from a very different mindset. The problem (challenge to embrace drupal) for me is that if I had started to code what I wanted, directly - even in PHP which for sure I am not so well familiar with - in a hands-on way, it would have been finished by now! Actually drupal makes things more complicated instead of easier! There is a real hold-back factor here for drupal; which the drupal community IMHO must be aware of.

To be honest, if the project spec. did not contain a "Drupal integration" item, I had abandoned it long ago, at the beginning of the project.

Best Regards

WorldFallz’s picture

Actually drupal makes things more complicated instead of easier!

Only when initially learning it-- thus the infamous 'drupal learning curve' you hear so much about. Once you grok it, it's a ginormous time saver-- if it wasn't, why would anyone bother? They'd just code in php.

===
"Give a man a fish and you feed him for a day. Teach a man to fish and you feed him for a lifetime." - Lao Tzu
"God helps those who help themselves." - Ben Franklin
"Search is your best friend." - Worldfallz

cmiwebstudio’s picture

There's a good reason why you con't get a straight answer to your question, op. Drupal is a CMS that's all based on configuration and developers copy-paste all the note worthing things based on google searches or the community or simply dropping in a module etc. Basically, it's not for REAL programmers in all honesty. PHP has a bad rep among development languages for a reason, and older versions of Drupal only added to that rep. Drupal 8 will finally add some legitimacy to the CMS since Symfony will be involved. Even Drupal 7 just introduced OO programming, scary as that is, so Drupal 8 can't come out fast enough as far as I'm concerned. So for you, coming from a real stack like you've experienced with ASP.NET, you'll likely be shaking your head constantly.

nevets’s picture

PHP works fine as a development language and Symfony uses PHP.

WorldFallz’s picture

I'm sure you must have a reason to post this on a long dead 5 year old thread, but I have no clue what it could be, lol.

In any case, no one is forced to use drupal. If php and drupal suck so bad why not just use django or ruby.

Jaypan’s picture

Basically, it's not for REAL programmers in all honesty.

Ridiculous. Just because PHP can be used to write not-so-good code, doesn't mean that proper programmers can't use it to write good code.

And I say that coming from a C++ background.