-
Another Year, Same New Year Resolutions
So.. it was totally a died site after 3 posts per year for the past 2 years, and a big zero in 2017. Most posts are either during the beginning of a year or end of the year, and obviously, writing is still one of the most difficult tasks to be achieved, as it’s on the top of the most wanted new year resolution ever since I started the site.
I have a slightly different view for the new year resolutions this year, considering I’ve partially failed some of them (not all fortunately!), the list of resolutions is gonna stick for years to come:
Stay fit - It was something I’ve been doing on 2017, so it shouldn’t be an issue for me this year as well.
Overcoming procrastination - This is a little bit tricky because I’m still procrastinating nowadays, but I read somewhere that if you’d just give the task you should be doing a 5min, and you’ll eventually finish the task down the road. I somehow think this method should work, will report back the result :)
Read (a lot) more books - I’ve been reading a lot of articles on the web and phone, time for more books too - a more quality source.
Be a creator, start by writing - There’s an article I’ve been reading talking about how being a creator would greatly improve yourself as a whole than merely consuming what others have created. Kind of agree on this and will definitely give it a try.
New technical skills - Yea, this is a must. Might be looking into some machine learning stuffs.
Lastly, 2017 was pretty much a roller coaster ride for me, many things happened in an unexpected way; whether they are good and bad. I’m glad that I am still appreciate my life as a whole, and energetically to look for the next adventure. The pains and the joys shall not be forgetten, and the life continues…
-
Setting up GPG for Git
Earlier this month GitHub launched a new feature, GPG signature verification which would add a verified tag for each commit that signed with GPG.
This feature is especially useful when you’re working on a shared computer, where you want to prevent others to commit on your behalf (no, that spaghetti code wasn’t mine) by verifying with a passphase whenever you make a commit; Or if you were like me, having a Verified label on your commits on GitHub looks pretty cool yo.
Install GPG with Homebrew
$ brew install gpg
Generate GPG key
$ gpg --gen-key
This step is pretty straight forward, just follow the instruction. I opt for the default option to use RSA, whereas for the RSA keysize, it’s recommended to use 2048 (default) since it’s in a balance of security and performance. I like things to be balanced out.
gpg (GnuPG) 1.4.20; Copyright (C) 2015 Free Software Foundation, Inc. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. gpg: directory `/Users/shinn/.gnupg' created gpg: new configuration file `/Users/shinn/.gnupg/gpg.conf' created gpg: WARNING: options in `/Users/shinn/.gnupg/gpg.conf' are not yet active during this run gpg: keyring `/Users/shinn/.gnupg/secring.gpg' created gpg: keyring `/Users/shinn/.gnupg/pubring.gpg' created Please select what kind of key you want: (1) RSA and RSA (default) (2) DSA and Elgamal (3) DSA (sign only) (4) RSA (sign only) Your selection? 1 RSA keys may be between 1024 and 4096 bits long. What keysize do you want? (2048) Requested keysize is 2048 bits Please specify how long the key should be valid. 0 = key does not expire <n> = key expires in n days <n>w = key expires in n weeks <n>m = key expires in n months <n>y = key expires in n years Key is valid for? (0) Key does not expire at all Is this correct? (y/N) y
Then enter the information for your signature and set up the passphase:
You need a user ID to identify your key; the software constructs the user ID from the Real Name, Comment and Email Address in this form: "Heinrich Heine (Der Dichter) <[email protected]>" Real name: Shinn Chong Email address: [email protected] Comment: Personal Macbook You selected this USER-ID: "Shinn Chong (Personal Macbook) <[email protected]>" Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? o You need a Passphrase to protect your secret key. We need to generate a lot of random bytes. It is a good idea to perform some other action (type on the keyboard, move the mouse, utilize the disks) during the prime generation; this gives the random number generator a better chance to gain enough entropy. ...+++++ ...+++++ We need to generate a lot of random bytes. It is a good idea to perform some other action (type on the keyboard, move the mouse, utilize the disks) during the prime generation; this gives the random number generator a better chance to gain enough entropy. ........+++++ ....+++++ gpg: /Users/shinn/.gnupg/trustdb.gpg: trustdb created gpg: key 123C1234 marked as ultimately trusted public and secret key created and signed. gpg: checking the trustdb gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 1u pub 2048R/123C1234 2016-04-30 Key fingerprint = 7D50 C87B EA66 1A08 19CB 325C E6CD 064B 390A 7855 uid Shinn Chong (Personal Macbook) <[email protected]> sub 2048R/08831C0D 2016-04-30
Telling Git about your GPG key
$ gpg --list-keys
/Users/shinn/.gnupg/pubring.gpg ------------------------------- pub 2048R/123C1234 2016-04-30 uid Shinn Chong (Personal Macbook) <[email protected]> sub 2048R/08831C0D 2016-04-30
$ git config --global user.signingkey 123C1234
Set all commits for a repository to be signed by default
$ git config --global commit.gpgsign true
And you’re done!
References:
Signing Your Work | How to use GPG command line | Telling Git about your GPG key | Setting up GPG signature on Mac OS X with Xcode | Change passphase
-
Twenty Sixteen
Happy New Year!
Didn’t go for a count down this year; TV and chill (404 Netflix not found) at home instead.
There’s a joke saying:
Don’t be too excited about this New Year stuff.
Only the Calendar has changed.
The wife and job remain the same.
A small reminder!However I think it’s always good to be excited on what you gonna do for a new year, even if it might not be achieveable because that’s what keep you motivated!
For me, this year would continue on what I’ve been doing for the past year, nothing really changed but things will definitely change, in a better way, hopefully! :smile:
All the best for everyone and wish a better year ahead, world peace. :v:
-
Debug the unknown with git bisect
Many of you might have been facing the problem where the few latest commits break your existing features (Y NO TESTING?).
There’s a handful feature in git,
git-bisect
which could help you to quickly debug what went wrong within the good (working) and bad (broken) commits. -
Setting Heroku apps URL in Review App
Heroku launched the review apps beta earlier in May 2015, which completes the continuous delivery experience when deploying on Heroku, along with the Heroku flow. To try out this new flow, I spinned up a rails review app, everything else looks good except that all the assets were broken on the review app server.
It turns out that the assets was depending on an ENV variable,
WWW_HOST
which is url of the Heroku app and I’ve to fix this manually by doingheroku config:set WWW_HOST=blablabla.com
for each review app. But isn’t it too tedious? I think so.Then I was prying around in the Heroku server and found this
HEROKU_APP_NAME
which allows me to update theWWW_HOST
env via thepostdeploy
script. I’ve configured theapp.json
as following:It should run
bin/rake dev:bootstrap
after the deployment, and I’ve added a rake task to update the environment variable with Heroku Platform API. -
Who Are You?
Hi I’m Shinn Chong.
What are you?
I’m a living organism who do code for fooooood.
Why did you decided to start writing?
For the future self. I’m delivering a message to my future self that what have changed over years and writing is one of the best ways I guess.
What do you want to achieve ?
Think big — A better world. IMO humans are created to make this world a better world for the next generation of humans. In reality, I just want to create something for others.
How do you deal with procrastination?
Well, sometimes I still do procrastinate… I think a good meal or view could tell me a message that “The world is so great, let’s do something and not to waste it”. Then I’ll start on moving my ass.
So you view procrastination as a motivating factor?
It’s like “don’t go fully retard”. Don’t go fully procrastinated either.
Do you love your life?
#YOLO. Just love it and make it the way you like.
What do you regret in your past 5 years?
Didn’t really play hard enough.
What are you most proud of?
I think my ability to endure changes. The world is keep changing every day, I have to make sure that my mind is adaptive to the change, and make myself better.