I understand free softwares such as FileZilla need money to sustain, but it’s annoying for FileZilla to pin Opera on the dock of my MacBook (after I forgot to uncheck the “option” to install Opera). More annoying is I can’t find the Opera app in the /Applications folder. After searching for a few minutes, I found the Opera app was in

~/Applications

So just delete “Opera.app” and remove its icon from the dock.

(Some other words: Opera browser is partly owned by QiHoo 360, a Chinese company notorious for its difficult-to-uninstall and hijack-your-browser “anti-virus” softwares for Windows. Hey 360, leave Mac alone!)

On my Sierra 10.3.6 and Xcode 9.2, the Xcode playground will get stuck even for very simple programs. There seem to be may solutions if you search it. In my case, because the user is restricted by Parental Controls, I need to add it to the “Developer Tools” group when logged as an administrator, which solves the running stuck problem:

sudo dscl . append /Groups/_developer GroupMembership  YOUR_USERNAME

Parental Controls was enabled for the only administrator user of my mac (as a result, this admin was converted to a managed user). When I tried to install some software later, I was asked to enter an administrator username and password, which I no longer had.

The only solution seems to be adding an administrator user. There are many discussions on the web. On my Sierra 10.12.6, the process is a bit different from others:

  1. Press power button, and quickly press and hold CMD + S to enter Single User Mode  (i.e. root in console);
  2. The problem I encountered is, after Step 1, the screen flashes an error message “BuildUser(): error building a user of type xxx“, and then shows the normal user login window. After a few tries, I found I need to enter the password of a current user, and then the system enters Single User Mode. (Update: this is because FileVault is turned on, ref: https://support.apple.com/en-us/HT201573);
  3. In Single User Mode, mount the startup drive: /sbin/mount -uw /
  4. Then remove (or I think better rename) file: rm /var/db/.applesetupdone
  5. Reboot: reboot
  6. After rebooting, the system shows the login window again. Enter the password for the current user, and then the system will go through the process of creating a new admin user (like setting up the Mac for the first time).

Some other words: it seems the above process can be used to bypass parental controls (?).

Using the default Elsevier latex template, there is a URL in each bibliography reference with “Bdsk-Url” fields. To remove this URL,
1. Open the BTS (bibliography style) file being used (by default “els article-num.bst”).
2. For each BibTeX item type (e.g. “inproceedings”), find the corresponding function in the above BST file (e.g. “FUNCTION {inproceedings}”), then comment out “write.url” in the end of this function (i.e. change it to “%write.url”).

(To remove such URLs for IEEE template, please refer to http://writebuffer.com/remove-url-in-ieeetran-bibliography-on-mac-os/)

If you have better solutions, please let me know. Thanks.

I installed the NVIDIA Web Driver on my MacBook Pro (Mid 2014 w/ GT750M) due to sluggish High Sierra. At first, it seemed to improve the graphics performance a bit. However, when I tried to restart the MacBook later, it just stuck on Apple logo with progress bar not finishing moving.

In Safe Boot, I can’t access the NVIDIA Driver Manager. Right now my solution is to clear the Macbook’s NVRAM (nonvolatile random-access memory). Caution: it will also reset several other settings. The method is: press Option, Command, P, and R together, and then start the computer.

If you have better solutions, please leave your comments. Thanks.

ANSI: /ˈænsi/
cout/cin: c-out/c-in
malloc: mal-loc
endl: end-l
N^2: N squared
N^3: N cubed
N*Log(N): N log N
1/2: one half
1/3: one third
/ : forward slash
\ : backslack
* : asterisk
(condition)? expTrue : expFalse : ternary operator

Several times after I force-restart my Mac (recently in High Sierra), I found Safari lost all its saved passwords. It seems the Mac loses the keychain containing these passwords. The solution may be simple:
Go to System Preferences -> iCloud, if “Keychain” is unchecked, check it. Then all passwords should be accessible in Safari again.

This method is learned from https://www.digitalocean.com/community/questions/how-to-change-swap-size-on-ubuntu-14-04:

(change count=1024 for the size you need)

sudo -s
swapoff -a
dd if=/dev/zero of=/swapfile bs=1M count=1024
chmod 0600 /swapfile
mkswap /swapfile
swapon /swapfile

  1. Download intellij-java-google-style.xml from GitHub: https://raw.githubusercontent.com/google/styleguide/gh-pages/intellij-java-google-style.xml
  2. On Mac, IntelliJ Preferences -> Editor -> Code Style -> Java -> (Click “Gear” icon) -> Import Scheme -> Import IDEA code style XML