[{"content":"Last year, during my first trip to Japan, I went to Enoshima and took some photos of the real life locations of Bunny Girl Senpai. It was a great experience for me which makes me wanting to do it again. So this year I went back to Japan and spend a day in the Uji area to visit the real life locations of Sound! Euphonium.\nThe cross outside Keihan Rokujozo Station.\nThe Keihan train. Kumiko catch these trains everyday between Rokujizo and Uji.\nThe keihan trains have iconic green interior design.\nTicket gates at Keihan Uji Station.\nThe short escalator at Uji Bridge exit of Uji Station.\nThe Uji bridge outside of the station.\nうまくなりたい！(Umaku naritai!)\nKumiko’s favourite chair next to the Uji River.\nTorii gate at the entrance of Uji Shopping Street where the summer festival was held.\nUjigami Shrine. It has the oldest main hall in Japan, which was built around 1060 A.D.\nRoad outside of Ujigami Shrine around the corner.\nThe road to Daikichiyama Moutain.\nThe Daikichiyama Observation Deck, from where you can overlook the Uji city.\nThe trees have grown so tall that they have blocked the view on the sides of the deck.\nPoster at Rokujizo station.\nPoster at Uji station.\nWarning sign on the road to Daikichiyama Observation Deck. It says Please do not climb Daikichiyama Mountain at night as it is dangerous. From this point on, there is absolutely no street light on the road, and the illumination from the city will be completely blocked by the trees so it will be pitch black.\nThe night view at the observation deck.\nThe KyoAni 1st Studio near Rokujizo Station. Both KyoAni and the local council have asked fans stopping visiting the site since it is located in a quiet residential area. We took this picture afar from the parking lot behind the building.\n","permalink":"https://seewang.me/en/the-real-life-locations-of-sound-euphonium/","summary":"\u003cp\u003eLast year, during my first trip to Japan, I went to Enoshima and took some photos of \u003ca href=\"/en/bunny-girl-senpai-sets-in-real-life/\"\u003ethe real life locations of Bunny Girl Senpai\u003c/a\u003e. It was a great experience for me which makes me wanting to do it again. So this year I went back to Japan and spend a day in the Uji area to visit the real life locations of Sound! Euphonium.\u003c/p\u003e\n\u003cp\u003e\u003cimg loading=\"lazy\" src=\"/images/sound-euphonium/1-rokujizo-cross.jpg\"\u003e\u003c/p\u003e\n\u003cp\u003eThe cross outside Keihan Rokujozo Station.\u003c/p\u003e\n\u003cp\u003e\u003cimg loading=\"lazy\" src=\"/images/sound-euphonium/2-keihan-train.jpg\"\u003e\u003c/p\u003e\n\u003cp\u003eThe Keihan train. Kumiko catch these trains everyday between Rokujizo and Uji.\u003c/p\u003e","title":"The real life locations of Sound! Euphonium"},{"content":"During the holday trip to Japan, I went to Enoshima to exlore the area. Here’s some pictures I took, which are the Bunny Girl Senpai sets in real life.\nBakery in Fujisawa Station where Mai get ignored.\nEnoden line near Kamakura-Koko-Mae Station where Sakuta chasing the train in the OP.\nShichirigahama Station. The school is few mins walk from here.\nInside Shichirigahama Station where Sakuta kicked the Basketball Club senpai in front of these vending machines.\nShichirigahama Beach. Almost all the beach scenes happend here.\nThe entrance of the shopping street where Sakuta and Koga went for a date.\nTorii gate of Enoshima Shrine.\nEnoshima beach under the bridge where Koga made her new friend. In reality, there’s isn’t a stair so you’d have to walk all the way back to the beginning of the bridge. This is also the beach in the ED where you can see Enoshima Island and Mt. Fuji in the back.\nThe platform in the final scene of Koga’s arc.\nShouko’s poster on the way to Enoshima Island from the station.\nThese vending machines are everywhere in the area.\nThe railway crossing outside of Kamakura-Koko-Mae. Famous for a scene in the SlamDunk’s OP.\n","permalink":"https://seewang.me/en/bunny-girl-senpai-sets-in-real-life/","summary":"\u003cp\u003eDuring the holday trip to Japan, I went to Enoshima to exlore the area. Here’s some pictures I took, which are the Bunny Girl Senpai sets in real life.\u003c/p\u003e\n\u003cp\u003e\u003cimg loading=\"lazy\" src=\"/images/bunny-girl-senpai/fujisawa-bakery.jpg\"\u003e\u003c/p\u003e\n\u003cp\u003eBakery in Fujisawa Station where Mai get ignored.\u003c/p\u003e\n\u003cp\u003e\u003cimg loading=\"lazy\" src=\"/images/bunny-girl-senpai/enoden.jpg\"\u003e\u003c/p\u003e\n\u003cp\u003eEnoden line near Kamakura-Koko-Mae Station where Sakuta chasing the train in the OP.\u003c/p\u003e","title":"Bunny Girl Senpai’s Junrei at Enoshima"},{"content":"So, let’s talk about the technologies used in this blog, just for reference.\nServer The blog is hosted on a DigitalOcean droplet，$5/month，1GB RAM，25GB SSD. I have only used AWS and Digital Ocean before, and apparently, Digital Ocean is the cheaper one. I’ve once also thought about switching to Linode. At that time, DO only got 512MB RAM, so I often run into situations that my programs get killed due to insufficient memory, which was pretty annoying. But just when I was about to pull the trigger, Digital Ocean decided to increase their RAM, so that’s the end of it.\nThe droplet is running on Ubuntu 16.04, besides running this blog, I also use it to run various of things, like Shadowsock to get around of the Great Firewall, or a program to download anime while I’m away, which are huge lifesavers.\nSoftware I’ve chosen the LNMP stack and use WordPress as the platform. I’ve seriously considered static blog platforms like Hexo and Jekyll. But one feature I want is to write in both Chinese and English, which these platforms don’t seem to have a good solution. So WordPress it is.\nAs for the theme, I simply use the official Twentyfifteen theme, with a few of my own tweaks such as:\nHighlight.js code highlight Spoiler paragraph collapse Algolia search result page Medium-like image zoom You can check the GitHub Repo for detail.\nWordPress Plugin One of the best thing about the WordPress is its plugins, and here’re the ones I use:\nAkismet Anti-Spam\nlike the name, you can tell by the number of the comments in this blog, it works well. Cloudflare\nAllows making changes on Cloudflare directly on the dashboard. Insert Headers and Footers\nused to add Google Analytics script Jetpack by WordPress.com\nAlthough it provides many features, the only thing I’m using it write in Markdown. Polylang\nMulti-language supports, one of the most important reasons I chose WordPress, the free version of WPML though. WP Super Cache\nlike it said, super cache. Image Hosting Image uploading can be one of the worst things about WordPress. I often suffer from it as I have to use it at work, so obviously I’d use an image hosting service for my personal blog. I used to use Flickr, which provides fantastic features, speed and experience. But sadly it’s blocked in by GFW, so I had to find an alternative. So I just chose to use GitHub Pages feature. Simply create a repository and push my images to its gh-pages branch, then they’re available on the project page URL.\n","permalink":"https://seewang.me/en/technologies-used-in-this-blog/","summary":"\u003cp\u003eSo, let’s talk about the technologies used in this blog, just for reference.\u003c/p\u003e\n\u003ch2 id=\"server\"\u003eServer\u003c/h2\u003e\n\u003cp\u003eThe blog is hosted on a \u003ca href=\"https://m.do.co/c/50614500d0db\"\u003eDigitalOcean\u003c/a\u003e droplet，$5/month，1GB RAM，25GB SSD. I have only used AWS and Digital Ocean before, and apparently, Digital Ocean is the cheaper one. I’ve once also thought about switching to Linode. At that time, DO only got 512MB RAM, so I often run into situations that my programs get killed due to insufficient memory, which was pretty annoying. But just when I was about to pull the trigger, Digital Ocean decided to increase their RAM, so that’s the end of it.\u003c/p\u003e","title":"Technologies used in this blog"},{"content":"You surely have heard HTTP2 and its advantage over the good old HTTP1.1, security, performance blah blah blah…\nAnd it bizarrely easy to enable on my Nginx.\nFirstly some requirements:\nNginx \u0026gt; 1.9.5 OpenSSL \u0026gt; 1.0.2 Then add http2 to the server configuration, after listen 443 ssl.\nserver { listen 80; server_name seewang.me www.seewang.me; return 301 https://seewang.me$request_uri; } server { listen 443 ssl http2; server_name seewang.me www.seewang.me; #rest of config... } And that’s it， now we can check it on Chrome Developer Tools \u0026gt; Network tab, we’ll need to right click on the column header and check Protocol column.\n","permalink":"https://seewang.me/en/seewang-me-now-served-over-http2/","summary":"\u003cp\u003eYou surely have heard HTTP2 and its advantage over the good old HTTP1.1, security, performance blah blah blah…\u003cbr\u003e\nAnd it bizarrely easy to enable on my Nginx.\u003c/p\u003e\n\u003cp\u003eFirstly some requirements:\u003c/p\u003e\n\u003cpre tabindex=\"0\"\u003e\u003ccode\u003eNginx \u0026gt; 1.9.5\nOpenSSL \u0026gt; 1.0.2\n\u003c/code\u003e\u003c/pre\u003e\u003cp\u003eThen add \u003ccode\u003ehttp2\u003c/code\u003e to the server configuration, after \u003ccode\u003elisten 443 ssl\u003c/code\u003e.\u003c/p\u003e\n\u003cpre tabindex=\"0\"\u003e\u003ccode\u003eserver {\n    listen 80;\n    server_name seewang.me www.seewang.me;\n    return 301 https://seewang.me$request_uri;\n}\nserver {\n    listen 443 ssl http2;\n    server_name seewang.me www.seewang.me;\n\n    #rest of config...\n}\n\u003c/code\u003e\u003c/pre\u003e\u003cp\u003eAnd that’s it， now we can check it on Chrome Developer Tools \u0026gt; Network tab, we’ll need to right click on the column header and check Protocol column.\u003c/p\u003e","title":"seewang.me now served over HTTP2"},{"content":"When I first launched this blog, I set up an SSL certificate from StartCom. It was an okay experience to use, other than I had to renew it via their site every year. But a couple of days ago, Chrome prompted SSL errors when I visited the blog and refused to recognise the certificate even after I renewed it. A quick Google search tells that StartCom got themselves banned by Chrome and Firefox.\nSo I went on looking for new certificate provider and apparently Let’s Encrypt is the best call right now.\nDiffer from StartCom, Let’s Encrypt has a program can be run directly on the server to get a certificate and auto-configure HTTPS (didn’t work though), which is much easier.\nAccording to the doc, all I had to do was just downloading and then running.\nwget https://dl.eff.org/certbot-auto chmod a+x certbot-auto ./certbot-auto Unfortunately, it doesn’t recognise my Nginx settings, so I had to get certificate firstly and configure it myself manually\n./certbot-auto certonly During the run it will promote to let you enter the domain name and the root of web server etc., you can refer the official site(https://letsencrypt.org/) for detail. But in general, it was pretty easy and nice.\n","permalink":"https://seewang.me/en/free-ssl-certificate-certbot/","summary":"\u003cp\u003eWhen I first launched this blog, I set up an SSL certificate from StartCom. It was an okay experience to use, other than I had to renew it via their site every year. But a couple of days ago, Chrome prompted SSL errors when I visited the blog and refused to recognise the certificate even after I renewed it. A quick Google search tells that StartCom got themselves banned by Chrome and Firefox.\u003c/p\u003e","title":"Free SSL Certificate, Let’s Encrypt"},{"content":"Oct 2011, I bought the laptop I have been using until now, a Dell XPS 15. Many components like screen, hard drive and battery all have failed, but thankfully it still works functionally after several repairs.\nEven though, using it starts become painful, which makes me decide to get a new one.\nSince primary school, I’ve been using laptops. They are surely easy to carry around, but always underwhelming for a gamer like me. That’s why a desktop PC become my go-to device.\nIt took quite a while to do all the research, purchasing and building, and they’re all finally done today. No big problems, fun experience.\n","permalink":"https://seewang.me/en/my-new-pc/","summary":"\u003cp\u003eOct 2011, I bought the laptop I have been using until now, a Dell XPS 15. Many components like screen, hard drive and battery all have failed, but thankfully it still works functionally after several repairs.\u003c/p\u003e\n\u003cp\u003eEven though, using it starts become painful, which makes me decide to get a new one.\u003c/p\u003e\n\u003cp\u003eSince primary school, I’ve been using laptops. They are surely easy to carry around, but always underwhelming for a gamer like me. That’s why a desktop PC become my go-to device.\u003c/p\u003e","title":"My new PC!"},{"content":"These are the projects I developed.\nBuy All Steam Games How much does it cost to buy all steam games? PHP, Laravel | Apr 2017 | Github Eden A Bootstrap WordPress theme. PHP, WordPress | Nov 2015 | Github Userscripts Userscripts I’ve been using. use at your own risk. Javascript | Sep 2015 | Github 2048 A command line 2048 game. Java | July 2015 | Github Video Annotation System Video Annotation System is a web based annotation tools to easily mark video segment, frame and object annotations. Java, Spring | Oct 2014 | Github Othello A command line Othello game. Java | May 2014 | Github Foyue Extension A chrome extension to encode/decode text. JavaScript | Apr 2014 | Chrome Store |Github jquery.totitlecase.js A jquery plugin to convert text in jquery element to title case. JavaScript | Mar 2014 | Github Guess Number A game to guess a 4 digit secret number. JavaScript | Mar 2013 | Github ","permalink":"https://seewang.me/en/projects/","summary":"\u003cp\u003eThese are the projects I developed.\u003c/p\u003e\n\u003cdl\u003e\n\u003cdt\u003e\u003ca href=\"http://steam.seewang.me/\" target=\"_blank\"\u003eBuy All Steam Games\u003c/a\u003e\u003c/dt\u003e\n\u003cdd\u003eHow much does it cost to buy all steam games?\u003cbr/\u003e\n\u003csmall\u003ePHP, Laravel | Apr 2017 | \u003ca href=\"https://github.com/cwang22/buy-all-steam-games\" target=\"_blank\"\u003eGithub\u003c/a\u003e\u003c/small\u003e\n\u003c/dd\u003e\n\u003cdt\u003eEden\u003c/dt\u003e\n\u003cdd\u003eA Bootstrap WordPress theme.\u003cbr/\u003e\n\u003csmall\u003ePHP, WordPress | Nov 2015 | \u003ca href=\"https://github.com/cwang22/eden\" target=\"_blank\"\u003eGithub\u003c/a\u003e\u003c/small\u003e\n\u003c/dd\u003e\n\u003cdt\u003eUserscripts\u003c/dt\u003e\n\u003cdd\u003eUserscripts I’ve been using. use at your own risk.\u003cbr/\u003e\n\u003csmall\u003eJavascript | Sep 2015 | \u003ca href=\"https://github.com/cwang22/userscripts\" target=\"_blank\"\u003eGithub\u003c/a\u003e\u003c/small\u003e\n\u003c/dd\u003e\n\u003cdt\u003e2048\u003c/dt\u003e\n\u003cdd\u003eA command line 2048 game.\u003cbr/\u003e\n\u003csmall\u003eJava | July 2015 | \u003ca href=\"https://github.com/cwang22/2048\" target=\"_blank\"\u003eGithub\u003c/a\u003e\u003c/small\u003e\n\u003c/dd\u003e\n\u003cdt\u003eVideo Annotation System\u003c/dt\u003e\n\u003cdd\u003eVideo Annotation System is a web based annotation tools to easily mark video segment, frame and object annotations.\u003cbr/\u003e\n\u003csmall\u003eJava, Spring | Oct 2014 | \u003ca href=\"https://github.com/cwang22/video-annotation-system\" target=\"_blank\"\u003eGithub\u003c/a\u003e\u003c/small\u003e\n\u003c/dd\u003e\n\u003cdt\u003eOthello\u003c/dt\u003e\n\u003cdd\u003eA command line Othello game.\u003cbr/\u003e\n\u003csmall\u003eJava | May 2014 | \u003ca href=\"https://github.com/cwang22/Othello\" target=\"_blank\"\u003eGithub\u003c/a\u003e\u003c/small\u003e\n\u003c/dd\u003e\n\u003cdt\u003eFoyue Extension\u003c/dt\u003e\n\u003cdd\u003eA chrome extension to encode/decode text.\u003cbr/\u003e\n\u003csmall\u003eJavaScript | Apr 2014 | \u003ca href=\"https://chrome.google.com/webstore/detail/%E4%BD%9B%E6%98%93/adfkmmjgpnboalejngbodjhhhdabahhf\" target=\"_blank\"\u003eChrome Store\u003c/a\u003e |\u003ca href=\"https://github.com/cwang22/FoyueExtension\" target=\"_blank\"\u003eGithub\u003c/a\u003e\u003c/small\u003e\n\u003c/dd\u003e\n\u003cdt\u003ejquery.totitlecase.js\u003c/dt\u003e\n\u003cdd\u003eA jquery plugin to convert text in jquery element to title case.\u003cbr/\u003e\n\u003csmall\u003eJavaScript | Mar 2014 | \u003ca href=\"https://github.com/cwang22/jquery.totitlecase.js\" target=\"_blank\"\u003eGithub\u003c/a\u003e\u003c/small\u003e\n\u003c/dd\u003e\n\u003cdt\u003eGuess Number\u003c/dt\u003e\n\u003cdd\u003eA game to guess a 4 digit secret number.\u003cbr/\u003e\n\u003csmall\u003eJavaScript | Mar 2013 | \u003ca href=\"https://github.com/cwang22/guessnumber\" target=\"_blank\"\u003eGithub\u003c/a\u003e\u003c/small\u003e\n\u003c/dd\u003e\n\u003c/dl\u003e","title":"Projects"},{"content":"Internal Command and External Command Internal Command is a part of the Shell program, it consists of some simple Linux system command, which will be recognized by the Shell program and executed within the Shell program. Usually, Shell gets loaded into memory when a Linux system startup.\nInternal Command is written within bash’s source code, so it run faster than external command as interpreting an internal command does not need to create a new child thread. Some of most common internal command includes exit, history, cd, echo etc.\nOn the other hand, external commands usually are the functional programs in Linux operating system. While having powerful functionality, external commands usually also mean big and complex programs. Therefore, they are not loaded on Linux startup but are loaded on use.\nUsually instances of external command are not included in Shell, but they let Shell control the progress of the program execution. They are usually stored under /bin, /usr/bin, /sbin, /usr/sbin etc.\ntype command can be used to distinguish internal and external commands.\ntype cd cd is a shell builtin type -a ls ls is aliased to `ls --color=tty\u0026#39; ls is /bin/ls It is clear to see, cd is an internal command while ls is an external command.\nFrequently Used Commands ls: list\ncd: change directory\n~: change to home directory, same as using cd without an argument.\n~[USERNAME]: change to the home directory of given user\n-:change to the last directory\ntype: print the type of commands\nman: mannual\ninfo: online documentation\n/usr/share/doc: documentation\ndate: date\ncal: calendar\nVim command\nSPACE: next screen\nENTER: next line\nk: previous screen\nb: previous line\n/keyword: search\n?keyword: search previous\nn: next match\nN: preious match\n","permalink":"https://seewang.me/en/linux-note-1/","summary":"\u003ch3 id=\"internal-command-and-external-command\"\u003eInternal Command and External Command\u003c/h3\u003e\n\u003cp\u003eInternal Command is a part of the Shell program, it consists of some simple Linux system command, which will be recognized by the Shell program and executed within the Shell program. Usually, Shell gets loaded into memory when a Linux system startup.\u003c/p\u003e\n\u003cp\u003eInternal Command is written within bash’s source code, so it run faster than external command as interpreting an internal command does not need to create a new child thread. Some of most common internal command includes \u003ccode\u003eexit\u003c/code\u003e, \u003ccode\u003ehistory, cd, echo etc.\u003c/code\u003e\u003c/p\u003e","title":"Linux Note 1: Command Types and Frequently Used Commands"},{"content":"A couple days ago I saw some recipes from Shokugeki no Soma and noticed this Chaliapin steak don only requires steak and onion which I happened have both at home. Also, it is quite easy to cook, so I tried to cook this myself.\nI don’t have pickled plum, so the rice is just plain rice. Besides, I’m too lazy to season the steak for half an hour. It still tastes good though.\n","permalink":"https://seewang.me/en/chaliapin-steak-don/","summary":"\u003cp\u003eA couple days ago I saw some recipes from \u003cem\u003eShokugeki no Soma\u003c/em\u003e and noticed this Chaliapin steak don only requires steak and onion which I happened have both at home. Also, it is quite easy to cook, so I tried to cook this myself.\u003c/p\u003e\n\u003cp\u003eI don’t have pickled plum, so the rice is just plain rice. Besides, I’m too lazy to season the steak for half an hour. It still tastes good though.\u003c/p\u003e","title":"Chaliapin steak don"},{"content":"Hey, welcome to my blog.\nMy name is Chenggang Wang, a programmer.\nI was born in a small town in the north of China, grown up in Anhui, and now live in Sydney, Australia.\nWhen I’m free, I like to play games, watch anime and do all the other weird stuff.\nAnd here’s the blog, writing about all these topics.\nMost of the posts are written in Chinese, but occasionally I’ll write something in English as well.\nHope you enjoy.\n","permalink":"https://seewang.me/en/about-me/","summary":"\u003cp\u003eHey, welcome to my blog.\u003c/p\u003e\n\u003cp\u003eMy name is Chenggang Wang, a programmer.\u003c/p\u003e\n\u003cp\u003eI was born in a small town in the north of China, grown up in Anhui, and now live in Sydney, Australia.\u003c/p\u003e\n\u003cp\u003eWhen I’m free, I like to play games, watch anime and do all the other weird stuff.\u003c/p\u003e\n\u003cp\u003eAnd here’s the blog, writing about all these topics.\u003c/p\u003e\n\u003cp\u003eMost of the posts are written in Chinese, but occasionally I’ll write something in English as well.\u003c/p\u003e","title":"About Me"}]