Skip to content

Instantly share code, notes, and snippets.

View MichaelDimmitt's full-sized avatar
:shipit:
𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫… jobless

MichaelDimmitt

:shipit:
𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫𒐫… jobless
View GitHub Profile
@MichaelDimmitt
MichaelDimmitt / remarkable-ssh-troubleshooting.md
Last active November 17, 2023 00:07
Finding my epub book and notes by ssh-ing into my remarkable2 device.

My epub book and notes dissappeared!

This gist documents my journey:

To find my epub book and notes by ssh into my remarkable2 device.

@MichaelDimmitt
MichaelDimmitt / open_command.bash
Last active November 15, 2023 17:09
open_command.sh
__find_open_command_from_Operating_System() {
local open_cmd
OSTYPE="$(uname -s | tr 'A-Z' 'a-z')"
case "$OSTYPE" in
darwin*) open_cmd='open' ;;
cygwin*) open_cmd='cygstart' ;;
linux*) [[ "$(uname -r)" != *icrosoft* ]] && open_cmd='nohup xdg-open' || {
open_cmd='cmd.exe /c start ""'
} ;;
@MichaelDimmitt
MichaelDimmitt / open_routes.bash
Last active November 15, 2023 17:10
Quickly open all rails get routes ... for manual testing
#!/bin/bash
# This code allows for pagination, 4 comments below say: "remove me to turn off pagination"
{
paginationCursor=1; # remove me to turn off pagination
paginationScalar=5; # remove me to turn off pagination
baseURL="https://localhost";
listOfRoutes=$(
rails routes |
grep GET |
# Basic usage: Tell iex to write all history to
# rlwrap -a iex # --always-readline
# Full working script:
# Increment the file name with the session pattern. based on what files currently exist:
rlwrapVersion=$(ls $HOME/.$filePrefix* | wc -l | awk '{print 0$1 + 1}');
# This is the path we will be writing to:
rlwrapTempPath="$HOME"/."$filePrefix"_"$rlwrapVersion"_history;
@MichaelDimmitt
MichaelDimmitt / elixir-traverse-maps-and-lists-and-history.md
Last active November 17, 2023 00:59
elixir, traversing maps and lists. Also look at iex history.

3 contraversial things that I believe

  1. Programs/applications can be completed and stand on their own: (Accomplish a feature set that a customer finds value in and do not allow scope creep outside of that feature set. This is crucial to be able to build software without handcuffing yourself with legacy code. If your career was an endless list of technical debt it would only ever increase and you would constantly be disappointing by dropping support throughout your career. This does happen but we should design our software especially open source software so that it can stand on its own.)

  2. Tasks can be impossible (You can have a dependency that says you cant have that thing and does not give you access)

  3. Something can be explored completely: (Something can be deemed logically complete by exploring all options available, or proving that the task is not solvable. I watched a video once that mentioned humans are unique in being able to prove things are not solvable instead of solving them which is often d

@MichaelDimmitt
MichaelDimmitt / ideating.md
Last active November 9, 2023 14:49
ideating how to get operating system changes

The original goal of this gist was to provide the same behavior to the "history" command in bash which tells you all of the commands you have written in your bash session, but tells the history of commands you added when using the elixir repl iex. The expected result is to print out all commands and their associated line numbers.

tldr: The instinct is to jump right in and solve the problem. But this document is an effort to create a framework of thinking on how to approach the problem and deal with all failure scenerios until it is proven truly impossible. Hopefully when a similar situation pops up I can utilize the same framework and skip or speed up this step of generating strategies to solve the problem.

Operation "track operating system changes"

Operation "track operating system changes" when in an elixir process.

With this information, I can achieve my original goal of finding where the operating system stores the up arrow history text when in an iex terminal session.

How my brain is tryi

@MichaelDimmitt
MichaelDimmitt / meetings.md
Last active December 6, 2023 02:44
Meetings: Six Thinking Hats, Radical Candor, Crucial Conversations summary

Still needs work, here are some quick thoughts!

Six Thinking Hats

Paraphrasing: What I liked about this book was the concept of making a map making a mental model of all the ideas around a subject and how to think through those ideas completely by making use of the six hats. Verses what is mentioned in the book as western thinking to be critical of ideas and have ideas tied to ego and go with a single solution.

I think these concepts combine well with the other ideas expressed in the two books below of

  • debate meetings (where no decision is made) but the landscape is learned / ideas discussed.
  • who to invite to a meeting.

Wearing the blue hat in a conversation is an attempt to organize what was talked in the conversation/meeting. Discover action items, capture decisions, or schedule future decision future meetings / discussions.

@MichaelDimmitt
MichaelDimmitt / gist:e2be95d876ffeaaf6e6f6e6d617d9e1f
Last active February 1, 2024 15:28
yet another Phoenix Unicorn Dev Ops summary

yet another Phoenix Unicorn Dev Ops summary

Disclaimer
I do not believe these books are a "magic bullet" that work for all or any situations. But it is nice to have another perspective and a lens I can use to see what implementing some of this would look at my previous work experiences. But also, how hard would it be to reverse and apply some other framework to previous work experiences?

After reading/listening to the books/audio_books "The Phoenix Project", "The Unicorn Project" and "The Dev Ops Handbook", I found it most helpful to write down the core concepts so that I could explain them to others without them needing to read the books.

Having these concepts helps to talk about these ideas with other people who may never read the books on my suggestion.