kodyw.com

Kody Wildfeuer's blog

kodyw.com

How to get your computer setup for Dynamics 365 Development

Every time I start a new job or get a new machine at work I need to go through a ritual of setting up the tools that I will need for my job doing development work with Dynamics 365. Below are the tasks that I consider essential for anyone tasked with working with the product. 

Dynamics SDK

The dynamics 365 SDK (Software Development Tools) will be needed to register plugins and custom code onto the platform. To get these resources use the following link: https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/developer/download-tools-nuget

XRM Toolbox

Next up is a tool that can be thought of as an app store for development tasks and tools that can make your life easier. 

https://www.xrmtoolbox.com/

Visual Studio 

For the most part if you are working in the Microsoft ecosystem this tool will be needed in general but I will put it here because this is where you will want to be doing your plugin development. 

SSDT/SSIS

You will use this for data loading and integrations into and out of Dynamics. SSIS is a standard tool in the Microsoft ecosystem and is very powerful for loading massive amounts of data into and out of the system. 

https://docs.microsoft.com/en-us/sql/ssdt/download-sql-server-data-tools-ssdt?view=sql-server-ver15

Kingswaysoft

To integrate the SSIS tool with Dynamics you will need a connector. My favorite is Kinsgwaysoft – which is a custom connector that allows for easy interaction with Dynamics 365 in terms of data integrations. You will need a license to schedule jobs but for local development everything works! This tool is amazing and I cannot recommend it enough. 

https://www.kingswaysoft.com/products/ssis-integration-toolkit-for-microsoft-dynamics-crm

Node.js

Node will be used as a framework for building PCF Controls within Dynamics. Long story short – you will need Node before you can start using the PCF control framework that you will install below. I would download the LTS version on the left side of the screen. 

https://nodejs.org/en/

PCF Control 

PCF Controls are basically plugins to interact and display data within the system using web development front end skills with javascript.

https://aka.ms/PowerAppsCLI

https://docs.microsoft.com/en-us/powerapps/developer/component-framework/create-custom-controls-using-pcf

Visual Studio Code

Some of the tools and tutorials will be focused around using Visual Studio code as the primary way to interact and develop PCF Controls. It is good to have this tool due to its convenience and ease-of-use as well. 

https://code.visualstudio.com/

Dynamics 365 Trial Instance

Sometimes you will need to try stuff out on your own but you will not want to pollute your company’s Dynamics 365 instance with your work. What you will want to do is set up a Trial instance of Dynamics 365 to do this discovery work. It will expire after a period of time but it will allow you to have an isolated place where you can do whatever you need to do within dynamics without causing a mess in your organization’s instance. 

Here is a blog post on steps on how to get started: https://arunpotti.wordpress.com/2017/12/06/how-to-setup-dynamics-365-30-days-online-trial-version/

There you have it – all of the tools that you will need to get started working on Dynamics 365. This might seem overwhelming but I assure you will get the hang of all of these tools and they will come in very handy. 

Go forth!

Dev.to – Tech Learning’s secret weapon

I have long been a fan of tinkering with technology. The problem has been finding good resources that do not send you off a cliff or into a corner. Finding bad or not helpful tutorials can be a demotivating factor when learning about new technologies. I have found a resource that has helped me always find amazing resources no matter the technology. 

Dev.to – Reddit for Developers

Dev.to is basically a social network that is focused only on different technologies. Hashtags separate different tracks. You can subscribe to these hashtags to find different content. These different content streams allow you to narrow down the different areas you are looking to dive into. New tutorials will show up on your feed similar to your reddit homepage showing you the latest stories from the different subreddits you subscribe to. You can also sort by the most upvoted posts for a technology – and this is where dev.to shines. This gives you the best content for a technology that is constantly updated and current. You can sort by different time periods like this week’s best posts, this month, and this year, and all time. Finding the best content on this site has allowed for a way better experience when trying to implement different technologies I am not used to – and it makes it less intimidating. 

Get Started

I would create a profile and put your experience level for you currently – if you are new to development or if you are senior the site will filter your content for your level. This is awesome!

After you create a profile I would subscribe to a few hashtags for whatever grabs your interest. Then sort to find the best content and run through a few tutorials. You will be happy you did!

Here is a link below to this site along with my profile if you would like to see the content I have liked. 

https://dev.to/

https://dev.to/kody

Go forth and code!

Life is a while loop

Life is simply a while loop

What I mean by this is that you are running in a continuous loop that breaks when you run into a bug. That bug spits out an exception and error message. The bug could be getting in trouble in school. Getting fired from a job or crashing your car.

Solve for the errors 

All we need to do in life is take these situations and error messages that break us out of our loop and add some conditionals within the loop to make sure a similar situation does not cause you to break out of your loop the next time.

If you break out of your loop – consider the conditional you have to add to make sure it doesn’t break you out of your loop the next time.

Build up conditionals

Build up conditional statements and your loop becomes more and more resilient to different situations. 

Seek out loop exceptions for better error handling

Soon you will be interested in being challenged by a break out of your loop instead of being depressed or unmotivated by the breaks. You will revel in creating the next conditional statement that will meet this challenge next time. 

Life is a while loop – keep that loop running!

Best resources to learn PowerApps

I have been learning everything I can about PowerApps and I wanted to share the best resources that I have come across that could help someone else interested in this subject. 

Podcasts

https://crm.audio/category/powerapps/

Youtube Channels

https://www.youtube.com/channel/UCz_x76EBX5UXsV27drGNh6w

Websites

https://powerapps.microsoft.com/en-us/blog/microsoft-powerapps-learning-resources/

https://powerapps.microsoft.com/en-us/blog/category/artsypowerapper-samples-twitter-walkthroughs/

https://powerusers.microsoft.com/t5/PowerApps-Community/ct-p/PowerApps1

https://powerusers.microsoft.com/t5/PowerApps-Community-Blog/bg-p/PowerAppsBlog​

Courses

https://www.edx.org/course/developing-business-applications-with-microsoft-powerapps-cds-and-flow

LinkedIn

Follow #PowerApps

Blog: Why?

Cracked Plaster

Christopher Rose

The classical Greek philosopher Plato theorized that writing would corrupt memory, and give a false notion of knowledge for its readers. Surprisingly, one of the founding figures of the western worldview was not a fan of the written word, as he concluded it was the less-honorable route to gaining enlightenment.

I am glad that Plato’s outlook was not widespread, for he vastly underestimated the intrinsic value added when writing complemented experience. Writing birthed a variant of consciousness – it lurched from the skull and coalesced upon the papyrus, scrolls and tomes that would long outlast otherwise biological and fallible stores we had known prior to this utilization. While I understand Plato’s argument that one can ascend to Herculean feats of memory and knowledge if they solely store and remember everything from birth to death within the confines of their selves, what happens when they perish or degrade?

All of that genius and intrigue given from tribulations and joys, transported away from the physical world and all of the rest of humanity. All of that information needing to be relearned. It will take a lifetime to reach certain heights of outlook and intrigue. Would we remember the name Plato without his writings surviving throughout the epochs?

Without writing, would I know of a man named Plato?

By three methods we may learn wisdom: First, by reflection, which is noblest; Second, by imitation, which is easiest; and third by experience, which is the bitterest. -Confucius

Why write a blog? Who will even read your posts? What is the audience?

Who do you think you are?

There are the questions laid upon every individual when starting up a new blog.

Life goes by at a onward, torrential pace. I have long clung to the fallacy that sharp and entrenched memory will never dull – I increasingly come to realize that I will eventually forget. From here forward I have come to the following outlook: To be better humans, we need to offload some of the most valuable and learned of our thoughts, before they perish within the confines of one’s cavernous cortex. This has long been the function of libraries and histories and the written word itself: humanity wants to remember. These constructs are bastions of human lessons and knowledge, lessons that are not pure truth but contain both experiences in being right and wrong, the struggles of a whole experience. Sometimes the hapless and dreaded journey teaches a greater lesson than a plush and comforted existence. This site will serve as a repository of thoughts that I happened to find eating at my being. So, the audience for these writings is a much my future self as other readers.

I am not writing because I think that I am a skilled, or that I produce interesting work. I myself have thought that it is not necessary to address the outside world with boxed up tellings given by my soul, expressed with otherwise unimpressive english. I hope to see that this space will serve as a virtual extension of my self, one that will be used to channel an attempt to meditate my thoughts, feelings and experiences.

Sidenote – This content was originally published Oct 4th, 2013 on another site that I put together that is now offline. In order to have this content continue to live I am republishing it here. 

 

Page 3 of 5

Powered by WordPress & Theme by Anders Norén