~尋找生活新鮮事~

  • Card Crawl – 快節奏的桌遊風格卡片遊戲

    Card Crawl – 快節奏的桌遊風格卡片遊戲

    最近入手了幾款 iOS game,有空的話就來一一介紹。首先入手的是這款《Card Crawl》,快節奏的桌遊風格卡片遊戲。

    繼續閱讀全文…

  • LAMY Al-star 恆星鋼筆 2015 銅橘 EF 尖 入手

    LAMY Al-star 恆星鋼筆 2015 銅橘 EF 尖 入手

    雖然自認不是文具控,但是幾個月前在店家把玩這款銅橘色的款式便深深烙印在腦海裡…

    繼續閱讀全文…

  • Truncate all tables in Oracle database

    Truncate all tables in Oracle database

    今天開發團隊終於決定要把開發與測試用的 Oracle 資料庫清空重建了。在長達一年多的開發時間裡,這台測試 DB 是非常重要的開發工具。但長久以來承受了各式各樣亂七八糟的資料,也難以保證測試結果是否符合預期,所以大夥決定將它清空。 不過 Oracle 自己的 GUI 管理工具 SQL Developer 真是頗為難用。 想一次清空 (truncate) 是沒有全選 -> 右鍵 -> 清空 這麼方便的事。但是近百個 table 又不想一個一個清… 就下指令吧。 begin for t in (select table_name from user_tables) loop execute immediate ‘ truncate table ‘||t.table_name; end loop; end; 這樣完成清除資料表的任務。

    繼續閱讀全文…

  • How to disable phone number linking in Mobile Safari?

    同事問了這個問題,如何將 iOS webview 裡出現的電話連結移除,因為畫面中出現了不是電話的數字,卻被系統自動加上了電話連結。 有一個非常簡單的方法,在 HTML 檔案的 <head> 區段加一行宣告即可。 <meta name = “format-detection” content = “telephone=no”> 這行宣告會停用所有的電話連結。若是反過想要在停用的情況下,加上例外,則可以自行宣告電話連結,語法如下: <a href=”tel:0932123456″>0932123456</a> 主要就是用 tel: 關鍵字來達成。

    繼續閱讀全文…

  • Skype error on Windows 10 shutdown

    Skype error on Windows 10 shutdown

    把主要的桌機升級到 Win10 後,自然也把一些常用的軟體裝上。其中 Skype 就是一款很不愛,但很常需要用的軟體。不過在安裝 Skype 後,每次 Win10 關機都會出現一個令人不悅的錯誤,訊息是 「The memory could not be read」。

    繼續閱讀全文…

  • 新電腦入厝 Intel Skylake i5-6600K + Asus Maximus Hero

    新電腦入厝 Intel Skylake i5-6600K + Asus Maximus Hero

    距離上一次敗入全新的電腦桌機已經五年多了,這台桌機當主力的這幾年間,也陸陸續續地更新了零件與週邊,至今還是活跳跳的,耐命程度相當不錯。但再怎麼說也是五年前的機種了,新的介面規格已經使不上力了,所以萌生新電腦的慾望,但這慾望也持續了很長的時間,因為這幾年間的 Intel 晶片組規格不上不下,缺東缺西,缺乏賣點。直到新的 Z170 晶片組大幅提升了週邊的連接能力與實用度,才終於決定掏錢跳坑。 Z170 晶片組重頭戲,莫過於 PCIe 通道數量倍增(可彈性配置總數 20 條),而且全面升級至 PCIe 3.0 規格,這讓主機板廠商有很好的發揮空間。 — 電腦王

    繼續閱讀全文…

  • Laravel 5.0: 紀錄 SQL 指令

    在同事轉貼的一些文章裡翻到這篇记录运行时SQL语句,稍微修改一下,在我的 Laravel 5.0 測試站上實作。 文章中的第一步我就傻眼了,因為我的 php artisan list 裡面沒有 make:listener….

    繼續閱讀全文…

  • Javascript: 檢查生日是否成年

    接到一個開發需求,讓使用者填寫生日,然後用 Javascript 判斷是否滿二十歲。但是需要檢查到月和日… 總覺得有點懶。 Coding 發懶的時候,問 Stack Overflow 就對了…. function getAge(DOB) { var today = new Date(); var birthDate = new Date(DOB); var age = today.getFullYear() – birthDate.getFullYear(); var m = today.getMonth() – birthDate.getMonth(); if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate())) { age–; } return age; } 總之先修改一下,寫了一個草稿試試。結果如下:

    繼續閱讀全文…

  • anidees 4USB Travel Charger 開箱

    anidees 4USB Travel Charger 開箱

    差不多在入手 Kamera 充電器的時候,也入手了另一款同性質的商品,就是本文的 anidees travel charger,這次是買 4 port 的款式,價格略低一些。不否認買兩個差不多的東西有點神經病,安慰自己一個放公司,一個放家裡,出國也可以帶去用什麼的就敗了。

    繼續閱讀全文…

  • Kamera SP-5U 5 Port 電源供應器開箱

    Kamera SP-5U 5 Port 電源供應器開箱

    公司和住家的插座都插了好幾個 USB 充電器也對應不同的設備。面對這樣的亂象,也終於有廠商以不同於 USB Hub 的角度,推出了專門的充電器。只是觀察了一陣子才決定要入手一兩顆來玩玩。先入手的這款是 Kamera 出品的 5 port USB 充電器,之前買過 Kamera 的單孔充電器,品質很優,印象深刻,所以這次也優先入手了同廠牌的產品。

    繼續閱讀全文…

  • LEGO Star Wars Microfighters 2015

    LEGO Star Wars Microfighters 2015

    先自爆一下,2015 年的 Microfihters 其實已經入手快半年了,也早早就組好了,但工作實在太忙了,一直沒有拍照。一拖就半年…. Microfighters 2015 的廣告影片依舊無厘頭到了極點,有興趣可以看看。

    繼續閱讀全文…

  • Composer Update Fails due to Github Authorization

    Composer Update Fails due to Github Authorization

    自從用 Laravel Framework 做為主要的開發框架後,Composer update 就變成經常使用的指令了。不過在更新的時候偶爾會碰到要求輸入 Github token 的情況.. 這個 token 要去哪生呢? 因為我每次都忘記,所以還是筆記下來。 如果有 Github 帳號的話,登入帳號,到 [Personal Setting] → [Personal access tokens],去產生一組就可以了。 完成後將 token 貼在 composer 的畫面即可繼續更新。

    繼續閱讀全文…

  • Laravel: failed to open stream: Too many open files

    Laravel: failed to open stream: Too many open files

    公司的 Team 開發的產品也越來越龐大了,API 的部份依賴 Laravel 內建整合的 PHPUnit 來進行自動化測試。 這回從 git repo 上拉了新的 code 後,照慣例跑一下 phpunit,然後就掛了… PHP Warning: failed to open stream: Too many open files 好像沒見過這樣的訊息。Google 一下才知道是踩到了 Mac OS 檔案開啟上限的地雷。 $ ulimit -a # 這個指令可以看系統限制 core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited file size (blocks, -f) unlimited max locked memory (kbytes,…

    繼續閱讀全文…

  • Smooth Touch Scrolling in iOS with -webkit-overflow-scrolling

    在開發一個兼容 iPad 的網站專案時,發現 <div style=”overflow: scroll;”> 在 iOS 下捲動很不順暢,手感很糟糕。好奇地搜尋了一下,找到一個 webkit 特有的語法:-webkit-overflow-scrolling: touch。加上這個屬性後,在 iOS Safari 上連回彈的效果都出來,手感與原生程式無異。 可惜 Android 上的 Chrome 似乎沒有作用,有點希望這屬性能成為正式語法。 範例先丟在 Codepen,不過看來要註冊才能 embed,先醬。 http://codepen.io/anon/pen/oXvjvJ

    繼續閱讀全文…

  • 電子發票愛心捐贈碼轉成 HTML Select elements

    不是很完美的解法,但是比手工複製貼上快多了。 下載最新的電子發票愛心碼,格式為 .pdf。 用 Google Chrome 開啟檔案,全選複製,貼到 Sublime Text。 人工處理折行的地方,整理成這樣的格式: 台灣兒童伊比力斯協會 168168 伊比力斯 搜尋 ^([^\u4e00-\u9fa5]+)\s(\d+)\s?([^\u4e00-\u9fa5]*)$ 替代 <option value=”$2″ title=”$3″>$1</option> 剩下的再手工處理一下。

    繼續閱讀全文…

  • Games of the Year 2014

    拖到十二月三十日才動筆,好晚。2014 年是變動的一年,下半年換了工作,邁向新的方向,至今仍在為產品上線努力中,打電動的時間也顯得奢侈,瑣碎的時間幾乎都貢獻給了行動遊戲。 回顧這年,硬體方面敗入了 iPad Air、iPhone 6 Plus 與 PlayStation 4,至於 Xbox One 則因為沒地方可放而暫時擱置了。有了新主機,自然是加大了在 PS4 上的投資,從《Destiny》、《Call of Duty: Advanced Warfare》到《Grand Theft Auto 5》,能流暢地享受高畫質的遊戲真是一大享受。而常伴我左右的 PC 平台,已經邁入五歲的高齡,2015 年有打算要買新電腦了。 2014 年在購買遊戲的花費也節制許多,今年的電玩敗家清單在這裡。今年的推薦型式決定稍做點修改,不再以類型分類,因為挑每個分類的項目太少,有許多 indie game 也不好分類,所以直接提名今年的好遊戲吧。

    繼續閱讀全文…

  • 買早餐的感想

    一早起來覺得肚子餓,出門買早餐 我家附近有四五間美而美-like 的現做早餐店 但是週日有營業的只有一間,所以生意還不錯 偏偏這家是我最不愛的 (原因如下),但沒的選,還是去了 還沒到門口就已經看到亂哄哄的顧客群… 這家店的店員組成大概是一家人,老中青三代的那種 負責煎台的是媽媽 (我猜的 組合食材和送餐的是兒子 (我猜的 收錢和點餐的是阿嬤 (一樣是猜的 這家店最大的瓶頸就是那個負責點餐的婆婆了 雖然她會把餐點寫在簿子上,還發展出一套獨門的速記法 (簡寫和符號組成) 但老人家的記憶力實在是不行,她根本無法把餐點和顧客的長像連結起來 而且根據觀察,其他成員看不太懂她的速記 並不是字醜,而是缺乏事前的溝通 所以當這位老人家又忘記餐點要給誰的時候,櫃台前的人龍就出現了 想點餐沒辦法點,要拿餐的拿不到,要結帳的結不了 我等了兩分鐘,顯然婆婆還是難以釐清餐盤上堆著好幾份餐點該給誰 作好的早餐就這樣拿來拿去,看了就不爽啊 當場我就決定走人了,還是去全家買好了 開幕以來,每逢週末就這樣,實在是很不想去光顧 p.s. 照片與本文無關

    繼續閱讀全文…

  • Tap Titans – 挑戰你的手酸極限

    Tap Titans – 挑戰你的手酸極限

    先說一下,我借用了遊戲基地下的標題。 前幾天在 TouchArcade 看到這款《Tap Titans》,第一眼就被美術風格給吸引了。線條簡單,但氣勢磅礡。 再看第二張截圖,這歡樂感是怎麼回事。好,就決定安裝了! 玩下去就欲罷不能了。《Tap Titans》就是一款打怪撿金幣,金幣用來提升等級,繼續挑戰更難的怪的無限循環遊戲。玩法更是簡單到不行,就一直點畫面就好了…… 就醬。 怪物不會打玩家,唯一的限制是每十隻有一隻是 Boss 級,要在時限內打完,打不贏就回家練練再來。但是一直點畫面,看著滿畫面的數字跳卻很治癒人心 (?),反正就是一直點下去,沒有過場動畫、沒有 loading 重來,連離開遊戲的選項都沒有…. 就是一直點下去,點到忘記時間…. 這遊戲根本是孔明的陷井啊!!!! 遊戲打怪賺來的金幣除了升級主角的戰力外,也可以用來雇用並升級傭兵,每個傭兵都會在畫面上出現,最後就像上張那個歡樂的戰場一樣,滿滿的打手。第一次打開《Tap Titans》就不小心打了兩個小時,點到雙手酸痛才罷休。 iTunes 下載 Android 下載

    繼續閱讀全文…

  • 關於購買音樂這檔事

    關於購買音樂這檔事

    幾年前遭遇過一次硬碟死翹翹的慘事,損失很多網路上下載的數位音樂檔案。 基本上大都是沒有合法版權的。 這個事件之後,多少影響了我聽音樂的習慣,在 YouTube 上聽音樂的時間增加了。2013 年,Spotify 進入台灣市場,從此又多了一個更方便的選擇。 Btw, WordPress 3.6 之後可以直接嵌 Spotify 連結,真方便。 最近又興起了買 CD 的念頭,尤其是之前損失的好音樂,想想不如買張 CD 保存起來吧! 不過幾次經過唱片行 (也沒剩幾間了),在習慣了網路服務普遍皆有的搜尋功能後,在實體店翻商品有點麻煩…. 網路購物太方便了,搜尋 → 加入購物車 → 信用卡結帳 → 領包裏 的消費模式已經深入 DNA。Apple iTunes 服務也把買音樂這件事做得非常便利,搜尋 → 試聽 → 購買,連拿出信用卡這個步驟都省了,電腦用 Macbook,手機用 iPhone,平板用 iPad,買完音樂,三個平台都自動同步好了…. 這種便利性完全消滅以前逛唱片行的樂趣。 實體 CD 只剩下拿來轉無損格式和收藏的用途了。 但我還沒死心,想買最近出的幾張 CD,打開了 Firefox,想找個線上銷售的網站。登愣! 腦袋熊熊也擠不出半個選項,有哪個網站是專門販售實體 CD 的? 最後還是打開了 iTunes 刷卡… 我暈。

    繼續閱讀全文…

  • Convert Sublime Text 2 to Licensed Version

    Convert Sublime Text 2 to Licensed Version

    Sublime Text 2 是我目前主要的開發工具,因為套件的關係,一直沒有升到新的 version 3。Sublime Text 雖然是免費的工具,但三不五時會跳個視窗,請您支持個 70 鎂的費用。就開發工具來說,這 70 鎂其實是不貴,但是… 就是一直沒有付錢的動力…. (當年 Coda 買得多阿殺力啊)。 等 version 3 變正式版再付錢好了 (喂 總之,先修改一下,讓工作不會一直被付費提示打斷。這邊只列了 MacOS 版的修改方式,因為我只試了這個,可以用。 先關閉 Sublime Text 2 $ cd /Applications/Sublime\ Text\ 2.app/Contents/MacOS/ # 切換目錄 $ vim Sublime\ Text\ 2 # 編輯檔案 :$!xxd # 切換成 hex 模式 :%s/5BE509C33B020111/5BE509C32B020111/g # 搜尋,然後替代文字 重新打開 Sublime Text 2,點選 Help…

    繼續閱讀全文…