date: 2016-03-16 11:03
Bachelor of Wuhan University, Computer Science
PHP Senior Developer, pre-Architect
Mail: 1252409767@qq.com(qq+wechat)
Blog: blog.daydaygo.top(power by farbox)
github: daydaygo(coding.net)
用c++寫算法, 用java寫oo, 用go寫服務(wù)器, 用php改變世界. Anymore, c 是最好的語言, 沒有之一.
practice make perfect.
keep learning, work first
仰之彌高稼跳,鉆之彌堅(jiān)
工欲善其事, 必先利其器
死有余辜, 活有余罪
天行健, 君子以自強(qiáng)不息∥轮危《周易》
士不可不弘毅, 任重而道遠(yuǎn)祈纯±灏梗《論語》
修學(xué)好古, 實(shí)事求是。《漢書》
越來越喜歡現(xiàn)在的自己, 不用過多思考就喜歡上, 然后毫無節(jié)制. 在不久后, 就又多了回憶.
工匠應(yīng)該專注于作品的創(chuàng)意惊来,不應(yīng)該浪費(fèi)精力,沒限制地在折騰自己的工具
你不上心, 你就無法解決一個(gè)不太熟悉的問題, 任何細(xì)節(jié)的忽略都可能將你的一知半解引向死胡同
文檔查看工具: zeal(win) , dash(mac), devdocs(瀏覽器)
excel方便查看: 左上角全選, 然后在分欄的地方雙擊
show the code
編程語言, 數(shù)據(jù)結(jié)構(gòu), 算法, oj題解, 相關(guān)讀書筆記: https://coding.net/u/daydaygo/p/leetcode/git
最佳實(shí)踐 best practice
- 銘記于心: 時(shí)間飛逝, 盡量讓每天多一點(diǎn)意義.
this is why you call yourself daydaygo
- 承上: 「日結(jié)」算一個(gè)好習(xí)慣. 先使用 farbox 自帶的格式, 以后再自己設(shè)計(jì).
- plan: 定好計(jì)劃, 持續(xù)完成, 不要輕易定計(jì)劃, 也不要輕易放棄.
- blog: 大話不多說, 至少一周一篇.
- 教育的重要性不在于知識(shí), 而在于訓(xùn)練. 那么讀書呢?
fun
- 誰TM再問我 php5.4 和 php5.3 的區(qū)別, 我就問你 php5.4 添加的垃圾(內(nèi)存)回收算法, 讓你TM和我裝.
- 和我拼算法么: 我確實(shí)忘了快排的具體實(shí)現(xiàn)思路了, 但是你要是用 c++, 難道會(huì)不用
sort()
函數(shù)而自己寫么?
我能一口氣balabala的數(shù)據(jù)結(jié)構(gòu): 數(shù)組 / hash / 鏈表 / 環(huán) / 隊(duì)列 / 優(yōu)先級(jí)隊(duì)列(是不是沒聽過, 去刷oj吧) / 棧 / 堆(堆排序) / 樹 / 二叉樹 / 二叉搜索樹 / 紅黑樹(億級(jí)ip怎么搜索) / b+樹 / b-樹 / 圖(別問我怎么實(shí)現(xiàn))
我能一口氣balabala的算法: 時(shí)間復(fù)雜度 / 空間復(fù)雜度 / 查找 / 排序(拓?fù)渑判蛴薪佑|過?) / 貪心 / 動(dòng)態(tài)規(guī)劃 / 背包(0-1背包) / 最短路徑 / 樹的遍歷 / 圖的遍歷
more: 請(qǐng)用 c 實(shí)現(xiàn)一個(gè)大數(shù)A+B
, 無論哪個(gè)oj上面都有, 你要是能3次內(nèi) AC, 請(qǐng)收下我的膝蓋. - 程序員的三大情懷: 算法, 匯編, 操作系統(tǒng). 終于發(fā)現(xiàn)我還能和情懷扯上點(diǎn)關(guān)系了, 好歹玩了一年算法.
- 有一次被虐的面試經(jīng)歷是這樣: 先問了一下php類的自動(dòng)加載(我直接回答出了類的自動(dòng)加載的演變過程), 然后 nginx 出現(xiàn)大量502(這個(gè)就是要考察nginx + php-fpm + mysql 這樣架構(gòu)的原因), 然后就問我了解操作系統(tǒng)不, epoll 知道不? 然后很鄙視的說居然 epoll 都不知道(當(dāng)時(shí)確實(shí)感覺自己是不是知道得太少了, 不過看swoole的時(shí)候, 知道了這個(gè)東東, 大家可以關(guān)注一下 rango 的 blog).
- 現(xiàn)在發(fā)現(xiàn)畢業(yè)那會(huì)做的類似
++i
之類的面試相當(dāng)?shù)目尚? 良好的開發(fā)實(shí)踐都是避開那些彎彎繞繞容易產(chǎn)生歧義的用法. - 離別不可怕, 可怕的是即便不在一個(gè)宿舍了, 那貨還是會(huì)拉你一起打游戲, 而且還坑你
- too much java: 少一點(diǎn)套路, 多一點(diǎn)真誠
職業(yè)規(guī)劃
<程序員跳槽全攻略>
職業(yè)規(guī)劃是職業(yè)生涯的一部分, 職業(yè)生涯是人生的一部分, 所以沒有好好的思考過自己的人生, 就更不可能做好自己的工作了.
人生是一場沒有終點(diǎn)的旅行, 意義是需要自己尋找的.
道理都懂(聽了那么多道理, 依然都過不好人生), 那么有一個(gè)簡單的方法: 多賺點(diǎn)錢, 等你找到的時(shí)候, 肯定用得上.
持續(xù)(薪資, title, 不可能是跳動(dòng)的, 都是日積月累得來的)
犯的錯(cuò)誤(跳槽)和花過去的時(shí)間不能重來
- 職業(yè)價(jià)值論
雇主角度; 供需(錢多人少, 細(xì)分, 新興); 信息透明度(盡所能獲取更多的信息, 進(jìn)行選擇而不是判斷)
- 職業(yè)路線圖
雇員象限(e, 管理/技術(shù), 項(xiàng)目管理, 溝通能力)
soho象限(s, 小老板, 獨(dú)立開發(fā))
創(chuàng)業(yè)象限(b, 自己做/成為其他創(chuàng)業(yè)公司的核心人員)
列表敘述法(讓溝通更加條理清晰): 1. 按照1234劃出重點(diǎn); 2. 給每個(gè)重點(diǎn)找到中心句, 然后尋找支撐內(nèi)容; 3. 檢查點(diǎn)與點(diǎn)/句與句之間的邏輯
溝通: 和 程序員 和 非程序員 之間的溝通需要不同對(duì)應(yīng)
專家線: don't repeat yourself; 正交性設(shè)計(jì)(單元測(cè)試)
技術(shù)瓶頸: 對(duì)于個(gè)人是技術(shù)的深度不夠, 對(duì)于工作就是對(duì)業(yè)務(wù)的了解不夠
創(chuàng)業(yè)和創(chuàng)造是不同的, 很多人可能實(shí)際是有創(chuàng)造沖動(dòng)
CTO是低風(fēng)險(xiǎn)的創(chuàng)業(yè)通道, 可以在公司失敗的時(shí)候平級(jí)跳躍
blog
2016-3-22 20:10:11 總算把以前的blog稍微清理了一下, 大部分都放到 history 里面了, 太多 簡單而且沒有深度
的文字了, 原來學(xué)習(xí)就是這樣一個(gè) 不斷鄙視過去的自己 的過程呀.
我的csdn: http://blog.csdn.net/czl1252409767, 主要是刷oj(離ACM還有距離)時(shí)記的, 包括 poj + zoj + hduoj + woj
我的百度空間 + Google code: 主要是 woj(因?yàn)樵诎俣染銟凡康年P(guān)系, 算是第一批知道 百度空間支持代碼高亮 的, 雖然復(fù)制功能比較蛋疼)
我的新浪博客: 不支持代碼高亮, 然后就沒有然后了
騎行
自行車: 推薦 死飛(遠(yuǎn)行還是 公路或者山地 吧)
優(yōu)點(diǎn): 簡單 / 炫麗 / 速度快 / 輕便 / 倒剎 / 釋放雙手
缺點(diǎn): 爆胎(換真空胎) / 倒剎傷車軸(帶前剎, 最好用碟剎)
項(xiàng)目文檔
幾乎在每份工作中都嘗試好好寫文檔, 甚至在第一份工作離職的時(shí)候還特地做了視頻, 但是目前看來文檔功底還是很爛, 只能 持續(xù)集成 了
這個(gè)充滿黃段子的歡樂世界
又加班到12點(diǎn)了, "叫雞" 吧? (實(shí)際是 肯德基)
code
如果可以的話, 使用 if-return 替代 if-else 多層嵌套, 這樣代碼邏輯性更強(qiáng), 不容易被各種條件集合給繞暈
一定要好好檢查 條件語句/循環(huán)語句/邏輯預(yù)算, 特變是邊界條件
有時(shí)會(huì)遇到一些奇葩的問題, 想想會(huì)不會(huì)是 緩存 造成的
估時(shí)間是為了: 1. 把需求都弄清楚; 2. 實(shí)現(xiàn)可能遇到的技術(shù)問題; 3. 評(píng)估風(fēng)險(xiǎn), 是否進(jìn)當(dāng)前版本
return: 靜態(tài)語言在return的地方使用 error code, php這樣的腳本語言, 就要考慮加 log, 這樣才能在出錯(cuò)的時(shí)候方便查詢, 不至于那么被動(dòng)
每當(dāng)你發(fā)現(xiàn)難道問題是超出了之前的'常識(shí)'的時(shí)候, 那就一定要小心了, 因?yàn)槟憧隙ㄔ谀硞€(gè)小點(diǎn)上面進(jìn)入死胡同了
開發(fā)不要急, 一步一步來, 也許某的時(shí)候就出問題了, 只是沒發(fā)現(xiàn), 導(dǎo)致之后做的都是無用功
解決問題的方法: 找不同; 找相同
開發(fā)是很 strict 的: 正確的路只有一條; 注意數(shù)據(jù)類型; 一個(gè)字符的差別 sprintf/printf
, elseif/elsif
程序中可以優(yōu)化的地方, 最好優(yōu)化掉, 也許你感覺沒必要, 但是可能以后的修改就會(huì)帶來成倍的工作量
手冊(cè)非常有用: 很多難的問題, 大部分都是基礎(chǔ)不夠好造成的
版本控制: 更新自己改動(dòng)的文件, 而不是更新所有
- 解決問題
太過于極端, 比如電腦遇到問題, 我就喜歡直接重裝, 因?yàn)檫@個(gè)做過很多次, 感覺很簡單
我認(rèn)為是最重要的, 解決問題就是一個(gè)用已知挑戰(zhàn)未知的過程, 看來我對(duì)未知還是存在潛意識(shí)的恐懼, 進(jìn)而影響自己整個(gè)的心態(tài)(我tm還為這個(gè)抑郁了2天), 所以以后一定要敢于培養(yǎng)自己解決問題的能力
- to better learn
- 好好的記筆記
- 筆記 -> blog, 記錄思考的過程
- 社區(qū): 那些你踩過的坑, 別人也許也經(jīng)歷過; 那些你沒有經(jīng)歷過的精彩
- 語言學(xué)習(xí): 簡單, 大部分都是共通的; 復(fù)雜, 語言是 strict 的
-
daydaygo
, 時(shí)間很重要, 哪怕你是一個(gè)死宅, 也盡量多花點(diǎn)時(shí)間, 也許你從小白到入門只要一個(gè)星期 / 一天 / 甚至 幾個(gè)小時(shí), 但是你想要熟練, 就需要很多很多的時(shí)間 -
修身齊家治國平天下
, 希望提高的不只是技藝 - 多學(xué)習(xí): 簡單入門可以看視頻教程, 視頻教程基本都是現(xiàn)場比劃; 遇到的小問題可以多百度, 基本都能在別人的blog或者社區(qū)找到答案; 想要向?qū)<疫~進(jìn), 那就好好的找本書看看(請(qǐng)?jiān)徫乙恢鄙钚艜肋h(yuǎn)會(huì)講得十分非常的詳細(xì)來增加字?jǐn)?shù))
- 補(bǔ)充要多學(xué)習(xí)的理由: 很多東西都是知道了很簡單, 不知道遇到的時(shí)候會(huì)感覺很蛋疼, 還是知道好點(diǎn)
tool
- 工欲善其事, 必先利其器
- 仰之彌高桐腌,鉆之彌堅(jiān)
- 好記性不如爛筆頭 - wiz
- 能裝插件的軟件, 才是好軟件
- 我們應(yīng)該更專注于寫作, 而不是排版 - Markdown
- xshell5