<?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>JiyuuLife | Automate Your Way to Freedom</title>
	<atom:link href="https://www.jiyuulife.net/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.jiyuulife.net</link>
	<description>Tech guides, DIYs, and helpful information for expats living in Japan from just a regular guy.</description>
	<lastBuildDate>Thu, 24 Apr 2025 01:32:54 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.2</generator>

<image>
	<url>https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/cropped-Ziyou.png?fit=32%2C32&#038;ssl=1</url>
	<title>JiyuuLife | Automate Your Way to Freedom</title>
	<link>https://www.jiyuulife.net</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">148850804</site>	<item>
		<title>Unlocking Peak Performance: Migrating from Apache2 to FrankenPHP with Docker</title>
		<link>https://www.jiyuulife.net/dockering-and-migrating-from-apache2-to-frankenphp-caddy/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sun, 20 Apr 2025 10:21:44 +0000</pubDate>
				<category><![CDATA[How-To]]></category>
		<category><![CDATA[Site]]></category>
		<category><![CDATA[caddy]]></category>
		<category><![CDATA[docker]]></category>
		<category><![CDATA[frankenphp]]></category>
		<category><![CDATA[guide]]></category>
		<category><![CDATA[mariadb]]></category>
		<category><![CDATA[phpmyadmin]]></category>
		<category><![CDATA[WordPress]]></category>
		<guid isPermaLink="false">https://www.jiyuulife.net/?p=704</guid>

					<description><![CDATA[<p>Foreword Up until today (April 20, 2025) I&#8217;ve hosted this WordPress site using a variety of services and software. This site originally started out on Google Cloud Platform but then slowly transitioned to self-hosting via Raspberry Pi 4. For reasons that I do not remember, when migrating over to rpi4 I set up the site ... <a title="Unlocking Peak Performance: Migrating from Apache2 to FrankenPHP with Docker" class="read-more" href="https://www.jiyuulife.net/dockering-and-migrating-from-apache2-to-frankenphp-caddy/" aria-label="Read more about Unlocking Peak Performance: Migrating from Apache2 to FrankenPHP with Docker">Read more</a></p>
The post <a href="https://www.jiyuulife.net/dockering-and-migrating-from-apache2-to-frankenphp-caddy/">Unlocking Peak Performance: Migrating from Apache2 to FrankenPHP with Docker</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></description>
										<content:encoded><![CDATA[<h2 class="wp-block-heading">Foreword</h2>



<p>Up until today (April 20, 2025) I&#8217;ve hosted this WordPress site using a variety of services and software. This site originally started out on Google Cloud Platform but then slowly transitioned to self-hosting via Raspberry Pi 4. For reasons that I do not remember, when migrating over to rpi4 I set up the site and all its components directly in the host server, without using any containerization software such as Docker. Retroactively speaking, I likely did it to brush up on my linux knowledge and make sure that I understood everything that was happening under the hood of my server and website. I&#8217;ve created and documented my journey through the various migrations in this site but finally realized recently that it is time to move on to using new tools and services. To &#8220;catch up with the times&#8221; or so people say. Now that I spent enough time building code repos from source, manually orchestrating the deployments and upgrades of WordPress and MariaDB, and manually updating PHP versions by hand, I will now leave that to the community and embrace the wonderfulness that is waiting for new software versions to arrive in docker containers 😉</p>



<h2 class="wp-block-heading">About Caddy and FrankenPHP</h2>



<p>Apache2 was (and likely still is) the go-to webserver for WordPress deployments. For WordPress users, transitioning from the traditional Apache2 setup to a more modern and efficient architecture can yield significant benefits. Caddy, with its V2 released in 2020, is a new webserver that, though young, promises high performance with an easier to use configuration. FrankenPHP is a cutting-edge PHP application server built on the Caddy web server. It consolidates the web server and PHP runtime into a single service, eliminating the need for separate PHP-FPM and Apache processes. This integration simplifies deployment and enhances performance. Notably, benchmarks have shown that FrankenPHP can process requests significantly faster than traditional setups .​</p>



<h2 class="wp-block-heading">Current System Setup</h2>



<ul class="wp-block-list">
<li>WordPress v6.7</li>



<li>Apache/2.4.62</li>



<li>FPM-PHP (PHP v8.2.28)</li>



<li>MariaDB 10.5.26</li>
</ul>



<h2 class="wp-block-heading">Prerequisites</h2>



<ul class="wp-block-list">
<li>Backup the site using your WP site migration tool of choice (I used UpdraftPlus&#8217;s Free Version)</li>



<li>Backup your MySQL/MariaDB as well &#8211; if you decide to upgrade your DB version then you may potentially come across compatibility issues, and your database tables may need to be repaired in order for it to be useable</li>



<li>Docker and Docker-Compose. Below is the version I&#8217;m using at the time of writing this post:<br><em><code>Docker version 28.0.4, build b8034c0</code><br><code>Docker Compose version v2.34.0</code></em></li>



<li>You will need to retrieve all of the username/passwords for the following
<ul class="wp-block-list">
<li>WordPress DB name</li>



<li>WordPress DB username/password</li>



<li>MariaDB root password</li>
</ul>
</li>
</ul>



<h2 class="wp-block-heading">How to Migrate</h2>



<p><strong>Note: There will be site downtime while you perform this migration using this manual</strong>.</p>



<h3 class="wp-block-heading">Creating the Docker Compose Configuration File</h3>



<p>I will be using FrankenPHP&#8217;s officially (yet not official at the same time&#8230;) sponsored WordPress images created from the <a href="https://github.com/StephenMiracle/frankenwp" title="FrankenWP">FrankenWP</a> project. The list of latest images can be found <a href="https://hub.docker.com/r/wpeverywhere/frankenwp/tags" target="_blank" rel="noopener" title="">here</a>. For MySQL/MariaDB, choose the version that is closest if not equal to the version you are currently using &#8211; if you perform too big of a version jump the built-in upgrade feature may not work for your existing data. Lastly, if you use PHPMyAdmin, also grab and configure the details for that. Long story short, Caddy nor FrankenWP official pages had anything close to a work-able <code>compose.yaml</code>, and a lot of trial-and-error and extra configurations were necessary in order to at least properly serve the site in Production.</p>



<p>Below is the  <code>compose.yaml</code> file I finally ended up with that made the whole thing work, though I&#8217;m still giving most credit to FrankenWP&#8217;s creator since I took the template from the project&#8217;s <a href="https://github.com/StephenMiracle/frankenwp/blob/main/examples/basic/compose.yaml" target="_blank" rel="noopener" title="">examples</a> section. Note that the below example has sample data (denoted by <code>##</code>) which will need to be replaced with info from your current WP site and DB info:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: yaml; title: ; notranslate">
services:
  wordpress:
    image: wpeverywhere/frankenwp:latest-php8.3
    restart: always
    ports:
      - &quot;80:80&quot; # HTTP
      - &quot;443:443&quot; # HTTPS
    environment:
      SERVER_NAME: ${SERVER_NAME:-:80}
      WORDPRESS_DB_HOST: ${DB_HOST:-db}
      WORDPRESS_DB_USER: ${DB_USER:-wordpress}
      WORDPRESS_DB_PASSWORD: ${DB_PASSWORD:-##YOUR_WP_DB_PASSWORD##}
      WORDPRESS_DB_NAME: ${DB_NAME:-wordpress}
      # Currently WP_DEBUG turns on even if below is set false. To turn debug off, remove it entirely.
      # See:  https://github.com/docker-library/wordpress/issues/496
      #WORDPRESS_DEBUG: false
      WORDPRESS_TABLE_PREFIX: ${DB_TABLE_PREFIX:-wp_}
      CACHE_LOC: ${CACHE_LOC:-/var/www/html/wp-content/cache}
      TTL: ${TTL:-80000}
      PURGE_PATH: ${PURGE_PATH:-/__cache/purge}
      PURGE_KEY: ${PURGE_KEY:-}
      BYPASS_HOME: ${BYPASS_HOME:-false}
      BYPASS_PATH_PREFIXES: ${BYPASS_PATH_PREFIXES:-/wp-admin,/wp-content,/wp-includes,/wp-json,/feed}
      CACHE_RESPONSE_CODES: ${CACHE_RESPONSE_CODES:-000}
        # Enable debug to check for Caddy issues (Certificate renewal error, config error, etc)
      #CADDY_GLOBAL_OPTIONS: |
        #email ##EMAIL_ADDRESS##
        #auto_https disable_redirects
        #debug
      WORDPRESS_CONFIG_EXTRA: |
        # Add extra configs here as necessary
        define(&#039;WP_SITEURL&#039;, &#039;##SITEURL##&#039;);
        define(&#039;WP_HOME&#039;, &#039;##WP_HOME##&#039;);

    volumes:
      # Mount your WordPress content directory if needed
      - /var/www/html/wp-content:/var/www/html/wp-content
      # Load your own Caddyfile to configure site
      - ./Caddyfile:/etc/caddy/Caddyfile
      # Store SSL Certs so that it can be reused when containers are recreated
      # (and do avoid exceeding cert issue rate limits when debugging containers)
      - ./caddy_data:/data
      # Other root files, such as ads.txt
      - /var/www/html/ads.txt:/var/www/html/ads.txt

    depends_on:
      - db
    tty: true
    networks:
      wpnet:
        ipv4_address: 172.28.0.3

    # Below only if necessary
    #extra_hosts:
    #  - ##TLD##:172.28.0.3
    #  - www.##TLD##:172.28.0.3

  db:
    # Be careful of making too big of a version jump...
    # Slowly update db version to reduce chance of data corruption
    image: mariadb:11.7.2
    restart: always
    ports:
      - 3306:3306
    environment:
      MYSQL_DATABASE: ${DB_NAME:-wordpress}
      MYSQL_USER: ${DB_USER:-wordpress}
      MYSQL_PASSWORD: ${DB_PASSWORD:-##YOUR_WP_DB_PASSWORD##}
      MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASSWORD:-##YOUR_ROOT_PASSWORD##}
    volumes:
      - /var/lib/mysql:/var/lib/mysql
      - /etc/mysql/mariadb.conf.d:/etc/mysql/mariadb.conf.d
    networks:
      wpnet:
        ipv4_address: 172.28.0.4

  phpmyadmin:
    # using arm64 version since I am on raspberry pi
    image: arm64v8/phpmyadmin:latest
    restart: always
    ports:
      - ${LOCAL_PHPMYADMIN_PORT:-8086}:80
    environment:
      PMA_HOST: db
      MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASSWORD:-##YOUR_ROOT_PASSWORD##}
    depends_on:
      - db
    networks:
      wpnet:
        ipv4_address: 172.28.0.5
    volumes:
      # Use existing phpmyadmin data
      - /var/www/html/phpmyadmin:/var/www/html/phpmyadmin

networks:
  wpnet:
    driver: bridge
    ipam:
      config:
        - subnet: 172.28.0.0/16
          gateway: 172.28.0.1

</pre></div>


<p>Mix and match whatever you need from the above to get your own site working. Below is a list of some configurations which can be made differently based on your unique situation:</p>



<ul class="wp-block-list">
<li>Remove PHPMyAdmin if you don&#8217;t use it.</li>



<li>Above config uses a bridge network. This allows for multiple sites to be hosted on the same host device via reverse proxy. Also, as you will see later, if your PHPMyAdmin also uses standard HTTP/S ports then it is not possible to run both your site (WordPress) and PHPMyAdmin on the same port in the <code>host</code> network configuration.</li>



<li>Static addresses can be used to grant read/write privileges for the DB which is hosted in another instance and by default only allows for <code>localhost</code> connection. Static IP addresses can be omitted if you configure your MySQL/MariaDB to allow connections from the entire IP address range in your bridge network (example further below). It can also be omitted if you decide to host your containers using the <code>host</code> network configuration.</li>



<li>Static IP address of PHPMyAdmin is also used in the below Caddyfile to set up reverse proxy. There&#8217;s probably a better way to do this without static IP addresses&#8230; will update later&#8230;</li>
</ul>



<h3 class="wp-block-heading">Creating the Caddyfile</h3>



<p>Now that our docker configurations are set up, we need to configure <code>Caddyfile</code>. This <code>Caddyfile</code> should be placed in the same folder as your <code>compose.yaml</code>:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
{
        # Uncomment below when experiencing redirect loops from reverse proxy/cloud load balancer/etc
        #auto_https disable_redirects
        {$CADDY_GLOBAL_OPTIONS}

        frankenphp {
                #worker /path/to/your/worker.php
                {$FRANKENPHP_CONFIG}
        }

        # https://caddyserver.com/docs/caddyfile/directives#sorting-algorithm
        order php_server before file_server
        order php before file_server
        order wp_cache before rewrite
        order request_header before wp_cache
}

{$CADDY_EXTRA_CONFIG}

##WWW_DOMAIN## {

        tls ##EMAIL_ADDRESS##

        @phpmyadmin path /phpmyadmin*
        reverse_proxy @phpmyadmin 172.28.0.5:80

        @static {
                file
                path *.ico *.css *.js *.gif *.jpg *.jpeg *.png *.svg *.woff *.txt
        }

        root * /var/www/html/
        encode br zstd gzip

        wp_cache {
                loc {$CACHE_LOC:/var/www/html/wp-content/cache}
                cache_response_codes {$CACHE_RESPONSE_CODES:2XX,404,405}
                ttl {$TTL:6000}
                purge_path {$PURGE_PATH:/__cache/purge}
                purge_key {$PURGE_KEY}
                bypass_home {$BYPASS_HOME:false}
                bypass_path_prefixes {$BYPASS_PATH_PREFIXES:/wp-admin,/wp-json}
        }

        {$CADDY_SERVER_EXTRA_DIRECTIVES}
        php_server
}

# For www redirects
###DOMAIN## {
#        redir https://www.{host}{uri} permanent
#}
</pre></div>


<p>Replace the <code>##ITEM##</code> with configurations for your own site. At the very bottom is a redirection bit in case you want <code>www</code> to be redirected to your TLD+1, or vice versa. The PHPMyAdmin reverse proxy is also configured inside this Caddyfile.</p>



<h3 class="wp-block-heading">Execute the Migration</h3>



<p>Now it&#8217;s time to make the transition. Bring your webserver and DB down from your host server and start your docker configurations. If at any point in this step something goes wrong, you can revert to your existing host server setup by reversing the commands below (and in the reverse execution order):</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; title: ; notranslate">
# FYI if you do not stop Apache, you will get the following error:
#Error response from daemon: failed to set up container networking: driver failed programming external
#connectivity on endpoint frankenphp-wordpress-1
#(931a4e79170c448d3aca76617cc7be9847f227138f70a4ef085efea09e19eeb3): failed to bind host port for
#0.0.0.0:80:172.18.0.2:80/tcp: address already in use

# Also need to stop MariaDB, or else you may get corrupt data from multiple live services at the same time.
sudo systemctl stop apache2
sudo systemctl stop mariadb
docker compose up
</pre></div>


<p>Once the instances have started up fully, let&#8217;s go and make the change in MariaDB to allow both wordpress and phpmyadmin instance access. Below settings incorporate some wildcards in the docker network which can set both wp and phpmyadmin at the same time, but if you don&#8217;t use phpmyadmin you can just limit to the WP ip address only:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; title: ; notranslate">
docker exec -it ##DIR##-db-1 bash
mariadb -u root -p
# enter your root password

# replace each of the data with the items you configured in the compose.yaml
# 172.28.%.% is a wildcard match to all IP addresses in your docker bridge network.
GRANT ALL PRIVILEGES ON ##WORDPRESS_DB##.* TO &#039;##WORDPRESS_USER##&#039;@&#039;172.28.%.%&#039; IDENTIFIED BY &#039;##WORDPRESS_DB_PASSWORD##&#039;;
FLUSH PRIVILEGES;
</pre></div>


<p>Now your WordPress and PHPMyAdmin should be able to access your DB normally. However, you may need to wait a few minutes for Caddy to use LetsEncrypt to fetch a new certificate for you. You can use <code>docker logs ##DIR##-db-1 -f</code> to live tail your wordpress log to check on SSH certification creation/renewal progress. After a while you should be able to access your site from the public as normal.</p>



<h2 class="wp-block-heading">Other Notes</h2>



<p>Under the above setup, if you use <code>Site Kit by Google</code>, it will need to be reconfigured every time you create a new docker container for wp. This means there&#8217;s data used by Site Kit which resides outside of the <code>wp-content</code> directory which we bind to. Will update this guide once I figure out what else is necessary to bind to the docker containers.</p>



<h2 class="wp-block-heading">Additional Troubleshooting</h2>



<h3 class="wp-block-heading">PHPMyAdmin &#8211; mysqli_real_connect(): (HY000/2002): No such file or directory</h3>



<p>Change <code>$cfg['Servers'][$i]['host']</code> value to <code>127.0.0.1</code></p>



<h3 class="wp-block-heading">Unable to Access MySQL or MariaDB</h3>



<p>In <code>/etc/mysql/mariadb.conf.d/50-server.cnf</code>, change <code>bind-address</code> to <code>0.0.0.0</code></p>



<p></p>The post <a href="https://www.jiyuulife.net/dockering-and-migrating-from-apache2-to-frankenphp-caddy/">Unlocking Peak Performance: Migrating from Apache2 to FrankenPHP with Docker</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">704</post-id>	</item>
		<item>
		<title>Water Leak in Japanese Rental Apartment: Advice for Renters</title>
		<link>https://www.jiyuulife.net/water-leak-japanese-rental-apartment/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Wed, 22 Mar 2023 06:10:36 +0000</pubDate>
				<category><![CDATA[Personal Growth]]></category>
		<category><![CDATA[insurance]]></category>
		<category><![CDATA[japan]]></category>
		<category><![CDATA[rental]]></category>
		<category><![CDATA[rental apartment]]></category>
		<category><![CDATA[個人火災保険]]></category>
		<category><![CDATA[水漏れ]]></category>
		<category><![CDATA[漏水]]></category>
		<category><![CDATA[賃貸]]></category>
		<guid isPermaLink="false">https://www.jiyuulife.net/?p=546</guid>

					<description><![CDATA[<p>This article contains the long and arduous process of fixing the water leak caused by the upstairs tenant of my apartment complex. In a nutshell, a hole in the hot water pipe in the floor above my apartment room caused water damage to a portion of my room&#8217;s interior in addition to a few personal ... <a title="Water Leak in Japanese Rental Apartment: Advice for Renters" class="read-more" href="https://www.jiyuulife.net/water-leak-japanese-rental-apartment/" aria-label="Read more about Water Leak in Japanese Rental Apartment: Advice for Renters">Read more</a></p>
The post <a href="https://www.jiyuulife.net/water-leak-japanese-rental-apartment/">Water Leak in Japanese Rental Apartment: Advice for Renters</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></description>
										<content:encoded><![CDATA[<p>This article contains the long and arduous process of fixing the water leak caused by the upstairs tenant of my apartment complex. In a nutshell, a hole in the hot water pipe in the floor above my apartment room caused water damage to a portion of my room&#8217;s interior in addition to a few personal items. A claim was filed and covered by the management company&#8217;s corporate insurance which included compensation for personal item damage (<em>and hotel accomodation during water repairs</em>). As I was 0% at fault there was no cost to me out-of-pocket.</p>



<span id="more-546"></span>



<h2 class="wp-block-heading">Situation</h2>



<p>Below is a roughly visualized grouping of all stakeholders involved in this incident:</p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img data-recalc-dims="1" fetchpriority="high" decoding="async" width="1024" height="632" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/Apartment-Water-Leak-Stakeholders.png?resize=1024%2C632&#038;ssl=1" alt="" class="wp-image-557" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/Apartment-Water-Leak-Stakeholders.png?resize=1024%2C632&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/Apartment-Water-Leak-Stakeholders.png?resize=300%2C185&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/Apartment-Water-Leak-Stakeholders.png?resize=768%2C474&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/Apartment-Water-Leak-Stakeholders.png?resize=1536%2C948&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/Apartment-Water-Leak-Stakeholders.png?w=1822&amp;ssl=1 1822w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Stakeholders are roughly categorized as claimant/victim (green), liable/at-fault (yellow), and others (grey).</figcaption></figure></div>


<ul class="wp-block-list">
<li><strong>A</strong> : Myself, the claimant who will file a claim against the management company (E) for damages and compensation.</li>



<li><strong>B</strong> : My company with which the lease is contracted to (法人契約). In other words, I participate in &#8220;company housing&#8221;.</li>



<li><strong>C</strong> : The mandatory fire insurance coverage I signed upon leasing this property.</li>



<li><strong>D</strong> : Management company&#8217;s 24/7 support center.</li>



<li><strong>E</strong> : Management company. Legally responsible for reducing rent (or equivalent exchange) under <a href="https://www.japaneselawtranslation.go.jp/en/laws/view/3494#je_pt3ch2sc7sb2at11" target="_blank" rel="noopener" title="">Civil Law 611</a>.</li>



<li><strong>F</strong> : Corporate insurance of the management company (D). Compensates me (A) for personal property damage and accommodation during the repairs. Insures management company (D) for the necessary water leak repairs to the property.</li>



<li><strong>G</strong> : Water pipe maintenance dispatched by management company (D) to fix water leak.</li>



<li><strong>H</strong> : Inspection dispatched by management company (D) to assess property damage.</li>
</ul>



<h3 class="wp-block-heading">Background</h3>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img data-recalc-dims="1" decoding="async" width="768" height="1024" src="https://i0.wp.com/jiyuulife.net/wp-content/uploads/2022/11/pxl_20221015_0211151811081646127322780993-768x1024.jpg?resize=768%2C1024&#038;ssl=1" alt="" class="wp-image-548" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/pxl_20221015_0211151811081646127322780993.jpg?resize=768%2C1024&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/pxl_20221015_0211151811081646127322780993.jpg?resize=225%2C300&amp;ssl=1 225w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/pxl_20221015_0211151811081646127322780993.jpg?resize=1152%2C1536&amp;ssl=1 1152w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/pxl_20221015_0211151811081646127322780993.jpg?resize=1536%2C2048&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/pxl_20221015_0211151811081646127322780993.jpg?w=1920&amp;ssl=1 1920w" sizes="(max-width: 768px) 100vw, 768px" /></figure></div>


<ul class="wp-block-list">
<li>My apartment is 1DK and approximately 39 square meters.</li>



<li>The lease is not contracted to me, but to my company, thus a 法人契約.</li>



<li>Although the leak came from the upper floor tenant, they were not liable as the damages came due to an issue with the building&#8217;s water infrastructure.</li>



<li>I have fire insurance (火災保険) which actually covers many non-fire-related incidents, including the water leak in this article.</li>
</ul>



<h3 class="wp-block-heading">Compensation</h3>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img data-recalc-dims="1" decoding="async" width="768" height="1024" src="https://i0.wp.com/jiyuulife.net/wp-content/uploads/2022/11/pxl_20221017_0819424671099618129698839047-768x1024.jpg?resize=768%2C1024&#038;ssl=1" alt="" class="wp-image-549" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/pxl_20221017_0819424671099618129698839047.jpg?resize=768%2C1024&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/pxl_20221017_0819424671099618129698839047.jpg?resize=225%2C300&amp;ssl=1 225w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/pxl_20221017_0819424671099618129698839047.jpg?resize=1152%2C1536&amp;ssl=1 1152w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/pxl_20221017_0819424671099618129698839047.jpg?resize=1536%2C2048&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/pxl_20221017_0819424671099618129698839047.jpg?w=1920&amp;ssl=1 1920w" sizes="(max-width: 768px) 100vw, 768px" /><figcaption class="wp-element-caption">&#8220;Temporary&#8221; fix to funnel water leak to sink to prevent further damages</figcaption></figure></div>


<p>Since I was 0% at fault for this incident the apartment management company paid for all the repairs, including switching out the wallpaper/flooring/cabinets for new ones. There were several other costs and damages incurred which I will categorize into two items: personal item damages and others.</p>



<p>First, due to the water leakage several of my appliances suffered some damage. This included the Google Nest Hub which I placed on my kitchen countertop, and the microwave oven which is placed above my refridgerator. Water got into the wall plug where I had my Nest Hub plugged in, essentially shorting and breaking it. As for the microwave, while it still functions, water got inside of the electronic circuitry which can result in decreased performance. For these two appliances I was given 10,000JPY and 30,000JPY, respectively, with the logic that replacing these would cost roughly those amounts.</p>



<p>The remaining compensation is non-physical and comprises of the following: &#8220;apology money&#8221;, and accommodation compensation. The apology money of 30,000JPY was the amount given to me while I was inconvenienced as a result of this water leak. I want to note here that the original amount proposed to me was 20,000JPY but I was able to negotiate for a higher amount &#8211; my argument was that the costs for purchasing groceries and cooking by myself over two months would be 500JPY/day x 60 days = 30,000JPY. While this amount may sound small to many people, I had a feeling that they wouldn&#8217;t accept to pay me for any higher amount and I just wanted to have this issue resolved ASAP.</p>



<p>Next was the accommodation reimbursement, which the management company agreed to pay 8000JPY per day of repairs. As repairs spanned over 5 days (not counting the weekends when repairs were paused), this amounts comes out to be a total of 40,000JPY. While unfortunately hotel costs went over this amount, the remaining (~50000JPY) could be reimbursed by my personal fire insurance policy, meaning I essentially pay nothing out-of-pocket for staying at hotels which the repairs were underway.</p>



<p>In total, <strong>110,000JPY</strong> was reimbursed to me by the management company as a result of this incident. Separately, _____JPY was reimbursed by my personal fire insurance policy.</p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img data-recalc-dims="1" loading="lazy" decoding="async" width="768" height="1024" src="https://i0.wp.com/jiyuulife.net/wp-content/uploads/2022/11/pxl_20221019_005813042112220665572211400-768x1024.jpg?resize=768%2C1024&#038;ssl=1" alt="" class="wp-image-550" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/pxl_20221019_005813042112220665572211400.jpg?resize=768%2C1024&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/pxl_20221019_005813042112220665572211400.jpg?resize=225%2C300&amp;ssl=1 225w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/pxl_20221019_005813042112220665572211400.jpg?resize=1152%2C1536&amp;ssl=1 1152w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/pxl_20221019_005813042112220665572211400.jpg?resize=1536%2C2048&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2022/11/pxl_20221019_005813042112220665572211400.jpg?w=1920&amp;ssl=1 1920w" sizes="auto, (max-width: 768px) 100vw, 768px" /><figcaption class="wp-element-caption">Water leak in the corridor area. Cooler fills up after just a single night</figcaption></figure></div>


<h2 class="wp-block-heading">Timeline</h2>



<figure class="wp-block-table has-small-font-size"><table><thead><tr><th>Total # days</th><th>Date</th><th>Description</th><th>Action</th></tr></thead><tbody><tr><td>0</td><td>2022-10-11, ~20:00</td><td>First sign of water leak</td><td>Call rental apartment support desk to report water leak.</td></tr><tr><td>3</td><td>2022-10-14</td><td>Leak assessment</td><td>Water maintenance company arrives to assess leakage. Confirms hole in hot water pipe from above floor. Make temporary fix to minimize damage until actual repairs can be done.</td></tr><tr><td>6</td><td>2022-10-17</td><td>Temporary fix to room</td><td>Water leakage spreads to entire kitchen cupboard. Also water leaking from ceiling of corridor (玄関) area. Same water maintenance company comes to install vinyl bags to funnel water leaking from cupboard to the sink. Receive water-absorbing sheets for corridor leak.</td></tr><tr><td>9</td><td>2022-10-20</td><td>Fix to upper floor water leak</td><td>Water leak fixed from upper floor. Damage assessment to apartment needs to wait until remaining water has finished leaking.</td></tr><tr><td>13</td><td>2022-10-24</td><td>Water damage inspection</td><td>Inspection came to assess water damage. In short:<br>1) ceiling wallpaper replacement for living room, corridor (玄関), and utility room&#8217;s (脱衣所)<br>2) Full replacement of kitchen cupboards<br>3) Full replacement of corridor (玄関) flooring<br>4) Wooden board replacement for corridor (玄関)&#8217;s storage space<br>5) Replacement for molded wooden scaffolding (壁クロス) above ceiling</td></tr><tr><td>23</td><td>2022-11-03</td><td>Room damage report</td><td>Received draft of room damage report from apartment management company. There is not sufficient details on it for the document to have any value.</td></tr><tr><td>36</td><td>2022-11-16</td><td>Scheduling for room repairs</td><td>Gave the repair company a list of dates which I am available for them to come and repair my room (Repairs must be done while I am present).</td></tr><tr><td>37</td><td>2022-11-17</td><td>Updated room damage report</td><td>Received the updated room damage report. Includes which parts of the room needs repairs with visuals. This report will be used as evidence when claiming compensation from my fire insurance.</td></tr><tr><td>38</td><td>2022-11-18</td><td>Flooring sample taken by repair company</td><td>Repair company came to collect sample of flooring so that color/material can be prepared by flooring company.</td></tr><tr><td>46</td><td>2022-11-26</td><td>Repair materials ordered and finalized</td><td>Received message from repair company that room repair materials have been ordered.</td></tr><tr><td>49</td><td>2022-11-29</td><td>Repair dates finalized</td><td>Room repair dates finalized (12/8 ~ 12/14). No work will be done on the weekends.</td></tr><tr><td>55</td><td>2022-12-05</td><td>Contact personal fire insurance + management company + complaint</td><td>1) Called fire insurance company to discuss temporary lodging allowance. Fire insurance is surprised that management company insurance does not provide lodging allowance.<br>2) I called management company to discuss claiming personal + lodging costs.<br>3) Got fed up with management company and filed formal complaint.</td></tr><tr><td>58</td><td>2022-12-08</td><td>First day of room repairs</td><td></td></tr><tr><td>63</td><td>2022-12-13</td><td>Last day of room repairs</td><td></td></tr><tr><td>120</td><td>2023-02-08</td><td>Reimbursement Details Finalized</td><td>See &#8220;Compensation&#8221; section above for details.</td></tr><tr><td>121</td><td>2023-02-09</td><td>Submitted documents to Personal Fire Insurance</td><td></td></tr><tr><td>140</td><td>2023-03-01</td><td>Receive reimbursement from Personal Fire Insurance</td><td></td></tr><tr><td>154</td><td>2023-03-15</td><td>Receive reimbursement from management company</td><td>Needed to remind the management company to process the bank transfer payment&#8230;..</td></tr></tbody></table></figure>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img data-recalc-dims="1" loading="lazy" decoding="async" width="1024" height="768" src="https://i0.wp.com/jiyuulife.net/wp-content/uploads/2023/03/pxl_20221208_0216006174215566356572123027-1024x768.jpg?resize=1024%2C768&#038;ssl=1" alt="" class="wp-image-639" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/03/pxl_20221208_0216006174215566356572123027.jpg?resize=1024%2C768&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/03/pxl_20221208_0216006174215566356572123027.jpg?resize=300%2C225&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/03/pxl_20221208_0216006174215566356572123027.jpg?resize=768%2C576&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/03/pxl_20221208_0216006174215566356572123027.jpg?resize=1536%2C1152&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/03/pxl_20221208_0216006174215566356572123027.jpg?resize=2048%2C1536&amp;ssl=1 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">The mold that grew on the inside of the kitchen walls after removing cabinets</figcaption></figure></div>


<h2 class="wp-block-heading">5 Must-Do Items</h2>



<h3 class="wp-block-heading">Understand your rights as a renter</h3>



<p>First, check some materials on renter&#8217;s rights and basic agreements that are made between the owner and the renter. <a href="https://www.sasn.jp/pdf/hi_english.pdf" target="_blank" rel="noopener" title="">Here&#8217;s</a> a good English guide to get started. If incidents occur regardless of whether the fault if your&#8217;s or not, contact your personal property (most likely fire but may also contain others like earthquake, etc) insurance company anyway. Depending on the situation you may be able to use your personal insurance to either get money back or pay less in liability damages.</p>



<p>If the damages get to a point where it&#8217;s impossible for the property  to provide a reasonable level of living condition, then you may be able to threaten your property owner to reduce your rent as pursuant of the <a href="https://www.japaneselawtranslation.go.jp/en/laws/view/3494#je_pt3ch2sc7sb2at11" target="_blank" rel="noopener" title="">Amended Civil Code 611</a>.</p>



<p>Lastly, be careful when you decide to move out of the property and the inspectors mark the areas fixed as needing replacement. It&#8217;s possible that the repairs done for the incident was shoddy and that there are still some issues in some hidden areas. If you feel that the inspection was conducted unfairly, show evidence that repairs have been done on these areas and that any damages were  a result of daily wear-and-tear (which by <em>law</em> cannot be deducted from your deposit).</p>



<h3 class="wp-block-heading">Push and complain to the management company often</h3>



<p>Honestly, the old man who was in charge of my case was probably coasting through the rest of his employment years until retirement. Throughout this entire incident I had to constantly call and ask for updates and remind him to do his own job. It was the worst customer service experience I ever had to witness and I would file a 1/10 feedback to the management company if there is an option to do so.</p>



<p>While I had a terrible experience with this particular management company, in general it&#8217;s always a good idea to call and complain to them as often as you can or else they will just proceed with the minimum amount they can get away with. Complaining to them often helps to communicate the urgency in your incident and speed up the process, and you may even get a higher amount of compensation as a result (see &#8220;Compensation&#8221; section above where I got an extra 10000JPY just for negotiating with them).</p>



<h3 class="wp-block-heading">Take and request evidence of EVERYTHING</h3>



<p>Take pictures and videos of the entire incident as it unfolds, and record conversations between all the involved parties. In this case my personal fire insurance company was very helpful and cooperative in getting money from the management company, but it&#8217;s possible that relevant parties do not honor the agreements made during phone call, in which having a recording of the conversation can be very helpful (Aside: you are <a href="https://cdn2.hubspot.net/hubfs/241981/Call_Recording_Laws_Around_the_World_eBook_New2018_Final.pdf" target="_blank" rel="noopener" title="">allowed to record conversations</a> without the other party&#8217;s consent as long as you don&#8217;t broadcast it to a wider audience). Obviously having a written letter of the negotiation agreements mailed to you is highly recommended to avoid confusion &#8211; while management companies may not deal with email communication, they normally send you letters to confirm details regarding the incident.</p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img data-recalc-dims="1" loading="lazy" decoding="async" width="1024" height="768" src="https://i0.wp.com/jiyuulife.net/wp-content/uploads/2023/03/pxl_20221208_0055480795714746587761708484-1024x768.jpg?resize=1024%2C768&#038;ssl=1" alt="" class="wp-image-637" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/03/pxl_20221208_0055480795714746587761708484.jpg?resize=1024%2C768&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/03/pxl_20221208_0055480795714746587761708484.jpg?resize=300%2C225&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/03/pxl_20221208_0055480795714746587761708484.jpg?resize=768%2C576&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/03/pxl_20221208_0055480795714746587761708484.jpg?resize=1536%2C1152&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/03/pxl_20221208_0055480795714746587761708484.jpg?resize=2048%2C1536&amp;ssl=1 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Mold also grew inside of the storage space beside the corridors</figcaption></figure></div>


<h2 class="wp-block-heading">Summary</h2>



<p>This entire ordeal took 5 months from start until receiving my compensation. The process may have taken slightly longer than necessary due to end of year/beginning of year holidays, but a lot of the holdup was due to the management company not taking my case seriously. I&#8217;m also glad that I was able to use my personal fire insurance and felt that the premiums I had to pay for more than four years finally paid off. Nevertheless, I was fully compensated for my troubles though I hope to never have to go through this kind of situation again&#8230;!</p>The post <a href="https://www.jiyuulife.net/water-leak-japanese-rental-apartment/">Water Leak in Japanese Rental Apartment: Advice for Renters</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">546</post-id>	</item>
		<item>
		<title>Using the Evercross Electric Kickboard EV08E in Japan</title>
		<link>https://www.jiyuulife.net/a-comprehensive-review-of-the-evercross-electric-kickboard-ev08e/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sun, 05 Feb 2023 19:42:48 +0000</pubDate>
				<category><![CDATA[Reviews]]></category>
		<category><![CDATA[amazon]]></category>
		<category><![CDATA[e-scooter]]></category>
		<category><![CDATA[electric kickboard]]></category>
		<category><![CDATA[evercross]]></category>
		<category><![CDATA[kickboard]]></category>
		<guid isPermaLink="false">https://www.jiyuulife.net/?p=572</guid>

					<description><![CDATA[<p>Are you tired of the daily city traffic and looking for an eco-friendly and convenient way to get around the city? The Evercross Electric Kickboard might be just what you need. In this review, we&#8217;ll dive into the specs, benefits, and drawbacks of the Evercross Electric Kickboard. We&#8217;ll also cover the rules and regulations of ... <a title="Using the Evercross Electric Kickboard EV08E in Japan" class="read-more" href="https://www.jiyuulife.net/a-comprehensive-review-of-the-evercross-electric-kickboard-ev08e/" aria-label="Read more about Using the Evercross Electric Kickboard EV08E in Japan">Read more</a></p>
The post <a href="https://www.jiyuulife.net/a-comprehensive-review-of-the-evercross-electric-kickboard-ev08e/">Using the Evercross Electric Kickboard EV08E in Japan</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></description>
										<content:encoded><![CDATA[<div class="wp-block-image">
<figure class="aligncenter size-medium"><img data-recalc-dims="1" loading="lazy" decoding="async" width="277" height="300" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/02/Evercross_EV08E.png?resize=277%2C300&#038;ssl=1" alt="" class="wp-image-573" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/02/Evercross_EV08E.png?resize=277%2C300&amp;ssl=1 277w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/02/Evercross_EV08E.png?resize=945%2C1024&amp;ssl=1 945w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/02/Evercross_EV08E.png?resize=768%2C832&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/02/Evercross_EV08E.png?w=1246&amp;ssl=1 1246w" sizes="auto, (max-width: 277px) 100vw, 277px" /></figure></div>


<p>Are you tired of the daily city traffic and looking for an eco-friendly and convenient way to get around the city? The Evercross Electric Kickboard might be just what you need. In this review, we&#8217;ll dive into the specs, benefits, and drawbacks of the Evercross Electric Kickboard. We&#8217;ll also cover the rules and regulations of electric scooter usage in Japan, how to register your electric scooter, and what to keep in mind while riding one.</p>



<span id="more-572"></span>



<figure class="wp-block-embed aligncenter is-type-rich is-provider-auto-amazon-links wp-block-embed-auto-amazon-links"><div class="wp-block-embed__wrapper">
<iframe title="Amazon Product" src='https://jiyuulife.net/amazon-auto-links/embed/?embed=amazon-auto-links&#038;uri=https%3A%2F%2Fwww.amazon.co.jp%2Fgp%2Fproduct%2FB07QKQHLQ3%2Fref%3Dppx_yo_dt_b_asin_title_o04_s00%3Fie%3DUTF8%26psc%3D1#secret=91b5f65052' width='600' height='200' frameborder='0' scrolling='no' marginwidth='0' marginheight='0' class='wp-embedded-content aal-embed' data-secret='91b5f65052'></iframe>
</div></figure>



<h2 class="wp-block-heading">Specs</h2>



<figure class="wp-block-table"><table><tbody><tr><td>Maximum Speed</td><td>30km/hr</td></tr><tr><td>Range</td><td>~25km</td></tr><tr><td>Weight</td><td>12kg</td></tr><tr><td>Wheel Size</td><td>8in</td></tr><tr><td>Storage Size</td><td>19cm width, 94cm length, 37cm height</td></tr><tr><td>Extended Size</td><td>104cm length, 94-114cm height</td></tr><tr><td>Price</td><td>51000JPY</td></tr></tbody></table></figure>



<h2 class="wp-block-heading">Advantages</h2>



<ul class="wp-block-list">
<li>Cost-saving and eco-friendly mode of transportation &#8211; you can save money from riding the train/bus and may even save time depending on where it is you want to go.</li>



<li>25km distance gets you far! For example, the below is a picture showing a 10km radius from Shibuya Station. You can go as far as Ueno or cross the Tamagawa river into Kanagawa Prefecture:</li>
</ul>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img data-recalc-dims="1" loading="lazy" decoding="async" width="474" height="474" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/02/calcmaps-map-radius-191419-05022023-edited-1.png?resize=474%2C474&#038;ssl=1" alt="" class="wp-image-576" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/02/calcmaps-map-radius-191419-05022023-edited-1.png?w=474&amp;ssl=1 474w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/02/calcmaps-map-radius-191419-05022023-edited-1.png?resize=300%2C300&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2023/02/calcmaps-map-radius-191419-05022023-edited-1.png?resize=150%2C150&amp;ssl=1 150w" sizes="auto, (max-width: 474px) 100vw, 474px" /></figure></div>


<ul class="wp-block-list">
<li>Speed can go up to 30km/hr, but can also be a disadvantage (see rules and regulations further down the article).</li>



<li>Lightweight and easy to carry &#8211; comes with a bag you can put the kickboard in to carry with you onto the train/bus.</li>
</ul>



<h2 class="wp-block-heading">Pitfalls</h2>



<ul class="wp-block-list">
<li>Be careful of the brake in steep downhill &#8211; though this scooter&#8217;s brakes are regenerative brakes, it is not powerful enough to stop you completely in a steep decline. It is advised to control your speed and use both the EBS and foot brake on the back of the scooter in such situations.</li>



<li>It can take a while to charge &#8211; I&#8217;ve never charged from 0% battery before but I remember it taking 4-6 hours to charge fully.</li>



<li>Not to be used in substantially rainy conditions &#8211; it can take a light drizzle but water is prone to run into the circuits and battery. I&#8217;ve had to call customer support to send a new battery once after using it in heavy rain!</li>
</ul>



<h2 class="wp-block-heading">Rules and Regulations in Japan</h2>



<p>In Japan, electric scooters like the Evercross Electric Kickboard are becoming increasingly popular due to their eco-friendliness and convenience. However, it&#8217;s important to keep in mind the rules and regulations of using electric scooters on Japanese roads. According to the Japanese government, electric scooters can only be used on roads with a speed limit of 30 km/h or less, and riders must have a valid driver&#8217;s license when using faster electric scooters such as this one.</p>



<p>With regards to whether this scooter can be used on pedestrian walkways, the official answer is NO. However, at its slowest speed setting the electric kickboard runs up to 15km/hr, which is an acceptable speed to use on pedestrian walkways. It is not clear if regulations look at a kickboard&#8217;s maximum speed or the speed the rider happens to be using at that time, so proceed at your own risk.</p>



<p>Another thing you will need to do is to register your electric kickboard at your local ward office. You will be required to register the make/model, when you purchased it, serial number, and the potential maximum speed it can run. In exchange you will receive a license plate which you will need to affix onto your scooter. <strong><em>NOTE: This kickboard wasn&#8217;t designed to have a license plate attached to it, so you will need to DIY it!!</em></strong></p>



<p>Lastly, it is necessary for you to purchase liability insurance (自賠責保険) when operating your electric kickboard. Insurance provider rates differ but not by a significant amount. For electric kickboards you will need to purchase the type used for e-scooters (up to 125cc &#8220;原付&#8221;). For example, <a href="https://www.sompo-japan.co.jp/kinsurance/automobile/jibaiseki/pop/" target="_blank" rel="noopener" title="">Sompo Japan</a> charges 8850JPY for two years of insurance, but it is up to you how long you would like to use the scooter. Personally I imagine the lifetime of an electric kickboard to be around two years. Technically you can &#8220;transfer&#8221; the insurance to a new electric kickboard but it is up to you to decide how long you plan to use it.</p>



<h2 class="wp-block-heading">Personal Anecdotes</h2>



<p>I have been using the Evercross Electric Kickboard for about a year now, and I am generally satisfied with my purchase. My battery broke down from heavy rain once but it was within the 6-month warranty so I had them ship another battery to me. Replacing the battery wasn&#8217;t trivial but I had the tools to get it done. Not only is it an eco-friendly mode of transportation, but it&#8217;s also incredibly convenient and easy to use in Tokyo. There are some areas in Tokyo that aren&#8217;t quite convenient to get to by train &#8211; the electric kickboard is absolutely perfect in these situations.</p>



<figure class="wp-block-embed aligncenter is-type-rich is-provider-auto-amazon-links wp-block-embed-auto-amazon-links"><div class="wp-block-embed__wrapper">
<iframe title="Amazon Product" src='https://jiyuulife.net/amazon-auto-links/embed/?embed=amazon-auto-links&#038;uri=https%3A%2F%2Fwww.amazon.co.jp%2Fgp%2Fproduct%2FB07QKQHLQ3%2Fref%3Dppx_yo_dt_b_asin_title_o04_s00%3Fie%3DUTF8%26psc%3D1#secret=91b5f65052' width='600' height='200' frameborder='0' scrolling='no' marginwidth='0' marginheight='0' class='wp-embedded-content aal-embed' data-secret='91b5f65052'></iframe>
</div></figure>



<h2 class="wp-block-heading">Conclusion</h2>



<p>In conclusion, if you&#8217;re looking for an eco-friendly and convenient way to get around the city, the Evercross Electric Kickboard is a great option. Keep in mind the rules and regulations of electric scooter usage in Japan, and consider your personal needs and preferences before making a purchase. You can easily purchase the Evercross Electric Kickboard <a href="https://amzn.to/3HVNQU3" target="_blank" rel="noopener" title="">here</a> on Amazon (clicking on these links help to support me and this website.. thank you so much!!).</p>The post <a href="https://www.jiyuulife.net/a-comprehensive-review-of-the-evercross-electric-kickboard-ev08e/">Using the Evercross Electric Kickboard EV08E in Japan</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">572</post-id>	</item>
		<item>
		<title>Japan Highly Skilled Professional to PR Process and Necessary Documents</title>
		<link>https://www.jiyuulife.net/hsp-to-japan-permanent-residence/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Mon, 08 Feb 2021 10:40:31 +0000</pubDate>
				<category><![CDATA[How-To]]></category>
		<category><![CDATA[HSFP]]></category>
		<category><![CDATA[HSP]]></category>
		<category><![CDATA[Immigration]]></category>
		<category><![CDATA[japan]]></category>
		<category><![CDATA[Permanent Residence]]></category>
		<category><![CDATA[Visa]]></category>
		<guid isPermaLink="false">https://www.jiyuulife.net/?p=532</guid>

					<description><![CDATA[<p>Edit (October 12, 2022) : Fixed typos. Added some small details in required documents section. Edit (August 4, 2021) : I have received my PR card. Updating documents required and all sections after and including &#8220;During Processing&#8221;. Edit (April 14, 2021) : Added additional documents required for PR submission (self, proxy/agent). Filled in &#8220;Submitting Your ... <a title="Japan Highly Skilled Professional to PR Process and Necessary Documents" class="read-more" href="https://www.jiyuulife.net/hsp-to-japan-permanent-residence/" aria-label="Read more about Japan Highly Skilled Professional to PR Process and Necessary Documents">Read more</a></p>
The post <a href="https://www.jiyuulife.net/hsp-to-japan-permanent-residence/">Japan Highly Skilled Professional to PR Process and Necessary Documents</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></description>
										<content:encoded><![CDATA[<p><strong>Edit (October 12, 2022)</strong> : Fixed typos. Added some small details in required documents section. </p>



<p><strong>Edit (August 4, 2021)</strong> : I have received my PR card. Updating documents required and all sections after and including &#8220;During Processing&#8221;. </p>



<p><strong>Edit (April 14, 2021)</strong> : Added additional documents required for PR submission (self, proxy/agent). Filled in &#8220;Submitting Your Documents&#8221; section. Fixed typos. My PR application is currently still being processed.</p>



<p><em><em>Legal Disclaimer : The contents of this article do not constitute legal advice, are not intended to be a substitute for legal advice and should not be relied upon as such. You should seek legal advice or other professional advice in relation to any particular matters you or your organization may have.</em></em></p>



<p>This guide outlines my experiences transitioning from an HSP (HSFP) Visa to Japan&#8217;s permanent residency. I have lived in Tokyo, Japan since March 2014, starting out with an Engineer Working Visa before transitioning to HSP Visa (90+ points) in April 2019. One who maintains their 80+ points after a year of holding the HSP visa will be given the opportunity to apply for Japan&#8217;s permanent residency. </p>



<p>The permanent residence application process may vary from individual to individual, so please do go through the &#8220;Before You Read Further&#8221; section to understand my situation and background before going through the prepared documents and process. However, one thing you should know before this is that I worked with Deloitte to process my application, and there may be documents which may NOT actually be necessary but were provided for the sake of fortifying my application or just as a just-in-case. The permanent residency application requires so much of your personal information it will be like taking off all your clothes and showing them your bare naked body&#8230; the government will give a VERY thorough screening of your situation and background so it is best to provide them with as much transparency and info as possible to reduce delays to your application.</p>



<p>That&#8217;s it for the disclaimer&#8230; so let&#8217;s get right into it!</p>



<span id="more-532"></span>



<h2 class="wp-block-heading">Before You Read Further</h2>



<p>Below are some additional information and assumptions I am making for the sake of letting the reader understand my situation. Like I mentioned in the preface, my situation may not be applicable to everyone.</p>



<ul class="wp-block-list">
<li>I consulted Deloitte for my PR application.</li>



<li>I am an American citizen.</li>



<li>I took the HSP -&gt; PR route instead of the normal method of 10+ years living in Japan.</li>



<li>I had 80+ points the year I obtained my HSP plus the year afterwards, qualifying me to apply for PR status.</li>



<li>My Reason Letter (more details below) was translated with Deloitte&#8217;s help.</li>



<li>My guarantor is a close friend and is Japanese (FYI you may choose to have another PR individual be your guarantor).</li>
</ul>



<p>Please refer to this article plus others around the web for a more complete grasp of the PR process for your specific situation.</p>



<h2 class="wp-block-heading">Preparation</h2>



<h3 class="wp-block-heading">Required Documents (Self)</h3>



<p>For the sake of being concise, this will be in list-form with additional points underneath each for clarification purposes. If I have time I will do my best to elaborate further.</p>



<ul class="wp-block-list">
<li>Passport (Copy)</li>



<li>Residence Card (Copy)</li>



<li>Portrait Photo &#8211; <em>Picture Booths</em>
<ul class="wp-block-list">
<li>Taken within three months against white background. Other requirements same as Residence Card photo.</li>
</ul>
</li>



<li><a href="http://www.moj.go.jp/isa/publications/materials/newimmiact_3_evaluate_index.html" target="_blank" rel="noreferrer noopener">Point Calculation Table</a> for Highly Skilled Professional Status (Previous Year + Current Year)
<ul class="wp-block-list">
<li>One table for each year (so two tables in total)</li>



<li>Remember to sign both documents</li>
</ul>
</li>



<li>Certificate of Residence (住民票 / Juminhyo) &#8211; <em>Ward Office</em>
<ul class="wp-block-list">
<li>Taken within three months. Must NOT contain personal numbers (MyNumber, Residence Card Number, etc)</li>



<li>Nationality, Visa status, etc can be included</li>
</ul>
</li>



<li>Employment Certificate
<ul class="wp-block-list">
<li>Should contain company name, start of employment date, current salary + bonus, and position.</li>
</ul>
</li>



<li>Tax Withholding Statement (源泉徴収書 / Gensen Choshu Sho)
<ul class="wp-block-list">
<li>Previous year&#8217;s. This was an additional document Immigration requested after my PR application was submitted.</li>
</ul>
</li>



<li>Residence Tax Certificate (納税証明書 / Nozei Shomeisho) &#8211; <em>Ward Office</em>
<ul class="wp-block-list">
<li>Request for the most recent document on file</li>
</ul>
</li>



<li>Residence Tax Certificate (課税納税証明書 / Kazei Nozei Shomeisho) &#8211; <em>Ward Office</em>
<ul class="wp-block-list">
<li>Request for the most recent document on file</li>



<li>Note that this will look similar to Nozei Shomeisho except with a few unmasked numbers.</li>
</ul>
</li>



<li>Certificate of Income Tax Payment (<a href="https://www.nta.go.jp/taxes/nozei/nozei-shomei/01.htm" target="_blank" rel="noreferrer noopener">国税納税証明書 その他３</a> &#8211; Kokuzei Nozei Shomeisho Type 03) &#8211; <em>Tax Office</em>
<ul class="wp-block-list">
<li>Note that you will need to specify WHICH categories to show. In the request form, fill in the following (manually write it if not included as an option):
<ul class="wp-block-list">
<li>源泉所得税及び復興特別所得税</li>



<li>申告所得税及び復興特別所得税</li>



<li>消費税及び地方消費税</li>



<li>相続税</li>



<li>贈与税</li>
</ul>
</li>



<li>This document is proof that you don&#8217;t have any missing/unpaid taxes. If there is a section where it states you have unpaid taxes, you would have a problem 😐</li>
</ul>
</li>



<li>Monthly Pension Record (各月の年金記録 / Kakutsuki no Nenkin Kiroku) &#8211; <em>Pension Office</em>
<ul class="wp-block-list">
<li>Apparently Deloitte wanted me to retrieve this information from the online &#8220;<a href="https://www.nenkin.go.jp/index.html" target="_blank" rel="noreferrer noopener">Nenkin Net</a>&#8221; site. You may need to visit the Pension Office in your ward to obtain a registration number to make your online account process smoother.</li>
</ul>
</li>



<li>Bank Statement(s)
<ul class="wp-block-list">
<li>Bank name, account holder name, current balance, and timestamp needs to be visible. Apparently online screenshots containing all the info is OK.</li>
</ul>
</li>



<li>Other documents indicating financial assets, properties in Japan</li>



<li>Letter of Reason
<ul class="wp-block-list">
<li>This needs to be in JAPANESE. Legal services can help with translation (for a fee)</li>



<li>Remember to sign the document. I&#8217;ve signed mine after the header and before the introduction.</li>



<li>Essentially, should contain your life before Japan, experiences in Japan, future plans, and why you want PR.</li>



<li>Wanting to purchase and own property in Japan is a VALID reason for applying for PR status.</li>
</ul>
</li>
</ul>



<h3 class="wp-block-heading">Required Documents (Guarantor)</h3>



<p>Please reach out to your potential guarantor and have him/her prepare the documents while you prepare your&#8217;s. Both your&#8217;s and guarantor&#8217;s documents are to be submitted together.</p>



<ul class="wp-block-list">
<li>[If Necessary] Guarantor &#8211; Permanent Residence card (Copy)
<ul class="wp-block-list">
<li>Only if your guarantor is also PR.</li>
</ul>
</li>



<li>Guarantor &#8211; Certificate of Residence (住民票 / Juminhyo)
<ul class="wp-block-list">
<li>Taken within three months. Must NOT contain personal numbers (MyNumber, Residence Card Number, etc)</li>
</ul>
</li>



<li>Guarantor &#8211; Employment Certificate
<ul class="wp-block-list">
<li>Should contain company name, start of employment date, current salary + bonus, and position.</li>
</ul>
</li>



<li>Guarantor &#8211; Residence Tax Certificate (納税証明書 / Nozei Shomeisho)
<ul class="wp-block-list">
<li>Request for the most recent document on file.</li>
</ul>
</li>



<li>Guarantor &#8211; Residence Tax Certificate (課税納税証明書 / Kazei Nozei Shomeisho)
<ul class="wp-block-list">
<li>Request for the most recent document on file.</li>



<li>Note that this will look similar to Nozei Shomeisho except with a few unmasked numbers.</li>
</ul>
</li>



<li>Guarantor &#8211; <a href="http://www.moj.go.jp/content/000007419.pdf" target="_blank" rel="noreferrer noopener">Letter of Guarantee</a> (<a href="http://www.moj.go.jp/content/000007381.pdf" target="_blank" rel="noreferrer noopener">身元保証書</a>)
<ul class="wp-block-list">
<li>Affix seal if Japanese, or sign if PR holder.</li>
</ul>
</li>
</ul>



<h3 class="wp-block-heading">Required Documents (Proxy/Agent)</h3>



<p>The following are required when using a proxy/agent who will submit the application in your stead. Of course, the proxy or agent should provide these documents for you to sign:</p>



<ul class="wp-block-list">
<li>Proxy/Agent Request Form (依頼書)</li>



<li>Letter of Power (委任状)</li>
</ul>



<h2 class="wp-block-heading">Submitting Your Documents</h2>



<p>If you are applying for PR by yourself without using a proxy, once you&#8217;ve collected everything from the above it&#8217;s time to prepare for submitting the document. You&#8217;ll need to fill out additional forms outlined below.</p>



<ul class="wp-block-list">
<li><a href="http://www.moj.go.jp/isa/content/930002835.pdf" target="_blank" rel="noreferrer noopener">Application for Permanent Residence</a> (永住許可申請書)
<ul class="wp-block-list">
<li>Remember to glue your portrait photo to top-left of page 1 and sign on page 2.</li>



<li>This should be filled out in JAPANESE, so if you have trouble contact your friendly Japanese-fluent friend for assistance.</li>
</ul>
</li>



<li><a href="http://www.moj.go.jp/isa/content/930002847.pdf" target="_blank" rel="noreferrer noopener">Certificate For Payment of Fee</a> (手数料納付書)
<ul class="wp-block-list">
<li>8000JPY</li>
</ul>
</li>
</ul>



<p>Bring all of the above and your actual passport and residence card (NOT copies) with you to the <a href="http://www.moj.go.jp/isa/about/organization/index.html" target="_blank" rel="noreferrer noopener">Immigration Services Agency</a> or <a href="http://www.moj.go.jp/isa/consultation/center/index.html" target="_blank" rel="noreferrer noopener">Foreign Resident Information Center</a> for submission. Your passport and residence card should be returned to you immediately after verification. </p>



<h2 class="wp-block-heading">During Processing</h2>



<p>Once your documents have been submitted it is just a matter of waiting. However, there may be cases where Immigration will ask for additional documents. In my particular case, Immigration asked for my previous year&#8217;s tax withholding statement. </p>



<h2 class="wp-block-heading">Obtaining Your PR Card</h2>



<p>You will receive a notification from your proxy/agency or directly from Immigration if you are approved/rejected the PR.</p>



<p>If using a proxy/agency, mail your passport and current residence card to them and they will retrieve and mail it back to you along with your new permanent residence card. If you are applying by yourself, you may go to Immigration with your passport and current residence card to retrieve your new PR card. </p>



<h2 class="wp-block-heading">Final Thoughts</h2>



<p>Below is the complete timeline of my PR application:</p>



<figure class="wp-block-table"><table><tbody><tr><td>2021-10-21</td><td>First contact from Deloitte to start PR application.</td></tr><tr><td>2022-02-19</td><td>All documents submitted to Deloitte, including those which my signatures were required. <br>(I procrastinated a bit due to end-of-year/new year reasons..)</td></tr><tr><td>2022-02-25</td><td>Deloitte submitted my PR application to immigration.</td></tr><tr><td>2022-04-27</td><td>Immigration asks for additional documentation (previous year&#8217;s tax withholding statement).<br>Provided digital copy of it to Deloitte on the same day.</td></tr><tr><td>2022-07-16</td><td>PR application approved. Mailed my passport and current Residence Card to Deloitte<br>so that they can retrieve the new Residence card for me.</td></tr><tr><td>2022-07-22</td><td>Deloitte mailed all documents (passport, old Residence Card, new PR card) to me. Fin.</td></tr></tbody></table></figure>



<p>Excluding the time it takes to prepare the PR application, it only took about <em>five months from submission to approval</em>. From other sources it normally takes longer, but I heard from another coworker that they also obtained their PR approval within the same amount of time. Note that many factors (individual qualifications, Covid, etc) may be factored in how long it takes for your own PR to be approved, but expect anywhere between 5 &#8211; 12 months for processing.</p>



<p>When you have PR, new options become available for you. Below are some potential perks you are now able to enjoy:</p>



<ul class="wp-block-list">
<li>While your visa is active indefinitely (no time limit), you do need to renew your card every seven years. More info <a href="https://eng.visa-immi.com/list/permanent/" target="_blank" rel="noreferrer noopener">here</a>.</li>



<li>Without PR banks will likely require you to pay a down payment for housing loans (approximately 10-30%). This becomes 0 if you have PR. In some cases you may negotiate 0% down payment with an HSP visa.</li>



<li>You may start your own business. It may be in any form (sole proprietorship, company, etc).</li>



<li>You may continue to reside in Japan even without a job.</li>



<li>As a <strong>disadvantage</strong>, you will now be <strong>taxed on your worldwide income</strong>. More info <a href="https://home.kpmg/xx/en/home/insights/2015/08/japan-thinking-beyond-borders.html" target="_blank" rel="noreferrer noopener">here</a>.</li>
</ul>



<p><em>Legal Disclaimer : The contents of this article do not constitute legal advice, are not intended to be a substitute for legal advice and should not be relied upon as such. You should seek legal advice or other professional advice in relation to any particular matters you or your organisation may have.</em></p>The post <a href="https://www.jiyuulife.net/hsp-to-japan-permanent-residence/">Japan Highly Skilled Professional to PR Process and Necessary Documents</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">532</post-id>	</item>
		<item>
		<title>Google Cloud CDN for GCP WordPress</title>
		<link>https://www.jiyuulife.net/google-cloud-cdn-for-gcp-wordpress/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sun, 18 Oct 2020 06:44:41 +0000</pubDate>
				<category><![CDATA[Site]]></category>
		<category><![CDATA[Cache]]></category>
		<category><![CDATA[CDN]]></category>
		<category><![CDATA[Google Cloud]]></category>
		<category><![CDATA[Google Cloud CDN]]></category>
		<category><![CDATA[Google Cloud Platform]]></category>
		<category><![CDATA[Health Check]]></category>
		<category><![CDATA[HTTPS]]></category>
		<category><![CDATA[Load Balancer]]></category>
		<category><![CDATA[VM Instance]]></category>
		<guid isPermaLink="false">https://www.jiyuulife.net/?p=508</guid>

					<description><![CDATA[<p>The more (concurrent) traffic a website receives, the more important it is for its contents to be hosted on a content delivery network (CDN). By having your site resources spread out across many servers across many regions around the world, it will take much less time (in terms of &#8220;hops&#8221;, or jumps from server to ... <a title="Google Cloud CDN for GCP WordPress" class="read-more" href="https://www.jiyuulife.net/google-cloud-cdn-for-gcp-wordpress/" aria-label="Read more about Google Cloud CDN for GCP WordPress">Read more</a></p>
The post <a href="https://www.jiyuulife.net/google-cloud-cdn-for-gcp-wordpress/">Google Cloud CDN for GCP WordPress</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></description>
										<content:encoded><![CDATA[<p>The more (concurrent) traffic a website receives, the more important it is for its contents to be hosted on a content delivery network (CDN). By having your site resources spread out across many servers across many regions around the world, it will take much less time (in terms of &#8220;hops&#8221;, or jumps from server to server a request needs to make) to fetch the site&#8217;s contents. </p>



<p>One of Google Cloud&#8217;s less-known features is its <a href="https://cloud.google.com/cdn" target="_blank" rel="noreferrer noopener">Cloud CDN</a> which leverages Google&#8217;s global network of data centers, servers, and ISP integration to deliver content to the end user in a quick manner. Its efficiency is further increased when coupled or used with other services in Google and Google Cloud, such as Google Domains, Google DNS, and Google Compute Instances. Since 2018, this site is hosted using Google&#8217;s Click-to-Deploy WordPress deployment (<a href="https://www.jiyuulife.net/click-to-deploy-wordpress-google-cloud/" target="_blank" rel="noreferrer noopener" title="How To Deploy WordPress Using Google Cloud Click-to-Deploy">tutorial</a>) using Google Domains (<a href="https://www.jiyuulife.net/registering-google-domains-to-google-cloud-wordpress/" target="_blank" rel="noreferrer noopener" title="Registering Google Domains to Google Cloud WordPress">tutorial</a>) with SSL encryption (<a href="https://www.jiyuulife.net/secure-wordpress-https/" target="_blank" rel="noreferrer noopener" title="Secure Your WordPress Using HTTPS">tutorial</a>) and maintenance via SSH to instance VMs (such as <a href="https://www.jiyuulife.net/update-php-version-for-wordpress-on-debian-9/" target="_blank" rel="noreferrer noopener" title="Update PHP Version For WordPress On Debian 9">updating PHP version</a> in Google Cloud VM Instance). Thus it is natural to leverage Google Cloud CDN, with the added benefit that it won&#8217;t break with updates to WordPress since the CDN configuration happens server-side and not WordPress-side.</p>



<p>Follow along with me as we explore how to activate Google CDN for your Google Cloud-hosted service.</p>



<span id="more-508"></span>



<h2 class="wp-block-heading">Assumptions</h2>



<p>This guide assumes the following:</p>



<ul class="wp-block-list">
<li>Your website uses Google Cloud VM instance(s) in an unmanaged <a href="https://cloud.google.com/compute/docs/instance-groups" target="_blank" rel="noreferrer noopener">instance group</a>.</li>



<li>You have access to Google Cloud Console and SSH privileges into your VM instance(s).</li>



<li>Your website is HTTPS with a valid SSL Certificate.</li>



<li>Access to DNS settings (whether Google Cloud DNS or otherwise).</li>
</ul>



<h2 class="wp-block-heading">Before We Begin</h2>



<p>Your site should experience almost no downtime (with the exception of resolving DNS to the new load balancer global IP) if everything is configured and works correctly. This guide piggybacks off of Google Cloud&#8217;s official documentation on <a href="https://cloud.google.com/cdn/docs/setting-up-cdn-with-mig" target="_blank" rel="noreferrer noopener">Setting up Cloud CDN with a managed instance group</a>, but there are quite a few changes we need to make to align with the assumptions above, namely:</p>



<ul class="wp-block-list">
<li>In addition to HTTP/80, configuration for HTTPS/443 is also required.</li>



<li>We are applying CDN to an UNmanaged instance group.</li>



<li>Slightly different Health Check procedure.</li>
</ul>



<p>Don&#8217;t worry, there will be reminders throughout this guide if we deviate from the official tutorial from Google Cloud.</p>



<h2 class="wp-block-heading">Setup</h2>



<h3 class="wp-block-heading">Add Health Check Tag to Instance VM</h3>



<p>The health check and firewall rules need to know which instances to apply the health check to, which can be accomplished easily by applying tags to the instance VM. Add <strong>allow-health-check</strong> as a tag to all instance VMs for your service:</p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_vm_tag.png?resize=432%2C428&#038;ssl=1" alt="" class="wp-image-515" width="432" height="428" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_vm_tag.png?w=942&amp;ssl=1 942w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_vm_tag.png?resize=300%2C297&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_vm_tag.png?resize=150%2C150&amp;ssl=1 150w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_vm_tag.png?resize=768%2C761&amp;ssl=1 768w" sizes="auto, (max-width: 432px) 100vw, 432px" /><figcaption class="wp-element-caption">Figure 1-1: Add <strong>allow-health-check</strong> tag to instance VM. This does not require you to restart the VM.</figcaption></figure></div>


<h3 class="wp-block-heading">Instance Group Settings</h3>



<figure class="wp-block-image size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_summary.png?resize=619%2C176&#038;ssl=1" alt="" class="wp-image-513" width="619" height="176" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_summary.png?resize=1024%2C292&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_summary.png?resize=300%2C86&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_summary.png?resize=768%2C219&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_summary.png?resize=1536%2C439&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_summary.png?w=1632&amp;ssl=1 1632w" sizes="auto, (max-width: 619px) 100vw, 619px" /><figcaption class="wp-element-caption">Figure 1-2: Unmanaged instance group summary page.</figcaption></figure>



<p>If not done so already, you will need to add your VM instances into an instance group. This tutorial assumes you already have a VM instance NOT created via an instance template and therefore can only be added into an UNmanaged instance group. </p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_setting.png?resize=606%2C487&#038;ssl=1" alt="" class="wp-image-512" width="606" height="487" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_setting.png?resize=1024%2C823&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_setting.png?resize=300%2C241&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_setting.png?resize=768%2C617&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_setting.png?resize=1536%2C1235&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_setting.png?w=1786&amp;ssl=1 1786w" sizes="auto, (max-width: 606px) 100vw, 606px" /><figcaption class="wp-element-caption">Figure 1-3: Sample setting for adding existing VM Instance to unmanaged instance group. Note region and zone needs to be the same with all the VM instances to be added to the group.</figcaption></figure></div>


<p>One extra setting you will need to do is to add named ports for HTTP/80 and HTTPS/443 to the instance group. Follow the section <a href="https://cloud.google.com/cdn/docs/setting-up-cdn-with-mig#named-port" target="_blank" rel="noreferrer noopener">here</a>, but don&#8217;t forget to also add HTTPS/443 as well.</p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_named_port.png?resize=382%2C405&#038;ssl=1" alt="" class="wp-image-514" width="382" height="405" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_named_port.png?resize=965%2C1024&amp;ssl=1 965w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_named_port.png?resize=283%2C300&amp;ssl=1 283w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_named_port.png?resize=768%2C815&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_instance_group_named_port.png?w=976&amp;ssl=1 976w" sizes="auto, (max-width: 382px) 100vw, 382px" /><figcaption class="wp-element-caption">Figure 1-4: Sample settings for specifying named ports in an instance group.</figcaption></figure></div>


<h3 class="wp-block-heading">Set Up Firewall</h3>



<p>Follow the official guide section <a href="https://cloud.google.com/cdn/docs/setting-up-cdn-with-mig#firewall" target="_blank" rel="noreferrer noopener">here</a> to configure firewall rules for your health check. Note that our health check will use only HTTP/80 and so it is <strong>NOT</strong> necessary to add HTTPS/443. You are free to modify the name of the firewall rule but keep all other values (IP ranges and tag name) the same.</p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_firewall_setting.png?resize=426%2C519&#038;ssl=1" alt="" class="wp-image-516" width="426" height="519" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_firewall_setting.png?resize=840%2C1024&amp;ssl=1 840w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_firewall_setting.png?resize=246%2C300&amp;ssl=1 246w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_firewall_setting.png?resize=768%2C937&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_firewall_setting.png?w=1202&amp;ssl=1 1202w" sizes="auto, (max-width: 426px) 100vw, 426px" /><figcaption class="wp-element-caption">Figure 1-5: Firewall rule setting. Only HTTP/80 is configured,</figcaption></figure></div>


<h3 class="wp-block-heading">Set Up Load Balancer</h3>



<p>Google Cloud CDN operates alongside a <strong>load balancer</strong> with <strong>forwarding rule</strong> applied to a <strong>global IP address</strong>. All three settings are initialized and configured at the same time. This is the hardest part of the tutorial, but don&#8217;t fret! I will walk you through the steps as detailed as I can.</p>



<h4 class="wp-block-heading"><strong>Create a Health Check Page</strong></h4>



<p>The default settings for a health check as indicated in the official guide has a Request path of &#8220;/&#8221; which generally points to the main page of your website. The main page contains many content and is overkill to be used for a simple ping, so it is highly advised to create a separate page with a few words of text to minimize the overhead. We can actually use the sample code in Step 11 <a href="https://cloud.google.com/cdn/docs/setting-up-cdn-with-mig#mig" target="_blank" rel="noreferrer noopener">here</a> to create a simple page. SSH into your instance VM and execute the following code:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; title: ; notranslate">
vm_hostname=&quot;$(curl -H &quot;Metadata-Flavor:Google&quot; \
http://169.254.169.254/computeMetadata/v1/instance/name)&quot;
echo &quot;Page served from: $vm_hostname&quot; | \
sudo tee /var/www/html/healthcheck.html
</pre></div>


<p>This will create a page called &#8220;<strong>healthcheck.html</strong>&#8221; on your root site directory containing the name of the VM instance. Note this page name as you will use it when configuring health check in just a moment.</p>



<h4 class="wp-block-heading"><strong>Retrieve SSL Certificate Public and Private Keys</strong></h4>



<p>Because we are allowing HTTPS connection through the load balancer, at some point in the below guide you will be asked to provide the SSL certificate for your website. If you have configured your SSL certificate via Certbot (the same way I have as outlined in my other <a href="https://www.jiyuulife.net/secure-wordpress-https/" title="Secure Your WordPress Using HTTPS">post</a>), then SSH into your VM instance (using a separate browser tab) and execute the following commands to retrieve your public and private SSL certificate keys:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; title: ; notranslate">
sudo certbot certificates
</pre></div>


<p>The output should give you something similar to the following, in which you can just view its contents to find all the certificate keys you need:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; title: ; notranslate">
# Replace ##DOMAIN## with whatever is output in the above command
sudo cat /etc/letsencrypt/live/##DOMAIN##/fullchain.pem
sudo cat /etc/letsencrypt/live/##DOMAIN##/privkey.pem
</pre></div>

<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_SSL_Cert.png?resize=587%2C179&#038;ssl=1" alt="" class="wp-image-517" width="587" height="179" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_SSL_Cert.png?resize=1024%2C313&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_SSL_Cert.png?resize=300%2C92&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_SSL_Cert.png?resize=768%2C235&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_SSL_Cert.png?w=1480&amp;ssl=1 1480w" sizes="auto, (max-width: 587px) 100vw, 587px" /><figcaption class="wp-element-caption">Figure 2-1: Sample certbot output. &#8220;fullchain.pem&#8221; gives the public keys (include certificate chains). &#8220;privkey.pem&#8221; yields the private key. Ignore the &#8220;^C&#8221; at the end of the sudo cat commands.</figcaption></figure></div>


<p>Hold onto these outputs as you will need to copy-paste them later.</p>



<h4 class="wp-block-heading"><strong>Configure the Backend Service</strong></h4>



<p>Follow the &#8220;<a href="https://cloud.google.com/cdn/docs/setting-up-cdn-with-mig#load-balancer" target="_blank" rel="noreferrer noopener">Setting up the load balancer</a>&#8221; section up until you finish Step 6 in its entirety. However, note that step 6c should be changed to <strong>HTTPS</strong>, 6d to &#8220;<strong>https</strong>&#8220;, and 6f to &#8220;<strong>443</strong>&#8220;. Refer to below figure for an example.</p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_lb_backend_1.png?resize=408%2C687&#038;ssl=1" alt="" class="wp-image-518" width="408" height="687" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_lb_backend_1.png?resize=608%2C1024&amp;ssl=1 608w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_lb_backend_1.png?resize=178%2C300&amp;ssl=1 178w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_lb_backend_1.png?resize=768%2C1293&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_lb_backend_1.png?resize=912%2C1536&amp;ssl=1 912w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_lb_backend_1.png?w=962&amp;ssl=1 962w" sizes="auto, (max-width: 408px) 100vw, 408px" /><figcaption class="wp-element-caption">Figure 2-2: Sample configuration for HTTPS backend service (first half)</figcaption></figure></div>


<p>Check &#8220;Enable Cloud CDN&#8221; so that the system will automatically configure the Cloud CDN for you. For Health Check, since we haven&#8217;t created one yet, go ahead and follow the prompt to create new. Change the protocol to HTTP and use port 80 (remember our health check uses HTTP/80 and not HTTPS). Most importantly, the &#8220;Request path&#8221; should be configured to the health check page you created above (/healthcheck.html), relative to the root of the site directory.</p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_backend_health_check_setting.png?resize=479%2C566&#038;ssl=1" alt="" class="wp-image-523" width="479" height="566" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_backend_health_check_setting.png?resize=867%2C1024&amp;ssl=1 867w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_backend_health_check_setting.png?resize=254%2C300&amp;ssl=1 254w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_backend_health_check_setting.png?resize=768%2C907&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_backend_health_check_setting.png?w=962&amp;ssl=1 962w" sizes="auto, (max-width: 479px) 100vw, 479px" /><figcaption class="wp-element-caption">Figure 2-3: Sample health check setting. Note the &#8220;Request path&#8221; should be configured to a page on your site. This page can be manually created via SSH into your server.</figcaption></figure></div>


<p>Return to the backend settings and finish the rest of the configuration.</p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_lb_backend_2.png?resize=454%2C332&#038;ssl=1" alt="" class="wp-image-519" width="454" height="332" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_lb_backend_2.png?w=974&amp;ssl=1 974w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_lb_backend_2.png?resize=300%2C219&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_lb_backend_2.png?resize=768%2C561&amp;ssl=1 768w" sizes="auto, (max-width: 454px) 100vw, 454px" /><figcaption class="wp-element-caption">Figure 2-4: Sample configuration for HTTPS backend service (second half)</figcaption></figure></div>


<h4 class="wp-block-heading"><strong>Configure the Frontend Service</strong></h4>



<p>Step 8 of the official <a href="https://cloud.google.com/cdn/docs/setting-up-cdn-with-mig#load-balancer" target="_blank" rel="noreferrer noopener">guide</a> assumes we already have an external IP address reserved, but I left it out until now because we can configure it here. You will need to configure TWO protocols &#8211; one for HTTP and HTTPS. When needing to specify the IP address, select &#8220;Create IP address&#8221; to create one on-the-spot.</p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_frontend_http.png?resize=493%2C481&#038;ssl=1" alt="" class="wp-image-520" width="493" height="481" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_frontend_http.png?w=948&amp;ssl=1 948w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_frontend_http.png?resize=300%2C292&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_frontend_http.png?resize=768%2C749&amp;ssl=1 768w" sizes="auto, (max-width: 493px) 100vw, 493px" /><figcaption class="wp-element-caption">Figure 2-5: HTTP port forwarding configuration</figcaption></figure></div>


<p>For configuring the forwarding rule for HTTPS, a few additional steps are required, namely providing the SSL certificate keys. For certificate section, click on &#8220;Create a new certificate&#8221; to reach the UI below.</p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_frontend_cert_setting.png?resize=408%2C527&#038;ssl=1" alt="" class="wp-image-521" width="408" height="527" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_frontend_cert_setting.png?resize=794%2C1024&amp;ssl=1 794w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_frontend_cert_setting.png?resize=233%2C300&amp;ssl=1 233w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_frontend_cert_setting.png?resize=768%2C990&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_frontend_cert_setting.png?w=940&amp;ssl=1 940w" sizes="auto, (max-width: 408px) 100vw, 408px" /><figcaption class="wp-element-caption">Figure 2-6: Port Forwarding HTTPS cert configuration.</figcaption></figure></div>


<p>Here is where you take the outputs from &#8220;Retrieve SSL Certificate Public and Private Keys&#8221; section above and paste them here. Note that your &#8220;fullchain.pem&#8221; should actually contain TWO certificate sections, the first one should be copy pasted into the &#8220;Public key certificate&#8221; field and the second one into the &#8220;Certificate chain&#8221; field. &#8220;privkey.pem&#8221; only has one key which you can just copy the entire file contents and paste into &#8220;Private key&#8221;.</p>



<p>Below is a sample frontend configuration for HTTPS.</p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_frontend_https.png?resize=363%2C536&#038;ssl=1" alt="" class="wp-image-522" width="363" height="536" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_frontend_https.png?resize=693%2C1024&amp;ssl=1 693w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_frontend_https.png?resize=203%2C300&amp;ssl=1 203w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_frontend_https.png?resize=768%2C1135&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_frontend_https.png?w=966&amp;ssl=1 966w" sizes="auto, (max-width: 363px) 100vw, 363px" /><figcaption class="wp-element-caption">Figure 2-7: HTTPS port forwarding configuration.</figcaption></figure></div>


<p>Follow the rest of the official guide until you finish setting up the load balancer.</p>



<h3 class="wp-block-heading">Testing Load Balancer Configurations</h3>



<p>Take several moments break for the load balancer to finish initialization. It should look like the below figure once finished. Note that the green check mark indicates the backend is configured correctly and that the health check is working as intended. If it is NOT green then revisit the above steps (and also using the <a href="https://cloud.google.com/cdn/docs/setting-up-cdn-with-mig" target="_blank" rel="noreferrer noopener">official guide</a> as reference) to diagnose the issue. For more concrete evidence, following &#8220;<a href="https://cloud.google.com/cdn/docs/setting-up-cdn-with-mig#send-traffic" target="_blank" rel="noreferrer noopener">Testing traffic sent to your instance</a>&#8221; section should direct you to the homepage of your website (<em>ignore</em> what step 5 says).</p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_lb_summary.png?resize=558%2C228&#038;ssl=1" alt="" class="wp-image-524" width="558" height="228" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_lb_summary.png?resize=1024%2C420&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_lb_summary.png?resize=300%2C123&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_lb_summary.png?resize=768%2C315&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_lb_summary.png?w=1478&amp;ssl=1 1478w" sizes="auto, (max-width: 558px) 100vw, 558px" /><figcaption class="wp-element-caption">Figure 3-1: A normal, working load balancer setting</figcaption></figure></div>


<h3 class="wp-block-heading">Modify DNS Settings</h3>



<p>If the above load balancer test is successful, it is time to change the DNS settings &#8220;A&#8221; record from your previous single VM instance IP address to the load balancer global IP address. The global IP address can be found by clicking on the name of your load balancer in the load balancer settings page (Refer to Figure 3-1). </p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_DNS_setting.png?resize=589%2C322&#038;ssl=1" alt="" class="wp-image-525" width="589" height="322" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_DNS_setting.png?resize=1024%2C561&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_DNS_setting.png?resize=300%2C164&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_DNS_setting.png?resize=768%2C421&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_DNS_setting.png?resize=1536%2C841&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/10/CDN_DNS_setting.png?resize=2048%2C1121&amp;ssl=1 2048w" sizes="auto, (max-width: 589px) 100vw, 589px" /><figcaption class="wp-element-caption">Figure 3-2: (Google Cloud DNS) Change &#8220;A&#8221; record to load balancer global IP.</figcaption></figure></div>


<p>Enter your hostname into <a href="https://dnschecker.org/" target="_blank" rel="noreferrer noopener">DNS Checker</a> and verify that the global DNS servers return your load balancer&#8217;s IP address as the result. It may take a few moments for propagation. Once propagated, do a final check by accessing your site using your hostname (recommended to use incognito or private browser to test).</p>



<p>Congratulations! Your site is now configured for Google Cloud DNS! However, there are a few additional checks to make sure Google Cloud DNS is actually cacheing your website resources&#8230;</p>



<h3 class="wp-block-heading">Test Caching Settings</h3>



<p>Google Cloud DNS actually has a few rules on what resources can be cached, which can be found in detail <a href="https://cloud.google.com/cdn/docs/caching#cacheability" target="_blank" rel="noreferrer noopener">here</a>. After understanding the rules, use a caching checker such as <a href="https://www.giftofspeed.com/cache-checker/" target="_blank" rel="noreferrer noopener">this</a> one, fill in your site, and look at the results. Your cached resources are listed in the &#8220;Cached Files&#8221; section, but there is a catch. Google Cloud DNS does NOT cache resources when cached via ETAG. Alternatively speaking, if you see a &#8220;<strong>Type: Cache-Control&#8221;</strong> tag with another tag specifying the expiry duration for a resources hosted on your domain, then that means your resource is properly cached using a CDN.</p>



<p>If you find your domain resources are not being cached, then check your <a href="https://wordpress.org/support/article/optimization-caching/" target="_blank" rel="noreferrer noopener">WordPress Cache Settings</a> and verify that caching settings are turned on. If the problem is still not resolved then follow the server-side guide <a href="https://www.giftofspeed.com/leverage-browser-caching/" target="_blank" rel="noreferrer noopener">here</a> as well. For this site the WordPress cache settings were fine and my VM instance just did not have the <em>mod_expires</em> module enabled.</p>The post <a href="https://www.jiyuulife.net/google-cloud-cdn-for-gcp-wordpress/">Google Cloud CDN for GCP WordPress</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">508</post-id>	</item>
		<item>
		<title>Protecting Your Cryptocurrencies &#8211; Online and Offline</title>
		<link>https://www.jiyuulife.net/protecting-cryptocurrencies-online-offline/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sun, 26 Jul 2020 15:47:59 +0000</pubDate>
				<category><![CDATA[Crypto]]></category>
		<category><![CDATA[Finance]]></category>
		<category><![CDATA[Binance]]></category>
		<category><![CDATA[Coinbase]]></category>
		<category><![CDATA[Cryptocurrency]]></category>
		<category><![CDATA[Ledger Nano]]></category>
		<category><![CDATA[Proof-of-Stake]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[セキュリティ]]></category>
		<category><![CDATA[仮想通貨]]></category>
		<guid isPermaLink="false">https://www.jiyuulife.net/?p=477</guid>

					<description><![CDATA[<p>The cryptocurrency universe continues to grow in popularity in the wake of global turmoil and COVID-19. Despite such uncertainties with the economy and unemployment levels soaring following the first outbreak of COVID-19, younger individuals in the workforce are eyeing cryptocurrencies as a method of investment. Just last week I was pleasantly surprised to hear both ... <a title="Protecting Your Cryptocurrencies &#8211; Online and Offline" class="read-more" href="https://www.jiyuulife.net/protecting-cryptocurrencies-online-offline/" aria-label="Read more about Protecting Your Cryptocurrencies &#8211; Online and Offline">Read more</a></p>
The post <a href="https://www.jiyuulife.net/protecting-cryptocurrencies-online-offline/">Protecting Your Cryptocurrencies – Online and Offline</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></description>
										<content:encoded><![CDATA[<p>The cryptocurrency universe continues to grow in popularity in the wake of global turmoil and COVID-19. Despite such uncertainties with the economy and <a href="https://www.statista.com/statistics/273909/seasonally-adjusted-monthly-unemployment-rate-in-the-us/">unemployment levels soaring</a> following the first outbreak of COVID-19, younger individuals in the workforce are eyeing cryptocurrencies as a method of investment. Just last week I was pleasantly surprised to hear both my older and younger brother asking me, a three-year cryptocurrency HODLer, the best and practical way of dipping their feet into cryptocurrencies. As I was explaining cryptocurrencies and its risks and how to properly HODL them, I noticed this topic can be extensive and would benefit the masses if compiled into an article such as this one.</p>



<p>So here it is: a live post on tips and advice to secure and protect your crypto from falling out of your hands. Owning cryptocurrencies not only involves risk with its price, but also how it is handled &#8211; a small hack or simply a wrong transfer can cause your entire portfolio to vanish in an instant, and once the transactions are verified and carved into the crypto&#8217;s ledger one will undoubtedly be at the mercy of the recipient.</p>



<p>Read on to prevent the above from ever happening to you.<br></p>



<span id="more-477"></span>



<hr class="wp-block-separator has-css-opacity"/>



<p>This guide is split into online and offline sections. The online portion mainly involves handling cryptos on exchanges but also goes into generic device security. The offline section touches more on the &#8220;human&#8221; side of how to make sure your crypto wallets won&#8217;t be hijacked by somebody else. Those who currently don&#8217;t use hardware wallets should still go through the offline section since there are specific guidances on how to secure private keys.</p>



<h2 class="wp-block-heading">Online</h2>



<h3 class="wp-block-heading">Beware of Virus/Malware on Device</h3>



<p>We&#8217;ll start off with one that is common knowledge to everyone but is worth mentioning anyway: making sure the <span class="has-inline-color has-vivid-red-color">device used to transfer crypto isn&#8217;t infested with viruses or malware</span>. Assuming one uses a laptop it is important to run antivirus software frequently and clean out any suspicious software. Even keeping Windows Firewall and Windows Defender on and updated can help immensely to prevent malware from searching the file system for contents that look like private keys and transferring them across the network. </p>



<p>The above is a &#8220;duh!&#8221; concept for everyone who is savvy enough with computers to want to buy crypto, but many often overlook this next potential vulnerability &#8211; that browser extensions may be potential avenues for attack. Recently there are a lot of news such as <a href="https://wccftech.com/linkedin-sued-for-spying-on-clipboard-data-after-ios-14-exposes-its-app/">this</a> one where companies &#8211; intentionally or not &#8211; are snooping on what users type on their devices. Just because the above news is for iOS devices doesn&#8217;t mean it won&#8217;t happen on Android or laptop (which is arguably easier to develop in the form of browser extensions). </p>



<p>So what can one do? It is a lot of trouble to look through each installed extension and audit them for bad behavior, so one potential solution to mitigate this risk is to <strong><span class="has-inline-color has-vivid-red-color">limit active extensions to the bare minimum via private/incognito mode on your browser</span></strong> to access crypto exchanges or when entering any kind of sensitive information. There is an added inconvenience of the crypto exchange not recognizing your device and having to authorize it via email verification, but it is a small price to pay for securing your assets.</p>



<h3 class="wp-block-heading">Careful of Untrusted Sites and Phishing</h3>



<p>Untrusted sites are very easy to recognize &#8211; modern browsers will blatantly tell you whether the <a href="https://www.digicert.com/not-secure-warning-what-to-do/">site accessed is not secured</a>. It goes without saying that when dealing with crypto one should <span class="has-inline-color has-vivid-red-color"><strong>never enter affiliate with any sites that use an insecure connection</strong></span>. There are two reasons: the first is that any viable crypto exchange or crypto website has SSL certification and is transferring data via Secure HTTP, so sites which are not are phishing at its worst and untrustworthy at best. The second reason is that insecure HTTP is vulnerable to network sniffers who can extract one&#8217;s private information &#8211; and one won&#8217;t be any the wiser.</p>



<p>One can check whether a site is secured usually by referring to the browser&#8217;s URL bar. The following is an example of this site secured with an SSL Certificate from the free and open-source project LetsEncrypt:</p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/07/LetsEncrypt_Jiyuulife_SS.png?resize=314%2C328&#038;ssl=1" alt="" class="wp-image-483" width="314" height="328" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/07/LetsEncrypt_Jiyuulife_SS.png?w=628&amp;ssl=1 628w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/07/LetsEncrypt_Jiyuulife_SS.png?resize=287%2C300&amp;ssl=1 287w" sizes="auto, (max-width: 314px) 100vw, 314px" /><figcaption class="wp-element-caption">Figure 1-1 : This site&#8217;s secure connection prompt (Chrome 83)</figcaption></figure></div>


<p><strong>However</strong>, there is a caveat that must not be overlooked &#8211; there have been cases where fake sites acquired users&#8217; private information by <a href="https://www.theguardian.com/technology/2017/apr/19/phishing-url-trick-hackers">using a URL that looks very similar to the real site</a>. By replacing a letter in the URL with a unicode character, <span class="has-inline-color has-vivid-red-color">hackers can design a front page of a crypto exchange which looks strikingly similar to the real site, and pass this fake URL via email or other methods</span> to entice unsuspecting users. While this fake site may have an SSL Certificate registered and is transferring data via secure connection, it alone isn&#8217;t enough to identify a site as the real one.</p>



<p>The crypto community advises all crypto owners to <strong><span class="has-inline-color has-vivid-red-color">bookmark</span></strong> crypto exchanges and other commonly used sites after verifying that it is real to prevent such a situation from happening. Additionally, <strong><span class="has-inline-color has-vivid-red-color">never click any links inside emails if one has not requested or isn&#8217;t sure of its origin</span></strong>. A common example is a <em>hacker group obtaining a list of email addresses of users on a crypto exchange and sending fake password reset emails to everybody</em>. Remember to register for increased security such as 2-factor authentication (2FA) for every crypto exchange account so that hackers will not have access to funds even though login information is compromised.</p>



<h3 class="wp-block-heading">Use Credible Exchanges</h3>



<p>At the present circumstances crypto adoption is not high enough to the point where one can use it to exchange for goods and services. Thus, to a majority of crypto users (and barring direct exchanges with friends and family), the only way to turn crypto to something of value is still to translate it to fiat currency via an exchange. It should be a no-brainer that one should use reputable, secure, transparent, and licensed exchanges to purchase and sell coins. </p>



<p>Personally, my go-to options are <a href="https://www.coinbase.com/join/yen_fm">Coinbase</a> for exchanging fiat into crypto, and <a href="https://www.binance.com/en/register?ref=JLO9H291">Binance</a> for crypto-to-crypto transactions. Especially with fiat, <a href="https://en.wikipedia.org/wiki/Know_your_customer">KYC</a> will likely be necessary in which identity, bank, and phone verifications are required. However, excluding fiat, it is likely possible to deposit, trade, and withdraw (with a limit) crypto in many exchanges such as Binance.</p>



<p>To summarize, check for the following <span class="has-inline-color has-vivid-red-color"><strong>very important points</strong></span> when picking exchanges:</p>



<ul class="wp-block-list">
<li>Check exchange has license to operate in the country it is based in.</li>



<li>Ensure exchange has secure methods such as blocking unknown IP logins and 2FA authentication for login, trade, and withdrawals.</li>



<li>Pick exchanges which has funds protection in case exchanges get hacked (believe me, <a href="https://finance.yahoo.com/news/cryptopia-users-victorious-court-following-103119355.html">it</a> <a href="https://www.thenational.ae/business/technology/cryptocurrency-firm-kucoin-shocked-by-twitter-hacking-1.1050731">happens</a> <a href="https://www.newsbtc.com/2020/07/25/2-million-bitcoin-bitfinex-hack-moved/">a</a> <a href="https://www.coindesk.com/upbit-is-the-sixth-major-crypto-exchange-hack-of-2019">LOT</a>). For example, here is <a href="https://www.coinbase.com/join/yen_fm">Coinbase</a>&#8216;s <a href="https://www.coinbase.com/legal/insurance">page on insurance of user funds</a>.</li>



<li>Understand the exchange&#8217;s crypto daily withdrawal limits for unverified users. For example, <a href="https://www.binance.com/en/register?ref=JLO9H291">Binance</a> has a<a href="https://www.binance.com/en/support/articles/115003670492"> 24-hour withdrawal limit of 2 BTC worth of crypto.</a></li>



<li>Check it is legally possible to use the exchange (in case one resides in a different country or is a different nationality from the place the exchange operates out of).</li>
</ul>



<h3 class="wp-block-heading">Test Deposit/Withdraw/Transfer With Tiny Amount</h3>



<p>Once a crypto transaction is signed and verified on its blockchain it <span class="has-inline-color has-vivid-red-color"><strong>CAN NOT BE REVERSED</strong></span>. This is an important concept one must understand when dealing with the transfer of crypto from wallet-to-wallet or wallet-to-contract. While an unverified transaction can still be cancelled, don&#8217;t bet on being able to spot the mistake and send another transaction to the blockchain to cancel it within the seconds it takes for a miner or staker to spot and write into the coin&#8217;s ledger. </p>



<p>To ensure the funds are transferred and received properly, it is highly advised to send a tiny tiny amount (in the range 0.01 ETH or, if using an exchange, the minimum amount they allow) and check the recipient&#8217;s wallet for confirmation of the funds. For deposit into exchanges, typically it would require a certain amount of confirmations &#8211; this depends on the exchange and the coin to be transferred &#8211; but it is fine to just only note the exchange has received and is awaiting more verifications. This safety check becomes ever so important the more value one transfers in a single transaction&#8230; don&#8217;t skip this step!</p>



<h3 class="wp-block-heading">Not Your Keys, Not Your Coins</h3>



<p>Recently more and more licensed and reputable exchanges offer insurance or customer funds protection in the event of a hack or unexpected loss of exchange funds. However, insurance will only cover for so much, and claiming the lost funds requires an extensive amount of time, resulting in a potentially high opportunity loss.</p>



<p><strong>&#8220;<a href="https://medium.com/kubisnis/not-your-keys-not-your-bitcoin-lesson-about-security-c046210e8fe9">Not Your Keys, Not Your Coins</a>&#8220;</strong> is a mantra widely chanted amongst the experienced within the crypto community. The individual is ultimately responsible for all of the security and storage of their crypto assets, but such responsibility can be a huge burden for some to bear. Similar to a huge amount of cash, most people are more comfortable with storing it in a bank or other authority than handling it themselves. However, crypto regulations are still lax and/or virtually non-existent in many countries around the world &#8211; laws and adoption has not yet caught up with the likes of cash. So until that day comes, one is responsible for any private keys, recovery pass-phrases, maintenance of hardware wallets, seeds, and backups of all crypto wallets in possession.</p>



<p>Crypto can be the Next Big Thing™ to happen and may make one rich, but such doesn&#8217;t come with a proportionate amount of risk and responsibility. Many articles and <a href="https://bitcoin.org/en/secure-your-wallet#online">guides</a> (and including the one you&#8217;re reading right now) attempts to help newcomers make their first dip into the crypto universe, so it is important to understand what is at stake and to properly guard against all possible risks. </p>



<h3 class="wp-block-heading">Keep Long-Term Holdings in Cold Wallet</h3>



<p>A cold wallet (or <a href="https://www.investopedia.com/terms/c/cold-storage.asp">cold storage</a>), otherwise known as hardware wallets or offline wallets, have the added requirement that they be connected to a laptop or other device in order to access the funds inside it. It is an extra layer of security due to two reasons: one must have the physical wallet device to interact with their crypto funds, and the private keys for crypto wallets inside are protected and can never be retrieved (instead, if the cold wallet is lost, a seed is required to restore its contents). Just like how one wouldn&#8217;t keep thousands of dollars in their wallet when going out, one should keep long-term HODLs in a cold wallet and lesser funds in a <a href="https://www.investopedia.com/terms/h/hot-wallet.asp">hot wallet</a>/exchange to react to price changes.</p>



<p>A good practice is to assume that contents in any hot wallet (exchange funds also count as being stored in hot wallets) may be lost in its entirety due to some unexpected event, which may include but not limited to any of the following:</p>



<ul class="wp-block-list">
<li>Leakage of private key</li>



<li>Hacking</li>



<li>Theft</li>



<li>Forgotten password</li>



<li>Lost cold wallet device</li>



<li>Leakage of cold wallet passphrase/seed</li>
</ul>



<h3 class="wp-block-heading">DeFi and Staking</h3>



<p>Lastly, a note on the risks of DeFi and staking. For those who may not know, <a href="https://www.forbes.com/sites/investor/2020/07/23/ethereum-starts-its-defi-moon-shot/">DeFi</a> is short for &#8220;Decentralized Finance&#8221; and is an adaptation of financial instruments for the crypto universe. Things like P2P loaning, lending with collateral, and others are possible in a transparent (via code) and decentralized manner. The ability for some cryptocurrencies such as Ethereum to maintain contracts allows for such projects to exist, and is an alternative way to generate dividends and interest on your crypto investment.</p>



<p>Staking, which is more commonly known to everyone, is simply securing the blockchain by offering ones coins as collateral when validating transactions. Penalty in the form of losing rewards and sometimes losing a portion of the staked coins only happen when the blockchain identifies one being a bad guy and attempting to overwrite the contents of the ledger. Staking ones coins is normally safer than dealing with DeFi because staking is a basic feature of a coin which supports Proof-of-Stake (PoS) whereas DeFi involves the additional development and usage of smart contracts.</p>



<p>That said, in addition to the risks associated with staking and using these financial instruments in a traditional, non-crypto sense, there are some extra points to consider when delving into the crypto world of passive income. For the realm of staking, it is best to search for coins in which the funds never leave one&#8217;s wallet, such as <a href="https://tezos.com/">Tezos</a>, because of the &#8220;Not Your Keys, Not Your Crypto&#8221; principle mentioned in an earlier section. Other coins, such as the newly Stake-able <a href="https://matic.network/">Matic</a> from end of June 2020, require that funds be transferred to a delegate, with smart contract commands to re-invest earnings or withdraw funds or un-bond from the delegator. In other words, <span class="has-inline-color has-vivid-red-color"><strong>funds leave your wallet in these types of staking</strong></span>, so be careful of any potential exit scams especially for not-so-popular coins (<a href="https://quickpenguin.net/bitconnect-scam/">BitConnect</a> comes to mind &#8211; although not a staking scam, BitConnect did require one to lock up funds for a minimum of 120 days). Use similar judgement when eyeing DeFi projects.</p>



<h2 class="wp-block-heading">Offline</h2>



<h3 class="wp-block-heading">Secure Your Private Keys and Seeds</h3>



<p>The ultimate key to securing one&#8217;s crypto funds is to ensure nobody has access to one&#8217;s private keys or recovery seeds/passphrases. Often the way to do so is to encrypt them using a tested and standardized encryption mechanism. There are many cryptographic libraries available to use, but a simple yet effective way is to use RAR. To encrypt file(s), use the following command in the terminal:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; title: ; notranslate">
rar a -hp &#x5B;NAME OF RAR FILE] &#x5B;PRIVATE KEY 1] &#x5B;PRIVATE KEY 2] ...
</pre></div>


<p>This ensures that <strong><span class="has-inline-color has-vivid-cyan-blue-color">both the filenames and all contents are encrypted</span></strong>. As an added bonus, set the name of the RAR file to something not related to crypto private keys to reduce suspicion.</p>



<p>To decrypt a rar file, use the following:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; title: ; notranslate">
unrar x &#x5B;NAME OF RAR FILE]
</pre></div>


<h3 class="wp-block-heading">Decentralize Your Secured Keys</h3>



<p>Now that a secure, encrypted file containing private keys and seeds have been created as mentioned above, it is time to consider the various secure places to backup. <span class="has-inline-color has-vivid-red-color"><strong>To reduce the risk of a single point of failure, decentralization of your keys is highly important</strong></span>. The following places can be ideal to place a single backup to &#8211; the more places the better:</p>



<ul class="wp-block-list">
<li>Locally on laptop</li>



<li>To an external HDD</li>



<li>Google Drive (BONUS: enable 2FA or phone authentication for Google account)</li>



<li>To a secured USB drive, to be carried around with your house/car/etc keys.</li>
</ul>



<h3 class="wp-block-heading">Have a Backup, Unused Hardware Wallet</h3>



<p>If the hardware wallet happens to be misplaced and funds need to be accessed immediately, then a way to restore your crypto wallets within a hardware wallet is to input seed/passphrase generated from the previous wallet into a new hardware wallet. Having to purchase another one requires a lot of time, so be sure to have a spare, unused hardware wallet for such situations.</p>



<figure class="wp-block-embed aligncenter is-type-rich is-provider-auto-amazon-links wp-block-embed-auto-amazon-links"><div class="wp-block-embed__wrapper">
<iframe title="Amazon Product" src='https://jiyuulife.net/amazon-auto-links/embed/?embed=amazon-auto-links&#038;uri=https%3A%2F%2Fwww.amazon.co.jp%2FLedger-Nano-%25E6%259A%2597%25E5%258F%25B7%25E8%25B3%2587%25E7%2594%25A3%25E3%2583%258F%25E3%2583%25BC%25E3%2583%2589%25E3%2582%25A6%25E3%2582%25A7%25E3%2582%25A2%25E3%2582%25A6%25E3%2582%25A9%25E3%2583%25AC%25E3%2583%2583%25E3%2583%2588-Bluetooth-%25E5%2585%25A8%25E3%2581%25A6%25E3%2581%25AE%25E6%259A%2597%25E5%258F%25B7%25E8%25B3%2587%25E7%2594%25A3%25E3%2582%2592%25E5%25AE%2589%25E5%2585%25A8%25E3%2581%25AB%25E8%25B3%25BC%25E5%2585%25A5%25E3%2580%2581%25E7%25AE%25A1%25E7%2590%2586%25E3%2580%2581%25E6%2588%2590%25E9%2595%25B7%25E3%2581%2595%25E3%2581%259B%25E3%2582%258B%25E3%2583%2599%25E3%2582%25B9%25E3%2583%2588%25E3%2581%25AA%25E6%2596%25B9%25E6%25B3%2595%2Fdp%2FB08LKV36JX%2Fref%3Dsr_1_2_sspa%3Fkeywords%3Dledger%2Bnano%26qid%3D1675545082%26sprefix%3Dledger%2Bnano%252Caps%252C643%26sr%3D8-2-spons%26psc%3D1%26spLa%3DZW5jcnlwdGVkUXVhbGlmaWVyPUFBVUhBWkpOR1JZRzYmZW5jcnlwdGVkSWQ9QTAzNTQxNDFCVUdENFBGNVJSTUkmZW5jcnlwdGVkQWRJZD1BM0s1UUs0S0JKSFVEMCZ3aWRnZXROYW1lPXNwX2F0ZiZhY3Rpb249Y2xpY2tSZWRpcmVjdCZkb05vdExvZ0NsaWNrPXRydWU%3D#secret=91b5f65052' width='600' height='200' frameborder='0' scrolling='no' marginwidth='0' marginheight='0' class='wp-embedded-content aal-embed' data-secret='91b5f65052'></iframe>
</div><figcaption class="wp-element-caption">Ledger Nano X,  the newest hardware wallet from Ledger as of Feburary 2023.</figcaption></figure>



<h3 class="wp-block-heading">NEVER SHARE YOUR KEYS WITH ANYONE</h3>



<p>Just don&#8217;t. Never trust anyone else with your private keys. Enough said.</p>The post <a href="https://www.jiyuulife.net/protecting-cryptocurrencies-online-offline/">Protecting Your Cryptocurrencies – Online and Offline</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">477</post-id>	</item>
		<item>
		<title>Essence of Taiwanese Mahjong &#8211; Introduction</title>
		<link>https://www.jiyuulife.net/taiwanese-mahjong-introduction/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Mon, 22 Jun 2020 13:26:24 +0000</pubDate>
				<category><![CDATA[How-To]]></category>
		<category><![CDATA[mahjong]]></category>
		<category><![CDATA[taiwan]]></category>
		<category><![CDATA[Taiwanese Mahjong]]></category>
		<category><![CDATA[台灣]]></category>
		<category><![CDATA[台灣麻將]]></category>
		<category><![CDATA[麻將]]></category>
		<guid isPermaLink="false">https://www.jiyuulife.net/?p=437</guid>

					<description><![CDATA[<p>Even after immigrating to California at six years old, I have played Taiwanese mahjong on and off for a good majority of my life &#8211; mostly with family and friends. No friends and relatives around me were very serious about mahjong, so it wasn&#8217;t until a few months ago I was humbled by the skill ... <a title="Essence of Taiwanese Mahjong &#8211; Introduction" class="read-more" href="https://www.jiyuulife.net/taiwanese-mahjong-introduction/" aria-label="Read more about Essence of Taiwanese Mahjong &#8211; Introduction">Read more</a></p>
The post <a href="https://www.jiyuulife.net/taiwanese-mahjong-introduction/">Essence of Taiwanese Mahjong – Introduction</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></description>
										<content:encoded><![CDATA[<p>Even after immigrating to California at six years old, I have played Taiwanese mahjong on and off for a good majority of my life &#8211; mostly with family and friends. No friends and relatives around me were very serious about mahjong, so it wasn&#8217;t until a few months ago I was humbled by the skill of strangers. That night I played 4.5 complete, 4-wind games, and lost about $100 playing $3 base/$1 <em>tai </em>bets. Since that night I have researched &#8211; from both them and other research &#8211; about how opponents think and how they play. </p>



<p>This is the beginning guide to a trilogy of Taiwanese Mahjong, going into statistics and numbers before delving into player behavior and playing scenarios. I don&#8217;t think other places in the internet has quite as detailed analyses (in English), and I will continue to add to it for, as I have always mentioned in other of my posts here, personal learning and memorandum.</p>



<span id="more-437"></span>



<hr class="wp-block-separator has-css-opacity"/>



<h2 class="wp-block-heading">Differences With Other Forms of Mahjong</h2>



<ul class="wp-block-list">
<li><strong>16-tile hand instead of 13</strong>. Players need an additional set and goes out with 17 tiles.</li>



<li>A player can win with a &#8220;chicken scratch&#8221; hand (0 <em>tai</em>).</li>



<li>A &#8220;moving&#8221; dead wall in which 16 tiles are maintained at all times (Replacement tiles are taken from this dead wall, in which an equal amount should be added from the end of the live wall). Kongs add an additional 2 tiles to this dead wall.</li>



<li>The dealer, starting out, gains or loses 1 <em>tai</em> if they win or lose, respectively. On wins or cases where nobody wins, the dealer retains their dealer status and wins/loses 2 additional <em>tai</em> per streak count. For instance, a dealer who won twice but loses afterwards will need to pay 1 + (2*2) = 5 <em>tai</em> to the winner.</li>



<li>When a player goes out on a self-draw, every loser pays the winner equal to the amount of <em>tai</em> of the winner&#8217;s hand. If the dealer is not east, that dealer will need to pay additional <em>tai</em> equal to dealership (1 <em>tai</em>) plus any consecutive streaks they have.</li>



<li>In cases where a discard results in multiple players going out, the closest person (counter-clockwise from the person who discarded the winning tile) is awarded with the win.</li>



<li>Concealed Kongs &#8211; a player may choose to conceal their kong if they have all four tiles in their hand.</li>



<li>One cannot meld a Kong from their left player &#8211; Pung should be declared and the last tile added to form a Kong on the player&#8217;s next draw.</li>



<li>One may choose not to pick the last tile. The match will still end with nobody winning, and dealer retains their seat and +1 consecutive &#8220;streak&#8221;.</li>
</ul>



<figure class="wp-block-embed is-type-rich is-provider-auto-amazon-links wp-block-embed-auto-amazon-links"><div class="wp-block-embed__wrapper">
<iframe title="Amazon Product" src='https://jiyuulife.net/amazon-auto-links/embed/?embed=amazon-auto-links&#038;uri=https%3A%2F%2Fwww.amazon.co.jp%2F%25E3%2583%258E%25E3%2583%25BC%25E3%2583%2596%25E3%2583%25A9%25E3%2583%25B3%25E3%2583%2589%25E5%2593%2581-1182-%25E9%2581%25B8%25E3%2581%25B9%25E3%2582%258B%25E3%2582%25AB%25E3%2583%25A9%25E3%2583%25BC-%25E3%2582%25B7%25E3%2583%25B3%25E3%2583%2597%25E3%2583%25AB%25E3%2581%25AA%25E3%2583%259E%25E3%2583%25BC%25E3%2582%25B8%25E3%2583%25A3%25E3%2583%25B3%25E3%2583%2591%25E3%2582%25A4-%25E9%25BA%25BB%25E9%259B%2580%25E7%2589%258C-%25E5%25A5%25B3%25E6%2580%25A7%25E5%2590%2591%25E3%2581%2591%25E3%2581%25AB%25E3%2583%2594%25E3%2583%25B3%25E3%2582%25AF%25E3%2582%2582-%25E3%2580%2590%25E3%2583%258E%25E3%2583%25BC%25E3%2583%2596%25E3%2583%25A9%25E3%2583%25B3%25E3%2583%2589%25E5%2593%2581%25E3%2580%2591-%25E3%2583%2594%25E3%2583%25B3%25E3%2582%25AF%2Fdp%2FB01BVGGDBG%2Fref%3Dsr_1_4%3F__mk_ja_JP%3D%25E3%2582%25AB%25E3%2582%25BF%25E3%2582%25AB%25E3%2583%258A%26crid%3D1Y2GVKX6ADWPJ%26keywords%3D%25E5%258F%25B0%25E6%25B9%25BE%25E9%25BA%25BB%25E9%259B%2580%26qid%3D1675545560%26refinements%3Dp_76%253A2227292051%26rnid%3D2227291051%26rps%3D1%26sprefix%3D%25E5%258F%25B0%25E6%25B9%25BE%25E9%25BA%25BB%25E9%259B%2580%252Caps%252C313%26sr%3D8-4#secret=91b5f65052' width='600' height='200' frameborder='0' scrolling='no' marginwidth='0' marginheight='0' class='wp-embedded-content aal-embed' data-secret='91b5f65052'></iframe>
</div></figure>



<h2 class="wp-block-heading">Probabilities and Statistics</h2>



<h3 class="wp-block-heading">Average number of cycles per round</h3>



<p>There are 144 tiles total (136 + 8 flowers) in Taiwanese Mahjong. 16 tiles are reserved for the dead wall at all times. Each player also begins the game with 16 tiles (the dealer begins by drawing the first tile so we consider the dealer having 17 tiles starting out). On average, 4-5 flower tiles are revealed before the dealer makes their first discard. </p>



<p>With all of the above added together (16 dead wall + 65 combined tiles in 4 hands + 4-5 flower tiles revealed), only 58-60 tiles remain to be picked. 4 tiles are picked each cycle which means that there are effectively <strong><span class="has-inline-color has-vivid-cyan-blue-color">14-15 cycles in a single round</span></strong>. This is important when going into detail about strategies in early/mid/end game.</p>



<h3 class="wp-block-heading">Average rounds per game (4 winds)</h3>



<p>A single game (一將/一雀) normally consists of 4 winds, which means that there are a total of 16 dealers (4 per person). Assuming that every player is equivalent in skill, the odds of going out is assumed to be 25%, which means that the amount of times +1 consecutive dealership is achieved is 16 * 0.25 = 4 times. Within those four times there&#8217;s another 25% chance that the dealer wins yet again, which brings our <strong><span class="has-inline-color has-vivid-cyan-blue-color">average total rounds per game to 21</span></strong>, but is widely known to be 20-22. This means that, statistically, a single player, on average, <span class="has-inline-color has-very-dark-gray-color">wins about 5-6 hands per game, with 1-2 hands within that being a self-draw win </span>(everyone pays the winner). Unfortunately, this also means that a <strong><span class="has-inline-color has-vivid-red-color">single player will be on the <em>losing</em> side of a self-draw 4-6 times</span></strong>. </p>



<p>Why is this important?? <strong><span class="has-inline-color has-vivid-cyan-blue-color">Because if a player wins 4 games (with around 1 of which being self-draw to earn more points) to cover up for the times of losing to a self-draw, that player will not lose the game and will finish positive. However, this is valid <em>only if you do not lose by discard</em></span></strong>. The point is, if ones goal is to finish positive, one can attack to win 4 times (provided their starting hand is quite favorable) while playing more defensively for the remainder of the 16-18 rounds. </p>



<p>There is a method for finding out which starting hands are favorable and which are not, which will be left for a later guide.</p>



<h3 class="wp-block-heading">Picking tiles</h3>



<p>With 3 suits, 4 winds, and 3 honor types in mahjong, the chance of picking a desired tile stands at <strong><span class="has-inline-color has-vivid-cyan-blue-color">1/34 (2.9%)</span></strong>. Additionally, although there is not enough evidence to back this claim, it is believed that you will, <strong><span class="has-inline-color has-vivid-cyan-blue-color">on average, pick a tile you need to complete a set every two picks</span></strong>. Because there are 4 of the same tile, the probability decreases by -0.75% for each desired tile seen (to 0% if all 4 tiles are accounted for). There&#8217;s no need to remember this particular probability, but it does somewhat play into the next point:</p>



<h3 class="wp-block-heading">Starting hand composition</h3>



<p>Taiwanese Mahjong is played using 144 tiles with a 16-tile hand. On average, when a round begins one should expect to see 4.2 tiles of a single suit and 3.4 tiles of wind/honors. This means that an ordinary hand will have roughly <strong><span class="has-inline-color has-vivid-cyan-blue-color">4-5 man tiles, 4-5 bam tiles, 4-5 circle tiles, and 3-4 wind/honor tiles</span></strong>. Likewise, there is a 9/34 (<em>26.47%</em>) chance to pick one of bamboo, circle, or man tiles, and 7/34 (20.58%) chance to pick a word tile. </p>



<p>This is an interesting and important concept to understand when going into detail about play strategy; for instance, a player with many non-pair winds/honor tiles will likely start the first few cycles of the round discarding them, whereas those who start discarding suit tiles very early may have a higher amount of &#8220;gates&#8221; and be closer to going out.</p>



<h3 class="wp-block-heading">[Early Game] Discarding Word tiles vs 1, 9 tiles</h3>



<p>This part may be controversial and not everybody may agree with the reasoning, but <span class="has-inline-color has-vivid-cyan-blue-color"><strong>in the discarding phase it is better to discard word tiles over an &#8220;orphan&#8221; <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt=""> or <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-440" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/9-dot-e1592592198872.png?resize=50%2C61&#038;ssl=1" alt=""></strong>.</span> This is because to create a set using <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt="">, for instance, any of the potential three remaining <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt="">, four <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-449" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/2-dot-e1592592103171.png?resize=50%2C61&#038;ssl=1" alt="">, and four <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-448" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/3-dot-e1592592115135.png?resize=50%2C61&#038;ssl=1" alt=""> may be drawn from the live wall. Compared to an orphaned word tile such as <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-443" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/red-e1592592167570.png?resize=50%2C61&#038;ssl=1" alt=""> (only three remaining), the probability of making a meld-able set (any of the following <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt="">, <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-449" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/2-dot-e1592592103171.png?resize=50%2C61&#038;ssl=1" alt="">, or <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-448" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/3-dot-e1592592115135.png?resize=50%2C61&#038;ssl=1" alt="">) is three times higher than picking a second word tile <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-443" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/red-e1592592167570.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-443" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/red-e1592592167570.png?resize=50%2C61&#038;ssl=1" alt="">.<br><br></p>



<p>This is a controversial concept because some players may take the chance to pick into a paired word tile provided one hadn&#8217;t already been discarded, and that the chance another player has a pair of the same word tile you have is minute, and thus if such opponents aim to go out then they will have no choice but to discard it somewhere down the line. That said, however, the following negative possibilities exist which diminishes the chance of one picking and melding word tiles in mid/late game:</p>



<ul class="wp-block-list">
<li>Opponent(s) want to discard the tile but found out they shouldn&#8217;t due to fear of discarding the winning tile.</li>



<li>One or more of the tile resides within the dead wall.</li>



<li>Another opponent also has a pair of the same word tile.</li>
</ul>



<p><br>The above does not include the simple fact that any player can go out with a 0-<em>tai</em> &#8220;chicken scratch&#8221; hand, so the aim for nearly all <em>ordinary</em> hands is to reach <em>tenpai</em> status as early as possible while waiting for a suitable set of tiles.<br><br>Thus, the most optimal discard order for the early game is as follows:<br></p>



<ol class="wp-block-list">
<li><em>Wind</em> tiles that are not the prevalent wind nor your position&#8217;s wind. This is to account for the chance you may pick a wind or honor tile while still in the early game which has potential to earn you an additional <em>tai</em>.</li>



<li>Remainder of orphan wind/honor tiles.</li>



<li>Orphan <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt="">&#8216;s and <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-440" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/9-dot-e1592592198872.png?resize=50%2C61&#038;ssl=1" alt="">&#8216;s.</li>



<li>Other separated tiles depending on situation.<br></li>
</ol>



<h2 class="wp-block-heading">Characteristics of Suit (Number) Tiles</h2>



<p></p>



<p><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-449" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/2-dot-e1592592103171.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-448" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/3-dot-e1592592115135.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-447" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/4-dot-e1592592134497.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-446" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/5-dot-e1592592124200.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-445" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/6-dot-e1592592156602.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-452" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/7-dot-e1592592017465.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-453" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/8-dot-e1592592036392.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-440" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/9-dot-e1592592198872.png?resize=50%2C61&#038;ssl=1" alt=""></p>



<h3 class="wp-block-heading">The Principle of Symmetry (對稱性)</h3>



<p>The first thing to understand about number tiles is that the set of 1-9 tiles is <strong>symmetric</strong>. This means that 1 to 5 is the same as 5 &#8211; 9 but &#8220;flipped&#8221; &#8211; every characteristic of 1 can be applied to 9, every characteristic of 2 can be applied to 8, and so on. For instance, discussions revolving probabilities of <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-449" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/2-dot-e1592592103171.png?resize=50%2C61&#038;ssl=1" alt=""> can be exactly applied to <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-453" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/8-dot-e1592592036392.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-440" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/9-dot-e1592592198872.png?resize=50%2C61&#038;ssl=1" alt="">. </p>



<p>This principle is very convenient when discussing probabilities and tile logic because one need only look at half (i.e. tile numbers 1 through 5) of the number tiles. From henceforth, barring some side notes, I will use tile numbers 1 through 5 for discussion around number tile logic and probabilities.</p>



<h3 class="wp-block-heading">The Principle of Suppression (向下壓/向上壓)</h3>



<p>The principle of suppression states that, especially in the beginning cycles, a player who discards a numbered tile will likely not want any numbers smaller than it (bigger if talking about 5 through 9). For example, a player who discards a <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-449" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/2-dot-e1592592103171.png?resize=50%2C61&#038;ssl=1" alt=""> is likely to not want a <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt="">, and likewise discarding a <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-448" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/3-dot-e1592592115135.png?resize=50%2C61&#038;ssl=1" alt=""> shows they likely don&#8217;t want <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-449" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/2-dot-e1592592103171.png?resize=50%2C61&#038;ssl=1" alt=""> or <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt="">. This is true because players want to discard all tiles not suitable for melds in the early game &#8211; starting with those numbered tiles furthest away. Of courses, there are cases such as  <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-449" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/2-dot-e1592592103171.png?resize=50%2C61&#038;ssl=1" alt=""> in which a player may discard <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-449" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/2-dot-e1592592103171.png?resize=50%2C61&#038;ssl=1" alt=""> but normally one chooses to keep it early game in case the left player discards a <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-448" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/3-dot-e1592592115135.png?resize=50%2C61&#038;ssl=1" alt=""> which can be used complete a meld. One can learn a lot about their opponents&#8217; hands when they discard tiles using this principle.</p>



<h3 class="wp-block-heading">The &#8220;1-4-7&#8221; Rule (一路性) </h3>



<p>1-4-7: <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt="">     <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-447" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/4-dot-e1592592134497.png?resize=50%2C61&#038;ssl=1" alt="">     <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-452" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/7-dot-e1592592017465.png?resize=50%2C61&#038;ssl=1" alt=""></p>



<p>2-5-8: <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-449" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/2-dot-e1592592103171.png?resize=50%2C61&#038;ssl=1" alt="">     <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-446" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/5-dot-e1592592124200.png?resize=50%2C61&#038;ssl=1" alt="">     <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-453" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/8-dot-e1592592036392.png?resize=50%2C61&#038;ssl=1" alt=""></p>



<p>3-6-9: <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-448" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/3-dot-e1592592115135.png?resize=50%2C61&#038;ssl=1" alt="">     <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-445" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/6-dot-e1592592156602.png?resize=50%2C61&#038;ssl=1" alt="">     <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-440" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/9-dot-e1592592198872.png?resize=50%2C61&#038;ssl=1" alt=""></p>



<p>Because mahjong incorporates the Chow mechanic, there is an observation which states that <strong><span class="has-inline-color has-vivid-cyan-blue-color">discarding a <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt=""> or <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-452" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/7-dot-e1592592017465.png?resize=50%2C61&#038;ssl=1" alt=""> is somewhat safe to an opponent who discards a <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-447" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/4-dot-e1592592134497.png?resize=50%2C61&#038;ssl=1" alt=""></span></strong> because by discarding <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-447" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/4-dot-e1592592134497.png?resize=50%2C61&#038;ssl=1" alt=""> the opponent shows they do not have the tiles necessary to meld <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt=""> or <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-452" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/7-dot-e1592592017465.png?resize=50%2C61&#038;ssl=1" alt=""> to complete a Chow. The same rule can be applied to 2-5-8 and 3-6-9. However, this does not mean that when an opponent discards a <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-449" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/2-dot-e1592592103171.png?resize=50%2C61&#038;ssl=1" alt=""> that they won&#8217;t want a <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-446" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/5-dot-e1592592124200.png?resize=50%2C61&#038;ssl=1" alt=""> . It is possible the opponent can chow or win with this tile, but the probability that they want this tile is roughly halved. Obviously, throwing a <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-449" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/2-dot-e1592592103171.png?resize=50%2C61&#038;ssl=1" alt=""> does not have any significant impact on the chances the opponent wants <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-453" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/8-dot-e1592592036392.png?resize=50%2C61&#038;ssl=1" alt="">.<br><br></p>



<p>The 1-4-7 rule has another interesting characteristic in that it can be leveraged to perform a 3-gated wait. Assuming one already has 3 sets and a pair of eyes (not shown):</p>



<p><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-449" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/2-dot-e1592592103171.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-448" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/3-dot-e1592592115135.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-447" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/4-dot-e1592592134497.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-446" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/5-dot-e1592592124200.png?resize=50%2C61&#038;ssl=1" alt=""><img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-445" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/6-dot-e1592592156602.png?resize=50%2C61&#038;ssl=1" alt=""></p>



<p>One can wait for <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-450" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/1-dot-e1592592080282.png?resize=50%2C61&#038;ssl=1" alt="">, <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-447" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/4-dot-e1592592134497.png?resize=50%2C61&#038;ssl=1" alt="">, or <img data-recalc-dims="1" loading="lazy" decoding="async" width="50" height="61" class="wp-image-452" style="width: 50px;" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/7-dot-e1592592017465.png?resize=50%2C61&#038;ssl=1" alt=""> to win, increasing the amount of wait-able tiles to 11 instead of 8 for a 2-sided wait. Sometimes for higher than 2-gated waits I may choose to not win on a first discard but instead go for a self-draw victory due to the increased chance of success.</p>



<h2 class="wp-block-heading">D-A-D (Develop &#8211; Attack &#8211; Defend)</h2>



<p>After noting the above sections, we can know go into the philosophy many professionals refer to as the <em>D-A-D</em> strategy. While many online sources go over each section and how it is beneficial to follow the strategy, I haven&#8217;t found any which goes into the fine details and reasoning behind why it is so. I will do my best to explain the logics behind this strategy here.</p>



<p>Let&#8217;s dive straight into the first &#8220;D&#8221;, which is:</p>



<h3 class="wp-block-heading">Cycle 1-6 : Develop (序盤)</h3>



<p>The first six cycles is referred to as &#8220;D&#8221; which stands for <em><strong><span class="has-inline-color has-vivid-red-color">Develop</span></strong></em>, otherwise known in other sources as &#8220;Opening&#8221; or &#8220;Early Game&#8221;. Earlier in the &#8220;<em>Starting hand composition</em>&#8221; section we know that on average a player&#8217;s starting hand consists of <span class="has-inline-color has-vivid-cyan-blue-color"><strong>4-5 tiles of each suit and 3-4 word tiles</strong></span>. Accounting for the probability of picking an additional 1-2 word (remember there is a roughly 20% chance &#8211; 1 in 5 picks &#8211; in which a word tile is drawn) tiles plus discarding un-needed orphan tiles, cleaning out your hand to a point where one can begin to attack averages at around 6 rounds. In other words, if one still has orphaned cards after the <em>Develop</em> phase then they may consider giving up for this round, skip the attack phase and go straight into defense.</p>



<h3 class="wp-block-heading">Cycle 6-12 : Attack (中盤)</h3>



<p>The <strong><em><span class="has-inline-color has-vivid-red-color">Attack</span></em></strong> phase (mid-game) can be further split into two:</p>



<h4 class="wp-block-heading">Cycle 6-9</h4>



<p>Players with a good starting hand or has had favorable melds will reach <em>tenpai</em> within the early mid-game. Other opponents who see that they have many melds should watch this player&#8217;s discards carefully as it can give clues on what they are waiting on. If one is not <em>tenpai</em> and does not have a safe tile to discard then they can consider folding and playing defense for the rest of the round.</p>



<h4 class="wp-block-heading">Cycle 9-12</h4>



<p>Most players with an ordinary starting hand and luck will likely reach <em>tenpai</em> in this stage. At this point one should weigh the risks of going for the win vs how strong opponents&#8217; hands are. Waiting on a single tile or a blocked 2-gated wait is not ideal at this stage.</p>



<h3 class="wp-block-heading">Cycle 13-15 : Defend (末盤)</h3>



<p>If one is not <em>tenpai</em> at this end-game then give up, because no matter what it is not appetizing to discard a dangerous tile when one is not close to winning. Give that chance to others who are perhaps not as experienced at you are, or believe that the opponent(s) will not win on self-draw due to being stuck or merely waiting on bad tiles.</p>



<h2 class="wp-block-heading">Good vs Bad Starting Hand</h2>



<p>Like with other types of mahjong, the most convenient method is to check how many cards you are away from tenpai. More experienced players are able to adjust the formula to further calculate how easy/hard it is to acquire the remaining tiles necessary &#8211; some pointers and advice is left for a future guide on advanced gameplay. For now we will just go over the simple formula, which is how many tiles you are away from <em>tenpai</em>.</p>



<ul class="wp-block-list">
<li><strong>2-3 to <em>tenpai</em></strong> <strong>(Good)</strong><br>Assuming from above that on average it takes two draws to bring one&#8217;s hand a tile closer to <em>tenpai</em>. Thus, 2-3 away from tenpai means one will reach tenpai before mid-game, in which case you should <strong><span class="has-inline-color has-vivid-cyan-blue-color">forcibly attack and play to win</span></strong>.</li>



<li><strong>3-4 to <em>tenpai</em></strong> <strong>(Normal)</strong><br>With this hand you should expect to have either 1 set and 1 pair, or 0 sets and 1 pair but with <em>easy to meld combinations.</em> Expect for everyone to reach <em>tenpai</em> 8-10 cycles into the round. Obviously, because this type of hand is the most often to occur, one should consider the situation and decide whether to continue attacking or to switch to defense during mid-game.</li>



<li><strong>5+ to tenpai (Bad)</strong><br>One should seriously consider defending for this round for any hand above five tiles needed to <em>tenpai</em>. Unless the player has amazing luck drawing tiles with their left player feeding them, one would already be at the last three cycles before reaching <em>tenpai</em>, which also means one would need to take 2-3 rounds discarding risky tiles mid-game to get to that point. Withdrawing like this for even a few rounds out of 20-22 rounds is not going to hurt the overall game. There is a saying amongst professional players which goes along the lines of: &#8220;<em><strong><span class="has-inline-color has-vivid-red-color">Anyone who discards the winning tile (lose) during the end-game (末盤) without tenpai does not know how to play mahjong</span></strong></em>&#8220;.<br></li>
</ul>



<p></p>The post <a href="https://www.jiyuulife.net/taiwanese-mahjong-introduction/">Essence of Taiwanese Mahjong – Introduction</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">437</post-id>	</item>
		<item>
		<title>Opening A Rakuten Bank Account</title>
		<link>https://www.jiyuulife.net/rakuten-bank-account-guide/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Wed, 03 Jun 2020 14:25:00 +0000</pubDate>
				<category><![CDATA[How-To]]></category>
		<category><![CDATA[bank]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[guide]]></category>
		<category><![CDATA[japan]]></category>
		<category><![CDATA[rakuten]]></category>
		<category><![CDATA[rakuten bank]]></category>
		<category><![CDATA[新規講座]]></category>
		<category><![CDATA[楽天]]></category>
		<category><![CDATA[楽天バンク]]></category>
		<category><![CDATA[楽天銀行]]></category>
		<category><![CDATA[講座申し込み]]></category>
		<guid isPermaLink="false">https://www.jiyuulife.net/?p=153</guid>

					<description><![CDATA[<p>  Disclaimer (2020-06-03): The first half of the guide (first page of registration) has now been updated to the latest version. The second section about Credit Card information has been left as-is since its UI has been left nearly the same since two years ago. Ignore the sudden jump in numbering as I have only ... <a title="Opening A Rakuten Bank Account" class="read-more" href="https://www.jiyuulife.net/rakuten-bank-account-guide/" aria-label="Read more about Opening A Rakuten Bank Account">Read more</a></p>
The post <a href="https://www.jiyuulife.net/rakuten-bank-account-guide/">Opening A Rakuten Bank Account</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></description>
										<content:encoded><![CDATA[<p style="text-align: center;"> </p>
<p><strong>Disclaimer (2020-06-03): </strong>The first half of the guide (first page of registration) has now been updated to the latest version. The second section about Credit Card information has been left as-is since its UI has been left nearly the same since two years ago. Ignore the sudden jump in numbering as I have only updated the first half of the guide. That said, if there are any discrepancies please do let me know in the comments section!</p>
<h2>Introduction</h2>
<p style="text-align: left;"><a href="https://r10.to/hzorHE"><img data-recalc-dims="1" loading="lazy" decoding="async" class="alignright wp-image-149 size-full" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/rakuten-bank-card.jpg?resize=303%2C190&#038;ssl=1" alt="" width="303" height="190" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/rakuten-bank-card.jpg?w=303&amp;ssl=1 303w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/rakuten-bank-card.jpg?resize=300%2C188&amp;ssl=1 300w" sizes="auto, (max-width: 303px) 100vw, 303px" /></a>Rakuten Bank is an online service that aims to provide various banking services to customers. Those who use or subscribe to various Rakuten services will often enjoy additional benefits for their banking needs. Just like with Rakuten Card, there are no physical offices you can go to so everything is managed online instead. Having an account with Rakuten is recommended if you heavily use things such as Card, Securities, Edy, or Super Points. In any case, you can read about a non-exhaustive list of advantages and disadvantages below:</p>
<p><span id="more-153"></span></p>
<h3><strong>Advantages</strong></h3>
<ul class="list-group">
<li class="list-group-item">All services available over the internet</li>
<li class="list-group-item">Enjoy additional benefits when linking bank to many other Rakuten services.</li>
<li class="list-group-item">Deposits can be done at Yuucho, and withdrawals from Yuucho and many popular convenience stores.</li>
<li class="list-group-item">It&#8217;s possible to have up to 5 transfers and 5 withdrawals free per month based on your &#8220;Happy Program&#8221; ranking.</li>
</ul>
<h3><strong>Disadvantages</strong></h3>
<ul class="list-group">
<li class="list-group-item">If you ran out of free transfers and withdrawals, the fee can be pretty high (especially weekends/holidays)</li>
<li class="list-group-item">Extra work may be necessary to link other company&#8217;s services to Rakuten Bank (for billing/transfer purposes)</li>
<li class="list-group-item">Interest returns on your balance are lower compared to other companies.</li>
</ul>
<h2>Prerequisites</h2>
<p>You, obviously, need to reside in Japan and also have at least one of:</p>
<ul>
<li>Japanese Driver&#8217;s License</li>
<li>Health Insurance Card</li>
<li>Residence Card</li>
</ul>
<p>After you submit the application you will be asked to submit proof of document for one of the above. This can be done via mobile application or via snail mail. For obvious reason I recommend using the Rakuten Bank mobile app to upload images of your formal document of choice.</p>
<p>In addition, <b>if you haven&#8217;t registered for a Rakuten group account yet, then I strongly advise you do so</b> as the below guide is tailored for those who already have an account. Don&#8217;t worry, the registration should be very straightforward (Last/First Name, username, password, e-mail address).</p>
<h2>Before You Start&#8230;</h2>
<p><b>Don&#8217;t stay too long on a screen or else it will TIMEOUT and you will have to do it All. Over. Again.</b> If you are slow in filling out Japanese forms then I recommend you look over this guide first and prepare in however way you wish before proceeding.</p>
<h2 id="application-process">Application Process</h2>
<h3>Getting to the Application Form</h3>
<p>Click <a href="https://r10.to/hzorHE">here</a> to support me (thank you!) and start the process of signing up for Rakuten Bank. Click on the red button in the middle of the page. <a href="https://r10.to/hzorHE"><img data-recalc-dims="1" loading="lazy" decoding="async" class="alignnone wp-image-408 size-large" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/Screen-Shot-2020-06-03-at-5.10.37-PM.png?resize=1024%2C839&#038;ssl=1" alt="" width="1024" height="839" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/Screen-Shot-2020-06-03-at-5.10.37-PM.png?resize=1024%2C839&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/Screen-Shot-2020-06-03-at-5.10.37-PM.png?resize=300%2C246&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/Screen-Shot-2020-06-03-at-5.10.37-PM.png?resize=768%2C629&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/Screen-Shot-2020-06-03-at-5.10.37-PM.png?resize=1536%2C1259&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/Screen-Shot-2020-06-03-at-5.10.37-PM.png?w=1728&amp;ssl=1 1728w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></a></p>
<p>If you have not logged into your Rakuten account yet, do so. If you do not yet own an account, go ahead and create one by clicking on the right-side button.</p>
<p><img data-recalc-dims="1" loading="lazy" decoding="async" class="alignnone wp-image-409 size-large" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/Screen-Shot-2020-06-03-at-5.13.06-PM.png?resize=1024%2C880&#038;ssl=1" alt="" width="1024" height="880" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/Screen-Shot-2020-06-03-at-5.13.06-PM.png?resize=1024%2C880&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/Screen-Shot-2020-06-03-at-5.13.06-PM.png?resize=300%2C258&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/Screen-Shot-2020-06-03-at-5.13.06-PM.png?resize=768%2C660&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/Screen-Shot-2020-06-03-at-5.13.06-PM.png?resize=1536%2C1320&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/Screen-Shot-2020-06-03-at-5.13.06-PM.png?w=1678&amp;ssl=1 1678w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></p>
<p>You will be transitioned to a temporary page stating you have successfully entered into the campaign, and will be redirected to the signup form in about five seconds.</p>
<h3 id="form-part-a-bank-account-info">Form Part A: Bank Account Info</h3>
<p>Refer to the notes below the images for additional information:<a href="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_1.png?ssl=1"><br /><img data-recalc-dims="1" loading="lazy" decoding="async" class="alignnone wp-image-413 size-large" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.50.58-PM.png?resize=1024%2C936&#038;ssl=1" alt="" width="1024" height="936" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.50.58-PM.png?resize=1024%2C936&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.50.58-PM.png?resize=300%2C274&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.50.58-PM.png?resize=768%2C702&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.50.58-PM.png?resize=1536%2C1404&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.50.58-PM.png?w=1928&amp;ssl=1 1928w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></a></p>
<p><b>名前：漢字)</b> Your name should be input, in FULL-WIDTH ALPHABET, your name as shown on your residence card. If you&#8217;re like me who has strange characters in your name (such as a hyphen in first name), then omit it completely.<br />(eg &#8220;SMITH, ANNA-MARIE&#8221; should be &#8220;SMITH, ANNAMARIE&#8221;)<br /><b>名前：フリガナ)</b> If you registered your Rakuten group account using English name then this should be autofilled with &#8220;ー　ー&#8221;. You can choose to leave as is or replace with Katakana reading.<br /><b>性別)</b> Left for Male, right for female. Nothing confusing here.<br /><b>生年月日)</b> Birthday. Nothing special here.<br /><b>電話番号)</b> Enter your phone number.<br /><strong>メールアドレス</strong><b>) </b>This should be autofilled for you if you logged into your Rakuten group account. Just re-enter e-mail in confirmation box.<br /><b>住所：郵便番号) </b>Input your residence&#8217;s zip code and click button to the right.<br /><b>住所：都道府県市区町村) </b>Enter the rest of your address as printed on the back of your residence card.<br /><b></b></p>
<p><img data-recalc-dims="1" loading="lazy" decoding="async" class="alignnone size-large wp-image-414" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.52.48-PM.png?resize=1024%2C785&#038;ssl=1" alt="" width="1024" height="785" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.52.48-PM.png?resize=1024%2C785&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.52.48-PM.png?resize=300%2C230&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.52.48-PM.png?resize=768%2C589&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.52.48-PM.png?resize=1536%2C1178&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.52.48-PM.png?w=1878&amp;ssl=1 1878w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><b></b>Note the checkbox, which translates to&#8221;Please check this box if you do not have Japanese citizenship. Those with Japanese citizenship need not check this box.&#8221;<br />Hint: you should check this box.<br /><strong>「米国人」</strong><b>&#8230;)</b> Check right box if you are American. Otherwise, check left one.<br /><strong>居住地国の確認) </strong>Check the above box if you only reside in Japan. In other words, unless you have tax responsibilities from staying in other countries, check the top box.<br /><b>職業)</b> Below is a formatted table of the selections:</p>
<table class="table table-bordered" style="height: 162px;" width="810">
<tbody>
<tr>
<td>Full-Time Employee</td>
<td>Full-Time (Manager or Above)</td>
<td>Company Executive</td>
</tr>
<tr>
<td>Haken/Part-time/Contract/etc</td>
<td>Self-employed</td>
<td>Government/Education</td>
</tr>
<tr>
<td>Staff member of association</td>
<td>Doctor/Lawyer/etc</td>
<td>Housewife/Househusband</td>
</tr>
<tr>
<td>Student</td>
<td>Unemployed</td>
<td> </td>
</tr>
<tr>
<td>Other (Fill in the blank)</td>
<td> </td>
<td> </td>
</tr>
</tbody>
</table>
<p>(Depending on what you chose in #7 above, you may have to fill out the below. Otherwise just move on.)</p>
<p><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-full wp-image-136" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_1_5.png?resize=930%2C720&#038;ssl=1" alt="" width="930" height="720" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_1_5.png?w=930&amp;ssl=1 930w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_1_5.png?resize=600%2C465&amp;ssl=1 600w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_1_5.png?resize=300%2C232&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_1_5.png?resize=768%2C595&amp;ssl=1 768w" sizes="auto, (max-width: 930px) 100vw, 930px" /><br />Basically follow the notes directly on the image and fill in your company&#8217;s information as best you can.</p>
<p><img data-recalc-dims="1" loading="lazy" decoding="async" class="alignnone size-large wp-image-415" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.00-PM.png?resize=1024%2C948&#038;ssl=1" alt="" width="1024" height="948" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.00-PM.png?resize=1024%2C948&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.00-PM.png?resize=300%2C278&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.00-PM.png?resize=768%2C711&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.00-PM.png?resize=1536%2C1421&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.00-PM.png?w=1878&amp;ssl=1 1878w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></p>
<p>Pick the kind of card you want. The types of cards go from debit cards to credit cards to simple bank (cash) cards. Keep in mind that you may need to provide additional information if you choose to get a cash card with credit option. Refer to the other link for how to register for Rakuten Card <a href="https://www.jiyuulife.net/rakuten-card-guide/">here</a> for some additional references.</p>
<p><img data-recalc-dims="1" loading="lazy" decoding="async" class="alignnone size-large wp-image-416" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.07-PM.png?resize=1024%2C404&#038;ssl=1" alt="" width="1024" height="404" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.07-PM.png?resize=1024%2C404&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.07-PM.png?resize=300%2C118&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.07-PM.png?resize=768%2C303&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.07-PM.png?resize=1536%2C606&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.07-PM.png?w=1864&amp;ssl=1 1864w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></p>
<p><strong>講座の利用目的)</strong> Must check one of the options above. Some common ones are:<br /><span style="text-decoration: underline;">生活費の払い</span>: Personal expenses<br /><span style="text-decoration: underline;">給与/年金の受取</span>: Salary Transfer<br /><span style="text-decoration: underline;">楽天サービスの利用</span>: Use Rakuten Services</p>
<p><img data-recalc-dims="1" loading="lazy" decoding="async" class="alignnone size-large wp-image-417" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.18-PM.png?resize=1024%2C679&#038;ssl=1" alt="" width="1024" height="679" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.18-PM.png?resize=1024%2C679&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.18-PM.png?resize=300%2C199&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.18-PM.png?resize=768%2C510&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.18-PM.png?resize=1536%2C1019&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.18-PM.png?w=1872&amp;ssl=1 1872w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></p>
<p>Select the type of document you will provide as personal verification, in the form of the following:</p>
<table class="table table-bordered" style="height: 115px;" width="600">
<tbody>
<tr>
<td>Driver&#8217;s License</td>
<td>Personal My Number Card</td>
</tr>
<tr>
<td>Passport</td>
<td>Jūminhyō</td>
</tr>
<tr>
<td>Other</td>
<td> </td>
</tr>
</tbody>
</table>
<p><img data-recalc-dims="1" loading="lazy" decoding="async" class="alignnone size-large wp-image-418" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.26-PM.png?resize=1024%2C644&#038;ssl=1" alt="" width="1024" height="644" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.26-PM.png?resize=1024%2C644&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.26-PM.png?resize=300%2C189&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.26-PM.png?resize=768%2C483&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.26-PM.png?resize=1536%2C966&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.26-PM.png?w=1864&amp;ssl=1 1864w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></p>
<p><strong>楽天銀行toto)</strong> Rakuten Toto is the lottery business of Rakuten. It is not a required service so uncheck it if you do not need it.<br /><strong>楽天証券講座)</strong> Left box if you want to also create a stock brokerage account with Rakuten, otherwise check right box.</p>
<p><img data-recalc-dims="1" loading="lazy" decoding="async" class="alignnone size-large wp-image-419" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.32-PM.png?resize=1024%2C482&#038;ssl=1" alt="" width="1024" height="482" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.32-PM.png?resize=1024%2C482&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.32-PM.png?resize=300%2C141&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.32-PM.png?resize=768%2C362&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.32-PM.png?resize=1536%2C724&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/Screen-Shot-2020-06-03-at-4.53.32-PM.png?w=1872&amp;ssl=1 1872w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></p>
<p>Check this required box to agree to the T&amp;C. Afterwards click the &#8220;次へ&#8221; button on the bottom right.</p>
<h3 id="form-part-b-credit-card-info">Form Part B: Credit Card Info</h3>
<p>Refer to the notes below the images for additional information:<br /><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-large wp-image-141" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_5.png?resize=1024%2C928&#038;ssl=1" alt="" width="1024" height="928" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_5.png?resize=1024%2C928&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_5.png?resize=600%2C544&amp;ssl=1 600w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_5.png?resize=300%2C272&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_5.png?resize=768%2C696&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_5.png?w=1067&amp;ssl=1 1067w" sizes="auto, (max-width: 1024px) 100vw, 1024px" />Fill out #25-#27 as noted in image above.<br /><b>28) </b>Name in ROMAJI (Again)<br /><b>29) </b>Phone number<br /><b>30) </b>Maybe can leave blank</p>
<p><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-full wp-image-142" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_6.png?resize=949%2C865&#038;ssl=1" alt="" width="949" height="865" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_6.png?w=949&amp;ssl=1 949w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_6.png?resize=600%2C547&amp;ssl=1 600w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_6.png?resize=300%2C273&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_6.png?resize=768%2C700&amp;ssl=1 768w" sizes="auto, (max-width: 949px) 100vw, 949px" /></p>
<p><b>34) </b>Here&#8217;s another table, in the same ordering:</p>
<table class="table table-bordered" style="height: 67px;" width="705">
<tbody>
<tr>
<td>Married with children</td>
<td>Married without children</td>
<td>Not married with children</td>
</tr>
<tr>
<td>Single (living away from family)</td>
<td>Single (living with family)</td>
</tr>
</tbody>
</table>
<p><b>35) </b>Put yourself in the count (so if you&#8217;re single with no dependents, put &#8220;一人世帯&#8221;)<br /><b>36) </b>Tables are fun!</p>
<table class="table table-bordered">
<tbody>
<tr>
<td>Own a house</td>
<td>Co-own a house with spouse</td>
<td>Co-own a house with someone not your spouse</td>
</tr>
<tr>
<td>Renting &#8220;mansion&#8221;</td>
<td>Renting &#8220;mansion&#8221; (Dormitory)</td>
<td>Renting &#8220;mansion&#8221; (Public Corporation)</td>
</tr>
<tr>
<td>Renting apartment</td>
<td>&#8220;Borrowing&#8221; a house</td>
<td>Company Dormitory</td>
</tr>
<tr>
<td>Dormitory</td>
<td>Boarding Housing</td>
<td>Others</td>
</tr>
</tbody>
</table>
<p><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-full wp-image-143" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_7.png?resize=941%2C840&#038;ssl=1" alt="" width="941" height="840" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_7.png?w=941&amp;ssl=1 941w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_7.png?resize=600%2C536&amp;ssl=1 600w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_7.png?resize=300%2C268&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_7.png?resize=768%2C686&amp;ssl=1 768w" sizes="auto, (max-width: 941px) 100vw, 941px" /></p>
<p><b>42) </b>From left to right: working, student, unemployed, earning retirement benefits<br /><b>43) </b>If you earn your own income, check left. If you don&#8217;t, choose right.<br /><b>44) </b>Your yearly income (before tax!)<br /><b>45 &#8211; 50) </b>Same as the company information you may have filled out earlier on page 1.<br /><b>51) </b>Job Role:</p>
<table class="table table-bordered">
<tbody>
<tr>
<td>Education</td>
<td>Reception/Associate</td>
<td>Administration</td>
<td>Labor</td>
<td>Business</td>
<td>Sales</td>
</tr>
<tr>
<td>Technology</td>
<td>Driving</td>
<td>Other</td>
</tr>
</tbody>
</table>
<p><b>52) </b>Type of Employee:</p>
<table class="table table-bordered">
<tbody>
<tr>
<td>Full-time Employee</td>
<td>Personal Business</td>
<td>Government</td>
<td>Part-time</td>
</tr>
<tr>
<td>Haken/Contract</td>
<td>Executive</td>
<td>Other</td>
</tr>
</tbody>
</table>
<p>The text below selection reads: If you are a student doing part-time work, fill in &#8220;Part-time&#8221;.<br /><b>53) </b>Industry:</p>
<table class="table table-bordered">
<tbody>
<tr>
<td>Manufacturing</td>
<td>Service</td>
<td>Retail</td>
</tr>
<tr>
<td>Educational Medicine</td>
<td>IT</td>
<td>Government</td>
</tr>
<tr>
<td>Construction</td>
<td>Insurance</td>
<td>Logistics/Shipping</td>
</tr>
<tr>
<td>Food/Restaurant</td>
<td>Real Estate</td>
<td>Printing</td>
</tr>
<tr>
<td>Utilities (water, gas, etc)</td>
<td>Agriculture</td>
<td>Others</td>
</tr>
</tbody>
</table>
<p>Confirm the following two points and click red button on bottom of page.<br /><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-full wp-image-144" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_8.png?resize=958%2C489&#038;ssl=1" alt="" width="958" height="489" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_8.png?w=958&amp;ssl=1 958w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_8.png?resize=600%2C306&amp;ssl=1 600w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_8.png?resize=300%2C153&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_8.png?resize=768%2C392&amp;ssl=1 768w" sizes="auto, (max-width: 958px) 100vw, 958px" /></p>
<p>You have now reached the confirmation page (you are almost done!!)<br /><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-full wp-image-145" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_9.png?resize=1005%2C613&#038;ssl=1" alt="" width="1005" height="613" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_9.png?w=1005&amp;ssl=1 1005w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_9.png?resize=600%2C366&amp;ssl=1 600w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_9.png?resize=300%2C183&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_9.png?resize=768%2C468&amp;ssl=1 768w" sizes="auto, (max-width: 1005px) 100vw, 1005px" /></p>
<h3 id="form-part-c-confirm-submit">Form Part C: Confirm + Submit</h3>
<p>Make sure to check the box as shown (you can leave the others as-is &#8211; they&#8217;re not subscriptions to anything or whatever that will spam you)<br /><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-full wp-image-146" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_10.png?resize=970%2C682&#038;ssl=1" alt="" width="970" height="682" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_10.png?w=970&amp;ssl=1 970w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_10.png?resize=600%2C422&amp;ssl=1 600w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_10.png?resize=300%2C211&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/form_10.png?resize=768%2C540&amp;ssl=1 768w" sizes="auto, (max-width: 970px) 100vw, 970px" /></p>
<p>Aaaand, you are done! You should receive an e-mail with the confirmation receipt number. Now it&#8217;s just a matter of waiting!<br /><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-full wp-image-152" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/receipt.png?resize=973%2C814&#038;ssl=1" alt="" width="973" height="814" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/receipt.png?w=973&amp;ssl=1 973w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/receipt.png?resize=600%2C502&amp;ssl=1 600w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/receipt.png?resize=300%2C251&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2018/07/receipt.png?resize=768%2C642&amp;ssl=1 768w" sizes="auto, (max-width: 973px) 100vw, 973px" /></p>
<h2 id="what-to-do-after">What To Do After</h2>
<p>You are required to submit proof that you reside and work in Japan. You have the choice between multiple documents you can submit. The two most commonly used documents are your Residence Card or your Health Insurance Card. Choose one you prefer, download the Rakuten Bank App, and submit front/back images of your document through it. (Unfortunately I don&#8217;t have a test account so I cannot create a tutorial for this, but there&#8217;s no rush so please ask a trusted Japanese friend to help you!)</p>
<p>Search &#8220;Rakuten Bank&#8221; or &#8220;楽天銀行&#8221; on your phone, or scan the QR code on the receipt screen (OR, you can even scan the QR code in the above image!)</p>
<h2 id="trivia-nice-to-knows">Trivia/Nice-To-Knows</h2>
<p>Will add as I think of them.</p>


<p></p>The post <a href="https://www.jiyuulife.net/rakuten-bank-account-guide/">Opening A Rakuten Bank Account</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">153</post-id>	</item>
		<item>
		<title>Driving in Taiwan With Japanese Driver&#8217;s License</title>
		<link>https://www.jiyuulife.net/driving-in-taiwan-with-japanese-license/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Wed, 03 Jun 2020 07:51:46 +0000</pubDate>
				<category><![CDATA[How-To]]></category>
		<category><![CDATA[ARC]]></category>
		<category><![CDATA[drivers license]]></category>
		<category><![CDATA[driving]]></category>
		<category><![CDATA[gogoro]]></category>
		<category><![CDATA[IDP]]></category>
		<category><![CDATA[JAF]]></category>
		<category><![CDATA[japan]]></category>
		<category><![CDATA[license]]></category>
		<category><![CDATA[taiwan]]></category>
		<category><![CDATA[wemo]]></category>
		<guid isPermaLink="false">https://www.jiyuulife.net/?p=395</guid>

					<description><![CDATA[<p>Visiting Taiwan and want to drive but forgot to apply for an International Driver&#8217;s Permit? If you have a Japanese driver&#8217;s license then it is possible for you to drive in Taiwan without having to transfer your license to Taiwan D/L or needing an International Driver&#8217;s Permit (IDP). On top of that, unlike IDPs which ... <a title="Driving in Taiwan With Japanese Driver&#8217;s License" class="read-more" href="https://www.jiyuulife.net/driving-in-taiwan-with-japanese-license/" aria-label="Read more about Driving in Taiwan With Japanese Driver&#8217;s License">Read more</a></p>
The post <a href="https://www.jiyuulife.net/driving-in-taiwan-with-japanese-license/">Driving in Taiwan With Japanese Driver’s License</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></description>
										<content:encoded><![CDATA[<div class="wp-block-image">
<figure class="aligncenter size-medium"><img data-recalc-dims="1" loading="lazy" decoding="async" width="292" height="300" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2021/02/pexels-photo-2303781.jpeg?resize=292%2C300&#038;ssl=1" alt="van parked beside the road near handrail and ocean" class="wp-image-533" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2021/02/pexels-photo-2303781.jpeg?resize=292%2C300&amp;ssl=1 292w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2021/02/pexels-photo-2303781.jpeg?resize=997%2C1024&amp;ssl=1 997w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2021/02/pexels-photo-2303781.jpeg?resize=768%2C789&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2021/02/pexels-photo-2303781.jpeg?w=1266&amp;ssl=1 1266w" sizes="auto, (max-width: 292px) 100vw, 292px" /><figcaption class="wp-element-caption">Photo by gya den on <a href="https://www.pexels.com/photo/van-parked-beside-the-road-near-handrail-and-ocean-2303781/" rel="nofollow">Pexels.com</a></figcaption></figure></div>


<p>Visiting Taiwan and want to drive but forgot to apply for an International Driver&#8217;s Permit? If you have a Japanese driver&#8217;s license then it is possible for you to drive in Taiwan <strong><span class="has-inline-color has-vivid-cyan-blue-color">without having to transfer your license to Taiwan D/L or needing an International Driver&#8217;s Permit (IDP)</span>.</strong> On top of that, unlike IDPs which requires one to process before embarkation, those who are too late (already in Taiwan) are still able to process the necessary documents to drive &#8211; and it will be available to use immediately.</p>



<p>Read on for details, procedures, precautions, and other important information regarding driving in Taiwan with a Japanese D/L.<br><br></p>



<span id="more-395"></span>



<hr class="wp-block-separator has-css-opacity"/>



<h2 class="wp-block-heading">Before You Begin</h2>



<p>Since September 21, 1996 Taiwan and Japan have entered into a <a href="https://www.thb.gov.tw/page?node=11c59ea2-9f74-4465-9514-717abd80f720">reciprocal agreement (TW)</a> which enables license holders from one country to drive in the other withOUT transferring of license. While there are some restrictions regarding vehicle types you can drive depending on the license type (I will go more into detail about these restrictions below), it is pretty reasonable and you should expect to be able to drive the same kind of vehicle as you would in Japan.</p>



<p>However, this article only applies to you if <strong><span class="has-inline-color has-vivid-cyan-blue-color">you do not plan to apply for an IDP or if you are visiting Taiwan under a Visitor&#8217;s Visa</span></strong> &#8211; this is because it is better to just translate your Japanese D/L to Taiwan D/L if you are a resident of Taiwan or otherwise have a work permit (ARC). </p>



<p>In addition, note that the period of validity is limited as follows:</p>



<ul class="wp-block-list">
<li>Usage period is 365 days from date of arrival to Taiwan. This 365 days is refreshed when you depart and revisit Taiwan.</li>



<li>Your driving eligibility is revoked after the expiry date on your Japan D/L.</li>



<li>If your Japanese D/L is expired, you must apply for a new translation after renewal.</li>
</ul>



<p>Remember to bring your Japanese Driver&#8217;s License with you to Taiwan. Additional required documents are detailed in the next section.</p>



<figure class="wp-block-embed is-type-rich is-provider-auto-amazon-links wp-block-embed-auto-amazon-links"><div class="wp-block-embed__wrapper">
<iframe title="Amazon Product" src='https://jiyuulife.net/amazon-auto-links/embed/?embed=amazon-auto-links&#038;uri=https%3A%2F%2Fwww.amazon.co.jp%2F%25E3%2582%25B3%25E3%2583%25A0%25E3%2583%2586%25E3%2583%2583%25E3%2582%25AF-%25E3%2583%2589%25E3%2583%25A9%25E3%2582%25A4%25E3%2583%2596%25E3%2583%25AC%25E3%2582%25B3%25E3%2583%25BC%25E3%2583%2580%25E3%2583%25BC-ZDR016-%25E5%25BE%258C%25E7%25B6%259A%25E8%25BB%258A%25E4%25B8%25A1%25E6%258E%25A5%25E8%25BF%2591%25E3%2581%258A%25E7%259F%25A5%25E3%2582%2589%25E3%2581%259B%25E6%25A9%259F%25E8%2583%25BD%25E6%2590%25AD%25E8%25BC%2589-%25E5%25AE%2589%25E5%2585%25A8%25E9%2581%258B%25E8%25BB%25A2%25E6%2594%25AF%25E6%258F%25B4%25E6%25A9%259F%25E8%2583%25BD%25E6%2590%25AD%25E8%25BC%2589%2Fdp%2FB08BKCW5LS%2Fref%3Dsr_1_6%3Fkeywords%3D%25E3%2583%2589%25E3%2583%25A9%25E3%2582%25A4%25E3%2583%2596%25E3%2583%25AC%25E3%2582%25B3%25E3%2583%25BC%25E3%2583%2580%25E3%2583%25BC%26qid%3D1675546321%26refinements%3Dp_76%253A2227292051%26rnid%3D2227291051%26rps%3D1%26sprefix%3D%25E3%2583%2589%25E3%2583%25A9%25E3%2582%25A4%25E3%2583%2596%25E3%2583%25AC%25E3%2582%25B3%25E3%2583%25BC%252Caps%252C562%26sr%3D8-6#secret=91b5f65052' width='600' height='200' frameborder='0' scrolling='no' marginwidth='0' marginheight='0' class='wp-embedded-content aal-embed' data-secret='91b5f65052'></iframe>
</div></figure>



<h2 class="wp-block-heading">Required Documents</h2>



<p>Police officers and other officials who need to check your identity and license verification would need the following items. Note that you MUST have all three documents with you in order to operate a vehicle:</p>



<ul class="wp-block-list">
<li>Passport</li>



<li>Japanese Driver&#8217;s License</li>



<li>Translation of Japanese Driver&#8217;s License to Traditional Chinese<br></li>
</ul>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img data-recalc-dims="1" loading="lazy" decoding="async" width="779" height="1024" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/IMG_20200603_1318192.jpg?resize=779%2C1024&#038;ssl=1" alt="" class="wp-image-396" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/IMG_20200603_1318192-scaled.jpg?resize=779%2C1024&amp;ssl=1 779w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/IMG_20200603_1318192-scaled.jpg?resize=228%2C300&amp;ssl=1 228w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/IMG_20200603_1318192-scaled.jpg?resize=768%2C1010&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/IMG_20200603_1318192-scaled.jpg?resize=1168%2C1536&amp;ssl=1 1168w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/IMG_20200603_1318192-scaled.jpg?resize=1558%2C2048&amp;ssl=1 1558w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/06/IMG_20200603_1318192-scaled.jpg?w=1947&amp;ssl=1 1947w" sizes="auto, (max-width: 779px) 100vw, 779px" /><figcaption class="wp-element-caption">Figure 1-1 : Translated Document of Japanese Driver&#8217;s License (普通) to Traditional Chinese.</figcaption></figure></div>


<p>This translation of your Japanese Driver&#8217;s License is likely the only item you don&#8217;t have on hand, but rest assured it is possible to produce this document whether you are in still in Japan or already in Taiwan. It is highly recommended you secure this document while in Japan since there are very few places where you will be able to translate your Japanese Driver&#8217;s License in Taiwan. This brings us to the next topic&#8230;</p>



<h2 class="wp-block-heading">Where to Translate Your Japanese D/L</h2>



<p>The Japan Automobile Federation (JAF) is the official and only entity which can provide a legal translation of your Japanese D/L to Taiwanese D/L. </p>



<h3 class="wp-block-heading">In Japan</h3>



<p>JAF has many locations across Japan where you can either walk-in or mail your application to. Refer to the &#8220;<a href="https://jaf.or.jp/common/contact/global-support">日本運転免許証の中国語翻訳文（台湾）の発行が可能な支部</a>&#8221; section to find the office most convenient for you. Do keep in mind that some offices do not accept mail-in services and others may not have a reception desk &#8211; make sure to check the &#8220;受付&#8221; and &#8220;発行&#8221; sections for each office before visiting or submitting your application. The translation will take some time, so don&#8217;t expect to be able to receive your translated document on the same day.</p>



<p>Bring/submit the following when applying for the translation document:</p>



<ul class="wp-block-list">
<li><a href="https://jaf.or.jp/-/media/1/2590/2709/2717/pdf_apli_j-taiwan.pdf?la=ja-JP">Translation Application</a></li>



<li>Japanese Driver&#8217;s License</li>



<li>3600JPY</li>
</ul>



<p>More detailed information can be found on their official <a href="https://jaf.or.jp/common/global-support/taiwan">page</a>. Allow yourself enough time to submit and receive the translation before embarking on your trip to Taiwan.</p>



<h3 class="wp-block-heading">In Taiwan</h3>



<p>There are only two JAF offices in Taiwan (<a href="https://www.koryu.or.jp/about/taipei/access/">Taipei</a> and <a href="https://www.koryu.or.jp/about/kaohsiung/access/">Kaohsiung</a>) so you will need to make a trip to either of those cities if you wish to translate your Japanese D/L. Be careful that you don&#8217;t visit during weekends or holidays as they only operate during business days.</p>



<p>There is an additional document when processing in Taiwan, so do exercise caution and make sure you prepare all of the following documents:</p>



<ul class="wp-block-list">
<li>Translation Application &#8211; You can fill this out at their office</li>



<li>Japanese Driver&#8217;s License</li>



<li>Passport</li>



<li>590 NTD (~2145JPY, actually cheaper than doing it in Japan!!!)</li>
</ul>



<h2 class="wp-block-heading">Restrictions and Precautions</h2>



<p>The types of licenses between Japan and Taiwan differ and do not exactly match. As such, it is important to note your translated license and refer to this <a href="https://www.koryu.or.jp/Portals/0/resources/taipei/ez3_contents_nsf/17/F3D8B58ED99000C449258141000BC5B2/$FILE/290619%20%E9%81%8B%E8%BB%A2%E5%8F%AF%E8%83%BD%E8%BB%8A%E7%A8%AE%EF%BC%86%E8%BB%8A%E4%B8%A1%E5%AE%9A%E7%BE%A9(%E5%8F%8D%E6%98%A0%E7%89%88).pdf">document (JP)</a> to understand exactly which types of vehicles you are allowed to operate in Taiwan.  </p>



<p>As an example, my type of license (普通) grants me the ability many 4-wheel vehicles. A highly generic summary is outlined below:</p>



<ul class="wp-block-list">
<li>Generally all vehicles less than 3500kg, though there are a few exceptions</li>



<li>Electric bikes</li>



<li>Motorcycle class under 50cc power</li>
</ul>



<p>Especially take note that you <strong><span class="has-inline-color has-vivid-red-color">MAY NOT OPERATE MOTORCYCLES OVER 50cc</span></strong>. Most rental motorcycles from <a href="https://www.gogoro.com/tw/">Gogoro</a> and <a href="https://www.wemoscooter.com/">Wemo</a> offer bikes over 50cc so don&#8217;t expect to be able to rent one. In addition, motorcycles have quite a different set of road rules compared to 4-wheel vehicles you must follow. In my honest opinion this restriction is perfectly reasonable especially if you have only driven 4-wheel vehicles and have no experience with bikes. <span style="text-decoration: underline;">Don&#8217;t drive bikes in Taiwan when you have the option to drive a compact car instead.</span></p>



<h2 class="wp-block-heading">In Case of Accident</h2>



<p>Driving in Taiwan is not as orderly as in Japan &#8211; you will often find that drivers&#8217; attitudes are vastly different, bikes will weave around you, number of lanes will change immediately after intersections, signal lights work somewhat differently, and many other unique nuances:</p>



<ul class="wp-block-list">
<li>Contact the police (110)</li>



<li>If injured, contact the ambulance (119)</li>



<li>If vehicle was rented, contact rental company</li>



<li>If you are fined, contact Japan-Taiwan Exchange association</li>
</ul>



<p>For the last point above, for the area of Taiwan above Taichung/Nantou and Yilan, contact the <strong>Taipei</strong> branch:</p>



<p>Phone (Business Hours): 02-2713-8000<br>Phone (Non-Business): 0937-043-408<br>Homepage: <a href="https://www.koryu.or.jp/about/taipei/access/"></a><a href="https://www.koryu.or.jp/about/taipei/">https://www.koryu.or.jp/about/taipei/</a></p>



<p>For other areas of Taiwan, including Penghu, contact the <strong>Kaohsiung</strong> branch:</p>



<p>Phone (Business Hours): 07-771-4008<br>Phone (Non-Business): 0929-228-458<br>Homepage: <a href="https://www.koryu.or.jp/about/taipei/"></a><a href="https://www.koryu.or.jp/about/kaohsiung/">https://www.koryu.or.jp/about/kaohsiung/</a></p>The post <a href="https://www.jiyuulife.net/driving-in-taiwan-with-japanese-license/">Driving in Taiwan With Japanese Driver’s License</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">395</post-id>	</item>
		<item>
		<title>Tips For Building A Python Web Scraper</title>
		<link>https://www.jiyuulife.net/building-a-python-web-scraper/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sat, 23 May 2020 10:22:22 +0000</pubDate>
				<category><![CDATA[Site]]></category>
		<category><![CDATA[automation]]></category>
		<category><![CDATA[curl]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[requests]]></category>
		<category><![CDATA[scraper]]></category>
		<category><![CDATA[selenium]]></category>
		<category><![CDATA[sikuli]]></category>
		<category><![CDATA[web crawler]]></category>
		<category><![CDATA[webdriver]]></category>
		<guid isPermaLink="false">https://www.jiyuulife.net/?p=369</guid>

					<description><![CDATA[<p>Automation is my hobby. Admittedly I never thought that I would be interested in it when I studied computer science and engineering back in my university days (my father said my personality befits a software engineer, and I blindly followed his advice). However, during my journey to become a competent software developer I invested much ... <a title="Tips For Building A Python Web Scraper" class="read-more" href="https://www.jiyuulife.net/building-a-python-web-scraper/" aria-label="Read more about Tips For Building A Python Web Scraper">Read more</a></p>
The post <a href="https://www.jiyuulife.net/building-a-python-web-scraper/">Tips For Building A Python Web Scraper</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></description>
										<content:encoded><![CDATA[<div class="wp-block-image">
<figure class="aligncenter size-large"><img data-recalc-dims="1" decoding="async" src="https://i0.wp.com/imgs.xkcd.com/comics/is_it_worth_the_time.png?w=1400&#038;ssl=1" alt=""/></figure></div>


<p>Automation is my hobby. Admittedly I never thought that I would be interested in it when I studied computer science and engineering back in my university days (my father said my personality befits a software engineer, and I blindly followed his advice). However, during my journey to become a competent software developer I invested much time in simple scripts to do repetitive work for me. While most of the above examples involve automating games (via something like <a href="http://sikulix.com/" class="aioseop-link">Sikuli</a> which can control your screen), lately I have been turning my attention to scraping websites and integrating APIs for data aggregation. This post contains some of the tips and tricks I have used in order to make your web crawler quicker and more robust.<br><br></p>



<span id="more-369"></span>



<hr class="wp-block-separator has-css-opacity"/>



<h2 class="wp-block-heading">Before We Start &#8211; Requests vs Webdrivers</h2>



<p>Many who write programs to crawl webpages often use Webdrivers such as <a href="https://www.selenium.dev/" class="aioseop-link">Selenium</a> to retrieve HTML contents. However, it can be a bit of an overkill if the pages you want to crawl are more static. For webpages with little to no dynamic content, using simple CURL libraries (such as <a href="https://requests.readthedocs.io/en/master/" class="aioseop-link">Requests</a> for python) for GET/POSTS will be sufficient for your needs. </p>



<p>Webdrivers are recommended for times when it is infeasible to purely use CURL for driving dynamic sites and content. This is especially true for users who aren&#8217;t scraping for information but merely wish to automate a series of actions on a website. </p>



<p>The remaining sections below contain advice for both CURL-based and Webdriver-based solutions. Parts that can be better explained with examples will contain sample code for reference &#8211; though <em>a word of caution</em>: Browsers and Webdriver API specs change frequently so they are not guaranteed to work in the future.</p>



<h2 class="wp-block-heading">Tips and Advices</h2>



<h3 class="wp-block-heading">Python Libraries for Parsing HTML Documents</h3>



<p>My goto libraries for processing HTML documents are a combination of <a href="https://pypi.org/project/html5lib/" class="aioseop-link">html5lib</a>, <a href="https://lxml.de/" class="aioseop-link">lxml</a>, and <a href="https://docs.python.org/3/library/xml.etree.elementtree.html" class="aioseop-link">xml.etree.ElementTree</a>.</p>



<p>The following code&#8217;s &#8220;buildHtmlTree()&#8221; retrieves the HTML document from a URL and converts it into a tree ready for element traversal:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: python; title: ; notranslate">
import xml.etree.ElementTree
from lxml import etree
from lxml import html
import html5lib
import requests

class RequestTooManyTimesException(Exception):
    pass

class Html5Scraper(object):
    def __init__(self):
        self.current_url = &quot;&quot;
        self.session = requests.Session()

    def buildHtmlTree(self, url, encoding=&#039;UTF-8&#039;):
        self.current_url = url
        html_elements = self.parseHtmlContent(self.getResponseText(url, encoding))
        html_tree = etree.ElementTree(html_elements)
        return html_elements

    def parseHtmlContent(self, content_string):
        # html5lib supports tags that are not closed, so parse twice to
        # convert from html5lib&#039;s xml.etree.ElementTree to lxml&#039;s
        # lxml.html.HtmlElement.
        html5_etree = html5lib.parse(content_string)
        html5_string = xml.etree.ElementTree.tostring(html5_etree, encoding=&#039;UTF-8&#039;)
        return html.fromstring(html5_string, parser=html.HTMLParser(encoding=&#039;UTF-8&#039;))

    def getResponseText(self, url, encoding=&#039;UTF-8&#039;):
        response = None
        retries = 0
        while not response:
            try:
                response = self.session.get(url)
            except requests.exceptions.SSLError:
                retries += 1
                if retries &gt; 10:
                    raise RequestTooManyTimesException(&quot;Max connection exceeded when accessing: %s&quot; % url)
                time.sleep(60)
        response.encoding = encoding
        return response.text

</pre></div>


<p>Once you have the HTML document parsed into a tree, finding elements on the page becomes simple as follows, using xpath:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: python; title: ; notranslate">
scraper = Html5Scraper()
tree = scraper.buildHtmlTree(&#039;https://www.google.com&#039;)
element = tree.xpath(&quot;//div&#x5B;@id=&#039;mngb&#039;]&quot;)
</pre></div>


<h3 class="wp-block-heading">[WebDrivers] Run in Headless or Disable Images</h3>



<p><a href="https://www.selenium.dev/selenium/docs/api/dotnet/html/T_OpenQA_Selenium_PhantomJS_PhantomJSDriver.htm" class="aioseop-link">PhantomJSDriver</a> is a selenium module which will emulate a headless (ie no Window) browser. It is particular useful in cases where only a terminal can be used (and no screen emulator software is installed). Because it is headless there is no overhead with regards to graphics and loading images, so unless you are doing UI testing and need to take screenshots of what webpages look like, it is not likely that you absolutely need to have a visual browser.</p>



<p>However, that said, PhantomJSDriver is not without its faults. This particular webdriver is not of the IE/FireFox/Chrome type, and therefore there may be compatibility issues when visiting some sites. When PhantomJSDriver couldn&#8217;t parse a website correctly or otherwise just doesn&#8217;t do the trick, more common browsers such as Chrome (via <a href="https://chromedriver.chromium.org/" class="aioseop-link">ChromeDriver</a>) may handle that site well. Chrome is non-headless, but you may still turn a few things off &#8211; image loading included &#8211; to increase its performance. Below is a sample Python code of how to set up Chromedriver without image loading, plus a few other settings turned off:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
from selenium import webdriver

chrome_options = webdriver.ChromeOptions()
preferences = {&quot;profile.managed_default_content_settings.images&quot;: 2}
chrome_options.add_experimental_option(&quot;prefs&quot;, preferences)
chrome_options.add_argument(&quot;--ignore-certificate-errors&quot;);
chrome_options.add_argument(&quot;--disable-logging&quot;);
chrome_options.add_argument(&quot;--no-proxy-server&quot;);
chrome_options.add_argument(&quot;--disable-client-side-phishing-detection&quot;);
chrome_options.add_argument(&quot;--disable-sync&quot;);
chrome_options.add_argument(&quot;--disable-component-update&quot;);
chrome_options.add_argument(&quot;--disable-default-apps&quot;);
chrome_options.add_argument(&quot;--disable-infobars&quot;);
chrome_options.add_argument(&quot;--disable-web-security&quot;);
chrome_options.add_argument(&quot;--safebrowsing-disable-auto-update&quot;);
driver = webdriver.Chrome(chrome_options=chrome_options)
</pre></div>


<p>Refer to this <a href="https://peter.sh/experiments/chromium-command-line-switches/" class="aioseop-link">page</a> for information about each of the above arguments.</p>



<h3 class="wp-block-heading">Search For Elements in ID -&gt; Name -&gt; Class -&gt; CSS/XPath Order</h3>



<p>A well-structured website should have most of its important elements tagged with a unique ID &#8211; thus it is most optimal to scan an element using its ID, followed by its name, followed by class, and lastly its other attributes. The further away from ID you search for an element the more brittle your program gets, and can lead to much time debugging whether the element you picked is what you are actually looking for. In addition, even a small change in the website UI can cause your program to fail to find the correct element.</p>



<p>Assuming &#8220;driver&#8221; is the object holding your webdriver, elements may be searched using the following sample methods:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: python; title: ; notranslate">
driver.find_element_by_id(&quot;id&quot;)
driver.find_element_by_name(&quot;user&quot;)
driver.find_element_by_class_name(&quot;class&quot;)
driver.find_element_by_css_selector(&quot;#root &gt; div &gt; div.css&quot;)
driver.find_element_by_xpath(&quot;//div&#x5B;@style=&#039;color: red&#039;]&quot;)
</pre></div>


<p>Refer to this <a href="https://selenium-python.readthedocs.io/locating-elements.html" class="aioseop-link">page</a> for information about locating elements. There are other methods to search for elements and I encourage you to learn and figure out which method is best for you. Also, there are separate methods for selecting multiple elements fitting a certain criteria &#8211; this is useful for parsing information from tabular structures such as tables and lists.</p>



<h3 class="wp-block-heading">Don&#8217;t Click if You can &#8220;GET&#8221;</h3>



<p>Webdriver users may get into the habit of clicking a link to move between pages. The advantage of clicking is that one does not have to worry about how to build the GET or POST request, which can save a lot of time when wanting to create a quick-and-easy solution. However, clicking an element increases risk and overhead because changes to the element may cause the program to fail to find it, and there may be unnecessary Javascript or other tasks the browser may run upon clicking a link.</p>



<p>If it is the simple matter of moving to another page and not having to worry about anything else, then GET-ing the URL is quicker and less prone to error. For POST, an inspection of the network when submitting the form can give you an idea of what to include in the form parameters, as illustrated in the below figure:</p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img data-recalc-dims="1" loading="lazy" decoding="async" width="1024" height="930" src="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/05/Screen-Shot-2020-05-23-at-6.12.28-PM-1.png?resize=1024%2C930&#038;ssl=1" alt="" class="wp-image-392" srcset="https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/05/Screen-Shot-2020-05-23-at-6.12.28-PM-1.png?resize=1024%2C930&amp;ssl=1 1024w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/05/Screen-Shot-2020-05-23-at-6.12.28-PM-1.png?resize=300%2C272&amp;ssl=1 300w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/05/Screen-Shot-2020-05-23-at-6.12.28-PM-1.png?resize=768%2C698&amp;ssl=1 768w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/05/Screen-Shot-2020-05-23-at-6.12.28-PM-1.png?resize=1536%2C1395&amp;ssl=1 1536w, https://i0.wp.com/www.jiyuulife.net/wp-content/uploads/2020/05/Screen-Shot-2020-05-23-at-6.12.28-PM-1.png?w=2048&amp;ssl=1 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Figure 1-1 : Form data &#8220;View Source&#8221; can give you a Query Parameter representation, useful for crafting your own POST request without having to click the form submit. </figcaption></figure></div>


<h3 class="wp-block-heading">requests.session() to Store Cookies</h3>



<p>Python&#8217;s requests API, in its simplest use case, can be thought of as a wrapper for CURL. Each call of requests.get() simply retrieves the source of the HTML document but ignores any session variables and cookies in the response. Fortunately requests also allows for sessions which can be used for exactly this purpose! The following is a simpler code of what was provided in the &#8220;Python Libraries for Parsing HTML Documents&#8221; to illustrate the simplicity of how sessions work &#8211; this is especially useful when parsing sites which require users to login:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: python; title: ; notranslate">
import requests

session = requests.Session()
r = session.get(&#039;https://www.google.com&#039;)
</pre></div>The post <a href="https://www.jiyuulife.net/building-a-python-web-scraper/">Tips For Building A Python Web Scraper</a> first appeared on <a href="https://www.jiyuulife.net">JiyuuLife | Automate Your Way to Freedom</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">369</post-id>	</item>
	</channel>
</rss>
