<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="//vinioyama.com/wp-content/plugins/wordpress-seo/css/main-sitemap.xsl"?>
<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd http://www.google.com/schemas/sitemap-image/1.1 http://www.google.com/schemas/sitemap-image/1.1/sitemap-image.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
	<url>
		<loc>https://vinioyama.com/blog/</loc>
		<lastmod>2025-08-07T14:47:29+00:00</lastmod>
	</url>
	<url>
		<loc>https://vinioyama.com/blog/setup-rails-7-2-and-docker-compose-for-capybara-selenium-rspec-and-more-step-by-step-guide/</loc>
		<lastmod>2024-10-01T13:44:13+00:00</lastmod>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/configure-rails-7-2-dev-environment-with-docker-compose-step-by-step-guide.jpg</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/rails-docker-selenium-demo.gif</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://vinioyama.com/blog/ruby-on-rails-what-is-ar_internal_metadata-metada-table/</loc>
		<lastmod>2024-10-22T21:49:53+00:00</lastmod>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/2024/09/understand-rails-ar-internal-metadata.jpg</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://vinioyama.com/blog/configuring-dns-for-email-practical-guide-to-spf-dkim-and-dmarc-setup/</loc>
		<lastmod>2024-11-16T12:04:49+00:00</lastmod>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/2024/09/generic.jpg</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/email-dns-setup-spf-dkim-dmarc-1024x576.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/2024/09/Pasted-image-20240918160209-1024x651.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://vinioyama.com/blog/practical-guide-for-database-scaling-how-to-use-postgres-logical-replication/</loc>
		<lastmod>2024-11-16T12:07:14+00:00</lastmod>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/v5.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/v5-768x432.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/2024/09/postgres-logical-replica-diagram-1024x603.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://vinioyama.com/blog/scaling-rails-setup-multiple-databases-with-postgres-logical-replication/</loc>
		<lastmod>2024-11-16T12:07:26+00:00</lastmod>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/2024/09/postgres-logo.jpg</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/v5-768x432.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/rails-postgres-logical-replication-1024x599.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://vinioyama.com/blog/rails-nested-attributes-creating-multi-nested-models-at-once-using-one-form/</loc>
		<lastmod>2024-11-16T12:14:11+00:00</lastmod>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/v16.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/v16-768x432.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/project-sprint-719x1024.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/tasks.gif</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://vinioyama.com/blog/system-design-scorer-engine-architecture-and-implementation/</loc>
		<lastmod>2024-11-17T01:59:58+00:00</lastmod>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/v13-1.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/v13-1-768x432.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://vinioyama.com/blog/how-to-create-dynamic-form-fields-in-rails-with-auto-updates-with-hotwire-stimulusjs-and-turbo/</loc>
		<lastmod>2025-01-06T21:47:08+00:00</lastmod>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/v13.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/v13-768x432.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/file-20241016123248157-445x1024.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/country.gif</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/project.gif</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/role.gif</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://vinioyama.com/blog/changing-a-self-hosted-app-to-a-multi-tenant-hosted-app-postgres-schemas-in-ruby-on-rails/</loc>
		<lastmod>2025-02-06T13:36:40+00:00</lastmod>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/postgres-schemas-ruby-on-rails-multi-tenant-1.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/postgres-schemas-diagram-1024x532.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/postgres-schemas-search-path-flow-1024x701.png</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://vinioyama.com/blog/building-a-multi-page-guided-tour-in-ruby-on-rails-with-driver-js/</loc>
		<lastmod>2025-03-12T12:35:33+00:00</lastmod>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/rails-driver-js-product-tour-2.png</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/tour.gif</image:loc>
		</image:image>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/click-1024x834.gif</image:loc>
		</image:image>
	</url>
	<url>
		<loc>https://vinioyama.com/blog/parsing-external-data-with-dtos-data-transfer-objects-practical-javascript-and-ruby-guide/</loc>
		<lastmod>2025-08-07T14:47:29+00:00</lastmod>
		<image:image>
			<image:loc>https://vinioyama.com/wp-content/uploads/dto-data-transfer-object-in-practice.png</image:loc>
		</image:image>
	</url>
</urlset>
<!-- XML Sitemap generated by Yoast SEO -->