This is the home of Theta Nil’s Guides to the Great Journey. Here we discuss things which I found interesting in my life, at least in the last 15 years…
breakdown
programming languages
computer tricks
projects
art
cycling
pictures
music
opinions
show and tell
tricks
flowchart LR
FREEDOM["`**Freedom**
_Jenkins_`"]
MIDDLEWAY["`Middle Way
_ADO_`"]
FREESTUFF["`**Free Stuff**
_GitHub_`"]
FREEDOM <--> MIDDLEWAY <--> FREESTUFF
mindmap
root((map))
ADO
reason: lack of autoscaler in GH
pipelines
terraform
create updated VM images
replace image in Scale Set
lin build
win build
CloudSpace
Scale Sets
Windows
Linux
GitHub
sources
documentation
Generalized
Images - For Dev & CI & Test
Sources - For Devs
CI Tool - DevOps
CloudVMs - For Build
Artifacts - Delivery
I am looking for a recipe to reproduce the waffles from the street-food vans and
busses in Brussel. So far I have found American recipes which are close, but
recommend to add INSANE amounts of pearl sugar. My first attempt with this type
of waffle ruined my cheap waffle iron. After which, I purchased a high quality
Belgian style iron which cleans up after the sugar OK, but still requires quite
a bit of effort. In any case, this “pearl sugar” recommended in the American
recipes seems to be the wrong stuff. It’s close, but it doesn’t get soft and
gooey inside like the Brussel street vendor style.
Initial Attempts: Bountiful Kitchen Liege Waffles
This recipe came on the recommendation of some new friends we made in Bali. It
was quite good the first two times, when I didn’t have the right “pearl sugar”
and so once I subbed German “Südzucker Brauner Kandis”. Since I was unsure I barely added
any, and I trashed my waffle iron anyway. Then I got a new professional iron and
tried again with no extra special sugar and they were GREAT. Tried one more time
to follow the recipe, say the amount of sugar called for, halved it, and they
were still disgustingly sweet. Anyway, so far the best recipe, just leave out
the pearls. Still searching…
These were super light and eggy, and also not anything like Liege waffles. The
“dough” is definitely more in the order of traditional American style waffle
batter. The yeasty flavor is still quite good. Maybe there is a bit too much
salt, but they are still enjoyable. The baking soda is unnecessary is probably
why it’s too salty. I’m not trying any more baking soda recipes because that is
clearly not part of the real Liege recipe.
Up Next: Baker Betty
These look totally correct, the way the sugar is melted and oozing and has the
look of honey. Maybe my pearl sugar issue is just a matter of finding the right
temp? In the big shops in Brussel they load the dough into cupcake pans and put
them in a warming oven to rise. One cupcake of raw risen dough equals one
waffle. I have ordered some large cupcake pans and will try this when they
arrive.
i recently started playing with golang.
Go is nice because it removes a lot of the gotchas in parallel programming but not all.
Dead lock is still possible and so you are still responsible for all which that entails.
Priority inversion is not the same as dead lock, but it can be a cause of it.
The game NGU IDLE sets a trap for the player in a part of the game called Blood Magic.
If you do not solve the problem of priority inversion here, well you will not make the Number Go Up.
Generating EXP is a goal in the game. With EXP you can control the dials of energy generation (the base resource of the game).
We want to maximize how much EXP we get over time (EXP/t) so that we can manipulate this dial (increase energy throughput).
In Blood Magic, we have multiple methods by which to contribute our blood and magic into a multiplier for our NUMBER which determines how much EXP/t we can get in our next life.
poke with tack
papercuts
hickey
…
Once you unlock Blood Magic, you will likely be at the point where you have enough magic to consume all of your money.
Here, papercuts yield 5 Blood Per Second (BPS) and consumes all my money. The hickey yields 20 BPS, but will never trigger because the papercuts trigger earlier and consume all the gold.
If we do not remove our energy from the lower-level faster running task, we will never progress.
Looking at this as in compute terms, if we have tasks which are many and fast they can consume our entire compute resources if we don’t limit them. If these small tasks also depend on the completion of longer running task which never get the opportunity to run then we can end up in deadlock. Go recognizes when no threads are making progress, but in this case, the smaller tasks ARE making progress so it looks like work is being done, even though no work is ever being completed.
Thinking in terms of parallel execution requires a lot of attention. This theme comes up often in NGU. In some cases, you need to put your energy into the biggest task which will complete within this rebirth cycle, however long you decide that should be. If your rebirth cycle is 30 mins, obviously you don’t put energy in something which will never complete. The task which will complete at minute 29 is often worth the wait. In compute terms, be sure to keep your fat threads running.
Before dealing with this issue, i was slowing down and rebirthing with ~ 4 more bosses most of the time. Now I run up the multiplier provided by Blood Magic when the rebirth time gets long enough to do so.
Ideas
Some things I would like to create but never have the time.
The 10k PC is now a meme, but once upon a time I considered to build one each
year and list the parts and benchmarks for the year. I would offer to build more
of them and then sell mine at the end of the year when I built next years model.
I use cloud servers now, I don’t need the 10kpc now.
Once I was very interested in starting a non-profit which would drop tree
seedlings from drones by the millions. Looked into fund raising and realized no
one with money cares about the future.
Way back in the very early days of Twitch, right after Justin left, twitch got
popular, and the chat got so annoying and spammy that I couldn’t chat with
anyone any more. I thought I would make a view which blocked all the spam and
just filtered and highlighted the people you wanted to see. I realized twitch
people think spamming emotes is a feature. I just close the chat window now.
When I first got my kids on a
Laufrad I
was so excited about how much better it worked than stupid training wheels that
I decided I was going to ship them from Germany to USA. Learn to ride and
balance with your feet on the ground, the pedaling is easy to add later. It’s
really just SO MUCH better.
Work In Progress: A place where humans are recognized as humans and bots should
not be able to post there. Human Authenticity without CC or Phone number ??
Work In Progress: Video Game Music Engine which enables the composer to create
loops. Loops can be additive, so that they stack for synchronized playback and
the integrated game engine can set the scene intensity level. Loops can
alternatively be transitional for smooth scene transitions, also integrated into
the game engine. Composer tools support generative sequences, and live synced
playback with same scene stackable tracks.
In my 20s I was very into network security, and I set up a scanner for DNS and
SMTP vulnerabilities. Shut down due to abuse potential. I would have had to make
it pay for use. Now we have TXT records and I could authenticate that the scan
user actually controlled the domain scanned. That was not an option, at least
that I was aware of, at the time.
I have a friend who was totally hot in her pants for a beautiful hippy named
Willy. Willy has since passed due to his vices, but he shall be remembered here.
God Speed William.
Before MingW and before Cygwin, I had the idea to make some sort of bearable
environment work on Windows. I decided I do not want to help Windows. I am
thinking still of something to help BSD with linux stuff, but then, I also don’t
want to help GPL’d tools. (MIT BSD OR GTFO)
Work In Progress: I really like Knuth’s Literate
Programming. The design
proposed is really quite outdated in my opinion, but the concept is compelling
in any time. I propose a Markdown with an extension to code fences which
supports Jupyter Notebook style executable documents given the right runtime,
without the stupid AF json garbage wrapper. Firstly tho, it should support
generating a source tree from the documentation which is idiomatic to the
language written (or just explicit in the code fence args)
/// code fence with triple ticks but that I can't show here
js {module:es, path:./src/blah/module/main.js}
/// content of fenced code
exportdefaultmoduleblah
I used to naively believe that you could fix the two party system in america if
people were just more aware that they had more options. I learned later that the
entire system is rigged to keep 2 parties in power always. Well intentioned
ignorance…
Dan Heissler and I brewed beer in college and I wanted to pick up a brand in the
unlikely event that we meet again and brewed another batch of Blackbeard’s
BlackStrap Mollasses Porter. It was indeed a wicked grog.
Work In Progress: I wanted to make an Obsidian before Obsidian existed. I still
want to make it in a way which just works with a github repo, and vim or a
phone.
(Roughly cut carrots and potatoes, about 4 each, steam till almost cooked, then remove to a bowl to free up the cooking pot)
4 chicken pieces, breast halves or thighs (3 breast halves, each cut into 4 pieces)
Salt
Freshly ground black pepper
2 tablespoons butter
1 tablespoon peanut oil (olive oil)
2 medium onions, roughly chopped
3 large cloves of garlic, minced
2 tablespoons curry powder, from a recently opened jar
1/2 teaspoon ground cinnamon (omitted for Conni)
4 medium tomatoes, seeded and chopped (I used 1 small can of tomatoes, and 2 chopped fresh tomatoes, seeds and all)
1 cup chicken stock (increased to 400 ml jar)
1/2 cup heavy cream (increased to 200g- one small carton)
Juice of 1/2 lemon (I used the whole lemon’s juice)
Rub salt and pepper into chicken. Heat butter and oil in a shallow pan, add the chicken and cook until the skin is golden. Turn and add the onions and garlic and cook over medium heat until soft, about 7 to 8 minutes. Stir every once in a while.
Stir in the curry powder and cinnamon. Cook for 4 minutes, until the spices are cooked. Add tomatoes, vegetables and stock, then simmer until the chicken is tender and cooked right through, about 15 minutes.
Stir in the cream and taste the sauce, adjusting salt and pepper, if needed. Add the lemon juice. Simmer for 1 minute, then serve hot with basmati rice.
Chapter 20
Dekker
This is a new chapter.
Intro to Dekker
Phone Basics
Some thing from gitjournal. Should be nice.
Subsections of Phone Basics
First Content
some content
which is basic
intro to basic
step 0.1
this is first most basic step we have
graph LR;
If --> Then
Then --> Else
Copilot vs Gippity
I asked copilot to generate some text about ChatGPT.
Once upon a time, there was a chatbot named GPT. It was so smart, it could
answer almost any question you threw at it. But sometimes, it could be a
little… well, dumb. Like the time it suggested using a hammer to fix a
software bug. Or when it thought that the best way to speed up a computer was to
put it on a treadmill. Yes, GPT had its moments. But despite its occasional
lapses in logic, we loved it all the same. After all, who else could make us
laugh with their charmingly silly suggestions?
This text is meant to be humorous and is not intended to offend or belittle
the capabilities of GPT.
My favorite part is how copilot talks about gippity in the past tense:
Balatro
Balatro is a great game which turns Poker into a rogue like deck builder.
Sites
Subsections of Sites
Dekker Revision 2
Design for a data transformation and exploration tool.
Modules
resource manager (initial querys to list dbs / tables available)
:memory: table initialize and loaded
route for resource list
function for query
simple table viewer
sqlite3 manager
form to add resources
template processor for SQL
collector (file manager)
collector (mapped csv)
table editor (airtable ish)
graphing d3
Node Editor for Transforms
DAG Schedular
collector (clang AST)
Documentation Generator
Collector (UI Map)
Rev 2
UI Deps:
tape-dom
d3
MatPlotLib Pt.1
just wanted to try out something artistic in matplotlib. some more play time with numpy is always nice. here we go…
perlin noise with matplotlib color arrays
some voronoi_points in a numpy array
a bar chart on a polar axis.
I stole the code from some example, but I never thought about wrapping a bar chart x-axis around a point like that. Interesting result…
problem is the guy made a bad CFG which is really easy to do. people could use it though so
how bad was it really?
anyway he changed the grammer and bailed, so the old code and docs are all about a language
that isn’t supported any more, and the new language appears to be dead on arrival.
still makes pretty pictures though. the concept is solid.