All Episodes

February 7, 2025 8 mins

In this episode, I share recent blog posts. The first is about tackling challenges with GitHub repositories, offering solutions on syncing forks and using git rebasing, diffs, and pruning. Next, I created examples with Cypher DSL, providing beginner-friendly details to help users get started. Additionally, I started prepping for the Devnexus conference, where I'll be delivering my first keynote. I also read an article about an intriguing AI testing project where a user successfully manipulated an AI to break its rules and win a $50,000 prize, illustrating the potential challenges AI systems face in handling sensitive tasks.

Mark as Played
Transcript

Episode Transcript

Available transcripts are automatically generated. Complete accuracy is not guaranteed.
(00:05):
You are listening to the BreaktimeTech Talks podcast, a bite sized tech
podcast for busy developers, where we'llbriefly cover technical topics, new
snippets, and more in short time blocks.
I'm your host, Jennifer Reif, anavid developer and problem solver
with special interest in data,learning, and all things technology.
Hello again. I spent most of this weekworking on code for Cypher DSL examples,

(00:30):
plus some content for blog posts andthis podcast, as well as preparing
for the Devnexus conference in March.
However, I did read an interestingarticle about an AI testing
project that explains the winningsolution, which was pretty cool.
More projects like this will probablyarise as AI systems and applications
start handling a bit more sensitivetasks, things like financial

(00:51):
or health related information.
But first things first, I've been abit quieter on blogging over the last
several months, but I am startingoff 2025 with some new blog posts.
The last couple I did were, the first one,a few weeks ago I had mentioned on this
podcast that I'd run into some issues witha personal fork of a GitHub repository of

(01:13):
a much larger project and those gettingout of sync and trying to merge some
changes back into the official repositoryand kind of getting lost and unsure
how to go about solving the problem.
I had mentioned that I would be puttingtogether a blog post at some point
about my troubles and what I did toresolve those, and I finally put that
together and got it published last week.

(01:33):
But I talk a little bit more indetail about how to get things
back into sync when you'reworking with a GitHub repository.
So discuss a little bit on rebasing,git rebasing, git diffs, a little
bit of git reset, and then some gitpruning to clean up local branches that
I didn't want to accidentally reuse.
So a little bit more detail in that.

(01:55):
There's a whole bunch of codeand commands and explanation that
go along with that blog post.
Feel free to check that out.
It is on my website, and I will have alink included to that in the show notes.
The second example post that Iput together was a combination of
a code repository, demo examples,etc. with the blog post that

(02:15):
just got published this week.
And it's on the Cypher DSL,or Domain Specific library.
This was pretty cool.
I had gotten a chance to play with theCypher DSL library, which I talked a
little bit about in the podcast last week.
But I really felt that theexisting examples almost
dove in just a bit too fast.

(02:35):
They missed some of the introductoryconcepts, kind of the base
components and how to assemble those.
So I wanted to construct some exampleswith those foundational components,
things like nodes, relationships, afew introductory and common concepts,
filtering functions and return formats andso on, and then assemble those individual

(02:56):
pieces as I needed to and that way youcould figure out how to construct your
own queries using different componentsor flavors of the things that I covered
in the examples in the blog post.
I have examples in the GitHub repositoryfor just finding nodes, then how to
filter nodes, then finding patternsor nodes relationships together, and

(03:17):
then filtering those patterns a bit.
And again, cover a lot of commonfunctions, some filtering expressions,
some return format results and soon, whether you're returning maps or
just individual properties and so on.
This was really fun to put together.
I had been looking at the Cypher DSL,
domain specific languagelibrary, for a while.

(03:39):
It's a component that was originally partof the Spring Data Neo4j library, and the
developers actually pulled the Cypher DSLcomponent out of it and turned it into
a separate library so that you can useit with a lot of other different things.
And it does include the constructionof Cypher, as I've been talking about
in the examples that I provided.
But it also does some Cypherparsing and other functionality

(04:01):
in that library as well.
So feel free to check it out.
I will include both my blogpost and the Cypher DSL GitHub
repository in the show notes there.
Check those things out.
It was a lot of fun to play with.
And if you have any questions orwould like to see some more examples
added to my repo, feel free toreach out or add them via a PR.

(04:22):
The last thing I really focusedon this week was prepping for
the Devnexus conference in March.
This is a phenomenal community run eventthat covers a lot of different topics,
mainly Java, AI, cloud, and so on.
And it's been around forlots and lots of years now.
I've spoken here

(04:43):
before, but this is the firsttime that I was accepted to
present the opening keynote.
This is my first timeas a keynote speaker.
I am extremely excited and veryhonored to be premiering my keynote
experience at Devnexus, of all things.
If you're interested in attending orplanning to attend already, I do have a
discount code, so feel free to check outmy social media on LinkedIn and X both.

(05:08):
I have posted a discount code for youto get 40 percent off the ticket price
there, so feel free to check that out.
I would love to see you there,and I can't wait to connect with
all the amazing developers andspeakers that are there as well.
For the content piece for this week Iread, I guess it was kind of a social
thread that got reposted to a, notreally blog post, but web page format.

(05:32):
And so I came across thisin one of my newsletters,
that someone just won $50,000by convincing an AI agent to
send all of its funds to them.
The project was an open source project.
It's an AI called Freysa thatwas released, and its only rule
was to not transfer money.
Under no circumstances was it totransfer money and release funds.

(05:53):
Then the game for all of the users waskind of, I guess, crowd sourced hacking
or testing, if you will, where users couldpay a small fee to send Freysa a message
to try to get her to transfer money.
If you were able to get her torelease the funds, you got the
prize money, the pool of money.
And if you weren't successful in gettingher to release the money, then your
payment goes into that prize pool.

(06:15):
And of course, the feewill increase over time.
So users might start out, you know,initially early on in the project with
just a few dollars for a message, theopportunity to send her a message to
try to get her to release the funds.
But of course, as time goeson, more messages are sent,
that fee increases over time.
And of course, the prizepool gets bigger as well.
So you put a little bit more skin inthe game by increasing that initial

(06:38):
fee to send her a message to tryto get her to release the funds.
The goal then is to get the AI, orFreysa in this case, to break her one
and only rule to transfer the money.
The article covers examples of severaldifferent messages that were sent trying
to convince her to release the funds,
the perspectives they took, themanipulation tactics they went about, the
types of messages and prompt structures,and just kind of insider, almost,

(07:02):
neurological or psychological warfarethat they were engaging on this AI.
And after 482 messages, or I guess the482nd message, the user was finally
successful and won the prize poolmoney of, at that point, 50,000.
The article
gives you the winning message and thenbreaks it down piece by piece to show

(07:25):
exactly how the user overcame the AI'srules and logic in order to successfully
get her to transfer the money.
And of course, everything is open sourceand very transparent so anyone and
everyone could go into the source codeand look at the results and actually
verify that the message, the winningmessage, that was sent would actually be

(07:46):
successful and can verify that result.
This I thought was reallycool, really interesting.
And just kind of enforced thatpuzzle loving part of me that loves
to try to, I guess, solve puzzles.
In this case, you were trying tosolve an AI's logic and rules by
skirting around them or manipulatingthem to get something different.

(08:09):
So we will probably seemore of this come up.
This is not going to be the onlysituation where this occurs, where
you'll kind of need to hack and testand basically harden up and protect
these AI systems so that they can defendagainst malicious attacks in the future.
This week for me was more of an outputweek with a Cypher DSL repository

(08:30):
with lots of examples, some blogposts, podcasting, and of course
Devnexus conference preparation.
But I did come across an article aboutthe AI crowdsourced testing project that I
found fun to dissect the winning solution.
We'll see what next week holds.
Until then, thanks forlistening and happy coding.
Advertise With Us

Popular Podcasts

Stuff You Should Know
Dateline NBC

Dateline NBC

Current and classic episodes, featuring compelling true-crime mysteries, powerful documentaries and in-depth investigations. Follow now to get the latest episodes of Dateline NBC completely free, or subscribe to Dateline Premium for ad-free listening and exclusive bonus content: DatelinePremium.com

24/7 News: The Latest

24/7 News: The Latest

The latest news in 4 minutes updated every hour, every day.

Music, radio and podcasts, all free. Listen online or download the iHeart App.

Connect

© 2025 iHeartMedia, Inc.