Cambia ResearchSoftware Betterhttps://www.cambiaresearch.comCambia Research2024-03-19T06:49:14-05:00https://www.cambiaresearch.com/sites/cambia/themes/cambia/logo.pngPieceWorx Website Frameworkhttps://www.cambiaresearch.com/articles/103288/an-easier-way-to-append-strings-with-a-delimiterAn Easier Way to Append Strings with a Delimiter2019-10-10T17:10:41-05:002019-10-10T17:10:41-05:00<img src='https://www.cambiaresearch.com/tenants/cambia/articles/images/d88f727b-9d9a-46fa-9ba1-5bf78b4be663_ArticleImageThumb_0.jpg' /><p>Appending strings is a common and repetitive task in C#. You'll be surprised how much time and energy this little extension method saves you.</p>https://www.cambiaresearch.com/articles/166/timeofday-class-for-csharpTimeOfDay Class for C#2019-05-31T22:55:32-05:002019-05-31T22:55:32-05:00<img src='https://www.cambiaresearch.com/tenants/cambia/articles/images/e9cd2ca5-b4ad-4e69-a538-c786331f2c77_ArticleImageThumb_0.jpg' /><p>There are a lot of ways you can hack a time of day in C#, but why not use a dedicated TimeOfDay class.</p>https://www.cambiaresearch.com/articles/204333/generic-enumhelper-class-for-csharpGeneric EnumHelper Class for C#2018-05-28T15:51:56-05:002020-09-13T11:57:01-05:00<img src='https://www.cambiaresearch.com/tenants/cambia/articles/images/90d0503d-2a52-4bdd-9bf2-ad59d69ac740_ArticleImageThumb_0.jpg' /><p>Enums in C# are very useful, but it can seem difficult to work with them at times. In truth, they're pretty easy, but a generic helper class can make our lives a lot easier.</p>https://www.cambiaresearch.com/articles/995518/six-reasons-to-ditch-the-term-code-smellSix Reasons To Ditch the Term "Code Smell"2017-05-03T17:15:21-05:002017-05-03T19:35:26-05:00<img src='https://www.cambiaresearch.com/tenants/cambia/articles/images/59492402-4279-4fff-8801-4c9e4a8f0985_ArticleImageThumb_0.jpg' /><p>The term "code smell" has been around for a while to indicate a particular quality of software code that suggests a problem or bad practice. But it might not be the best choice of words for a software development team.</p>https://www.cambiaresearch.com/articles/404466/the-cambia.gravatar-nuget-packageThe Cambia.Gravatar Nuget Package2016-09-30T21:46:54-05:002016-10-01T15:10:03-05:00<img src='https://www.cambiaresearch.com/tenants/cambia/articles/images/44c1f3e2-69ef-405f-a82a-ddd1462c6e51_ArticleImageThumb_0.jpg' /><p>Cambia.Gravator is a free Nuget package. It contains a simple .NET class for generating Gravatar URLs from emails. It supports all gravatar options.</p>https://www.cambiaresearch.com/articles/730004/the-dotnet-uri-class-and-the-cambia.uriextensions-nuget-packageThe .NET Uri Class and the Cambia.UriExtensions Nuget Package2016-09-14T15:53:51-05:002016-09-24T01:40:18-05:00<img src='https://www.cambiaresearch.com/tenants/cambia/articles/images/3a2dcb4c-cc0c-4c6f-a53e-8c174f54835e_ArticleImageThumb_0.jpg' /><p>Cambia.UriExtensions is a Nuget package provides extension methods to the existing .NET Uri class which make extracting, modifying and building URIs and their parts easier than ever. An overarching goal of this project was to make worrying about delimiter characters a thing of the past. Build and modify your URIs using fluent Drop and Set methods.</p>https://www.cambiaresearch.com/articles/241022/intro-to-number-bases-and-the-cambia.basen-packageIntro to Number Bases and the Cambia.BaseN Package2016-08-29T23:30:17-05:002016-09-07T22:16:16-05:00<img src='https://www.cambiaresearch.com/tenants/cambia/articles/images/535c767b-1b57-4faf-9514-c833ae7fc132_ArticleImageThumb_0.jpg' /><p>Conversions of numbers between different bases or representations in different bases is often needed or useful in computing. This article will introduce you to alphabets, clear up some common misconceptions and discuss some of the issues one might encounter doing base conversions. We further define a new Cambia95 standard alphabet which we hope may be adopted elsewhere for conversion and encoding solutions.</p>https://www.cambiaresearch.com/articles/969077/cambia.basen-documentation-and-code-samplesCambia.BaseN Documentation and Code Samples2016-08-29T23:29:27-05:002016-11-25T00:01:42-06:00<img src='https://www.cambiaresearch.com/tenants/cambia/articles/images/0d9de4a5-f4ba-4a3b-ac21-97769a88642e_ArticleImageThumb_0.jpg' /><p>Cambia.BaseN is a Nuget package for converting and representing numbers in different bases. This article provides numerous code sample to show you how to use the package. I think you'll see that it's pretty straight forward.</p>https://www.cambiaresearch.com/articles/86/hacking-the-monty-hall-problemHacking The Monty Hall Problem2016-02-18T14:07:04-06:002016-04-22T13:08:16-05:00<img src='https://www.cambiaresearch.com/tenants/cambia/articles/images/70a27782-2aa9-445f-8f55-f5070d685c32_ArticleImageThumb_0.jpg' /><p>Thousands of people, including many PhDs, have been completely fooled by the Monty Hall problem. It is utterly counterintuitive and even when you hear an explanation it doesn't make any sense. I break it down here with pictures and go all the way back to the simple defintion of probability to make it clear.</p>https://www.cambiaresearch.com/articles/85/surface-web-deep-web-dark-web----whats-the-differenceSurface Web, Deep Web, Dark Web -- What's the Difference?2016-02-06T19:39:03-06:002016-04-22T13:15:05-05:00<img src='https://www.cambiaresearch.com/tenants/cambia/articles/images/2c5ce2a4-66db-459a-8c80-c682f33d2114_ArticleImageThumb_0.jpg' /><p>Are you wondering how the surface web, deep web and dark web are different? I've had a ring-side seat since the beginning of the web and clarify these often mis-used terms.</p>https://www.cambiaresearch.com/articles/84/how-to-integrate-a-google-custom-search-popup-in-a-bootstrap-navbarHow to Integrate a Google Custom Search Popup In a Bootstrap Navbar2015-10-15T14:15:59-05:002016-09-07T22:16:39-05:00<img src='https://www.cambiaresearch.com/tenants/cambia/articles/images/65b3cd60-9798-42b7-a608-26b0a2d78a71_ArticleImageThumb_0.jpg' /><p>Suitable for a Bootstrap noob, this tutorial will walk you through, start to finish, creating a Bootstrap 3 menu bar and integrating Google's free custom website search capability in a modal popup window. It's fast. It's light. And with this tutorial, easy to do.</p>https://www.cambiaresearch.com/articles/83/rule-6---adapt-and-adoptRule #6 - Adapt and Adopt2015-10-12T09:31:57-05:002016-04-22T13:14:29-05:00<img src='https://www.cambiaresearch.com/tenants/cambia/articles/images/153d95ef-e6e6-4532-8278-362bd36cced4_ArticleImageThumb_0.jpg' /><p>In 1965, Dr. Richard Feynman won the Nobel Prize in Physics. He was brash, rebellious and rarely passed up an opportunity to point out hypcrisy and irrationality. An experience from his youth can teach us something about programming standards.</p>https://www.cambiaresearch.com/articles/11/pathhelper---convert-file-and-folder-paths-and-urls-in-an-aspnet-applicationPathHelper - Convert File and Folder Paths and URLs in an ASP.NET Application2015-03-14T12:37:03-05:002020-09-13T11:57:09-05:00<img src='https://www.cambiaresearch.com/tenants/cambia/articles/images/db318b3c-d374-458b-a2c6-1d4ca14488c7_ArticleImageThumb_0.jpg' /><p>Managing all the various types of paths in ASP.NET can be a chore. You have URLs, virtual paths, absolute paths, relative paths and application paths. This article helps you make sense of all of these while managing conversions and getting the type of path you need when you need it.</p>https://www.cambiaresearch.com/articles/82/generic-undoredo-stack-in-csharpGeneric Undo/Redo Stack in C#2013-07-31T16:21:58-05:002016-04-22T13:08:08-05:00<img src='https://www.cambiaresearch.com/tenants/cambia/articles/images/73a2d549-1e18-405d-a443-46b4570ebb9e_ArticleImageThumb_0.jpg' /><p>In the process of customizing the RichTextBox for Inspire Writing Studio, I discovered the need to manage my own undo/redo stack. I present the code for a simple generic undo/redo stack. This generic undo/redo implementation can be extended for a variety of usage scenarios.</p>https://www.cambiaresearch.com/articles/81/writing-software-for-the-novelistWriting Software for the Novelist2013-07-27T11:54:01-05:002016-04-22T13:17:54-05:00<img src='https://www.cambiaresearch.com/tenants/cambia/articles/images/df74525e-ef52-4935-9613-0d2429355a45_ArticleImageThumb_0.jpg' /><p>I began my third unfinished novel about four months ago. This time, though, I had a very specific reason for putting it on the shelf. I was unhappy with the writing software available to me and I decided to create my own. I want to invite you on this journey and open the door to the process of planning and creating a viable software product.</p>