I downloaded the beta and gave it a try.
At this stage, it’s already a better email client than Airmail.
Some notes:
- Amazing startup speed. Why can’t all apps be like this?
- Nice and clean UI. Community themes could be a great feature to have but I don’t mind not having it.
- I specially like the conversation list view. It’s just so clean.
TIL
series
async function series() {
await wait(500); // Wait 500ms…
await wait(500); // …then wait another 500ms.
return "done!";
}
parallel
async function parallel() {
const wait1 = wait(500); // Start a 500ms timer asynchronously…
const wait2 = wait(500); // …meaning this timer happens in parallel.
await wait1; // Wait 500ms for the first timer…
await wait2; // …by which time this timer has already finished.
return "done!";
}
2017: year in review
Best year at work yet!
- I worked on a project (with a several members of my team) to migrate our apps onto Kubernetes cluster since the beginning of 2017. We’ve been using Kubernetes in production since.
- Convince and guide other teams to follow our initiative to migrate to Kubernetes.
- 💸 Significantly reduce our AWS bills with the use of spot instances / spot fleet while maintaining high availability of the system.
- ✌️ Got a new job!! Employer gave a counter offer matching compensation but I decided it’s time to move on.
Overall, I’ve set a concrete infrastructure for my company to move forward. I believe my team can step up and continue working on current projects.
My one and only
Being a father is overwhelming but certainly a great experience. Sleep depreviation sucks but any bad feelings seems to disappear when those little tiny hands hold my face and give me quick kiss on the cheek.
More books
I will not force myself to finish the book I’m not enjoying or learning from. I did this rigorously last year just for the sake of finishing the books.
I also want to learn speed-read this year.
Average readers read at speeds of around 250 words per minute with a typical comprehension of 60%. Imagine if you can read at 500 wpm, you can read twice as many books. It’s truly an amazing skill to have.
Talks
I didn’t give any talks last year. I would love to do 1 or 2 this year. Let’s make it happen.
2018 is gonna be a great year!
From 2016. Still very good talk by Jessie Frazelle.
A better way to go through terminal command history
In the past, I used to use Ctrl+R
to search my terminal command history but it’s unreliable.
I couldn’t wrap my head around how it search sometimes.
Thanksfully, I was introduced to fzf and it’s
has been a wonderful little gem. The power of fzf
is much more than
just searching through command history, depends on how creative you are.
The one I show here is just an example of how powerful fzf
is. Basically, it
can be pipe to just anything and fuzzy search that.
fh () {
print -z $( ([ -n "$ZSH_NAME" ] && fc -l 1 || history) | fzf +s --tac | sed 's/ *[0-9]* *//')
}
Now go brew install fzf
, add the above function and thanks me later 😁
A lot has changed since last I look at it. Still a bit awkward but the toolings around Lambda have significantly improved.
Related:
Traits of a good leader
Found this on HackerNews. Very much on point, though I don’t quite agree with the last item.
-
You have to have your people’s back, this is the most important thing… be there for them, insulate them from problems and management stupidity and always fight for them.
-
Lead by example, never ask them to do something you won’t do yourself.
-
Communicate, I have booked on afternoon a week from 14:00pm till 16:00 and more to just talk with my team and discuss everything from work, to weather, sports, to bitch and moan against the company, etc…
-
Get together as much as you can on a real “team building exercise” - the whole team in another city for at least 2 days with a great party and lots of eating and drinking on company dime…
Easily pruning unneeded files from
node_modules
A npm package to clean up node_modules
folder to remove unnecessary files on production.
Use cases:
- optimize sizes for aws lambda
- optimize sizes for docker build using multi stage docker
This is my fork of koa-compress
that add supports for brotli compression.
Available on npm.
Great idea. I never thought of Docker containers this way because I totally forgot that I can always mount the config to the container.
This totally changes my dev environment setup.
$ docker run -it \
-v /etc/localtime:/etc/localtime \
-v $HOME/.irssi:/home/user/.irssi \ # mounts irssi config in container
--read-only \ # cool new feature in 1.5
--name irssi \
jess/irssi