跳到主要內容

發表文章

目前顯示的是 2014的文章

要在淘寶/天貓買東西嗎?請三思

鐵支日的時候在淘寶買了兩張台灣沒上市的網卡 選了超商取貨,沒多久包裹就到了 但是只來了一張, 接著在淘寶網站上開始跟對方店家溝通後 腦血管差點爆裂 一開始是對方窗口的客服一直換 後面的搞不清楚前面做的事 然後答應你會再主動聯絡你的 也沒做到 最後搞清楚狀況後 竟然開始跳針 我的貨物是超商取貨 所以正常流程是對方店家送到轉運站再轉送台灣 但是補寄的貨物,店家竟然只送到轉運站, 有人簽收後就不管了. 店家竟然說他從系統查到 我預設的地址是上海轉運站所以就補寄到那邊, 也不管台灣這邊會不會收到 我在系統上點退款 店家也拒絕,只一直跳針, 說他們補寄了上海也有人簽收了. 跟淘寶的客服反應 客服說這是天貓的訂單 天貓的客服只能用電話聯繫 總之就是一連串的跳針/碰壁和等待.... 已經過了快一個月了, 信用卡款已經被扣了, 系統上的退款申請也只是一直卡在客服介入中 幸好我這次買的東西只是幾百塊台幣的小東西 但是我以後再也不會相信淘寶和天貓了... 雖然網站有很多連結和文字似乎很保障消費者的權益 可是一旦發生問題, 卻很難找到能真正解決問題的管道... 不經一事,不長一智... 那種邏輯無法溝通和求助無門的心情 真的是很糟糕.... 我以後還是多用 Amazon 或者是台灣自己的線上購物平台好了 淘寶便宜有什麼用 完全不能掌控會不會被坑.... 雙 12 快到了,請三思...

vim bracketed paste mode

每次要在 vim 上 copy / paste code 時, 都要先 :set paste 切換成 paste mode 後來就把 toggle paste mode 設定成某個快捷鍵 最近在設定環境的時候又想到這個問題, 原本想去找怎麼把 toggle 設定在 insert 鍵上 結果看到了這個 vim-bracketed-paste-mode 基本上就是讓 terminal 能夠判斷這是 input 還是 paste, 如果是 paste 那麼就會把某些字元替換掉 如果 vim 再打開相對應的設定 一旦偵測到替換掉的特殊字元就自動開啟 paste mode. 這樣就手動去按熱鍵的動作都可以省下來了 目前 OSX 的 terminal / iterm2 還有最新的 putty 都有支援 bracketed paste mode 所以我們只要在 .vimrc 加入以下的設定就好了 if &term =~ "xterm.*" let &t_ti = &t_ti . "\e[?2004h" let &t_te = "\e[?2004l" . &t_te function XTermPasteBegin(ret) set pastetoggle=<Esc>[201~ set paste return a:ret endfunction map <expr> <Esc>[200~ XTermPasteBegin("i") imap <expr> <Esc>[200~ XTermPasteBegin("") cmap <Esc>[200~ <nop> cmap <Esc>[201~ <nop> endif

AWS PHP SDK for New Region eu-central-1

其實在 AWS 對外正式 announce 這個 region 之前, 我們已經有先接到了通知,並且要事先準備好 patch 來支援這個新的 region. 因為覺得很有趣,所以在看到 AWS 正式對外的 announce 後 發現裡面提到新的 region 只支援 "v4" 的 signature, 而我們用的 AWS PHP SDK 版本似乎過舊,所以認證都會失敗... 當晚馬上在測試環境更換2.7.1後,認證過了 可是卻出現 invalid endpoint 之類的錯誤訊息. 原來在 2.7.2 之前, 所有的 endpoint 都是內建在 SDK 的 resource file 裡面 所以即使 AWS 對外 announce 了新的 endpoint , 還是需要上 patch 幫 SDK 加新的 endpoint 隔天睡醒後,同事看到有更新的 2.7.2  而且發現 不需要手動 patch 加 endpoint 就可以 access 新的 eu-central-1 region 看了一下發現原來 2.7.2  以後 SDK 會自動去抓 AWS 最新的 Region & Edpoint List 所以以後有新的 region announce 的話, 就不用再去 patch AWS PHP SDK 啦~

PHP-CS-Fixer

我一直覺得我有個強迫症 要開始修 bug 或者 trace code  之前都要先把  code reindent 一遍... 用了 php-cs-fixer 去做 PSR2 的 auto indent 後, 發現 comma後的空白和 function call 參數的 comma 的分隔不會被修正.. 於是一邊看code又會一邊手賤的加 space... 加到後來就會從從頭到尾加一遍...然後忘記看 code 了..lol... 覺得這樣下去不行,於是送了生平的第一個給 open source project 的 pull request... 希望可以被 merge ...lol... Fix Spaces in method arguments and array values #119

NEXUS 5 D820 CHT LTE Support

中華電信 4G 1800 Band 3 Support North America (D820) Nexus 5 model: LTE: Bands: 1/2/4/5/17/19/25/26/41 Outside North America (D821) Nexus 5 model: LTE: Bands: 1/3/5/7/8/20 台灣 4G(LTE) 頻段 (一) 700 MHz 頻段:  (Band 28) (二) 900 MHz 頻段:  (Band 8) (三) 1800 MHz 頻段:(Band 3) <quote  asianyangman > 3.跑原PO文章的流程從這裡開始 ,手機接上電腦後確定USB Debugging有打勾,MTP跟PTP有取消,開 cmd 並 cd 到開發者工具的 platform tools 目錄,接下來先發 adb devices確定有偵測到手機,接下來再發命令          adb shell    su    setprop sys.usb.config diag,adb 有看到在跑安裝驅動或聽到B聲後,點開裝置管理員(Device Manager),確定有找到LG AndroidNet USB Serial Port(COMXX),COM值無所謂 4.打開 QPST Configuration 選好PORTS 後按add a new port,再來選擇剛剛看到的LG PORT,並輸入COM口在右邊,最後按下OK 5.獲取SPC碼,首先安裝NEXUS5 field test mode,並開啟 cmd 並一樣 cd 到platform-tools的目錄底下,打adb devices確定有連接上後,打adb logcat,等他跑差不多停後,手機打開NEXUS5 field test mode點選右上角的setting--->Setting(view)--->LTE--->Edit,接著停留在此畫面, 並輔以這兩篇文章裡的圖片 http://goo.gl/WYK9I8   &   http://goo.gl/fxOpMF 找到自己的SPC碼 6.開啟QXDM,在view那裡打開NV Br

Spotify Global Hot Key in OSX with Automator Script

Quote from -- modacular Open up the  Automator Application  (Applications/Automator.app)  Create a  new document ( ⌘N)  and choose the  "Service"  type for your document. On the  "Service receives selected"  item in the top side of the window select  "no input"  from the dropdown. Search for  "Run Applescript"  from the searchbar on the left side of the window. Drag  the "Run Applescript" item in the  main window area . Delete  the  (* Your script goes here *)  line and paste this instead: tell  application  "Spotify"  to p laypause Save  your script (File > Save or ⌘S) and give it a meaningful name like Spotify PlayPause :D Go to  System Preferences > Keyboard > Shortcuts  and select  Services  from the left column. Scroll down to the  General  Section and find your  Spotify PlayPause  item. Click the  add shortcut  button and press the combination of keys that will be your shortcut. (eg. I gave it the

夢想是....?

兩個都不喜歡的單字 對抗小確幸的大野心 可是裡面卻藏了充滿情感的歌 手紙~拜啟 給十五歲的你~2014 一句話 Those who stand for nothing fall for anything. --Alexander Hamilton 卻讓我重新思考 如果這樣子一直做下去, 不管是 5 年,還是 7 年後, 我還是會喜歡這樣子的我吧?

收集 conference 資料的好網站

今天在追蹤 CakePHP CakeFest 2014 的一些演講 slide 的時候 發現了這個好網站 https://joind.in/  裡面有一些 conference 演講的 topic, 有些講者還會更新 slide link 最重要的是, 每個 topic 有 rating 和 comment 功能 所以可以看到一些 feedback 也可以搜尋到一些其他熱門的 topic

CakePHP CakeFest 2014 Slides Share

CakeFest 2014 一些我覺得不錯的 Slide Share... MySQL Scaling Without Losing Your SAnity 遇到 scaling issue 的時候, 可以參考裡面提到比較常見的方式.. CakePHP and AJAX AJAX 這個蠻實用的...有提到怎麼在 cakephp 裡面測試 ajax Testing your app with Selenium on Travis CI 這個也挺有趣的...Travis CI + CakePHP + Selenium Effective debugging 這應該已經一次上完了整堂的前端/後端和腦端的 debug 課程.... Advanced Querying with CakePHP 3 CakePPH 3 的 ORM, query 更直覺了! Why You Can't Test   Keep Updating...

MAMP with macports

Install macports  Howto MAMP with php54 After that, composer still will using system default php 5.3 So, we have use port swith to php54 sudo port select php --set php54 Then, composer can using the correct php54 with required extensions..

Fix broken exFAT partition

不知道為什麼, Mac 裡的 disk partition 突然變灰色 mount 不起來了。 Disk Utility Repair 也無效 先用 testdisk Analyse, partition 裡的檔案都還在 再來用 fsck_exfat -d disk1s2 ** Rechecking main boot region.    Main boot region needs to be updated. Update? 輸入 "Yes" ** Rechecking alternate boot region. ** The volume P302 was repaired successfully. 心愛的資料就回來了~~

Juniper SSL VPN Client in Mavericks 10.9.4

在 Mac 上要 VPN 回公司的話,須要以下的東西.... 1. Apple 的 Java 6 (裝 Oracle 最新的 Java 7 u65會有 error) 2. Safari 奇怪的是我一直以為 JavaAppletPlugin.plugin 預設裝好OS就會有了,但最後發現要裝  Java for OS X 2014-001  才會出現。 接著要 reset 大部分人會裝的 Oracle Java 7 ... Java for OS X 2014-001: How to re-enable the Apple-provided Java SE 6 web plug-in and Web Start features # sudo mkdir -p /Library/Internet\ Plug-Ins/disabled # sudo mv /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin /Library/Internet\ Plug-Ins/disabled # sudo ln -sf /System/Library/Java/Support/Deploy.bundle/Contents/Resources/JavaPlugin2_NPAPI.plugin /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin #sudo ln -sf /System/Library/Frameworks/JavaVM.framework/Commands/javaws /usr/bin/javaws 如果要切回 Java 7 的話... # sudo ln -sf /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javaws /usr/bin/javaws # Re-enable the Java 7 applet plug-in by downloading and reinstalling the latest version of Oracle Java 7 JRE 這樣就可以用 Safari 安裝好 Juniper SS

3M UVA3000 更換濾芯紫外線燈匣

用了一年的3M濾水器提示說要換濾芯和燈匣 上 Youtube 想找教學的影片可是沒看到 UVA 3000 的 經過了一番奮戰後在這邊記錄一下 希望可以幫助後人,以免再重蹈覆轍。 Step 1. 拔掉插頭,把淨水器從牆上拿下來(基本上他是掛著而已),比較方便施工。 Step 2. 把前蓋往上拉,很容易就可以看到裡面的東西了。 Step 3. 打開後可以看到有兩個柱狀體,左邊的是燈匣,右邊的是濾芯。 Step 4. 這裡有個祕技是,這兩個柱狀體是可以往上 翻開30 度左右,這樣就可以有比較大的空間施工。 Step 4. 更換濾芯的話,柱狀體的瓶身上有箭頭,往左就是轉開,往右就是鎖緊。 Step 5. 更換燈匣的話比較麻煩一點,因為他底部是電源,頂部的右邊有個突出來的小方塊。對照淨水器上方連接處的話會有個弧形的凹槽,這是要 match 的.如果你只注意瓶身的箭頭往右鎖回去,就會造成漏水...Orz... Step 6. 把前蓋蓋回,機器掛回牆上,插插頭,開水,如果機器沒有告訴你有燈匣異常或漏水的話,就可以長按 C / UV  Reset 計數器了. 所以關鍵字就是,要往上翻 30 度,燈匣上面的小凸點要在右側,要看瓶身的 小箭頭. May it helps!

PHP CodeSniffer with Custom Rule

程式碼的靜態分析是 team work 或者 CI 中很重要的一個環節 而靜態分析,其中的一項功能 coding standard 和 coding style的分析更是可以保護你的眼睛 squizlabs/php_codesniffer 內建有許多 ruleset, 像是 PHPCS, PSR2, PSR1, Squiz, PEAR, Zend etc... 如果你仔細去看每個 Standards 目錄下的 ruleset.xml 和 Sniffs 目錄大概就可以看出 其實他們是互相 include, 然後在自己的 Sniffs 裡做 Overide 或者是定義自己的新規則 例如 PSR2 的 ruleset.xml 裡面就宣告了 reference rule 是 PSR1 而 PSR1 又 include 了像是 Squiz 之類的 如果因為某些歷史/framework 的因素, 你希望盡可能地採用 PSR2, 但是又希望 exclude 掉其中的某一部分, 例如 PSR0  這時候你可以在 Standards 目錄下建立自己客製化的 ruleset, 目錄裡面只要放 ruleset.xml  內容是 reference PSR2, 再另外加上你想 exclude 掉的 rule. 但是你要怎麼知道有那些 rule 可以 exclude 呢? 以你想套用大部分的 PSR2 ruleset, 但是又想 exclude 掉 PSR 0 為例. 我們知道 PSR2 引用了 PSR1, 而 PSR1 裡面又包含了 PSR0 所以 Standards/PSR1/Sniffs/Classes/ClassDeclarationSniff.php 裡面會檢查 class 有沒有正確宣告 namespace 想 Exclude 掉這個 rule 的話, 我們可以從目錄拆解出 rule name: "PSR1.Classes.ClassDeclaration" 大概就是這樣啦~ 透過客製化自己的 ruleset, 然後再設定 sublime linter 裡的 code sniffer. 就可以馬上讓你的知道, 自己寫的 code 有沒有符合規則.

Redeclare Error with APC

如果 apc.enable_cli 因為"某些因素"有開啟的話 那麼有時候一些 command line 會遇到類似下面的 error "Cannot redeclare class xxxxx" 這時候有兩種方式: 1. 如果是針對 .phar 的話, 可以用 apc.filters="^phar://" 2. 如果是 cron job 或者暫時性的話: php -d apc.enabled=0 /path/to/cron_job.php 比較特別的是 phar 檔不只是 cli 容易遇到 redeclare error,  像是 aws 的 php sdk 最好還是用 composer 的方式安裝吧. See Also: http://stackoverflow.com/questions/4575341/php-with-apc-fatal-errors-cannot-redeclare-class http://docs.aws.amazon.com/aws-sdk-php/guide/latest/faq.html#why-am-i-seeing-a-cannot-redeclare-class-error

CakePHP Applications

12-factor-cakePHP-applications Slides:  https://speakerdeck.com/josegonzalez/12-factor-cakephp-applications Youtube:  https://www.youtube.com/watch?v=Kye8yaq4jqk composer / satis  - Simple static Composer repository generator d11wtq / boris  - A tiny REPL(read-eval-print loop) for PHP kamisama/Cake-Resque - Resque plugin for CakePHP : for creating background jobs that can be processed offline later (redis backend) seatgeek / djjob D- A PHP port of delayed job (database backed asynchronous priority queue )

why adopt git flow? perforce v.s git?

http://ihower.tw/blog/archives/5140 這個 flow 大概從三年前第一次看到.... 到之前為止一直沒辦法和實際的情況對應起來.... 我一直在想 git flow 要這麼多 branch 有甚麼用? perforce 的 code line 和用 git 的 branch 到底有甚麼差異? 經過上星期五一陣混亂的 rebase / merge 兩個放了快一個月的 feature branch 進 master branch 後....我終於懂了.... 在從 feature branch merge 回去 master 之前, 你也可以(也應該要)先在自己的 feature branch rebase 到最新的 code line, 測試整合後沒有問題的話, 就可以放心的 merge 回去。 用這樣的方式最大的好處是, 在自己的 feature branch 裡完全不會干擾到別人或者受到別人的干擾,你可以把開發的時間拉到很長,中途切換到其他工作,再隨時切換回來,而不會漏掉你不同 branch 裡修改的內容。而且 git 的 branch 讓你可以很容易的在自己的 feature branch 裡先測試整合後的結果。 git flow 則是提供了很好的 practice, 一般來說,遵循這樣的原則可以應付大部分的 release 需求 果然有些事,看了一百遍不懂,但是做了就知道了.... 其實目前我用的 flow 因為有結合 perforce 所以沒有用到 develop branch, 換個說法的話就是, 目前我用的 master branch 在 git flow 裡其實算是 develop branch.. 1. use rebase to update from master 2. rebase 完後記得 squash commit 3. 從 feature branch 進 master branch 時, 用 merge --no-ff 4. follow the  spirit of  git flow ....不要亂 merge .... 雖然條條大路通羅馬, 但是...會花不一樣的時間....

把 MOD 接在 AP 後面

用 ASUS RT-R12 刷 Tomato Shibby, WAN port 接到中華電信的 VDSL P883 Port 1 接 PC Port 4 接 MOD 的機器 AP負責發 DHCP 給 Port 1 ~ Port 3  和 wifi 原理就是切兩個 VLAN,讓 MOD 和 LAN 的 PPPOE 都可以共用 WAN port VLAN 1: Port 4 -MOD 和 WAN - VDSL; bridge WAN VLAN 2: Port 1 ~ 3; bridge LAN br0 比較奇怪的地方是, 在沒刪掉預設的 VLAN 0 時, 設定會跑掉。 刷到最新的 v120 後, Device List 的 port infomation 順序是顛倒的. 但是在設定 VLAN 的地方, 我還是照實體機器的圖示來設定 VLAN 總之.... 目前這樣看起來wifi正常, VDSL 也可以放到比較涼的地方. 還可以看到 MOD 的流量 ~

Nexus 5 Android 4.4.4 Upgrade

因為 N5 有裝了 TeamWin TWRP custom recovery tool, 所以即使收到了 Android 4.4.3 的 OTA 也沒辦法安裝。 等了一陣子,看到有人放了 Android 4.4.4 的 zip 安裝檔 ,進 TWRP 卻安裝失敗,而且再也開機不能。 到 xda 找到了另外的 安裝檔 N5_4.4.4_KTU84P.zip 後才發現沒裝 Android SDK  , 裝完想用 adb sideload 直接刷進手機但是在 recovery mode 下卻找不到裝置,裝置管理員顯示的裝置名稱是 "AOSP on HammerHead" ,安裝了  UniversalAdbDriver  後,在 recovery mode 下就可以用 adb sideload N5_4.4.4_KTU84P.zip 成功的把新的 ROM 刷進手機,reboot 後就好了~ P.S. 我好想念 iPhone......

Dell OM SMTD DVD Download

Dell 的伺服器更新光碟從官方網站上不曉得為什麼都無法下載 最後還是用關鍵字找到了有人分享的 link... Dell Systems Management Tools and Documentation DVD ISO, v.7.4 (Last Updated 25/04/2014) ftp://ftp.dell.com/secure//FOLDER02027063M/1/OM_SMTD_740_A00.iso 其實就是進 dell 的 ftp server /secure/ folder 下撈. 理論上用日期去排序資料夾,就可以找到最新的下載連結 但是不曉得為什麼 OM_SMTD_730 資料夾的修改日期竟然比 740 的還新  lol... 如果有需要 prepare 新的 server,  可能會用到 Dell Systems Build and Update Utility v2.4 ... 每一陣子要 upgrade 伺服器就要這樣搞一次..... Update: OM_SMTD 只能進 System Build and Utility Updater (SBUU),裡面也沒有更新檔,看來是要進 Life Cycle Controller 然後透過網路到 dell.ftp.com 下載比較快的樣子‧‧‧‧

Upgrading ESXi with Dell ESXi Recovery Image

因為 Dell 的伺服器有些裝置的驅動程式不包含在預設的 VMware ESXi 安裝光碟裡。所以一般如果 Dell 有提供 ESXi 的安裝光碟, 我會比較偏好用它來安裝ESXi。 最近剛好要 upgrade 一台 ESXi 5.0 的機器, 去 Dell 的網站搜尋後發現剛好有 VMware ESXi 5.1 update 2 Recovery Image 但是他的說明很奇怪: " This ISO image should be used only to recover/reinstall VMware ESXi image to SD Card/USB Key on Dell Supported Platforms. Refer compatibility section for Supported Platforms. " 不僅僅是說只能安裝到 SD Card/USB Key, 也只說能 recover / reinstall, 那究竟能不能用來 upgrade 呢? 於是用 virtualbox 開了一台 VM, 把網卡選成 Bridge Mode, Intel PRO/1000 MT Server (82545EM), 不然ESXi 會因為找不到可用的網卡,而中斷安裝。 先用 Dell 出的 VMware ESXi 5.0 update2 Recovery Image 裝好 5.0 u2 然後再換 5.1 u2, 在安裝過程中選已經安裝了ESXi 5.0 的裝置後, 他就會偵測到,並且幫你 upgrade 成 5.1, 重開機後看起來是正常的。 嗯, 應該可以放心用它上實際的伺服器了!

Skype 撥分機失敗

之前用 desktop skype 打電話在輸入撥號音階段都會失敗(ex: enter conference code, 分機 etc...) 但是 MAC 筆電都沒有這個問題。 原本以為是 Windows 版的 skype 和 MAC 版 skype 的差異,後來發現是沒有麥克風裝置的問題。只要隨便在麥克風插孔插入一個裝置,讓 skype 偵測到有輸入裝置就可以了....

AWS Certified Solutions Architect - Professional Level beta exam

收到白老鼠實驗感謝卡了.... beta exam 是 120 題 185 分鐘 .... 希望正式版的考試題目數量可以少一點...一些太長的題目可以拿掉... 不然每題不到兩分鐘的答題時間,看完題目就過一半了.... 考三小時後面幾乎呈現腦死狀態.... <quote> Thank you again for taking the Beta AWS Certified Solutions Architect - Professional Level beta exam. Unfortunately, you were unsuccessful in this attempt. You will receive a voucher within the next 5 business days, for a free retake. </quote> 讀書去....

/ect/crontab not running

如果把 cronjob  寫在 /etc/crontab 下,那要注意格式 # Example of job definition: # .---------------- minute (0 - 59) # |  .------------- hour (0 - 23) # |  |  .---------- day of month (1 - 31) # |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ... # |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # |  |  |  |  | # *  *  *  *  * user-name command to be executed 在 "command to be executed" 前面, 要有 user-name... 如果用 crontab -e 的方式, 則不需要 user-name 那個欄位.... # *  *  *  *  *  command to be executed

Amazon EC2 Public IP Ranges

https://forums.aws.amazon.com/ann.jspa?annID=1701# <quote> Dear Amazon EC2 customer, We are pleased to announce that as part of our ongoing expansion, we have added new public IP ranges. The current Amazon EC2 public address ranges are:  US East (Northern Virginia):  72.44.32.0/19 (72.44.32.0 - 72.44.63.255)  67.202.0.0/18 (67.202.0.0 - 67.202.63.255)  75.101.128.0/17 (75.101.128.0 - 75.101.255.255)  174.129.0.0/16 (174.129.0.0 - 174.129.255.255)  204.236.192.0/18 (204.236.192.0 - 204.236.255.255)  184.73.0.0/16 (184.73.0.0 - 184.73.255.255)  184.72.128.0/17 (184.72.128.0 - 184.72.255.255) 184.72.64.0/18 (184.72.64.0 - 184.72.127.255)  50.16.0.0/15 (50.16.0.0 - 50.17.255.255) 50.19.0.0/16 (50.19.0.0 - 50.19.255.255) 107.20.0.0/14 (107.20.0.0 - 107.23.255.255) 23.20.0.0/14 (23.20.0.0 - 23.23.255.255) 54.242.0.0/15 (54.242.0.0 - 54.243.255.255) 54.234.0.0/15 (54.234.0.0 - 54.235.255.255) 54.236.0.0/15 (54.236.0.0 - 54.237.255.255) 54.224.0.0/15 (54.224.0.0 -

wildcard dns for everyone xip.io

Interesting... What is xip.io? xip.io is a magic domain name that provides wildcard DNS for any IP address. Say your LAN IP address is 10.0.0.1 . Using xip.io, 10.0.0.1 .xip.io resolves to 10.0.0.1 www. 10.0.0.1 .xip.io resolves to 10.0.0.1 mysite. 10.0.0.1 .xip.io resolves to 10.0.0.1 foo.bar. 10.0.0.1 .xip.io resolves to 10.0.0.1 ...and so on. You can use these domains to access virtual hosts on your development web server from devices on your local network, like iPads, iPhones, and other computers. No configuration required! Think about what can it do for you?