Sitemap
A list of all the posts and pages found on the site. For you robots out there is an XML version available for digesting as well.
Pages
Posts
How to Export iPhone Portrait Photos with Depth Data Preserved
Introduction As an iPhone 15 user, I frequently use Portrait Mode for my photos. It allows me to adjust the focus and depth of field after taking the shot. ...
New Website
Please visit my new website at: https://home.j3soon.com
Pythagorean Means
A short comparison of Pythagorean Means: the arithmetic mean (AM), the geometric mean (GM), and the harmonic mean (HM).
Creating a Basic MIDI File from Scratch
A basic tutorial of how to create a simple MIDI file from scratch that contains only one note. What You Will Learn Using an example file, we’ll explain the...
Hightower’s Algorithm
One of the traditional algorithms of solving routing problems in VLSI Design Automation is Hightower’s Algorithm. I haven’t seen someone writing about this ...
About Johnson’s Site
Just another random site on the internet. Disclaimers: The views and opinions expressed in this website are those of my own and do not represent those of my...
cheatsheets
Styling Syntax Test
In this document, we’ll showcase some commonly used features that Jekyll can achieve in a generated website. All of them can work out-of-the-box if you forke...
Getting Started with Python
Provides quick access, best practice, and useful resources for Python programming.
LaTex Math Notations
This document provides the notation used in the Deep Learning Book, and is highly based on this LaTex file. You can refer to the source of this post for the ...
HTML Minimal Template
HTML minimal template for quick reference.
Yahboom Dofbot
Provides quick access and useful resources for Yahboom Dofbot.
NVIDIA Jetson
Provides quick access and useful resources for NVIDIA Jetson.
Stereolabs Zed Camera
Provides quick access and useful resources for Stereolabs Zed Camera.
Clearpath Husky
Provides quick access and useful resources for Clearpath Husky.
Iclebo Kobuki
Provides quick access and useful resources for Yujin Robot’s Iclebo Kobuki.
Robot Operating System
Provides quick access and useful resources for ROS.
Unicode Blocks
Provides quick access to common Unicode blocks/symbols/Emojis/Emoticons.
Free Online Computation Resources
All services here has a free tier for accessing the computation resources. The free services all fall under one of the categories: free credits for a lim...
OpenVPN
Set up a OpenVPN Server on your own Ubuntu server.
VirtualBox
Set up a Virtual Machine on VirtualBox.
NVIDIA Omniverse
Provides quick access and useful resources for NVIDIA Omniverse.
Universal Robots
Provides quick access and useful resources for Universal Robots.
Intel RealSense Camera
Provides quick access and useful resources for Intel RealSense camera.
Contributing to GDB
Quick access and useful resources for contributing to GDB.
Velodyne VLP-16 Lidar
Provides quick access and useful resources for Velodyne Lidar. This post focus on the Puck Lidar, which is previously named VLP-16.
essays
notes
Change a USB Drive Letter
Go to Disk Management (or Create and format hard disk partitions)
MonoGame Missing XINput.dll
Download MonoGame Download DirectX End-User Runtimes.
Open Command Window Here
In File Explorer, hold Shift when right-clicking on a blank space in the desired folder bring up the Extended Context Menu. One of the options is Open Comman...
Reset File and Folder Permission of External Hard Drive Data
Type following lines to command prompt. TAKEOWN /F "<PATH>" /R /D Y ICACLS "<PATH>" /reset /T
Create symbolic link and junction using Mklink
Syntax mklink [[/d] \| [/h] | [/j]] <Link> <Target>
Invert colors on Windows
Open Magnifier. Turn on color inversion option. Ctrl+Alt+F to active (Full Screen) Ctrl+Alt+D to disable (Docked)
Installing Plugins in GIMP
Download Plugins or Scripts You can find plugin in registry.gimp.org. Extracting the downloaded plugin packages to files with extensions like .scm, .py....
C# Unit Test with IO Hack
When you want to test a simple I/O function that won’t change parent directories and files, you can just add a file in the test project and set it to Always ...
Jekyll Photography template gulpfile.js error on Windows
When using ramswaroop’s Jekyll Photography template on windows, executing gulp results the error message shown below.
Jupyter Notebook with Lisp kernel
Installing Jupyter Notebook with Lisp kernel on Ubuntu on VirtualBox.
Ruby missing libcurl on Windows
Could not open library 'libcurl.dll': The specified module could not be found.
Premiere timeline preview bug
If the timeline preview in Adobe Premiere keeps shaking back and forth, try to remove the audio input. Set Edit->Preferences->Audio Hardware->Deafa...
Change cursor position using SendInput
The dx, dy in MOUSEINPUT should be within [0, 65535] when using absolute coordinates. And the currect formula should be: dx := x * 65536 / ScreenWidth + 1
NuGet pack dollar version error
When executing nuget pack [ProjectName].nuspec The error message occured: Value cannot be null or an empty string. Parameter name: value It’s caused by the...
將 AIM & XNAT 的原始碼和 ClearCanvas 整合在一起
在網路上有個能做醫學影像標記的開源專案 AIM on ClearCanvas 他目前出到第 4.5 版,我想要修改其中有發現的一些 bugs. 因為過程中遇到了很多問題,花了很多時間才解決(快整整三天),於是我把我的經驗整理一下,以供日後參考。
Verilog block diagram output using Graphviz and Yosys
從 Verilog code 轉 block diagram.
Disk Cleanup not available in Windows Server
I’m using Windows Server 2008 R2 64-bit. However, cleanmgr.exe cannot be launched directly using Win+R.
Exclude shadows when using GetWindowRect
Use DwmGetWindowAttribute instead of GetWindowRect when in Windows Vista and above.
List of Windows Messages and more
List of WM_XXXs is here.
Losing focus on Windows caused by McAfee
McAfee LifeSafe steals the active window’s focus. I found it by immediately pressing Alt+F4 when the focus is lost and capture the event using Process Monit...
Markdown to PDF using Pandoc
Convert to PDF file When I use pandoc to convert markdown to pdf on Windows. The command below fails and give me an error message.
Retrieve accidentally deleted bookmarks in Firefox
Accidentally deleted bookmarks and Ctrl+Z cannot help, try restoring it. In Bookmarks->Show All Bookmarks->Import and Backup.
Auto indenting, formatting your code
將你的程式碼自動縮排/美化。 手動縮排程式碼是一個好習慣,但是程式碼一變長,或是一次性刪減很多不同的地方,甚至是幫別人 debug 沒編排好的 code 時,自動縮排快捷鍵就會變得非常方便。以下介紹一些 C/C++ 比較常用的 IDE 中如何使用自動縮排。 如果有自己愛用的 IDE 沒有被列在下面也歡迎告知我...
My AStyle arguments
The settings I used in my vimrc for code formatting: " Need astyle installed autocmd BufNewFile,BufRead *.c set formatprg=astyle\ -A1xjxVpSNYk1Hm0xwxWO auto...
mac OSX High Sierra on VirtualBox
Follow the steps here. If you encountered the problem that the downloaded Install High Sierra file only has 19MB. Then, check your OSX version and App Stor...
Tips for multiplayer games using LAN
Some problems that I encountered when establishing connection through LAN when playing multiplayer games.
Google Chrome incognito mode slow - downloading proxy script
When using google chrome in incognito mode, it become very slow to load any pages. It shows the downloading proxy script... message when loading the page. T...
NoteBook FanControl
If your notebook’s fan is always on for some unknown reason, its fan settings might be changed to always on. You can change it back in the BIOS or using the...
Proving the Second Derivative Test using directional derivatives
This is a proof which only uses directional derivatives. We want to prove the Second Derivative Test.
Removing sensitive data from a git repository
git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch PATH-TO-YOUR-FILE-WITH-SENSITIVE-DATA' --prune-empty --tag-name-filter cat -- --al...
VSCode chrome-debug plugin ERR_CONNECTION_REFUSED
I got the error message: Failed to load resource: net::ERR_CONNECTION_REFUSED after using vscode-chrome-debug. That’s because we need to open a server by ou...
Google Chrome black screen when resuming
Google Chrome sometimes become black-screen when resumed from minimized state, we can fix it by disabling Settings->Advanced->Use hardware acceleration...
Microsoft New ChangJie in Windows 10
Follow the link here. Further Reading 第五代倉頡輸入法手冊 | cbflabs 倉頡輸入法練習 1 | ifreesite
Set shortcuts to change keyboard layout in Windows 10
In the recent update of Win10, the settings have been changed to: Modern Settings->Time & Language->Region and Language->Advanced keyboard sett...
to_string is not a member of std
When using Code::Blocks, I get the error when using MinGW g++ to compile: to_string is not a member of std. This is actually a bug of MinGW, which can be fi...
Unity output to UWP
Unity is a cross-platform game engine. When we want to export our game to Windows Store, it will show you a bunch of errors. The article below is some notes ...
Hinet webmail settings on ThunderBird
Setting up Hinet Webmail on mailing programs are such a hassle. By changing Outgoing Server to msr.hinet.net. In ThunderBird settings: Tools->Account Set...
Windows 10 Command Prompt freezes and stop executing
When using cmd in Windows 10 to run some operation, sometimes it will freeze (or hang) until we press a key. This seems to be a bug. Disabling Quick Edit Mo...
Git error when pushing large LFS data
When pushing large files to GitLab or some other remotes, sometimes it will fail. We can fix it by the following command: git config http.postBuffer 5242880...
Turn off Windows Defender AntiVirus
If you’re a superuser, you might think Windows Defender’s AntiVirus is slowing your computer. If you don’t want this feature, you can disable it. Go to rege...
Cannot open file ‘libboost_program_options-vc120-mt-gd-1_55.lib’
If you encoutered the following error message when using Visual Studio + Boost, it means that you didn’t have the staged library files. cannot open file 'li...
Downgrade packages in Arch Linux
Downgrade any package installed by pacman.
Emacs slow when viewing certain text
當 Emacs 裡面有「硬值」、「說明」、「內文」、「閱讀」、「腳」這幾個字時,org mode 會變很慢很慢,但刪掉後就沒事了。後來確認是因為字形的問題。可以從這邊 下載微軟雅黑體 (Microsoft YaHei Mono), 然後在 Options > Set Default Font... 裡面更改...
No sound on Windows
There’s a audio bug in Windows 10, the sound icon at the notification bar is normal, but there’s no sound. When this problem occurs, Youtube might freeze, a...
GitLab issues that don’t exist in GitHub
There are many GitLab issues that don’t exist in GitHub, I’ll list some below. Permission denied when pushing Must use the command below to clone, otherwis...
Linkit 7697 Arduino sample blink code cannot work
Arduino 1.6.9 uses 13 instead of LED_BUILTIN, which is equal to 7 in the newest version. Writing to the wrong port causes the wrong result.
OneNote ebook quick note AutoHotkey script
Using the Windows 10 shortcut Win + Shift + S to crop a certain region, and use Alt + Tab and paste to quickly add notes.
Windows 100 percent disk usage
My computer still has the 100% disk problem, however it seems to happen less by following the steps below: Disable Windows Search, Superfetch. Disable ...
Clean Unity GI cache
Open a Unity project: Edit > Preferences > GI Cache > Clean Cache In my case I cleaned 10 GB of caches. Further Reading Manual: GI cache | Uni...
Chrome download photo with incorrect extension
Some image files you downloaded from the internet might be in the incorrect format. You can open it in PhotoShop, GIMP, Paint.NET, … and re-save it as *.png ...
Eslint and Egg.js lint error
Using Eslint with egg.js will have errors when linting files using: eslint --fix --ext .js,.vue --ignore-path .gitignore .
Does Google manipulate their search results for their own product?
Recently I’ve been using Tensorflow Extended (TFX) and I observed something interesting about the search results of Google and DuckDuckGo. When searching tf...
OneTab delete all saved tabs script
OneTab is a nice extension, but it becomes very slow when we have about 10k tabs. There aren’t options in OneTab to delete all tabs after exporting them. So ...
Phaser player fall through tilemap (tunneling) issue without continuous collision detection
When using Phaser with tilemaps, the player might fall through the map, which is the notorious tunneling (bullet-through-paper) problem. We can solve it by C...
Show hidden files and folders by modifying their attributes
There might be some hidden files when accessing USB sticks. There are 2 choices: Configure the file explorer to see hidden files, or make the files visible b...
Compare difference between 2 word files
In Office Word: Review > Compare > Compare.... The differences are shown by a red line on the left side for each of the window. Not to be confused by t...
Dropbox Stop Syncing on Linux
Dropbox may stop syncing on Linux without any error message. The issue may arise from 2 causes: The user does not have the privilege to access the files t...
OBS Studio Capture Black Screen on Windows
On Windows 10, OBS Studio may capture a black screen even with display added: The solution is to search for Graphics settings. Select Classic App and clic...
Wacom Tablet Drawing issue in Adobe Acrobat Pro on Windows
When trying to use a Wacom Tablet to draw freely in Adobe Acrobat Pro on Windows 10, the line may not be smooth. The solution is to search for Wacom Table...
Android Phone File Transfer with USB is Very Slow
If your Android Phone transfers file very slowly when using USB, you can speed up the process by using ADB File Transfer with debugging mode. See this link ...
PyPI does not recognize single-quoted strings
The metadata in setup.py must use double-quoted strings instead of single-quoted strings so that PyPI can parse it without error.
CentOS 6 Setup
CentOS 6 is in archived state, but may still be used for education purposes. This post guides you through the installation process: (1) Download ISO file (2...
Increase VirtualBox Disk Size
Resize VDI with File > Virtual Media Manager. If you are using snapshots, remember to resize all snapshots. Reference: resize vbox disk.vhd w...
Fixing tmux hotkey conflict in Jupyter Lab
To solve the conflict of Ctrl+B hotkey, configure the user preference. In Settings > Advanced Settings Editor > Keyboard Shortcuts > User Preferenc...
Windows Hotspot Stucks at Obtaining IP Address
In Windows 10: In Settings > Network & Internet > Status, click Change adapter options Open another window Settings > Network & Interne...
Install-Ubuntu-Alongside-Windows-on-the-Same-Drive
(Optional) Install Windows 10 Shrink the Windows partition, resulting some Unallocated Space. The built-in Disk Management may have shrinking issues due...
Windows Photo Viewer Yellow Tint Issue
Open Color Management Select your current display Check Use my settings for this device Add a new profile and select sRGB IEC61966-2.1 under ICC Pro...
CUDA and cuDNN Version
How to retrieve CUDA and cuDNN versions. Please note that the CUDA version in nvidia-smi does not show the currently installed CUDA version. Instead, it sho...
Free Remote Desktop Software
For commercial use, you can use RustDesk, or Google Remote Desktop (doesn’t support Linux). For personal use, you can further use TeamViewer, Anydesk, RealV...
TigerVNC on Ubuntu
Some resources for setting up Tiger VNC on Ubuntu.
xrandr Commands
xrandr: RandR (Resize and Rotate) X Window System extension.
Pandoc Styling
Some styling notes on pandoc.
Proxmox VE GPU Passthrough Report
Some notes and references on the GPU passthrough settings. The guide is a sufficient condition for GPU passthrough, not a necessary one. Keep in mind that t...
Disable Wayland on Ubuntu
Disable Wayland on Ubuntu for Anydesk, Rustdesk, etc.
Proxmox VE VM Setup Notes
Some setup scripts / guides for VMs in Proxmox VE. This note is highly dependent on the following repo: https://github.com/j3soon/linux-scripts
X11 Forwarding through SSH
Guide for setting up X11 Forwarding from Linux to Windows through SSH.
Xbox Controller Keep Turning Off
Connect controller via cable [Device Manager] -> [Xbox Peripherals] -> [Xbox Controller] Right click -> [Properties] -> [Power Management]...
Windows Startup Folder
Win + R and enter shell:startup. Reference: Add an app to run automatically at startup in Windows 10
ArXiv Upload Success but No PDF Output
If your arXiv logs show that it is using hlatex, then you can add \pdfoutput=1 in the beginning of your LaTex file to switch to using hpdflatex. Reference: ...
Wake On LAN
After allowing Wake On LAN in the BIOS (example), we need to setup the OS to allow Wake On LAN. For Ubuntu Desktop, see the Debian guide. For Proxmox V...
Losing focus on Windows caused by WSL
WSL steals the active window’s focus.
rl
Table of Contents
Use a graph to describe the relationship of Deep Reinforcement Learning baselines. Table the characteristic of these algorithms. List out the papers and blog...