Click here to Skip to main content
15,351,229 members
This competition has ended

Best Article of November 2021

Contest Entries and Requirements

  1. The contest period covers the the first day of the month 12AM US Eastern Standard Time and ends the final day of the month at 11:59:59 PM US Eastern Standard Time. All entries must be submitted during this period in order to qualify.
  2. Entries must be an article, or blog entry.
  3. Articles entries must follow the CodeProject submission guidelines.
  4. No cheating, lying, plagiarizing articles, chicanery, or kicking.
  5. No author can be nominated twice.
  6. In the event an article has multiple authors and/or contributors, the number of prizes issued is solely at the discretion of the prize issuer.
  7. In the event of a tie, the number of prizes issued is solely at the discretion of the prize issuer.
  8. Multiple votes from the same IP will be automatically disqualified.
  9. The judges’ decision is final and no correspondence will be entered into.
  10. Only those who live in jurisdictions in which this contest is legal may enter.
  11. Any breach of the rules and the prize will be awarded to the runner up.
  12. By entering the contest you agree to the rules, conditions of entry, and agree that your member alias and any submitted material can be used for promotional purposes by CodeProject.
  13. Entries shall be deemed to be submitted by the authorized account holder of the email address submitted at the time of entry unless clearly indicated otherwise. "Authorized account holder" is defined as the natural person who is assigned to an email address by an internet access provider, on-line service provider, or other organization (e.g. business, educational institution, etc.) that is responsible for assigning email addresses for the domain associated with the submitted email address.

Eligibility

This competition is open to software development professionals & enthusiasts who are of the age of majority in their jurisdiction of residence; however, residents of Quebec and of the following countries are ineligible to participate due to legal constraints: Cuba, Iran, Iraq, Libya, North Korea, Sudan, and Syria. Employees (or a member of their immediate family) of CodeProject or any of their affiliates, subsidiaries, advertising or promotional agencies are also ineligible to participate. Void where prohibited by law.

How to Enter

Entry is by the submission process described above. Please read the submission requirements before submitting your entry and ensure the article is tagged with at least one of the tags corresponding to that competition's category.

Lost, late, misdirected, or illegible entries will be disqualified. Any entry containing content that CodeProject deems objectionable for any reason will be disqualified. All decisions of CodeProject with respect to any aspect of the competition, including, without limitation, the eligibility of entries, are final and binding on all entrants in all matters as they relate to this competition. CodeProject reserves its right to modify the Rules.

CodeProject assumes no responsibility for lost, late, delayed, destroyed or misdirected mail, voice messages, email or any computer errors or malfunctions. No correspondence will be entered into with entrants.

CodeProject does not assume any responsibility for incorrect or inaccurate capture of entry information, technical malfunctions, human or technical error, lost, delayed or garbled data or transmissions, omission, interruption, deletion, defect or failures of any telephone or computer line or network, computer equipment, software or any combination thereof. Entry materials/data that have been tampered with or altered are void. If for any reason, in the opinion of CodeProject in its sole discretion, the competition is not capable of running as originally planned, or if the administration, security, fairness, integrity or the proper conduct of the competition is corrupted or adversely affected, including by reason of infection by computer virus, bugs, tampering, unauthorized intervention, fraud, technical failures or any other causes beyond its control, CodeProject reserves its right to cancel, terminate, modify, amend, extend or suspend the competition including cancelling any method of entry, and select a winner from previously received eligible entries. CodeProject reserves its right in its sole discretion to disqualify any individual it finds to be tampering with the entry process or the operation of the competition or to be acting in violation of the Rules or otherwise in a disruptive manner. CodeProject reserves its right to seek remedies and damages to the fullest extent of the law for any attempts to deliberately damage the competition web site or to undermine the legitimate operation of this competition. CodeProject shall not be held responsible for any errors or negligence that may arise or occur in connection with the competition including any damage to an entrant's computer equipment, system, software or any combination thereof, as a result of their participation in this competition or from downloading any material from the competition website where applicable.

Current Entries

Articles that match the contest criteria are automatically entered. The top 50 entries are shown.

Please Sign up or sign in to vote.
17 Nov 2021
Nick Polyak
This article covers important concepts of Avalonia/WPF needed for programming and software design
Please Sign up or sign in to vote.
15 Nov 2021
Ivan Yakimov
This article contains a discussion of MediatR NuGet package.
Please Sign up or sign in to vote.
27 Nov 2021
honey the codewitch
How to take your IoT graphical interface from the mid-1990s into the present
Please Sign up or sign in to vote.
15 Dec 2021
john morrison leon
A smart pointer to an object already owned by a unique_ptr. It doesn't own the object but it self zeroes when the object is deleted so that it can never dangle.
Please Sign up or sign in to vote.
12 Nov 2021
Shahed Nasser
This tutorial will explain PDF manipulation, its importance, and its use cases.
Please Sign up or sign in to vote.
12 Nov 2021
Peter Huber SG
A detailed guide how to write your own collection.
Please Sign up or sign in to vote.
22 Nov 2021
Michael Sydney Balloni
Wanna add basic database functionality to your C++ app? Too lazy to use SQLite directly? Read on!
Please Sign up or sign in to vote.
1 Nov 2021
Pete O'Hanlon
How to use interfaces to set up types so they have certain behaviors
Please Sign up or sign in to vote.
27 Nov 2021
Mircea Neacsu
Effective management tool for multiple libraries
Please Sign up or sign in to vote.
12 Nov 2021
Karl_Hughes
In this tutorial, you’ll see how to create a NodeJS application that uses the Foxit PDF SDK to generate PDF invoices from HTML invoices in a web app.
Please Sign up or sign in to vote.
8 Nov 2021
honey the codewitch
Deep dive some advanced source generation in a real world application
Please Sign up or sign in to vote.
1 Nov 2021
Ilija Poznić
Adding class selector to WPF
Please Sign up or sign in to vote.
13 Nov 2021
Mark Beharrell
A queue based UDP protocol
Please Sign up or sign in to vote.
22 Nov 2021
Allegra Angelo
Create a multipage TIFF image from images
Please Sign up or sign in to vote.
2 Nov 2021
Herman<T>.Instance
Migrations does not apply to T-SQL rules for ALTER TABLE ALTER COLUMN
Please Sign up or sign in to vote.
1 Nov 2021
Bohdan Stupak
Short tip explaining the importance of asynchronous communication
Please Sign up or sign in to vote.
12 Nov 2021
Jeff_Griffith
In this article series we will demonstrate how to build out Microsoft Teams apps in Java.
Please Sign up or sign in to vote.
19 Nov 2021
Image class which contains an array of unique colors with counts used to sort by color and find duplicates.
Please Sign up or sign in to vote.
24 Nov 2021
Arctype SQL
There are 3 major types of database models in use today. Learn about their differences and what applications they are good for.
Please Sign up or sign in to vote.
16 Nov 2021
Jeff_Griffith
In this article we'll explore creating a conversational tab app.
Please Sign up or sign in to vote.
16 Nov 2021
Greg Serochi
In this article we take you through the process of migrating your existing deep learning models over to Gaudi and show the basic steps to get your model ready to run.
Please Sign up or sign in to vote.
15 Nov 2021
Jeff_Griffith
In this article we'll explore creating a channel or group tab with SSO.
Please Sign up or sign in to vote.
16 Nov 2021
Gurbinder Gill
This article will cover what's in the library, how to get access to the library, usage examples, and benchmark data to highlight performance.
Please Sign up or sign in to vote.
22 Nov 2021
Herman<T>.Instance
Short route to fix this issue
Please Sign up or sign in to vote.
23 Nov 2021
Raphael Mun
In this article, we explore packaging then deploying a game to Azure PlayFab servers.
Please Sign up or sign in to vote.
24 Nov 2021
Raphael Mun
In this article I’ll show you how to add PlayFab player authentication to your game.
Please Sign up or sign in to vote.
25 Nov 2021
Raphael Mun
In this article, we’ll put our two game components together to enable players to log in and start matchmaking.
Please Sign up or sign in to vote.
15 Nov 2021
Alexey Skripka
The architecture of a multilayer application with homogeneous layer structure is described.
Please Sign up or sign in to vote.
29 Nov 2021
Uladzislau Baryshchyk
This series of articles consists of three articles, in which I will demonstrate step by step how to create a .NET core MVC project
Please Sign up or sign in to vote.
8 Nov 2021
DebugST
Use [Unicode 14.0.0] version. Can support automatic code generation according to the latest version.
Please Sign up or sign in to vote.
5 Nov 2021
#realJSOP
One way to allow access to multiple model entities within a ASP.NET MVC view.
Please Sign up or sign in to vote.
29 Nov 2021
Dmytro Striletskyi
The project helps you to delete namespaces as a namespace equals to all resources that belong to a feature branch in Kubernetes cluster.
Please Sign up or sign in to vote.
12 Nov 2021
Karl_Hughes
In this tutorial, we build a Node web application that allows users to preview password-protected PDFs in their browser securely.
Please Sign up or sign in to vote.
23 Feb 2022
Nick Polyak
Describes the new powerful features of UniDock, the new multiplatform UI docking framework.
Please Sign up or sign in to vote.
24 Nov 2021
Rick Drizin
An overview of how to design a scalable Multi-Tenant Database using Row-Level Security Predicate Functions and DDL triggers to enforce that all shared tables are always restricted according to the tenant.
Please Sign up or sign in to vote.
13 Nov 2021
The Ænema
This article brings you a very detailed but easy to learn experience on creating your own x64 PE packer/protector using only VC++!
Please Sign up or sign in to vote.
26 Nov 2021
Tomasz Malicki
Basic PowerShell handler C# class with an explanation
Please Sign up or sign in to vote.
18 Nov 2021
Nick Polyak
New simple and flexible package for Theming and Localizing multiplatform Avalonia applications is described here with samples
Please Sign up or sign in to vote.
23 Nov 2021
honey the codewitch
Easily compare collections for equality
Please Sign up or sign in to vote.
7 Nov 2021
Pete O'Hanlon
How to implement interfaces in TypeScript, inherit from classes and a whole lot more.
Please Sign up or sign in to vote.
17 Nov 2021
Matthew Casperson
In this article, we’ll create an authentication provider and look at how to use the Graph API client from a Spring Boot web application.
Please Sign up or sign in to vote.
9 Nov 2021
Member 12660776
Programmatically Adding New ConfigurationSectionGroup Corrupts Declaration Section With Multiple Group Declarations.
Please Sign up or sign in to vote.
18 Nov 2021
Matthew Casperson
In this article of this series, we’ll use the Graph API client to consume OneNote documents through a microservice that allows them to be converted into Markdown format.
Please Sign up or sign in to vote.
1 Nov 2021
freedeveloper
The foreach loop and in any case, the for loop in C# can get a great benefit in performance by using await and Task instruction. But this is not always possible.
Please Sign up or sign in to vote.
21 Nov 2021
REALTBU
Easy to use class which supports displaying icons on button controls
Please Sign up or sign in to vote.
23 Nov 2021
Peter_Vogel
Unit testing your Web Service API should be just that: unit testing your API. With the wrong approach, though, API testing can take over your whole testing plan. A great unit testing strategy makes sure of two things: You create good tests and you just test your API.
Please Sign up or sign in to vote.
1 Nov 2021
Cinchoo
Tip to merge different CSV files into one CSV file using Cinchoo ETL
Please Sign up or sign in to vote.
7 Nov 2021
Cinchoo
Use Cinchoo ETL to deserialize selective XML nodes from large XML file

Current Participants

Those with articles that match the contest criteria are automatically entered.

#realJSOP
Software Developer (Senior) Paddedwall Software
United States United States
I've been paid as a programmer since 1982 with experience in Pascal, and C++ (both self-taught), and began writing Windows programs in 1991 using Visual C++ and MFC. In the 2nd half of 2007, I started writing C# Windows Forms and ASP.Net applications, and have since done WPF, Silverlight, WCF, web services, and Windows services.

My weakest point is that my moments of clarity are too brief to hold a meaningful conversation that requires more than 30 seconds to complete. Thankfully, grunts of agreement are all that is required to conduct most discussions without committing to any particular belief system.
Alexey Skripka
Ukraine Ukraine
No Biography provided
Allegra Angelo
Systems / Hardware Administrator
Italy Italy
No Biography provided
Arctype SQL
Technical Writer Arctype
United States United States
Download our free SQL editor at https://www.arctype.com
Group type: Organisation

3 members

Bohdan Stupak
Team Leader
Ukraine Ukraine
Team leader with 8 years of experience in the industry. Applying interest to a various range of topics such as .NET, Go, Typescript and software architecture.
Cinchoo
United States United States
No Biography provided
DebugST
China China
No Biography provided
Dmytro Striletskyi
United States United States
No Biography provided
freedeveloper
Software Developer (Senior) Avalon Development
United States United States
Jose A. Garcia Guirado, Electronic Engineer, graduated in Havana/Cuba 1982, MCTS, MCSD.NET, MCAD.NET, MCSE. Worked in the Institute for Cybernetics and Mathematics of Academy of Science of Cuba for 8 years; since 1995 working as free software architect, developer and adviser, first in Argentina and from 2003 to 2010, in Germany as External consultant in DWS Luxembourg, AIXTRON AG and Shell Deutschland GmbH and from 2010 to 2012 in Mexico working for Twenty Century Fox, and Mexico Stock Exchange (BMV). From 2010 to now in USA, Florida, First in FAME Inc. and now as Senior Software Engineer in Spirit Airlines.
Greg Serochi
United States United States
Application Engineer and Technical Program Manager, Habana Labs
Gurbinder Gill
United States United States
Senior Software Engineer, Katana Graph Inc.
Herman<T>.Instance
Software Developer (Senior)
Netherlands Netherlands
I started in the eightees with Basic and QuickBasic. When the ninetees started dBase was my thing. Close to the millenium years I swapped to C++ and since 2003 it is only programming in c#.

There is one thing about me.
Not that kind of OO guy and definately not an ORM-fan. I know a database to well to give the importance of data out in the hands of a tool.
honey the codewitch
United States United States
Just a shiny lil monster. Casts spells in C++. Mostly harmless.
Ilija Poznić
Software Developer (Senior) Ilija Poznić PR PI Elektronika
Serbia Serbia
No Biography provided
Ivan Yakimov
Software Developer (Senior) Forsta
Russian Federation Russian Federation
No Biography provided
Jeff_Griffith
United States United States
No Biography provided
john morrison leon
Retired
Spain Spain
Software Author with engineering, science and mathematical background.

Many years using C++ to develop responsive visualisations of fine grained dynamic information largely in the fields of public transport and supply logistics. Currently interested in what can be done to make the use of C++ cleaner, safer, and more comfortable.
Karl_Hughes
United States United States
Karl is a former startup CTO and the founder of Draft.dev. He writes about technical blogging and content management.
keerthi raja
Technical Lead HCL Technologies LTD
India India
Full stack developer with over 10.1 years of IT industry experience in Microsoft .Net & SQL on application Design, Development & Production supportProficient in building Web Applications using Microsoft .Net Core & Framework, C#, ASP.NET MVC & Web API, SQL Server, Micro ORM, Entity Framework, jQuery, Bootstrap, WCF and Dependency Injection.

• Strong knowledge in N-Tier architecture applications and SOA (Service Oriented Architecture) based services.

• Architecting applications with industry best practices, using SOLID DRY SOC design principles, Dependency Injection, Onion Architecture, and Aspect Oriented Programming for Logging and Repository Pattern for Database Communication.

• Expertise on developing MVC Application with best practices using Areas, Attribute based Routing, Responsive Web Design and jQuery with modular pattern.

• Expertise on using Tuples and DTO (Data Transfer Objects) for efficient and quick data transfer.

• Strong hands experience in writing test cases faster using Specflow (BDD), MSTest, Nbuilder, Faker and MOQ frameworks to achieve best code coverage.

• Worked on Security features using form and windows Authentication for web applications and token-based for Web API and role-based Authorization.

• Expertise on writing honest methods, refactoring code using Resharper/StyleCop to create clean, reusable, scalable code and improve performance.

Mark Beharrell
New Zealand New Zealand
No Biography provided
Matthew Casperson
Technical Writer
Australia Australia
Member 12660776
United States United States
No Biography provided
Michael Sydney Balloni
Software Developer
United States United States
Michael Balloni is a manager of software development at a cybersecurity software and services provider.

Check out https://www.michaelballoni.com for all the programming fun he's done over the years.

He has been developing software since 1994, back when Mosaic was the web browser of choice. IE 4.0 changed the world, and Michael rode that wave for five years at a .com that was a cloud storage system before the term "cloud" meant anything. He moved on to a medical imaging gig for seven years, working up and down the architecture of a million-lines-code C++ system.

Michael has been at his current cybersecurity gig since then, making his way into management. He still loves to code, so he sneaks in as much as he can at work and at home.
Mike-mei
United States United States
No Biography provided
Mircea Neacsu
Canada Canada
Mircea is an OOP (old, opinionated programmer) with more years of experience than he likes to admit. Always opened to new things, he is however too bruised to follow any passing fad.

Lately he hangs around here hoping that some of the things he learned can be useful to others.
Nick Polyak
Architect AWebPros
United States United States
I am a software architect and a developer with great passion for new engineering solutions and finding and applying design patterns.

I am passionate about learning new ways of building software and sharing my knowledge with others.

I worked with many various languages including C#, Java and C++.

I have my Ph.D. from RPI.

here is my linkedin profile
Pete O'Hanlon
CEO
United Kingdom United Kingdom
A developer for over 30 years, I've been lucky enough to write articles and applications for Code Project as well as the Intel Ultimate Coder - Going Perceptual challenge. I live in the North East of England with 2 wonderful daughters and a wonderful wife.

I am not the Stig, but I do wish I had Lotus Tuned Suspension.
Peter Huber SG
Software Developer (Senior)
Singapore Singapore
Retired SW Developer from Switzerland living in Singapore

Interested in WPF projects.
Peter_Vogel
United States United States
Peter Vogel is a system architect and principal in PH&V Information Services. PH&V provides full-stack consulting from UX design through object modeling to database design. Peter also writes courses and teaches for Learning Tree International.
Raphael Mun
United States United States
Raphael Mun is a tech entrepreneur and educator who has been developing software professionally for over 20 years. He currently runs Lemmino, Inc and teaches and entertains through his Instafluff livestreams on Twitch building open source projects with his community.
REALTBU
United States United States
No Biography provided
Rick Drizin
Software Developer (Senior)
United States United States
I'm passionate about building things since I was born and passionate about computers and programming since I was a kid. I taught myself programming when I was 12 by reading some BASIC programming books and never stopped since then, having played and worked with dozens of technologies.

I have more than 20 years of work experience, having played both technical and management roles, and having worked for companies in many different sectors, including Financial Institutions, Healthcare, and Startups.

I have a Bachelor's degree in Computer Science from University of São Paulo, and an MBA degree from Fundação Getúlio Vargas, both top-ranked universities in Latam. Born and raised in Brazil, lived in Chile for a while, now living in Florida (Fort Lauderdale Area).

If you like my articles please check and follow me on https://github.com/Drizin
Shahed Nasser
Web Developer
Lebanon Lebanon
Shahed is a full-stack developer with high expertise in web development. She also loves writing technical articles, as they help her learn, become better, and spread her knowledge in the hopes that it will help someone out there.
The Ænema
Engineer MemarDesign™ LLC.
France France
This is your last chance. After this, there is no turning back. You take the blue pill - the story ends, you wake up in your bed and believe whatever you want to believe. You take the red pill - you stay in Wonderland and I show you how deep the rabbit-hole goes. - Matrix


Hamid.Memar
Tomasz Malicki
Retired
Poland Poland
Retired administrator of Microsoft systems, such as corporate AD and corporate Echange e-mail, creator of their on-prem implementation, assembling programs for his own use since 1982 (then in machine code 8080, today most often C #)
Uladzislau Baryshchyk
Software Developer (Senior)
United States United States
No Biography provided

Contest Entries and Requirements

  1. The contest period covers the the first day of the month 12AM US Eastern Standard Time and ends the final day of the month at 11:59:59 PM US Eastern Standard Time. All entries must be submitted during this period in order to qualify.
  2. Entries must be an article, or blog entry.
  3. Articles entries must follow the CodeProject submission guidelines.
  4. No cheating, lying, plagiarizing articles, chicanery, or kicking.
  5. No author can be nominated twice.
  6. In the event an article has multiple authors and/or contributors, the number of prizes issued is solely at the discretion of the prize issuer.
  7. In the event of a tie, the number of prizes issued is solely at the discretion of the prize issuer.
  8. Multiple votes from the same IP will be automatically disqualified.
  9. The judges’ decision is final and no correspondence will be entered into.
  10. Only those who live in jurisdictions in which this contest is legal may enter.
  11. Any breach of the rules and the prize will be awarded to the runner up.
  12. By entering the contest you agree to the rules, conditions of entry, and agree that your member alias and any submitted material can be used for promotional purposes by CodeProject.
  13. Entries shall be deemed to be submitted by the authorized account holder of the email address submitted at the time of entry unless clearly indicated otherwise. "Authorized account holder" is defined as the natural person who is assigned to an email address by an internet access provider, on-line service provider, or other organization (e.g. business, educational institution, etc.) that is responsible for assigning email addresses for the domain associated with the submitted email address.

Eligibility

This competition is open to software development professionals & enthusiasts who are of the age of majority in their jurisdiction of residence; however, residents of Quebec and of the following countries are ineligible to participate due to legal constraints: Cuba, Iran, Iraq, Libya, North Korea, Sudan, and Syria. Employees (or a member of their immediate family) of CodeProject or any of their affiliates, subsidiaries, advertising or promotional agencies are also ineligible to participate. Void where prohibited by law.

How to Enter

Entry is by the submission process described above. Please read the submission requirements before submitting your entry and ensure the article is tagged with at least one of the tags corresponding to that competition's category.

Lost, late, misdirected, or illegible entries will be disqualified. Any entry containing content that CodeProject deems objectionable for any reason will be disqualified. All decisions of CodeProject with respect to any aspect of the competition, including, without limitation, the eligibility of entries, are final and binding on all entrants in all matters as they relate to this competition. CodeProject reserves its right to modify the Rules.

CodeProject assumes no responsibility for lost, late, delayed, destroyed or misdirected mail, voice messages, email or any computer errors or malfunctions. No correspondence will be entered into with entrants.

CodeProject does not assume any responsibility for incorrect or inaccurate capture of entry information, technical malfunctions, human or technical error, lost, delayed or garbled data or transmissions, omission, interruption, deletion, defect or failures of any telephone or computer line or network, computer equipment, software or any combination thereof. Entry materials/data that have been tampered with or altered are void. If for any reason, in the opinion of CodeProject in its sole discretion, the competition is not capable of running as originally planned, or if the administration, security, fairness, integrity or the proper conduct of the competition is corrupted or adversely affected, including by reason of infection by computer virus, bugs, tampering, unauthorized intervention, fraud, technical failures or any other causes beyond its control, CodeProject reserves its right to cancel, terminate, modify, amend, extend or suspend the competition including cancelling any method of entry, and select a winner from previously received eligible entries. CodeProject reserves its right in its sole discretion to disqualify any individual it finds to be tampering with the entry process or the operation of the competition or to be acting in violation of the Rules or otherwise in a disruptive manner. CodeProject reserves its right to seek remedies and damages to the fullest extent of the law for any attempts to deliberately damage the competition web site or to undermine the legitimate operation of this competition. CodeProject shall not be held responsible for any errors or negligence that may arise or occur in connection with the competition including any damage to an entrant's computer equipment, system, software or any combination thereof, as a result of their participation in this competition or from downloading any material from the competition website where applicable.

You must sign in to participate in this contest.
This contest has ended.
1 Nov - 30 Nov 2021