<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/">
	<channel>
		<title>Quinn Chrest - Dev Log</title>
		<atom:link href="https://quinnchrest.dev/api/feed.xml" rel="self" type="application/rss+xml" />
		<link>https://quinnchrest.dev</link>
		<description>Development updates, learnings, and insights from Quinn Chrest's coding journey</description>
		<lastBuildDate>Tue, 21 Jul 2026 00:58:55 GMT</lastBuildDate>
		<language>en-US</language>
		<sy:updatePeriod>daily</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
		<generator>Quinn Chrest Portfolio</generator>
		
			<item>
				<guid>https://quinnchrest.dev/devlog/5</guid>
				<title><![CDATA[PostgreSQL Backups]]></title>
				<pubDate>Thu, 17 Jul 2025 00:00:00 GMT</pubDate>
				<category>Feature</category>
				<description><![CDATA[So since I incorporated an admin panel into my website with the ability to add/remove/update projects and dev logs, I became concerned of data corruption and malicious attacks. After fighting linux I finally got the correct version of Postgres tools install to run a pg_dump to get table backups. Set it up in a bash script to run a backup, date stamp the backup, and delete any backups older than 7 days. Then configured the Cron jobs on my Ubuntu box to run this script every night so if something gets compromised or messed up I at least have some backups to fall back on. Now if the server itself dies that's a whole other problem... 😊]]></description>
				<dc:creator>Quinn Chrest</dc:creator>
				<dc:subject>PostgreSQL, CronJob, Bash Script</dc:subject>
			</item>
		
			<item>
				<guid>https://quinnchrest.dev/devlog/4</guid>
				<title><![CDATA[Developer Site - Admin Panel]]></title>
				<pubDate>Mon, 14 Jul 2025 00:00:00 GMT</pubDate>
				<category>Feature</category>
				<description><![CDATA[I wanted to make a tool for performing general CRUD operations on my dev log and projects showcase without having to manually perform operations on the database. Probably should have done this right away but I wanted to get the project published since visually it is mostly complete even though there are still items that are a work in progress. I was thinking of making an external tool so I didn't have to worry about exposing the ability to edit this data, but thought I could give Cursor a chance to continue development on the website it created.<br><br>Just like before it amazed me at how quickly it could analyze my project and implement a new feature, and a pretty hefty one at that. Building a CRUD platform for manipulating data in a database isn't anything complex, but it does take a fair amount of code. With the first pass it built out all the api endpoints for performing the CRUD operations and a pretty good looking UI.<br><br>Since I am going to be the only user accessing this panel I instructed it to build a very simple authentication system. After doing it's first pass, I looked over how Cursor decided to handle the authentication. I'm glad I did because Cursor forgot to authenticate the user on the api endpoints for non-read actions and only checked on login! So if you new the http requests to send on a tool like Postman you could perform whatever actions you wanted to. We course corrected and added some extra security features like limiting login attempts and adding an expiration to logins. That is a good reminder though to be diligent when generating code that can expose your platform to attacks and potential data loss.<br><br>I have merged in the feature on github and have deployed into production. This dev log is actually being written using the feature right now!]]></description>
				<dc:creator>Quinn Chrest</dc:creator>
				<dc:subject>Sveltkit, Cursor Agent</dc:subject>
			</item>
		
			<item>
				<guid>https://quinnchrest.dev/devlog/1</guid>
				<title><![CDATA[Portfolio Website Launch]]></title>
				<pubDate>Thu, 10 Jul 2025 00:00:00 GMT</pubDate>
				<category>Feature</category>
				<description><![CDATA[Why waist time creating an entire site for showing off my dev projects when I can just vibe code it and get to working on projects that matter. The site is built in Svelte and features a project showcase, devlog including an rss feed, and some Github stats. Thanks to Cursor I was able to get this up in about 3-4 hours of dev time. Most of that time was watching how good the Cursor agent is at generating front end code.]]></description>
				<dc:creator>Quinn Chrest</dc:creator>
				<dc:subject>Sveltkit, PostgreSQL, Cursor Agent, RSS</dc:subject>
			</item>
		
	</channel>
</rss>