最近被自己之前設計的程式搞瘋了
popen 在windows 底下似乎有點詭異
1. 採用相對路徑 .\test\sqlite3.exe
發現 當kaga把其他程式 一起打包成MSI檔 在其他環境 沒有辦法正確執行
2. 採用絕對路徑 C:\desktop\tests\qlite3.exe
好像可以了 結果....
當在其他環境 路徑中 出現空格... 就會fail
目前採用 雙引號 包起來
就正常哩~~~
在windows 底下 的路徑 還是盡量採用絕對路徑
也要注意到路徑可能的命名問題
由於這個程式 有的跑系統服務
有的跑在 user space
當彼此呼叫 有時候也滿多 麻煩的 > <
另外下一篇打算來
PO 一下製作MSI檔的流程吧~
See you next time~
2014年8月28日 星期四
2014年8月26日 星期二
HITCON 2014
這是 kaga 第一次參加 hitcon
以前常聽到 但覺得似乎離自己有點遠(不單單只是距離)
官網 : http://hitcon.org/2014/
打從工作後 開始對於資訊安全 hacker, 開始有了些了解與興趣
今天 剛好又是 hitcon 十周年
下定決心 給他衝個一次
聽說這票不好買 (有分商業場 跟 社群場 價差就... kaga 自費參加也只能選社群場 = =|||)
第一次買就乖乖守在電腦前搶票拉
門票搞定後 就是等待拉~
七月 一整個很忙碌
但不單純只是工作 忙著東奔西跑
出差去日本 回來 一個禮拜 又去日本玩 ><
說真的 出去玩 還真的比上班累阿 @@
特地請了兩天假 微出國去
同事都一直在猜我到底請假去哪玩
我感覺也很懶得解釋 就很簡單的說去參加活動研討會之類的
主題就....資訊安全 吧
我想應該也沒差太多吧 XD
第一天的早上 8:30~ 9:30 報到
坐捷運到 南港展覽館 原本都看好要搭什麼公車
後來有上FB 發現 原來有接駁車
不過很奇妙的是 這訊息當天早上才發的@@
有看有賺到~
直接載到會場一整個省時又省力阿
快九點進到會場 應該很OK才對
但其實並不然~
一走進會議廳 幾乎滿滿的 只好坐到超後面的 = =
再慢一點大概就坐地板了...
因此隔天 我硬是起了個大早 才搶到 前面兩排位置
兩天的課程 真的有深有淺
我記得第一天的第一堂 是個韓國team
整場英文 我整個傻了...
雖然大會有即時翻譯 但.....
kaga的老兵arcs 不能聽阿 = = (後來研究了很久 原來下載 XiiaLive 就可以)
只能看著投影片很努力地看他們在幹嘛~
每個時段 會有三場不同的主題內容
可以自由選擇
但我幾乎都在R0
至於本次 kaga 所吸收到的重點
大概可以歸納這幾項吧
*android 手機 ADB繞過各種漏洞
*遠端桌面的後門
*APT 各種 fail
*破解悠遊卡新版與舊版難易度
其實這次去有不少 主題內容的真的不是那麼懂
但可以感覺到 如果有涉及相同領域的話 應該會收益滿多的
有人問kaga 都聽不懂 這樣幹嘛去 ?!
其實現場不只是聽聽演講而已
周邊也有不少活動 像是"算命攤"
雖然我去沒幾次 不過也滿多人會聚在那邊
不只是聊有關hacker議題
什麼雜七雜八都可以 可以認識很多人
也是滿特別的
在來就是會議廳主場內建聊天模式
會議廳裡會有兩個投影 一個是講師上課的簡報
另一個 就是 IRC 上大家聊天的內容
就這樣直白白的給他show在上面哩
可以在上面發現很多有趣的內容
可能是針對講師 或者 同時段其他廳的演講內容等等
也算是這個活動滿重要的一環喔!!!
大概就中午的便當 要靠運氣看抽到什麼了
我兩次都沒拿到雞腿便當 這真的是Random
> <!?
另外周邊還有 自拍大頭貼 各種裝扮 會產生一組QRcode 讓你下載
(後來機台下面貼了一張 請不要踹IP 這種場合真的是什麼都能玩阿XD)
以及桌遊的 觸控板遊戲 kaga 下去玩所以也不是很了解玩法
應該就有點像遊戲王血量歸0的輸~ 只是變化比較簡單一點~



本次大會另一個賣點 就是創新的桌遊!!! MIT的喔
遊戲的玩法結構 其實有點像七大奇蹟 搶資源分數類型!
BGG: http://www.boardgamegeek.com/boardgame/163963/league-hackers
可能之後一般市面上也會舖貨吧
以前常聽到 但覺得似乎離自己有點遠(不單單只是距離)
官網 : http://hitcon.org/2014/
打從工作後 開始對於資訊安全 hacker, 開始有了些了解與興趣
今天 剛好又是 hitcon 十周年
下定決心 給他衝個一次
聽說這票不好買 (有分商業場 跟 社群場 價差就... kaga 自費參加也只能選社群場 = =|||)
第一次買就乖乖守在電腦前搶票拉
門票搞定後 就是等待拉~
七月 一整個很忙碌
但不單純只是工作 忙著東奔西跑
出差去日本 回來 一個禮拜 又去日本玩 ><
說真的 出去玩 還真的比上班累阿 @@
特地請了兩天假 微出國去
同事都一直在猜我到底請假去哪玩
我感覺也很懶得解釋 就很簡單的說去參加活動研討會之類的
主題就....資訊安全 吧
我想應該也沒差太多吧 XD
第一天的早上 8:30~ 9:30 報到坐捷運到 南港展覽館 原本都看好要搭什麼公車
後來有上FB 發現 原來有接駁車
不過很奇妙的是 這訊息當天早上才發的@@
有看有賺到~
直接載到會場一整個省時又省力阿
快九點進到會場 應該很OK才對
但其實並不然~
一走進會議廳 幾乎滿滿的 只好坐到超後面的 = =
再慢一點大概就坐地板了...
因此隔天 我硬是起了個大早 才搶到 前面兩排位置
![]() |
| 很有質感的識別證! |
![]() |
| Hitcon 2014 Start! |
兩天的課程 真的有深有淺
我記得第一天的第一堂 是個韓國team
整場英文 我整個傻了...
雖然大會有即時翻譯 但.....
kaga的老兵arcs 不能聽阿 = = (後來研究了很久 原來下載 XiiaLive 就可以)
只能看著投影片很努力地看他們在幹嘛~
每個時段 會有三場不同的主題內容
可以自由選擇
但我幾乎都在R0
至於本次 kaga 所吸收到的重點
大概可以歸納這幾項吧
*android 手機 ADB繞過各種漏洞
*遠端桌面的後門
*APT 各種 fail
*破解悠遊卡新版與舊版難易度
其實這次去有不少 主題內容的真的不是那麼懂
但可以感覺到 如果有涉及相同領域的話 應該會收益滿多的
有人問kaga 都聽不懂 這樣幹嘛去 ?!
其實現場不只是聽聽演講而已
周邊也有不少活動 像是"算命攤"
雖然我去沒幾次 不過也滿多人會聚在那邊
不只是聊有關hacker議題
什麼雜七雜八都可以 可以認識很多人
也是滿特別的
在來就是會議廳主場內建聊天模式
會議廳裡會有兩個投影 一個是講師上課的簡報
另一個 就是 IRC 上大家聊天的內容
就這樣直白白的給他show在上面哩
可以在上面發現很多有趣的內容
可能是針對講師 或者 同時段其他廳的演講內容等等
也算是這個活動滿重要的一環喔!!!
![]() |
| 打卡送冰淇淋~ |
![]() |
| 這是點心~ |
一整天的吃喝都幫你準備的很豐盛
早上有點心 下午也有點心大概就中午的便當 要靠運氣看抽到什麼了
我兩次都沒拿到雞腿便當 這真的是Random
> <!?
![]() |
| 旁邊的工作人員 滿正的 > <! |
![]() |
| 桌遊觸控板遊戲 |
另外周邊還有 自拍大頭貼 各種裝扮 會產生一組QRcode 讓你下載
(後來機台下面貼了一張 請不要踹IP 這種場合真的是什麼都能玩阿XD)
以及桌遊的 觸控板遊戲 kaga 下去玩所以也不是很了解玩法
應該就有點像遊戲王血量歸0的輸~ 只是變化比較簡單一點~



本次大會另一個賣點 就是創新的桌遊!!! MIT的喔
遊戲的玩法結構 其實有點像七大奇蹟 搶資源分數類型!
BGG: http://www.boardgamegeek.com/boardgame/163963/league-hackers
可能之後一般市面上也會舖貨吧
第二天的ENDING~
看到台上滿滿的工作人員 原來這個活動背後
還是要有這麼多人協助與參與的~
大家辛苦了~
也期待明年的 HITCON 2015
2014年2月27日 星期四
目標
很久沒寫文章了
很像我離開這個圈子似的...
說實在的 最近 確實有一點這樣的感覺~
總覺得自己 一直在追求著什麼
原本只是霧霧的一團
現在慢慢散開後 一整個霧裡看花
迷茫了起來
公司裡每個人 來來去去
工作 需要負擔的 總一直來
我這個人 不怕忙不怕累
最怕就是 看不到岸
走在霧裡的感覺
讓我最近 失去了不少動力
只好在工作之餘 找找其他方向
所以 跑去買了本 unity3D的書 回來摸摸~
自己在家玩了一下 確實輕鬆 愉快很多~ 哈
最近一樣在 一堆封包中 打滾
有空 再把最近 封包的解析 重組 等等心得 再整理一下好了~
很像我離開這個圈子似的...
說實在的 最近 確實有一點這樣的感覺~
總覺得自己 一直在追求著什麼
原本只是霧霧的一團
現在慢慢散開後 一整個霧裡看花
迷茫了起來
公司裡每個人 來來去去
工作 需要負擔的 總一直來
我這個人 不怕忙不怕累
最怕就是 看不到岸
走在霧裡的感覺
讓我最近 失去了不少動力
只好在工作之餘 找找其他方向
所以 跑去買了本 unity3D的書 回來摸摸~
自己在家玩了一下 確實輕鬆 愉快很多~ 哈
最近一樣在 一堆封包中 打滾
有空 再把最近 封包的解析 重組 等等心得 再整理一下好了~
2013年10月29日 星期二
multi thread in libev
Libev 是一個事件的library(event loop library)
透過loop與monitor的方式來做事件的處理
觸發不同的事件來執行不同的 callback
Libev 官方網站
這算是我工作上第一個遇到的新工具~
一開始看官方文件 還是霧煞煞~
不過 實際去RUN個幾次 你就會懂他的 邏輯與方式了~
這次要回頭處理 原本的ev 事件程式
想測試看看用 multi thread 來提升 處理效能
使用libev 如果希望工頭(主程序)隨時身邊都有工人(thread)待命,一有事情就派工人處理
但要讓工人處於待命狀態,而且又要聽命於工頭
其中 ev_async 是很重要的一個"秘書",可以幫忙與其他工人溝通
首先主程序 在執行 ev_run(EV_A_ 0); 之前
註冊了一個 async_watcher 並指定 callback async_cb()
並啟 ev_async_start(thread_loop ,async_watcher);
在pthread_create() 的時候讓 thread_loop 運作 此時因為
有註冊async_watcher 所以不會 thread_loop 直接結束掉
再來重點在於 主程序 進到 cb_main_callback() 中
ev_async_pending() 這個動作 要跟 ev_async_send()
一起講會比較清楚
在ev_async_send()在 thread_loop 做個標記 此時會可以讓loop
去進到async_cb() 而此時會把 ev_async_send()所做的標記重置
而 ev_async_pending() 到底有啥作用呢
有人可能從字面上覺得 是在看是否呈現等待狀態
但實際的運作是
當已經被ev_async_send()標記 但loop並未觸發,則會回傳非0的值
所以我們必須判斷 ev_async_pending()等於0
才能再進行一次 ev_async_send()
通常在使用會遇到一個問題 就是 我需要帶資料或變數改怎麼處理
可能比較常看到 是使用 全域的變數 使用 lock 的方式
而其實 ev 事件 的monitor的struct 都會有一些變數可以使用
可以很方便在不同的callback傳遞
更多範例 可以在搜尋關鍵字 "libev thread" , "ev_async"
下面連結是 網路上的範例 自己有稍微修改測試了一下~
example ev_thread.c
參考連結
http://www.codeday.net/?p=68 (libev 一些struct 結構)
http://stackoverflow.com/questions/14621261/using-libev-with-multiple-threads
透過loop與monitor的方式來做事件的處理
觸發不同的事件來執行不同的 callback
Libev 官方網站
這算是我工作上第一個遇到的新工具~
一開始看官方文件 還是霧煞煞~
不過 實際去RUN個幾次 你就會懂他的 邏輯與方式了~
這次要回頭處理 原本的ev 事件程式
想測試看看用 multi thread 來提升 處理效能
使用libev 如果希望工頭(主程序)隨時身邊都有工人(thread)待命,一有事情就派工人處理
但要讓工人處於待命狀態,而且又要聽命於工頭
其中 ev_async 是很重要的一個"秘書",可以幫忙與其他工人溝通
ev_async async_watcher;
ev_loop thread_loop;
ev_io main_event;
EV_P;
int main()
{
loop = ev_default_loop(0);
thread_loop= ev_loop_new(0);
pthread_t thread;
ev_async_init(async_watcher, async_cb);
ev_async_start(thread_loop ,async_watcher);
pthread_create(&thread, NULL, pthread_function, NULL);
ev_io_init(&main_event, cb_main_callback, fd, EV_READ);
ev_run(EV_A_ 0);
}
void *pthread_function(void *ptr)
{
ev_run(thread_loop, 0);
pthread_exit(0);
return NULL;
}
void cb_main_callback(EV_P_ ev_io *w, int revents)
{
if(ev_async_pending(&mthread[thread_count].async_watcher) == 0)
{
async_watcher.data = (void *)"Test Multi Thread";
ev_async_send(thread_loop , &async_watcher);
}
}
void async_cb(EV_P_ ev_async *w, int revents)
{
char * msg;
msg = (char *)w->data
printf("%s\n",msg);
}
擷取程式中 部分程式碼說明一下 ev_async的 運作流程首先主程序 在執行 ev_run(EV_A_ 0); 之前
註冊了一個 async_watcher 並指定 callback async_cb()
並啟 ev_async_start(thread_loop ,async_watcher);
在pthread_create() 的時候讓 thread_loop 運作 此時因為
有註冊async_watcher 所以不會 thread_loop 直接結束掉
再來重點在於 主程序 進到 cb_main_callback() 中
ev_async_pending() 這個動作 要跟 ev_async_send()
一起講會比較清楚
在ev_async_send()在 thread_loop 做個標記 此時會可以讓loop
去進到async_cb() 而此時會把 ev_async_send()所做的標記重置
而 ev_async_pending() 到底有啥作用呢
有人可能從字面上覺得 是在看是否呈現等待狀態
但實際的運作是
當已經被ev_async_send()標記 但loop並未觸發,則會回傳非0的值
所以我們必須判斷 ev_async_pending()等於0
才能再進行一次 ev_async_send()
通常在使用會遇到一個問題 就是 我需要帶資料或變數改怎麼處理
可能比較常看到 是使用 全域的變數 使用 lock 的方式
而其實 ev 事件 的monitor的struct 都會有一些變數可以使用
可以很方便在不同的callback傳遞
struct ev_async {
sig_atomic_t volatile sent;
int active;
int pending;
int priority;
void* data;
void (*cb)(struct ev_loop *loop, struct ev_async *w, int revents);
};
更多範例 可以在搜尋關鍵字 "libev thread" , "ev_async"
下面連結是 網路上的範例 自己有稍微修改測試了一下~
參考連結
http://stackoverflow.com/questions/14621261/using-libev-with-multiple-threads
標籤:
C語言,
ev_async,
Libev,
libev thread
2013年9月12日 星期四
Apache allow,deny rule
這幾天 有個新功能 用到了 apache 相關的設定
也就是說 小範圍的設定 會優先於大範圍的
ex: 我想在 192.168.16.0/24 網段中 全部通過 但 只想其中某個 16.100 阻擋
此時該怎麼設定呢
上面這個設定 是可以達到這目的
一開始沒弄懂 他實際的條件與規則
想破頭都想不出該怎麼辦
後來才看到 上面這樣的寫法
但通常 我們會用 deny from all
他怎麼沒有擋 這樣好像怪怪的
後來又翻到下面這個表~~~
其中 Order Allow,Deny > 意指先比 允許的 在比 拒絕的
但他看的是最後比到的為主喔~
預設是全部deny
狀況1 : ip-deny,subnet-allow
>> 就等同第一個圖的方式
狀況2: ip-allow,subnet-allow
其實 只要把加入的ip 去比對 目前允許的subnet 如果在其中才額外加deny就可以了
不過 沒有很詳細研究
因為不是我擅長的領域阿 ~ 只是碰到插個花
請多多指教囉~
<Location /server-status>
SetHandler server-status
Order Allow,Deny
Deny from 192.168.16.100
Allow from 192.168.16.0/24
</Location>
設置網段後 又想獨立設定網段中某一個IP也就是說 小範圍的設定 會優先於大範圍的
ex: 我想在 192.168.16.0/24 網段中 全部通過 但 只想其中某個 16.100 阻擋
此時該怎麼設定呢
上面這個設定 是可以達到這目的
一開始沒弄懂 他實際的條件與規則
想破頭都想不出該怎麼辦
後來才看到 上面這樣的寫法
但通常 我們會用 deny from all
他怎麼沒有擋 這樣好像怪怪的
後來又翻到下面這個表~~~
其中 Order Allow,Deny > 意指先比 允許的 在比 拒絕的
但他看的是最後比到的為主喔~
Match | Allow,Deny result | Deny,Allow result ------------------------------------------------------- Allow only | Allowed | Allowed Deny only | Denied | Denied No match | Default: Denied | Default: Allowed Match both | Final match: Denied | Final match: Allowed才恍然大悟阿~~~
預設是全部deny
狀況1 : ip-deny,subnet-allow
>> 就等同第一個圖的方式
狀況2: ip-allow,subnet-allow
<Location /server-status>
SetHandler server-status
Order Allow,Deny
Allow from 192.168.16.100
</Location>
突然想到其實 只要把加入的ip 去比對 目前允許的subnet 如果在其中才額外加deny就可以了
不過 沒有很詳細研究
因為不是我擅長的領域阿 ~ 只是碰到插個花
請多多指教囉~
2013年9月6日 星期五
認真比偷懶更糟糕
最近都沒寫程式的文章
因為......
一堆客服問題 瘋狂地打斷寫程式的興致啊 ><!
慢慢的會有越來越多 程式之外的事情需要我去了解 處理
也沒有排斥 但會影響到寫程式的效率 也是真的~~
長越大 越來越發現 自己好像不太能一心二用
或許因為這樣 對單一事物的專注力十分的強
不是不能被打擾 而是你打擾不了我 ㄎㄎ
==== 跳一下 進入主題 ===
說道職場文化 我想就台灣目前的工作環境來說
似乎 都還是悲觀居多~
就像我今天也分享了一篇文章 (才不是夢幻工作!Facebook遭踢爆16件慘案)
自己覺得 不管你在多厲害多大間的甚至是 夢幻工作等等
多少 一定還是有 你看不慣的文化 或者 令人詬病的人事物
最近莫名的有點感觸
當上頭覺得 有人不夠認真 對公司貢獻的太少時
第一時間 我們總是會想說 有嗎?! 我很認真應該不是 說我吧...
但其實 最認真的你 對公司或對你自己來說 是更糟糕的情況
蛤 為啥?!!!
當一個公司大到一個規模 管理者可能已經沒有辦法 對屬下一個一個去監督
每天仔細地審視你做什麼
只能看成效 甚至可能用主觀的意識來評分你的表現
如果 我因為偷懶 被發現 表現不好
很簡單 就不要偷懶 認真一點 發揮100% 搞定!
對公司來說 要讓妳走也很好下決定 因為你偷懶麻!!!
再來就用一些獎逞制度 來強迫你認真點 搞定!
=*=
當你已經很認真 那真的糟糕了
也許 是你的能力 已經不符合 這間公司的要求 Over
對公司來說 不管你做什麼改變 這個人就只能這樣了
默默鼻子 想想 根本投資錯人了 Over
當然還有很多因素 不一定是能力的問題
但在職場上的一些經驗讓我感覺
反而最難處理的 卻是 大家都很好 很認真 很盡責
卻沒辦法 達到 要求時
到底是 哪個層級的問題?!
管理制度上 產生的問題嗎?
公司規模 跟要求程度的問題嗎?
真的用香蕉請到猴子了嗎?!
很複雜 ... 很難搞 = =|||
總結
盡我所能 多跟自己計較 而不是別人
重點~ 學習才是王道!!!
因為......
一堆客服問題 瘋狂地打斷寫程式的興致啊 ><!
慢慢的會有越來越多 程式之外的事情需要我去了解 處理
也沒有排斥 但會影響到寫程式的效率 也是真的~~
長越大 越來越發現 自己好像不太能一心二用
或許因為這樣 對單一事物的專注力十分的強
不是不能被打擾 而是你打擾不了我 ㄎㄎ
==== 跳一下 進入主題 ===
說道職場文化 我想就台灣目前的工作環境來說
似乎 都還是悲觀居多~
就像我今天也分享了一篇文章 (才不是夢幻工作!Facebook遭踢爆16件慘案)
自己覺得 不管你在多厲害多大間的甚至是 夢幻工作等等
多少 一定還是有 你看不慣的文化 或者 令人詬病的人事物
最近莫名的有點感觸
當上頭覺得 有人不夠認真 對公司貢獻的太少時
第一時間 我們總是會想說 有嗎?! 我很認真應該不是 說我吧...
但其實 最認真的你 對公司或對你自己來說 是更糟糕的情況
蛤 為啥?!!!
當一個公司大到一個規模 管理者可能已經沒有辦法 對屬下一個一個去監督
每天仔細地審視你做什麼
只能看成效 甚至可能用主觀的意識來評分你的表現
如果 我因為偷懶 被發現 表現不好
很簡單 就不要偷懶 認真一點 發揮100% 搞定!
對公司來說 要讓妳走也很好下決定 因為你偷懶麻!!!
再來就用一些獎逞制度 來強迫你認真點 搞定!
=*=
當你已經很認真 那真的糟糕了
也許 是你的能力 已經不符合 這間公司的要求 Over
對公司來說 不管你做什麼改變 這個人就只能這樣了
默默鼻子 想想 根本投資錯人了 Over
當然還有很多因素 不一定是能力的問題
但在職場上的一些經驗讓我感覺
反而最難處理的 卻是 大家都很好 很認真 很盡責
卻沒辦法 達到 要求時
到底是 哪個層級的問題?!
管理制度上 產生的問題嗎?
公司規模 跟要求程度的問題嗎?
真的用香蕉請到猴子了嗎?!
很複雜 ... 很難搞 = =|||
總結
盡我所能 多跟自己計較 而不是別人
重點~ 學習才是王道!!!
2013年8月29日 星期四
發呆型 程式設計
很久 沒在這寫心情了
颱風康芮 正在用颱風尾 騷擾台灣中
害得我 必須在風雨中上班 = =|||
雖說來上半 但心裡懸念著 電競的新歷史"小巨蛋的戰役" XD
最近對於寫程式 似乎沒有像以前那麼拼命了
有了幾次的經驗
慢慢的發現 有時候 停下來 多想一下
其實可以減少很多 不必要的問題與時間
有時候甚至 我花了 2.3個小時都在思考與查詢
在別人眼裡 可能跟發呆沒兩樣吧 XD
至於 真的寫程式碼的時間 可能不到一個小時吧~
此時 腦袋寫程式的功力 真的也很重要
現在我已經不隨便下手
以前都是 想到哪 就先動手 可能經過了好一段時間才發現
可能在前幾個步驟 就有問題
又得花時間去改 去修
但不少人 被時程追著跑
甚至寫程式也要有"業績"
每天都得擠出那幾行的程式碼來交差
環境麻!也不一定是自己能改變的~
不過
至少可以改變自己的心態吧
不奢求變成武林的高高手
但遇到問題 都還是願意抱著熱血往前衝
享受過五關斬六將的快感 -.-
開心地寫程式吧!! ^^!
颱風康芮 正在用颱風尾 騷擾台灣中
害得我 必須在風雨中上班 = =|||
雖說來上半 但心裡懸念著 電競的新歷史"小巨蛋的戰役" XD
最近對於寫程式 似乎沒有像以前那麼拼命了
有了幾次的經驗
慢慢的發現 有時候 停下來 多想一下
其實可以減少很多 不必要的問題與時間
有時候甚至 我花了 2.3個小時都在思考與查詢
在別人眼裡 可能跟發呆沒兩樣吧 XD
至於 真的寫程式碼的時間 可能不到一個小時吧~
此時 腦袋寫程式的功力 真的也很重要
現在我已經不隨便下手
以前都是 想到哪 就先動手 可能經過了好一段時間才發現
可能在前幾個步驟 就有問題
又得花時間去改 去修
但不少人 被時程追著跑
甚至寫程式也要有"業績"
每天都得擠出那幾行的程式碼來交差
環境麻!也不一定是自己能改變的~
不過
至少可以改變自己的心態吧
不奢求變成武林的高高手
但遇到問題 都還是願意抱著熱血往前衝
享受過五關斬六將的快感 -.-
開心地寫程式吧!! ^^!
訂閱:
意見 (Atom)







