The Changelog: Software Development, Open Source - Data tool belts, Build Your Own Redis, the giscus comments system, prompt engineering shouldn't exist & ALPACA (News)
Episode Date: January 30, 2023Jeremia Kimelman takes stock of his "data tool belt", Build Your Own Redis with C/C++ is ready to read, giscus is a comments system powered by GitHub Discussions, Matt Rickard says prompt engineering ...shouldn't be a thing and won't be a thing in the future & Kolja Lubitz's ALPACA is engine for building adventure games and interactive comics.
Transcript
Discussion (0)
What up nerds, I'm Jared and this is ChangeLog News for the week of Monday, January 30th, 2023.
Our little Monday News Brief experiment has been pretty successful.
Thank you. You love me. You really love me.
So we're thinking about promoting it to be its very own show.
Am I a real boy?
That means it'll get its own name and its own podcast feed,
amongst other changes and improvements.
Curious, would you be upset by this or happy?
Would you subscribe to this as a separate podcast or no?
Let me know in the comments or on the socials.
I'm Jared Santo on Twitter and Jared at changelog.social on Mastodon.
Or shoot me an email, jared at changelog.com.
Oh, and of course, if you're subscribed to Changelog++ or our master feed,
you might not even notice this change except for new show art and stuff like that.
So that's cool.
Okay, let's get into the news.
Jeremiah Kimmelman, a data scientist and recovering web developer living in Sacramento,
took stock of his data tool belt, writing up 12 software projects and companies
he uses all the time as a working data journalist.
Side note, this style blog post is awesome.
It's always interesting to learn what tools people are using and why.
Also, they're pretty easy to write.
You just look around at what you use on the regular,
make a list, and write a blurb about each tool.
If you're hoping to blog more but have writers block, well, now you don't.
That's a great idea. I'm glad I had it.
Okay, back to Jeremiah.
He broke his tools down into five categories.
General use, web scraping, geospatial, website, and tools that are also companies.
Some of these you may be familiar with, like D3 and Lodash.
But others are more obscure, like Cheerio and TurfJS.
Check out the full list on his blog, and if you end up taking stock of your own tool belt, let us know. New book alert! Build your own Redis with C and C++ is now complete. Author James Smith
says this in his announcement post, quote, most of us are not working on projects of such a level,
but it is still worthwhile to learn from these projects. It takes higher skill and deeper
knowledge to build such projects.
Thus, learning from those projects could be a path to the next level as a software developer.
The book is the result of my own learning.
End quote.
He also answers the questions,
Why a book?
Why from scratch?
And why Redis?
The book is free to read on the web.
If it's helpful to you, consider purchasing the e-book or a hard copy. I'll link to both the free and paid versions in the show notes. Here's a cool idea with a
not so cool name, Giscus. It's a modern take on Discus, which started as an easy way to add
commenting to static pages, but over time grew into quite a bit more than that. One thing that's been added to
Disqus over the years is a link in their website's footer called Data Services. Every bond you break, every step you take, I'll be watching.
So yeah, not exactly the hacker spirit most of us are after.
Anyways, here comes GizGus, a comment system powered by GitHub Discussions.
GizGus is open source, has no tracking, no ads, and will always be free.
As long as you're cool with using GitHub Discussions as your comment database.
One thing I noticed is that your page
does have to load a script
directly from the giscus.app domain
so they could do some tracking
and other tomfoolery if they wanted to,
but hopefully that's a convenience thing
and you can re-host that file yourself
if you're super privacy-oriented.
That aside, the end result is a comment thread
that supports all the features we know and
love from GitHub without any of the hassle of coding them yourself. If your target reader
already has a GitHub account, this might be a good option for you. On his blog, Matt Rickards says,
prompt engineering, which is the art and science of crafting useful commands for large language
models to respond to, shouldn't be a thing and won't be a thing in the future. The first thing we have to realize about prompt engineering is that the state
of the art today is concatenation and templating. Many of the startups and products that popped up
out of nowhere in the wake of chat GPT splash are doing exactly this. They craft a prompt that works
well for a certain task, provide an input mechanism for users
to type their text, and concatenate the user's text with their crafted prompt using a template.
Matt thinks this whole song and dance creates a functional interface, but not the ultimate one,
concluding that, quote, prompt engineering looks more like a systems engineering problem,
not a machine learning one. Prompt engineering as an NLP task will go away fairly
quickly. Instead, we'll figure out ways to bring more structure to the input and outputs of querying
LLMs. End quote. He also lists out some possibilities of what that might look like,
but there's no prompt that you could engineer to convince me to read all those to you.
If you're curious, the link to the post is in your show notes.
It is now time for our new segment, where we feature weird and wild stuff.
That is some weird, weird stuff. That is some weird stuff.
Kalia Lubitz sent me his project, Alpaca.
That's short for A Library for Point-and-Click Adventures.
Nice acronym, Kalia.
It's a C++-based engine for building adventure games and interactive
comics. While it's written in C++, Alpaca can easily be scripted in Lua. Check out the examples
in the projects, read me, and also check out Kalia's game, Portal Dogs. As king of the dogs,
your mission is to find all your loyal subjects and guide them to the portal. I guess we can
finally answer the question of who let the
dogs out. Sorry, I just can't help myself sometimes. I just can't do it, Captain. I don't have the power.
This has been Weird and Wild Stuff. That's some good stuff. That is some weird...
Are you working on something weird or wild? Hit me up on Twitter with a link. I'm Jared Santo or on Mastodon,
jared at changelog.social. That is the news for now. Reminder, please do let us know what you
think about turning this into its own podcast. For it, against it, or indifferent, I love hearing
from you regardless. I leave you today with a quote from John Woods, always code as if the guy
who ends up maintaining your code
will be a violent psychopath who knows where you live.
Have a great week, and we'll talk to you again on Friday.