Newsletter #6 – Positivity through uncertainty

Note: today’s topic touches on the current COVID-19 pandemic.  While this has not directly impacted my own family’s life I know it has impacted many other families and individuals.  I write this post as the spouse of a medical professional and father of a family of 3 young children.  I do not trivialize what others are going through.  My hope is to share a light to others who are in darkness / uncertainty to find their way through this time.

TinyLetter-6-1

 

 

Positivity through uncertainty

During times of crisis like this COVID-19 (Coronavirus) pandemic there are many ways to react to our current situation.  Some people fall into despair while others step up to become leaders and survivors.  While it may feel like we have no control over how we react we can actually influence ourselves in certain ways.

Awhile back on Twitter a friend shared  found an interesting article about Science Proves That Gratitude Is Key to Well-Being.  The article describes how gratitude is linked to happiness and well-being.

“A 2003 study compared the well-being of participants who kept a weekly list of things they were grateful for to participants who kept a list of things that irritated them or neutral things. The researchers showed that the gratitude-focused participants exhibited increased well-being and they concluded that “a conscious focus on blessings may have emotional and interpersonal benefits.”

I’ve written about How I Do A Personal Monthly Retrospective.  No matter how good or bad my week or month has been, I find that I am in a much better state of mind after I do my retrospectives.  Much of that has to do with the fact that every single time (and I’ve gone back to verify) I write down more positives than negatives.  Over time this focus on the positives will lead you be more positive in general and others will also start to notice.

While this current time of COVID-19 pandemic, social distancing, and uncertainty in our daily lives can be difficult, try to focus on the positives in your life.  Daily or weekly write down at least 1-2 things that are going well in your life or the lives of others around you.  We will get through this and being in a positive state of mind will help.

What things are you thankful for?  I honestly would like to hear back from you in reply or comments.

P.S. I’m thankful I celebrated my birthday this morning with my wife and kids at home and virtually with my family through video chat later tonight.

-Frog Out

Searching for Truncated Files in GitHub Folder

I’m sharing out this tip as I ran into this scenario recently.  If you are ever browsing through the GitHub website for files in a repo folder but get the warning “Sorry we had to truncate this directory… files were omitted from the list.” then this post may help.

 

Solution

I was recently browsing the Microsoft Graph .Net SDK repo through the GitHub website looking for the various Message functions.  Unfortunately the folder I was browsing has 6,000+ files and only the first 1,000 files are displayed (see highlighted box in following screenshot).  The first step in the solution is to click the “Find file” button in the upper right.

TruncatedFilesGHFolder1

 

On the following screen I typed “message” to filter the results for any files starting with that keyword.  Now I found the file I was looking for, “../MessageRequest.cs”.

TruncatedFilesGHFolder2

 

Conclusion

Looking back this may seem like an intuitive solution but I was stumped at first.  Hopefully this will help someone (or myself again) if they run into this.

-Frog Out

PowerShell Script to Create Office 365 Security and Compliance Center eDiscovery Case and Holds

This week my customer and a peer both asked for a sample PowerShell script to automate the creation of an Office 365 Security and Compliance Center eDisovery case, hold, and content search.  This post will share out that script and a few things to be aware of (ex. deprecating basic authentication) that are important.

Background

The below script accomplishes the following tasks:

  • Create a Security and Compliance Center eDiscovery case
  • Place an in-place hold on multiple users’ Exchange Online mailboxes
  • Create a content search within eDiscovery case for any folders named “Legal Hold” and the child folders under them

Important Note

As of the publish date (Mar 4th, 2020) the Security and Compliance Center remote PowerShell module relies on basic authentication.  The Exchange team has publicly shared that basic authentication for Exchange Online will be deprecated by Oct 2020.  As such that means the below script may not be usable in its current form in ~6 months.  When a replacement or update is available I will attempt to update this sample to reflect that.

Exchange Online deprecating Basic Authentication
https://support.microsoft.com/en-us/help/4521831/exchange-online-deprecating-basic-auth

In terms of the Exchange Online remote PowerShell module there is a v2 module being developed (active development, not ready for production) which you can find on the PowerShell Gallery.  This new module support OAuth authentication which resolves the issue of deprecated basic authentication.

ExchangeOnlineManagement module on PSGallery
https://www.powershellgallery.com/packages/ExchangeOnlineManagement

Solution

Before running this script, ensure that the account you log in with has the appropriate permissions to both Exchange Online as well as Security and Compliance Center.  My sample uses a single admin account but you may adapt the script to use separate accounts if needed.  See the following articles for more details.

Connect to Exchange Online PowerShell
https://docs.microsoft.com/en-us/powershell/exchange/exchange-online/connect-to-exchange-online-powershell/connect-to-exchange-online-powershell?view=exchange-ps

Connect to Office 365 Security & Compliance Center PowerShell
https://docs.microsoft.com/en-us/powershell/exchange/office-365-scc/connect-to-scc-powershell/connect-to-scc-powershell?view=exchange-ps

Note: If you do not see the below Gist please refer to code at this location: EXO_New-SCCeDiscoveryCaseAndHold.ps1

Conclusion

In this post I shared a sample script for automating the creation of an Office 365 Security and Compliance Center eDiscovery case, hold, and folder scoped content search.  The folder scoping was an interesting detour as I had to track down the way to gather folder IDs from a product group engineer sample (linked in the above sample).  I hope you find this useful and good luck scripting.

-Frog Out

Newsletter #5 – Video game analogies, Live life asynchronously, and MakeCode Arcade

“The goal isn’t just to finish the race of life, but to finish the race with nothing left to give”
-John R. Wood: Ordinary Lives, Extraordinary Mission

Video game analogies

Thought experiment time.  If you had to describe your life as a video game (pick a gameplay mechanic, theme, story, character, etc.) what would you choose?  For me it would be one of the earliest games I ever played, the “Mario Bros” Game and Watch multi-screen game.  In the game (pictured below) you control Mario and Luigi at a bottling plant filling boxes that are moving back and forth on multiple vertical levels before finally loading them on a truck.  The gameplay mechanic of controlling each brother up and down separately, thinking ahead to when a box would need to be caught by one of the brothers, and the patterns of movement clicked with me from an early age.  How do you see your life as a video game analogy?

TinyLetter-5-3

Every week / month I hear developers, public speakers, etc. discussing “don’t live your life by default“, “start with why“, and more.  I’ll propose my own “phrase to live by” into the mix.

Live life asynchronously.

Live life asynchronously

Let me expand upon this idea a little bit further.

Asynchronous means not occurring at the same time, as in computers and programming when a method begins but releases control until it signals back to the system that the asynchronous method is finished.

In real life there are many tasks that can be started and then picked up when they have completed: laundry, cooking a meal, charging batteries, compiling code, etc.  The interesting part is to figure out when you can start one task and know that it will be ready to pick back up when it is done.

Personally I know that I can start a load of dishes in the dishwasher right after dinner and have them ready to put away shortly before bed.  When I get home from work I can play a game of chase around the house with my older kids and find toys / books / clothes that need to be picked up (doubles as some exercise for all of us).

The other aspect of doing things asynchronously is that it forces you to think about your future self (and others).  By doing X now I know that in Y hours / days / weeks I’ll be ready to finish it.  This ties in to investing (financially, academically, etc.) as well.  I could buy a fancy new electronic gadget now, or I could put that money towards my retirement account / kids’ school costs / donation to charity or plenty of other future needs.

Despite the natural tendency for some folks to minmax the optimal set of tasks that can be completed in a given 24 hr period, the first two words of the phrase mean the most: “live life”.  I’ve never thought to myself “I’m glad I fit in those additional 5 chores around the house today at the expense of spending time with my wife or kids”.  Go on and live life with people first.

MakeCode Arcade

TinyLetter-5-5

Recently I found a cool retro game programming platform called MakeCode Arcade.  MakeCode Arcade is free, open-source, and entirely accessible through a browser with no installs required.  Similar to MIT’s Scratch offering you can build games using predefined blocks (or JavaScript if you feel like going advanced) that include game logic, sprites, animations, controller input, and more.  You can also play your own games or a whole host of community games through the browser or download your games to a number of hardware devices (most cost less than $40 last I checked).  If you feel like collaborating you can also share your projects on GitHub for others to enjoy and work on.  I’m looking forward to introducing MakeCode Arcade to my daughter this year to see what she comes up with.

On a similar note I’ve also grown very interested in chiptune music and how it is created.  One of my favorite “artists” is Rich Vreeland who goes by the name Disasterpeace.  I highly recommend these albums:

If you are interested in creating your own chiptune music you can find a handful of tools below. Even though this article says for Windows 10 there are offerings that also have versions for Mac and Linux.

Chiptune music creators for Windows 10
https://www.ilovefreesoftware.com/19/windows-10/chiptune-music-creator-windows-10.html

Have you tried out any fun retro gaming platforms or found good chiptune music?  Share back if so.

-Frog Out

Looking Ahead To 2020

For many of the past years I’ve written a retrospective (2016, 2015, 2013, 2012, 2011, 2010) or look ahead (2019, 2014, 2013, 2012, 2011, 2010) post to walk through my goals.  This year I am a little behind but with some encouragement from my mentor Sean McDonough I will look ahead at what I have planned for 2020.

board-1647323_1280

Ahead in 2020

Live life for others

A clip of Keanu Reeves on a late night show answering the question “What happens when we die?” has been popular on social media lately.  If you haven’t gotten to watch this short clip take a minute to do so now:

In the clip Keanu doesn’t focus on himself (or his future self.)  Instead he talks about those who love us and how their lives will be impacted by our passing.

This has been something that I’ve thought about more in the past years as my children have been born.  I enjoy taking an hour or two once a week to do something with one of my kids such as going for a swim at the local gym, a library visit, grocery store run, or similar activity.  I could / should do this more often, especially activities with my wife like our monthly date nights.

Hobbies (and music)

Speaking of my wife, we recent went to a marriage ministry event at a local church.  In one of the videos for the night the couple presenting discussed keeping a dreams journal together.  This dreams journal would contain things that you would like to do in the near term as well as the long term.  My wife and I discussed each of our personal and collective dreams which opened some interesting insights.

For me personally I would like to get back into playing a musical instrument.  In my younger years I played piano for 8 years and guitar for a few.  I won’t claim to be good at either today, but I’ve always been drawn to music as a means to relax or inspire creativity.  I’ve tossed around ideas of starting up drumming but that may wait until my kids are older and we have space to put equipment like that.  For now though I’m looking into creating chiptune or MIDI music on my laptop.

Chiptune music creators for Windows 10

https://www.ilovefreesoftware.com/19/windows-10/chiptune-music-creator-windows-10.html

MidiPiano

http://www.midipiano.net/

STEAM education for girls

Now that I’m the father of 2 girls (in addition to my son) I’m interested in ways to encourage both of my daughters in science, technology, engineering, arts, and mathematics (STEAM) education.  My oldest daughter is already very interested (and good at) art and math.  As for the other areas we’ve bought a few Elenco Snap Circuits kits and I’m looking at a few coding applications that she can use in a year or two.

At a broader level, the Stir Trek Conference that I help organize has a related Stir Scholarship that is awarding young women with scholarships to enter into a degree in software.  If you feel inclined, please donate and spread the word about this scholarship.  I look forward to helping this program grow and continuing to encourage all young women to explore a STEAM education.

Stir Scholarship

https://stirscholarship.org/

Building community at work

In addition to my normal customer work I have also been involved in building an internal community of sorts around Microsoft Graph.  This community is focused on answering questions from my peers in the field as well as connecting people with product group members.  Aside from the technical aspects of this community I’ve also been interested in helping others contribute to documentation (primarily Microsoft’s).  In 2018 I wrote a blog post on the topic but I’m also looking at doing a workshop or recorded video to help others see the process.

How To Edit Microsoft Documentation on GitHub

http://aka.ms/HowToUpdateMsftDocs

Conclusion

While this list is not complete nor are they all measurable goals, this is a starting point for the direction I’ve pointed myself in for the 2020 year.  If you have set your own goals or personal directions I’d love to hear what they are.  Feel free to leave a comment and share.  Thanks and have a great start to 2020.

-Frog Out

Newsletter #4 – Worthwhile gifts, MFA / password managers, and books

TinyLetter-4-1

Worthwhile gifts

Before I start, Christmas / birthdays / anniversaries / other important events != giving gifts as the primary focus in our house.  With that said, my wife and I have been reflecting on the gifts that we give to each other or other people.  For our kids we’ve been looking into more “experience” type gifts.  This could be a bowling night out, art classes, tickets to a kids musical, etc.  So far this is working well and helps our kids not to become consumed with “things” but instead making memories.  It helps that we take lots of pictures and then upload them to a digital frame that rotates through pictures from past years.

For my wife and I we’ve been looking into gifts that give both of us more time to spend with each other or help keep us in the moment.  I’ll share some examples.

  • Smart home garage door opener – auto-closes at night if accidentally left open, provides peace of mind when going to bed.
  • Cordless Dyson vacuum – can move from room to room and vacuum in half the time it used to take with corded, heavy canister-style vacuum we previously had.
  • WeMo smart switches for lights – we are slowly helping our 2 older kids learn to turn off lights when they leave a room.  In the meantime the ability to turn off all the basement lights without needing to go up and down the stairs while cooking dinner / feeding baby / doing ten other things is a big help.  I think I’ll be adding more of these over time to other rooms.

 

MFA / password managers

Another worth-while gift that you can give to your family / friends / coworkers / etc. is the (strong) encouragement to turn on multi-factor authentication (MFA) and use a password manager.  I’ve recently read two interesting articles online that highlight the need to secure your digital / online accounts:

  1. Your Pa$$word doesn’t matter
    • In majority of credential theft scenarios, password doesn’t matter as bad actor can obtain them
    • Don’t focus on password limitations, instead implement MFA and threat detection processes
    • If using password manager, then max out the length of password
    • Use of MFA reduces credential theft by 99.9% [this was enough to cement my thoughts]
  2. All your creds are belong to us!

Regarding a password manager, I registered the majority of the accounts that my wife and I share (Netflix, banking, mortgage, retirement plan, etc.)  If she needs to access them (heaven forbid if I were in a coma, passed away unexpectedly, or similar) she would need to access them.  By using a shared password manager (currently Lastpass family plan) those shared accounts can be accessed by either of us.  For any accounts that aren’t shared (personal email, etc.) my wife is also the emergency contact who can gain admin access in the event that would be needed.  Overall this gives both of us more peace of mind about planning for the future.

 

Books

Reading (blogs, online magazines, books, etc.) can introduce you to new ideas and keep your brain active to help you boost your creativity (see newsletter #2).  In the past few months I’ve had the pleasure to read (still in progress on the 3rd one) 3 books that have had a profound impact on me.  I want to share these with you in the hopes that you read them, incorporate their ideas into your own life, and if you feel moved to do so pass them along to others.

  • Leadership and Self-Deception: Getting Out of the Box
    • We “put ourselves into a box” when we let our own emotions or thoughts obscure our view of other people.  We can get out of this box and see others clearly when we shift our attitudes.  The applications of these concepts can apply to family, work, and other relationships / environments.  I highly recommend this book and I plan to re-read this again in the future.
  • Bullshit Jobs: A Theory
    • Excuse the language in the title of this book, but this book has profoundly changed the way I see my own work and the work of others.  As we as a human race move towards more automation and less reliance on manual labor the rise of BS jobs has increased.  This book goes into the history and current state of jobs, how people as a whole value their job / life, and ways to address the changing nature of jobs in the future.  I’m still internalizing many of the ideas brought up in this book but can see this making large changes to my life / work.
  • Be the Master (4th edition)
    • I am 2/3 of the way through this book but wanted to list it as well.  Be the Master focuses on how to become a master (does not mean a “know it all” or “expert in everything“) in your career and also how to share that with the next generation of workers.  You may have heard of many of the concepts discussed in this book, but Don does an excellent job of succinctly reviewing them and sharing stories / analogies to illustrate all of the points.

Do you have any worthwhile gifts (or books) that have made an impact for you?  Please share back if so.

-Frog Out