修改資料夾大小寫時,發現只修改大小寫沒有被視為 change 過的檔案
(這樣就沒辦法 commit 呀 !!)
將 git 的這個設定打開: git config core.ignorecase false
可以讓 git 將大小寫修正視為不同的檔案,這樣 git status 就會看到變化,進而可以正常 commit.
(久久沒發文竟然是因為這種小問題... QQ)
2016年9月26日 星期一
2016年8月30日 星期二
2016年7月28日 星期四
TIL - 文章筆記 看了一篇線性回歸的文章
這篇作者寫的線性回歸,涵蓋 Ng 在 Coursera 上的 ML 第三章的內容。
線性回歸是一個分類的演算法。
線性回歸說起來是還蠻簡單的:
1. 準備你的資料
2. 把資料灑到圖上 (graph)
3. 然後畫一條線 (應該會有最適合的.. 看題目是什麼...),可以把灑在圖上的資料做個切分 這條線叫做 Dicision Boundary.
---
* g (...) 也稱為 sigmoid function,我們用這個 function 來約束預測的結果,使結果只會介於 0 ~ 1,單位是百分比值,如結果是 .95 則預測結果是 95%。
* Dicision boundary 是一條可以把你的資料區分成兩塊 (也就是分類) 的線。
* 如果你需要非線性分類,選擇類神經網路或是 support vector machines (SVM)。
2016年7月26日 星期二
TypeScript 的 tsconfig.json 簡介
tsconfig.json 是 TypeScript 編譯時看的編譯設定檔案,能幫助你指定編譯的 TypeScript 檔案,輸出目錄等工作事項,像我在使用 Atom 編輯器時,若你的資料夾裡面有 .ts 檔案,而且你也有裝 IDE 針對 TypeScript 的一些 package,他會幫你掃掃看有無 tsconfig.json,若沒有會給你提示訊息。
2016年7月25日 星期一
TypeScript 簡介
TypeScript 是一個 JavaScript 型別化的超集 (“typed superset”),講『超集』兩字,要是沒有 google 我自己也都無法理解...,這裡有百度的解釋,若用那個網址的解釋圖來理解第一句話,大概是這個樣子: (BTW 我真的很認真在校正這一段,如果有畫錯請告訴我 QQ,我個人以前念書的時候就很沒自信看什麼子集, 超集...)

2016年7月21日 星期四
調整 Angular 2 編譯自動產生的 .js .map 檔路徑
最近照 Angular 2 的 Tutorial 做了一個 Heroes Dashboard,通常建立好 TypeScript 的檔案之後,會自行編譯出相對應的
這麼多檔案一同擠在 app 目錄下實在很崩潰,所以打算做個調整,把不是 TypeScript 的檔案都移到其他地方去,讓 app 保持在真正開發用的程式區域。
後來我才發現原來
1. 首先把
2. 在你的目錄下建立一個 dist 資料夾
3. 修改
處理完之後,記得重新 npm start.
這樣子 app 底下就會乾淨一點了... (另外 app 原本產生出來的 .map, .js 要自己刪掉哦! 也別不小心刪到 TypeScript (.ts) 的檔案...)
.map 以及 .js。這麼多檔案一同擠在 app 目錄下實在很崩潰,所以打算做個調整,把不是 TypeScript 的檔案都移到其他地方去,讓 app 保持在真正開發用的程式區域。

後來我才發現原來
systemjs.config.js 已經有提示我把 map 的 app 設定改為 dist 了。這個 dist 的資料夾表示輸出 .js .map 的資料夾路徑,你也可以換成你要的路徑。1. 首先把
system.js.config.js 的 var map = { app: 'dist', ... 約略第八行的設定改為 'dist' (原為 app)2. 在你的目錄下建立一個 dist 資料夾
3. 修改
tsconfig.json,在 compilerOptions 新增一個 outDir 的 key,值為 dist. (你的輸出的資料夾目錄){
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false,
"outDir": "dist"
}
}
處理完之後,記得重新 npm start.
這樣子 app 底下就會乾淨一點了... (另外 app 原本產生出來的 .map, .js 要自己刪掉哦! 也別不小心刪到 TypeScript (.ts) 的檔案...)
2016年7月19日 星期二
Angular 2 404 traceur not found

剛起步就遇到這個鳥問題,原因很白痴,就是我把 .ts 的檔名打成 .js 了,基本上只要 node 版本跟 npm 版本都符合要求,照理說 npm i 整個全新的 angular 2 toturial 的教學應該是正常的,如果你也遇到這個 traceur 的問題,也請先試著檢查是否哪裡有 key 錯字。
2016年7月18日 星期一
Set up gulp-eslint to check JavaScript by Git pre-commit hook (using pre-commit package.)
我其實.. 也不知道當初為什麼要用英文寫,而且寫得蠻爛的,但我自己看得懂啦,應該是早上上班寫 code 很急,我也不想花太多時間整理了...If we can't control other developers, but we can control some commit rule for other developer. that's why i want to use
pre-commit, it can help to check other developer code convention.By Using gulp-eslint and pre-commit.
Because my project is fully frontend project. so... i use gulp-eslint replace with eslint.
Step summary:
1. install gulp-eslint
2. install pre-commit
3. create you eslint config file, there are serveral format for eslint config file, you can go here.
2016年7月17日 星期日
一些去上自動測試與 TDD 實務開發的心得

在文章開始之前,先提供一下一些背景 context:
* 課程資訊: Skilltree 自動測試與 TDD 實務開發(使用C#) 第六梯
* 授課講師: 91哥 可參考 91 敏捷開發之路 30 天快速上手 TDD
感覺我好像很久沒有寫技術文了,因為七月前三週週末都在上 TDD,就算是週日,也在寫作業,複習 91 哥教的一些 Lab,只能說,這三週過得太精實了,如果看到我太久沒發文,一定就是有什麼作業要交,課程要上,
2016年7月8日 星期五
用 google spreadsheets 幫你翻譯文字
最近剛好有個需求要整理專案上的多國語系的名詞,因為多人協作,所以一開始在整理時我自己是採用 google 的 excel 來處理,大致上如下:
但因為要手動翻譯其他語系,打字實在很麻煩,以我來說,大概只有英文是比較知道如何下手的,但日文跟簡體中文呢?一直去找 google translate 也挺麻煩的,還好 google spreadsheets 有現成的函式可以幫我做到,看到這個功能眼淚都要掉出來了,因為當我有上百個字詞要翻譯的時候,根本不可能這麼“人工”,就算透過翻譯出來的英文沒有很準確,但至少我可以只挑我要修改的去修正就行。

但因為要手動翻譯其他語系,打字實在很麻煩,以我來說,大概只有英文是比較知道如何下手的,但日文跟簡體中文呢?一直去找 google translate 也挺麻煩的,還好 google spreadsheets 有現成的函式可以幫我做到,看到這個功能眼淚都要掉出來了,因為當我有上百個字詞要翻譯的時候,根本不可能這麼“人工”,就算透過翻譯出來的英文沒有很準確,但至少我可以只挑我要修改的去修正就行。
2016年7月3日 星期日
考取 70-480 Programming in HTML5 with JavaScript and CSS3 證照
微軟的這張 70-480 證照,考得正是前端工程師的必備技能,也就是 HTML, CSS, JavaScript 三種科目的混合考。因為證照在今年 (2016) 七月中過後要漲價,我也是不經意地看到這個消息,就想說去考考看了。
2016年6月21日 星期二
React Native Redux 學習筆記
其實朋友們可以跳過這篇文章,我寫得很碎片式,只是寫給我自己看的。(如果有寫錯的地方 也麻煩留個言給我 導正我一下,目前,我還沒試出一個簡單架構出來...,也許 最近會開始嘗試吧,資料太多,暫時無法一次到位)
[粗人見解] 學習 redux 我建議去上網找一個簡單的 sample,跟著做。
[粗人見解] 學習 redux 我建議去上網找一個簡單的 sample,跟著做。
2016年6月20日 星期一
Vue 用 porps 把父層的資料傳給 child component
just an example,
HTML:
JS
jsbin:
JS Bin on jsbin.com
參考:
https://github.com/vuejs/vue/issues/1987

<!--準備 CardComponent 的 Template--> <script type="x-template" id="cards-tmp"> <div id="cards-tmp"> <div class="card" v-for="card in cards"> <h2>{{ card.title }}</h2> <p>{{ card.description }}</p> <a href="#" v-on:click.prevent="openModal(card.id)">read more</a> </div> </script> <div id="app"> <h1>Vue App Example</h1> <div> <card-comp :cards="cardOriginal"></card-comp> </div> </div>
JS
// make an component var cardComponent = Vue.extend({ // 指定是哪個 Element template: '#cards-tmp', // what props you want to accept. props: ['cards'], methods: { openModal: function(id){ alert(id); } } }); new Vue({ el: '#app', components: { // register name is card-comp 'card-comp': cardComponent }, data: { cardOriginal: [ { id: 123, title: 'Hello Vue', description: 'Good Morning!' }, { id: 123, title: 'Hello Vue', description: 'Good Morning!' } ] } });
jsbin:
JS Bin on jsbin.com
參考:
https://github.com/vuejs/vue/issues/1987
2016年6月19日 星期日
Vue Avatar 解決了我覺得大頭照那個位置一直很空洞的問題
Avatar 是大頭照的意思。其實之前在用 PHP 就發現有類似的 package (以 Laravel 來說,就有像是 laravolt/avatar),可以爬出一段使用者的名稱,回傳文字的簡寫。然後隨意找找還真的讓我找到 vue 也有好心的開發者作出產出 avatar 的 component。
Git Repo Demo 連結: https://eliep.github.io/vue-avatar/
Git Repo: https://github.com/eliep/vue-avatar
不過我還是用 ES5 的方式在使用,步驟如同官方說明。
載入 vue 以及 vue avater 的 js 檔案
除了基本的載入 vue-avatar.min.js 之外,還要在 vue 初始化一個 instance 的地方加上 components 的設定,例如:
在 HTML 的地方:
結果:
<avatar> 這個 component 還有很多 attr/props 可以用,設定方式都在 git pages 上,如果你有想要客製化什麼部分,請從文件上找找吧。
只是做一般需要 member 登入的 website,就算是透過臉書也有可能是使用者沒有大頭照的情況,為了不讓那個位置空著,或是放個什麼奇怪的 icon,也許這是一種方式 :P
(我純粹是自己很喜歡而已 :))
Git Repo Demo 連結: https://eliep.github.io/vue-avatar/
Git Repo: https://github.com/eliep/vue-avatar
不過我還是用 ES5 的方式在使用,步驟如同官方說明。
載入 vue 以及 vue avater 的 js 檔案
<script src="/assets/js/vue.min.js"></script> <script src="/assets/js/vue-avatar.min.js"></script>
除了基本的載入 vue-avatar.min.js 之外,還要在 vue 初始化一個 instance 的地方加上 components 的設定,例如:
new Vue({
el: '#app',
components: {
'avatar': Avatar.Avatar
},
// 來一點示範的資料
data: {
username1: 'Win.Wu 吳穎穎',
username2: 'YIYING WU',
username: "hello world",
},
....
在 HTML 的地方:
<avatar :username="username1" :size="40"></avatar> <avatar :username="username2" :size="40"></avatar> <avatar :username="username" :size="40"></avatar>
結果:

<avatar> 這個 component 還有很多 attr/props 可以用,設定方式都在 git pages 上,如果你有想要客製化什麼部分,請從文件上找找吧。
只是做一般需要 member 登入的 website,就算是透過臉書也有可能是使用者沒有大頭照的情況,為了不讓那個位置空著,或是放個什麼奇怪的 icon,也許這是一種方式 :P
(我純粹是自己很喜歡而已 :))
2016年6月16日 星期四
看眼科記
最近一直覺得看東西容易失焦,會酸,用力瞇一下還會流眼淚。
今天就去東區諾貝爾眼科診所掛號,給醫生檢查一下,還好只是乾眼症,眼睛疲勞 (這對工程師來說,很難避免吧 Orz) 再加上我最近又很常看書,可能真的有用眼過勞。
Anyway 檢查一下比較心安,希望大家用心工作之後,也要多注意自己的健康,我最近是很走養生路線,下班盡量不看程式,而且我還刷了一年的健身房...
最後還是要撈叨一下,
公司不是自己的,但身體是自己的。
Scrum 是假的,但瀑布是真的。
不能改變別人是困難的,但改變自己的是可能的。
(硬要來一段這種詭異的結尾 XD)
今天就去東區諾貝爾眼科診所掛號,給醫生檢查一下,還好只是乾眼症,眼睛疲勞 (這對工程師來說,很難避免吧 Orz) 再加上我最近又很常看書,可能真的有用眼過勞。
Anyway 檢查一下比較心安,希望大家用心工作之後,也要多注意自己的健康,我最近是很走養生路線,下班盡量不看程式,而且我還刷了一年的健身房...
最後還是要撈叨一下,
公司不是自己的,但身體是自己的。
Scrum 是假的,但瀑布是真的。
不能改變別人是困難的,但改變自己的是可能的。
(硬要來一段這種詭異的結尾 XD)
訂閱:
文章 (Atom)
Vue multiselect set autofocus and tinymce set autofocus
要在畫面一進來 focus multiselect 的方式: 參考: https://jsfiddle.net/shentao/mnphdt2g/ 主要就是在 multiselect 的 tag 加上 ref (例如: my_multiselect), 另外在 mounted...
-
最近開始覺得 Safari 大概是未來的 IE。 在使用 HTML5 的 video 播放影片時,遇到兩種影片播不出來的情況。 情況一 較少人會遇到,就是尚未更新成最新的 OS 作業系統,(我的情況是作業系統 OS X EI Capitan, safari版本: 9...
-
繼上次我寫過一篇筆記 : HTML製作edm的技巧與問題 最近發現即便我遵守一些製作edm或是email信件的規則,一樣會有在各大mail system(各大信箱,ex:Microsoft outlook, gmail, hotmail, Yahoo mail....)出現各...
-
有一次我在開branch的時候: $ git checkout -b winwu/dev 發生了這個錯誤: fatal: Not a git repository (or any of the parent directories): .git 不過,起因不是重...