Click here to Skip to main content

Articles by Paul Watt (Articles: 10, Technical Blogs: 16)

Articles: 10, Technical Blogs: 16

RSS Feed

Average article rating: 4.85

Posted: 30 Oct 2002   Updated: 16 Oct 2008   Views: 293,997   Rating: 4.86/5    Votes: 61   Popularity: 8.68
Licence: The Code Project Open License (CPOL)      Bookmarked: 119   Downloaded: 3,588
An interpretation of a popular falling block game implemented with DirectX that attempts to avoid any copyright infringement.
Posted: 20 Mar 2002   Updated: 20 Mar 2002   Views: 218,458   Rating: 4.87/5    Votes: 72   Popularity: 9.05
Licence: The Code Project Open License (CPOL)      Bookmarked: 196   Downloaded: 7,083
Beginner's guide to understanding how to paint to a window in the WIN32 SDK environment
Device Contexts
Posted: 12 Jul 2011   Updated: 21 Jul 2011   Views: 45,369   Rating: 4.97/5    Votes: 56   Popularity: 8.68
Licence: The Code Project Open License (CPOL)      Bookmarked: 126   Downloaded: 5,836
Guide to creating and using Memory Device Contexts (DC) in Win32.
GDI Objects
Posted: 4 Apr 2002   Updated: 4 Apr 2002   Views: 252,502   Rating: 4.92/5    Votes: 94   Popularity: 9.70
Licence: The Code Project Open License (CPOL)      Bookmarked: 247   Downloaded: 7,371
Guide to understanding how Windows generates WM_PAINT messages, manages the update region for a window, and how to use all common type DCs.
Posted: 10 Mar 2002   Updated: 10 Mar 2002   Views: 146,439   Rating: 5.00/5    Votes: 59   Popularity: 8.85
Licence: The Code Project Open License (CPOL)      Bookmarked: 113   Downloaded: 4,409
Guide to understanding how to create and use regions with the WIN32 SDK
Posted: 9 Apr 2002   Updated: 9 Apr 2002   Views: 140,241   Rating: 4.96/5    Votes: 46   Popularity: 8.25
Licence: The Code Project Open License (CPOL)      Bookmarked: 99   Downloaded: 4,219
Guide to understand the three different types of clipping regions, and how they relate to the Device Context.
General Graphics
Posted: 8 Sep 2011   Updated: 9 Sep 2011   Views: 31,330   Rating: 4.99/5    Votes: 73   Popularity: 9.30
Licence: The Code Project Open License (CPOL)      Bookmarked: 122   Downloaded: 4,142
With respect to Image Composition, your imagination is your only limit.
Posted: 27 Apr 2002   Updated: 27 Apr 2002   Views: 66,509   Rating: 4.55/5    Votes: 9   Popularity: 4.32
Licence: The Code Project Open License (CPOL)      Bookmarked: 29   Downloaded: 1,552
A message loop class that is suitable for game programming in WTL.
Programming Tips
Posted: 15 Oct 2002   Updated: 15 Oct 2002   Views: 67,156   Rating: 4.39/5    Votes: 15   Popularity: 5.14
Licence: The Code Project Open License (CPOL)      Bookmarked: 27   Downloaded: 0
VS Editor Tip: How to use Quick Macros
Design and Architecture
Posted: 9 Oct 2008   Updated: 9 Oct 2008   Views: 28,728   Rating: 5.00/5    Votes: 14   Popularity: 5.73
Licence: The Code Project Open License (CPOL)      Bookmarked: 45   Downloaded: 424
Macro based framework written for C++ applications that will allow basic instrumentation and profiling features

Average blogs rating: 4.79

C / C++ Language
Posted: 21 Jan 2014   Updated: 21 Jan 2014   Views: 3,305   Rating: 4.71/5    Votes: 4   Popularity: 2.91
Licence: The Code Project Open License (CPOL)      Bookmarked: 1   Downloaded: 0
My favorite C++ books are from Scott Meyers, Effective C++ series. The first item in Effective C++, 3rd Edition is titled View C++ as a federation of languages. I took note of this suggestion the first, and each successive time I read through this book. I thought of this as a fresh way to view the b
Posted: 9 Feb 2014   Updated: 9 Feb 2014   Views: 3,318   Rating: 4.72/5    Votes: 7   Popularity: 4.23
Licence: The Code Project Open License (CPOL)      Bookmarked: 3   Downloaded: 0
The concept of selecting descriptive variable names is a lesson that seems to start almost the moment you pick up your first programming book. This is sound advice, and I do not contest this. However, I think that the basis could be improved by creating and using the most appropriate type for the ta
Posted: 23 Dec 2013   Updated: 23 Dec 2013   Views: 5,450   Rating: 4.57/5    Votes: 8   Popularity: 4.11
Licence: The Code Project Open License (CPOL)      Bookmarked: 10   Downloaded: 0
Template meta-programming is the practice of using templates to generate types and functions to perform computations at compile-time and generate programs.
Other .NET Languages
Posted: 21 Mar 2014   Updated: 21 Mar 2014   Views: 2,614   Rating: 0.0 / 5    Votes: 0   Popularity: 0.0
Licence: The Code Project Open License (CPOL)      Bookmarked: 0   Downloaded: 0
If you ask a group of 10 software engineers to develop unit tests for the same object, you will end up with 10 unique approaches to testing that object. Now imagine each engineer was given a different object. This was my experience with unit testing before I discovered how useful and how much more v
Social Network APIs
Posted: 18 Mar 2014   Updated: 18 Mar 2014   Views: 1,938   Rating: 0.0 / 5    Votes: 0   Popularity: 0.0
Licence: The Code Project Open License (CPOL)      Bookmarked: 1   Downloaded: 0
While many of the principles of developing robust software are easy to explain, it is much more difficult to know how and when to apply these principles. Practice and learning from mistakes is generally the most productive way to understand these principles. However, it is much more desirable to und
Internet / Network
Posted: 28 Mar 2014   Updated: 29 Mar 2014   Views: 4,780   Rating: 4.85/5    Votes: 4   Popularity: 2.91
Licence: The Code Project Open License (CPOL)      Bookmarked: 9   Downloaded: 1
Byte-gender; not, "Yes! Please!"Good! Now that I have your attention let's solve a relatively simple problem, byte sex. A less sensational name for this concept is byte endianess. This is one of those concepts that you should at least be aware of, even if you don't have to pay much attention to it i
Code Generation
Posted: 9 Nov 2013   Updated: 9 Nov 2013   Views: 4,161   Rating: 4.91/5    Votes: 3   Popularity: 2.39
Licence: The Code Project Open License (CPOL)      Bookmarked: 1   Downloaded: 0
A passive use of the term code rot describes the source code for an aging system that require dependencies or tools that are no longer available.
Design and Architecture
Posted: 27 Nov 2013   Updated: 27 Nov 2013   Views: 5,031   Rating: 4.87/5    Votes: 5   Popularity: 3.44
Licence: The Code Project Open License (CPOL)      Bookmarked: 3   Downloaded: 0
I want to hopefully connect the dots for many to help convince you of the ultimate importance of a well defined and protected interface.
Posted: 21 Jan 2014   Updated: 22 Jan 2014   Views: 9,828   Rating: 4.73/5    Votes: 30   Popularity: 6.97
Licence: The Code Project Open License (CPOL)      Bookmarked: 17   Downloaded: 0
Code maintenance is generally viewed as a separate task in the development lifecycle. The hard work of designing and implementing the product has been performed, and although software test did their best to get in the way and kept finding issues the program, the product shipped. Now comes the mainte
Posted: 13 Apr 2014   Updated: 14 Apr 2014   Views: 1,179   Rating: 4.73/5    Votes: 3   Popularity: 1.91
Licence: The Code Project Open License (CPOL)      Bookmarked: 2   Downloaded: 0
Recently I ran across the article, "Is Design Dead?", from Martin Fowler's blog. Martin addresses the common misconception that design is discouraged in Extreme Programming. He describes the overall purpose of design in software and how the design emerges as part of the development phase. As more is
Posted: 10 Nov 2013   Updated: 10 Nov 2013   Views: 6,176   Rating: 4.96/5    Votes: 9   Popularity: 4.72
Licence: The Code Project Open License (CPOL)      Bookmarked: 9   Downloaded: 0
a brief overview of TDD, which will include a description of the concepts, development process and potential benefits associated with TDD.
Testing and QA
Posted: 13 Feb 2014   Updated: 14 Feb 2014   Views: 2,810   Rating: 4.94/5    Votes: 6   Popularity: 3.84
Licence: The Code Project Open License (CPOL)      Bookmarked: 7   Downloaded: 0
I would like to clarify the purpose and intention of a unit test for every role even tangentially related to the development of software. I have observed a steady upward trend, over the last 15 years, for the importance and value of automating the software validation process. I think this is fantast
Work Issues
The Developer's Life
Posted: 21 Jan 2014   Updated: 21 Jan 2014   Views: 3,964   Rating: 4.53/5    Votes: 6   Popularity: 3.50
Licence: The Code Project Open License (CPOL)      Bookmarked: 5   Downloaded: 0
Having good engineers on your team can make the difference between a projects success or failure. Good engineers are able to jump in and solve problems, design the solution, and implement the code to make it all work. They may be on the team from the start, or brought in at the end to help get the p
Uncategorised Technical Blogs
Posted: 20 Feb 2014   Updated: 21 Feb 2014   Views: 2,013   Rating: 0.0 / 5    Votes: 0   Popularity: 0.0
Licence: The Code Project Open License (CPOL)      Bookmarked: 0   Downloaded: 0
Code of The DamnedThis is a journal for those who feel they have been damned to live in a code base that has no hope. However, there is hope. Hope comes in the form of understanding how entropy enters the source code you work in and using discipline, experience, tools and many other resources to kee
Posted: 10 Mar 2014   Updated: 10 Mar 2014   Views: 1,787   Rating: 5.00/5    Votes: 3   Popularity: 2.39
Licence: The Code Project Open License (CPOL)      Bookmarked: 2   Downloaded: 0
using and namespace are two of the most useful C++ keywords when it comes to simplifying syntax, and clarifying your intentions with the code. You should understand the value and flexibility these constructs will add to your software and it maintenance. The benefits are realized in the form of orga
Posted: 26 Mar 2014   Updated: 26 Mar 2014   Views: 1,232   Rating: 0.0 / 5    Votes: 0   Popularity: 0.0
Licence: The Code Project Open License (CPOL)      Bookmarked: 1   Downloaded: 0
I discussed the merits of selecting a suitable unit test framework for your development project in my previous post. I described the qualities that I found most valuable in the test framework that I use, CxxTest. The qualities are xUnit framework, portability, simplicity, and flexibility. There are
No tips have been posted.
No reference articles have been posted.

Paul Watt
United States United States
I have been developing software for almost two decades. The majority of my experience has been with C++. I have had the opportunity to develop software applications, application virtualization, web clients, mobile device management, device drivers and embedded system software for routers and microwave frequency modems.
Over the years I have learned to value maintainable software more than all of the other qualities. Occasionally I reach a point in a project where the sacrifice must be made to optimize a section of code for performance, or resource usage. However, by starting out with a simple, maintainable design, I am able to adapt my projects to meet the challenges that inevitably appear during development; including my own misjudgments, incomplete requirements, feature creep and poor decisions for which I have no control.
I maintain my own repository and blog at[^], a site dedicated to guiding developers through the damn code.
Follow on   Twitter

Advertise | Privacy | Mobile
Web03 | 2.8.140415.2 | Last Updated 16 Apr 2014
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Use
Layout: fixed | fluid