because who needs a peaceful weekend? ๐
this go program generates dark humor ascii art memes that encourage the chaos of deploying to production on friday. perfect for keeping your coworkers on their toes and your devops team in a constant state of anxiety.
$ ./forcePushFriday
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ deploy on friday, debug on monday โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
(โขฬแดโขฬ)ู
/|\
/ | \
/ \
/ \
๐ ๐
โข production fire risk: 87%
โข angry manager likelihood: 94%
โข coffee cups required for aftermath: 7
$ ./forcePushFriday -message "yolo deploy friday" -style 0 -figure 3
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ yolo deploy friday โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
_____
/ \
| ^ ^ |
| ฯ |
\_____/
||
/||\
/ || \
โ
โ
โข career impact rating: 9/10
โข monday morning regret factor: 8/10
$ ./forcePushFriday -width 60
*************************************************************
* friday deployments: the russian roulette of software *
*************************************************************
_\/_
/\
/\
/ \
| |
| |
__| |__
/__| |__\
โข weekend ruined probability: 92%
โข stack overflow visits needed: 8
โ ๏ธ it's actually friday afternoon right now. do it. do it.
- ๐ random message templates: choose from 14+ pre-defined dark humor messages about friday deployments or create your own
- ๐จ customizable ascii art: 5 different box styles and 5 character figures
- ๐ chaos metrics: randomly generated statistics about the potential fallout of your friday deploy
- ๐ background patterns: add visual flair with optional background patterns
- ๐ญ color support: colorful output to maximize attention and minimize regret
- ๐ friday detection: extra encouragement if it's actually friday afternoon when you run it
# clone the repository
git clone https://github.com/ansgrb/forcePushFriday.git
cd forcePushFriday
# install dependencies
go get github.com/fatih/color
# build the program
go build forcePushFriday
# optional: move to your path
mv forcePushFriday /usr/local/bin/
# generate a random meme
./forcePushFriday
# use a custom message
./forcePushFriday -message "yolo deploy friday"
flag | description | default |
---|---|---|
-message |
custom message for the meme | random from templates |
-color |
use colorful output | true |
-style |
box style (0-4, -1 for random) | -1 (random) |
-figure |
figure style (0-4, -1 for random) | -1 (random) |
-bg |
background pattern (0-7, -1 for random) | -1 (random) |
-chaos |
chaos level data (0-5, -1 for random) | -1 (random) |
-width |
width of the meme box | 50 |
-list-figures |
display all available figures | false |
-help |
display help information | false |
# full customization with lots of chaos
./forcePushFriday -message "breaking prod like a boss" -style 2 -figure 4 -bg 4 -chaos 5 -width 60
# no colors (for terminal purists)
./forcePushFriday -color=false
# display help and options
./forcePushFriday -help
share memes with your team directly from the terminal:
# send to slack via webhook
./forcePushFriday | curl -X POST -H "Content-type: text/plain" --data-binary @- https://hooks.slack.com/services/YOUR/SLACK/WEBHOOK
# email to the team before leaving for the weekend
./forcePushFriday | mail -s "just pushed to production!" [email protected]
# add to your deployment scripts
deploy_to_production && ./friday-deploy || echo "deployment failed but at least it's friday!"
to add your own message templates, modify the messageTemplates
slice in the source code:
var messageTemplates = []string{
// existing messages...
"your custom message here",
"another custom message",
}
the program uses several components to generate the memes:
- ๐ message selection: either uses your custom message or randomly selects from pre-defined templates
- ๐ฆ box style generation: creates a box around the message using ascii/unicode characters
- ๐ค figure selection: adds a cheerful ascii character below the message
- ๐ chaos metrics: generates random metrics about the consequences of friday deployments
- ๐ญ background patterns: optional patterns to make the meme stand out
contributions are welcome! please feel free to submit a pull request.
- fork the repository
- create your feature branch (
git checkout -b feature/amazing-feature
) - commit your changes (
git commit -m 'add some amazing feature'
) - push to the branch (
git push origin feature/amazing-feature
) - open a pull request
Figure 0:
_\/_
/\
/\
/ \
| |
| |
__| |__
/__| |__\
Figure 1:
(โขฬแดโขฬ)ู
/|\
/ | \
/ \
/ \
๐ ๐
Figure 2:
\(^o^)/
|__|
||
||
/ \
/ \
Figure 3:
_____
/ \
| ^ ^ |
| ฯ |
\_____/
||
/||\
/ || \
โ
โ
Figure 4:
(าโก_โก)
แฆ(โญเฒฐ โ อสโเดฐ)แฅ
|
/|\
/ | \
J L
Figure 5:
(โฏยฐโกยฐ)โฏ
โปโโโป
/|\
/ | \
/ \
/ \
Figure 6:
_ใไน
( อกยฐ อส อกยฐ)
/ โ\
/ | \
/ /| \
/ \
/ \
Figure 7:
______
/ \
| โ โ |
| โฝ |
\______/
| |
โ| |โ
โ| |โ
|__|
/ \
Figure 8:
(เธ โขฬ_โขฬ)เธ
|
|
/|\
Figure 9:
\( โโ _โ )/
\| |/
| |
/| |\
/ | | \
โ
โฒ
Figure 10:
/|\
/*|*\
/* | *\
/* | *\
/* | *\
/* | *\
/*************\
| |
| |
/| |\
Figure 11:
โโโ
โดโโด
เฒ _เฒ
<|>
/ฯ\
Figure 12:
_______
/ \
| โ โฟ โผ |
| SOON |
\_______/
W | | W
| |
| |
// \\
Figure 13:
.---------.
/ .-------. \
/ / \ \
| | | |
_| |_________| |_
.' |_| |_| '.
'._____ ____ _____.'
| .'____'. |
'.__.'.' '.'.__.'
'.__ | | __.'
| '.'.____.'.' |
'.____'.____.'____.'
'.________________.'
Figure 14:
๐ฅ ๐ฅ
๐ฅ ๐ฅ
๐ฅ PROD ๐ฅ
๐ฅ ๐ฅ
๐ฅ ๐ฅ
this tool is for humor purposes only. the author takes no responsibility for any actual friday deployments made under its influence. remember: with great power comes great deniability.
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.