Click here to Skip to main content
14,219,244 members

Chris Maunder - Professional Profile



Summary

Follow on Twitter LinkedIn      Blog RSS
392,719
Author
17,633
Authority
231,524
Debator
16,472
Editor
6,422
Enquirer
28,348
Organiser
8,762
Participant
Chris is the Co-founder, Administrator, Architect, Chief Editor and Shameless Hack who wrote and runs The Code Project. He's been programming since 1988 while pretending to be, in various guises, an astrophysicist, mathematician, physicist, hydrologist, geomorphologist, defence intelligence researcher and then, when all that got a bit rough on the nerves, a web developer. He is a Microsoft Visual C++ MVP both globally and for Canada locally.

His programming experience includes C/C++, C#, SQL, MFC, ASP, ASP.NET, and far, far too much FORTRAN. He has worked on PocketPCs, AIX mainframes, Sun workstations, and a CRAY YMP C90 behemoth but finds notebooks take up less desk space.

He dodges, he weaves, and he never gets enough sleep. He is kind to small animals.

Chris was born and bred in Australia but splits his time between Toronto and Melbourne, depending on the weather. For relaxation he is into road cycling, snowboarding, rock climbing, and storm chasing.
31 Dec 2004 CodeProject MVP 2005

      
Articles 115 (Legend)
Tech Blogs 0
Messages 34,669 (Master)
Q&A Questions 24
Q&A Answers 87
Tips/Tricks 11
Reference 2
Comments 259

Groups

Below is the list of groups in which the member is participating

ASP.NET Community
United States United States
The ASP.NET Wiki was started by Scott Hanselman in February of 2008. The idea is that folks spend a lot of time trolling the blogs, googlinglive-searching for answers to common "How To" questions. There's piles of fantastic community-created and MSFT-created content out there, but if it's not found by a search engine and the right combination of keywords, it's often lost.

The ASP.NET Wiki articles moved to CodeProject in October 2013 and will live on, loved, protected and updated by the community.
Group type: Collaborative Group
This member has Member status in this group

760 members

The CodeProject focus group is an informal and changeable group of long-suffering CodeProject members willing to give their time and patience to discussing product, branding and marketing ideas with those looking to actually understand what developers think.

To apply to join this group simply hit the "Apply to join this group" button.

To seek the wisdom, guidance, and hopefully a little enlightenment, email focus@codeproject.com and we'll work out a time to discuss your thoughts.
Group type: Collaborative Group
This member has Administrator, Manager, Author, Member status in this group

38 members

Intel Corporation
United States United States
You may know us for our processors. But we do so much more. Intel invents at the boundaries of technology to make amazing experiences possible for business and society, and for every person on Earth.

Harnessing the capability of the cloud, the ubiquity of the Internet of Things, the latest advances in memory and programmable solutions, and the promise of always-on 5G connectivity, Intel is disrupting industries and solving global challenges. Leading on policy, diversity, inclusion, education and sustainability, we create value for our stockholders, customers and society.
Group type: Organisation
This member has Administrator, Manager, Author, Member status in this group

43 members

The CodeProject Authors are a group of talented technical writers who create articles and whitepapers for some of the biggest companies in the industry. Under our ContentLab.io unit we reach out to those who need content written but lack the time, expertise or resources to complete the work.

Looking to earn a little extra and get connected to, and be featured on, the websites of the companies whose technologies you know and love? If you can write well and are efficient with time then send us an email at info@contentlab.io.
Group type: Collaborative Group
This member has Administrator, Manager, Author, Member status in this group

75 members

CodeProject Advisors
Publisher CodeProject
Canada Canada
The CodeProject Advisors group is comprised of CodeProject members specifically chosen to advise the CodeProject on new products related to helping the community answer technical questions. This group participates in beta testing and feedback of products designed to help connect members with experts.
Group type: Collaborative Group
This member has Administrator, Manager, Author, Member status in this group

28 members

Advisory Board
United States United States
No Biography provided
Group type: Collaborative Group
This member has Administrator, Manager, Author, Member status in this group

8 members

The Insider
Publisher The Code Project
United States United States
Sign up to get the news you didn't even know you needed to know in the most valuable 5 minutes of reading of your day.

The Code Project Daily Insider keeps you up to date with what is happening around the industry. From the continue saga of the Big Boys to Scott Guthrie's blog ramblings and Steve Jobs' latest, you will find it here.
Group type: Collaborative Group
This member has Administrator, Manager, Author, Member status in this group

3 members

The Ultimate Toolbox
Web Developer
Canada Canada
In January 2005, David Cunningham and Chris Maunder created TheUltimateToolbox.com, a new group dedicated to the continued development, support and growth of Dundas Software’s award winning line of MFC, C++ and ActiveX control products.

Ultimate Grid for MFC, Ultimate Toolbox for MFC, and Ultimate TCP/IP have been stalwarts of C++/MFC development for a decade. Thousands of developers have used these products to speed their time to market, improve the quality of their finished products, and enhance the reliability and flexibility of their software.
Group type: Organisation
This member has Administrator, Manager, Author, Member status in this group

463 members

Chinese Forum Moderators
United States United States
No Biography provided
Group type: Collaborative Group
This member has Administrator, Manager, Author, Member status in this group

1 members

CodeProject Beta Testers
United States United States
No Biography provided
Group type: Collaborative Group
This member has Administrator, Manager, Author, Member status in this group

139 members

Reputation

For more information on Reputation please see the FAQ.

Privileges

Members need to achieve at least one of the given member levels in the given reputation categories in order to perform a given action. For example, to store personal files in your account area you will need to achieve Platinum level in either the Author or Authority category. The "If Owner" column means that owners of an item automatically have the privilege. The member types column lists member types who gain the privilege regardless of their reputation level.

ActionAuthorAuthorityDebatorEditorEnquirerOrganiserParticipantIf OwnerMember Types
Have no restrictions on voting frequencysilversilversilversilverAdmin
Bypass spam checks when posting contentsilversilversilversilversilversilvergoldSitebuilder, Subeditor, Mentor, Protector, Editor, Staff, Admin
Store personal files in your account areaplatinumplatinumSitebuilder, Subeditor, Supporter, Editor, Staff
Have live hyperlinks in your profilebronzebronzebronzebronzebronzebronzesilverSubeditor, Protector, Editor, Staff, Admin
Have the ability to include a biography in your profilebronzebronzebronzebronzebronzebronzesilverSubeditor, Protector, Editor, Staff, Admin
Edit a Question in Q&AsilversilversilversilverYesSubeditor, Protector, Editor, Admin
Edit an Answer in Q&AsilversilversilversilverYesSubeditor, Protector, Editor, Admin
Delete a Question in Q&AYesSubeditor, Protector, Editor, Admin
Delete an Answer in Q&AYesSubeditor, Protector, Editor, Admin
Report an ArticlesilversilversilversilverSubeditor, Mentor, Protector, Editor, Staff, Admin
Approve/Disapprove a pending ArticlegoldgoldgoldgoldSubeditor, Mentor, Protector, Editor, Staff, Admin
Edit other members' articlesSubeditor, Protector, Editor, Admin
Create an article without requiring moderationplatinumSubeditor, Mentor, Protector, Editor, Staff, Admin
Approve/Disapprove a pending QuestionProtector, Admin
Approve/Disapprove a pending AnswerProtector, Admin
Report a forum messagesilversilverbronzeProtector, Editor, Admin
Approve/Disapprove a pending Forum MessageProtector, Admin
Create a new tagsilversilversilversilverAdmin
Modify a tagsilversilversilversilverAdmin

Actions with a green tick can be performed by this member.


 
GeneralYet more updates to the UI Pin
Chris Maunder5-Nov-10 16:27
adminChris Maunder5-Nov-10 16:27 
GeneralChanges to the layout. A little Pin
Chris Maunder14-Sep-10 15:37
adminChris Maunder14-Sep-10 15:37 
GeneralRe: Changes to the layout. A little Pin
Sandeep Mewara15-Sep-10 9:50
mentorSandeep Mewara15-Sep-10 9:50 
GeneralChanges to Quick Answers Pin
Chris Maunder8-Sep-10 12:17
adminChris Maunder8-Sep-10 12:17 
GeneralRe: Changes to Quick Answers Pin
Dalek Dave9-Sep-10 0:25
professionalDalek Dave9-Sep-10 0:25 
GeneralRe: Changes to Quick Answers Pin
Rajesh Sajjanar5-Oct-10 8:05
memberRajesh Sajjanar5-Oct-10 8:05 
GeneralNew article design PinPopular
Chris Maunder25-Jun-10 11:33
adminChris Maunder25-Jun-10 11:33 
GeneralSpeeding up a web page Pin
Chris Maunder24-Feb-10 16:59
adminChris Maunder24-Feb-10 16:59 
One of the obvious ways to make something faster is to give it less to do (excepting, of course, that well known adage that if you want something done, give the task to a busy person). Caching is the prime method of speeding up a website and takes many forms: SQL server caches results, your data layer may cache results, your business objects may be cached, ASP.NET has a cache object, Appliction and Context objects, the session object, disk caching, your user controls and pages have output caching, there is server side caching within IIS, partial page caching, and client side caching within your browser itself.

Just to name a few.

Unfortunately your web.config file doesn't have an entry <caching level="11" for="everythingIncludingTheKitchenSink" />

Setting up caching requires attention to detail and an understanding of where the load is best relieved, what type of data synchronisation issues you may have (working in a webfarm?), what member you have, the length of time you wish to cache and your caching resources (memory).

For the last couple of weeks we've been focusing on the client side trying to understand what is causing the page to download slowly, and what we can do to speed up rendering. To this end the obvious fixes were to ensure IIS caching was enabled, and not just enabled, but enabled correctly.

IIS caching requires you to explicitly tell IIS that you want caching. Because, you know, you might enjoy having your readers download those images every...single...time. So you turn it on - ensuring you enable it for both static and dynamic content - and you find it works for your IIS6 servers but not your IIS7 servers (yes, we mix and match. We're crazy like that).

The trick is removing the eTag. Do a search and you will find the trick is actually setting the eTag changenumber to 0, which requires downloading the IIS Metabase editor, cranking it up, adding an arcane key and crossing your fingers. This then ensures that the eTag, a value that should be the same for a given version of a file on all servers, is the same. Change the file, the eTag changes, and the file is re-downloaded by the client and cached until it next changes.

However, the eTags between IIS6 and IIS7 differ so the only way to get around this is remove the eTags. An eTag is just an HTTP header so in IIS6 you just manually ask IIS6 to add a new header to the output stream called "eTag" with the value "". Voila, no eTags.

Except that this doesn't work for IIS7. People say it does, but it doesn't. You'll need to write a HttpModule to strip the output of the eTag manually.


So...

You now have caching working. You've enabled it, set the expiry as a date in the far, far future, removed eTags if required, ensures static and dynamic are cached, and all is good. Speed skyrockets. Well, perceived speed.

However, you still have many readers who come once, and once only. Caching is no use for them. So the next step is compression.

Compressing your downloads (zips, images, HTML content itself) is again set by IIS but it's, yet again, a PITA in IIS6. I'm not going to go through the details - just do a search for "IIS compression metabase.xml" and you'll find the instructions for enabling compression properly on your servers.

And again you now have compression. You're sending small packages downstream, sending them less often, saving bandwidth, saving processor time, and everyone wins.

Just make sure you make copious notes of what you did, because when it comes time to adding a new server or repairing a failed server, you really don't want to go hunting around for all this stuff again.

Now where is that web.config setting we all need...
cheers,
Chris Maunder

The Code Project | Co-founder
Microsoft C++ MVP

GeneralMore things I've learned in Canada Pin
Chris Maunder20-Aug-09 6:53
adminChris Maunder20-Aug-09 6:53 
GeneralRe: More things I've learned in Canada Pin
lrsoft200930-Oct-09 17:59
memberlrsoft200930-Oct-09 17:59 
GeneralForum code Colourisation added Pin
Chris Maunder12-Aug-09 3:51
adminChris Maunder12-Aug-09 3:51 
GeneralRe: Forum code Colourisation added Pin
AspDotNetDev20-Aug-09 12:23
protectorAspDotNetDev20-Aug-09 12:23 
GeneralRe: Forum code Colourisation added Pin
Chris Maunder20-Aug-09 14:57
adminChris Maunder20-Aug-09 14:57 
GeneralSpammers Pin
Chris Maunder12-Aug-09 3:47
adminChris Maunder12-Aug-09 3:47 
GeneralIntroducing The Code Project Add-In for Visual Studio 2008 Pin
Chris Maunder15-May-09 13:08
adminChris Maunder15-May-09 13:08 
Generalstudent Pin
abbas mirakhorli21-May-09 3:46
memberabbas mirakhorli21-May-09 3:46 
GeneralRe: Introducing The Code Project Add-In for Visual Studio 2008 Pin
nandakishore kagithapu9-Nov-09 2:21
groupnandakishore kagithapu9-Nov-09 2:21 
GeneralUrgent Enquiries About Share Point Work Flow. Pin
naposon11-Jan-10 6:08
membernaposon11-Jan-10 6:08 
GeneralThe Soapbox is closed PinPopular
Chris Maunder28-Feb-09 17:30
adminChris Maunder28-Feb-09 17:30 
GeneralRe: The Soapbox is closed Pin
Eytukan28-Feb-09 20:57
memberEytukan28-Feb-09 20:57 
QuestionWhat happened last night? Pin
Vikram A Punathambekar1-Mar-09 5:03
memberVikram A Punathambekar1-Mar-09 5:03 
AnswerRe: What happened last night? Pin
Chris Maunder1-Mar-09 5:37
adminChris Maunder1-Mar-09 5:37 
GeneralRe: What happened last night? Pin
Oakman1-Mar-09 6:45
memberOakman1-Mar-09 6:45 
GeneralRe: What happened last night? Pin
Chris Maunder1-Mar-09 14:58
adminChris Maunder1-Mar-09 14:58 
GeneralRe: What happened last night? Pin
Oakman1-Mar-09 16:30
memberOakman1-Mar-09 16:30 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.