4 ms·
Developing via a GUI is good for rapid prototyping or CMS applications, but I prefer traditional coding for web applications. It's easy to change something in a
by mcantelon 14y ago
Developing via a GUI is good for rapid prototyping or CMS applications, but I prefer traditional coding for web applications. It's easy to change something in a GUI and not notice it. You can't "grep" a GUI to find the screen you need to access to change something (as you may need to click through several screens to get to where you want to go). Version control becomes more complicated as well: when development is defined by data in a database it's more complicated to have a staging/production setup than with straight-up code in version control. Plus text is expressive: there's a reason humanity moved to the written word from pictographs.
Performance can also be an issue as well in Drupal, depending on your use-case. Stuff based on layer upon layer of abstraction uses more memory and can be slow. "Just add Varnish" works for some use-cases, but not others.
Upgrading can be painful as well. Because third-party modules are dependent on Drupal core, when you upgrade Drupal core you also have to upgrade all your modules at the same time. For a complex site this can take awhile. If a module isn't upgraded you either have to do that work yourself, drop it as a dependency, or wait to see if the module gets updated. With less monolithic systems you can deal with upgrading components individually which can make the process more manageable.
- jackbravo 14y agoyou can use the features module in drupal and have the best of both worlds. You click to get a prototype quickly, then you export the functionality to a module with drupal and keep track of changes with git.