Skip to content

photography

August 29 2023

You go Ro coco



Stuck in a standoff - Redis on one side, Supabase on the other. Honestly? Not thrilled to tango with either. Conjuring up user-friendly solutions that can expand at will – it's a mountain I'd rather not climb. I'll stay in my tent at base camp, thank you very much. And then there's authentication - oof.



New Discord workflow coming along!

Typeform must be HIGH AS FUCK if they think I'm paying $30/month for a simple form
Formspree is literally 5 times more submissions for 3x less lol

SAMUEL F.B. MORSE was born in Charlestown, Massachusetts, in 1791, the year of Chappe’s first demonstration of an optical telegraph. He was a johnny-come-lately to the field of electric telegraphy. Had he started building an electric telegraph a little earlier, he might have got home in time for his wife’s funeral. Morse’s wife, Lucretia, died suddenly at their home in New Haven, Connecticut, on the afternoon of February 7, 1825, while her husband was away. He was starting to make progress in his chosen career as a painter and had gone to Washington to try to break into the lucrative society portrait business. He had just been commissioned to paint a full-length portrait of the marquis de Lafayette, a military hero, and his career finally seemed to be taking off. ‘‘I long to hear from you,’’ he wrote in a letter to his wife on February 10, unaware that she was already dead. Washington was four days’ travel from New Haven, so Morse received the letter from his father telling him of Lucretia’s death on February 11, the day before her funeral. Traveling as fast as he could, he arrived home the following week. His wife was already buried. In the United States in 1825, messages could still only be conveyed as fast as a messenger could carry them.
-- The Victorian Internet: The Remarkable Story of the Telegraph and the Nineteenth Century's On-line Pioneers
(source)
three time zones mean nothing in our era with instant messaging

love the ref to von neumann arch
but don't get too meta either, stay balanced – seasonal, weelky, daily plans work
the natural selection of memes – the niche and hidey holes


August 28 2023

Where do you see yourself in four months?




5 losses IN A ROW before one win

Bangers only from the Readwise review today!



Write a simple test case | DeepEval
If you are interested in running a quick Colab example, you can click here.
pretty straightfwd to use – very akin to traditional unit test assertions
Alert Score | DeepEval
Alert score checks if a generated output is good or bad. It automatically checks for:
this is good! ive manually run libraries like bad-words.js to see if a input is toxic, but being able to assert if an answer is relevant && not toxic is helpful
Factual consistency is measured using natural language inference models based on the output score of the entailment class that compare the ground truth and the context from which the ground truth is done.
"James has 3 apples" and "James has fruit" would be considered an entailment.
"James only owns a car." and "James owns a bike." would be considered a contradiction.

Entailment seems like an abbreviation or rework of p > q from discrete mathematics.


Since ChatGPT's launch just nine months ago, we’ve seen teams adopt it in over 80% of Fortune 500 companies.

Wild. Seems like the null hypothesis won't really be happening lmao...

ChatGPT Enterprise removes all usage caps, and performs up to two times faster. We include 32k context in Enterprise, allowing users to process four times longer inputs or files.

make art from quote button ez clap


if (interaction.isButton()) {
    if (interaction.customId === "button_id") {
		await interaction.deferReply();
      console.log(`Button was clicked by: ${interaction.user.username}`);
      // Here you can call your function
      const { prompt, imageUrl } = await main(interaction.message.content);

	  if (interaction.replied || interaction.deferred) {
		await interaction.followUp(`Art Prompt (save the image it disappears in 24 hours!): ${prompt} \n Image: [(url)](${imageUrl})`);
	  } else {
		await interaction.reply(`Art Prompt (save the image it disappears in 24 hours!): ${prompt} \n Image: [(url)](${imageUrl})`);
	  }
	  // set interaction command name to aart
	  interaction.commandName = "aart";
	  await invocationWorkflow(interaction, true);
    }
    return;
  }



great quote abt propositional knowledge (facts) vs experiential knowledge (riding a bike) – in fact both are the same if criticism is able to be applied, you don't need to live something to know something. that is empirical error. (see: theoretical physics)

August 27 2023

Sunday is the reprieve!

The Internet is Empty
How can we travel that which has no physical form?





the host's facial expression lmao
shawty got low low low low

the ol' ivy league resume in a old navy hoodie
the relief of compiled code, the anxiety of the evolving context
forbes 30u30 in a nutshell

August 23 2023

Out-of-towners often mistake Manhattan as the whole of NYC, I feel.

Out-of-towners often mistake Manhattan as the whole of NYC, I feel. Take the time to explore spots like Bay Ridge, or Cortelyou Road.

You'll find calm there, perhaps even a surprising dose of the suburban. The real perk of living in an area like Bay Ridge vs a suburb outside of Corpus Christi? A train line linking you straight to the heart of Union Square or Grand Central in under an hour.






This Goes INSANELY HARD
that bass line UGHHH, this whole video is SO GOOD Some of my favorite frames (literally every still frame could be a desktop wallpaper):




When you see those tier 7 minions in your game, do me a favor, grab Tess. Just trust me on this.



your day is just starting!

Kingdom Hearts Menu Style Portfolio
~~ dearly beloved ~~

STYLEEEE

I am the one who decides.




The gallery feature on Ubud is acting up. Beats me why.


Trying out Spear in Discord. Maybe it's something that could tickle the fancy of vault members, make them feel special. Definitely can picture it being a neat bonus!


Another day done, neatly cut into boxes of time. This time block journal, it's kind of become a friend. Excited to think where I might be in a few months - maybe a master at wrestling time.


GPT helps me to write, and I like that. It’s like the words I jot down aren't my own, they’re not precious. So, when it comes to chopping them up and pruning them, I don't flinch. And, there's something cool about typing in shorthand, or even in low key, lowercase letters. GPT just takes it, and churns out sentences that sound as real as rain splattering on a windowpane.

August 22 2023

New season of Hearthstone! Goodbye, next forty-eight hours.

New season of Hearthstone! Goodbye, next forty-eight hours. I'll be captive to this relentless obsession. Alongside Baldur's Gate 3, of course.




This patch, it sucks from the get-go. Bannana Slammas for life, I suppose.

broken combo
only broken enough for fourth place i suppose

The billboards up in Soho stir something within me. Something McLuhan might've coined, about the package being more valuable more than the item inside. The ads on NYC's billboards, uncountable as they are, most fade from memory like a worn-out jazz record. But their very existence on the giant sized wall, catching the eye of the odd twenty-somethings, mid-pilgrimage to their temple of Equinox, that broadcasts its own message. Sure, I could plaster an ad on some wall in a silent town but that lacks the jazz, the hum and pulse of the viewer's gaze, which makes all the difference in selling the song. Plenty artists wallow unseen, only a handful get to wallow under the spotlight.


Leaders need this one thing more than anything else: good sense. It's the same when it comes to your body, your thoughts, your work life. Be your own arbiter of good judgement.


Photos...they've been the game for me on Instagram lately, kind of like a guilty pleasure I suppose. Don't know why.

It's ludicrous when you think about how I'm using Instagram, disregarding entirely how they mapped out the service. Truly not giving a flying fuckkk. It's like a Finstagram, but taken to the logical conclusion of really only using Instagram for a glorified photo storage service. Picture it: me following no one, completely ignoring ads on the feed the company worked so hard on to build! A strange way to play, right?

But in its way, it's transformative. Instagram morphs into something else, a simple yet miraculous platform for my photos, a sanctuary. It's effortless to stick in my favorite tunes too, lending a voice to every image. And the filters? Oh, the filters. An array of options with a single, easy tap. Quite something, isn't it?



Oddly enough, I found myself the central character in some LLM tutorial – an instructional piece about using these LLMs for cold outreach on LinkedIn, of all things. Seeing this offered some clarity, unsheathing the mystery of the spam deluge that keeps finding me. Particularly from the VCs, the constant hum in the background. Leave me alone dammit!


Random post logic – all credit goes to the original creator: milkythemes!

<script>
    function loadScript(url, callback) {
    const head = document.head;
    const script = document.createElement('script');
    script.type = 'text/javascript';
    script.src = url;
    script.onreadystatechange = callback;
    script.onload = callback;
    head.appendChild(script);
}

function luckyPost() {
    let ghostVersion = typeof version == 'undefined' ? 'v3.0' : version;
    let apiKey =
        typeof key == 'undefined' ?
            console.error('Ghost integration API key is missing. Please refer to documentation at https://milkythemes.com/plugins/lucky-post') : key;

    const pageUrl = `${window.location.protocol}//${window.location.hostname}`;

    const api = new GhostContentAPI({
        url: pageUrl,
        key: apiKey,
        version: ghostVersion
    });

    const postUrl = [];

    const randomBtn = document.getElementsByClassName("btn-random");
    const stringHostUrl = `[href="${pageUrl}/#rdm-post/"]`
    const randomPost = document.querySelector(stringHostUrl);
    
    const randomPostSelector = document.querySelectorAll('[href="https://www.bramadams.dev/rdm-post/"]');

    for (let i = 0; i < randomPostSelector.length; i++) {
        randomPostSelector[i].text = `Loading...`
    }


    api.posts
        .browse({ limit: 250 })
        .then((posts) => {
            posts.forEach((post) => {
                postUrl.push(post.slug)
            });
        })
        .then(() => {
        const randomPostSelector = document.querySelectorAll('[href="https://www.bramadams.dev/rdm-post/"]');
        
        for (let i = 0; i < randomPostSelector.length; i++) {
            randomPostSelector[i].text = `Open Random Post!`
            randomPostSelector[i].href = `${pageUrl}/${randomUrl(postUrl)}`
        }
            
        }).catch(() => {
    		const randomPostSelector = document.querySelectorAll('[href="https://www.bramadams.dev/rdm-post/"]');
        
            for (let i = 0; i < randomPostSelector.length; i++) {
                randomPostSelector[i].text = `OOPS!`
                randomPostSelector[i].href = `https://www.bramadams.dev/`
            }
    	});

    // The randomUrl function is used to grab a random array from the list 
    function randomUrl(postUrl) {
        return postUrl[Math.floor(Math.random() * postUrl.length)];
    }
}

loadScript('https://unpkg.com/@tryghost/content-api@latest/umd/content-api.min.js', luckyPost);
</script>

Tier 7 exists.


SOMEBODY HAS TO DIE

Blue Lock got dark!


big carbon copy!

Hey, the kid's scored a page on Wikipedia!

Atrioc - Wikipedia

Sticky Header for Ubud! (Put this in the code injection header)

<style>
    .c-header{
        position: sticky;
        z-index: 1;
        top: 0;
        background: var(--background-primary);
    }
</style>

June 13 2023

glitch art, chat loops, farms, code poetry

Videos

I built a plugin that works like a DIY code interpreter where an end user decides what rules GPT should check against. GPT is smart enough to facilitate it's own retry logic, which is neat as hell!

Photos

the town of yakima has a really active git profile

https://bram-adams.ghost.io/content/images/2023/06/yakima-git-commits-1.png
yakima git commits 1.png
https://bram-adams.ghost.io/content/images/2023/06/yakima-git-commits-2.png
yakima git commits 2.png

Art

https://bram-adams.ghost.io/content/images/2023/06/glitch-jun-13-1.png
glitch jun 13 1.png
https://bram-adams.ghost.io/content/images/2023/06/glitch-jun-13-2.png
glitch jun 13 2.png
https://bram-adams.ghost.io/content/images/2023/06/glitch-jun-13-3.png
glitch jun 13 3.png

Code

One thing I do a lot is append text to specific headings in a MD file, so this Python script helps with just that!!

append_smart_file
append text to a specified md heading

Playing around with the e2e experience of a Readwise quote > app (or pseudocode). I also just got an iPad so I'm playing with the Freeform app :)

Poetry

Experimenting with Code Poetry more as an art form. Here's a few GPT results from my favorite song rn, Ascencionism:

Python:

ChatGPT
A conversational AI system that listens, learns, and challenges

Visual Basic:

Class Desire ' Well, I know what you want from me
    Property Reflection As Boolean ' You want someone to be your reflection
    Property Deception As Boolean ' Your bitter deception
    Function SetFree() ' Setting you free
        ' So you take what you want and leave
        Return True
    End Function
End Class

Class Mystery ' Who made you like this?
    Property BodyLanguage As String ' Who encrypted your dark gospel in body language?
    Property BlissfulAnguish As Boolean ' Synapses snap back in blissful anguish
End Class

Class PastLife ' Tell me you met me in past lives, past life
    Property InsideEating As Boolean ' Past what might be eating me from the inside, darling
    Property RhythmHalfDeity As Boolean ' Half of a rhythm, half deity
    Property GlitchesOrGaps As String ' Glitches in the code or gaps in a strange dream
End Class

Class Fantasy ' Tell me you guessed my future and it mapped onto your fantasy
    Property Mannequin As Boolean ' Turn me into your mannequin
    Property PuppetQueen As Boolean ' and I'll turn you into my puppet queen
End Class

Class DanceInTheDark ' Won't you come and dance in the dark with me?
    ' Show me what you are, I am desperate to know
    Property PerfectEnemy As Boolean ' Nobody better than the perfect enemy
    Property DigitalDemons As Boolean ' Digital demons make the night feel heavenly
End Class

Class Reality ' Make it real
    ' 'Cause anything's better than the way I feel right now
    Property BlacklitParadise As Boolean ' I can offer you a blacklit paradise
    Property DiamondsInTrees As Boolean ' Diamonds in the trees, pentagrams in the night sky
    Property LipstickChemtrailsRedflagsPinkNails As Boolean ' Lipstick, chemtrails, red flags, pink nails
End Class

Class Eye
    Property Door As Boolean ' With one eye on the door
    Property Rail As Boolean ' other eye on a rail
    Property ScarletTrail As Boolean ' Other, other eye following a scarlet trail
    Property HolyGrail As Boolean ' And the last few drops from the Holy Grail, now
End Class

Class DarkFashion
    ' Rose gold chains, ripped lace, cut glass
    ' Blood stains on the collar, please, just don't ask
    Function Feast() ' Be the first to the feast, let's choke on the past
        ' And take to the broken skies at last
        Return True
    End Function
End Class

Class Ascend ' You cannot watch me ascend
    ' And I know what you want from me
    Property Same As Boolean ' You want the same as me
    Property Redemption As Boolean ' My redemption, eternal ascension
    Function SetFree() ' Setting me free
        ' So I'll take what I want then leave
        Return True
    End Function
End Class

Class Disappear ' You make me wish I could disappear, oh
    ' You make me wish I could disappear
    Function Wish() As Boolean
        Return True
    End Function
End Class

bramadams.dev is a reader-supported published Zettelkasten. Both free and paid subscriptions are available. If you want to support my work, the best way is by taking out a paid subscription.

A Carhartt Hat in a Tibetan Cafe

Yellow hat on yellow ceiling.

https://bram-adams.ghost.io/content/images/2023/02/yellow-hat-yellow-cieling.png
yellow hat yellow cieling.png

Computation

My Naive Foray into Photography

If there’s enough light and you’re not doing portraits, modern phone cameras are work well (View Highlight)

Currently (Dec, 2022) using iPhone 13 to take photos…

If you don’t have a camera, I recommend looking at Fujifilm (View Highlight)

I want a Fujifilm[1] though

I use VSCO to edit on my phone (View Highlight)

My favorite VSCO free preset only edits so far (I'm not paying for this shit lol):

https://www.instagram.com/p/CmHwybEPwVV/
https://www.instagram.com/p/Cl962nsrmW7/
https://www.instagram.com/p/CmCfD2uOAJB/

most good photos (and movies, and games) maintain a very reduced color palette (View Highlight)
I often prefer like a somewhat desaturated look, and even in my more colorful photos I’m usually trying to edit down the number and magnitude of colors. For me this does not mean turning saturation down very much, but instead de-saturating specific colors, like the reds in the first picture here, or the blue in the last picture (View Highlight)
It is very common for me to desaturate one or more colors, or lighten skies considerably (so instead of “VERY BLUE” or “gray” (desaturated) they sky becomes “mostly white” (a little desaturated, luminosity turned up). (View Highlight)
subreddit AccidentalWesAnderson, which I (accidentally) created years ago even though I don’t use reddit (View Highlight)
https://bram-adams.ghost.io/content/images/2023/01/accidentalwesanderson.png
accidentalwesanderson.png
focus on finding interesting subject matter, developing your eye for composition (View Highlight)

I've noticed I'm more attentive on walks lately, I'm always on the lookout for a cool shot

My Photography Inspirations


This video is amazing - the photography, the sound design, the cyberpunk vibe; Inspired! ↩︎