Slideshow of images generated with Stable Diffusion in February 2024 that depicts an alchemist at work in a old fashioned lab. Some photos with cats and others without. This was created using the sai-digital art setting and adjusting the parameters slightly, keeping the seed fixed.
All posts by erickclasen
Microsoft leaked source code
I stumbled across this accidentally, quite interesting. I did not know that Microsoft software source code was leaked. Personally, I am not interested in doing anything with it as a for many years 100% Linux user but, I put it here as an interesting artifact of software history. Apparently it was leaked on 4chan, no surprise there.
Info from the torrent page
A direct copy of the information…
Included in this torrent:
* MS-DOS 3.30 OEM Adaptation Kit (source code)
* MS-DOS 6.0 (source code)
* DDKs / WDKs stretching from Win 3.11 to Windows 7 (source code)
* Windows NT 3.5 (source code)
* Windows NT 4 (source code)
* Windows 2000 (source code)
* Windows XP SP1 (source code)
* Windows Server 2003 (build 3790) (source code) (file name is ‘nt5src.7z’)
* Windows CE 3.0 Platform Builder (source code)
* Windows CE 4.2 Shared Source (source code) * Windows CE 5.0 Shared Source (source code)
* Windows CE 6.0 R3 Shared Source (source code)
* Windows Embedded Compact 7.0 Shared Source (source code)
* Windows Embedded Compact 2013 (CE 8.0) Shared Source (source code)
* Windows 10 Shared Source Kit (source code)
* Windows Research Kernel 1.2 (source code)
* Xbox Live (source code) (most recent copyright notice in the code says 2009)
* Xbox OS (source code) (both the “Barnabas” release from 2002, and the leak that happened in May 2020)
*** * 2020-09-24 This is an update to the previous torrent (2020-09-20), made for the sole reason of including the file ‘nt5src.7z’, which contains Windows XP / Windows Server 2003 source code. Those who have already downloaded the previous torrent, fear not! This torrent is 99% identical, with the only changes being to the files ‘torrent description.txt’, ‘md5.db’, and the inclusion of this text file and ‘nt5src.7z’. You don’t have to re-download the other files. Just remove the old torrent from your torrent client (without deleting the data), rename the directory from ‘Microsoft leaked source code archive_2020-09-20’ to ‘Microsoft leaked source code archive_2020-09-24’. Add the new torrent to your torrent client and force it to do a re-hash / re-check of the files, if it doesn’t do it automatically.
The leak happened on 4chan, and although the file name is the same this file is slightly smaller. This is because my file only has one level of compression, while the original file had CAB files inside the 7zip file. The only change I made was to extract the CABs, and then compress the extracted files with 7zip. Because, fuck CABs. It’s all there. Enjoy
magnet:?xt=urn:btih:3D8B16242B56A3AAFB8DA7B5FC83EF993EBCF35B&dn=Microsoft%20leaked%20source%20code%20archive_2020-09-24&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337&tr=udp%3A%2F%2Fopen.stealth.si%3A80%2Fannounce&tr=udp%3A%2F%2Ftracker.torrent.eu.org%3A451%2Fannounce&tr=udp%3A%2F%2Ftracker.bittor.pw%3A1337%2Fannounce&tr=udp%3A%2F%2Fpublic.popcorn-tracker.org%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.dler.org%3A6969%2Fannounce&tr=udp%3A%2F%2Fexodus.desync.com%3A6969&tr=udp%3A%2F%2Fopen.demonii.com%3A1337%2Fannounce
Andrew Huberman’s interview series with Dr. Paul Conti from 2023
Andrew Huberman’s interview series with Dr. Paul Conti dives into the complexities of mental health, trauma, and human behavior. Dr. Conti, a psychiatrist specializing in trauma, provides deep insights into how trauma impacts the brain and body, the importance of recognizing and addressing it, and practical strategies for healing. Across the episodes, they explore the role of early-life experiences, stress, and how unresolved trauma can shape a person’s life. Dr. Conti also discusses the power of self-awareness and compassion in overcoming mental health challenges.
Episode 1 Summary: Dr. Paul Conti introduces foundational concepts of mental health, defining the self through the unconscious and conscious mind. He discusses how to address anxiety, negative thought patterns, and defense mechanisms, offering tools for self-assessment and improvement, either through personal reflection or professional guidance. This episode lays the groundwork for understanding mental health and reshaping emotions and behaviors.
Episode 2 Summary: Dr. Paul Conti presents tools for overcoming challenges by exploring defense mechanisms, behaviors, and self-awareness. He explains how to align internal drives and cultivate positive aspirations, offering strategies to overcome intrusive thoughts and self-limiting beliefs. The episode focuses on adjusting internal narratives and fostering personal growth.
https://www.hubermanlab.com/episode/guest-series-dr-paul-conti-how-to-improve-your-mental-health
Episode 3 Summary: Dr. Paul Conti explores building healthy relationships, including romantic, professional, and friendships. He provides a roadmap for navigating conflicts and setting boundaries, while discussing common issues like insecurity, manipulation, and past trauma. The episode highlights how healthy relationships foster mutual growth and support.
Episode 4 Summary: Dr. Paul Conti discusses true self-care, emphasizing the mental health benefits of self-awareness and introspection practices like journaling and meditation. He explains how unresolved trauma can hinder personal growth and the importance of relational support systems in the journey to mental well-being.
https://www.hubermanlab.com/episode/guest-series-dr-paul-conti-tools-and-protocols-for-mental-health
The following is the full description for episode 1 taken from the huberman.com site
“This is episode 1 of a 4-part special series on mental health with psychiatrist Dr. Paul Conti, M.D., who trained at Stanford School of Medicine and completed his residency at Harvard Medical School before founding his clinical practice, the Pacific Premier Group. Dr. Conti defines mental health in actionable terms and describes the foundational elements of the self, including the structure and function of the unconscious and conscious mind, which give rise to all our thoughts, behaviors and emotions. He also explains how to explore and address the root causes of anxiety, low confidence, negative internal narratives, over-thinking and how our unconscious defense mechanisms operate. This episode provides a foundational roadmap to assess your sense of self and mental health. It offers tools to reshape negative emotions, thought patterns and behaviors — either through self-exploration or with a licensed professional. The subsequent three episodes in this special series explore additional tools to further understand and improve your mental health.”
Feel free to also check out the podcast series here via Apple Podcast:
https://podcasts.apple.com/us/podcast/huberman-lab/id1545953110?i=1000626920013
https://podcasts.apple.com/us/podcast/huberman-lab/id1545953110?i=1000627705248
https://podcasts.apple.com/us/podcast/huberman-lab/id1545953110?i=1000628545319
https://podcasts.apple.com/us/podcast/huberman-lab/id1545953110?i=1000629317045
Browse Podcasts on Hubermanlab.com
https://www.hubermanlab.com/all-episodes
Bitcoin the American Dream and Transcending Our Political Divide with CJ Wilson
Excellent Interview with CJ Wilson a Bitcoin investor and supporter who works hard to get the leaders in Washington that run the country educated on why BItcoin is a good thing for the country.
The podcast episode “Bitcoin: The American Dream and Transcending Our Political Divide” with CJ Wilson explores the potential of Bitcoin to unite diverse political perspectives and strengthen the American economy. CJ Wilson, a former Major League pitcher and co-author of the book Bitcoin and the American Dream, discusses how Bitcoin can provide equal financial access, especially for those on the lower economic rungs, while also contributing to energy grid improvements and rural economic revitalization. The conversation also highlights efforts to educate the political class on Bitcoin’s benefits, showing how it transcends traditional political divides to foster a more inclusive financial system.
You can listen to the full discussion here:
Sparkleshare on Raspberry Pi
This was my process of setting up Sparkleshare, server side on the Raspberry Pi. This guide is basically a dump of the terminal that I noted important points on.
This guide is color coded
My Input on Command Line
My Notes
Run the Dazzle script via Curl
…from https://www.sparkleshare.org/ under Setting Up a Host.
erick@raspberrypi ~ $ sudo curl https://raw.githubusercontent.com/hbons/Dazzle/master/dazzle.sh \
> –output /usr/bin/dazzle && chmod +x /usr/bin/dazzle
[sudo] password for erick:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 8639 100 8639 0 0 2954 0 0:00:02 0:00:02 –:–:– 4674
chmod: changing permissions of `/usr/bin/dazzle’: Operation not permitted
Using sudo causes this, so just execute the last line again with sudo…
erick@raspberrypi ~ $ sudo chmod +x /usr/bin/dazzle
Next Run Dazzle Setup
Interesting stuff going on when the project is created, look at the dump to get an idea of what it is doing.
erick@raspberrypi ~ $ sudo dazzle setup
1/4 | Installing the Git package…
-> The Git package has already been installed (version 1.7.10.4).
2/4 | Creating account “storage”…
-> useradd storage –create-home –home /home/storage –system –shell /usr/bin/git-shell –password “*” –user-group
3/4 | Configuring account “storage”…
-> mkdir –parents /home/storage/.ssh
-> touch /home/storage/.ssh/authorized_keys
-> chmod 700 /home/storage/.ssh
-> chmod 600 /home/storage/.ssh/authorized_keys
4/4 | Reloading the SSH config…
-> /etc/init.d/ssh reload
Setup complete!
To create a new project, run “dazzle create PROJECT_NAME”.
Creating a Project called Rasp_Pi_Main_Share
Interesting stuff going on when the project is created, look at the dump to get an idea of what it is doing.
erick@raspberrypi ~ $ sudo dazzle create Rasp_Pi_Main_Share
Creating project “Rasp_Pi_Main_Share”…
-> /usr/bin/git init –bare /home/storage/Rasp_Pi_Main_Share
-> /usr/bin/git config –file /home/storage/Rasp_Pi_Main_Share/config receive.denyNonFastForwards true
-> echo “*.jpg -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.JPG -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.jpeg -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.JPEG -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.png -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.PNG -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.tiff -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.TIFF -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.gif -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.GIF -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.psd -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.PSD -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.xcf -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.XCF -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.flac -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.FLAC -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.mp3 -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.MP3 -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.ogg -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.OGG -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.oga -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.OGA -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.avi -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.AVI -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.mov -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.MOV -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.mpg -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.MPG -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.mpeg -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.MPEG -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.mkv -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.MKV -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.ogv -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.OGV -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.ogx -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.OGX -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.webm -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.WEBM -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.zip -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.ZIP -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.gz -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.GZ -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.bz -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.BZ -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.xz -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.XZ -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.bz2 -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.BZ2 -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.rpm -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.RPM -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.deb -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.DEB -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.tgz -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.TGZ -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.rar -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.RAR -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.ace -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.ACE -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.7z -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.7Z -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.pak -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.PAK -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.msi -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.MSI -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.iso -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.ISO -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.dmg -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes -> echo “*.DMG -delta” >> /home/storage/Rasp_Pi_Main_Share/info/attributes
-> chown –recursive storage:storage /home/storage
-> chmod –recursive o-rwx /home/storage/Rasp_Pi_Main_Share
Project “Rasp_Pi_Main_Share” was successfully created.
To link up a SparkleShare client, enter the following
details into the “Add Hosted Project…” dialog:
Address: ssh://storage@192.168.1.17:22
Remote Path: /home/storage/Rasp_Pi_Main_Share
To link up (more) computers, use the “dazzle link” command.
Save this info somewhere good!
Address: ssh://storage@192.168.1.17:22
Remote Path: /home/storage/Rasp_Pi_Main_Share
You will need it to hook up clients to the server.
Dazzle Link, Linking clients to server
All that the dazzle link command does is add the key to the authorized_keys in the .ssh folder of the /home/storage directory.
erick@raspberrypi /home/storage $ sudo dazzle link
Paste your Client ID (found in the status icon menu) below and press <ENTER>.
Client ID: ssh-rsa AAAAB3Nza………………………….Plex-790
The client with this ID can now access projects.
Repeat this step to give access to more clients.
Optional:Moving this repository to the USB Stick
To get the storage folder off of the SD card and onto the external media, i.e. USB stick in my case…
Move the files…
sudo rsync -rPz /home/storage/Rasp_Pi_Main_Share/ /media/sda/Rasp_Pi_Main_Share/
Mount with bind. Using a symlink might not work here as it might not get followed. I haven’t tried it.
sudo mount --bind /media/sda/Rasp_Pi_Main_Share/ /home/storage/Rasp_Pi_Main_Share/
..this is optional, but with the limited SD card storage on the Raspberry Pi, it makes it much more useful for a shared storage device.
To Install on Client: Linux
To install Sparkleshare on the client Linux computer, Ubuntu/Mint based..
sudo apt-get install sparkleshare
Are Transformers Here to Stay for a While?
A Transformer Theory
Part of my pet theory on transformers is that they might be a thing that will stick around for a while. I know ML changes fast but, I have an example from history that serves to illustrate a design that has staying power. Radio started out with many schemes to detect signals progressing along the following lines, coherers, galena crystals, diodes, tuned radio frequency, regeneration, super regeneration, all forms of direct conversion ( signal gets demodulated right from the incoming frequency) and finally superheterodyne which takes the incoming frequency and mixes it down or up to an intermediate frequency before detecting/de modulating the signal. The first methods each lasted but a few years and all under performed and had flaws. Once the superheterodyne was invested there were just a few different flavors of the same idea, so called single, double and triple conversions, really just more layers to reject out of band signals more efficiently. The superheterodyne, like the transformer has staying power. After 100 years it is the ‘way’ to handle a radio signal. So that tech is in your Wifi, Phone, TV, Stereo, Modem, 2 way radios, GPS and so on and is unlikely to be replaced by anything but a tech that just maps it onto digital tech. So my theory is that the transformer is in the same ballpark, it is the superheterodyne of ML or at least close, a step more or two away, that’s all. The types of radio reception using earlier methods each had their day in the sun, just as RNNs, LSTMs, GRUs were each the cutting edge ML go to architecture for a while.
Using AWK to pull data from a field within a text file
Intelligence is the power which gives us the ability to distinguish when we are not conscious.
# awk -F” ” ‘{print $11}’ pressure-delta.txt
tail -1 $PLOTTABLE_DIR/$PRESSURE_DELTA_TAIL_FILE > $PLOTTABLE_DIR/pressure-delta-tail-one-line.txt
# Use awk with -F” “, which uses space as field seperator.
# pressure delta in inHg is in the 11th field.
# Multiply by 1000 because bash does not do floating point math natively and we want to compare so use milli-inHg to do the bash math.
# Operate on the file $PLOTTABLE_DIR/pressure-delta-tail-one-line.txt
pressure_delta=`awk -F” ” ‘{print $11*1000}’ $PLOTTABLE_DIR/pressure-delta-tail-one-line.txt`
TMDNE: This Mathematician Does Not Exist
It’s like the math is the seeds or DNA and the code is the fertile ground and the sun shines, or in our case electricity flows to CPUs and GPUs.
Ever pondered the possibilities when algorithms dabble in the divine art of mathematics? Prepare yourselves for TMDNE – where Stable Diffusion meets the blackboard of the mind! 🧮🤯
Inspired by the brilliance of projects like “This Waifu Does Not Exist” (TWDNE) by Gwern Branwen, TMDNE takes a quantum leap into the realm of imaginary mathematicians. These aren’t your conventional number crunchers; they’re the brainchildren of algorithms, immersed in the ethereal dance of imaginary theorems and proofs. 🎨➗
Much like TWDNE introduced us to AI-generated characters that captured our otaku hearts, TMDNE invites you to witness the magic of machine learning as it conjures up mathematical maestros who never attended a single conference. 🤓📚
Get ready for a symphony of computational creativity, where algorithms showcase their virtuosity in crafting mathematicians who not only ponder the mysteries of prime numbers but might just solve the Riemann Hypothesis over a cup of virtual coffee. ☕📏
Embark on this intellectual odyssey where Stable Diffusion meets the abstract canvas of mathematical imagination, proving that in the world of artificial intelligence, even mathematicians can be a product of algorithmic brilliance! 🔢🤖
Grid Search in Stable Diffusion
The images in the following video were created by doing a grid search with Stable Diffusion, with slight variations of words in the prompt and scanning the guidance scale. The seed value remained constant. The images were also audited manually for obvious artifacts and flaws.
Finally a slideshow was created by using the following ffmpeg command:
ffmpeg -framerate 1/3 -pattern_type glob -i "image\([0-9]*\).png" -c:v libx264 -r 30 -pix_fmt yuv420p slideshow.mp4
This results in a slide show with a change every three seconds on the images.
The Idea
Math -> AI -> Imaginary Mathematicians
OK, AI is math really, a bunch of chain rule linkage and matrix multiplies for the most part and to make it do something useful the math gets worked into code as the substrate. It’s like the math is the seeds or DNA and the code is the fertile ground and the sun shines, or in our case electricity flows to CPUs and GPUs. In 2024, it’s gotten really good. imagine generation that is. I did some AI image modification years ago but, Stable Diffusion has gone way far, fast. So wouldn’t it be interesting and humorous to generate images of math being worked on, by a mathematician generated by AI. As can be seen from the images, this points out a weakness too. People, it kind of nails it, backgrounds too. Text and numbers, not so much. I’ll be interested in seeing it nail this too, only a matter of time.
Grid Search & Ground Rules
As an AI researcher, I am always interested in pushing the boundaries and grid search is something that is a normal event for me. I’ve played with Stable Diffusion for quite a while and I was interested in seeing what a semi-serious grid search would reveal now that it is seriously capable of generating graphics. I decided to stick with images that are not ‘fantasy’ or too enhanced to keep them real looking so that they are easier to judge.Keeping the ‘look’ in the same zone also helped keep some degree of uniformity but, Stable Diffusion varies the image within a range that seems to work well.
Yet another sidequest
This started as a bit of a sidequest as I am working on a project called TinyMath that is all about identifying how small a GPT model can get and get a passing grade for math. This way it is possible to score objectively and see how model size and loss stack up against the ground truth of taking an ‘exam’. I just happened to create an image using Stable Diffusion of Misato Katsuragi from Neon Genesis Evangelion at a blackboard working out some math when I was pondering this, kind of a nod to TWDNE on a document I wrote on makemore. That combined with an image that I saw in 2020 when my partner Renee was searching for a new hair style, was another inspiration. The image below only shows a partial view of the woman and I often wondered if the other views were out there somewhere, or could AI come close to generating the other views.
The Two Images that got TMDNE going
Notes & References
TWDNE
Prompts, Seed and Range for Guidance
Styles Tried:
sai-photograpic
None
cinematic-default
Seed: 52794693
Positive Prompts:
young woman with short red hair in graduated bob style teaching math at a blackboard
young woman with short red hair in posh bob style teaching math at a blackboard
young woman with short red hair in victoria beckham posh bob style teaching math at a blackboard
young woman with short red hair stacked with very short stacked layers in the back teaching math at a blackboard
young woman with short red hair stacked with very short stacked layers in the back teaching math at a blackboard
Negative Prompt:
bangs curls
…. bangs were sometimes screwed up and curls caused artifacts, so these were filtered on.
Guidance range: 5-18.5 ( found to be best)
Additionally, the results were judged by looking at the images for excess artifacts or distortions such as missing fingers, awkward postures and anything else unrealistic beyond the fact that Stable Diffusion is still limited in terms of representing numbers and letters.
Buddigar: Stable Confusion
Humor is the weapon of self-control.
While playing around with Stable Diffusion, I realized that I must have misspelled “Budgerigar” and was surprised to see the monstrous images that it generated. Perhaps I accidentally typed “Buddigar” or some other variation, resulting in the strange images below. Some of them resemble monsters, while others appear to be stores from a distant land outside of the USA.
These images fall into the uncanny valley of creepiness. For instance, I heard on a Lex Fridman podcast that image generators sometimes struggle with creating realistic facial expressions. It’s fascinating to observe what Stable Diffusion produces when prompted to generate an image of a person with a surprised expression. Although the results can be unsettling and bizarre, they’re also quite amusing, like this one….
Buddigars
The first one is my favorite in terms of shock and awe.
Buddigar tale by ChatGPT (mostly, just with a bit of prompting and edits)
There is a mischievous creature named Buddigar. It’s small and furry, with sharp claws and bright, beady eyes that seemed to sparkle with mischief. Buddigar loves nothing more than causing trouble, and it has a talent for doing so in the most unexpected ways.
If you can’t find your keys, Buddigar is probably to blame. It has a habit of sneaking into people’s pockets and snatching whatever shiny object catches its eye. It wasn’t that Buddigar has any use for these trinkets – it simply enjoys hoarding them, like a dragon with its treasure.
And if your computer is running slow, you could bet that Buddigar had something to do with it. It has a knack for hiding files, moving icons, and generally wreaking havoc on any device it comes across. Even the most tech-savvy of users are no match for Buddigar’s cunning ways.
But Buddigar’s mischief isn’t limited to material possessions. It has a strange talent for causing physical ailments, too. If you have a pain in your hip, for instance, you could be sure that Buddigar has something to do with it. It’s not that Buddigar means to hurt anyone – it simply enjoys the chaos that its actions cause.
The funny thing is, Buddigar doesn’t try to hide its misdeeds. When caught in the act, it simply grunts and declares its mischievous intent proudly. “Buddigar!” it exclaims, with a mischievous twinkle in its eye. “Buddigar take keys! Buddigar slow computer! Buddigar make hip hurt!” And then it scampers away, leaving behind a trail of chaos and confusion.
Despite its mischievous nature, however, Buddigar is impossible to hate. There is just something endearing about its playful antics, and the way it seemed to revel in the chaos it caused. Even Gollum, the famously twisted and corrupted creature from Lord of the Rings, would have adored Buddigar’s mischievous ways. It is so ugly it’s almost gone full circle to cute in an uncanny way.
And so, Buddigar continues to roam the land, causing trouble wherever it goes. Some curse its name, while others simply laugh and shake their heads in amusement. But love it or hate it, there was no denying that Buddigar is one of a kind – a little creature with a talent for mischief that it’s unmatched by any other.
More Buddigars…
MEH: Money Escape Hatch
Money is power – your money, the power to spend.
An escape hatch from the Monetary System
Recently I was the victim of several types of fraud through the legacy monetary system, banking counter-party risk basically.
- Debit card fraud: A transaction that I did not make showed up on my account. Required getting a new card and the bank did take care of the fraudulent charges.
- A fraud about debit card fraud: A fraudster called me, preceded by a text that told me of a suspicious card transaction, spoofing the banks own phone number no less. They tried to get me to give up my credentials over the phone and then pretended there were several checks written against my checking account. They tried to run me through the process of setting up Zelle and having me send money to a weird email address. I just played along and acted like I didn’t understand how to use the Internet until the call dead ended.
- Law firm fraud: A law firm, a lawsuit mill, files a fraudulent suit in the wrong venue using a fake address, so I get sued without my knowledge, resulting in a default judgment. I caught this in time before they were able to execute the judgment, or else they could have performed a money grab out of the bank account, without my knowledge. I informed the court of the fraud, the lawfirm, the Consumer Finance Protection Bureau CFPB and all other parties that had a hand in this. This was a shocker as I didn’t even realize that his type of fraud existed.
Thoughts
After all this I was thinking about what could be done to lock up money, away from the reach of fraudsters as there is counterparty risk to a lot of things money related, especially in the legacy banking world. Some banks don’t even offer good security, like 2FA via a security key only and NOT 2FA texting to a mobile number that can be spoofed or email, equally weak.
Self custody of Bitcoin seems like the most solid way in light of the weaknesses in the monetary system. Why Bitcoin? Other tokens have less utility, why do we need 1000s of them, and some might be counted as securities someday and some have more inflation as tokens are minted at the whim of the founders or core team and so on.
But, there are caveats:
- You need to know what you are doing or else you can blow you cover and compromise your keys and therefore coins and also be too ‘public’ with transactions.
- Corollary: Not your keys, not your coins!
- Don’t trust, verify
- Bitcoin is pseudo anonymous. You are sitting behind a public key and if you use a limited set of keys repeatedly it is possible to trace, via history on the blockchain, who you are and how many sats you have stacked. This is particularly true of an address used, lets say as a donation or payment address which is static. Ideally, you want dynamic addresses. Revealing too much information like this could make you a magnet for fraudsters that decide it is worth trying to, let’s say hack your warm wallets by injecting malicious code on your phone or PC, via an email with a cat video. Or spoof your phone number to bypass 2FA and so on. Heck, they might even try to track down where you live via social media and park in front of your house and break into the WiFi by stepping in on the four way handshake used to secure it, then they are on your home network and have access to every device directly!
- Always visually verify addresses you send to. Just in case some copy/paste virus gets in the middle and changes the address.
Suggestions for caveats:
- Your keys = Your Coins: Store the bulk of your stack on a cold wallet or paper wallet, in a safe place. Seed phrases as well. Keep only a small amount on a hot wallet, like an app or web wallet, exchange,etc.
- Stay Private: Use methods to conceal the path of transactions by breaking the address linkage, effectively creating dynamic addresses. Porting through privacy coins comes to mind here and for a BTC only solution, Wasabi wallet, linked to a cold wallet such as Coldcard, BTC only wallet that can be air gapped.
- Equipment SEC: Air gapped wallet allows you to use something like an SD card to move a partially signed transaction to the cold wallet to sign and back to a hot wallet that is watch only, so it can only take in but, not spend BTC. You can only spend by creating a partially signed transaction and moving it by hand using SD card to cold wallet, signing and moving it back via SD card. Sounds complicated but, is secure. No compromise and follows the verify and don’t trust the hot wallet sitting on the phone or PC connected 24/7 to the Internet, making it only medium secure. Keep phones, PCs and Wifi secure, good passwords/biometrics and keep thinking through the holes lurking in security.
- Dumb Human Things: Verify addresses when sending, use excellent passwords and PINs, read the instructions on equipment, like wallets, seedphrase security. Don’t get conned, don’t brag, don’t accidentally dox yourself. People are always inventing new ways to screw things up, so even with the best technology and encryption, mistakes happen, look on the Internet for more examples.
Idea on using Wasabi Wallet to enhance privacy along with cold storage
You can use Wasabi Wallet to enhance the privacy of your coins before transferring them to a cold wallet. Here’s a step-by-step process:
- Transfer Funds to Wasabi Wallet:
- Transfer your funds from the exchange or other warm wallets to your Wasabi Wallet. This can be done by sending the funds to an address generated by your Wasabi Wallet.
- Initiate CoinJoin Transaction in Wasabi:
- After receiving the funds in your Wasabi Wallet, initiate a CoinJoin transaction within Wasabi. This process will combine your transaction with those of other users, significantly enhancing privacy.
- Wait for Confirmation:
- After initiating the CoinJoin, wait for the transaction to be confirmed on the Bitcoin network. This may take some time, as it depends on network congestion and the number of confirmations required.
- Send Funds to Cold Wallet:
- Once the CoinJoin transaction is confirmed, you can safely send the funds from your Wasabi Wallet to your cold wallet. This step ensures that the funds you send to the cold wallet have undergone the privacy-enhancing CoinJoin process.
- Consider Multiple Rounds of CoinJoin:
- For additional privacy, you may consider repeating the CoinJoin process with the funds in your Wasabi Wallet before sending them to the cold wallet. This can be done by initiating another CoinJoin transaction within Wasabi.
Remember, while this process can significantly enhance privacy, it doesn’t provide absolute anonymity. Also, the privacy features depend on the number of participants in the CoinJoin process, so it’s beneficial if more users are actively participating in CoinJoin transactions.
Always stay informed about the latest features and best practices in using Wasabi Wallet, as the specifics of the wallet’s functionality may evolve over time. Additionally, consider the transaction fees and potential delays associated with the CoinJoin process and Bitcoin network confirmations.
Alternative Idea Using Monero Swap
Just an idea that I was thinking of, not sure if it would be as good as the solution above using Coinjoin. But, the idea is to take some kind of coin BTC, USDC, whatever that you on ramped from USD via an exchange. Use some kind of swap, like SimpleSwap or the swap feature of a wallet such as Exodus and swap the non private coins from an exchange into XMR on a wallet, then swap to something like BTC on the cold wallet. When spending, run backwards, swap to XMR, then to the crypto of your choice and spend
When you convert BTC to XMR, the transaction history of the BTC is effectively broken, as the privacy features of Monero make it difficult to trace the source of funds. However, when you swap back to BTC, the privacy features of Monero may not be as effective, and your transactions could potentially be traced from that point onward.
It’s essential to note that while Monero provides strong privacy features, the overall privacy of any cryptocurrency transaction depends on various factors, including the platforms and services used for the swaps. Additionally, the regulatory environment surrounding cryptocurrency exchanges and transactions may impact the level of privacy you can achieve.