發表文章

管理者的養成之路,十年磨不成一劍,那就花二十年。

圖片
本篇書摘是 The Making of a Manager: What to Do When Everyone Looks to you 的中文版,「當上主管後,難道只能默默崩潰?Facebook產品設計副總打造和諧團隊的領導之路」 書摘內容以 黑體字 呈現個人的練習以及補充則以 灰色 字呈現 左:中文版/ 右:原版封面 https://www.books.com.tw/products/0010855700 https://www.books.com.tw/products/F014325856 身為管理者,就是要想辦法讓一群人合作,並得出更好的結果。 管理者每天處理的三大類: 目標就是why,反問為什麼工作很重要,確保團隊知道成功長的樣貌,並且想要做到。 人就是who,團隊裡面的人是否有具備成功的條件?是否有正確的技能?是否有想要成功? 流程就是how,安排每個人的職責,做好計畫讓事情迅速完成。 優秀的manager是後天培育出來,你得享受日常的管理工作。 當自己對管理有興趣時,好奇自己是不是一位好主管,可以問自己三個問題: 我是否比較喜歡達成特定成果或扮演特定角色?企業領導人第一要務是要讓團隊成功,願意視情況擔任不同角色,成為組織需要的領導人物。 我喜歡跟人講話嗎?七成的時間花在開會,並且是有質量的會議,有建設性意見交流的輸出與輸入 我是否能在充滿情緒挑的情況下依舊穩若泰山?管理跟人有百分百的關係,管理者會碰上不好開口的時刻,包含要對方走人或者是沒有做到職位上的期待,此時情緒管理需要表現得更鎮定並也能保持同理心關心與支持他人。 接下管理職不一定是對職涯發展更好,思考以下情境是否出現在職涯道路上 到了一定年紀,不轉管理職職涯沒有升遷機會 -> 管理職實質上是職務的轉換,並不是晉升 我想獲得主導權 ->在管理過程東達到最理想的工作成效,是來再有共同目標病蟲滿幹凈且行動力行動的人,而不是單傳指揮別人做事。 被問到要不要接管理職 -> 是真心想接,享受管理,而不是在道義上以「我應該」和「我做得到」為理由 當個優秀管理者前提,是做個有影響力的領導者。 接下管理職途徑主要有四種 學徒:團隊正在成長,主管需要你接下一起來分擔臉工作 開拓者:新團隊創始成員 新來的主管:空降帶領運轉一段時間的團隊 繼任者:上司決定離開而接下位置 帶領小型團隊 帶領團隊一切最終...

以”喜劇開場“迎接下個十年舞台

圖片
在Netflix, youtube, Amazon Prime 等網路串流興起,改變以往的觀看戲劇的體驗。此劇目前在friDay影音在台灣地區有播出。 photo from https://www.ntv.co.jp/conpaji/ 「喜劇開場」故事描述成軍十年的喜劇演員團體,因為沒有任何起色而開始思考接下來的人生規劃。藉由有村架純飾演的女主角 - 一位在人生、工作、感情上受到一連串的挫折,在迷茫的打工生活中認識這喜劇團體,漸漸的找回前進的動力。 在工作即將邁入十年之際,隨著這部日劇於上周的完結,正好來與劇中的角色心境做點呼應。 回顧剛出社會設定的十年目標,鮮少有達成的項目。在有限時間的球賽裡,沒能贏得比賽並不代表過去所有過程都是無用。 目標跟環境變化息息相關,世界變動的太快,滾動式的修正目標,也未必是對人生目標猶疑不定。 即便社會愛用「過程比結果重要」來削弱結果與成功之間的連結,但最終還是會以什麼年紀該有什麼成就、該有怎樣的頭銜、該有怎樣的能力來評斷一個人。 一句話、一個貼心的舉動可以鼓勵人、給對方勇氣向前,無論是多麼微不足道或毫無關聯。若對方尋求協助,不要吝嗇給予對方任何正反向的建議。 人生會迷惘是正常的,在卡住的同時試著對重新檢視、設計人生,或許會有新的體悟,建議可從「Designing your life」這本書上的練習去探索人生新的可能。 如同靈魂急轉彎Soul提到的火花(Spark)一樣,熱情未必能跟職業相合,但還是能在不同環境中保持那個初心。 人生旅途中了解自己,分析自己的優勢劣勢並持續學習讓自己更好、也回饋給社會讓世界變得更好。在同個領域堅持了十年,已經是成功了。 *コント 的發音是來自comedy,小時候熟知的志村大爆笑也屬於這一類短劇 *Designing your life -  books.com.tw/products/0010733134

在公開場合演講、主持會議、聚會閒聊中"精準表達"

圖片
此書對我而言像是個工具書,提點自己在與人聊天、溝通、會議上能夠事先做練習並再精進的地方。 會議、演講聽得夠多,會發現大家慣用的pattern,例如聽到用英文演講的開頭幾乎都是 "It's my honor to be here..." 這種「我很榮幸受邀參加貴司的演講」似乎歷久不衰,但也略顯老套。 並不是每個人天生都是表達高手,現實世界中又是以外向性格來主宰世界,口語表達需要如健身一樣時常訓練,產生肌肉記憶。 引人入勝的開場、簡潔的開頭、提問題的方式引發聽眾對你接下來說的話產生好奇心。但濫用的下場,就跟現在台灣新聞標題、youtube的封面一樣,理智的人早已麻木不感到興奮,看不夠多的人則容易被煽動。 說個有畫面的故事,像是拍電影。溝通的高手宛如電影導演,在讀者心中彩繪出視覺效果。例如,用視覺形容美食「烘烤過程香氣四溢,一刀劃破金黃色酥脆雞皮,切下烤雞腿肉的瞬間,飽滿雞汁滲出,再一口送入嘴裡裏,完美享用烤雞的樂趣」來取代「好吃」、「真香」。 故事也能藉由有話面的講場景、人物、事件衝突去構築,常聽到以自身為例子去說服別人,買下產品。如:「我自己有有在用PC-Ciliin 跟趨勢科技防詐達人」 數據呈現可用兩種以上方法去強調,例如「年收成長1.8B 相當於一年成長15%,也就是獲利足夠買下一戶陶朱隱園」 長話短說,準備較長的版本以及可以縮小的版本。適時放慢速度與停頓,讓觀眾喘口氣,用練習戒掉焦慮和口頭禪。 溝通時臉部談話對象或觀眾會注視的地方,避免有揉鼻子、揉眼睛等不必要的動作。適時修眉毛 <- 眉毛在臉上很搶戲 XD 當個聽眾,展現好奇心並想問題提問,溝通是建立在多人間的互動上,而不是儒家傳統教育所遵循的聽師長、父母的話就不能有質疑。 書中最後三個章節分別針對即席演講、求職、生活中的情境提供練習的方向,提供讀者練習各種情境下能夠表達得宜。

如何在MacOS 中自由切換不同Python版本 - pyenv + virtualenv

  https://stackoverflow.com/questions/48470540/how-to-work-with-pyenv-virtualenv-and-pipenv 假設要不同資料夾、不同專案設定不同的python版本,可以由以下兩中方式達成 pyenv + virtualenv pyenv + pipenv 此篇介紹第一種方式pyenv 與virtualenv的組合,相對簡單明瞭。 mac os terminal操作步驟 更新pip sudo pip3 install --upgrade pip 用homebrew安裝pyenv-virtualenv (會一併的安裝這兩者與他們的dependency) brew install pyenv-virtualenv  安裝指定版本於本機,在此用python 3.7.7為例 pyenv install 3.7.7 以 python 3.7.7為版本,建立一個名為 venv377的虛擬環境 pyenv virtualenv 3.7.7 venv377 切換到專案的資料夾下 cd project_101 將預設的python版本使用venv377這個環境 pyenv local venv377 *pyenv 有三種scope: global, local, shell,顧名思義就是修改系統python、當前目錄python、以及目前登入terminal的shell ** 若是遇到Failed to activate virtualenv,是因為啟動shell時沒有加上pyenv, virtualenv 的init,please check "add script in .zshrc" 所以說,有兩個方法可以切換python版本 在virtualenv去指定某個版本 就要在該目錄下第6步 - pyenv local project_py377 這樣就會在該目錄下生成 .python-version 裡面就會寫用什麼環境的python e.g.: venv377 在任何folder下指定某個版本 就直接下 pyenv activate venv377, 即可用python3.7.7 source deactivate就能脫逃 add script in .zshrc $ echo '...

MongoDB - The first sight

Introduction MongoDB is a document database designed for 易於開發與擴展,資料結構是field and value pairs 的BSON documents (像是JSON object). Value 型態除了string, int可為 document, arrays of document... MongoDB與DynamoDB都能運用GoeJOSN格式儲存座標地理位置 ref: https://geojson.org / https://docs.mongodb.com/manual/geospatial-queries / RDB v.s MongoDB 術語 database -> database table -> collection row -> document column -> field MongoDB 對應回RDB的專有名詞(aggregation mapping from SQL terms): WHERE -> match GROUP BY -> group HAVING -> match SELECT -> project ORDER BY -> sort LIMIT -> limit SUM() -> sum COUNT -> sum/sortByCount join -> lookup MongoDB的index 如同NoSQL的設定,沒透過index搜尋則會full collection scan. Index 是個能夠易於traverse 的資料結構。儲存對某field的value by 排序狀態,讓index搜尋時有效的匹配範圍操作的查詢 https://docs.mongodb.com/manual/indexes / MongoDB index type Single-field - 除了_id 之外可以自定義其他index,因為欄位單一因此順序不重要。e.g.: {score: 1} Compound Index - 定義index於多欄位 ,架設index為以下兩個組成 {name:1, score: -1},則index會先以name做排序再排score。 Multike...

Redis - the first sight

Introduction Redis a.k.a Re mote Di ctionary S erver Open source , in-memory data structure store 資料儲存方式,用在 used as database, cache and message broker. 提供strings, hashes, lists, sets, sorted sets  with range queries, bitmaps, geospatial indexes, and streams 等資料型態. Redis 內建 replica, Lua scripting, LRU eviction, transactions 以及不同level的on-disk persistence並且透過Redis Sentinel提供高可用性以及用Redis Cluster 達到automatic partitioning. Redis 可以做 atomic operations 像是 append string to value, 對hash value增加(或減少),push elements to list, 取交集、聯集...等。Redis 可以藉由dump dataset to disk 或appended commands to a disk-based log來保存資料。若只為了做cached則不必則不必開啟persistence. 科普 What is "atomic operations"? In concurrent programing - program runs completely independently of any other processes. In operating system kernel - Most computer hardware, compilers, libraries are provide different levels of atomic operations. 處理器在同一個記憶體位置讀寫做data transmission,可用atomic operation 來確保資料的來確保資料的正確性。 AWS 的ElastiCache 提供Redis and Memcached可...

NoSQL and AWS DynamoDB - The first sight

圖片
Introduction NoSQL 是 Not Only SQL,是一種非傳統關連式的資料庫 由於是key-value 的架構,因此設計primary key格外重要。primary key由partition key 與sort key(optional)結合。 在搜尋的方式上,因為架構上受限,只能對key 做運算(=, >=, /= ...)的判斷,因此當你決定用NoSQL來作為資料庫時,第一個問題是要用那個欄位為key? 根據AWS的解釋 NoSQL是高效能、非關連式資料庫並且有彈性的資料模組,部署容易,易於scale out。 Query 時partition key 不得為空 Types of NoSQL Databases key-value, 用特定鍵值去搜尋資料,像是Redis這樣的操作。 Column-oriented, 用來應付分散式巨量資料的儲存方式,仍是用key去搜尋,會對應多個列,如Cassandra Document, 半結構化的儲存格式像是JSON format, 查詢效率更高。like MongoDB Graph, 圖形結構 like Neo4j In-memory, use case like leaderboard, session stores, 即便redis可以提供低延遲的workload, 但畢竟沒有寫到disk like DynamoDB Search,  若把elasticsearch算進來,就會是屬於對搜尋最佳化後的NoSQL例子 AWS DynamoDB AWS DynamoDB 的Primary Key有兩種 Particition Key- 為單一attribute表示,值不允許重複,經過hash function存入對應的partition(物理) Partition key and sort key- 兩個attribute組合而成,可允許有相同partition key但同時sort key必須唯一。經過hash function 後相同partition key就會在同一區,再由short key做排序。 查詢時...primary key 值是必要判斷條件,不可能有空值。若要以其他attribute作為查詢條件,可建立Secondary index。 Secondary indexes...