<?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-9645956</id><updated>2011-08-05T14:20:42.948-07:00</updated><category term='C#'/><category term='Capoeira'/><category term='jobs'/><category term='Professor Axe'/><category term='BlackLine Systems'/><category term='Osei Vita'/><category term='.Net'/><title type='text'>From My Desktop to the Internet!</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>39</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-9645956.post-1119193245937880389</id><published>2011-05-26T15:11:00.000-07:00</published><updated>2011-05-26T16:27:49.768-07:00</updated><title type='text'>Orchard Hosted on WinHost</title><content type='html'>&lt;div&gt;With so many ASP.NET Host Provider available competition has gotten really fierce.  Prices as low as $5/mo - but the caveat stands with the statement: You get what you pay for.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;I normally will point my customers to web hosting providers like &lt;a href="http://www.discountasp.net"&gt;DiscountASP&lt;/a&gt; but with a yearly price tag of nearly $200/yr it can get pretty pricey.  Performance is great, response is at its best and the service is impeccable. However, it always comes back to price...&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;So I ventured out and did what any other frugal person would do and search for other providers. I did find &lt;a href="http://www.winhost.com"&gt;WinHost &lt;/a&gt;and I hosted one of my domains on their servers.  Everything seems pretty smooth until I began poking around the Orchard's Control Panel.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;The symptom was that &lt;a href="http://orchard.codeplex.com"&gt;Orchard's&lt;/a&gt; Control Panel would log me off after a few clicks or if I waited more than 30 seconds before posting a change.  After a few email with Winhost's Tech Support it turns out that Orchard uses more than 100MB of memory.  One of &lt;a href="http://www.winhost.com"&gt;WinHost's&lt;/a&gt; limitation is 100MB per app pool - it recycles it once it reaches that threshold... Along with other thresholds as well.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;I ran into this discussion: &lt;a href="http://orchard.codeplex.com/discussions/254458"&gt;http://orchard.codeplex.com/discussions/254458&lt;/a&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;which led to this article: &lt;a href="http://orchardproject.net/docs/Setting-up-a-machine-key.ashx"&gt;http://orchardproject.net/docs/Setting-up-a-machine-key.ashx&lt;/a&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Once I applied the fix everything was working just as expected.  Keep in mind that the app pool will still recycle but at least it won't log you out of the system.  This is great if all you have is simple or static content - in my case that's exactly what I have.  So an occasional app recycle won't really hurt anything I'm hosting.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;If you're hosting something more mission critical you may think about paying the higher price because sometimes getting what you pay isn't getting what you're paying for... :-)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-1119193245937880389?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/1119193245937880389/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=1119193245937880389' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/1119193245937880389'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/1119193245937880389'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2011/05/orchard-hosted-on-winhost.html' title='Orchard Hosted on WinHost'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-6583204559666276991</id><published>2011-05-01T08:24:00.000-07:00</published><updated>2011-05-18T10:36:54.609-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Capoeira'/><category scheme='http://www.blogger.com/atom/ns#' term='Professor Axe'/><category scheme='http://www.blogger.com/atom/ns#' term='Osei Vita'/><title type='text'>Giving Back To Capoeira</title><content type='html'>&lt;div&gt;&lt;div&gt;&lt;div&gt;At the ripe age of 40 I went to visit my doctor for my yearly check-up.  The prognosis at the time was not good.  Inheriting the many diseases that run in my family I was no special candidate that would be skipping the plague.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;I remember the cold, dry words coming from my doctor as he spoke to me about my depleating health.  The words sounded as if I was the 1 billionth person he's said this to - and for all intesive purposes I probably was.  He says, "Well let see what these test results show us... hmmm...  Ok!  So you're pre-diabetic, you have high cholestoral, your blood pressure indicates that you have pre-hypertension and let's see here... Ok, we have to have more results because your liver results came back very abnormal due to the fatty liver condition you have.  Here are some pamphlets for you to read.  Hey, listen - if you simply exercise all these problems would go away."&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Basically, I was walking towards a quick grave with plenty of banana peels to help slip in quickly and effortlessly.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Long story short, December 2009 I began training in Capoeira.  Ya, it cost money to do the training, to buy the uniforms and participate in the fundraisers.  I won't even begin with the time committment - and yes, it's a huge time committment.  Every single penny spent since then can't begin to pay back for the healthy life I life today.  I see people around me that continue to deplead in health and I think to my self, "I wish they would just exercise."&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;For that, I'm giving my time back to Capoeira.  I've devoted a fair portion of my weekends to developing my Capoeira Professor's website: &lt;a href="http://www.capoeirabrasilvalley.com"&gt;www.capoeirabrasilvalley.com&lt;/a&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;I hope you find it and most importantly I hope YOU begin exercising for a healthier life!&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-6583204559666276991?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/6583204559666276991/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=6583204559666276991' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/6583204559666276991'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/6583204559666276991'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2011/05/giving-back-to-capoeira.html' title='Giving Back To Capoeira'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-7527415525003737778</id><published>2010-11-07T10:25:00.000-08:00</published><updated>2010-11-07T10:35:03.052-08:00</updated><title type='text'>Capoeira Brazil North Hollywood Batizado 2010</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Fx1WyesDeu0/TNbxS5ozQ_I/AAAAAAAAACM/OpLPPADQCIk/s1600/IMG_5236_Small.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 214px;" src="http://3.bp.blogspot.com/_Fx1WyesDeu0/TNbxS5ozQ_I/AAAAAAAAACM/OpLPPADQCIk/s320/IMG_5236_Small.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5536878098910495730" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'lucida grande', tahoma, verdana, arial, sans-serif; font-size: 13px; color: rgb(51, 51, 51); "&gt;I've been thinking how not to sound arrogant so my first instinct was to remain silent.  But by remaining silent I felt I was being arrogant about being promoted to a full yellow cord. By the way, for those who don't know about Capoeira - unlike other martial arts we use cords and not belts.&lt;br /&gt;&lt;br /&gt;During our Batizado, I sat there waiting to be called for my raw/yellow cord and was never called my thought was, "I guess I'll have to work harder to get my raw/yellow cord next year."&lt;br /&gt;&lt;br /&gt;Then the irony that dawned on my after that thought was, "SHIT! If I do get the the full yellow cord I still have to have work harder."&lt;br /&gt;&lt;br /&gt;I guess what I'm trying to say is despite the color of my cord I'll always feel like I have to work harder to keep up with those that seem to make Capoeira look easy.  I'm proud to be a full yellow cord but I can't tell you how humbled I feel in every training session - so regardless of the cord you see on me know that it's always gonna be a humbling workout.&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'lucida grande', tahoma, verdana, arial, sans-serif; font-size: 13px; color: rgb(51, 51, 51); "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'lucida grande', tahoma, verdana, arial, sans-serif; font-size: 13px; color: rgb(51, 51, 51); "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-7527415525003737778?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/7527415525003737778/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=7527415525003737778' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/7527415525003737778'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/7527415525003737778'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2010/11/capoeira-batizado.html' title='Capoeira Brazil North Hollywood Batizado 2010'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_Fx1WyesDeu0/TNbxS5ozQ_I/AAAAAAAAACM/OpLPPADQCIk/s72-c/IMG_5236_Small.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-6066128703987271555</id><published>2010-09-02T14:52:00.001-07:00</published><updated>2010-09-02T15:00:57.017-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jobs'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='BlackLine Systems'/><title type='text'>Hiring Sr. C# Developers</title><content type='html'>Calling all C#.NET Developers living near or at least a drivable distance to Calabasas, CA.  The name of the company is &lt;a href="http://www.blackline.com/"&gt;BlackLine Systems&lt;/a&gt; - Check out the website to get more information.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You can submit your resume thru the website or by emailing your resume to "careers AT blackline.com".&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The company is growing (growth during a bad economy is GREAT) and is going thru some exciting times when it comes to technology.  Right now is the time to join.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-6066128703987271555?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/6066128703987271555/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=6066128703987271555' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/6066128703987271555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/6066128703987271555'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2010/09/calling-all-c.html' title='Hiring Sr. C# Developers'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-3688782459885238276</id><published>2010-06-10T09:05:00.000-07:00</published><updated>2010-06-10T09:59:14.582-07:00</updated><title type='text'>Upgrading to .NET Framework 4.0</title><content type='html'>Ah! The joy of upgrading to bleeding-edge technology... Makes you bleed!&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So, we've recently upgraded from WindowsXP, VS.NET 2008, SQL Server 2005 and on to the glorious OS of Windows 7, VS.NET 2010 and SQL Server 2008.  I have to say I really enjoy the new features of all the new upgrades.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There's always that "However, ...", so here it goes....&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;However, we're still running Windows Server 2003 and SQL Server 2005 - so, that presents some challenges.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;First things first - download and install &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9cfb2d51-5ff4-4491-b0e5-b386f32c0992&amp;amp;displaylang=en"&gt;NetFx 4.0&lt;/a&gt; or search &lt;a href="http://www.google.com/"&gt;Google&lt;/a&gt; for &lt;a href="http://www.google.com/#q=netfx+4.0"&gt;NetFx 4.0&lt;/a&gt;.  Once you&lt;/div&gt;&lt;div&gt; finish installing it you'll need to run AspNet_RegIIS -i to register the .Net Framework 4.0 with ASP.NET.  You'll need to enable v4.0 for ASP.NET by opening IIS Manager.  The way I like to get to the IIS Manager Console is by using my keyboard short-cuts.  Press the Windows Key+R, type InetMgr and press Enter.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Expand your server node, select Web Service Extensions, select ASP.NET v4.0.30319 and press Allow.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;img src="http://3.bp.blogspot.com/_Fx1WyesDeu0/TBEYy9ZA7CI/AAAAAAAAABk/Ai011eAHN5c/s320/InetMgr.jpg" style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 171px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5481189485238610978" /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now, you'll need to go over to your Web Site or Virtual Folder, right-click and select properties.  Click on the ASP.NET Tab and select 4.0.30319 on the drop-down for ASP.NET version.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;img src="http://1.bp.blogspot.com/_Fx1WyesDeu0/TBEYSjN7QDI/AAAAAAAAABc/1iaMjeVW0wI/s320/ASPNET40.jpg" style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 310px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5481188928456966194" /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now you're ready to run your website!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A few things to watch out for... Or rather a few problems we ran into.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. Crystal Reports - The beta version is only in 32-bit version which won't run on a 64-bit server.  You'll need to install the 64-bit RTM Version of Crystal Reports.  There is no 32-bit version for the beta.  Hey, don't curse me - I'm just the messenger.&lt;/div&gt;&lt;div&gt;2. IIS6 in 32-Bit mode - We tried this and it cause more head-aches than it was worth.  If in fact you really need to run in 32-bit mode be aware that the WHOLE SERVER will run in 32-bit mode.  We couldn't find a way to run both 64-bit and 32-bit side-by-side on the same server.  Another problem we found was that we lost the ASP.NET Tab from the Web Site Properties.  Even after disabling 32-bit mode we couldn't get it back.  If you run into this problem you can serach &lt;a href="http://www.google.com/"&gt;Google &lt;/a&gt;for "asptabtest" or "aspmantst" - it's a few files that will run some automated test to recover the ASP.NET Tab (we used it with plenty of success).  Keep in mind that this will only recover the tab when 64-bit mode is enable and 32-bit mode disabled.  &lt;/div&gt;&lt;div&gt;3. IIS7 in 32-mode  - This is not the case on Windows 7 and Windows Server 2008.  At least for Windows 7 you can setup an Application Pool to allow 32-bit Applications. I haven't had the luxury of setting it up on Windows Server 2008.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I hope this helps save several hours of &lt;a href="http://www.google.com/"&gt;Google'ing&lt;/a&gt; - for everything was so spread out throughout the internet.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-3688782459885238276?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/3688782459885238276/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=3688782459885238276' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/3688782459885238276'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/3688782459885238276'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2010/06/ah-joy-of-upgrading-to-bleeding-edge.html' title='Upgrading to .NET Framework 4.0'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_Fx1WyesDeu0/TBEYy9ZA7CI/AAAAAAAAABk/Ai011eAHN5c/s72-c/InetMgr.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-6246181325082181260</id><published>2010-06-09T09:38:00.000-07:00</published><updated>2010-06-09T09:46:55.758-07:00</updated><title type='text'>Greg Burn becomes famous in two Platforms</title><content type='html'>Greg Burns has been the famous Bass player in the band &lt;a href="http://www.redsparowes.com/"&gt;Red Sparowes&lt;/a&gt; for several years and this day (06/09/2010) he will be famous for his contribution for a fix he submitted to &lt;a href="http://www.telerik.com/"&gt;Telerik&lt;/a&gt;.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I may seem to be mocking him but it's far from that - i actually think he's pretty cool.  A member to a successful band, an employee of a successful company and now a contributor to a well known 3rd party framework.  This man is a triple-threat!!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-6246181325082181260?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/6246181325082181260/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=6246181325082181260' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/6246181325082181260'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/6246181325082181260'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2010/06/greg-burn-becomes-famous-in-two.html' title='Greg Burn becomes famous in two Platforms'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-6425059642115008223</id><published>2010-05-31T09:11:00.000-07:00</published><updated>2010-06-09T09:37:02.834-07:00</updated><title type='text'>Guerrilla Roda Part 2</title><content type='html'>&lt;p&gt;This second part of the Capoeira Guerrilla Roda is actually pretty funny - it's a must check out.&lt;/p&gt;&lt;p&gt;&lt;object style="BACKGROUND-IMAGE: url(http://i2.ytimg.com/vi/AsZbtXSMaiE/hqdefault.jpg)" width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/AsZbtXSMaiE&amp;amp;hl=en_US&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/AsZbtXSMaiE&amp;amp;hl=en_US&amp;amp;fs=1" width="425" height="344" allowscriptaccess="never" allowfullscreen="true" wmode="transparent" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-6425059642115008223?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/6425059642115008223/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=6425059642115008223' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/6425059642115008223'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/6425059642115008223'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2010/05/gorilla-roda-part-2.html' title='Guerrilla Roda Part 2'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-2298857908048868794</id><published>2010-05-31T07:24:00.000-07:00</published><updated>2010-06-09T09:29:55.080-07:00</updated><title type='text'>Caporeira Guerrilla Roda</title><content type='html'>&lt;p&gt; &lt;/p&gt;&lt;p&gt;Capoeira Brazil has in Los Angeles, CA has been my new pathway to good health because I find the Bally Fitness a boring  place to try to keep in shape.  &lt;/p&gt;&lt;p&gt;They are filming a documentary on Mestre Boneco and they decided to do a Guerrilla Roda - no one wore their abadas or any symbolism representing capoeira. Everyone thought the the authorities would break it up quickly since the crowd grew big quickly.  The siren you hear at the end was a response for event - the roda kept going for a few more minutes after the video ends.&lt;/p&gt;&lt;p&gt;Aside from the fact that I thought the Guerrilla Roda was a blast to watch it was more interesting to see the reaction of the tourist... There were *A LOT* of tourist in front of The Mann's Chiness Theater on a Sunday at 9:00 am!!!&lt;/p&gt;&lt;p&gt;&lt;object style="BACKGROUND-IMAGE: url(http://i2.ytimg.com/vi/53MTB_dHACY/hqdefault.jpg)" width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/53MTB_dHACY&amp;amp;hl=en_US&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/53MTB_dHACY&amp;amp;hl=en_US&amp;amp;fs=1" width="425" height="344" allowscriptaccess="never" allowfullscreen="true" wmode="transparent" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-2298857908048868794?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/2298857908048868794/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=2298857908048868794' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/2298857908048868794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/2298857908048868794'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2010/05/caporeira-gorilla-roda.html' title='Caporeira Guerrilla Roda'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-114608073799993829</id><published>2006-04-26T12:44:00.000-07:00</published><updated>2010-06-09T09:33:48.048-07:00</updated><title type='text'>Moving my blog...</title><content type='html'>I will &lt;del&gt;no longer&lt;/del&gt; blog here - please point your RSS Reader to here.&lt;del&gt;&lt;a href="http://www.dandyvibe.com/"&gt;http://www.dandyvibe.com&lt;/a&gt; for my new blog as well as others&lt;/del&gt;.&lt;br /&gt;&lt;br /&gt;Thank you,&lt;br /&gt;-v&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-114608073799993829?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/114608073799993829/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=114608073799993829' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/114608073799993829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/114608073799993829'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2006/04/moving-my-blog.html' title='Moving my blog...'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-114297517971620297</id><published>2006-03-21T13:05:00.000-08:00</published><updated>2006-03-21T13:06:19.730-08:00</updated><title type='text'>To Dispose or to not Dispose...</title><content type='html'>For the most part Garbage Collection will run and reclaim memory where objects are no referenced. However, Garbage Collection doesn't reclaim unmanaged resources. Unmanaged resources can be DcConnections, Resources (as in a resources file), any GDI+ Managed and some File IO functionality.Do you absolutely have to call the .Dispose method? No, but you pay a small price in memory loss because the Garbage Collector has to keep the object around a little longer that needed. This is due to the fact that the .Dispose method hasn't been called to clean unmanaged resources. The code that is executed in the Distructor will now have to execute it.If you call the .Dispose method or use the Using Statement the .Dispose method will execute and clean up any unmanaged resources and hints to the Garbage Collector that it no longer has to stay in memory and the memory can then be reclaim on it's next collection.Does every object need to implement IDispose? No, only those that are making use of unmanaged resources or if you sub-class from a class that implements IDispose.Unless you are creating classes that make use of unmanaged resources I wouldn't worry too much about learning how to Implement IDispose - but just in case you wanted to know more here are some links:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://channel9.msdn.com/ShowPost.aspx?PostID=30187" target="_blank"&gt;http://channel9.msdn.com/ShowPost.aspx?PostID=30187&lt;/a&gt;&lt;a href="http://www.codeproject.com/csharp/IDispose.asp" target="_blank"&gt;http://www.codeproject.com/csharp/IDispose.asp&lt;/a&gt;&lt;br /&gt;&lt;a href="http://dotnet247.com/247reference/msgs/44/221574.aspx" target="_blank"&gt;http://dotnet247.com/247reference/msgs/44/221574.aspx&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.codinghorror.com/blog/archives/000040.html" target="_blank"&gt;http://www.codinghorror.com/blog/archives/000040.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.thescripts.com/forum/thread229637.html" target="_blank"&gt;http://www.thescripts.com/forum/thread229637.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://discuss.develop.com/archives/wa.exe?A2=ind0406b&amp;L=dotnet-clr&amp;amp;T=0&amp;O=D&amp;amp;F=&amp;S=&amp;amp;P=3344" target="_blank"&gt;http://discuss.develop.com/archives/wa.exe?A2=ind0406b&amp;L=dotnet-clr&amp;amp;T=0&amp;O=D&amp;amp;F=&amp;S=&amp;amp;P=3344&lt;/a&gt;Otherwise, always call the .Dispose method or use the Using Statement - this is they way to run as lean as possible... Providing the person who implimented IDispose did it correctly.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-114297517971620297?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/114297517971620297/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=114297517971620297' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/114297517971620297'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/114297517971620297'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2006/03/to-dispose-or-to-not-dispose.html' title='To Dispose or to not Dispose...'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-114245454573482254</id><published>2006-03-15T12:24:00.000-08:00</published><updated>2006-03-15T12:29:22.466-08:00</updated><title type='text'>Command Line Tools for Network Interfaces</title><content type='html'>Everyone knows that when you need to modify your network interface information you have to travel over to the Control Panel and navigate to the Network and right-click on the specific NIC you're interested in. There you can change your network protocols, IP Address, Gateways, etc...&lt;br /&gt;&lt;br /&gt;Ever wonder how you would do that if the Control Panel didn't exist?&lt;br /&gt;&lt;br /&gt;Check out: netsh.exe&lt;br /&gt;&lt;br /&gt;By typing &lt;strong&gt;&lt;em&gt;netsh ?&lt;/em&gt;&lt;/strong&gt; it'll guide you through all it's options and command features for modifying the information on you NIC's.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-114245454573482254?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/114245454573482254/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=114245454573482254' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/114245454573482254'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/114245454573482254'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2006/03/command-line-tools-for-network.html' title='Command Line Tools for Network Interfaces'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-113855420052312797</id><published>2006-01-29T09:02:00.000-08:00</published><updated>2006-01-29T09:03:20.550-08:00</updated><title type='text'>Excellent Blond Joke</title><content type='html'>Okay, normally I wouldn't even do this but I was rolling on the floor with this one.  &lt;a href="http://www.peterprovost.org/archive/2006/01/14/10843.aspx"&gt;The funniest blond joke ever!!!&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-113855420052312797?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/113855420052312797/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=113855420052312797' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/113855420052312797'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/113855420052312797'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2006/01/excellent-blond-joke.html' title='Excellent Blond Joke'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-113692806550023856</id><published>2006-01-10T13:07:00.000-08:00</published><updated>2006-01-10T13:22:18.676-08:00</updated><title type='text'>I thought I knew it all...</title><content type='html'>I've been Kelley Blue Book for just over 2 months - when I was hired I thought, "Here's where the 4 years of auto shop in high school are going to pay off!" Don't get me wrong, for the most part being a motorhead definately helps when working in the industry.&lt;br /&gt;&lt;br /&gt;I myself am a bike enthusiast and I tend to know &lt;strong&gt;A LOT&lt;/strong&gt; about motorcycles. I'm familiar with the Bimota project that was lead by Farrari, the Genesis project that flopped at Yamaha, I know about bikes that really suck at performance but look really hot on the street (total chick magnets - not that it matters because I'm married), I know about bikes that manafacturers have taken right from the race track to make them street legal, and I even know of motorcycle with huge V-8 engines. I thought I knew all...&lt;br /&gt;&lt;br /&gt;So I'm reviewing this export file that is sent to several of KBB customers comparing it to the Blue Book Publications - in the motorcycle publication we specify what type of engine the motorcycle has. 99.9% of the time a motorcycle will either have a 4 stroke engine or a 2 stroke engine - not very many engine to choose from... But in the export file I'm looking at possible engine types and one of the options is Rotary. My first thought, "For a bike?! Ya, right." I've heard of the RX7 from Mazda which has a rotary engine but that's the only car to my knowledge - never heard of bike having a rotary. Almost stepping off my seat to point out the obvious I did a quick search on Google and found (my jaw dropped to the ground) Suzuki RE-5 Rotary engine motorcycle!!!&lt;br /&gt;&lt;br /&gt;I felt blind sided by the idea of having a rotary engine on a motorcycle and even worse a rotary engine motorcycle that existed way back when I was in kindergarten! Why didn't I know about this?!&lt;br /&gt;&lt;br /&gt;That goes to show that the Los Angeles School District TOTALLY SUCKS!!!&lt;br /&gt;&lt;br /&gt;I'm still in shock.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-113692806550023856?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/113692806550023856/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=113692806550023856' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/113692806550023856'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/113692806550023856'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2006/01/i-thought-i-knew-it-all.html' title='I thought I knew it all...'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-113570907263720130</id><published>2005-12-27T10:42:00.000-08:00</published><updated>2005-12-27T10:49:25.536-08:00</updated><title type='text'>Password Recovery for VSS</title><content type='html'>This is a double edge sword - hopefully people won't use it in evil ways... However, it can be used for good, too. &lt;br /&gt;&lt;br /&gt;1. In case the VSS keeper leaves the company&lt;br /&gt;2. In case you find an old VSS database to which you no longer know the password&lt;br /&gt;3. In case you forget the VSS Password&lt;br /&gt;4. In case you change the password and you type in wrong... twice!!!&lt;br /&gt;5. In case a disgruntle employee changes the password prior to being escorted off the premises&lt;br /&gt;&lt;br /&gt;I post the good reasons why it's important to be able to recover a VSS password - I'm sure you can think of all the evil reasons to recover the password on your own.&lt;br /&gt;&lt;br /&gt;I found a good password recovery tool for Visual Source Safe (more like an article) on: &lt;a href="http://dotnet.org.za/gangatha/articles/19185.aspx"&gt;http://dotnet.org.za/gangatha/articles/19185.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-113570907263720130?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/113570907263720130/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=113570907263720130' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/113570907263720130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/113570907263720130'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/12/password-recovery-for-vss.html' title='Password Recovery for VSS'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-113337087481994639</id><published>2005-11-30T09:13:00.000-08:00</published><updated>2005-11-30T09:15:39.830-08:00</updated><title type='text'>So what about allowing workers to remote into their PC's???</title><content type='html'>That's an open ended question with a lot of answers to go with it...&lt;br /&gt;&lt;br /&gt;Here's my shot at trying to answer this question:&lt;br /&gt;&lt;br /&gt;VPN is definately a viable alternative. This will allow the developer to tap into your VSS Database and work locally on their machine where they are working in a familiar environment.&lt;br /&gt;&lt;br /&gt;However, if you're worried about the particular environment or licensing issues you may want to have them remote into a machine on your network. Especially if they don't already own all the necessary software needed to complete the job. Keep in mind that performance isn't always on the side of the person who is remoting. Remoting for long term can be frustrating at times.&lt;br /&gt;You can be sure that whatever software license you purchase will remain on your machines and on your network.&lt;br /&gt;&lt;br /&gt;An alternative to VPN &amp;amp; Remoting is &lt;a href="http://www.gotomypc.com/"&gt;http://www.gotomypc.com/&lt;/a&gt; (I don't mean to plug-in) which offers just about everything Remoting offers without having the complexity and having to "punch holes" into your firewall to allow VPN connections.&lt;br /&gt;&lt;br /&gt;Of course there is always the dreaded question the quantity of work being performed. Is it fair for everyone else working a fixed set of hours while one person can work when they feel like it...?&lt;br /&gt;&lt;br /&gt;For me, remoting works for emergency situations such as after hour "firefighting" mode or weekend catch-up work to avoid driving into work or even dressing up to appear decent at the office. I wouldn't consider remoting for everyday work...&lt;br /&gt;&lt;br /&gt;Of course you'll probably get a bunch of contractors and consultants to chime-in and contradict my position - but I stand firm on my statements. I just don't think it's fair for those that have to work a fixed set of hours. Either allow everyone remote access and work from home in their P.J.'s or only allow access to remoting during the extended hours. Or emergency cases - keep in mind that emergency cases shouldn't happen everyday.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-113337087481994639?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/113337087481994639/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=113337087481994639' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/113337087481994639'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/113337087481994639'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/11/so-what-about-allowing-workers-to.html' title='So what about allowing workers to remote into their PC&apos;s???'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-113155554835728107</id><published>2005-11-09T08:56:00.000-08:00</published><updated>2005-11-09T08:59:08.373-08:00</updated><title type='text'>How much of a learning comes with Mere Mortals.NET???</title><content type='html'>&lt;a href="http://www.oakleafsd.com"&gt;MM.NET&lt;/a&gt; learning is no more difficult than trying to learn SharePoint or Enterprise Library. The documentation is better than that of the &lt;a href="http://www.gotdotnet.com/workspaces/workspace.aspx?id=295a464a-6072-4e25-94e2-91be63527327"&gt;Enterprise Library&lt;/a&gt; as well as any of the other previously released blocked from &lt;a href="http://www.microsoft.com/" target="_blank"&gt;Microsoft&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Learning the basics of &lt;a href="http://www.oakleafsd.com"&gt;MM.NET&lt;/a&gt; and making it do what you want it to do is a walk in the park - adapting your imagination and making it do what your users want it to do will require some ingenuity on your part.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-113155554835728107?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/113155554835728107/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=113155554835728107' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/113155554835728107'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/113155554835728107'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/11/how-much-of-learning-comes-with-mere.html' title='How much of a learning comes with Mere Mortals.NET???'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-112751908147086573</id><published>2005-09-23T16:44:00.000-07:00</published><updated>2005-09-23T16:44:41.476-07:00</updated><title type='text'>To Control or not to Control... that is the question!!!</title><content type='html'>I'm currently workin with a team of C# Developers where I'm acting as a technical lead - along with another individual that is very savvy when it comes to C# and OOP.&lt;br /&gt;We've taken the Model View Controller approach in developing this new application we're working on these days.  We question how much liability we should put on the controllers object when performing CRUD operations.  We'd like to take it on a case-by-case basis but to be absolutely sure about this I wanted to post to see what the majority is practicing these days.&lt;br /&gt;&lt;br /&gt;Take for example:&lt;br /&gt;&lt;br /&gt;A controller object for the customer object may be responsible for calling stored procedures for inserting, selecting, updating and deleting.&lt;br /&gt;&lt;br /&gt;But lets take another example:&lt;br /&gt;&lt;br /&gt;Would I create a controller object for each Order and OrderDetail?  Taking this even further, would every object be responsible for its own CRUD operations?  Or would it make sense to allow a single controller object to manipulate for both Order and OrderDetail since the relation is pretty obvious?  Or another option would be to allow each controller object to controller its own CRUD where it makes sense?&lt;br /&gt;&lt;br /&gt;Your responses are greatly appreciated!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-112751908147086573?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/112751908147086573/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=112751908147086573' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/112751908147086573'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/112751908147086573'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/09/to-control-or-not-to-control-that-is.html' title='To Control or not to Control... that is the question!!!'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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-9645956.post-112629368479536899</id><published>2005-09-09T12:13:00.000-07:00</published><updated>2005-09-09T12:21:24.806-07:00</updated><title type='text'>Working at Fox</title><content type='html'>I began working at 20th Century Fox in Century City, Ca around the begining of Sept 2005.  In the few weeks that I've been here I've seen some pretty cool stuff while walking the movie sets.  What I think is the coolest of all is the occasional movie star appearance.  I work at the actual filming lot so it's not far-fetch that I would run into well known actors - I'm not sure if these are actually them but the two that I've seen on the lot are Helen Hunt (from the movie What Women Want) and the girl from the movie American Pie (you know the one that always says, "One day at band camp I...").&lt;br /&gt;&lt;br /&gt;These people are earning a buck here at the Fox Lot (probably earning a little more than my buck - but never the less) so I tend to leave them alone.  However, I did get a smile from Helen Hunt as she was driving by in one of the little golf carts they have here in the lot.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-112629368479536899?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/112629368479536899/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=112629368479536899' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/112629368479536899'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/112629368479536899'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/09/working-at-fox.html' title='Working at Fox'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-112232724560311271</id><published>2005-07-25T14:31:00.000-07:00</published><updated>2005-07-25T14:34:05.610-07:00</updated><title type='text'>Being part of an Architect Team...</title><content type='html'>So, being part of an architect team isn't as glamourus as one may think - building a foundation has to be solid from the get go.  Many steps are put into place to help with this process.&lt;br /&gt;&lt;br /&gt;First you have deal with functional requirements then technical requirements... Oh! and don't forget the reviews in between.  Then finally the implementation and unit testing.  The worst of all is the dreadful and gawd awful code review session that can drag on for days.  In some cases you say to your self, "How in the heck did I let that slip through???".  Finally-Finally, you get to go through the implementation and release it for everyone to use.&lt;br /&gt;&lt;br /&gt;So you ask: How awful is this process?  Imagine you have to write a program that will take 3 months to write but you spend 6 weeks up front figuring out what you're going to write, 4 weeks actually writing and another 2 weeks fixing you're code to fit within the guidelines of your company's common practices...  That flip side would be to write and re-write the program until you hit the target of requirements and hope that when it's released to production it works.&lt;br /&gt;&lt;br /&gt;Granted, I would much rather code for the whole 3 months but releasing a product to production and having it work with little or no hiccups the first time makes the whole process well worth it!&lt;br /&gt;&lt;br /&gt;So I guess being part of the Architect Team isn't that bad after all...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-112232724560311271?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/112232724560311271/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=112232724560311271' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/112232724560311271'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/112232724560311271'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/07/being-part-of-architect-team.html' title='Being part of an Architect Team...'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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-9645956.post-112195166286060159</id><published>2005-07-21T05:58:00.000-07:00</published><updated>2005-07-21T06:15:13.593-07:00</updated><title type='text'>New VFP like features in VS.NET 2005</title><content type='html'>Last night I attended &lt;a href="http://www.occsharp.org"&gt;OC C#&lt;/a&gt; meeting to see &lt;a href="http://www.msmvps.com/kevinmcneish/"&gt;Kevin McNeish&lt;/a&gt; of &lt;a href="http://www.oakleafsd.com"&gt;Oakleaf Enterprise&lt;/a&gt; where he spoke about ADO.NET 2.0. But he also introduced some very kewl features in VS.NET 2005... Well, I should say very cool for .NET because I've been used to seeing these features in Visual FoxPro.&lt;br /&gt;&lt;br /&gt;So what kind of features am I talking about???&lt;br /&gt;&lt;br /&gt;The first feature is the ability to view data the way data is meant to be seen. Being a long time database developer using 4GL Languages like dBase, FoxBase, FoxPro, Visual FoxPro, as well as SQL Server I'm used to seeing data in a grid. Call it what you will. Call it a browse window, data display view or whatever - it pretty much turns out to be a grid. When I first started using .NET it was pain-staking to have to view a DataSet in the debugger. VS.NET 2005 allows you to view the data in a grid format.&lt;br /&gt;&lt;br /&gt;The second feature, which I was terribly tickled to learn about, is the ability to instantiate an object in the Immediate Window. Now for us Foxheads this is something that has been around back from the days of VFP 3.0 (1995) and stemming back to the command dot in dBase prior to OOP arriving in xBase Languages. And for those that never had the pleasure of programming in VFP you'll have to learn something completely new. This will set unit testing to a whole new level.&lt;br /&gt;&lt;br /&gt;Oh ya, and ADO.NET 2.0 is pretty cool, too!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-112195166286060159?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/112195166286060159/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=112195166286060159' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/112195166286060159'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/112195166286060159'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/07/new-vfp-like-features-in-vsnet-2005.html' title='New VFP like features in VS.NET 2005'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-112189721176543378</id><published>2005-07-20T14:51:00.000-07:00</published><updated>2005-07-20T15:08:49.586-07:00</updated><title type='text'>Back Online... Once again!</title><content type='html'>Well it's been a few months since I last posted. I started with &lt;a href="http://www.autobytel.com"&gt;http://www.autobytel.com&lt;/a&gt; in June of 2005 as a Senior Software Development Engineer/Architect and so far enjoying it!&lt;br /&gt;&lt;br /&gt;I do miss the folks at &lt;a href="http://www.wordandbrown.com"&gt;Word &amp;amp; Brown&lt;/a&gt; where I was working with the &lt;a href="http://www.calchoice.com"&gt;CalChoice&lt;/a&gt; Team directly with Paul, Mike and Howard - pretty kewl group of guys to work with (I gave them all raving reviews on my exit interview). I also worked along side but not directly with Robert and &lt;a href="http://www.robnrob.com"&gt;Robbie&lt;/a&gt; (or better known as the "Bob Show").&lt;br /&gt;&lt;br /&gt;Actually, Robert and Robbie introduced me to the &lt;a href="http://practices.gotdotnet.com/workspace.aspx?id=295a464a-6072-4e25-94e2-91be63527327"&gt;Enterprise Library&lt;/a&gt; (formerly MS &lt;a href="http://msdn.microsoft.com/practices/AppBlocks/default.aspx"&gt;Application Blocks&lt;/a&gt;) which became a big, no HUGE part of why I was hired at &lt;a href="http://www.autobytel.com"&gt;Autobytel, Inc.&lt;/a&gt; As much we struggled over framework decisions the overwhelming choice of using Enterprise Library became an invaluable resource for me.&lt;br /&gt;&lt;br /&gt;I know everyone's got plenty of work to do (including myself) so I'll leave everyone get back to work - but before I leave you on this post I just wanted to say that no matter how smart or knowledgable you may think you are about development looking at other's ideas (including the Enterprise Library) is always a great idea.&lt;br /&gt;&lt;br /&gt;Much T'anks to Robert and &lt;a href="http://www.robnrob.com"&gt;Robbie &lt;/a&gt;for their persistance on choosing the framework!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-112189721176543378?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/112189721176543378/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=112189721176543378' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/112189721176543378'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/112189721176543378'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/07/back-online-once-again.html' title='Back Online... Once again!'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-111421153380350487</id><published>2005-04-22T16:11:00.000-07:00</published><updated>2005-04-22T16:12:13.803-07:00</updated><title type='text'>Port Sight Secure Access Locking Accounts</title><content type='html'>For those of you using Port Sight's Secure Access version 2.2 or prior- here's a little bug that I've notified them about and requested a fix.&lt;br /&gt;During the insert of the new user, object or relation through the use of Proc_AR_User_Insert, Proc_AR_Rleationship_Insert, or Proc_AR_Object_Insert the ObjectValidFrom parameter is accepting the date from the client machine.  This causes a problem when authenticating because the objetValidFrom datetime value is being compared to DateTime() on SQL Server.  If the client and server times are not in sync authenticating immediately after inserting a new user will result in Account being Locked out.&lt;br /&gt;I've sent in the request to Port Sight to have this fix but in the meanwhile a word around would be to add a line of code to the stored procedures which overrides the objectValidFrom date with GetDate() from SQL.  Since the comparison is being perform against GetDate() then GetDate() should be used for inserting the timestamp into the record.&lt;br /&gt;This took about 3 months to find - we've dealing with this problem for months and we finally set some time aside to disect the problem and find a fix.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-111421153380350487?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/111421153380350487/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=111421153380350487' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111421153380350487'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111421153380350487'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/04/port-sight-secure-access-locking.html' title='Port Sight Secure Access Locking Accounts'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-111282776899361156</id><published>2005-04-06T15:46:00.000-07:00</published><updated>2005-04-06T15:50:23.493-07:00</updated><title type='text'>Long process got you stuck???</title><content type='html'>You ever click an OK Button do execute a long process and you can't do anything on the form??? Literally has you stuck! It doesn't refresh, it doesn't let you hover your mouse into the form, it just doesn't let you do anything!&lt;br /&gt;&lt;br /&gt;Here's something for you to try: Application.DoEvents();&lt;br /&gt;&lt;br /&gt;Allows long running process to execute misc. events on the form.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-111282776899361156?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/111282776899361156/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=111282776899361156' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111282776899361156'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111282776899361156'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/04/long-process-got-you-stuck.html' title='Long process got you stuck???'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-111228751348529565</id><published>2005-03-31T08:39:00.001-08:00</published><updated>2005-04-01T08:55:45.970-08:00</updated><title type='text'>C# New Line Carriage Return</title><content type='html'>You ever wonder why the .NET Development Team didn't just put the escape sequence characters into Constants? Well they did... Sort of!&lt;br /&gt;&lt;br /&gt;Here are two samples of code that do the same thing:&lt;br /&gt;&lt;br /&gt;// First Sample&lt;br /&gt;StringBuilder sb = new StringBuilder();&lt;br /&gt;sb.Add("This the first line,");&lt;br /&gt;sb.Add("/r/n");&lt;br /&gt;sb.Add("Here is the second line.");&lt;br /&gt;&lt;br /&gt;// Second Sample&lt;br /&gt;StringBuilder sb = new StringBuilder();&lt;br /&gt;sb.Add("This the first line,");&lt;br /&gt;sb.Add(System.Environment.NewLine);&lt;br /&gt;sb.Add("Here is the second line.");&lt;br /&gt;&lt;br /&gt;Notice how instead of using the escape sequence characters in the second example I used a built Constant that the .NET Team Provided for you and I. This method is so much cleaner and so much more understandable. This works great when you're working with someone that is new to the .NET Framework.&lt;br /&gt;&lt;br /&gt;You should also check out what else they have the System.Environment Class.&lt;br /&gt;&lt;br /&gt;Here's a&lt;a href="http://blogs.msdn.com/csharpfaq/archive/2004/03/12/88415.aspx"&gt; link &lt;/a&gt;where you can get more escape sequence characters.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-111228751348529565?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/111228751348529565/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=111228751348529565' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111228751348529565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111228751348529565'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/03/c-new-line-carriage-return_31.html' title='C# New Line Carriage Return'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-111221930925483138</id><published>2005-03-30T13:46:00.000-08:00</published><updated>2005-03-30T13:48:29.256-08:00</updated><title type='text'>Simple Ways to Create a New Record Using Mere Mortals.Net</title><content type='html'>When adding a new record using a Mere Mortals.Net Business Object be default it doesn't automatically display the empty record on a form or the "pointer" doesn't seem to be sitting on the new record. &lt;br /&gt;&lt;br /&gt;There is a couple way to take care of this issue:&lt;br /&gt;&lt;br /&gt;1 - you can put code in the hookpostnew method of the form and use the bindingcontext object to display the last record of the dataset.&lt;br /&gt;&lt;br /&gt;2 - if you don't have a grid on the form and you only display one record at any given time you put code in the hookprenew method to clear the dataset.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-111221930925483138?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/111221930925483138/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=111221930925483138' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111221930925483138'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111221930925483138'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/03/simple-ways-to-create-new-record-using.html' title='Simple Ways to Create a New Record Using Mere Mortals.Net'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-111213116154530163</id><published>2005-03-29T13:16:00.000-08:00</published><updated>2005-03-29T13:19:21.550-08:00</updated><title type='text'>Catch All Error Trap for ASP.NET</title><content type='html'>Trying to trap every error in code if virtually impossible - but in ASP.NET it's as easy at 1, 2 and 3!&lt;br /&gt;&lt;br /&gt;Generic error trapping is important when it comes to Web Applications so you know something wrong is happening with your web site. &lt;br /&gt;&lt;br /&gt;In most cases you want to put your code in the Application_Error event handler of the Global.asax file.  There is plenty of information that you can access in that method.&lt;br /&gt;&lt;br /&gt;For starters, you can check the sender and e objects sent as parameters.  Those can provide some useful information.  You can also call Server.GetLastError().  Another thing to do is create a NameValueCollection Object and gather all the environment variables. &lt;br /&gt;&lt;br /&gt;After you've done all this you can either save it to a file, log it in the event log, email it to yourself, etc...&lt;br /&gt;&lt;br /&gt;Hope this helps you!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-111213116154530163?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/111213116154530163/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=111213116154530163' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111213116154530163'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111213116154530163'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/03/catch-all-error-trap-for-aspnet.html' title='Catch All Error Trap for ASP.NET'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-111211588839832554</id><published>2005-03-29T09:01:00.000-08:00</published><updated>2005-03-29T13:26:42.333-08:00</updated><title type='text'>VSS Over VPN Connections...</title><content type='html'>For those using Visual Source Safe over a VPN Connection or thinking about using a VPN Connection here are some tweaks you can do on your VSS Database to make the VPN Experience more enjoyable.&lt;br /&gt;&lt;br /&gt;For starters, set the temp and data paths to point to the local drives on the user. You have to be cautious when using these settings. Everyone has to agree on a directory structure otherwise VSS won't work correctly.&lt;br /&gt;&lt;br /&gt;Also, set VSS so that it doesn't list the files automatically when accessing VSS - you have to know what you're going after or double click on the folder in VSS if you want to see what's in it.&lt;br /&gt;These settings can be found in the srcsafe.ini file located in the installation folder. Be aware that whatever settings you make here will cascade to all users in VSS - this may not be the behavior you want. If so, modifiy each user's ss.ini file independantly located under the VSS Install Folder\users\{username}\ss.ini - I can't caution you enough when modifying these files. Make backups, double backups and triple backups. If VSS doesn't like what it sees it won't function correctly.&lt;br /&gt;&lt;br /&gt;The settings you want to modify are:&lt;br /&gt;data = {some local folder on your desktop}&lt;br /&gt;temp = {some local folder on your desktop}&lt;br /&gt;CP_OnSelection = {yes/no}&lt;br /&gt;&lt;br /&gt;Other stuff we do is archive on a regular basis to try to keep our VSS Database under 1GB as well as run integrity checks every week. This will keep your VSS Database healthy and you can catch issue early before they cause any major problems, slow downs or the most feared event a developer can experience while living on planet Earth: Data Loss!!! :)&lt;br /&gt;&lt;br /&gt;The machine doesn't have to be an extremely fast machine but what does help is a lot of memory (about 512MB or so), a fast hard drive(s) (preferably 7200RPM SCSI Drives with a fast seek and a lot of buffer) and plenty of work space on the drive (especially when performing maintenance). Maintenance should always be performed locally on the VSS Machine to avoid network traffic and performance issues while doing maintenance on the database.&lt;br /&gt;Most of this information I got from this place call the Internet - it's very cool!!! :)&lt;br /&gt;&lt;br /&gt;Here are some links:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/guides/html/vsoriReferenceGuide.asp"&gt;MSDN&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www3.primushost.com/~ckollars/vssperf.html"&gt;VSS Preferrence&lt;/a&gt;&lt;br /&gt;&lt;a href="http://weblogs.asp.net/jamauss/articles/vsstipsntricks.aspx"&gt;VSS Tips and Tricks&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-111211588839832554?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/111211588839832554/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=111211588839832554' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111211588839832554'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111211588839832554'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/03/vss-over-vpn-connections.html' title='VSS Over VPN Connections...'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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-9645956.post-111118435397904492</id><published>2005-03-18T14:18:00.000-08:00</published><updated>2005-11-09T09:00:57.216-08:00</updated><title type='text'>Subclassing Third Party Frameworks...</title><content type='html'>Subclassing is the easy part, keeping all the designer functionality is gonna to be the time consuming part. The reason is because in order to keep all the designer functionality you'll have to go back in fill in all the appropriate attributes for any code you extend or override.&lt;br /&gt;&lt;br /&gt;My recommendation is to use the controls as is - in other words don't create a subclass of every MM.NET control "right off the bat". If later you feel you need to add a superclass in between your class and an MM.NET Class you can simply do so by changing your code. It's not like in VFP where you had to hack the table and add code like superclass::mymethod(). .NET is a lot more practical when it comes to changing a superclass.&lt;br /&gt;&lt;br /&gt;Besides, that's what frameworks like MM.NET are for... Let Kevin worry about the features. Go on! Have fun working on the FUNdemental part of your project. Stop worrying about what features you'll want to add to the framework. :)&lt;br /&gt;&lt;br /&gt;In the 8 years that I've been working with Kevin's frameworks I've never had to subclass *ALL* his classes... In fact, the occassion was rare.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-111118435397904492?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/111118435397904492/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=111118435397904492' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111118435397904492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111118435397904492'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/03/subclassing-third-party-frameworks.html' title='Subclassing Third Party Frameworks...'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-111110268863779720</id><published>2005-03-17T15:21:00.000-08:00</published><updated>2005-03-17T15:38:08.640-08:00</updated><title type='text'>Deploying Mere Mortals.NET Web Sites...</title><content type='html'>&lt;div align="left"&gt;When working with &lt;a href="http://www.oakleafsd.com"&gt;Mere Mortals.NET Framework&lt;/a&gt; you have to pay special attention at how you reference your assemblies.&lt;/div&gt;&lt;br /&gt;By installing the &lt;a href="http://www.oakleafsd.com"&gt;Mere Mortals Framework&lt;/a&gt; you are installing all the assemblies into the Global Asembly Cache (GAC).  Therefore, when using Visual Studio.NET Copy Utility it's gonna assume that you would like to use the GAC'ed assemblies on the target server.  Visual Studio.NET  trying to be overly helpful doesn't copy the MM.NET assemblies.&lt;br /&gt;&lt;br /&gt;If you don't plan to install the &lt;a href="http://www.oakleafsd.com"&gt;Mere Mortals Framework&lt;/a&gt; on your production server or your using a hosting company that probably won't let you install any third party components you may need to toggle a property on your reference.&lt;br /&gt;&lt;br /&gt;The way to do so is to right-click on the MM.NET Reference and choose properties, change "Copy Local=True".  This will tell Visual Studio.NET that you want to copy the assembly to the target server locally.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-111110268863779720?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/111110268863779720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=111110268863779720' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111110268863779720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111110268863779720'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/03/deploying-mere-mortalsnet-web-sites.html' title='Deploying Mere Mortals.NET Web Sites...'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-111058799856793819</id><published>2005-03-11T16:35:00.000-08:00</published><updated>2005-03-11T16:39:58.570-08:00</updated><title type='text'>nGallery is in the works...</title><content type='html'>So during the week we had some problems here at work that involved security.  Once we got all that squared away I decided to go back and play around with nGallery since the last time I tried to get that to run on W2K3 fell a little short of success.&lt;br /&gt;&lt;br /&gt;I got nGallery running in a sub-domain of &lt;a href="http://www.vicandbert.com"&gt;http://www.vicandbert.com&lt;/a&gt; called &lt;a href="http://ngallery.vicandbert.com"&gt;http://ngallery.vicandbert.com&lt;/a&gt; - I have tons of pictures so it'll take me a little while to get through all of them.&lt;br /&gt;&lt;br /&gt;I see some improvements that I can probably contribute to nGallery so I'm gonna check those out, too.  Now I just have to find the time.&lt;br /&gt;&lt;br /&gt;And by the way, website are up and running without any problems.  New Netgear advance firewall router is very nice.  I'm very happy with it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-111058799856793819?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/111058799856793819/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=111058799856793819' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111058799856793819'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111058799856793819'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/03/ngallery-is-in-works.html' title='nGallery is in the works...'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-111048474133406517</id><published>2005-03-10T11:39:00.000-08:00</published><updated>2005-03-10T12:06:34.880-08:00</updated><title type='text'>Web Sites being down...</title><content type='html'>Lately my websites have been down because I followed directions.&lt;br /&gt;&lt;br /&gt;For the most part Linksys routers are pretty stable. The router I had as model number BEFSR81 V.2 - I had this router for about 4 years until it finally broke down.&lt;br /&gt;&lt;br /&gt;The router would sometimes give me problems here and there but not to the point where it was unusable - it was more annoying than unusable. I'd say it probably needed to have the power recycled about once a week... maybe two weeks.&lt;br /&gt;&lt;br /&gt;Until about the fourth year... Collission lights would be more apperant, Diag light would get stuck, etc... I decided to upgrade the firmware but before doing so I visited the local Linksys forums to see if there were any issues. For the most part people were pretty happy with the upgrades. So I upgraded to firmware version 2.45.0.1 June 2004 (something to that effect).&lt;br /&gt;&lt;br /&gt;Things just began to get worse - the router was almost unusable. I get Linksys on the horn to find out what could've gone wrong. Right off the bat I ask the technician if it was time to buy a new router but he assured me that everything would be just fine. With a few tweaks her and there we'd be up and running like a the Rodent in the Wild E. Coyote Cartoon. So we modified the MTU setting to be 1200 - previously I set it 1493 since that's what the forums indicated was an optimal speed for DSL users. NOTHING! Still having the same problem where the router Diag light would get stuck for 10 to 15 seconds at a time. The technician didn't seem worried so I wasn't worried. Again he said, "No problem, with another upgrade I'd up and running in no time." I download another copy of the latest and greatest firmware for V.2 of the router and flash it, again. This time around the router Diag light blink at a steady pace. Still the technician said, "No problem, sir. We just need to unplug the router for about a minute and everything should be fine."&lt;br /&gt;&lt;br /&gt;So, during the minute the technician and I became acquianted with one-another. Through the conversation we determined that it was 11:00 pm in California (where I was) and it was 2:00 pm in India (where he was). We talked about the weather, weather patterns, laugh a little with a few cracks I threw at him - a minute takes a little longer than one would think.&lt;br /&gt;&lt;br /&gt;Anyway, I plug in the router and the light still blinked just as steady as before. Then he says, "Sire, you mentioned you were thinking about buying a new router?" I fell to the floor laughing my "efen" ass off - not to mention that he just started busting up with laughter, also.&lt;br /&gt;&lt;br /&gt;Anyway, after I laughed and cried and pondered on how to get my websites up I finally just went to bed.&lt;br /&gt;&lt;br /&gt;My website have been down for 3 days in a row. I finally purchased a new Netgear Advance Firewall FVS318 (very nice by the way). I'm still working out the tweaks. Hopefully I'll have my sites back up and running soon.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.danyvibe.com"&gt;http://www.danyvibe.com&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.vicandbert.com"&gt;http://www.vicandbert.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Try to visit them and let me know they work once in a while... Happy coding!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-111048474133406517?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/111048474133406517/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=111048474133406517' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111048474133406517'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/111048474133406517'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/03/web-sites-being-down.html' title='Web Sites being down...'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-110893486090755657</id><published>2005-02-20T13:23:00.000-08:00</published><updated>2005-03-01T13:07:28.370-08:00</updated><title type='text'>Enterprise Libary</title><content type='html'>For those that are struggling with the Application Blocks the Enterprise Library bridges all the blocks very nicely.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blog.hishambaz.com/"&gt;Hisham Baz&lt;/a&gt; presented a nice little primer at &lt;a href="http://www.iedotnetug.org/"&gt;Inland Empire's .NET Users Group&lt;/a&gt; on February 19, 2004. I recorded the presentation and put on a Window's Media file.&lt;br /&gt;&lt;br /&gt;You can download them at &lt;a href="http://www.dandyvibe.com"&gt;http://www.dandyvibe.com&lt;/a&gt; - the videos are in the Enterprise Library forum.&lt;br /&gt;&lt;br /&gt;For those that either have &lt;a href="http://www.xdrive.com/"&gt;XDrive&lt;/a&gt; or have been considering the service you can also access the videos through &lt;a href="http://plus.xdrive.com/u/112709341/709962528lXzYRtDBLydQ4yBgd6W"&gt;my shared XDrive Folder&lt;/a&gt;.  In order to access &lt;a href="http://plus.xdrive.com/u/112709341/709962528lXzYRtDBLydQ4yBgd6W"&gt;my shared folder&lt;/a&gt; on &lt;a href="http://www.xdrive.com/"&gt;XDrive&lt;/a&gt; you'll have to sign up for a 15 day trial - you can provide a bogus email address just so that you can download the files.  Accessing them this way is much faster!&lt;br /&gt;&lt;br /&gt;Of course, you can always click to &lt;a href="http://www.dandyvibe.com"&gt;http://www.dandyvibe.com&lt;/a&gt; which is not as fast but fast enough.&lt;br /&gt;&lt;br /&gt;Thanks, Hisham! Great presentation!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-110893486090755657?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/110893486090755657/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=110893486090755657' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/110893486090755657'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/110893486090755657'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/02/enterprise-libary.html' title='Enterprise Libary'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-110738958531733380</id><published>2005-02-02T15:48:00.000-08:00</published><updated>2005-02-02T16:13:05.316-08:00</updated><title type='text'>Configuration Setting for Dev and Live Environments</title><content type='html'>Today I found an interesting event in VS.NET 2003, it's called Post Build Event.  In it you can place script code that you would normally put in a batch file.&lt;br /&gt;&lt;br /&gt;In our ASP.NET Application we have a virtual directory called config where we keep all our xml file with configuration settings... much like the machine.config, app.config or web.config files.  However, we were looking for a way to store simple strings and flags that would differ between a dev environment and live environment and this was the solution.&lt;br /&gt;&lt;br /&gt;When we started building Windows Applications we felt the need for a "virtual directory" in the Windows App but as we all know there isn't any!&lt;br /&gt;&lt;br /&gt;That's when we found the Post Build Event!&lt;br /&gt;&lt;br /&gt;In our project we have a folder call config which has two other folders called dev and live.  They contain the xml files with simple strings and flags for our application.  Each has settings that are appropriate for dev and live respectively.&lt;br /&gt;&lt;br /&gt;What we needed was a way to copy the xml files from&lt;br /&gt;&lt;br /&gt;%PROJECTDIR%\config\dev to %PROJECTDIR%\bin\debug\config&lt;br /&gt;&lt;br /&gt;if we were building debug version of our application and&lt;br /&gt;&lt;br /&gt;%PROJECTDIR%\config\live to %PROJECTDIR%\bin\release\config&lt;br /&gt;&lt;br /&gt;if we were building a release version of our application.  Another thing we found interesting was environment variables that were set in the Post Build Event Command Line.  Variables such as:&lt;br /&gt;&lt;br /&gt;ConfigurationName&lt;br /&gt;TargetDir&lt;br /&gt;ProjectDir&lt;br /&gt;TargetPath&lt;br /&gt;ProjectPath&lt;br /&gt;etc...&lt;br /&gt;&lt;br /&gt;Granted you have to build ugly script files like those you would when building batch files (i.e. autoexec.bat, boot.bat, dos.bat, etc... you get the picture) but we can at least determine when we were building a debug or release app.&lt;br /&gt;&lt;br /&gt;Soooo, this is what our batch file look like when we were done:&lt;br /&gt;&lt;br /&gt;rem This represent the begining of the bat file&lt;br /&gt;:start&lt;br /&gt;rem If you set your build to debug here's what it'll look like&lt;br /&gt;rem you may have to set the name accordingly if you have a&lt;br /&gt;rem different configuration name.  By default you have&lt;br /&gt;rem Debug and Release.&lt;br /&gt;if "$(ConfigurationName)" == "Debug" goto :debug&lt;br /&gt;&lt;br /&gt;:live&lt;br /&gt;rem We use xcopy with options for copying our live config files&lt;br /&gt;rem /s - Copy directory structure&lt;br /&gt;rem /e - Copy directory even if empty&lt;br /&gt;rem /y - Over write existing files&lt;br /&gt;xcopy $(ProjectDir)config\live\*.* $(TargetDir)config\ /s/e/y&lt;br /&gt;goto :end&lt;br /&gt;&lt;br /&gt;:debug&lt;br /&gt;rem /s - Copy directory structure&lt;br /&gt;rem /e - Copy directory even if empty&lt;br /&gt;rem /y - Over write existing files&lt;br /&gt;xcopy $(ProjectDir)config\dev\*.* $(TargetDir)config\ /s/e/y&lt;br /&gt;goto :end&lt;br /&gt;&lt;br /&gt;:end&lt;br /&gt;rem Simply bring the line of execution to here to indicate the EOF&lt;br /&gt;rem The script will end since there are no more lines to execute.&lt;br /&gt;&lt;br /&gt;One thing to remember is that this is only available in VS.NET 2003 (maybe 2002, too) but definately not 2001.  And, another reason for choosing C# is that this option is not available for VB.NET no matter what version of VS.NET you have.  Sorry, VB Peeps!&lt;br /&gt;&lt;br /&gt;I hope this helps someone when needing to cover your bases for both dev and live environments!&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-110738958531733380?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/110738958531733380/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=110738958531733380' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/110738958531733380'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/110738958531733380'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/02/configuration-setting-for-dev-and-live.html' title='Configuration Setting for Dev and Live Environments'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-110497258676337072</id><published>2005-01-05T16:49:00.000-08:00</published><updated>2005-01-05T16:49:46.763-08:00</updated><title type='text'>How Nerdy are you?</title><content type='html'>&lt;a href="http://www.wxplotter.com/ft_nq.php"&gt; &lt;img src="http://www.wxplotter.com/images/ft/nq.php?val=5744" alt="I am nerdier than 81% of all people. Are you nerdier? Click here to find out!" /&gt; &lt;/a&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-110497258676337072?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/110497258676337072/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=110497258676337072' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/110497258676337072'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/110497258676337072'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/01/how-nerdy-are-you.html' title='How Nerdy are you?'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-110485950985792948</id><published>2005-01-04T09:24:00.000-08:00</published><updated>2005-01-04T09:25:09.856-08:00</updated><title type='text'>Free Book from APRESS</title><content type='html'>Recommended by Eric Gunnerson&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.apress.com/free/index.html"&gt;http://www.apress.com/free/index.html&lt;/a&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-110485950985792948?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/110485950985792948/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=110485950985792948' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/110485950985792948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/110485950985792948'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2005/01/free-book-from-apress.html' title='Free Book from APRESS'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-110442694811679933</id><published>2004-12-30T09:14:00.000-08:00</published><updated>2004-12-30T09:15:48.116-08:00</updated><title type='text'>New Years Resolutions</title><content type='html'>My New Years Resolutions:&lt;br /&gt;&lt;br /&gt;1. Get into Shape&lt;br /&gt;2. Eat a better Diet&lt;br /&gt;3. Excercise more often&lt;br /&gt;4. Head spear .NET Framework 2.0&lt;br /&gt;5. Write a framework that makes sense!&lt;br /&gt;6. Increase my income and lower my expenses.&lt;br /&gt;&lt;br /&gt;We'll see how much of that I'll be able to complete...  I'll keep you up to date.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-110442694811679933?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/110442694811679933/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=110442694811679933' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/110442694811679933'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/110442694811679933'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2004/12/new-years-resolutions.html' title='New Years Resolutions'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-110374563709805992</id><published>2004-12-22T11:59:00.000-08:00</published><updated>2004-12-22T12:01:33.950-08:00</updated><title type='text'>NDoc - The Name Says It All!!!</title><content type='html'>If you don't have it I recommend you RUN! Don't walk to you nearest computer and download it.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://ndoc.sourceforge.net/"&gt;http://ndoc.sourceforge.net/&lt;/a&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-110374563709805992?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/110374563709805992/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=110374563709805992' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/110374563709805992'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/110374563709805992'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2004/12/ndoc-name-says-it-all.html' title='NDoc - The Name Says It All!!!'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-110324844068764706</id><published>2004-12-16T17:51:00.000-08:00</published><updated>2004-12-16T17:54:00.686-08:00</updated><title type='text'>Designing a framework...</title><content type='html'>Designing a framework seems like such an easy task, doesn’t it?  Well, it is if you're the only one writing it.  But how do you know you're writing a well-structured model for a framework?  It seems that my version of a framework is not the version that someone else envisions.  Besides, there are so many out there why would you even bother to spend the time to write one?&lt;br /&gt;&lt;br /&gt;I can tell you why: When Microsoft wrote its framework they wrote in a manner that would be generic enough for anyone to implement. &lt;br /&gt;&lt;br /&gt;Take for example ADO.NET.  The wizards that are built into Visual Studio.NET allow you drag and drop connection objects, data adapter object and create strongly typed datasets to interact with your forms.  All that works great…. If you’re working is Microsoft Databases.&lt;br /&gt;&lt;br /&gt;What happens to those developers that are working in an environment where the business depends on the current database they have – even if the database is 20 years old?&lt;br /&gt;&lt;br /&gt;Some companies believe in the saying, “If it isn’t broke, don’t fix it.”  Except for when they begin working with technology that goes far beyond the scope of their technology.&lt;br /&gt;&lt;br /&gt;Well, getting back to frameworks.  Most framework manufacturers only create frameworks that are “cookie-cut” based on what Microsoft specified.  They exploit the foundation by making use of methods which expose information about the underlying data structure.  Those frameworks become useless when the underlying database doesn’t support those functions.  The 3rd party frameworks fall apart!&lt;br /&gt;&lt;br /&gt;So, we get stuck writing our own.  One of the biggest dilemma’s were facing is architecture.  Without good technical guidance you end up with a lot of disagreeing and discontent people.  Ego’s begin to expose their bad side, people want their ideas to be implemented and management just watches as nothing gets done.&lt;br /&gt;&lt;br /&gt;I hope this is not the case for the shop I’m working for – In the past two days of preparing for a framework we’ve had a lot of dialog going back and forth which is good.  We’ve also had some well winded discussions that were needed in order to clear the muddy waters.  I have to admit that I don’t feel we’re moving at the pace I’d like to see the framework move but we’re not dead stop in the mud, either.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-110324844068764706?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vmcampos.blogspot.com/feeds/110324844068764706/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9645956&amp;postID=110324844068764706' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/110324844068764706'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/110324844068764706'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2004/12/designing-framework.html' title='Designing a framework...'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9645956.post-110321681989021060</id><published>2004-12-16T09:05:00.000-08:00</published><updated>2004-12-16T09:06:59.890-08:00</updated><title type='text'>Hello, Blog World!</title><content type='html'>My first blog - I'll by dumping my thoughts and knowledge onto this blog...  Hope you find it useful.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9645956-110321681989021060?l=vmcampos.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/110321681989021060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9645956/posts/default/110321681989021060'/><link rel='alternate' type='text/html' href='http://vmcampos.blogspot.com/2004/12/hello-blog-world.html' title='Hello, Blog World!'/><author><name>Victor Campos</name><uri>http://www.blogger.com/profile/11979412341857187713</uri><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></entry></feed>
