Skip to content

Instantly share code, notes, and snippets.

View coodoo's full-sized avatar

Jeremy Lu coodoo

View GitHub Profile
@coodoo
coodoo / _final.md
Last active November 7, 2020 13:42

前言

這是 Oct. 28 ~ Nov. 01, 2020 間於推特上舉辦的趣味面試挑戰,四天期間共 517 人次閱讀、42 人 fork sandbox,最後收到九份回答,如果這是正式面試,將錄取 5 人、備取 1 人、拒絕 3 人,也就是成功率約六成。

先說結論

  • 面試時別急著跳進去回答問題,先拉高層次觀察問題的形狀,搞清楚 root cause 後再思考答案與解法

  • 過程中多詢問主考官真正想達到的目地、目前為何採取此手法、現在的做法是否遇到困難、有無解法上的限制(time, mem, cpu bound)

@coodoo
coodoo / karabiner.json
Last active August 9, 2020 06:10
Toggle vi_mode mode with caps_lock so that hjkl keys function as arrow keys and u/i as delete and backspace.
{
"global":
{
"check_for_updates_on_startup": true,
"show_in_menu_bar": false,
"show_profile_name_in_menu_bar": false
},
"profiles":
[
{
{
id: 'Root',
initial: 'after map loaded',
states: {
'before map loaded': {
on: {},
states: {}
},
'after map loaded': {
on: {},
@coodoo
coodoo / statechart-xstate.md
Last active May 26, 2022 20:00
Extensive research of statecharts with a focus on front-end development.

The case for statechart and xstate -- why it matters and how we can benefit from it

Bottom line up front

  • redux is a global data management tool, not a proper state management tool, hence causing a lot of troubles

  • statecharts is an extension to Finite State Machine (FSM) which provides explicit and safe state management capabilities, perfectly fit for front-end development

  • statecharts had been used intensivelly in all industries (be it embedded systems, hardware, electronics, aeronautics, automotive, game development and more), it's us front-end developers late to the party

@coodoo
coodoo / machine.js
Last active August 30, 2019 08:53
Generated by XState Viz: https://xstate.js.org/viz
// Available variables:
// - Machine
// - interpret
// - assign
// - send
// - sendParent
// - spawn
// - raise
// - actions
@coodoo
coodoo / useEffect.js
Created August 29, 2019 05:26
[Request for comment] Is there any potential issues handling componentDidMount and componentDidUp with useHooks in this manner?
const once = useRef(false)
useEffect(() => {
if(once.current === false){
once.current = true
// do things as were in componentDidMount
return
}
@coodoo
coodoo / dfa.js
Last active August 11, 2019 06:31
const T = {
INT: 'INT',
SIGN: 'SIGN',
DOT: 'DOT',
EXPO: 'EXPO',
SPACE: 'SPACE',
INVALID: 'INVALID',
EMPTY: 'EMPTY',
}
Bus App
idle
DOOR_OPEN -> loading
loading
DOOR_CLOSE -> stopped
#要放 cond 因為 close 不代表有放入 cd
loadError
#
stopped
ON_EJECT -> idle
Bus App
display
RELOAD -> loading
loading
LOAD_OK -> display
LOAD_FAIL -> error
error
RELOAD -> loading
@coodoo
coodoo / SketchSystems.spec
Last active April 6, 2019 07:38
Gallery App
Gallery App
gallery
SEARCH -> loading
SELECT_PHOTO -> photo
RELOAD -> gallery
loading
CANCEL -> gallery
SEARCH_FAILED -> error
SEARCH_SUCCESS -> gallery
error