Posted by sethcohn on January 9, 2010 at 1:01am
Start:
2010-01-14 18:00 - 21:00 America/New_York Event type:
User group meeting
Next Meeting Thursday, Jan 14th, 6pm to 9pm @ Amoskeag Business Incubator
33 South Commercial Street ° Manchester, NH 03101
Directions:
http://www.abi-nh.com/about/directions
Agenda:
Drupal Debugging, using Xdebug, Firebug and other tools.
Discussion for planning a Drupal tutorial class/day
General Q&A
What else? Pipe up and volunteer to share!
(Yes, it's 2010, not 2008. My clock is running backwards... never mind the incorrect original title)

Comments
Source Control
Although I use subversion at work everyday, I have no idea how to set up my own repositories for projects on my localhost. I know there are a lot of options. Which will I like best and how do I set it up?
Michelle Lauer
michellelauer.com
Good topic...
Lots of meat to discuss there.... kinds of Source/Version control (cvs, svn, git, hg, etc), resources to setting up repositories (self-hosted, free on the web, commericial, etc), tools (tortoisecvs/svn/hg, others)
Almost worth it's own month, as a main focus... maybe we can see how far we get, and revisit it next month too...
Resource for Debugging
This might help start the discussion! http://ratatosk.backpackit.com/pub/1836982-debugging-drupal (thanks to @ericlondon for the link)
Michelle Lauer
michellelauer.com
Cribbing some of the material from this...
http://groups.drupal.org/node/39554
and the above looks even better... thanks Eric (and Miche!)
Late
I really want to talk about and learn about debugging, but I need to have some face time at a wrap party at my client's office. I'll try to escape when I can, but I won't be at the UG until 6:30. I hope I won't miss the debugging part.
Brian Travis
Author, Pro Drupal 7 for Windows Developers
Away, but anticitpating future meetings
Unfortunately, I'll be away until 1st February 2010, but would hope that you'll repeat the topic in future. I'll be happy to volunteer in whatever ways I can help. (I'm guessing the year of the meeting got stuck somehow.)
2010, really?
My clock got stuck in 2008, I guess. My goof. Fixed. Thanks for noticing.
Panels?
Anyone interested in presenting Panels any time soon? I've never used it and I'm beginning to wonder why I've ignored it for so long. Looks like the agenda is already full for this meeting but maybe at the following meeting?
Looks like I'm missing another one!
Well, I'd really hoped to make this meetup, but yet again I'm still bogged down on a project now in the final stages of QA, and a few pieces of functionality. I've been asked to, and need to pull about 14hrs tmrw, so I'm MIA this time around too!
On the topic of the planning for a "Training Day" as I've discussed with Miche, I'm game to give a session related to anything theme related (don't think it fits into the idea of the training day), OR can also do Panels 3 (more suitable likely, and I've been using it heavily the past couple of months now).
Jake Strawn (@himerus)
ThemeGeeks | Development Geeks
Omega - 960.gs
Notes of the January 2010 meeting
Thanks to Benjamin and the four others that helped take these notes, live, on google wave.
Most relevant information to work from, as was Seth's presentation (thanks Seth) can be found here:
http://www.slideshare.net/jonlee554/setting-up-a-debugging-environment-f...
Use a local web stack ( Make sure it is PHP 5.2.x )
XAMPP
MAMP
SUN Glassfish
An IDE
Aptana is a extension / fork of eclipse
Firefox and lots of cool addons
firebug
drupalForFirebug
adminrole module
Allows you to set one role to have all permissions automatically
Devel module
Provides many tools for the site builder
Collect query info will collect and in conjunction with Display Query Log option will
show all the many (many) sql queries per page load.
Drupal for Firebug
In conjunction with Devel module... will move the display of all the
information being dumped previously to the bottom of the page, and instead display it in firebug.
Also allows for interactive an arbitrary PHP code execution from firebug to drupal.
Make sure your theme prints the $closure variable. ( some do not )
This is four downloads:
drupalforfirebug module http://drupal.org/project/drupalforfirebug
devel module
firebug firefox addon
firebugfordrupal firefox addon https://addons.mozilla.org/en-US/firefox/addon/8370
Will show you node object on load, view; will show SQL, including Views SQL.
Devel Theme Developer
Really an option within the devel module
Always remember to TURN IT OFF when not in use
Provides a DHTML floating box to 'check' Themer info
Clicking an area on the page then provides the tree of hooks, possible filenames
for php template overrides, and the permutations and order of the functions that
are called to create that page.
http://getfirebug.com/extensions
FormBug ( plugin for firebug )
Inspect and prepopulate forms
Firefocus
Event log of focus events. Rinse, wash, repeat.
Drush http://drupal.org/project/drush - can even run under windows
also useful for debugging
drush download admin_menu
drush enable admin_menu
xdebug and Aptana 1.5
xdebug
a php module, shipped with most binaries, that is enabled in php.ini
Aptana
A fork? of eclipse with a simple installer
Get version 1.5 of aptana for the PHP support
I got debugging working with breakpoints and everything!
That's the good news. The minor issue is that I'm using Komodo, a commercial product.
It works just like Visual Studio. All ya gotta do is RTFM, edit some configuration files and it comes right up. The problem is that Komodo is a few hundred bucks. But lemme tell ya', it's a kick-ass development environment, and much less confusing than the strange Eclipse/Aptana relationship, especially since Aptana removed PHP editing from their 2.0. Odd.
And ActiveState has a Drupal add-in that provides Intellisense (or whatever they call it) for common Drupal classes like node and user. It doesn't use reflection like Visual Studio so it can't know everything, but it's getting closer.
Komodo has the regular 21-day crack-dealer freebie. But I'm ready to shell out the bucks because I've lost waaay too much time getting free stuff to work.
So after wasting most of the three-day MLK weekend getting a development environment running, I ended up creating a Windows 7 VM with Virtual PC and loading WAMP. I tried XAMPP, but it uses PHP 5.3 by default, and the deprecated warnings were just too much schablon for me to handle. WAMP lets you load multiple versions of PHP and switch them with a taskbar click. Pretty slick.
Thanks, Seth, for the Firefox suite with tons of good strap-ons. With that and code-stepping, I'm now dangerous, and the book writing is in high gear!
Brian Travis
Author, Pro Drupal 7 for Windows Developers
I got it all working in VIM!
I got it all working in VIM!
Discussion about a Drupal Seminar
Audience:
- Drupal Newbies
Topics:
- How to make a Drupal site from beginning to end
Schedule:
- session 1 - infrastructure: install localhost, php.ini, .htaccess, how to upload to production
- session 2 - what is drupal: core concepts, admin, configs, blocks
- session 3 - content types
- Lunch - Brown bag with BOF sessions
- session 4 - views
- session 5 - other mods you need on every site and how to use
- session 6 - create sub theme, quick page-override templates, make home-page be different
- After - Beer!
Dates:
- Late February or May (to not clash with people getting ready for DruaplCon)
Location options:
- ABI, SNHU, UNHM
Advertising options:
- existing Facebook groups (barcamp, geek lunch, MYPN)
- Twitter (NH tweetup, social media people)
- NH Adobe group
Marketing:
- Do we need a website, or just groups.drupal?
- Info to include why a CMS, establish the value, share videos from NYcamp in Decemebr (how to install WAMP, MAMP)
Planning:
- Let's keep it free
- Arrange for 6 speakers (only one room) (structured is easier to plan)
- Video tape the whole thing
Questions:
-How many people do we expect to attend? Location selection is important.
Michelle Lauer
michellelauer.com
Mmmm Beer...
My $.02
Feb is too soon. May is too late, but probably better than Feb for planning purposes.
Definitely like the "free" part.
I like the one-track thing. Come. Learn. Leave a better person. No hard choices. They'll come later.
No need for a special web site. Groups.drupal seems like a well-indexed resource.
So I know a guy who has a brewery, and wants to buy the beer. The location is an issue; venue people get all uptight and stuff when there's alcohol. Not that this should be a deciding issue, but it would be nice if free beer would be allowed at the same venue as the training.
Or we could just go to Murphy's.
Not a big deal, but I saw "beer" in the itinerary and had to reply.
Brian Travis
Author, Pro Drupal 7 for Windows Developers
I agree that getting all
I agree that getting all things organized for February might be difficult. However, I am concerned about planning time available if any of the planners will be presenting at DrupalCon in April. I have a couple ideas for venues and will make those phone calls/emails on Wednesday. That might dictate the date.
You are probably correct that we don't need a fancy site, however, I got a little overzealous this weekend and started building one. Once I have it to a more functional point (next weekend), I will announce the URL for everyone to dissect.
As far as beer goes, I was just thinking we would all show up at a bar, but if we can finagle free beer on site, that would be fabulous!
Michelle Lauer
michellelauer.com
Google Labs Browsersize Project
Here's a link to that Googlelabs project a couple of us were talking about at the meeting: http://browsersize.googlelabs.com/
Basically, you can input a url and it will overlay browser sizes and percentages on the page. From the about page: "This is useful for ensuring that important parts of a page's user interface are visible by a wide audience. On the example page that you see when you first visit this site, there is a "donate now" button which falls within the 80% contour, meaning that 20% of users cannot see this button when they first visit the page. 20% is a significant number; knowing this fact would encourage the designer to move the button much higher in the page so it can be seen without scrolling."
Late again
I like the page in that it is based on current trends that Google analyzes; it's not a static image. I would suspect that as more people use netbooks or phone-based browsers that the lines will change over time.
Brian Travis
Author, Pro Drupal 7 for Windows Developers
Interested
I have not been able to attend any meetings thus far but I am interested in taking part in listening to others experiences and even sharing my own.
For our fellow Drupalers that can't be there in person, perhaps future meetups can be DimDim'd or shared via GoToMeeting. Obviously, you'd miss out on the beer but it's better than just reading the meeting notes.
For me, location is not as important as the date & time of the meetups. I have a day job and a young family to balance :-)
I just came across the Acquia Best Practices page http://library.acquia.com/content/best-practice-and-recommendations-prod... and was wondering if anyone follows those same practices and if they would be interested in sharing their own best practices.
Also, I am interested in creating my own modules and sharing them with the community. Would someone who manages a module on Drupal.org be able to mentor the group on how best to do this?
Debugging on WAMP -- finally!
I finally have debugging working after trying off and on to get it configured properly. I think it became a matter of stubborn pride more than I had to have it or else I couldn't work. As we learned at this meetup there are a variety of ways to gather information and diagnose issues short of a full-blown debugger. My problem was one or more of the references I had been using to led me to believe there should be a zend_extension line "outside" of the [Xdebug] section.
Here is my [Xdebug] section at the bottom of php.ini:
[xdebug]
zend_extension_ts="C:/wamp/bin/php/php5.2.6/ext/php_xdebug-2.0.5-5.2.dll"
xdebug.remote_enable=1
xdebug.remote_mode=req
xdebug.remote_host="localhost"
xdebug.remote_port=9000
xdebug.remote_handler="dbgp"
Note that with WAMP the correct php.ini is the one in Apache's bin directory (C:\wamp\bin\apache\apache2.2.8\bin) and not the one in the PHP directory. The one under Apache is the one that is used during runtime as well as the one that is linked and accessed from the WAMP tray icon.
Using phpinfo() I could see the Xdebug block which meant it was recognized and loaded. However as several references claimed, I needed to see the extra sentence in the "Powered by Zend" block to know it was working. That sentence wasn't appearing and it wasn't working either. While looking at the problem once again, I took a look at php_error.log and was pondering why I kept seeing the following contradictory entries:
[27-Jan-2010 22:06:27] PHP Warning: Xdebug MUST be loaded as a Zend extension in Unknown on line 0
[27-Jan-2010 22:06:27] PHP Warning: Module 'xdebug' already loaded in Unknown on line 0
Searching in php.ini I found the extra zend_extension line and wondered if that was the problem. After commenting out the line I restarted everything and voila. The Powered by Zend block showed:
This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
with Xdebug v2.0.5, Copyright (c) 2002-2008, by Derick Rethans
The third line is the golden string indicating that everything is wired up properly and loaded. Debugging works in JetBrains' new WebIDE as well as Eclipse and the Eclipse-based Aptana.