<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2951930193152375440</id><updated>2012-02-16T10:53:35.475-08:00</updated><category term='C#'/><category term='Coding'/><category term='Mod Arithmetic'/><category term='duplicate'/><category term='object orientation'/><category term='file tracking'/><category term='bandwidth'/><category term='software'/><category term='Except'/><category term='Linq'/><category term='file collaboration'/><category term='programming'/><category term='development'/><category term='humour'/><category term='methodology'/><category term='file synchronisation'/><category term='file sharing'/><category term='cross threading'/><category term='safely invoking'/><title type='text'>Coderoo</title><subtitle type='html'>A journal of our software development ideas.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://coderoo.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2951930193152375440/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://coderoo.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>corpsekicker</name><uri>http://www.blogger.com/profile/13023104363640072354</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://bp0.blogger.com/_RP6EUo1-7LI/SIMVgZi-ENI/AAAAAAAAABU/fz0mmhdV0B0/S220/31.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>6</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2951930193152375440.post-6377852118462545381</id><published>2012-02-08T22:00:00.000-08:00</published><updated>2012-02-08T22:28:16.846-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Except'/><category scheme='http://www.blogger.com/atom/ns#' term='duplicate'/><category scheme='http://www.blogger.com/atom/ns#' term='development'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Coding'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='Linq'/><title type='text'>Linq Except with Duplicate Members</title><content type='html'>&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;o:officedocumentsettings&gt;   &lt;o:allowpng/&gt;  &lt;/o:OfficeDocumentSettings&gt; &lt;/xml&gt;&lt;![endif][if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:trackmoves/&gt;   &lt;w:trackformatting/&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:donotpromoteqf/&gt;   &lt;w:lidthemeother&gt;EN-ZA&lt;/w:LidThemeOther&gt;   &lt;w:lidthemeasian&gt;X-NONE&lt;/w:LidThemeAsian&gt;   &lt;w:lidthemecomplexscript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;    &lt;w:splitpgbreakandparamark/&gt;    &lt;w:enableopentypekerning/&gt;    &lt;w:dontflipmirrorindents/&gt;    &lt;w:overridetablestylehps/&gt;   &lt;/w:Compatibility&gt;   &lt;m:mathpr&gt;    &lt;m:mathfont val="Cambria Math"&gt;    &lt;m:brkbin val="before"&gt;    &lt;m:brkbinsub val="&amp;#45;-"&gt;    &lt;m:smallfrac val="off"&gt;    &lt;m:dispdef/&gt;    &lt;m:lmargin val="0"&gt;    &lt;m:rmargin val="0"&gt;    &lt;m:defjc val="centerGroup"&gt;    &lt;m:wrapindent val="1440"&gt;    &lt;m:intlim val="subSup"&gt;    &lt;m:narylim val="undOvr"&gt;   &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif][if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" defunhidewhenused="true" defsemihidden="true" defqformat="false" defpriority="99" latentstylecount="267"&gt;   &lt;w:lsdexception locked="false" priority="0" semihidden="false" unhidewhenused="false" qformat="true" name="Normal"&gt;   &lt;w:lsdexception locked="false" priority="9" semihidden="false" unhidewhenused="false" qformat="true" name="heading 1"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 2"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 3"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 4"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 5"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 6"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 7"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 8"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 9"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 1"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 2"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 3"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 4"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 5"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 6"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 7"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 8"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 9"&gt;   &lt;w:lsdexception locked="false" priority="35" qformat="true" name="caption"&gt;   &lt;w:lsdexception locked="false" priority="10" semihidden="false" unhidewhenused="false" qformat="true" name="Title"&gt;   &lt;w:lsdexception locked="false" priority="1" name="Default Paragraph Font"&gt;   &lt;w:lsdexception locked="false" priority="11" semihidden="false" unhidewhenused="false" qformat="true" name="Subtitle"&gt;   &lt;w:lsdexception locked="false" priority="22" semihidden="false" unhidewhenused="false" qformat="true" name="Strong"&gt;   &lt;w:lsdexception locked="false" priority="20" semihidden="false" unhidewhenused="false" qformat="true" name="Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="59" semihidden="false" unhidewhenused="false" name="Table Grid"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Placeholder Text"&gt;   &lt;w:lsdexception locked="false" priority="1" semihidden="false" unhidewhenused="false" qformat="true" name="No Spacing"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Revision"&gt;   &lt;w:lsdexception locked="false" priority="34" semihidden="false" unhidewhenused="false" qformat="true" name="List Paragraph"&gt;   &lt;w:lsdexception locked="false" priority="29" semihidden="false" unhidewhenused="false" qformat="true" name="Quote"&gt;   &lt;w:lsdexception locked="false" priority="30" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Quote"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="19" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="21" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="31" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Reference"&gt;   &lt;w:lsdexception locked="false" priority="32" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Reference"&gt;   &lt;w:lsdexception locked="false" priority="33" semihidden="false" unhidewhenused="false" qformat="true" name="Book Title"&gt;   &lt;w:lsdexception locked="false" priority="37" name="Bibliography"&gt;   &lt;w:lsdexception locked="false" priority="39" qformat="true" name="TOC Heading"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif][if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable  {mso-style-name:"Table Normal";  mso-tstyle-rowband-size:0;  mso-tstyle-colband-size:0;  mso-style-noshow:yes;  mso-style-priority:99;  mso-style-parent:"";  mso-padding-alt:0cm 5.4pt 0cm 5.4pt;  mso-para-margin:0cm;  mso-para-margin-bottom:.0001pt;  mso-pagination:widow-orphan;  font-size:11.0pt;  font-family:"Calibri","sans-serif";  mso-ascii-font-family:Calibri;  mso-ascii-theme-font:minor-latin;  mso-hansi-font-family:Calibri;  mso-hansi-theme-font:minor-latin;  mso-bidi-font-family:"Times New Roman";  mso-bidi-theme-font:minor-bidi;  mso-fareast-language:EN-US;} &lt;/style&gt; &lt;![endif]--&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt; color: rgb(43, 145, 175);"&gt;List&lt;/span&gt;&lt;span style="font-size: 12pt;"&gt;&amp;lt;&lt;span style="color:blue"&gt;string&lt;/span&gt;&amp;gt; popcapGames = &lt;span style="color:blue"&gt;new&lt;/span&gt; &lt;span style="color:#2B91AF"&gt;List&lt;/span&gt;&amp;lt;&lt;span style="color:blue"&gt;string&lt;/span&gt;&amp;gt; { &lt;span style="color:#A31515"&gt;"Zuma"&lt;/span&gt;, &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                                                      &lt;/span&gt;&lt;span style="color:#A31515"&gt;"Chuzzled"&lt;/span&gt;, &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                                                      &lt;/span&gt;&lt;span style="color:#A31515"&gt;"Bejeweled"&lt;/span&gt;, &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                                                      &lt;/span&gt;&lt;span style="color:#A31515"&gt;"Plants vs Zombies"&lt;/span&gt;, &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                                                      &lt;/span&gt;&lt;span style="color:#A31515"&gt;"Zuma"&lt;/span&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                                                      &lt;/span&gt;&lt;span style="color:#A31515"&gt;"Peggle"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;                                                    &lt;/span&gt;};&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;// I want all the elements except Chuzzled.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:#2B91AF"&gt;List&lt;/span&gt;&amp;lt;&lt;span style="color:blue"&gt;string&lt;/span&gt;&amp;gt; excludingChuzzled = popcapGames.Except(popcapGames.Where(x =&amp;gt; x == &lt;span style="color:#A31515"&gt;"Chuzzled"&lt;/span&gt;)).ToList();&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;// I expect excludingChuzzled to be: { "Zuma", &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;//&lt;span style="mso-spacerun:yes"&gt;                                    &lt;/span&gt;"Bejeweled", &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;//&lt;span style="mso-spacerun:yes"&gt;                                    &lt;/span&gt;"Plants vs Zombies", &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;//&lt;span style="mso-spacerun:yes"&gt;                   &lt;/span&gt;&lt;span style="mso-spacerun:yes"&gt;                 &lt;/span&gt;"Zuma",&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;//&lt;span style="mso-spacerun:yes"&gt;                                    &lt;/span&gt;"Peggle"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;//&lt;span style="mso-spacerun:yes"&gt;                                  &lt;/span&gt;};&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;//&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;//&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;//&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;//&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;//&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;// but actually its:&lt;span style="mso-spacerun:yes"&gt;                &lt;/span&gt;{ "Zuma", &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;//&lt;span style="mso-spacerun:yes"&gt;         &lt;/span&gt;&lt;span style="mso-spacerun:yes"&gt;                           &lt;/span&gt;"Bejeweled", &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;//&lt;span style="mso-spacerun:yes"&gt;                                    &lt;/span&gt;"Plants vs Zombies", &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;//&lt;span style="mso-spacerun:yes"&gt;                                    &lt;/span&gt;"Peggle"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;//&lt;span style="mso-spacerun:yes"&gt;                                  &lt;/span&gt;};&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;// What happened to my duplicate "Zuma"? &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;//&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;span style="mso-spacerun:yes"&gt;        &lt;/span&gt;&lt;span style="color:green"&gt;// I don't like Except any more.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: courier new;" class="MsoNormal"&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2951930193152375440-6377852118462545381?l=coderoo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://coderoo.blogspot.com/feeds/6377852118462545381/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://coderoo.blogspot.com/2012/02/linq-except-with-duplicate-members.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2951930193152375440/posts/default/6377852118462545381'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2951930193152375440/posts/default/6377852118462545381'/><link rel='alternate' type='text/html' href='http://coderoo.blogspot.com/2012/02/linq-except-with-duplicate-members.html' title='Linq Except with Duplicate Members'/><author><name>corpsekicker</name><uri>http://www.blogger.com/profile/13023104363640072354</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://bp0.blogger.com/_RP6EUo1-7LI/SIMVgZi-ENI/AAAAAAAAABU/fz0mmhdV0B0/S220/31.JPG'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2951930193152375440.post-1366988588404325350</id><published>2012-02-08T21:55:00.000-08:00</published><updated>2012-02-08T21:59:15.805-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Coding'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>var</title><content type='html'>&lt;a href="http://1.bp.blogspot.com/-OHaF-VbQVFM/TzNgacr6jyI/AAAAAAAAAJc/FB5QkPuqDG8/s1600/Capture.PNG"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 400px; height: 257px;" src="http://1.bp.blogspot.com/-OHaF-VbQVFM/TzNgacr6jyI/AAAAAAAAAJc/FB5QkPuqDG8/s400/Capture.PNG" alt="" id="BLOGGER_PHOTO_ID_5707011160301801250" border="0" /&gt;&lt;/a&gt;My colleagues don't like the var keyword. I do.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2951930193152375440-1366988588404325350?l=coderoo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://coderoo.blogspot.com/feeds/1366988588404325350/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://coderoo.blogspot.com/2012/02/var.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2951930193152375440/posts/default/1366988588404325350'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2951930193152375440/posts/default/1366988588404325350'/><link rel='alternate' type='text/html' href='http://coderoo.blogspot.com/2012/02/var.html' title='var'/><author><name>corpsekicker</name><uri>http://www.blogger.com/profile/13023104363640072354</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://bp0.blogger.com/_RP6EUo1-7LI/SIMVgZi-ENI/AAAAAAAAABU/fz0mmhdV0B0/S220/31.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-OHaF-VbQVFM/TzNgacr6jyI/AAAAAAAAAJc/FB5QkPuqDG8/s72-c/Capture.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2951930193152375440.post-5624379009921097184</id><published>2011-09-29T01:19:00.000-07:00</published><updated>2011-09-29T01:35:49.513-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='development'/><category scheme='http://www.blogger.com/atom/ns#' term='cross threading'/><category scheme='http://www.blogger.com/atom/ns#' term='safely invoking'/><category scheme='http://www.blogger.com/atom/ns#' term='Coding'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Safely invoking view-related methods from a controller</title><content type='html'>Now I've got this situation where I need to call view-refresher stuff from my controller. But the call happens to be inside a background worker. I get a cross thread exception: you can't access stuff that was created on the view thread.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Solution: Invoke it safely:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;      public void RefreshView()&lt;br /&gt;      {&lt;br /&gt;          if (this.InvokeRequired)&lt;br /&gt;          {&lt;br /&gt;              this.Invoke(new UpdateDisplayStateCallback(this.RefreshViewInternally));&lt;br /&gt;          }&lt;br /&gt;          else&lt;br /&gt;          {&lt;br /&gt;              this.RefreshViewInternally();&lt;br /&gt;          }&lt;br /&gt;      }&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;(RefreshViewsInternally can now contain references to view components you wanted to actually refresh.)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;What's that? You want to know how to make your call back method something with parameters? No problem:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;      public void RefreshViews(ReallyComplexObjectYouCreatedYourself myReallyComplexObjectYouCreatedYourself)&lt;br /&gt;      {&lt;br /&gt;          if (this.InvokeRequired)&lt;br /&gt;          {&lt;br /&gt;              this.Invoke(new Action&lt;reallycomplexobjectyoucreatedyourself&gt;(this.RefreshViewsInternally), myReallyComplexObjectYouCreatedYourself);&lt;br /&gt;          }&lt;br /&gt;          else&lt;br /&gt;          {&lt;br /&gt;              this.RefreshViewsInternally(myReallyComplexObjectYouCreatedYourself);&lt;br /&gt;          }&lt;br /&gt;      }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Now, RefreshViewsInternally is allowed to have this signature: RefreshViewsInternally(ReallyComplexObjectYouCreatedYourself myReallyComplexObjectYouCreatedYourself);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Booya.&lt;br /&gt;&lt;/reallycomplexobjectyoucreatedyourself&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2951930193152375440-5624379009921097184?l=coderoo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://coderoo.blogspot.com/feeds/5624379009921097184/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://coderoo.blogspot.com/2011/09/safely-invoking-view-related-methods.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2951930193152375440/posts/default/5624379009921097184'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2951930193152375440/posts/default/5624379009921097184'/><link rel='alternate' type='text/html' href='http://coderoo.blogspot.com/2011/09/safely-invoking-view-related-methods.html' title='Safely invoking view-related methods from a controller'/><author><name>corpsekicker</name><uri>http://www.blogger.com/profile/13023104363640072354</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://bp0.blogger.com/_RP6EUo1-7LI/SIMVgZi-ENI/AAAAAAAAABU/fz0mmhdV0B0/S220/31.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2951930193152375440.post-3480429320557125218</id><published>2011-06-13T00:20:00.000-07:00</published><updated>2011-06-13T00:29:42.757-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Mod Arithmetic'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='Coding'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Modular Arithmetic</title><content type='html'>More a note to self than anything else:&lt;br /&gt;&lt;br /&gt;Given x, return a value which is a multiple of y and "still sufficiently close to x". Surely there's a way of phrasing that second part more eloquently?&lt;br /&gt;&lt;br /&gt;In C# code:&lt;br /&gt;&lt;br /&gt;decimal TransformXToMultipleOfY(decimal x, decimal y)&lt;br /&gt;        {&lt;br /&gt;            decimal modResult = x % y;&lt;br /&gt;&lt;br /&gt;            if (modResult == 0)&lt;br /&gt;            {&lt;br /&gt;                return x;&lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt;            return x+ (y - (x % y));&lt;br /&gt;        }&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2951930193152375440-3480429320557125218?l=coderoo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://coderoo.blogspot.com/feeds/3480429320557125218/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://coderoo.blogspot.com/2011/06/modular-arithmetic.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2951930193152375440/posts/default/3480429320557125218'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2951930193152375440/posts/default/3480429320557125218'/><link rel='alternate' type='text/html' href='http://coderoo.blogspot.com/2011/06/modular-arithmetic.html' title='Modular Arithmetic'/><author><name>corpsekicker</name><uri>http://www.blogger.com/profile/13023104363640072354</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://bp0.blogger.com/_RP6EUo1-7LI/SIMVgZi-ENI/AAAAAAAAABU/fz0mmhdV0B0/S220/31.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2951930193152375440.post-163967135204858599</id><published>2009-05-10T11:14:00.000-07:00</published><updated>2009-05-10T11:42:03.305-07:00</updated><title type='text'>Okay so I have the tools, now what?</title><content type='html'>Coming from a linux / vim environment where trying to get something to do what it's supposed to can at times be a painful experience I was surprised to see just how easy a package like Visual Studio can make your life. It seems as if a great deal of effort has been put into taking away the time consuming and frustrating tasks developers face.&lt;br /&gt;&lt;br /&gt;The intellisense-thingy rocks. I know most packages offer this but I've never stopped to think just how much it can speed up what you're doing. Another feature that seems pretty cool are breakpoints. I expect the more I learn I'll see how powerful tools like these can be.&lt;br /&gt;&lt;br /&gt;So where to now? I'll be doing alot of reading on &lt;a href="http://msdn.microsoft.com/en-us/vcsharp/aa336766.aspx"&gt;msdn&lt;/a&gt; and another nice place to get some quick information is &lt;a href="http://stackoverflow.com"&gt;stackoverflow&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I think firstly I should get a better understanding of OO concepts and how it's actually used. Internet to the rescue!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2951930193152375440-163967135204858599?l=coderoo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://coderoo.blogspot.com/feeds/163967135204858599/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://coderoo.blogspot.com/2009/05/okay-so-i-have-tools-now-what.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2951930193152375440/posts/default/163967135204858599'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2951930193152375440/posts/default/163967135204858599'/><link rel='alternate' type='text/html' href='http://coderoo.blogspot.com/2009/05/okay-so-i-have-tools-now-what.html' title='Okay so I have the tools, now what?'/><author><name>emong</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2951930193152375440.post-3617137346189233455</id><published>2009-04-06T05:39:00.000-07:00</published><updated>2009-04-06T06:02:48.490-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='file synchronisation'/><category scheme='http://www.blogger.com/atom/ns#' term='file collaboration'/><category scheme='http://www.blogger.com/atom/ns#' term='development'/><category scheme='http://www.blogger.com/atom/ns#' term='methodology'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='file sharing'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='object orientation'/><category scheme='http://www.blogger.com/atom/ns#' term='bandwidth'/><category scheme='http://www.blogger.com/atom/ns#' term='file tracking'/><title type='text'>Project 1: File Contribution, Tracking, Sharing, Collaboration, Synchronisation</title><content type='html'>On Friday, the 3rd of April at about 6 in the morning, it struck Robert that learning C# might not be a bad idea. We identified that the problem with learning a programming language or any software development methodology from scratch using online tutorials is that the usage examples don't really make any sense. &lt;br /&gt;&lt;br /&gt;When people ask me what object orientation is, I use the classic example of the class "Person" and the object instantiation of "Person", "kareema" or "aPerson". I hear myself going on and on about how a Person needs a Name, an Age and a Sex and that kareema, the instantiation of the class Person needs particular values for those criteria. &lt;br /&gt;&lt;br /&gt;Robert asks me, "When will I ever need that?" and it's clear to me that the only way to learn stuff like that is to need it. Incidentally, we do. &lt;br /&gt;&lt;br /&gt;Enter the problem: My sisters and I have a network set up at home. We all share the same DSL internet connection and we all download data. Sometimes we download the same stuff without realising it. Bandwidth usage is a big thing for us because it happens to be relatively expensive where we live and we'd like to minimise it. &lt;br /&gt;&lt;br /&gt;I know there are file synchronisation tools available for downloading and buying but we thought this would be a great opportunity to exercise skills, become more familiar with the development environment and identify needs for patterns and such the like.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2951930193152375440-3617137346189233455?l=coderoo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://coderoo.blogspot.com/feeds/3617137346189233455/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://coderoo.blogspot.com/2009/04/project-1-file-contribution-tracking.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2951930193152375440/posts/default/3617137346189233455'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2951930193152375440/posts/default/3617137346189233455'/><link rel='alternate' type='text/html' href='http://coderoo.blogspot.com/2009/04/project-1-file-contribution-tracking.html' title='Project 1: File Contribution, Tracking, Sharing, Collaboration, Synchronisation'/><author><name>corpsekicker</name><uri>http://www.blogger.com/profile/13023104363640072354</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://bp0.blogger.com/_RP6EUo1-7LI/SIMVgZi-ENI/AAAAAAAAABU/fz0mmhdV0B0/S220/31.JPG'/></author><thr:total>0</thr:total></entry></feed>
