Click here to Skip to main content
15,868,014 members
This competition has ended

Best Article of September 2022

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.

Please Sign up or sign in to vote.
11 Sep 2022Mark Pelf
Tutorial article on Asynchronous Events invocation in C#
Please Sign up or sign in to vote.
8 Sep 2022Bruno van Dooren
How concepts can be used in template programming for partial specialization
Please Sign up or sign in to vote.
27 Sep 2022Michael Sydney Balloni
Different languages and approaches are evaluated for a file and string processing benchmark
Please Sign up or sign in to vote.
3 Sep 2022honey the codewitch
Understand the difference between headers and source files, what they do, and how they work together.
Please Sign up or sign in to vote.
16 Sep 2022Gwyll
We're in a Dark Age when it comes to Software Development. We need a Renaissance.
Please Sign up or sign in to vote.
16 Oct 2022Shao Voon Wong
C++11 Range For-Loop to Enumerate Registry, Folder and WMI
Please Sign up or sign in to vote.
16 Sep 2022Arthur V. Ratz
Compute the Levenshtein distance of literal strings effectively by using the Wagner-Fischer (two matrix rows-based) algorithm.
Please Sign up or sign in to vote.
15 Nov 2023honey the codewitch
Generate tight C code to match text based on regular expressions
Please Sign up or sign in to vote.
10 Sep 2022Mikhail Semenov
This article shows that double-ended vector is much faster than std::deque and should be preferred.
Please Sign up or sign in to vote.
13 Sep 2022David O'Neil
Create drastic life improvements by completing your Wordle puzzle in minutes instead of days!
Please Sign up or sign in to vote.
22 Sep 2022Bruno van Dooren
This article shows how to retrieve the Privileges and Groups that are part of an access token such as the current thread token.
Please Sign up or sign in to vote.
2 Sep 2022Peter Huber SG
Concurrent threads can use LogViewer to show the user scrollable information efficiently
Please Sign up or sign in to vote.
8 Sep 2022Taiseer Joudeh
Part 1 of a 10 post tutorial where we will build a full microservices app using Dapr and then deploy it to Azure Container Apps
Please Sign up or sign in to vote.
12 Sep 2022Michael Sydney Balloni
A .NET client-server application for sending files over a network
Please Sign up or sign in to vote.
6 Sep 2022EgorYusov
An implementation of a basic path tracer with Diligent Engine
Please Sign up or sign in to vote.
18 Sep 2022Mikhail Semenov
This article proposes a mapping algorithm, called Segmented Map, which is almost as fast as Flat Map is random access and enumeration of elements and close to std::map in insertion of elements.
Please Sign up or sign in to vote.
7 Sep 2022Bruno van Dooren
Symantec can cause valid applications to crash and be gone without a trace
Please Sign up or sign in to vote.
19 Sep 2022Gwyll
Simplifying Software Design, Development, and Management
Please Sign up or sign in to vote.
18 Sep 2022towaso
A short example on how to create a hierarchical web checklist
Please Sign up or sign in to vote.
22 Sep 2022Chris_Green
It all started with an email sent to a daemon.  A windows service hosting two modules, each of which monitors an inbox for automation, dutifully ignored warnings from IT that basic authentication for O365 would be switched off in several months. This is how we solved it.
Please Sign up or sign in to vote.
23 Sep 2022Illya Reznykov
Functions that manipulate CloudWatch log group by PowerShell Core
Please Sign up or sign in to vote.
1 Sep 2022Shaun C Curtis
An in depth look at how to use Blazor's OwningComponentBase
Please Sign up or sign in to vote.
3 Sep 2022PascalLandau
How to create VMs, use a container registry and a secret manager
Please Sign up or sign in to vote.
5 Sep 2022Alen Toma
Generate and execute external full js code in react-native and nodejs
Please Sign up or sign in to vote.
9 Sep 2022Member 10211581
Converts a column of timestamps with a format "hh:mm:ss.000" (or similar) to a column of cumlative decimal values of time in units of sec, min, hrs or days.
Please Sign up or sign in to vote.
22 Sep 2022Gwyll
Put the Work in a Worker
Please Sign up or sign in to vote.
15 Sep 2022Christian Specht
Overlay gallery images with logo using one of Hugo's available image filters
Please Sign up or sign in to vote.
18 Sep 2022Illya Reznykov
Functions that get information about web ACL by PowerShell Core with AWS CLI
Please Sign up or sign in to vote.
20 Sep 2022Giovanni Scerra
A simple and easily extensible IP geo-fencing engine
Please Sign up or sign in to vote.
24 Sep 2022Illya Reznykov
The post describes PowerShell script which creates WAF resources for the scenario when Application Load Balancer is used to serve content for a public website, but to block requests from attackers and to protect from OWASP Top 10 security risks.
Please Sign up or sign in to vote.
16 Sep 2022Peter Huber SG
How you should organise your backups in the time of cloud storage and write your own app for it
Please Sign up or sign in to vote.
11 Sep 2022Rahul Dev Tripathi
The fully working sample code explains everything necessary to create a Minifilter driver to block devices connected through an interface.
Please Sign up or sign in to vote.
6 Sep 2022Michael Chourdakis
This class allows math between any size big number, as long as your available memory can handle it.
Please Sign up or sign in to vote.
13 Apr 2023Stanko Milošev
Making a custom button with smart tag and UIEditor in .NET 6
Please Sign up or sign in to vote.
9 Sep 2022Daniele Alberto Galliano
A guest OS for IoT devices, that can adapt easily to many different tasks
Please Sign up or sign in to vote.
4 Sep 2022Michael Chourdakis
A quick implementation of my ideas
Please Sign up or sign in to vote.
26 Sep 2022Necmettin Demir
All steps to host a web app files in EC2 and accessing them through FTP
Please Sign up or sign in to vote.
8 Sep 2022Telegram:@ArastoAhmadi
Tutorial to monitor database changes without using tools and by using a simpler trick
Please Sign up or sign in to vote.
12 Sep 2022Han Bo Sun
How to stream a large file and support byte range seeking using Spring Boot

Current Participants

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

Software Developer (Senior)
Sweden Sweden
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Software Developer (Senior) EpsilonDev
Ukraine Ukraine
I’m software developer, system analyst and network engineer, with over 20 years experience, graduated from L’viv State Polytechnic University and earned my computer science and information technology master’s degree in January 2004. My professional career began as a financial and accounting software developer in EpsilonDev company, located at L’viv, Ukraine. My favorite programming languages - C/C++, C#.NET, Java, ASP.NET, Node.js/JavaScript, PHP, Perl, Python, SQL, HTML5, etc. While developing applications, I basically use various of IDE’s and development tools, including Microsoft Visual Studio/Code, Eclipse IDE for Linux, IntelliJ/IDEA for writing code in Java. My professional interests basically include data processing and analysis algorithms, artificial intelligence and data mining, system analysis, modern high-performance computing (HPC), development of client-server web-applications using various of libraries, frameworks and tools. I’m also interested in cloud-computing, system security audit, IoT, networking architecture design, hardware engineering, technical writing, etc. Besides of software development, I also admire to write and compose technical articles, walkthroughs and reviews about the new IT- technological trends and industrial content. I published my first article at CodeProject in June 2015.
Software Developer
Belgium Belgium
I am a former professional software developer (now a system admin) with an interest in everything that is about making hardware work. In the course of my work, I have programmed device drivers and services on Windows and linux.

I have written firmware for embedded devices in C and assembly language, and have designed and implemented real-time applications for testing of satellite payload equipment.

Generally, finding out how to interface hardware with software is my hobby and job.
Architect Avaya Inc.
Ireland Ireland
Formerly a C++ client developer, nowadays I'm all about C# and ASP.NET. Over the years I have mastered some and played with many aspects of .NET.

Follow my blog as I catalogue the more arcane problems I encounter and their solutions at CodingLifestyle.com
Software Developer
Germany Germany
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Software Developer (Senior) JRC
Italy Italy
Programming enthusiast since 1982, I experienced many different technologies: this lets me appreciate the strong points of each and avoid pitfalls.
Since I started using .Net and C# I grew more and more passionate with this new fascinating course of Microsoft.
Recently, I concentrated less on web technologies to investigate mobile and IoT technologies.
The most recent project is Desktop again, though.
Software Developer www.randommonkeyworks.com
United States United States
I am the author of Laughing at the Devil: One Man’s Religious Discoveries. If you want to understand the astronomic investigations of our priests 3,000 years ago, LATD is the book to turn to. It opens up the thoughts that pushed them away from their earlier polytheism and towards our current definition of God.

Trained as a mechanical engineer, I have been involved with design, supervision, and project management. I taught myself C++ programming in order to play around with binaural beats more easily. I've also created various databases to help with project management and personal tasks.

Databases are cool and extremely useful! Happy coding, everybody!
United States United States
Being a 3D graphics enthusiast for many years, I have worked on various rendering technologies including deformable terrain, physically-based water, shadows, volumetric and post-processing effects and other. I run Diligent Graphics as a place where I can experiment, learn new technologies, try new algorithms and share my ideas.
Technical Lead
United States United States
Technical Director at AFS Technologies, New York, NY

More info about my skills, projects, presentations, etc.:
https://www.linkedin.com/in/giovanniscerra
United States United States
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Team Leader The Judge Group
United States United States
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
United States United States
Just a shiny lil monster. Casts spells in C++. Mostly harmless.
Software Developer (Senior)
Ukraine Ukraine
• Have more than 25 years of the architecting, implementing, and supporting various applications from small desktop and web utilities up to full-fledged cloud SaaS systems using mainly Microsoft technology stack and implementing the best practices.
• Have significant experience in the architecting applications starting from the scratch and from the existent application (aka “legacy”) where it is required to review, refactor, optimise the codebase and data structure, migrate to new technologies, implement new features, best practices, create tests and write documentation.
• Have experience in project management, collecting business requirements, creating MVP, working with stakeholders and end users, and tasks and backlog management.
• Have hands-on experience in the setting up CI/CD pipelines, the deploying on-premise and cloud systems both in Azure and AWS, support several environments.
• As Mathematician, I interested much in the theory of automata and computer algebra.
Software Developer
Serbia Serbia
Mark Pelf is the pen name of just another Software Engineer from Belgrade, Serbia.
My Blog https://markpelf.com/
Software Developer Seagate
United States United States
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Software Developer
Greece Greece
I'm working in C++, PHP , Java, Windows, iOS, Android and Web (HTML/Javascript/CSS).

I 've a PhD in Digital Signal Processing and Artificial Intelligence and I specialize in Pro Audio and AI applications.

My home page: https://www.turbo-play.com
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.
Software Developer (Senior)
United Kingdom United Kingdom
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Software Developer (Senior) NEBULACT
United Kingdom United Kingdom
Necmettin Demir is developer at NEBULACT Ltd. in London/UK.
He has BSc and MSc degrees of Computer Science. He was also graduated from MBA.
He is also trying to share his technical experience writing articles.
Technical Lead
Germany Germany
Technical Director at ABOUT YOU - mostly into Software Engineering in PHP and Data Engineering with Google BigQuery. I maintain a blog at https://www.pascallandau.com/ and post regularly on twitter under https://twitter.com/PascalLandau
Software Developer (Senior)
Singapore Singapore
Retired SW Developer from Switzerland living in Singapore

Interested in WPF projects.
Software Developer
India India
Software developer with experience in the File system and device drivers on the Windows platform.
Technical Skills:-
- Programming Skills:- C/C++/KMDF/UMDF/WDM
Software Developer (Senior)
Singapore Singapore
Shao Voon is from Singapore. His interest lies primarily in computer graphics, software optimization, concurrency, security, and Agile methodologies.

In recent years, he shifted focus to software safety research. His hobby is writing a free C++ DirectX photo slideshow application which can be viewed here.
Retired Cold Elm
United Kingdom United Kingdom
Ex Geologist, Project Manager, Web Hoster, Business Owner and IT Consultant. Now, a traveller to places less travelled. And part time developer trying to keep up!

If you feel like saying thanks, the next time you see a charity request, DONATE. No matter how small, no matter who, it'll count. If you have a choice in the UK, Barnados.
Software Developer
Germany Germany
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Architect App Dev Consultant
Jordan Jordan
Working for Microsoft Consultation Services as a Lead App Dev Consultant.

I have more than 15 years of experience in developing and managing different software solutions for the finance, transportation, logistics, and e-commerce sectors. I’ve been deeply involved in .NET development since early framework versions and currently, I work on different technologies on the ASP.NET stack with a deep passion for Web API, Distributed systems, Microservices, and Microsoft Azure.

Prior to joining Microsoft, I have been awarded the Microsoft Most Valuable Professional (MVP) Award for the years 2015 and 2016 in Visual Studio and Development Technologies, also I’m a regular speaker in local events and Dev user groups.
Iran (Islamic Republic of) Iran (Islamic Republic of)
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Germany Germany
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

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 Sep - 30 Sep 2022