• SuiteCRM Report Not Working When Grouping and Sorting By Date Field

    SuiteCRM report broken

    SuiteCRM is a really nice open source CRM application. It has a powerful reporting function but at a time you may face an issue. I wanted to generate a report in which I want to group by Formatted Date and also sort the report by formatted date. When I tried to use the built in…


  • How to Remove Mail Server From Spamhaus Blacklist?

    Spamhaus IP Address Blacklist Removal Process

    I have been using Digital Ocean for hosting couple of Websites from past couple of years. I am using a dedicated droplet as a mail server which hosts emails for all the domains. One day Gmail started bouncing emails from my mail server. I found out that Gmail is using Spamhaus blacklist to block emails…

  • Gmail Rejecting Emails: Spamhaus Blacklisted Digital Ocean Mail Server

    Gmail Refusing Mail Server Emails

    I felt a shock when I saw a pile of undelivered emails from Gmail in my Inbox. All the bounced emails had following details. I did not know what would be the root cause so I went through couple of checks. Possible Root Causes for Gmail Rejecting Emails I went through following possible root causes…

  • Excel Interop Slow? 3 Ways to Boost Performance.

    Excel Interop Slow? Boost Performance with These Tricks

    Are you reading Excel file using Interop library? Is the application performance sluggish? Well, Interop is slow but that does not mean that you cannot improve performance. Understanding the root cause and avoiding pitfalls will surely help you improve the performance. Making a minor tweaks in code, I was able to reduce the time of…


  • VB .Net to C# Conversion – RadioButton.CheckedChanged Event Not Firing

    Radio Button CheckedChanged event not firing in C# but fires in VB .Net

    In your Winforms application you have a radio button. If the user changes the value, you want to get notified. You will use RadioButton.CheckedChanged event. Your code works fine but here is a problem. The programming language you use determines when this event will be fired for the first time. If you are using VB…


  • Ubuntu 20: How to Enable TLS 1.0 and TLS 1.1 On Apache

    Ubuntu Apache Enable TLS 1.1 and 1.0

    When I migrated a site to a new Ubuntu 20 server, I faced an issue. I have a .Net application that is connecting to the my website. If the application is running on Windows 7, it cannot connect to the Website but if the application runs on Windows 10, it works. I figured out that…


  • Step By Step Guide to Convert VB .NET Projects to C#

    Steps to successfully convert VB .NET to C# Projects

    Have you inherited VB .Net projects those were developed over years by multiple developers? You would definitely resonate my feeling when you think about converting VB .Net projects to C#. Of course, this conversion is not for faint of heart but careful planning, a good conversion tool and ample testing will help you successfully convert…


  • How to Add Project Web App Accounts to MS Project

    Add PWA Account

    Are you trying to add Project Web App (PWA) to your MS Project? Are you not finding a way to connect to your PWA instance? Here is a step by step guide to connect to your PWA. Open MS Project. Create a new blank project. Within new blank project, go to File menu > Info…


  • SuiteCRM Print as PDF Shows Blank White Page

    SuiteCRM print as pdf shows blank white page

    I am using SuiteCRM and suddenly when I try to generate pdf, it shows blank white page. Same functionality was working fine for years and there is no change in SuiteCRM or server. I tried to search within SuiteCRM log available at SuiteCRM ROOT > suitecrm.log and PHP log but it did not contain any…


  • Callback for Specific Animation Completion Event in Phaser 3

    In Phaser 3, you can define animation for a sprite. It is possible that you want to know when the animation will be completed. Phaser 3 provides a rich set of callback functions including animation completion event. If there is only a single animation defined for a sprite, you can use any of the following…