Welcome to the SubMain Support Portal

Our portal offers users a number of support resources, from the ability to initiate tickets and live chats with our agents to Community and self-help resources via our Knowledge Base. In addition, other resources are available for users like our Forums and YouTube channel, and, of course, you can reach out to us via our social channels on Twitter and Google+.

If you are looking to retrieve the purchased product license codes or latest product version licenses (for the eligible users), please visit the MyAccount page.

Search the Portal

Recent Articles

FEB23
Quick Tips for Better C# Security

Application security is a hot topic. No one wants to write code that leads to the next data breach or major headline. C# security is on the minds of many .NET developers. Secure coding involves detailed knowledge of a programming language and framework. There could be dozens of rules articulated here with detailed code examples showing right versus wrong coding practices. However, that might lead to quite a bit of dry reading and low retention. Instead, I’ll take a different angle. I’ll...

SubMain News by Justin Boyer
JAN1
Can We Retire the Design Document, Already?

In the interest of running a social experiment to amuse myself, I won’t do a Google search for the term design document. I could easily do this, but I won’t. Instead, I’m going to hazard a guess as to what the search would yield: a Wikipedia article and a bunch of really old web pages that use the passive voice a lot. I say this because design documents, like the singleton design pattern and systems such as Hungarian notation, were legitimately good-seeming ideas that just landed on the...

SubMain News by Erik Dietrich
JAN1
Time Wasters for Programmers and How to Avoid Them

Time is one resource we can’t replenish, and time wasters sap that precious resource. For programmers, using your time wisely can be the difference between really impressing your clients or employer and being the expendable one when things get tough. Saving time is not always about good practices. It’s also about avoiding things that waste your time without you even noticing. Let’s take a look at some time wasters and how programmers can avoid them. Time Wasters in the Office When a...

SubMain News by Justin Boyer
JAN1
GhostDoc v2018 Beta 3 is available

(Feb 14, 2018) Update: the new build v2018.0.18045 has been posted that addresses the early Beta 3 issues reported. Changes in the Beta 3, build v2018.0.18030 – New feature – Document Project – now can generate XML Comment templates for a whole project Added support for the tag – for type members only in the XML Comments as well as the generated help documentation. This allows using the tag instead of copying the documentation from base members and synchronizing the changes...

SubMain News by Serge Baranovsky
JAN1
CodeIt.Right Rules Explained, Part 13

It’s time for another post in the CodeIt.Right Rules Explained series. If this is the first such post you’ve seen, I’ll explain briefly how it works. CodeIt.Right is an automated code review tool for .NET, and it has a bunch of rules. In these posts, I explain those rules in detail. Whenever I post in this series, I start with my two rules of thumb for static analysis. Never implement a suggested fix without knowing what makes it a fix. Never ignore a suggested fix without understanding...

SubMain News by Erik Dietrich
JAN1
How Do You Evaluate Code Readability?

Evaluating code readability is actually pretty easy. I’ll explain it in a way that you can easily illustrate with a flow diagram. And you can see if you agree with my assessment. Did someone else write this code? If so, it’s not readable. Did I write this code but more than six months ago? If so, it’s not readable. Otherwise, it’s readable. Sound about right? I kid, but only kind of. This tends to be my visceral, subconscious reaction before I reign myself in and think rationally. And...

SubMain News by Erik Dietrich
JAN1
Coding Best Practices When You’re Short On Time

One topic in software development that really fascinates me is coding best practices. I’m always searching for ways to improve my work and deliver value in a fast and consistent manner. It can be tricky to define what a “coding best practice” is. Some people are even in favor of downright retiring the term! But one thing pretty much everyone agrees upon is this: coming up with and implementing strategies—by whatever name you call them—to improve the output of one’s work is something that any...

SubMain News by Carlos Schults
JAN1
4 Common Datetime Mistakes in C# — And How to Avoid Them

Do you remember the “falsehoods programmers believe about X” meme that became popular among software blogs a few years ago? The first one was about names, but several others soon followed, covering topics such as addresses, geography, and online shopping. My favorite was the one about time. I hadn’t thought deeply about time and its intricacies up until that point, and I was intrigued by how a fundamental domain could be such a fertile ground for misunderstandings. Now even though I like...

SubMain News by Carlos Schults