|On-The-Ground Programming Methods|
How do you go about the bulk of your PHP programming?
We are all, I presume, PHP programmers; and those who have been for a while will realise that styles/methods have changed rapidly over the last 15 or so years.
What method/model/approach do you use for the bulk of your programming today? Are you using a formal system, or is it seat-of-the-pants? Do you still code 'fresh stuff', or is it almost always stuff to run within a CMS or heavy framework?
For me most of my coding is in the CodeIgniter framework.
I have modules for most of the basic stuff, and only do fresh coding on stuff like business rules.
Also the Datamapper ORM for codeigniter is very handy
I code everything from scratch, but obviously I've a collection of existing code to lean on.
I dislike having to trust others, hence I avoid frameworks.
Although I make use of existing open source PHP code, I like using mainly stuff I've written.
I developed my own CMS/framework which makes it easy for me to add and update my sites.
Basically, each "feature" of the site is represented by a class in a PHP file by itself. In the past, to add functionality, I'd create code for the new feature. Then I'd have to edit other code (or the database) to add menu links to the new functionality and then I had to edit some other code to integrate the new features into the site's search function, and so on.
Now, I can add a new feature by creating a single PHP file in a specific directory. Everything the framework needs to add the feature is encapsulated in the one class.
As far as actually coding ... if I'm doing something simple, I'll use the editor in Webmin to edit the code right on the server. For a little more complicated work, I'll use Notepad++ which comes with an FTP plug-in. For bigger projects, I'll use Eclipse and may test it on my PC before uploading to the server.
Ditto what swa66 said. And like jadebox I also wrote my own CMS licensed to our own servers and supports our client base.
I spend the majority of my day in Eclipse, always have command line interfaces (CLI) open (MySQL, bash prompt, etc.) and test mostly in Firefox with Firebug for CSS and JS testing and debugging in the client. I also use diff tools quite often as well as Git.
Back to the "framework" discussion though. Most of my time is spent contract programming so I need to adjust on the fly for any given environment. I can tell you which open source software packages I dislike and which I can tolerate. Ask we which I enjoy working on and you'll get a blank stare :-) Still, when I find security holes or broken code, I contribute to the project by submitting a bug report with a diff patch.
And you, vvv? What are you up to these days?!