Posts

Working with DocuSign

A Starting point
Recently my customer made the business decision to streamline their contracting process. Currently a sales agent will create a set of documents which will be downloaded, printed and signed off by the prospect. Once the prospect signs the contract, it is faxed back and countersigned. After countersigning, the document would be scanned and saved for reference.

After much due diligence, my customer decided to go with a solution provided by DocuSign. It provides the ability to send documents to recipients for their viewing and / or approval.

Background
I was tasked with incorporating this solution using a set of APIs provided by DocuSign. The API calls are provided as both SOAP and Rest implementations and feature an extensive array of documentation and tools to help with implementation.

I made the decision to go forward with the Rest implementation because of the ease of implementation and configuration.


DocuSign provides an API Explorer allowing you the opportunity to explore…

Getting the CycleGear Bilt Techno 2.0 with Sena DWO-5 headset to work with Sena's Driver software.

Image
UPDATE - 9/26/2017 the following announcement was on the Sena Forum:

A new version of the Cycle Gear Bluetooth Device Manager has been uploaded to the website. This will allow you to update the firmware for the DWO-5.

I have confirmed that the software installs correctly AND that is includes the FTD2XX.DLL which was missing from their last version.

In addition to programming as a profession, I really like to ride motorcycles. Recently I bought myself a really nice Bilt Techno 2.0 modular helmet from CycleGear. They have two local shops in the Chicago area and really do a nice job helping you to select the appropriate gear. This helmet includes a Bluetooth radio DWO-5 supplied by Sena. Out of the box everything worked well. Being the tech type of guy I am, I wanted to try the "Device Manager" software which updates the firmware and allows you to set the speed dial numbers.

This is my experience getting this to actually work and the poor support I got from Sena's technical s…
Image
Extensions and Reflections and Generics oh my!
Creating an extension class for View Models to save public properties using Generics and Delegates, replacing a reflection implementation. Introduction Recently I was working on an MVC project in which the client wanted to persist a form used to filter data to a data store so that the form could be recalled with any number of saved states. I chose to persist the data in a dictionary object which could be persisted in a Entity Attribute Value table. 
I created two extension methods, one which saves model properties to a Dictionary and the other which applies data from a Dictionary and overwrites properties of the model.  The extension method for Getting the properties is called GetModelValues and the other method is ValuesToModel. Both extensions are defined as a type of T where T is defined as an Interface. This is to ensure that by simply adding a interface to an existing Model class only Model classes would have these extensions.
Origina…
Image
appSettings Gone Wild
Today I added a tip/trick to code project describing a technique used recently at one of our clients.
The technique involves add a new configuration section to the config file without having to go through the pain of creating your own class inherited from System.Configuration.ConfigurationSection.
By using the System.Configuration.NameValueSectionHandler we added new sections to the configuration file which allowed us the same technique of using key value pairs though scoped to the newly defined section.

Here's a Link:
https://www.codeproject.com/Tips/1166338/appSettings-Gone-Wild

The most Complex Hello World program ever written and more Hyperbole

OK, I know. How is it that you can claim to make the most complex Hello World program ever written? Of course you could take my work add more to it and then you would have the most complex ever, but that's the beauty of Hyperbole!

The real question is why would anyone make the the first program that most of you have written more complicated?

Of course the answer is that the focus of this exercise is not to write a program which displays "Hello World" but rather one which illustrates the concepts of dependency injection (DI) and inversion of control (IOC) without the overhead of learning other concepts like MVC which depend on both.

Hopefully after you have had a chance to step through the code, you will get a better understanding of what is being done and why. And afterwards you would feel more comfortable to include in your own projects.

I have supplied a complete explanation of my work with supporting projects at the CodeProject site.

To learn more, go to CodeProject a…

October Articles

Thank you to all who voted for two of my articles which where listed in top ten on Codeproject.

Doing Delegates Differently part 1 and Using HTMLAgility pack and CSS Selectors.

Doing Delegates Differently

This is an article about using delegates in a way in which you may not have thought of using them before. As I started to write this it became obvious that this would be a long article, so I am splitting in two. This first part is an overview of delegates and how to group functionality and cross cutting concerns with them. Part two will delve into using delegates to create a validator which can validate any type of object dynamically.
Part 1 - Cross cutting concerns
http://www.codeproject.com/Articles/1045523/Doing-Delegates-Differently-Part

Part 2 - Dynamic Validator
http://www.codeproject.com/Articles/1051860/Doing-Delegates-Differently-Part