Struggling to decide whether to keep coding or give in to CMS
I've struggled w/ this decision years before.. i understand all the aspects and benefits of a CMS system such as joomla and drupal, from rapid deployment to extendability... but ever since i've always looked at it as a tool for those who are not that good at design and programming, for a project that is not as demanding or customized... this was years ago..
I for one loved to design and code, hated dealing w/ template systems/libraries, and having to build code classes or plugins just go get something working, and benefited a lot from 100% customizable framework, that is my own... i can go into any part of the website and do whatever .. insert media, a snippet of php, what ever i wanted.... easy... to do these very custom-fitted things w/ a one size fits all CMS system would be ridiculously tasky , not to mention learning the framework and all that.. and lastly, using a CMS w/ code widely available and readable, opens up security holes.. granted these CMS systems are matured and very secure, but you very well know the reason why we still get security updates... now my websites/web apps are probably much less secure than these leading CMS systems, but whatever holes i have in my system, no one can easily exploit because , NO ONE CAN SEE MY CODE.. even with the early CAPTCHA techniques and ready made-pluginto website scripts out there, i never really went for them.. i developed my own.. much more simple LOGIC behind it, but since it's a logic I alone knew about, i never had issues w/ security or bots bypassing it etc...
so for the most part, i ignored these CMS systems and did things my way.. w/ my trusty FLASH, DREAMWEAVER and Eclipse IDEs for PHP and MYSQL.. i was SOLID..
FAST FORWARD years from now and, i must say, MOST so called "web designers/developers" nowadays, in my country (Philippines) are basically WP/CMS deployers and customizers.. I have several friends who can do wonders on WP but can't code a whole script of PHP or even HTML w/ CSS.. but he's had a ton of WEBSITE PROJECTS in his portfolio that can make anyone look good on paper.... i mean i think most small-mid sites out there now run on underlying CMS... and w/ the advent of different screen requirements (desktops to mobile devices), managing cross platform compatibility is really gona be challenging for the most part....
Hence i started to look into CMS again.. I was reading up on the latest on these things and tried a bit of this highly favored Concrete5 CMS... and I am impressed.. CMS Systems has gone a LOONG WAY.. but, as extendable as it is, I, coming from my HANDS ON Ground Up coding style, still has that feeling of BEING INSIDE A BOX (the CMS Framework and APIs) and not being able to FREELY do what I want..
Buttom line, basically it's REAL , PROFESSIONAL and UNRESTRICTED FLEXIBILITY of building sites yourself, vs TIME SAVING approach working off someone elses codes/framework..
NOW... I'm here.. with a new mid sized project... and I just got the new DREAMWEAVER CS6 (finally was able to afford the damn thing), and loving its new features.... now I'm confused...
Should I do another site ground up (using my own existing libraries/codes ofcourse) or should I start doing things the CMS way now and save myself a bunch of headaches??
I know it's hard for us to let go of habits we've been doing for over a decade, and i guess a lot of this frustration is based on that (?), but what do you guys think? How do you guys decide w/c way to go? I mean OBVIOUSLY for large and complex projects, you really need to dive in and do your own thing... but i mean for small-mid size basic to semi advanced and even eCommerce sites, how are you guys dealing w/ these? that ADobe BusinessCatalyst looks really good.. hmmm..
So I asked myself this.. and my answers were:
- well if it's what i love to do , then hard coding way
- but i love having time to relax watch movie and getting things done easy too so go CMS way
- I love the click click deploy aspect of these CMS sites and the fact that i dont have to worry about compliance and bugs and stuff..
- then again, implementing very specific things i want to do would take more than it should on a CMS..
- i love the idea of easier maintenance in the long run of a CMS site
- but then again, sometimes i really hated having to work in an ONLINE ENVIRONMMENT w/ CMS and communicating w/ the Database for changes etc.. eats up my time.. vs having ALL THE FILES on my HDD, pick and modify anyone of them anytime, really fast to test changes, and just upload / syncrhonize when im all done (Dreamweaver feature)..
so yeh technically, i'm still stuck.. dunno w/c way to go w/ my next project (a wedding site w/ a bit of web app and facebook integration going on) and i really am wasting my time pondering about it..
Thank you for reading... more power to us NERDS!
PHP - Phrantic Hyper Puh
(couldnt think of a good sig right now..s orry)
I'd say stick with coding. Like you, I love coding, and enjoy being able to do what I want with a website without being limited by any particular CMS. I find that a like for like site takes me the same time to build from scratch as it does to build it in something like WordPress because it takes so much time adding/configuring features on WP that are only available with plugins.
I would recommend PHP frameworks though, over pure bespoke PHP code. It stops you reinventing various wheels and keeps your code a bit more organised and sane.
Un Re Member
I'm with you Tea_J - I've been through the same thought process but stuck with my own CMS
(though I know I lost two jobs where people insisted on well known open source.. in case they decide they don't like me any more..)
I've used WP for blogs but continually get annoyed when it doesn't do 'x' the way I like it - so I then spend ages finding a plug in that comes close and hacking it.
TBH on most sites (I build for several graphic designers who want absolute precision on every element) I seem to spend more time doing css/html than any control logic... and I'd still need to do that on a WP site.
I have thought about building up my WP skills more but can't get the enthusiasm..
My cms use the same core code which knocks out a nice heirarchical page structure, so I can do anything I want from simple to complex.
The complex sites requiring lots of deep functionality don't come along that often, but my CMS handles them and extra features I create can morph their way to other sites as needed.
I've done a lot where the admin section backend is the key part, providing the tools needed to operate a specific business and as you know an off the shelf package can't handle those easily.
Stick with it!
I'm going to have to defend the CMS side here, but in reality a CMS is just another tool in a big arsenal so if the project would be better suited with a CMS then use it, otherwise write your own code.
Most of my work is in WordPress and honestly I don't feel constrained by it at all. They have made it really easy to write plugins and I have written quite a few that do custom stuff. Also when it comes to handing off the project to the client, WordPress is the easiest for them to pick up, hands down. We used to use Joomla but found clients didn't get it as easy as WordPress, and we looked into Drupal but it just didn't sit well with us.
I have been through most of WordPress' source code and know it pretty well. I also follow their blog pretty close as well as their trac system, so maybe that's where my bias and comfort come from, but I have never been given a task and thought, "This would be faster/better to code from scratch" unless it truly didn't warrant a CMS.
Usually if the client is looking to update their site on their own or if they want some kind of user management then I would go with WordPress over my own custom code, unless it's a personal project, but even then I would consider it. Like I said, it's a tool.
The only thing that annoys me about WordPress is its database structure, but you can modify the database by adding your own tables and whatnot without issue, so really it's not a huge deal.
EDIT: Also, drop Dreamweaver and get a real IDE like Komodo Edit. It's free and far more feature rich (especially for PHP programming). I used Dreamweaver for 6 years and was convinced by Komodo Edit in 15 minutes.
Originally Posted by Bonesnap
Thank you all for the feedbacks..
yeh i think that's a sound suggestion.. i do have to get in line w/ some of these frameworks though.. im looking into code igniter
it's soo good to hear of another veteran developer on the same boat as me, lol.. thank you for that.. i believe a lot of guys who has fully adopted well to WP and the likes , such as bonesnap, are those who has mastered the system already.. I think they are those who doesnt need to spend time experimenting and learning and reading and debugging just to do such simple things that a few lines of custom code can do... i think we are both not at that level yet.. I did try to get to that level, i really did.. spending about 2 weeks learning templating on WP, trying to work plugins etc, and i just dropped it and gave up in frustration.. everytime i try something on WP there's this voice in my head that keeps telling me THIS IS SOOOO DARN EASY if i could just code it my way..
i mean perhaps once you get a site looking and acting the way you want it on WP, then the power of WP becomes really good .. but getting there is soo damn frustrating trying to get there.. messing w/ templates, themes, plugins etc.. specially if i just wanted to do such a simple site and I hit a few time consuming and frustrating snags due to it being a custom requirement (design or functionality).. but the biggest thing that really got me stepping back from CMS is specially for simple sites, it's like using a truck to transport a few cans of beer.. the use of lots of database tables, thousands of codes, and all that, for such a simple 8-10page website, not to mention server resources, is just ridiculous at times.. hence i hate to see so many "developers" force WP on their clients coz of all the good stuff of WP..
take for example a website, w/ mainly static pages that need not updating.. w/ a contact form, a dynamic news / blog section ...
i can develop this site using purely my php/html/css codes and it'd need only less than 3MB worth of codes (media resources not incuded), straight forward routines / functions with very few 'include calls', and at most 4 tables in the database.. but noo, so many people use WP on even these simple sites.. WP isnt bloatware, i think it's very well done, but for most sites i see it used on, it is certainly overbloated for the intended purpose..
so that brings me to question again, shall I then use WP only for big cmplicated websites w/ lots of dynamic pages? I thought the answer was yes, until i started to use this thought in practice.. had a fairly complicated website, for a store, w/ shopping cart, lots of product review pages etc.. and a bunch of custom components here and there.. some pages have certain "feature boxes" and some dont.. some of these feature boxes pull different data (products, members, clearance items only, etc).. you can imaging the ball of frustration i was in trying to get everything done right in WP.. to some extent, on some areas of the site, I HAD TO GIVE UP the original design IN FAVOR of making things WORK FOR WP.. gawd i was so frustrated..i scratched 4 weeks of trying to do it in WP and went back to coding it.. almost 2 months later, all was completed, and working the way I designed everything to..
so that led me to ask myself again, I REALLY WANA GET INTO THIS CMS THING, but WHEN DO I USE IT? or is this just m imagination thinking EVERYONE's GOING INTO CMS and ME BEING LEFT BEHIND>.
@ the Komodo suggestions,thanks ..i took a peak and I do see it's a CODE ONLY IDE, and i already am very happy w/ eclipse for that.. dunno bout you guys but, DREAMWEAVER is a tool I really embraced..this has made my life so much easier... just by having visual cues of my design, saves me tremendous time in guess work and having to switch tab, refresh a page etc... and dont even get me started w/ template system, built in components, etc etc.. dunno why you guys would deprive yourself of the rich tools and features of DREAMWEAVER, i mean sure, there are some really stupid things in it.. but even if most are stupid, it's worth to keep working on DW for all the other VERY USEFUL/TIMESAVING features it brings to our table... I LOVE IT.. specially CS6 where I can design a website, in a way that it is automatically compatible w/ Tablet and mobile devices.. it will have display versions for different screensizes.. and sure, I can code this in CSS, but i rather have those visual cues while designing than imagining how things would look like while i code a bunch of CSS lines.. :P my 2cents
PHP - Phrantic Hyper Puh
(couldnt think of a good sig right now..s orry)
Un Re Member
good reply Tea_ J - report back in a few months and let us know how it works out!
I also need to start using Code Igniter and get to grips with writing my own OOP code
My own cms is pretty fine for anything and if someone wants a static site I still use my cms but never tell them it's there - then I just charge each time they need a text update (but I'm not a mean person so do it for pennies).
Part of why my clients like my CMS is there's nothing extraneous in there - and it's designed for user friendly operation
There's an infinite number of fine tunings required for any given set of sites esp. when it comes to any interaction - even JQuery animated effect tools often need me to tweak code or add other functions to suit what the designer /client wants..
Though of course it saves the time of building it from the ground up, which I guess is what WP would do.
@Bonesnap: do you just build your own css template each time for front end - or start with something close and adjust..?
When I started using WordPress I had no prior experience with it or any other CMS. I was kind of thrust into it. I had some issues picking it up at first, but after a little while it clicked. I find the templating system to be one of the easier things to pick up about it. You can do a lot of "your own coding" with it.
Originally Posted by Tea_J
Create a PHP file. At the top give it a comment "Template Name:" and give it a name. In the back-end of WordPress create a page and give it the corresponding template. It's really that easy. The WordPress CMS automatically looks through the theme folder for template files. Some of the projects I do have many different templates.
WordPress has 11 tables. You really don't have to deal with any of them if you don't want to. I can't say the same for other CMSs. And a "simple site" isn't dependent on the number of pages, but regardless, the reason a CMS is used in a lot of cases is because most clients want to be able to change their website and not have to contact a developer or pay more money.
Originally Posted by Tea_J
Of course a static site would not use a CMS. If you have a blog though I would use something like WordPress because that's the reason WordPress exists. It started out as a blogging platform. Why sit there and write out all the functionality when it's written for you (and reviewed)? You can still have your static site and your blog.
Originally Posted by Tea_J
I'm not going to pretend that eCommerce is easy, but we have done several eCommerce websites with WordPress. The first one or two had some rocky beginnings but after that we knew what we were doing. We use the plugin WP eCommerce, which I admit has some pretty terrible code and some buggy behaviour but it's the best there is for WordPress for free (though we do use some of the paid add-ons).
Originally Posted by Tea_J
I'm sorry if I am coming off as harping on you for not liking WordPress. That is not my intention. It's not for everyone and you're certainly capable of creating websites with your own code and without WordPress or any other CMS.
I'm not quite sure I understand the question, but all our WordPress sites are custom designed so I write the CSS from scratch. The only code I reuse is a CSS reset.
Originally Posted by cretaceous
That is very helpful, I think it might be very useful for me in the near future, to my dismay!
Originally Posted by Bonesnap
Learning any CMS or framework takes time. There are obvious good reasons for learning them
* New tool in one's arsenal of tricks
* Opens the door to specialized work for clients who have chosen that CMS/Framework
* Pre-built features of CMS/Framework save you from reinventing everything
* Exposure to well-coded CMS/Framework expands one's understanding of code practices
* Many CMS projects are built to be simple for the end-user (e.g., WP and Joomla, not so much Drupal).
I think it's important to keep in mind that clients typically don't care how elegant your code looks. All they care about is how efficiently a website supports their needs. That's a pretty good argument for an easy-to-understand CMS like Joomla or WordPress. There are entire communities of lower-skilled developers who may not understand how PHP works but they do understand how to maintain a WordPress site installed by someone else (e.g., YOU).
The difficulty arises when the client needs something that is not supplied by (or even conflicts with) the code architecture behind a CMS. A CMS can become a total albatross under certain circumstances. I've had a nightmarish experience with OsCommerce --which is pretty darn old by now. I can't comment in detail on the differences between WP and Joomla, but expect that different systems are flexible to different degrees. It's been my impression that Drupal is more "meta" in conception than either Joomla or WP and that more abstract conceptual design lends flexibility but also makes it harder to grasp for your typical user. An experienced developer should know enough about each different system to understand what each is good for and be able to recommend the right tool for the right task.
Frameworks like CodeIgniter and Zend Framework are pretty neat and seem more abstract still than even Drupal. They are not CMSes.
And then there are coding options like Ruby and Perl and Python and .NET. The fragmentation of the web development world is somewhat regrettable.
I think it's important to know at least a little about most of the technologies. There's nothing stopping you from learning WP and Joomla (and Drupal, etc.). Personally, I've had more luck learning about linux and Apache and setting up a proper debugging environment (where you can step through your PHP code on the web server) than I have had studying any particular CMS.
Just found this discussion. I am struggling with this exact issue right now. I know what to do (pretty much) with php and MySQL, but my client is getting all PIA about wanting a WordPress site. I will admit the sites I write are pretty spartan in appearance, BUT I am always trying to focus on clarity, function and efficiency for the site visitor. I know I can usually deliver the FUNCTION they are demanding within a few days using my existing skills, but getting a lot of my scripts to look "right" in WordPress currently seems beyond me. I acknowledge that WP could be a very big help with respect to cross-platform issues, but I really can't seem to get anywhere quickly in WP.
ALSO: I OFTEN hear from my clients that the visitors to our site praise the functionality and appearance and say that they use it regularly BECAUSE it is so much cleaner and easier to navigate than the sites of "big boy" competition.
Last edited by Joseph Sliker; 02-26-2014 at 02:04 PM.
Reason: forgot to mention
"The lazy man will find the best way."
High Energy Magic Dept.
Shouldn't be too hard to clone the HTML of a WP theme you like, grab the applicable CSS and image files, and use that as your base template to layout your custom-built site.
Please give us a simple answer, so that we don't have to think, because if we think, we might find answers that don't fit the way we want the world to be." ~ from Nation, by Terry Pratchett
"But the main reason that any programmer learning any new language thinks the new language is SO much better than the old one is because he’s a better programmer now!" ~ http://www.oreillynet.com/ruby/blog/...ck_to_p_1.html
This describes more or less exactly how I felt a couple of years ago. And I still feel mostly this way. In my opinion, it's a LOT more enjoyable to write one's one software rather than conforming to some CMS or framework designed by someone else. That said, I've had nearly 3 years of steady work on a site built in Joomla and there are nice things about Joomla's underlying framework. I've also started to explore with CodeIgniter and while I like certain things (the SEO-friendly urls and organization of the files into classes are really great) I also greatly dislike certain things.
Originally Posted by Joseph Sliker
I think in the long run that you will find it to your advantage to be able to provide WP when people need it. The particular advantage it will bring you is the ability to set up a site quickly so that it can authenticate folks and they can get right to work on their site's content. It will also get in the way -- like when your client wants some kind of custom features. You'll just have to warn your clients about the difficult of customization in certain cases and up your game a bit to learn how to get around the difficulties. At that point, your skill set will be broader and you will be more in demand.
Settled 4 red convertible
Ultimately, if you're in business, it's a business decision rather than a strict matter of coding (they both bear on one another, however).
If you can strictly define the requirements and predict future requirements, and can then find a 'package' that will allow you to meet them, it's generally better to use pre-written software. That said, it's very hard to predict future requirements, and many management teams can't even really decide what their current requirements are.
This was a somewhat helpful read: http://www.informationweek.com/softw...d/d-id/1105616
Our management team sees us as "out front" in terms of what we're doing in our niche, so they can't define what the future requirements are. One of our projects started as OutOfTheBox software but now, nearly 4 years later, we've replaced about half of its functionality, and, truth be told, our custom code *is* much more efficient (which should help with user engagement).
That said, we have other projects similar to PHPBuilder, and we use the same solution that developer.com has chosen for those communities; pretty much straight OOB, with only customized CSS and modules and plugins that work within that system. It's a good thing, too; I.T. can't work that many projects as it is in this company ...
Users Browsing this Thread
There are currently 1 users browsing this thread. (0 members and 1 guests)
Tags for this Thread