Skip to main content

Do I like Drupal ?

Caution: The title might be somewhat misleading but kind of relevant. For the next few para I’m going to rant about drupal. (so all the drupal lovers please dont read beyond this point. Also this is my personal biased POV. I don’t gain or loose anything for or against drupal).
Being said that : Here it goes:
Do I like Drupal: Hell No (so far)
Why ?
1. It’s shit. I think it’s an abomination of anything called CMS. 
2. It’s a VB (visula basic) in PHP. And as a developer I’ve never liked visual basic. And drupal is similar in extra that it is in PHP. So yes .. figure the rest out.
3. It works well for the people who think “installing/upgrading their mobile OS makes them like developers hence Mr. KnowItAll.”. Guess what ? it doesn’t and that’s not what developers do. So, you installed few modules in drupal and made it work for the purpose - this doesnt qualify you as a developer nor makes drupal *really easy and nice CMS*. Eventually this *install module and get things done in few clicks* runs out of it’s charm when a specific requirement comes through that doesn’t fit with it’s out of the box criteria. From this point on the PAIN of drupal begins. 
4. I dont like the idea of *you have this magic function and here’re few lines of code* that you will put in this specific file and the desired text will appear on the site. I like to know how it’s working .. is it creating lots of sessions or lots of garbage .. is it process heavy and all that crap. Unfortunately that’s exactly what drupal does (hooks and theme functions that you’d write all over the site). Even more messy example: functions defined in one module/file is accessible in another file/module. That means it perhaps is declaring them as global. This is good and bad both at the same time. I’d like to have control over this functionality but do I have ? So far I dont think I have.
5. One of the biggest + point / brag about drupal is that it has a large community. But what about the fact that a lot of them are *asshole programmers* (definition of *asshole programmer* : Just so you know how to do a for loop does not make you a programmer/developer. There’re a lot more involved in it such as complexity..planning .. whether the for loop actually is needed or not .. efficient use of functions etc etc. So posting something like “Oo I wrote this for loop but it’s not terminating” on the blog is absolutely stupid and asshole like specially if the solution for that is, you forgot to give it a proper terminating condition because you are an asshole. You are just polluting the blog. programming is not in your capability. so stay out of it. But they dont cause they are assholes). I’m sure majority will agree that quantity on shit quality is actually crap. I felt the drupal blogs/forums are somewhat like that. (Ofcourse there’re some brilliants there. Not denying that fact).
6. it doesnt follow traditional CMS structure or some structure that is better than the traditional.
7. Since when it looked easy (from a CMS’ POV) having all the content on a flat list instead of some sort of folder or tree based structure. Yes, if it were the age when people communicated with a walky talky I would have gladly accepted this but we have smart phones now. And CMSes the a lot better than 5 years ago. I still can’t figured out how drupal has managed to survive all these years like a cockroach. 
O wait .. I know : cause of the assholes, who are afraid of adapting new better changes and like to stuck with the old crappy cause the’re too lazy to keep up with the technologies. (probably still using walky talky to call their moms from their basement where they live).
So Why Am I Working on Drupal ?
Cause the client specifically asked for drupal. I guess this is quite common scenario why many developers (good or bad[like me]) who don’t like drupal but working on/with it. Some guy(Mr KnowItAll cause he, in dinosor’s age did some sort of programming [possibly wrote a hello world following Delphi for Dummies step by step]) in the decision making committee thought drupal is awesome without (i dont know) no particular valid reason or deluded by drupal’s misleading advantages (larger community, lots of plugins, broad support etc etc). 

Why I wrote all these crap ?
I am so annoyed by drupal  architecture and “drupal’s way of doing things” that I was almost blew up in anger. Some shrink somewhere said writing helps dealing with frustration. So I’m testing whether it actually works.
Also it could be because I’m a crappy developer. Or I don’t know drupal enough to appreciate it. 
So far all I have felt about it is it’s a “pain in the ass”.
Maybe someday when I will know enough about it (after doing 5/6 projects according to the experts) I will probably say like the experts “I kinda dont hate it now”.

BTW this is what came up when I searched learning drupal:

UPDATE (16/11/2015): I kinda dont hate it now. I will write another post soonish explaining the good, bad and ugly in drupal. 

Comments

Popular posts from this blog

Managing devices using Edge Manager

Managing edge devices has been a complex process as traditional IT ops tools fall short in distributed, low-connectivity environment to manage huge quantity of devices.  Red Hat Edge Manager  (Open source project: FlightControl , GA'd by Red Hat on late Jan, 2026) solves these challenges by providing streamlined management of edge devices and applications through a declarative approach . Now, there's a fair bit to unpack here. But for simplicity this is how I am going to map those 3 things here: Management of edge devices: I am mapping this to LCM (including upgrade, patch etc) of the underlying OS (in this case RHEL OS of BootC flavor or at least UBI based RHEL ). Managing applications: Mapping this to deploying applications and LCM of the applications stack on the OS. Declarative approach: This one is super interesting. To me this is very K8s-yy but in the world of edge devices running linux (RHEL OS, as of today). And then this thing also has MCP : This is my next prob...

The story of a Hack Job

"So, you have hacked it" -- Few days ago one of the guys at work passed me this comment on a random discussion about something I built. I paused for a moment and pondered: Do I reply defending how that's not a hack. OR Do I just not bother I picked the second option for 2 reasons: It was late. It probably isn't worth defending the "hack vs" topic as the comment passed was out of context. So I chose the next best action and replied "Yep, sure did and it is working great.". I felt like Batman in the moment. In this post I will rant about the knowledge gap around hacking and then describe about one of the components of my home automation project (really, this is the main reason for this post) and use that as an example how hacking is cool and does not always mean bad. But first lets align on my definition of hacking: People use this term in good and bad, both ways. For example: "He/she did a hack job" -- Yeah, that probably...

Passwordless Auth to Azure Key Vault using External Secret and Workload Identity

I want to fetch my secrets from Azure KV and I don't want to use any password for it. Let's see how this can be implemented. This is yet another blog post (YABP) about ESO and Azure Workload Identity. Why Passwordless Auth: It is a common practice to use some sort of "master password" (spn clienid, clientsecret etc) to access Secret Vaults (in this case it is AZ KV) but that master password becomes a headache to manage (rotate, prevent leak etc). So, the passwordless auth to AKV is ideal.  Why ESO: This is discussed and addressed in the conclusion section. Workload Identity (Passwordless Auth): Lets make a backward start (just for a change). I will try to explain how the passwordless auth will work. This will make more sense when you will read through the detailed implementation section. Here's a sequence diagram to explain it: There's no magic here. This is a well documented process by microsoft  here . The below diagram (directly copied from the official doc...

Speeding using Crossplane and ServiceBinding

Software development and release processes continues to improve to deliver value to the users faster and better to support business growth and relevance in this competitive market. To achieve this we focus on automating the path to production and any people or process related obstacles of a software on its way to the user. Generally, some of the goals of the golden paths, are: Remove interdependency and promote self service and  provider & consumer relationship. Shift left - from people & process to technology & automation . Treat Platform-as-product and provide PaaS Secured and standardised by design In this post, I will describe how Crossplane and ServiceBinding can help achieve these goals in the context of applications development and delivery and their consumption of external resources / services in the process. Note:   Crossplane and  ServiceBinding both are capable of covering beyond just database connectivity. In this blog post I am describing Dat...

A modern cloud native (and self serve) way to manage Virtual Machines

Really!! Are there could native way to deploy, LCM VMs and add Self Serve on top ???? In this post I will describe an art of the possibility using the below tools: RHDH: Red Hat Developer Hub (Open source project: Backstage ) OCP Virtualization: Red Hat OpenShift Virtualization (Open source project: KubeVirt ) AAP: Red Hat Ansible Automation Platform (Open source project: Ansible / AWX ) RHEL BootC: Image mode for Red Hat Enterprise Linux (Open source project: bootc ) GitOps: Red Hat OpenShift GitOps (Open source project: ArgoCD ) Quay Registry or any other OCI compliant registry All of these projects can be run on Red Hat OpenShift (Open source project: OKD ) OR on other Kubernetes distribution or on VMs (you pick your underlying infra. For this post I have used OpenShift for simplicity of deployment, integrated tools and narrowly focusing on the usecases instead of the deployment of the tools).  The main goal here is to: Easily deploy and lifecycle applications and stuffs ...

Deciphering the hype of Service Mesh

Service Mesh is not a new topic anymore. Most of us in the industry are already familiar with it. There are also tons of article in the internet about its why and how. In my opinion, it has a significant influence on the application architecture. Here's a DevSecOps humor to start the discussion (and it will make sense as you read along).  This is part 1 of my 3 parts blog posts on Service Mesh. Part 1:   Deciphering the hype of Service Mesh Part 2:   Understanding The Ingress and The Mesh components of Service Mesh. Part 3:  Understanding the observability component of Service Mesh (TBD).  In this post, I am going approach Service Mesh from an application architecture point of view. I will also score some of its basic features on a scale of 1 to 5, where 1 being the least important to me and 5 being the most important.  Table of contents: Common Q&As Features mTLS Service Discovery Meshing Ingress, Gateways etc Telemetries Enterprise products and offeri...