<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>rogulski.it</title><link>https://rogulski.it/</link><description>Recent content on rogulski.it</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><copyright>Built with love to Python</copyright><lastBuildDate>Sat, 25 Feb 2023 22:45:00 +0200</lastBuildDate><atom:link href="https://rogulski.it/index.xml" rel="self" type="application/rss+xml"/><item><title>Streamlining Event-Driven Architecture with Knative Channels and SinkBinding</title><link>https://rogulski.it/blog/knative-channel-subscription-with-sink-binding/</link><pubDate>Sat, 25 Feb 2023 22:45:00 +0200</pubDate><guid>https://rogulski.it/blog/knative-channel-subscription-with-sink-binding/</guid><description>Introduction In one of my previous posts, I described a way to consume kafka messages using Knative on top of the Broker/Trigger pattern.</description></item><item><title>Troubleshooting and debugging knative with kafka</title><link>https://rogulski.it/blog/troubleshooting-knative-with-kafka/</link><pubDate>Tue, 24 Jan 2023 12:45:00 +0200</pubDate><guid>https://rogulski.it/blog/troubleshooting-knative-with-kafka/</guid><description>Useful commands Display list of knative services
kn services list Display config for specific service
kn service describe --verbose &amp;lt;SERVICE_NAME&amp;gt; List all revisions</description></item><item><title>Smart mock by side effect replacement</title><link>https://rogulski.it/blog/smart-mock-by-side-effect-replace/</link><pubDate>Tue, 17 Jan 2023 12:45:00 +0200</pubDate><guid>https://rogulski.it/blog/smart-mock-by-side-effect-replace/</guid><description>Smart way of mocking a Python method using side_effect for multiple different return values with ability to preserve the input of mocked method as part of output.</description></item><item><title>Consume Kafka events with Knative service and FastAPI on kubernetes</title><link>https://rogulski.it/blog/kafka-consumer-knative-fastapi/</link><pubDate>Thu, 15 Sep 2022 21:45:00 +0200</pubDate><guid>https://rogulski.it/blog/kafka-consumer-knative-fastapi/</guid><description>Introduction I would like to share my experience and workflow for setting up event-driven architecture using Knative.
Most of the recent applications I build nowadays heavily rely on Kafka and Kubernetes.</description></item><item><title>How to delete kubernetes stuck CRD deletion</title><link>https://rogulski.it/blog/kubernetes-stuck-resource-action/</link><pubDate>Mon, 04 Jul 2022 21:45:00 +0200</pubDate><guid>https://rogulski.it/blog/kubernetes-stuck-resource-action/</guid><description>Sometimes when you delete your CustomResourceDefinition (CRD) without deleting some dependencies first or your config will depend on another proces which takes place your delete action might freeze.</description></item><item><title>Handle python versions and virtualenv like a pro! (including Apple M1)</title><link>https://rogulski.it/blog/python-virtualenv-management/</link><pubDate>Mon, 02 May 2022 05:45:00 +0200</pubDate><guid>https://rogulski.it/blog/python-virtualenv-management/</guid><description>Seeing this post you already know what is a virtualenv and why it is helpful to use it.
In this post, I would like to share how to install it and navigate though projects faster and easier!</description></item><item><title>Install psycopg2-binary on Apple M1 silicon</title><link>https://rogulski.it/blog/install-psycopg2-on-apple-m1/</link><pubDate>Sun, 01 May 2022 20:45:00 +0200</pubDate><guid>https://rogulski.it/blog/install-psycopg2-on-apple-m1/</guid><description>Update xcode:
xcode-select --install Install homebrew:
/bin/bash -c &amp;#34;$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)&amp;#34; Install postgresql:
brew install postgresql Install openssl:
brew install openssl Link openssl:</description></item><item><title>Django multi-select choice field in admin panel</title><link>https://rogulski.it/django-multiselect-choice-admin/</link><pubDate>Mon, 24 Jan 2022 17:45:00 +0200</pubDate><guid>https://rogulski.it/django-multiselect-choice-admin/</guid><description>Let the first cast a stone who did not use Django only because it has already a built-in admin panel&amp;hellip; (of course, Django is having a lot of useful features and possibilities apart from admin).</description></item><item><title>Using DynamoDB with FastAPI</title><link>https://rogulski.it/dynamodb-with-fastapi/</link><pubDate>Sat, 22 Jan 2022 14:01:58 +0200</pubDate><guid>https://rogulski.it/dynamodb-with-fastapi/</guid><description>DynamoDB is a NOSQL database from AWS, with a couple of years of experience it features a lot of amazing functionalities.</description></item><item><title>Pytest with respx and vcr! The best way to test remote service requests</title><link>https://rogulski.it/blog/pytest-httpx-vcr-respx-remote-service-tests/</link><pubDate>Sun, 24 Oct 2021 08:01:58 +0200</pubDate><guid>https://rogulski.it/blog/pytest-httpx-vcr-respx-remote-service-tests/</guid><description>Stop mocking remote service httpx requests by yourself! There is a better, automatic way to do it.
Thanks to my lovely friend prmtl I have learned the best way for testing remote service requests in Python.</description></item><item><title>Python type annotation improvement with Generic and TypeVar</title><link>https://rogulski.it/blog/python-typing-with-generic-typevar/</link><pubDate>Fri, 15 Oct 2021 08:01:58 +0200</pubDate><guid>https://rogulski.it/blog/python-typing-with-generic-typevar/</guid><description>In this article, I would like to share my favorite way of type annotating classes using typing modules with Generic and TypeVar.</description></item><item><title>SSL connection setup using PostgreSQL and SQLAlchemy</title><link>https://rogulski.it/blog/aws-rds-ssl-connection-sqlalchemy/</link><pubDate>Wed, 13 Oct 2021 12:01:58 +0200</pubDate><guid>https://rogulski.it/blog/aws-rds-ssl-connection-sqlalchemy/</guid><description>Add ssl=true to your DATABASE_URL
Download certificate that is required for secure connection with RDS e.g. AWS docs
Add required arguments while creating a session</description></item><item><title>SqlAlchemy 1.4 async ORM with FastAPI</title><link>https://rogulski.it/blog/sqlalchemy-14-async-orm-with-fastapi/</link><pubDate>Sat, 09 Oct 2021 12:01:58 +0200</pubDate><guid>https://rogulski.it/blog/sqlalchemy-14-async-orm-with-fastapi/</guid><description>Previously on my blog I was setting up a backend service with async sqlalchemy core using a database library. The reason for that was simple, SQLAlchemy did not support asyncio in ORM yet.</description></item><item><title>Checkout what's new in Python 3.10</title><link>https://rogulski.it/blog/whats-new-in-python-3-10/</link><pubDate>Mon, 04 Oct 2021 22:01:58 +0200</pubDate><guid>https://rogulski.it/blog/whats-new-in-python-3-10/</guid><description>Today is the day! Python 3.10.0 was just released (4 October 2021) introducing new cool features and improvements. This post shows a short overview with code examples of most interesting PEPs (by me).</description></item><item><title>The best pre-commit config for Python code</title><link>https://rogulski.it/blog/pre-commit-python/</link><pubDate>Thu, 10 Jun 2021 12:01:58 +0200</pubDate><guid>https://rogulski.it/blog/pre-commit-python/</guid><description>Git hooks are very useful tools that can be used in any project for many cases. Hooks can be run on every commit to verify the code, delete trailing spaces, run tests, etc.</description></item><item><title>My experience with FastAPI and async database connection</title><link>https://rogulski.it/blog/fastapi-async-db/</link><pubDate>Sun, 06 Jun 2021 12:01:58 +0200</pubDate><guid>https://rogulski.it/blog/fastapi-async-db/</guid><description>Introduction This is already half a year since I started my first FastAPI project and it looks great!
In the beginning, I&amp;rsquo;ve been recruiting to one of the companies and I have received a recruitment assignment which was about creating a small 2h project with Python and framework of choice.</description></item><item><title>Neovim on OS X</title><link>https://rogulski.it/blog/neovim-on-osx/</link><pubDate>Sun, 20 Dec 2020 12:01:58 +0200</pubDate><guid>https://rogulski.it/blog/neovim-on-osx/</guid><description>Recently I have switched from vim to neovim, just because it is faster, supports asynchronous plugins, and stores config in .</description></item><item><title>Continuous Integration and Deployment using Google Cloudbuild</title><link>https://rogulski.it/blog/google-cloudbuild-ci-cd/</link><pubDate>Mon, 19 Oct 2020 12:01:58 +0200</pubDate><guid>https://rogulski.it/blog/google-cloudbuild-ci-cd/</guid><description>An amazing alternative for people who need fast and easy Continuous Integration and Continous Deployment tool on Google - Cloudbuild. Very helpful if the infrastructure is hosted on Google Cloud Platform.</description></item><item><title>Processing markdown in Gatsby with Contentful</title><link>https://rogulski.it/blog/gatsby-contentful-markdown-jsx-component/</link><pubDate>Fri, 29 May 2020 12:01:58 +0200</pubDate><guid>https://rogulski.it/blog/gatsby-contentful-markdown-jsx-component/</guid><description>There are two most common ways of using markdown in Gatsby with a headless CMS tool.
This post will present how to use them with Contentful service.</description></item><item><title>React form validation using material-ui and yup</title><link>https://rogulski.it/blog/react-material-checkbox-form-validation/</link><pubDate>Sat, 16 May 2020 12:01:58 +0200</pubDate><guid>https://rogulski.it/blog/react-material-checkbox-form-validation/</guid><description>Simple registration form with a full validation including checkbox field.
Working code example can be found on my github
Dependencies:</description></item><item><title>Have you ever considered AWS Elastic Beanstalk for Django?</title><link>https://rogulski.it/blog/aws-elastic-beanstalk-django/</link><pubDate>Sun, 09 Jun 2019 12:01:58 +0200</pubDate><guid>https://rogulski.it/blog/aws-elastic-beanstalk-django/</guid><description>Introduction AWS Elastic Beanstalk is easy-to-use Amazon service for deploying and scaling web applications in couple languages including Python.
The best solution if you are short on time with setting the whole server setup and on DevOps resources.</description></item><item><title>10 steps to setup FTP server on Google Compute Engine</title><link>https://rogulski.it/blog/ftp-on-google-compute-engine/</link><pubDate>Sat, 20 Apr 2019 12:01:58 +0200</pubDate><guid>https://rogulski.it/blog/ftp-on-google-compute-engine/</guid><description>Create Google Compute Engine gcloud compute instances create ftp --zone us-central1-a Enter machine instance using ssh gcloud compute ssh ftp Install ftp server for unix-like systems (vsftpd) sudo apt-get install vsftpd Generate RSA certificate files openssl genrsa -out server.</description></item><item><title>Heroes of Might and Magic 3: Horn of the Abyss on Linux and macOS #wine</title><link>https://rogulski.it/blog/heroes-3-on-wine/</link><pubDate>Mon, 21 Jan 2019 12:01:58 +0200</pubDate><guid>https://rogulski.it/blog/heroes-3-on-wine/</guid><description>Back to the past! Playing Heroes of Might and Magic 3 with latest Horn of the Abyss on Linux or OS X!</description></item><item><title>Django Rest Framework using Python 3.7 on GAE Standard</title><link>https://rogulski.it/blog/gae-standard-py37-django/</link><pubDate>Mon, 24 Dec 2018 12:01:58 +0200</pubDate><guid>https://rogulski.it/blog/gae-standard-py37-django/</guid><description>How to build a web application using new Python 3.7 runtime on Google App Engine?
I started my programming journey more than 6 years ago and my first stack was a Google App Engine on Python 2.</description></item><item><title>How to create Alexa Skill using Python</title><link>https://rogulski.it/blog/alexa-skill-in-python/</link><pubDate>Wed, 07 Nov 2018 12:01:58 +0200</pubDate><guid>https://rogulski.it/blog/alexa-skill-in-python/</guid><description>Lately, I&amp;rsquo;ve built a couple of applications for Alexa devices. I found out that a lot of people started to be interested in Alexa skill kit in terms of building or using the applications.</description></item><item><title>Hi, I'm Piotr</title><link>https://rogulski.it/blog/hi-im-piotr/</link><pubDate>Fri, 02 Nov 2018 12:01:58 +0200</pubDate><guid>https://rogulski.it/blog/hi-im-piotr/</guid><description>Today is the day when I&amp;rsquo;m starting my programming blog.
My name is Piotr Rogulski. I&amp;rsquo;m Python developer and new technology enthusiast.</description></item></channel></rss>