The oddly satisfying program!
This project focuses on the importance of positive emotions and relaxing moments for stressed developers, sysadmins and whoever has to do with computers.
If you are struggling for building your app or configuring a complex software, or your mega-excel is not working anymore, whatever activity you are doing on your computer, if you feel stress or weird mood, then you may use the oddly satisfying program.
The oddlysatisfying program is a completely useless script for building nothig! But having oddly satisfying log messages till to an always positive ending.
This program randomly choose vintage and modern operations, typing nice logging on your screen and eventually an always positive "BUILD SUCCESSFUL" closing message.
For the best effect, you may have two monitors and use the far one for your boring and stressful activities, and the close one to run the oddly satisfying program (maximizing the window!).
And you may contribute to the project providing ideas, nice log examples and code, in order to keep oddly satisfying program completely useless but relaxing, and beyond that this project is an archive of historical logs too (a bootstrap of a VAX system for example).
The CLI version
Downloading the superb and useless oddly satisfying program is easy, click on the release tags and choose the last (or wathever you want) release. Chosen the release, you may download the right binary for your machine.
If you're lazy just run the oddly satisfying program.
Otherwise you may specify the number of logging operations you desire.
./oddlysatisfying --logs 10
Anyway remember: even if you see attempts of downloading, recovery actions, boot of programs, the superb oddly satisfying program never really do something, it is and it will be always completely useless and harmless.
The Web version
The superb and useless oddly satisfying program is available on Web too, the best for lazy and stressed people. Just point your browser to https://web.bluepulsar971.it/oddlysatisfying/ and enjoy.
Please keep in mind that the web server is just a Raspberry PI, so be nice, patient ane peaceful with him.
Your Web server
If you want to run oddly satisfying as web server, just do that:
mkdir oddlysatisfying cd oddlysatisfying # copy the binary here # copy the html directory here ./oddlysatisfying --server
How to contribute
The program is really simple and you may use it to make practice with Golang too.
Here the files:
- main.go -> includes the list of all available logging func and the main func
- console.go -> provides the helper to write log on screen
- data.go -> provides some data to make the logging more realistic (a list of possible file names, a list of possible disk devices, etc.)
- closing.go -> provides the list of possible func to (positively) ends the execution
Beyong above files, there are many files including the logging functions (each file per topic), for example:
- mainframe.go -> provides logging func related to the world of mainframe computers
- linux.go -> provides logging func related to the world of linux computers
- network.go -> provides logging func related to the world of network devices and actions
- pc.go -> provides logging func related to the world of personal computers
You may add new logging func changing an existing file or creating a new one (if you are introducing a new topic).
Last but not least, when you add a new logging func, you need to update the vtp map into main.go.
- if possible, you should make your logging func dynamic (not static), it means generating at the time of execution the name of servers, files, dates, etc
- logging func may also include failures, recovery actions, loss of data
- if you add new closing functions, keep in mind that all closing functions must always end with a positive, relaxing, peacefull and successfull final message
- the code cannot contain vulgar, aggressive or discriminatory language
- please, you may comment your logging functions, to describe their purpose and historical value
Few more words...
At the date, the superb oddlysatisfying program supports the following architectures:
- Linux/amd64 (tested)
- Windows/amd64 (tested)
- Darwin/amd64 (not tested: if you positively or negatively tried this platform, please open an issue to say it)
You may ask for additional architecture and (maybe, at best effort) you'll be satisfied.
Enjoy! Peace and love.
@LosAngeles971 (aka @Bluepulsar971) - https://www.linkedin.com/in/bluepulsar971/
Credits, inspirational articles and references
The library https://github.com/jessevdk/go-flags is used to parse the command line flags
The articles http://aleclownes.com/2017/02/01/crt-display.html and https://dev.to/ekeijl/retro-crt-terminal-screen-in-css-js-4afh have been of inspiration to build the HTML resources