My Love / Hate relationship with Deluge

My Love / Hate relationship with Deluge

Ok... so I should first say that I very much have an appreciation for all of the awesome things that I can do with Deluge.  It really can be quite powerful in a variety of ways, and allows for all kinds of customization that otherwise would not be possible.

Admittedly however, I've had days (and sometimes late nights that turn into early mornings) that I end up feeling like my head is going to explode when coding in Deluge.  Now let me emphasize something here... Deluge is a terrific language... but... it suffers enormously by the glaring lack of basic functionality within the web-based IDE.

So some of my gripes include:

1.  There are several variations of Deluge running across the various Zoho applications, and with various degrees of functionality.  Some are better than others - the best of these being being almost tolerable, the worst being barely usable.

2.  Depending on context and the relevant module, I can usually enter in an item ID, or a PO ID, or whatever other ID to run a test execution of my code with.  This is great, except that I have to enter the ID in every single time I want to run my code (CRM being one notable exception).  It's not a big deal, until you're testing and making changes in your code and end up having to deal with it 100 or 500 times... so much as to the extent that I've found myself writing key macros just to automate entry of the IDs while I run test executions.

3.  Depending on the module, error reporting is frequently misleading, often without providing line numbers (or frequently the incorrect line number), or using language that's either too obscure or written such that it really is a chore to decipher what it's even saying.  AppleSoft Basic provided better errors in 1976.  Granted, there are appreciable differences, but I stand by the fact that in 2020, even the most rudimentary basic ways of developing code should always give you a line number.  Always.  Always.

4.  In addition to specifying the line number, why not just highlight the point in the code in red so that you can just go right to the problem area and get down to business.

(Feel free to pass points 3 & 4 to the Sites and Commerce Face teams as well.)

5.  How about incorporating break points to halt the code where you can evaluate variables?

And so after contemplating the various issues, thought I'd put forth one possible approach that I would see as a way that could potentially catapult Deluge into the next level and beyond, while also reducing the anxiety experienced by seasoned programmers who relentlessly find themselves pulling their hair out, wondering why this otherwise useful language is so unbearably painful to develop with. (Granted, I can't speak for others, but I know there are others who have voiced similar sentiments.)

So if I were to imagine a path for redemption for Deluge, it might be by way of using Visual Studio Code as a catalyst.  Visual Studio Code has quickly and increasingly become one of the most commonly used code editors in recent years - largely because it's a Microsoft product vetted through years of development since Visual C++ was initially launched around 30 years ago.

It's become so ubiquitous that there even already exists a very basic code formatter for Zoho's Deluge as one of the available extensions - and could provide a starting place for more substantive integration to begin to take things a step further.

What could really take Deluge to the next level in this regard would potentially incorporate the use of a "live" connector that could operate between a user's Visual Studio Code installation and the Deluge Runtime Engine.  In essence, it could serve to automatically upload the most recent versions of an edited Deluge script from VS Code into whichever relevant Zoho module is in context, as well as invoke test executions of your code directly from the VS Code IDE.  Furthermore, the DRE would subsequently be able to report back error codes (with line numbers and relevant code to be highlighted) in realtime across the link. 

Taking it even a step further, such a link could also serve as means of proving a data connector to providing context while working on your Deluge code.  In other languages (and their related development environments), an ODBC connector can often be instantiated... not only during runtime, but also "live linked" during development so that you can develop your code while contextually aware of the data and relevant data types you're coding against.  

And because the aforementioned functionality has already been previously incorporated into VS Code for other languages, the UI in VS Code is already primed to be able to handle these tasks without reinventing the wheel.  Things like breakpoints, watch variables, data connectors are already either in place, or can likely be adapted.  This of course would dramatically shorten the time and effort needed to make something of this sort feasible. 

In effect, hardware debuggers for embedded solutions (like a microcontroller in a microwave oven or a cable TV set-top box) work the same way.  The execution of code, breakpoints, uploading of code, etc, are all traversing a simple link.  Typically, such hardware debugging in this regard can even be run remotely - even across the Internet over port forwarded IP addresses.

Ultimately my point is not to educate anyone on how debugging works, as I'm sure that Zoho's engineer's are already well versed in these concepts... but only as a means underscore that the model of debugging over IP is commonplace, and could probably easily be applied to the Deluge Runtime Engine as well.

Now I could be wrong, but if I were to guess... I'd be inclined to believe that much of the functionality that I've highlighted above is probably already in existence.  I say this not because I know of some secret codebase I've stumbled across or have some sort of secret insider knowledge that there's some stash of advanced tools lying in some hidden Zoho vault.

Rather, I say this only because so many of the aforementioned issues that I point out here would have been addressed long ago if the software engineers at Zoho were forced to use the same web-based tools as its client base.  I can't think of a single engineer that go to such lengths as to create a language like Deluge, and then not build in the most basic rudimentary means of providing error codes, debugging, and usable feedback.

Based on that assumption, it's almost a certainty IMHO that there are in-house tools in existence that provide this type of feedback, but few within Zoho's customer base have expressed enough dissatisfaction so far in order to warrant the efforts that would be required to bring such functionality to web-based Deluge IDE used by Zoho's client base. Naturally this just comes down to priorities, and would be the case in most any organization, these priorities are typically determined by the collective voice of its customer base.

Sometimes however, these needs might be a step removed from what the customer states vs what they don't know they should be asking for.  A business owner might, for example, choose one platform over another... not because of the degree of feedback provided by the web-based IDE used to implement customizations, as that's not even on their radar.

What might be on their radar however is that one platform has vastly more third partly customizations available, which might be the case if developers are much more inclined to develop for it, which can a directly impacted by the tools they have available to work from.

So all that to say... if it's the squeaky wheel that get's the most oil, "SQUEEEEEEEEEEEEEEEEK".

Thanks for consideration of the aforementioned issues.,
Bryan

      Zoho Campaigns Resources


        • Desk Community Learning Series


        • Digest


        • Functions


        • Meetups


        • Kbase


        • Resources


        • Glossary


        • Desk Marketplace


        • MVP Corner


        • Word of the Day


        • Ask the Experts


          Zoho CRM Plus Resources

            Zoho Books Resources


              Zoho Subscriptions Resources

                Zoho Projects Resources


                  Zoho Sprints Resources


                    Zoho Orchestly Resources


                      Zoho Creator Resources


                        Zoho WorkDrive Resources



                          Zoho CRM Resources

                          • CRM Community Learning Series

                            CRM Community Learning Series


                          • Tips

                            Tips

                          • Functions

                            Functions

                          • Meetups

                            Meetups

                          • Kbase

                            Kbase

                          • Resources

                            Resources

                          • Digest

                            Digest

                          • CRM Marketplace

                            CRM Marketplace

                          • MVP Corner

                            MVP Corner




                            Zoho Writer Writer

                            Get Started. Write Away!

                            Writer is a powerful online word processor, designed for collaborative work.

                              Zoho CRM コンテンツ



                                ご検討中の方

                                  • Recent Topics

                                  • Service op locatie organiseren met Zoho FSM: waar lopen organisaties tegenaan?

                                    Bij organisaties met service teams op locatie merken we vaak dat de complexiteit niet zozeer in de planning zelf zit, maar in wat er rond die planning gebeurt. Denk aan opvolging na interventies, consistente servicerapporten, en het bijhouden van installaties
                                  • Introducing Assemblies and Kits in Zoho Inventory

                                    Hello customers, We’re excited to share a major revamp to Zoho Inventory that brings both clarity and flexibility to your inventory management experience! Presenting Assemblies and Kits We’re thrilled to introduce Assemblies and Kits, which replaces the
                                  • Does the ability exist to make tax on the customer profile mandatory?

                                    I am reaching out to inquire about the possibility of making the "Customer Tax" field mandatory when creating a new customer in Zoho. We want to ensure that all customers have their tax information recorded to maintain compliance with our internal processes.
                                  • email association with CRM

                                    Why is it 2024 (almost 2025) and Zoho has not figured out how to integrate email with CRM? It is so inconsistent at associating emails within CRM. I am an attorney. I have clients and work with other attorneys. Attorney John Doe is associated with multiple
                                  • Fix the speed

                                    It takes ages to load on every step even though my dataset is quite small.
                                  • Credit Note for Shipped and Fatoora pushed invoices

                                    We have shipped a Sales Order and created an Invoice. The Invoice is also pushed to Fatoora Now we need to create a credit note for the invoice When we try it, it says we need to create a Sales Return in the Zoho Books, we have already created a Sales
                                  • FSM - Timesheet entires for Internal Work

                                    Hi FSM Team, Several of my clients have asked how they can manage internal timesheets within Zoho FSM. Since their technicians already spend most of their day working in FSM, it would be ideal if they could log all working hours directly in the FSM app.
                                  • Add a way of clearing fields values in Flow actions

                                    It would be great if there was an option to set a field as Null when creating flows. I had an instance today where I just wanted to clear a long integer field in the CRM based on an action in Projects but I had to write a custom function. It would be
                                  • Role Management

                                    I am creating an analytics dashboard for a company that will be utilized by its various departments such as Finance, Marketing, and HR. My goal is to design the dashboard with separate tabs for each department. Additionally, I plan to implement role-based
                                  • Highlight a candidate who is "off limits"

                                    Hello: Is there a way to highlight a candidate who is "off limits"?  I would like to have the ability to make certain candidate and / or Client records highlighted in RED or something like that.   This would be used for example when we may have placed a candidate somewhere and we want everyone in our company to quickly and easily see that they are off limits.  The same would apply when we want to put a client or former client off limits so no one recruits out of there. How can this be done? Cheers,
                                  • Announcing new features in Trident for Windows (v.1.37.5.0)

                                    Hello Community! Trident for Windows just received a major update, with a range of capabilities that strengthen email security and enhance communication. This update focuses on making your mailbox safer and your overall email experience more reliable.
                                  • Early Payment Discount customize Text

                                    Hi, I’m currently using Zoho Books and am trying to customize the standard “Early Payment Discount” message that appears in the PDF invoice template. I’ve reviewed the documentation here: https://www.zoho.com/books/help/invoice/early-payment-discount.html
                                  • Deprecation of SMS-based multi-factor authentication (MFA) mode

                                    Overview of SMS-based OTP MFA mode The SMS-based OTP MFA method involves the delivery of a one-time password to a user's mobile phone via SMS. The user receives the OTP on their mobile phone and enters it to sign into their account. SMS-based OTPs offer
                                  • Zoho Sheet - Desktop App or Offline

                                    Since Zoho Docs is now available as a desktop app and offline, when is a realistic ETA for Sheet to have the same functionality?I am surprised this was not laucned at the same time as Docs.
                                  • DKIM Now Mandatory - Changes to Zoho Forms Email Policies

                                    Hello Zoho Forms Users, This post is to inform you about an important update regarding the authentication of all email domains in your Zoho Forms account. This year, we are doubling down on our commitment to deliver a secure, seamless, and empowering
                                  • Call description in notes

                                    When completing a call, we type in the result of the call in the description. However, that does not show up under the notes history on the contact. We want to be able to see all the calls that have taken place for a contact wihtout having to go into
                                  • Email Address for Contact not Populating

                                    When I click "Send Mail" from a Contact's page, their email address does not auto populate the "To" field. How do I make this happen?
                                  • New in CRM: Dynamic filters for lookup fields

                                    Last modified on Oct 28, 2024: This feature was initially available only through Early Access upon request. It is now available to all users across all data centers, except for the IN DC. Users in the IN DC can temporarily request access using this form
                                  • Why hybrid project management might be the best fit for you?

                                    Project management techniques are designed to equip teams with proven methods for easy and efficient project execution. While management teams may have apprehensions about adopting the hybrid method of project management, we’ve compiled the top reasons
                                  • Allow all Company Users to view all projects, but only owner/admins can change projects

                                    I was wondering if there was a permission setting I could adjust to allow all our company users to see all projects created. Then, only the project owners and admins with the change permission. Thanks
                                  • Fail to send Email by deluge

                                    Hi, today I gonna update some email include details in deluge, while this msg pops up and restrict me to save but my rules has run for one year. can you tell me how to use one of our admin account or super admin account to send the email? I tried to update
                                  • Seeking help to be able to search on all custom functions that are defined

                                    Hello I have a lot of custom functions defined (around 200) and i would like to search some specific strings in the content of those. Is there a way to accomplish that? If not, is there a way to download all existing custom functions in some files locally
                                  • Totals for Sales Tax Report

                                    On the sales tax report, the column totals aren't shown for any column other than Total Tax. I can't think of a good reason that they shouldn't be included for the other columns, as well. It would help me with my returns, for sure. It seems ludicrous
                                  • Add Bulk Section / Grid Layout Duplicate Feature in Zoho Forms Builder

                                    Currently in Zoho Forms, users can only duplicate individual fields. There is no option to duplicate an entire section or two-column/grid layout with all internal fields. This becomes inefficient when building structured forms such as Family Details,
                                  • Leistungsdatum in Rechnungen (Zoho Books)

                                    Hallo, ist es irgendwie möglich den Leistungszeitraum in der Rechnung aufzuführen? Beste Grüße Aleks
                                  • Zoho Trident Windows - Streams Not Visible

                                    Namaste We’re having an issue with Streams not being visible in Trident (Windows), which is important for us as we share many emails internally. It appears that the feature to show Streams above the Inbox folder, as seen in the default mailbox view, is
                                  • Sales IQ Chat Widget is Only Displaying Last Name

                                    Can anyone suggest why the widget is only displaying "last name"?! We have the latest version of the wordpress plugin installed. Thanks Thanks!
                                  • Shopify - Item sync from Zoho Inventory

                                    Hi team, We’ve connected Shopify with Zoho Inventory. We want that when an item is created in Zoho Inventory, it must create a product in Shopify. But currently, new items created in Zoho Inventory are not getting created in Shopify even after clicking
                                  • Bulk upload image option in Zoho Commerce

                                    I dont know if I am not looking into it properly but is there no option to bulk upload images along with the products? Like after you upload the products, I will have to upload images one by one again? Can someone help me out here? And what should I enter
                                  • Is it possible to setup bin locations WITHOUT mandating batch tracking?

                                    Hi fellow zoho users, I'm wondering if anyone else has a similar issue to me? I only have some products batch tracked (items with shelf life expiry dates) but I am trying to setup bin locations for my entire inventory so we can do stock counting easier.
                                  • Kill zoho meeting

                                    Saying the quiet part out loud. Can zoho please just give up on the idea that they can make a meeting platform and just make our workplace licenses cheaper when you remove it so people can switch to zoom or teams. Tired of the excuses, you guys cant make
                                  • Utilisation de Zoho en conformité avec l’article 286 du Code général des impôts (CGI)

                                    Cher(e) client(e), Conformément à l’article 286 du Code général des impôts (CGI) impose aux entreprises assujetties à la TVA d’utiliser des systèmes de caisse ou de gestion commerciale certifiés lorsqu’elles enregistrent des ventes à des particuliers.
                                  • Unable to Create Task as a Support Administrator

                                    Hello! I want to ask for help regarding creating tasks within the tickets. I am by default the Support Admin. I should be able to create tasks or activities right? But there's a prompt that I need to contact the Administrator. See photos for reference.
                                  • Introducing Forms in Zoho Sheet

                                    We hereby bring you the power of ​forms in Zoho Sheet. ​Now, build and create your own customized forms using Zoho Sheet. Be it compiling a questionnaire or rolling out a survey, Zoho Sheet can do it all for you. Forms is an excellent feature that helps you collect information in the simplest of ways and having it in Zoho Sheet takes it a notch higher. Build Simple yet Powerful forms Building forms using Zoho Sheet is fairly simple. The exclusive 'Form' tab lets you create one quickly. Whether you
                                  • Layout one survey question in a time & redirect next Page based on previous response

                                    I have doubt while, I am scripting survey on the Zoho where I redirecting to next page based on my previous response but didn’t get success on this. Please help me on this and tell me how I layout one survey questions in a time when I submit response
                                  • Zoho Bookings form pre-filled with Zoho Forms in

                                    Hi, I've got a contact page on my website and I'd like to have the option to book an appointment (redirected to zoho bookings page) after an option is submitted on the contact form. how would I go about doing this? thanks
                                  • Support “Other” Option with Free Text in Dropdown Fields

                                    Hello Zoho Bookings Team, Greetings, We would like to request an enhancement to the registration form fields in Zoho Bookings, specifically for dropdown fields. Current Limitation: At the moment, dropdown fields do not support an “Other” option that allows
                                  • Sending automated messages that appear in the ticket's conversation thread

                                    Good morning, esteemed Zoho Desk community, warm greetings Today I am here to raise the following problem, seeking a solution that I can implement: I need to implement an automation that allows me to send reminder messages to customers when I am waiting
                                  • Introducing parent-child ticketing in Zoho Desk [Early access]

                                    Hello Zoho Desk users! We have introduced the parent-child ticketing system to help customer service teams ensure efficient resolution of issues involving multiple, related tickets. You can now combine repetitive and interconnected tickets into parent-child
                                  • Please verify my account

                                    Hi, We have just launched our website and received media coverage in our country. Hundreds of users are signing up for our platform every day. We would like to send them a welcome email, but we are unable to do so because our ZeptoMail account has not
                                  • Next Page