DNN

DNN

Be Part of the Future: Test/Review DNN 9.x

09 Nov

Exciting times are upon us as users within the DNN ecosystem, regardless of if we are users of the OpenSource DNN Platform product, or if we are users of the commercial Evoq product lines.  The next release of DNN 9 will include some of the most significant changes to functionality that we have seen in many years.  With the coming change, we are at a crossroad, where community involvement is critical to ensure that the next version of the product is as good as possible.

tags: DNN, DNN Development, DNN Install/Upgrade

Properly Using DNN's Custom 404 Page

24 Sep

Recent issues with a few clients I have encountered some "unusual" behaviors.  Either a situation where we had an unusual redirect situation, or we had pages that were showing HTTP 200 (success) status responses when in all reality the page truly didn't exist.  In the end, we had an IIS customization configured to handle certain types of 404's that DNN wouldn't handle, such as those for missing images, javascript files, and more.  Nothing that we haven't done for quite a while.

tags: DNN, DNN Administration, Quick Tips

Resolving Issues with Security Compromised DNN Sites

26 May

Yesterday I published a blog posting about a recently re-surfaced security vulnerability within the DNN/Evoq platform.  In that post, I provided the steps necessary to mitigate the risks associated with the exploit.  If you have not yet taken the steps listed in that posting, please be sure to take those steps immediately.  This posting is geared towards the proper auditing, review, and resolution of any issues that might be present on a compromised site.  Please note, even if you do not believe you were compromised PLEASE review the first section of this post to be sure.

tags: DNN, Announcements, DNN Administration, DNN Install/Upgrade

Update to DNN/Evoq Url Redirect Provider for Multi-Portal Installations

11 May

One often overlooked free utility for DNN/Evoq are the open-source DNN Extension Url Providers. These providers are there to help with social URL's and URL redirects. The URL Redirect provider is a must-have solution for those migrating from other platforms into DNN as it provides a method to easily add complex URL redirects into your system for old URLS. Even for those that are working under the Evoq URL provider. I was made an administrator of this particular product more than 2 years ago, however, we haven't had much of a need to add features until today.

tags: DNN, DNN Administration

When Memory Caching Doesn't Mean Memory

05 Apr

For a number of years I have been providing guidance on how to get the best performance from DNN. One of my key recommendations is to change the caching mode to "Memory" from the default setting of "File." The setting change itself is quick and harmless, simply change the value in Host Settings are you are done. Well, come to find out it isn't exactly that easy.

tags: DNN, DNN Development, Performance

DNN/Evoq Scheduler: Setting Expectations

30 Dec

One of the fundamental features of the DNN/Evoq platform is the the internal "Scheduler" system.  Creating a Scheduled Job is an easy process, and something I have blogged about in the past.  However, I have been seeing more questions recently around what exactly is meant by the "5 Minute" Interval or other settings regarding the scheduler jobs.  The root cause is the differences in expectations versus what is possible.

tags: DNN, DNN Administration, DNN Development

Check Your DNN Configuration for Performance!

20 Nov

More than six years ago I created the first version of my  DNN Performance Best Practices guide.  This guide has been downloaded by thousands of people looking to get the best performance out of their DNN installations.  The guide has been the training tool I've used for new members of my staff, and it serves as the baseline for any new DNN installation that we work with.  However, in this post I want to draw attention to what has recently become a silent killer with regards to DNN performance.  

tags: DNN, DNN Administration, Quick Tips

Fixing Failing DNN Scheduler DNN 7.3.x Issues

23 Sep

In the past few months I have had to work with various issues with DNN/Evoq sites not executing scheduler jobs.  A number of various blog posts as well as forum posts have been started on the issue, and all point to a similar issue with regards to case-sensitivity with the scheduler and the web server name.  I had a recent situation though where I had fixed all of the issues outlined but was still seeing an error.

tags: DNN, DNN Administration, DNN Development, Quick Tips

Avoiding Issues with DNN EncryptParameter

08 Sep

Working with DNN extension development we often need to share information from page-to-page or other locations within our application and we want to do so in a secure manner.  For the longest time DNN has contained a handy set of methods in the UrlUtils namespace, EncryptParameter and DecryptParameter.  They are easy to use, but just recently I have uncovered a very unusual situation that resulted in an error.  Funnily enough, this code has been running in production for more than 5 years!

tags: DNN, DNN Development, Quick Tips

Keeping Your DNN Website Clean: The Web.config

17 Nov

In the past 6 months I have been working on a large number of migrations from older versions of DNN to newer.  This blog post is going to be a first post in a series of posts around various activities that site administrators can do that will make future site administration easier.   Over time websites will have modules installed, modules removed, upgrades performed and other activities that can often leave lasting marks that only add confusion to things in the future.  Lets look at one area that can/should be cleaned on a regular basis and that is your web.config.

tags: DNN, DNN Administration, DNN Install/Upgrade

Performance Testing Success Story: An Active Third-Party Vendor

08 Oct

I often talk about the importance of having well performing applications.  The reasons for my focus on performance are vast and range from the user experience, ability to handle load, Search Engine Optimization (SEO), and everything in between.  One of the most common issues that I will encounter with client sites when optimizing is that the root of their performance problem might reside with a third-party component that they have used.  Sometimes this was a component they selected, other times it was a component another consultant recommended, and even other times it was an item that was part of the framework that they were using and they did not have a choice.

This post is dedicated to a "happy story" with regards to performance optimization and experiences with third-party vendors.

tags: DNN, Product Review, Performance

DNN Spam Registrations & You!

01 Aug

Recently there has been a lot of discussion in the community around DNN Spam registrations and methods and processes to prevent or fix the issues that are associated with them.  I've been debating on if/when I should actually write about this given that there is an Official DNN Software response on the issue, as well as many other community comments.  Well, tonight, while on vacation I had a server go down and guess what it was because of this very issue so I think its time to give my quick perspective and recommended action points for those of you that are running a DNN site.  These recommendations apply for ALL DNN versions!

tags: DNN, DNN Administration

Module Performance; Set Yourself Apart

06 Jul

With a plethora of modules on the market today, it is often hard for users to select the "right one" for their solution. Help yourself, and help your customers by setting your modules apart in one of the most important ways, performance. Not all DNN sites are large, not all DNN sites are small, that's the beauty of the platform. However, many modules & vendors ignore this major difference. Lets look as some simple tips & tricks to help us set our modules apart.

tags: DNN, DNN Administration, DNN Development, Performance

Improving Web Application Performance - Part Two Users & Environment

29 May

Now that we have a set of metrics to use to validate the performance of our web application we can now start to dive deeply into resolving issues.  The first step in this journey is actually a step often overlooked by those that I encounter.  Professionally speaking 3 in 5 performance consultations that I am involved with are actually resolved by taking the points in this post into consideration.  So lets get started looking at users & environment.

tags: DNN, ASP.NET, ASP.NET MVC, Performance, .NET 4.5

Improving Web Application Performance - Part One Metrics!

27 May

For the last four or five years I have given a number of presentations on improving the performance of web applications, sometimes specifically focusing on DNN other times taking more broadly on ASP.NET.  However, the most popular of all presentations that I have given on Web Application performance was a session that took a broad look at application performance not only from a server side but also a client side application.  This talk was actually tailored to users that came from many application development backgrounds.  In this blog series I will share the information that was contained in that talk as well as a few more items of consideration that I have learned along the way.

tags: DNN, ASP.NET, ASP.NET MVC, .NET 4.5

DNN Performance: Understanding ModuleCache and PageOutputCache

26 May

Over the past 4-5 months my company IowaComputerGurus has help to optimize the performance of more than 50 different DNN based websites.  This is a major uptick in performance related inquiries as compare to past years which is to be expected as website owners become more-and-more concerned about the performance of their applications. In the current era it is important for websites to be fast not only for the user experience, but also for placement within the Search Engines.  The faster the internet connections we get the more impatient our users are when it comes to waiting for our sites to load.  Depending on who you talk to you will see metrics that show page load times of anything greater than 3 seconds can lead to lost customers & revenue for your website.  What exact e"metric you are looking to meet is up to you, but regardless a DNN based site can still easily render in sub-second times with proper configuration & maintenance.  In this post we will look into two of the most commonly overlooked configuration elements for performance the ModuleCache and PageOutputCache.

tags: DNN, DNN Administration, Performance

Avoiding Performance Issues with Multi-Portal DNN

11 Apr

In the first 3 months of 2014 I have encountered multiple multi-portal DNN installations that have been suffering from severe performance issues.  In most cases these users had already followed the whitepaper recommendations that I have had published since early 2007 and the sites were still slowing to a crawl at best.  Digging in, each time I found that a single fundamental issue was the root cause, with a few other secondary considerations.  Given the popularity of DNN continuing to grow and the relative ease of Multi-portal configurations I though it would be important to share.

tags: DNN, DNN Administration, Quick Tips, Performance

DNN's Display on All Pages an Alternative to Avoid Nightmares

17 Jan

One of the age old pieces of functionality within DNN is the ability to check that magical little box "Display on All Pages." This single action might seem like the best thing since sliced bread the first time you use it, and even for days after.  But fast forward a bit and get to a year or two down the road and you might be paying the price for this little "efficiency" in ways that you might not have though about.  In this post we will take a look at the goal, the good, the bad, and the alternatives to this long standing DNN feature.

tags: DNN, DNN Administration

Enterprise Extension Development with DotNetNuke Part Three

29 Sep

This post is a continuation of my ongoing Enterprise Extension Development blog series talking about how to effectively leverage DotNetNuke in complex environments. In Part One we set the stage for why it is important to look at Enterprise Development slightly differently. In part two we started on the slight differences to basic project structures needed to ensure that we can "Compile Anywhere" and move our projects quickly between machines etc. In this part of the series we will take a look at your code structures within, to handle interdependencies etc successfully.

tags: DNN, DNN Development

Enterprise Extension Development with DNN Part Two

25 Jul

A few weeks ago I set the stage for this series of posts with my Enterprise Extension Development with DotNetNuke Part One post.  This article, the next in the series, ended up getting delayed a bit.  As many of you know there has been a lot changing within the DotNetNuke world, as all of this unfolded my priorities were pulled from these posts to other areas of concern.  Now, I'm back on these posts and want to make sure to dive into this in detail.  In the first post of the series I covered the high-level details.  The reasoning behind this series, and the main goals that I hope to accomplish by putting this information out there.  This post is dedicated to the development environment, and development structure for our projects.

tags: DNN, DNN Development

Enterprise Extension Development With DotNetNuke Part One

15 Jun

Earlier this year I spoke at the Southern Fried DotNetNuke event and one of the most popular of my talks was "Developing Enterprise Solutions with DotNetNuke."  Now that we have one of the final hurdles cleared from an implementation perspective in this post, and future ones I will start to share all of the details that I have been promising.   This post will serve as a launch point for the future parts, as of this point in time I believe this will span 8-10 posts to give everything the proper coverage necessary.  As the series grows I will update this post with links to the future sections.  So lets get to it!

tags: DNN, DNN Development

Official DotNetNuke NuGet Packages.

13 Jun

Many of you have been asking me about my promised Enterprise DotNetNuke Development blog postings that I have been promising since the Southern Fried DotNetNuke event earlier this year.  I have been working on them, but one of the key pieces for me was to figure out how to get NuGet packages to the greater population as I was working locally with a private NuGet Server for my own purposes.  I'm happy to be able to note that today DotNetNuke corporation released official NuGet packages to the nuget.org repository and they are freely available for users as of today.  In this posting I'll run through the different packages that are available, when you would want to use them, and what versions are available as of this posting.  

tags: DNN, DNN Development

DotNetNuke Form Patterns and You! 6.x or 7.x?

19 May

As a developer of hundreds of custom DotNetNuke extensions I have to say one of my favorite enhancements to the DotNetNuke platform over the last few years was the inclusion of the new DotNetNuke Form Pattern that was part of the 6.x release.  By incorporating a consistent design pattern it became trivial for extension developers to build modules that had similar UI patterns and would thus have consistently styled applications.  By doing this it is possible to make the understanding of flow within your applications easier as you are leverage a UI style that more similarly matches that of the platform itself.  However, as with any new feature it hasn't came without a few "bumps" in the road.  There were a few changes between 6.x and 7.x that have caused a bit of a problem for those of us that have already adopted the patterns, or those that might.  In this post we will look at these differences and the one small change that you can make for a seamless experience regardless of if you are targeting 6.x or 7.x!

tags: DNN, DNN Development

Southern Fried DNN 2013 Presentation Materials

19 Apr

Last week I was a trainer and a speaker at the Southern Fried DotNetNuke event that was held in Charlotte, NC.  This event was fantastic with a day of optional training on Friday and a series of sessions on Saturday in the format of a regular Code Camp event.  As I promised the attendees of my sessions I would be posting information and assets from these presentations here on this blog.  This posting is an overall aggregate with information on the two sessions and trainings, future blog postings will expand on the information contained within.

tags: DNN, Presentations

Simplifying DotNetNuke Module MSBuild Packaging With Auto Set Package Name

04 Mar

DotNetNuke module development became a lot easier when it became easy to use MSBuild to simply build your project and get a nice install-able module package in the end.  I've been using this process for a number of years now, but there have always been those little things with the default templates that many have been distributing that just don't meet my needs 100%.  For example a few years back I blogged about a fix for Auto Packaging Multiple Modules.  This post shows a fix for one of my other biggest pet-peeves when it comes to the auto-package process and that comes from the determination of the 'PackageName' that is used to name the destination file.

tags: DNN, DNN Development

Getting Started with DotNetNuke 7.0 Presentation Materials

01 Feb

So I've been promising for years to publish presentation materials after each of my events.  I've been working on so many different ways to handle this, and finally have came up with an easy way to share materials from my events. Thanks to SkyDrive, I can now easily embed the content while doing as much as I can to keep ownership of the content, so here is the first one! I'll be posting a bunch of others as well soon, all will be tagged under "Presentations". 

tags: DNN, Presentations

Using the DotNetNuke Extension Verification Service

01 Feb

As a person that has either directly written or managed the creation of over 400 custom DotNetNuke extensions in the past few years, the DotNetNuke package process is still the one item that I will at times overlook.  Well, recently DotNetNuke released a utility to help those of us looking to ensure that our extensions meet all of the proper requirements for consistent installation.  

tags: DNN, DNN Development

Controlling DotNetNuke Static Logs

20 Jan

In the past I have blogged about various DotNetNuke performance and management issues, focusing on how to keep the Site Log, Event Log, and other database related functions in place. In this post, I'm going to take a look at a few other aspects, not all 100% DotNetNuke based, that should be closely monitored and addressed as well. For those of you that follow me on Twitter, my recent posting about clearing almost 40Gb of rogue data across servers is all part of what lead me to this posting.

tags: DNN, DNN Administration

Using DotNetNuke Caching in Custom Modules

03 Nov

One of the biggest concerns for developers these days is how to increase the performance of delivered applications. User expectations have changed over the past few years and the expectations are very, very high in regards to page load times and how quickly information should be returned to the users. Thankfully, as part of DotNetNuke there are a number of different features that can help applications work quickly. Some of these features are known by everyone, things such as the DotNetNuke performance settings under "Host Settings", Cache Time settings on a module by module basis, and if on Professional Edition the built in page Output Cache Provider. However, one often overlooked API that is helpful for developers is the DataCache API. In this post I'll do a deep dive into why this API is so helpful and some scenarios where leveraging this API it can reduce page load times and system resources needed for each page request.

tags: DNN, DNN Development

DotNetNuke World Review and MVP

30 Oct

So first of all, I'll admit I'm a bit late to the game here getting this post put together, as DotNetNuke World was almost three weeks ago.  Sadly combined with two major site launches, some travel and other things the blog just hasn't gotten the attention that it deserved.  But better late than never I thought so here it goes!

tags: DNN, MitchelSellers.com, Announcements

Creating Custom DotNetNuke Module Categories

24 Sep

As part of one of the recent overhauls of the DotNetNuke interface the control panel was updated to include a "Category" selection that allows modules to be grouped logically into categories.  Out of the box a total of two categories are created "Admin" and "Common" with only the Text/HTML module included in the "Common" category.  In this posting I'll take a deeper look into this functionality and how you can create your own categories, and how to move modules around between categories to make administration even easier!

tags: DNN, DNN Administration, Quick Tips

Creating Simple Re-Usable Confirmations in DotNetNuke Skins

06 Jul

As part of the IowaComputerGurus site redesign that I just launched earlier this evening I was looking for a simple "no hassle" way to add a confirmation to a link before downloading. Historically I created a module to manage this and the module managed those links. However, I wanted to find something more flexible so that I can put my download links wherever I want, in any Text/HTML module, on any section of the site. Amazingly I was able to do this with two lines of JavaScript in my skin file!

tags: DNN, Quick Tips

Security Exceptions After Moving .NET 2.0 DNN Site?

05 Jul

Over the past few weeks it seems that I have been doing more DotNetNuke site shuffles than I have in a long time.  From local -> production, from hosting provider a -> hosting provider b, and any combination therein.  This process is practically second nature for me as I've done it so many times.  However I had two sties that proved to be really troublesome so I though I'd share the root causes here in hopes that it might help someone!

tags: DNN, DNN Administration, Quick Tips

Taking Control of the DotNetNuke WYSIWYG Editor

26 Jun

DotNetNuke by default uses the Telerik RadEditor as the rich text editor. It is a truly amazing product and one of the better WYSIWYG editors. Just like any editor though it does have some mannerisms that are not so welcomed by users. A little known fact within DotNetNuke is that you have a number of configuration elements available to help not only make the editor easier to use by removing un-needed items, but you can drastically improve functionality for super-users if so inclined and prevent issues when staging content etc. In this post I'll dive into a few of the key configuration items that I make to all new sites.

tags: DNN, DNN Administration, Quick Tips

Using radCaptcha Via DotNetNuke Wrappers

23 Jun

When putting a form that is public facing we often need to add a captcha to help prevent bots from submitting our forms.  Historically there has been a control available within DotNetNuke that worked for this, but admittedly it didn't have the best customization nor was it the most "pretty" of them out there.  Ever since DotNetNuke has had the Telerik Controls a new option has been available yet its usage isn't the most widely documented.  In this post I'll show you how to use RadCaptcha in your own custom modules.

tags: DNN, DNN Development, .NET 4.0, Quick Tips, .NET 4.5

Windows Azure 90 Day Free Trial - Buyer Beware!

15 Jun

This is just a quick public service announcement for those that might be looking at trying the new Windows Azure service for hosting a DotNetNuke site.  I have been working with a few people that have been wanting to try it out and overall the experience has been pretty good as the DNN install was successful and performed quite well.  However, the reason for this post is a warning to those of you that are working within the "free trial" period.

tags: DNN, Quick Tips, Risk Management

Development and Test DotNetNuke Installations and Search Engines

07 May

It is quite often that when working on a new version of a site that you will have a development, test, upgrade copy of the site that might be around for a while.  It is also possible that if you are working for a third-party that you might stage client sites on your server for a period of time before go-live.  At first glance this all seems common place and not something that you would be concerned about.  However, that is not the case.  Search engines have become overly aggressive in indexing sites, including those that have no direct back links but have been e-mailed to individuals or similar processes. In this post I'll discuss some important considerations when working with these "non-production" installations to help you ensure that search engines will NOT index the content and cause confusion.

tags: DNN, DNN Administration, Risk Management

DotNetNuke Login and Auto Complete - How to Cope

04 May

Recently I have been getting a lot of questions regarding the DotNetNuke login and why when you go to login that "auto complete" is disabled on the username/password fields.  The typical follow-up question to that is "how can I change that behavior".  So after answering this question individually around 5-6 times I though it would be best to get this out here, at least my opinion on the issue.

tags: DNN, DNN Administration

Improve Performance with Static File Caching

19 Jan

This post will be the first of what will be many posts with regards to application performance. After giving a number of presentations over the last 1-2 years, including one this evening in the Minneapolis/St. Paul area I've decided that some of these tips/tricks that I have with regards to improving application performance should really get put out here so people can find them and make the improvements to their applications. Going forward all of these posts will be categorized with at least the "Performance" category and then others that identify what systems are benefited by the changes. The subject of this post is Static Content Caching.

tags: DNN, ASP.NET, DNN Administration, Performance

Getting Up to Speed on DNN 6.x Design

19 Dec

So like many developers I have been spending some time recently updating my client, commercial, and open-source modules to support the new DotNetNuke 6 Form Pattern from a design perspective, to make my modules better integrate into the system.  Looking around when I was starting there is very little "true" documentation on this concept, and for me it was a bit cumbersome pulling everything together.  I started with this Wiki Article and then ended up spending a lot of time digging/inspecting lots of other modules that had been upgraded.  So in this post, I'm going to take a bit more of a 'code-centric" no-nonsense approach to what your form should really look like, I hope that this helps you.

tags: DNN, DNN Development, Quick Tips

Understanding and Mitigating DotNetNuke Upgrade Risks

18 Nov

With all of the recent changes that have come to the DotNetNuke product in the past few years I have been seeing more and more situations where users have older installations that want to get to DNN 6.x to take advantage of the new features that are available with the latest version.  I can't say as I blame them the newest features are great and a true benefit to all that use them, however, the road to getting there isn't always as peachy as it might seem, as you often find people with upgrades that fail horribly.  This has been a common trend and some of the things that DotNetNuke Corporation has done really makes this process less error prone, but a bit portion of the "getting it right" upgrade process really falls in the hands of the site administrators that are going to be doing the upgrades.  That is the focus on this blog post, how can we as site administrators identify potential risks and then mitigate/resolve the issues on our own?

tags: DNN, DNN Administration

DotNetNuke World 2011 Recap

13 Nov

As most of you know I was at the DotNetNuke World 2011 event in Orlando Florida this past week, and I thought I would give a quick recap of my experience with the event and share how much different I felt this event was in comparison to the previous DotNetNuke Connections events.  To help try and give proper justice to the topic, I'm going to break my review out in a few different categories to help make it a bit more understandable, and without further delay, here we go!

tags: DNN

DotNetNuke 6.1.x Release and Warning!

02 Nov

As I'm sure that you have seen in the last day or so DotNetNuke 6.1.0 was released.  Overall, this release is a major improvement for DotNetNuke with enhancements to performance, support for mobile devices and other general upgrades.  However, I've already been alerted to a major, slightly hidden change that I wanted to be sure to put out here as a warning.

tags: DNN, DNN Administration

DotNetNuke World and Blog Updates

31 Oct

It seems that the past few months have just flown by and I haven't gotten as much time to blog here as I have wanted.  I hope to start changing that here in the next few weeks as I have a large number of items that I'm looking to get out here, just trying to find the time to get it done.  But with DotNetNuke world just a little over a week away I wanted to post a quick note here about the event.

 

tags: DNN, Announcements

Canonical Portal Alias Woes DNN 5.6.2

07 Sep

One of the additions to DotNetNuke 5.x (not sure when/where) was the ability for DotNetNuke to provide a Canonical URL in the meta information for your page.  When this all works well, things are going perfectly.  You can configure the site to use the Canonical URL via the "Admin Settings" page and normally all works well, but I had a very "interesting" issue with a site recently and I thought I'd share in case anyone else had a similar issue.

tags: DNN, DNN Administration

DotNetNuke 6.0.1 Performance And You

04 Sep

Now that DotNetNuke 6.x has been out for a while and with the recent release of DotNetNuke 6.0.1 while I was on vacation I thought I'd take the time to write a must requested blog post regarding my thoughts on the DotNetNuke 6.x platform and performance.  Keep in mind, these points are my own personal opinion and should be considered that only, so without further delay.

tags: DNN, DNN Administration

DotNetNuke 6.0 Extensions SnowCovered Integration

21 Jul

In my earlier blog post I mentioned that one of my favorite features of the new DotNetNuke 6.0 release is the ability to download and automatically install purchased extensions from SnowCovered within the installation.  In this posting I'll walk through the functionality as well as give my disclaimer and recommendation in regards to using this process.

tags: DNN, Tutorials, DNN Administration

DotNetNuke 6.0 and You!

21 Jul

As many of you might not have heard yet DotNetNuke version 06.00.00 was released last night.  You can read all about it on the Announcing DotNetNuke 6.0 page from DotNetNuke.  In this blog post I'll talk a little bit about what it this release means to you as a user in the community as well as share some insights and recommendations that I have to make the transition easier, and we will finish with information on a special offer from a known DotNetNuke Vendor.

tags: DNN, Announcements

Content provided in this blog is provided "AS-IS" and the information should be used at your own discretion.  The thoughts and opinions expressed are the personal thoughts of Mitchel Sellers and do not reflect the opinions of his employer.

Connect with Mitchel

I hope the information here has been helpful. To stay connected you can also subscribe to blog updates via email, contact Mitchel about consulting services, or reach out for assistance via CodeMendor

Content Copyright

Content in this blog is copyright protected.  Re-publishing on other websites is allowed as long as proper credit and backlink to the article is provided.  Any other re-publishing or distribution of this content is prohibited without written permission from Mitchel Sellers.