<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Abe's Portfolio</title><link>https://habet.dev/</link><description>Recent content on Abe's Portfolio</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Fri, 07 Mar 2025 12:00:00 -0500</lastBuildDate><atom:link href="https://habet.dev/index.xml" rel="self" type="application/rss+xml"/><item><title>Week 3: Diving Deeper into Django's Internals</title><link>https://habet.dev/blogs/djangonaut/week-3/</link><pubDate>Fri, 07 Mar 2025 12:00:00 -0500</pubDate><guid>https://habet.dev/blogs/djangonaut/week-3/</guid><description>This post is part of my journey through Djangonaut Space, a program helping developers contribute to Django. Follow along as I navigate through this adventure!
Quieter Week Week 3 was definitely quieter. Just had less time to put into Django stuff this week&amp;hellip; that happens sometimes I guess.
Still working on PR #19191 for adding custom expiry to signed cookies.
Going Deep into the Code After our Tuesday meet, Ryan suggested using git blame to see why the code is written how it is.</description></item><item><title>Week 2: Finding More Ways to Help Django</title><link>https://habet.dev/blogs/djangonaut/week-2/</link><pubDate>Fri, 28 Feb 2025 12:00:00 -0500</pubDate><guid>https://habet.dev/blogs/djangonaut/week-2/</guid><description>This post is part of my journey through Djangonaut Space, a program helping developers contribute to Django. Follow along as I navigate through this adventure!
More Ways to Contribute Started off week 2 looking for other ways to contribute to Django beyond just code. Turns out there&amp;rsquo;s a ton!
I looked into the &amp;ldquo;Updates to Django&amp;rdquo; section in the Django newsletter. Found a detailed guide on how it works.
Basically:</description></item><item><title>Week 1: My First Django PR - Adding Custom Expiry to Signed Cookies</title><link>https://habet.dev/blogs/djangonaut/week-1/</link><pubDate>Fri, 21 Feb 2025 12:00:00 -0500</pubDate><guid>https://habet.dev/blogs/djangonaut/week-1/</guid><description>This post is part of my journey through Djangonaut Space, a program helping developers contribute to Django. Follow along as I navigate through this adventure!
Finding My First Ticket As a new Djangonaut, I was eager to dive into my first contribution to Django. But where do you start with such a large and established codebase?
I followed some excellent advice from this YouTube short about finding tickets suitable for newcomers.</description></item><item><title>Week 0: Taking One Small Step into Django's Universe</title><link>https://habet.dev/blogs/djangonaut/week-0/</link><pubDate>Fri, 14 Feb 2025 12:00:00 -0500</pubDate><guid>https://habet.dev/blogs/djangonaut/week-0/</guid><description>Hey there! 👋 I&amp;rsquo;m Abe, and I just joined Djangonaut Space - a program designed to help developers like me contribute to Django. This is my first post documenting this journey, and honestly, I&amp;rsquo;m both excited and a bit nervous about what&amp;rsquo;s ahead.
Meeting the Crew We kicked off with an intro call this week, and wow - what an amazing group of people! Got to meet my fellow Djangonauts (still getting used to that term 😄) and our program leaders.</description></item><item><title>How I Start Django Projects: My Go-To Setup</title><link>https://habet.dev/blogs/how_i_start_django_projects/</link><pubDate>Thu, 13 Feb 2025 12:00:00 -0500</pubDate><guid>https://habet.dev/blogs/how_i_start_django_projects/</guid><description>I&amp;rsquo;ve been writing Django applications for about 2-3 years now, and I&amp;rsquo;ve started roughly 5 projects during that time. Every time I kick off a new project, I find myself going through the same setup steps that have worked well for me. I figured I&amp;rsquo;d share my process - it&amp;rsquo;s not perfect, but it&amp;rsquo;s been reliable and keeps me productive.
Cookiecutter Django Is Your Friend The first thing I do with any new Django project is fire up Cookiecutter Django.</description></item><item><title>Use Pre Commit To Include OpenAPI Schema In Version Control</title><link>https://habet.dev/blogs/use-pre-commit-to-include-openapi-schema-in-version-control/</link><pubDate>Wed, 17 Apr 2024 17:35:54 -0500</pubDate><guid>https://habet.dev/blogs/use-pre-commit-to-include-openapi-schema-in-version-control/</guid><description>The Problem Lately, I&amp;rsquo;ve been exploring the idea of including a project&amp;rsquo;s OpenAPI schema under git version control.
This is particularly useful with tools like Postman, where you can have a collection point to a remote schema on GitHub, and it will automatically update the collection when the schema changes.
For this to work, the schema file must be generated every time the API changes. This can easily be forgotten when done manually.</description></item><item><title>How To Install Python 3 on Windows 11</title><link>https://habet.dev/blogs/how-to-install-python-3-on-windows-11/</link><pubDate>Mon, 18 Jul 2022 22:41:04 -0500</pubDate><guid>https://habet.dev/blogs/how-to-install-python-3-on-windows-11/</guid><description>This article will walk through the steps to install python3 on Windows 11 in order to use the python package tube-cast.
Use the Executable Installer Head over to python.org and download the latest version of python.
Launch the Executable Installer When the download is finished, open up the Installer.
Before installing Select the check box Add Python 3.10 to PATH.
Confirm Installation To confirm the installation was successful open command prompt and type</description></item><item><title>How to Install Nextcloud</title><link>https://habet.dev/blogs/how-to-install-nextcloud/</link><pubDate>Wed, 12 Jan 2022 09:35:54 -0500</pubDate><guid>https://habet.dev/blogs/how-to-install-nextcloud/</guid><description>If you followed this you now have a server. It&amp;rsquo;s now time to start utilizing it. In this guide we will be setting up Nextcloud.
Nextcloud is a free (Open Source) Dropbox-like software. The project is written in PHP and JavaScript. It supports many database systems such as MySQL/MariaDB, PostgreSQL, Oracle Database and SQLite.
To allow Synchronization between server, desktop and mobile phone, Nextcloud provides applications for Windows, Linux and Mac desktop.</description></item><item><title>Self Hosting and Securing Web Services Out of Your Home With Cloudflare Tunnel</title><link>https://habet.dev/blogs/self-hosting-and-securing-web-services-out-of-your-home-with-cloudflare-tunnel/</link><pubDate>Thu, 30 Dec 2021 00:49:45 -0500</pubDate><guid>https://habet.dev/blogs/self-hosting-and-securing-web-services-out-of-your-home-with-cloudflare-tunnel/</guid><description>Why a tunnel? Opening up a port on a home network isn’t the greatest idea. It is a security risk, a hole waiting for a hacker/bot to sneak in using a known vulnerability. Many ISP‘s and routers prevent you from opening up ports 80 and 443. Another challenge you will face is setting up a dynamic DNS. Finally, when your domain is pointing to your home IP address it is very easy to determine your home location.</description></item><item><title>Raspberry Pi Encrypted Boot With Ssh</title><link>https://habet.dev/blogs/raspberry-pi-encrypted-boot-with-ssh/</link><pubDate>Thu, 23 Dec 2021 00:39:34 -0500</pubDate><guid>https://habet.dev/blogs/raspberry-pi-encrypted-boot-with-ssh/</guid><description>Please note this project is a fork from ViRb3, I&amp;rsquo;ve made some minor changes here.
Tested on Raspberry Pi 3B &amp;amp; 4B with Ubuntu Server 21.04 &amp;amp; Debian 11
Introduction This guide will show you how to encrypt your Raspberry Pi&amp;rsquo;s root partition and set up an initramfs that will prompt for the password, decrypt the partition and gracefully resume boot. You will also learn how to enable SSH during this pre-boot stage, allowing you to unlock the partition remotely.</description></item><item><title>Self Hosted</title><link>https://habet.dev/blogs/self-hosted/</link><pubDate>Sun, 19 Dec 2021 22:41:04 -0500</pubDate><guid>https://habet.dev/blogs/self-hosted/</guid><description>This blog is self hosted on a small raspberry pi. Smaller than the size of your hand. I choose this model with a Crucial SSD you can find here. You’ll need a wire like this to connect them.
Lid closed
Lid open
Raspberry pi sever
The OS of choice is Debian 11 because of its stability. I always prefer to encrypt my hardware, so I have nothing to worry about if it lands in other hands.</description></item><item><title>Hello World</title><link>https://habet.dev/blogs/hello-world/</link><pubDate>Thu, 16 Dec 2021 22:01:51 -0500</pubDate><guid>https://habet.dev/blogs/hello-world/</guid><description>Hello World Welcome to habet.dev. This site is in its infancy. We welcome all feedback.</description></item></channel></rss>