It’s been a few weeks now since we added the Community Toolbox feature to SSC, and we’ve had some great toolboxes added to the site. I thought I would take some time to detail a few of the new toolboxes, and get some input from the creators of the toolboxes as far as what they are thinking with the tools they included.
SSC: Why did you create this toolbox? Was it primarily as a place to store your own ideas about certain tools, or did you create it to share your opinions with others, or both?
Rolf: I’m definitely creating this toolbox to share my experiences and choices with other people. In my day-to-day work, I am using sets of tools for specific work processes, so creating a toolbox for one of those work processes, developing web applications, seems a good way to explore the new toolboxes on SSC.
SSC: Is there any specific group of people whom you think might be interested in the contents? If so, who?
Rolf: I think that the general work practice in PHP/MySQL web development is still pretty primitive. I often see people hack away in their source code through a terminal editor, and I’ve done it myself as well. I often have debugged my code by adding “print” and “exit” statements in the code to diagnose problems.
I’m now doing nearly everything through Eclipse, with an integrated debugger, integrated unit testing, and soon with seemless integration into various bug trackers as well. Navigating and understanding the code of applications I have to dive into is so much easier, with browser-like navigation (quickly moving back and forth, bookmarks, putting “todo” comments in the code that appear on task lists), it’s easier to work with version control repositories, and so on.
Of course, I didn’t set all of that up in half an afternoon, it took quite some testing, googling, experimenting, and settling. But I can easily help my colleague now set up his environment in the same way, and make the same leap in work practice without spending days on fiddling with tools.
So… I think the selection of tools can be an inspiration for other PHP/MySQL developers to work with such a set of tools. Likewise, I hope to find similar toolboxes of other developers, to learn how they do things. And for that, it’s good to know they use a lot of the same tools as a basis. A new tool will then likely fit in with my work practice and work with my existing tools.
SSC: Why did you choose the tools in your toolbox?
Rolf: The rationale on the overall scale: these are tools I am using in combination to do my tasks as “PHP developer”. And if I like it, I’ll start a similar one “These are the tools we use to manage our workloads and customer projects”.
SSC: Can you be more specific about the specific tools?
Rolf: As an example, Eclipse is an enormous, almost monstrous development environment, but it has increasing support for all kinds of languages, frameworks, task management, and so on. The good thing is that it reduces “cognitive overload”: similar operations work the same, independent from underlying technology. So debugging in PHP works nearly the same as debugging in Java: same buttons, labels. Navigating code in PHP is the same as it is in Java. Managing tasks works with Bugzilla, Trac and Jira.
But it does take some work: you need to use the new Eclipse PHP Development Tool and not the longer-established PHPEclipse plugin, and you need the proper Xdebug plugin. And then of course configure Xdebug as PHP extension as well.
A bit technical detail, I won’t go into it further, but hopefully it illustrates it a bit. Also, for a less developer-centric realm of tasks, it’s probably easier to describe.
Thanks Rolf! I’ll be posting a few more of these conversations here, and we’re always looking for more material, so let me know if you have a new toolbox you’d like to talk about!