Wednesday, February 27, 2013

Browser Locale Detection

之前在做作的side project, 計劃要有三種語言: 英/西/中. 但是不想要每個語言出一個版本, 所以本來是打算在Android app端抓使用者目前的語言, 然後在發http request的時候一起帶上來. 後來想一想, 這樣還要upgrade目前的已經release的版本. 雖然通知使用者upgrade跟真正進行upgrade這等事Android Market跟Android都處理掉了, 只需要upload新的apk上去就好. 但是我連這件事都有點懶XD. 所以最後用了另一個方法, 就是用PHP的$_SERVER['HTTP_ACCEPT_LANGUAGE']吐出來的結果. 這邊其實有點取巧. 因為這邊收到的資訊理論上是browser prefer的語言, 並不一定是使用者真正在用的語言. 而且這個參數是browser傳上來的. 不過很巧的是, 我目前就是開一個browser連到網頁, 而在我有限的實驗裡, 這個參數剛好也跟Android系統的language參數跑(至少Android Browser是這樣). 所以剛好適合我用. :D 這樣一來, backend改一改之後. 我目前的apps就能夠自動根據使用者手機的語言設定來顯示英文跟西班牙文囉. 希望中文的資料趕快好. 這樣我就可以試著在中文市場promote一下我的side project囉! :)

Startup Labs Taipei

Starup Labs要在台灣辦他們的第一個海外的Startup Labs Program. 昨天去聽了說明會. 覺得挺有趣的. 早上填完了報名表. 看看接下來會發生什麼事囉. :)

Happy Chinese New Year!!

再過幾天就是農曆新年了! 這個blog可能會安靜好幾天. 在這邊先祝大家新年快樂囉! 

Distraction

前一陣子花了不少時間在做side project. 總算快告一段落了. 該收心回來趕快做點正事了. 不過還是希望side project能夠有些好成果囉:)

Git + Github + Linux

今天把這幾天在弄的project, 上到了github上. 但是又忘了Linux裡該做些什麼設定, 才能clone code. 還好很快地找到了這份help. 趕快在這邊自己備份一下. 以免下次又得去Google找囉. :)

Ad location in the page

這幾天在做的project, 讓我開始真正的接觸到了adnetwork, 像是adsense, adBrite等. 之前都只是聽過, 看過, 但是沒有真正整合過. 昨天晚上申請, 拿到了code後, 就開始來試試看怎麼把廣告區域放到我的project裡對的位置. 不過大概是大多人都是放在blog裡. blog裡能放的位置其實有限(因為大多被BSP或是blog theme決定好了). 所以Google到的結果大多是教人怎麼把code放到blog裡. 對我沒啥幫助. 後來總算發現一篇很簡單的教學, 原來也是用<div></div>夾一下ad code. 剩下的就是靠CSS去調位置. 所以code大概就是

<div class"xxxxxx">

ad code 

</div>

要在網頁的什麼位置秀廣告? 就靠自己調整HTML跟CSS囉!

(Image from flickr's shannonkringen under CC license)

PHP get client side's date & time

這幾天在進行的project, 需要知道client的日期. (因為時差的關係, server跟client有時會有+-一天的日期差). 可是因為PHP是server side的language, 沒辦法直接知道client的狀況. 所以只好想了一個dirty hack. 那就是利用javascript去取得client的日期, 然後傳給server. 我目前是寫了一個.html檔, 在header的javascript裡取得日期. 然後再redirect到收日期的php. 下面是野人獻曝的程式片段.

<html>

<head>

<script type="text/javascript">

  var currentTime = new Date();

  var year = currentTime.getFullYear(); 

  var month = currentTime.getMonth() + 1;

  var day = currentTime.getDate();

  window.location = "http://localhost/services/getdate.php?year="+year+"&month="+month+"&day="+day;

</script>    

</head>

</html>

參考參考:)

(Image from flick's Jörg Weingrill under CC license)

AWS Upgrade or Migrate Instance

 

今天終於要來嘗試怎麼upgrade或是migrate既有的AWS instance. 昨天晚上找到了這篇教學. 但是因為還是對AWS command line tool的操作有點"恐懼感". 所以還是選擇了使用GUI的方式來試試看upgrade/migrate AWS instance.

注意:這個方法只適用於用EBS當做root device的instance. 以下是各個步驟

1. 在AWS Management Console選擇你要upgrade/migrate的instance. 然後選擇Instance Actions裡的Create Images. 

2. 在跳出來的對話窗裡, 幫這個image取個名字跟給個簡單的描述

3. 在Navigation的IMAGES->AMIs裡, 應該會看到步驟1, 2執行後所產生的image. 選擇哪個image之後, 點選Launch. 接下來就跟new instance差不多了. 

4. ㄟ...好像就這樣子而已....:p (boot instance, start service, blahblah...就不在這篇的內容討論裡了)

只能說AWS真的是有一套囉! 讓這些事變得如此簡單. 實在令人佩服!!

Wordpress

之前為了flirq的blog, 很快的安裝了一份wordpress在AWS的instance上. 就交給負責marketing的人接手了. 所以一直沒有好好的來體驗一下wordpress的power. 這幾天總算因為要幫忙處理一些wordpress家的blog相關的事, 才有機會來跟wordpress好好親近一番. 

玩了一些不同的themes還有相關的設定, 也試著改了一下相關的php還有css. 真的蠻佩服wordpress的架構跟建立起來的community的. 也感受到用wordpress來建立一個以content為主的website的便利性. 接下來一定要找時間再來多鑽研鑽研.  

(Image from flickr's Phil Oakley under CC license)

AWS Micro Instance


昨天用了AWS的Micro Instance裝好了LAMP環境跟wordpress. 在安裝設定過程中看到有人抱怨說Micro Instance的記憶體可能會不大夠. 今天top看了一下. 果真有這樣的風險XD (剛剛一度看到只剩3x MB) 看起來得加速對於AWS的熟悉程度. 至少得搞熟如果Micro Instance不夠用的時候, 怎麼快速又無痛的upgrade到其他的instance上囉. :Q  

Change AWS ec2-user password


因為一些side projects. 今天又跟AWS奮戰了不久時間. 在安裝完了LAMP的環境後, 開始要來處理怎麼把東西上傳到AWS的instance上. 我的選擇是SFTP. 不過我用的FileZilla好像只能用帳號/密碼來讓我login. 所以只好改動一下AWS instance上的設定. 讓我可以用ec2-user的帳號跟密碼login. 以下是該做的設定.
1. 把/etc/ssh/sshd_config裡的PasswordAuthentication改成yes
2. 重開ssh (sudo /etc/init.d/sshd reload)
3. sudo passwd ec2-user
4. 填入ec2-user密碼
完成!

2012

一轉眼2011就過了. 2011對我來講是個變動很大的一年. 口中嚷著要創業了好幾年, 2011年中終於因為拿到了一個紐約的accelerator program (NYC Seed Start)的offer, 而下定決心自己出來試試. 到了紐約後, 卻因為partner簽證的關係, 才發現沒辦法加入. 但是人生就是這樣, 當一扇門被關起來的時候, 可能有另外一扇窗為了你打開. 七月初到波士頓看國慶煙火時想到的dating website idea. 居然趕得及讓我們(這一次, 連老婆都拉進來了:p) 擠進九月初開始的另一個accelerator program (DreamIt Ventures). 九到十二月的DreamIt Ventures, 則是一段難忘的人生經歷. 在三個月內從想法的修正, 產品的實作, 上線, 找使用者. 短短的三個月, 學到也感受到了很多. 在這計劃趕不上變化的過程中, 新的一年就來了. 創業接下來要走的路有多長, 我也不知道. 只希望能夠趕快做出如圖片中煙火般燦爛的成果! (但是不能像是煙火般稍縱即逝囉! :p)

新的一年, 祝大家新年快樂! 事事如意! 

(Image from flickr's nigelhowe under CC license)

NSDate, NSCalendar, NSDateComponents

Screen_shot_2011-12-28_at_8

這兩天在試著寫一個iPhone的小程式. 基本目標就是要在每天固定時間跳出特定通知. Local notification本身還算簡單. 例子找到了, copy & paste上去幾乎就可以用了. 但是在要設定每天"特定時間"這件事上就遇到了一點小障礙. 因為得用上NSDate, NSCalendar, NSDateComponents這三個classes. 今天花了不少時間跟他們三個奮戰.

心得感想是(不保證完全正確): NSDate代表的是一個"時間點", NSDateComponents是一個時間的container. 可以設定裡面的年/月/日/時/分/秒等值來代表一個時間點或是一段時間的長度. 而NSCalendar則像是用來解釋NSDateComponents內容的一個class. 

滿有趣的一種設計. 不過用起來還沒有很習慣囉. :Q

Gratitude

上上禮拜收到家裡緊急電話說奶奶因為內出血住院了, 趕緊改了機票提前了幾天回來. 回來之後才知道原來外婆也因為膝蓋退化在動刀. 幸好上個禮拜五兩位老人家都順利出院了. 感恩! 在此也希望大家都能注意自己的身體健康, 也祝新的一年裡每個人都能健健康康, 事事如意!

(Image from flickr's aussiegall under CC license)

 

Jetlag

年紀越大, 越難跟時差奮戰. 這一次, 不知道多久才能調整完成. 

(Image from flickr's Sean MacEntee under CC license)

Amish


上禮拜五去參觀了在Lancaster, PA附近的Amish部落. Amish是一批因為宗教信仰的關係而盡量以傳統方式(不用家電, 不開車, etc.) 生活的一群人. 很佩服這一群能夠在這麼多外部的引誘下, 還能堅持自己的信念生活的Amish人.
(Image from Wiki under Wikimedia Common License)

Facebook login

今天連回Flirq. 忽然發現沒辦法login. 嚇了一大跳. 趕快追了一下bug. 發現原來是facebook oauth的機制改了. 之前為了讓新版跟舊版的oauth都能過的javascript吐出了error. 解決了javascript的問題之後, 總算是可以login. 但是卻抓不到facebook使用者的資料. 不過因為是用了一個3rd party的facebook plugin, 趕快升到了最新版, 就可以運作了. 真的是有驚無險. 不過接下來得認真追蹤facebook的各種改版. 以免類似的狀況又出現了.  

Tuesday, February 26, 2013

Google Search Tips

這幾天為了看看有沒有關於Flirq的press, 再次體認了Google的強大. 這次主要是用了Google search結果出現後左側的"Show seach tools"哩的功能. 這邊可以針對"內容的產生時間"去做更仔細的過濾. 不過可能有人會問, 為什麼不直接用Google Alert等著收通知就好了? 因為我發現Google Alert好像會漏東西, 舉例來說, 前幾天明明就有不少Flirq相關的內容, 我一封Google Alert都沒收到. 所以只好自己來filter by date range一下囉. :) 

Flirq @ Business Next

數位時代在翻譯TechCrunch的文章也提到了Flirq. 不過看起來記者並沒有注意到原文裡有提到有台灣人開的公司囉. :p

Google Currents

昨天看到了Google currents的新聞, 馬上裝來玩玩. 目前感覺還不錯. 幾個我自己認為的優缺點: 優點是, 畫面乾淨, 使用界面簡單. 流暢度夠, 還可以連接Google Reader. 缺點是沒辦法連facebook, 然後有兩個按鈕的功能很confusing. (back and home). 不過整體說來還蠻喜歡這個app的. 可能會慢慢用這個來取代我目前手機上的RSS reader囉. 

Press about Flirq

昨天Demo Day完. 今天開始看到了一些相關報導. 雖然不是單獨報導Flirq. 但是還是蠻令人開心的. 目前看到有TechCrunch, TechCocktail, TechnicallyPhilly, TheNextWeb. 看看還會不會有更多的報導囉.:)

(Image from flickr's NS Newsflash under CC license)

We did it!

今天是DreamIt的Demo Day. 前幾天的認真準備, 今天得到了很好的結果. 整個presentation很流暢. 準備的笑點, 底下的聽眾也都有回應. 呼...總算告一段落. 可以好好休息個一兩天. 然後開始下一波的產品調整了!!

Final count down

明天就是Demo Day了. 雖然沒有打算要在明天募資. 但是要用英文在兩百個投資人前present這三個月來的成果. 還是會緊張. 希望一切順利! Fingers crossed!

Good site for icons

這幾天花了不少時間做Demo Day的投影片, 在這過程中用到了一個網站還不錯, 叫Icon Arcive 在這邊跟大家分享一下.

這個網站搜集了很多免費的icon. 對於作投影片或是web/app都很有幫助. 有需要免費icon的朋友可以上去找找囉. :)

Tastycake

剛來Philly的時候, 之前在MIT的老師跟我說可以找看看一個叫TastyCake的牌子的甜點. 算是Philly這邊還算"家喻戶曉"的平價甜點. 今天終於有機會吃到. 還蠻好吃的而且真的很便宜(以美國水準來說). 不過單吃還是甜了一點. 下次來試試配點熱茶或是咖啡.

(Image from flickr's TV19 - DD Meighen under CC license)

Demo day presentation practice

今天在DreamIt partners面前試著present了一次. 給自己打了75分. 在有限的練習時間裡, 這樣的表現還算過得去. 但是還有蠻多進步的空間. DreamIt partners也給了不少很有用的意見. 尤其是同樣的內容, 用不同的說法, 可以給人完全不同的感覺. 這一點我還有得學囉!!

(Image from flickr's o5com under CC license)

Mustly NFL

與友人W合作的Mustly系列第二彈: Mustly-NFL上線! 安裝數緩慢增加中. 還在找適合promote的地方(NFL討論區, Fantasy Football討論區). 希望熱愛Football的美國人, 會喜歡這個App囉!

Demo day is coming!

一轉眼, DreamIt已經快要結束了. 下禮拜三就是Demo Day. 這個禮拜得好好來練習一下presentation. 畢竟我是這一次Demo Day裡唯一一個不是native speaker的presenter. huh~真緊張!!

AWS: Install the auto scaling command line tools

AWS提供了command line tools讓開發者可以透過command對AWS做scaling. 今天花了點時間在我的MBP(OS 10.7.2)上裝了起來. 在這邊記錄一下過程. 以供之後參考. 

主要參考網頁

1. http://docs.amazonwebservices.com/gettingstarted/latest/wah-linux/

2. http://docs.amazonwebservices.com/AutoScaling/latest/DeveloperGuide/index.htm...

3. http://stackoverflow.com/questions/6588390/where-is-java-home-on-osx-lion

其實安裝的步驟在command line tools的README.txt裡寫得蠻清楚的. 所以建議可以先到2裡面的How to Get the Command Line Tool先把zip檔抓回來. 然後照著README.txt裡面步驟作即可. 

Environment Variable的部份, 可以直接改自己目錄裡的.bash_profile, JAVA_HOME 的部份, 我是參考3裡的方法設定.

環境變數設定完後, 得設定AWS user credentials. 我是用AWS Keys的方法(可以連到http://aws.amazon.com/security-credentials查找)

都設定完之後, 可以照README.txt裡的方法. 測試看看是不是都work. (as-describe-auto-scaling-groups --headers一定要試, 因為會測到credentials有沒有設定好) 如果work, 恭喜, 那應該就是安裝好了! :)

 

AWS Study Notes

準備開始多研究研究AWS. 會在這邊記錄一些研究心得. 希望能夠玩出點東西囉. :)

Interesting Thanksgiving phenomenon in Philly

今天是感恩節. 下午跟老婆出門晃晃. 看看費城的感恩節是什麼樣的光景. 最大的感受是, 路上的人少了非常多. 但是有趣的是, 雖然街上的人整體變少了, 在路上走動的亞洲面孔卻變多了. 不知道是不是這些人平常被人潮給"稀釋"了. 而今天因為人潮變少, 所以感覺起來亞洲面孔就變多了? 不過感恩節當天的Philly跟這兩個月中活的Philly, 真的很不一樣囉. :) 

(Image from flickr's Thomas J. Matthews under CC license)

Thanksgiving

明天開始是美國的感恩節假期. 感恩節對美國人來講相當於農曆新年. 是一家人團聚的日子. (聖誕節反而沒有那麼強調要一家團聚) 所以我們住的這棟樓今天開始感覺起來空曠了不少. 不過對我們來講, 這個四天的假期可能沒辦法好好享受, 因為再兩個禮拜就是DreamIt的Demo Day了. 這四天的假期, 得開始準備Demo Day的presentation囉. XD

(Image from flickr's jdolenga under CC license)

Fire Alarm

今天傍晚忽然傳來尖銳的聲響, 一開始還不知道發生了什麼事. 以為是電腦不小心開了什麼奇怪的網頁. 後來才發現原來是大樓的火警警報響了. 我們目前住的這棟大樓的火警警報鈴聲相當稱職. 聲音的頻率跟分貝都非常有驅趕力. 讓人不得不離開房間. 還好我們住在六樓, 所以"逃生“的路程還不算太長. 幸好最後只是虛驚一場. 不過希望不要再發生了. 因為現在外面越來越冷了. 待在外面等警報解除, 實在不是件愉快的事囉. :p

(Image from flickr's mdid under CC license)

User Acquisition

(謎之音:求求你們來用用我們的產品~~)  Flirq上線後, 緊接著面臨的就是找使用者的挑戰. 創業家常常犯的錯誤之一就是認為產品做出來了, 使用者自動就會上門. 雖然我們沒有這麼認為, 但是還是低估了這個挑戰的難度. 不過這個問題本來就常常是決定產品跟公司成功或是失敗的主因. 所以我們也就只能繼續發想跟嘗試. 看看能不能很快地找到解決方案. 找到夠多的使用者, 才有機會從中學習我們目前的產品到底有沒有真的解決使用者的問題. 還是只是我們自己開心的想像. User Acquisition! Fighting!

(Image from flickr's GreyHobbit under CC license)

Unread articles

之前在台灣的時候, 因為上班通勤的時間不算短(單趟至少40分鐘, 而且大多在公車/捷運上), 所以subscribe了不少RSS feed, 趁通勤的時候看. 來回一個多小時的車程, 剛好也就可以把每天所有的新文章消化完畢. 來Philly, 住進現在的地方, 因為離DreamIt提供的辦公室, 通勤時間順利的話15分鐘可以到(不過大概是走路5分鐘, 坐車5分鐘, 再走路5分鐘). 結果之前可以每天順利消化的文章, 就開始慢慢累積了. 這個禮拜因為趕一些功能的緣故, 更沒時間看文章了. 剛剛心血來潮想要消化一下的時候, 發現不小心已經累積太多, 硬吃可能會消化不良. :p 不過轉念一想, 沒看到就算了. 這幾天不也過得好好的? 所以很快地點了幾個mark all as read. 準備來睡覺去囉. :)

(Image from flickr's Bright Meadow under CC license)

HGTV

這次回美國發現了一個很有趣的頻道叫HGTV, 主要就是講一些房地產相關的東西. (沒錯, 一整個頻道都是在播相關的節目) 為什麼有趣呢? 因為可以從這個節目裡看到很多不同地方, 各種形式, 不同價位的房地產. 更可以看到整個產業鏈裡的各種角色(從建商/仲介/買方/賣方/裝修...)之間的互動. 可惜回台灣之後就看不到囉. :(

(Image is from flickr's gardener41 under CC license)

Google Apps

這兩個多月來, 學到跟接觸到的新東西實在太多了(謎之音: 那是因為你之前懂得太少了! Orz) 所以趁最近站剛上線, coding工作沒那麼重. 趕快把一些東西記一記.

今天想寫的是Google Apps. 這個年代, 一家startup沒有自己公司domain的email address. 實在是一件不可思議的事. 不過到底有什麼省錢又省力的方式弄出有自己公司domain的email address? 有些人可能會決定自己架mail server. 但是我實在是沒有多餘的精力去管這一類的事. 還好Google提供給十個人以下的小公司一個免費的解決方案. 也就是今天要講的Google Apps. 不過Google技巧性的沒有在Google Apps的首頁裡直接提到有這個十人以下小公司免費的方案. (這個選項是藏在Menu裡的Solutions底下) 所以

Google Apps的設定基本上都還算簡單.大部份都是照著點選就搞定了. 除了一個地方, 就是Google為了要認證你真的擁有你要申請的公司domain時, 會要你在你的web server上擺一個他們指定的檔案. 所以在申請之前, 要確定自己有辦法搞定web server囉. 

(Image from flickr's adria.richards under CC license)

SPF record on GoDaddy for Google Apps

Run startup的好處之一就是每天都在學很多新東西. 今天學到的是, 我們的很多email都被當成是spam.....很快地查了一下. 原因可能是出在我們的domain沒有設定SPF (Sender Policy Framework) records. 所以很多寄出去的信, 就會被收件人的email server當成是spam. 感謝Google大神的神威, 很快地找到了solution. 希望之後Flirq的信就不會再被當成spam囉!!

(Image from flickr's arnold | inuyaki under CC license.)

 

Browser Quirks Mode

今天早上收到老婆轉來的一封他朋友M幫忙測試Flirq時發現的問題. M用XP上的IE開Flirq的首頁的時候, 格式出了很多問題. 下午花了不少時間找bug. 不小心在IE的developer tool裡找到了線索. 原來是因為我們原來的page在IE看的時候會被IE用所謂的Quirks Mode來開啓. 所以很多CSS都不會被正確地處理. 最後在每一頁都補了<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">跟<meta http-equiv="X-UA-Compatible" content="IE=8" />. 總算是解決了這個問題. 

(Image from flickr's Robert Nyman under CC liencse) 

Be Optimistic and Be Realistic

創業, 需要樂觀的心情持續向前邁進, 也需要務實的態度來檢視策略跟執行成果. 

(Image from flickr's bitmask under CC license)

Crontab with CakePHP

這兩天在處理Flirq寄Notification email的feature. CakePHP提供了Shell class, 讓Unix/Linux的Shell可以呼叫. 而實作出來的CakePHP Shell功能, 可以利用 Path/To/cake ShellFunction (ex. /var/www/html/cakephpapp/cake/console/cake mytestshell) 來執行. 不過在加到Crontab的時候, 要注意路徑的問題. 不然會出現沒辦法load class的錯誤. 這邊是一個加入到Crontab的例子(每分鐘執行一次)

* * * * */var/www/html/cakephpapp/cake/console/cake -app /var/www/html/cakephpapp/app/ mytestshell

(Image from flickr's kojotomoto under CC license) 

SwiftMailer, Great CakePHP email component

本來試著要用CakePHP內建的Email component來實作Flirq的email通知功能. 但是不小心發現了SwiftMailer這個更好用的component. (重點是, example提供的很完整XD) 雖然還沒做完相關的功能. 但是有了SwiftMailer跟它的範例. 應該只是時間的問題. 在此特別推一下囉! :) 

(Image from flickr's matthewspiel under CC license)

Philadelphia Museum of Art and Fairmount Park

UPenn畢業目前旅居紐約的友人C, 禮拜天跟他的朋友Y來Philly一日遊. 我們有幸也能跟著一起去晃晃. 過了非常愉快的一天. 主要是參觀Philadelphia Museum of Art and Fairmount Park. 都是很棒的地方. 希望接下來還有機會再去玩玩. 

 

Sunday, February 24, 2013

Flirq is online

Screen_shot_2011-11-04_at_11

Flirq上線了. 不過目前只開放給UPenn學生. (需要UPenn email認證) 有興趣玩玩的朋友. 再email給我. 雖然上線了. 但是是更多工作的開始. 因為不只要繼續修bugs, 加features, 更要找users!! 加油!!

SSL Certificate Request on GoDaddy

因為Facebook要求從今年10/1開始, 所有的app都要有https的Canvas URL. 所以只好乖乖的來處理一下https需要的SSL certificate. 我們所有的domain都是從GoDaddy買的, 而GoDaddy的SSL certificate價錢也還算OK. 所以昨天晚上就想說趕快來把這個搞定. 購買的流程還算順利, 但是等到要送出CSR (Certificate Signing Request)的時候, 卡關卡了很久. 照著GoDaddy的說明, 一行指令就生出了所需的key跟csr. LAMP環境裡用openssl生出來的CSR通常是長下面這樣

-----BEGIN CERTIFICATE REQUEST-----

CSR內容.......

-----END CERTIFICATE REQUEST-----

但是問題來了...當我把CSR內容貼到GoDaddy的網頁裡的時候, 一直被退回. 試著重新生成了幾個不同的csr檔案, 甚至於跑到了一些可以幫忙生成csr的網頁生成csr跟decode我生成的csr內容的網站去生成跟檢查我的csr. 結果GoDaddy還是不吃. 最後要放棄之前, 靈機一動. 就把整個內容(沒錯, 就是包括BEGIN, END那些東西)都丟了進去..鐺鐺...就成功了....只能說, GoDaddy, 我真是搞不懂你啊....

(Image from flickr's runnr_az under CC license)

Philly: Smoker Friendly City

前幾天提到, Philly抽煙的人很多. 不知道是因為抽煙的人很多, 所以整個城市變得Smoker Friendly, 還是因為本來就Smoker Friendly, 所以讓抽煙的人更多. 不過今天要提的是這個城市居然Smoker Friendly到在有些公寓大樓裡面是不禁煙的. 不過為什麼我知道呢? 因為我們住的這一棟就是...XD 所以到Philly找房子的時候, 如果不喜歡煙味, 可能還得記得確定大樓裡是不是完全禁煙囉...

(Image from flickr's mikecogh under CC license)

Snow in Philly

Photo

前幾天才說冬天要來了, 週末可能會下雪. 今天Philly果真就下了雪. 雖然只有薄薄的一層. 但是意思也到了. 期待看看Philly的冬天是個什麼樣的光景囉. :) 

CSS: Margin vs Padding

Screen_shot_2011-10-28_at_6

這幾天如火如荼的在整合designer給出來的HTML/CSS跟我後端的CakePHP的code. 因為對HTML/CSS不熟的關係, 吃了不少苦頭. 今天因為遇到了一個奇怪的狀況, 不得不去翻了不少CSS相關的東西. 特此記下來以供參考. 今天學到的東西主要是Margin跟Padding的差別. 這兩個設定很相似, 但是有天差地遠的差異. 特別附上Firefox Inspect Element吐出來的圖當參考. 簡單來講, Margin是往外長, Padding是往內長. 所以假設Div A包住了Div B. Div A設Padding 10px跟Div B設Margin 10px得到的視覺效果會很相近, 就是Div A跟Div B的邊緣會有10 px的距離. 但是什麼時候該用Margin什麼時候該用Padding? 這就不是這篇討論的主題了. :p

 

Winter is coming to Philly?

今天晚上據說溫度會掉到攝氏十度以下, 週末還有可能會下雪. 冬天要來了嗎? 希望Philly的冬天可以讓這個城市可愛一點囉. :)

(Image from flickr's TS Drown under CC license)

Whole Foods and Trader Joe's

Whole Foods跟Trader Joe's是美國兩間很有名的連鎖超市. 之前在Boston的時候, 我們就常常去Whole Foods買菜, 因為Whole Foods的有機食材很有名. Trader Joe's是一直聽別人提到, 但是沒什麼機會去. 這次在Philly住的公寓, 離Trader Joe's還算近(兩個block左右), 本來很高興, 想說之後買菜就方便了. 沒想到去了兩三次之後, 發現選擇不多(很多都是Trader Joe's自己的品牌), 有機食材的比例其實也不高. 價錢更不是真的很便宜. 所以決定還是重回Whole Foods的懷抱. 雖然得多走幾個block的路. 但是東西好還是比較重要!

希望我們的Flirq哪天也能變成online dating裡的Whole Foods Market囉!! 這個比喻好像有點怪?:p 不過希望Flirq真的能夠提供給上網找尋對象的人有很多好的選擇囉!!

(Image from flickr's dipfan under CC license)

CakePHP Auto Refresh Page Content with jQuery

今天晚上試著要讓我們的一個重要功能的頁面能夠自動的更新特定區域的內容. 花掉了我兩三個小時的時間研究. 最後用了一個jQuery的.load配合上javascript的TimeInterval達到了目的. 簡單來講, 就是定時呼叫jQuery.load, 然後load的參數指向資料來源. 不確定是不是一個好方法. 不過目前暫時符合我的需要. 有機會再回來研究可以怎麼改進. 最後的code沒幾行. 但是花了我不少時間. 經驗, 有的時候真的很重要. XD

(Image from flickr's Patrick Goossens under CC license)

Dunkin' Donuts

從03年來美國, 就跟Dunkin' Donuts算是很有緣. 在Stony Brook的lab裡熬夜趕project的時候, 常常會開車到學校火車站附近的Dunkin' Donuts買Donuts當宵夜. (謎之音: 難怪會肥...). 05年到Boston之後, 跟可以說是從Boston起源的DD更是難分難捨(DD是從Boston附近的Quincy開始的). 我們老師看到我桌上的DD紙袋, 還會開玩笑說: You are a real Bostonian now. :p

這次來Philly, 住的地方, 跟辦公室附近也都有DD的庇蔭. 所以需要點糖分或是咖啡因的時候, 都能夠跟DD尋求affordable的幫助. 在此, 再次感謝DD對於我的美國生活的幫助. 也希望有一天能夠創一間跟DD一樣幫助很多人的企業. 

(Image from flickr's BetterBizIdeas under CC license)