Email 行銷的實際情況可能跟你想像中不同

許多人對於 Email 行銷上的一些概念很可能跟實際情況不同,這裡的一些分析結果可以讓你更了解實際的狀況。

在使用 Email 行銷手法推廣產品的時後,我們常常認為一些理所當然的觀念,其實有可能是不正確的。Alchemy Worx 根據其顧客的實際資料進行了一些分析,得到了以下的一些結論。

顧客都被一些自己訂閱的 Email 淹沒?

根據 Alchemy Worx 的報告顯示,40% 的顧客平均每天只有收到 3 封從自己信任(訂閱)的來源寄來的電子郵件,甚至有 63% 的顧客收到的郵件不超過 6 封,根據 Merkle 的研究更顯示有 74% 的顧客喜歡以 Email 的方式跟廠商進行溝通,勝過其他的方式。

紙上談兵:既簡單又便宜的創意設計方式

在軟體或網頁設計上,紙與筆其實是很有用的工具,它不但簡單、便宜,而且可以讓你盡情發揮創意思考。


用紙筆設計原型(Prototype)

使用紙與筆來設計原型(prototype)是使用者經驗設計(user experience design)上常用的方法之一,而因為所有的設計都是徒手繪製,難免與實際情況會有一段差距(尤其是美術天分不夠的人),再加上用手畫圖通常都很耗時,所以許多人並不喜歡使用這樣的方式。

但是像 axure 這類的設計工具也有它的限制,這樣個工具會提供一系列的組件與動作讓設計者選擇與組裝,雖然很方便但是卻也侷限了設計者能使用的工具,如果一個有創意思考的設計師要創造一個全新的使用者體驗,這樣的工具就很難辦到。

如果在設計時使用的是一張白紙與一支筆,你就可以發揮自己的創意,將注意力集中在原型的設計上,而不會老是思考要選擇哪一個可用的組件。根據 Snyder(2003)的研究,使用紙張畫圖與剪貼,可以增加設計者的創意,寫字與畫圖的動作是建立在感覺運動上的一個很複雜的認知過程,這個動作在一些研究上也被證實可以加強大腦的神經活動(Mangen, Velay, 2010)。

Pocket 如何改善使用者經驗(User Experience),讓效益增加 58%?

Pocket 是一個手機閱讀 App,這裡介紹如何透過使用者經驗設計(user experience design)改善 App 的效益。

Pocket 使用者經驗設計

Google Ventures 透過更好的使用者經驗設計,讓 Pocket App 的新使用者使用儲存文章功能的比例提升 58%,直接大幅提升 Pocket App 的使用率與有效使用者的數量,這裡我們介紹他們是怎麼做到的。

Google 在最新的 Chromium 開發版本中加入書籤的目錄搜尋功能。

Google 在最新的 Chromium 開發版本中加入書籤的目錄搜尋功能,未來當你在書籤中搜尋時,符合搜尋字串的目錄也會一併列出來。

Google Chrome 瀏覽器

這個消息是由 Google Chromium 開放原始碼專案的開發者 François Beaufort 首先在 Google+ 上發佈,當你在書簽中搜尋時,符合搜尋條件的目錄也會出現在其中,點兩下就會直接開啟該目錄。

自定 Google Chrome 網頁開發人員工具(DevTools)佈景主題教學

這裡教大家如何自定 Google Chrome 瀏覽器的網頁開發人員工具(Chrome Developer Tools)佈景主題。

在 Google Chrome 瀏覽器中有提供了一個 DevTools 網頁開發人員工具,它可以讓網頁開發者非常方便的在上面開發網頁或除錯,而這個工具在預設的情況下是使用白底灰字的布景主題,如果你是需要長時間使用這個工具開發的人,這樣的配色可能會讓眼睛很吃力。

這裡提供一些深色背景的布景主題與安裝教學,你可以從中選擇自己喜歡的配色主題來安裝在自己的 Chrome 瀏覽器中。

尋找 Google Chrome DevTools 佈景主題

首先第一步就是要找一個自己喜歡的佈景主題,這個通常用 Google 搜尋就可以在網路上找到很多,不會太難,而 DevThemez 這個網站也蒐集了很多很好看的佈景主題。

Google Chrome DevTools 的佈景主題其實就是一個 CSS 設定檔,當找到滿意的佈景主題之後,就把該佈景主題的 CSS 下載下來就可以了。

這裡要注意一點,有些佈景主題可能只會更改部份的程式碼配色或是特定的 panel 顏色,而有些則是會提供完整版面的佈景主題,讓整體感覺一致,在找這類的佈景主題時可以依照自己的需求選擇。

以下是一些不錯的深色佈景主題:

Zero Dark Matrix

Google 地圖新增了全世界主要交通轉運站的室內街景服務

Google 地圖新增了全世界主要交通轉運站的室內街景服務,包含機場、火車站、甚至飛機的機艙都可看。

大家都知道在 Google 地圖上可以使用街景服務隨意瀏覽全世界各地的景象,在威尼斯可以坐船,在加拉巴哥群島還可以游泳,而現在 Google 地圖又有新的點子了。

這次 Google 地圖把全世界一些大城市的交通轉運站的室內景象拍攝下來,包含 16 個國際機場、50 幾個火車站與地鐵站,甚至還有香港的纜車站與迪拜國際機場 Emirates A380 客機的機艙實景。

迪拜國際機場 Emirates A380 客機的機艙實景
迪拜國際機場 Emirates A380 客機的機艙實景

Google 的服務都是免費的,為什麼它可以賺錢?

這裡告訴你 Google 提供免費服務,但是又可以賺錢的祕訣所在。

Google 最近公佈其 2013 年第三季的財報,第三季的淨利高於市場預期,營收達 148.9 億美元,比去年同期增長 12%,淨利則來到了 29.7 億美元,比去年同期增長 36%,盤後 Google 股價上漲 7.9%,達 959 美元。


Google 毋庸置疑是一家商業公司,但是為什麼他提供那麼多優質的服務給大眾使用,卻不收任何費用?那 Google 到的要從哪裡獲利呢?重點是他還賺那麼多!

在 Google Chrome 中使用 console.table() 函數進行 JavaScript 程式除錯(Debug)

這裡介紹如何在 Google Chrome 瀏覽器中使用 console.table() 函數進行 JavaScript 程式的除錯(Debug)。


在 Web Developer Conference 2013 這個研討會中,Marcus Ross 提供大家各種在 Google Chrome 特有的 JavaScript 除錯(debug)方法,這裡我們介紹其中一種使用 console.table() 函數的方式。

Codacy:幫助程式設計師測試程式問題的服務平台

Codacy 是一個軟體測試服務平台,專門用來幫助程式開發者自動找出程式中的問題。


Codacy(原名 Qamine)是由 Seedcamp 所出資贊助的一項服務平台,目前的版本為尚未開放的 beta 版,這個平台的主要設計目的在於自動幫程式開發者檢查程式中可能出現的錯誤,降低程式 bugs 的發生率,同時也可以減輕程式設計師的負擔。

讓 Google AdSense 廣告配合瀏覽器版面動態變更大小(回應式網頁設計)

這裡介紹如何讓 Google AdSense 廣告配合瀏覽器版面動態變更大小,符合回應式網頁(responsive web)的格式。


所謂的回應式網頁(responsive web)是指網頁的版面會根據裝置的類型或瀏覽器的畫面大小等參數,動態調整版面的呈現方式。如果你的網頁上的 Google AdSense 廣告是使用新版的非同步廣告程式碼,那麼你就可以透過 CSS 與媒體查詢(media queries)來設定 AdSense 廣告的大小。

資料庫簡略發展史與未來發展的方向

這張圖簡略描述了資料庫的過去的發展史與未來發展的方向。


關聯式資料庫(relational database)的佔有率在 1980 年代的時候並沒有特別明顯優於其他的資料庫系統,但是後來這種資料庫慢慢的成為市場主流,許多的商業應用與網站也都使用這樣的資料庫。

Spark:一個以 Chrome App 為基礎的開發環境(IDE)

Google 的 Chromium 開發團隊總是會有驚人之舉,他們現在正在開發一個以 Chrome app 為基礎的開發環境(IDE),取名為 Spark。


這個新的 app 的消息最早是由 François Beaufort 這個開發者在 Google+ 上所公佈的,其重點如下:
  • Dart 語言所打造。
  • 包含了一個使用 Polymer 的 GUI 組件庫。
  • 其原始碼公佈於 GitHub,所以任何對於使用 Dart 與 Polymer 開發新一代 Chrome app 有興趣的人都可以參考其原始碼。

Google Shopping 購物網站現在提供相似商品建議與 360 度旋轉預覽等功能

Google 今天推出了新的 Google Shopping 服務,這次新增了商品預覽、相似商品建議與 360 度動態的商品展示。


現在使用者可以在一般電腦、平板與手機上透過這個購物平台非常快速的瀏覽各種商品,查詢各種商品的規格,例如顏色、大小、描述,甚至附近可購買的實體商店。

Google Chrome 最新測試功能 -- 在手機瀏覽器上看哈比人:荒谷惡龍(中土大陸冒險之旅)

Google 今天釋出一個 Chrome 最新的測試功能哈比人:荒谷惡龍(中土大陸冒險之旅),讓你在手機上就可以看動態的多媒體網頁。


在幾年以前,要想打造一個手持裝置上面可以觀看的多媒體網頁是一件很困難的事情,一般的手持裝置通常受限於硬體規格與 API 的不足,很難開發出令人滿意的成品,但是這個情況在最近已經大有改善,像 Google Chrome 瀏覽器的 Android 版本前幾個月已經開始支援 WebGL、WebRTC 與 Web Audio 了,有了這些功能可以讓網頁的設計更有彈性。

Google 的主要服務使用 SPDY 協定後比 HTTPS 快很多

經過實際使用者的測試,Google 的一些主要服務網站使用 SPDY 傳輸協定會比傳統的 HTTPS 快上 20% 到 40%。


在四年前 Chromium 開始發展新的 SPDY 傳輸協定,這種協定可以加速現有的網頁傳輸速度,而這個協定發展非常快速,現在很多的瀏覽器(包含 Chrome、Opera、Firefox 與 Internet Explorer 等)與大型的網站都加入了對 SPDY 的支援,也因為如此 SPDY 現在已經成為 HTTP/2 協定的一部份,並且作為 HTTP/2 發展新功能時的測試環境。

蘋果現在確定要打造最新的未來飛船總部了!

蘋果現在確定要打造最新的未來飛船總部了,這看起來也是很夢幻的地方。


蘋果最新的未來飛船總部(spaceship campus)提案在上個月於庫珀蒂諾市議會(Cupertino City Council)得到初步批准,而現在終於闖關完成,順利獲得興建的許可,也就是說現在蘋果確定可以建造這個傳說中的飛船總部了。據洛杉磯時報的報導,蘋果為了獲得批准,還同意增加向市議會支付的稅款金額。

更改 Google AdSense 廣告程式碼進行 A/B 測試(A/B Testing)

這裡介紹如何更改 AdSense 廣告程式碼進行 A/B 測試,增加網站的廣告效益。

A/B 測試是網站在做最佳化時常用的手法,尤其是在調整廣告的擺放方式時,非常有用。舉個例子來說,假設你想在網站首頁上放置一個 Google AdSense 廣告,而一般的廣告有好多種形式,例如圖形的廣告與文字的廣告,而文字的廣告又可以自由選擇配色,到底該選擇哪一種廣告樣式才會有比較好的效益是個很複雜的問題。

最簡單的方式就是實際進行測試,通常為了讓測試過程可以單純一些,我們會拿兩種只差一點點的廣告來比較,例如不同顏色但是相同大小的廣告,將這兩個廣告「同時」放在網頁上的同一個位置來比較。

所謂同時放置兩種廣告的意思是將網站的瀏覽者隨機分為兩群,分別給它們不同的兩種廣告,這樣就可以同時測試兩種廣告的效益差異。

關於程式設計的幾個有趣的笑話

這裡搜集了一些關於程式設計的笑話,閒暇時可以看看。


首先是在 stackoverflow 上排名最高的是這一則問路的笑話。

用衛生紙做成的動畫 -- 很有創意的廣告

這段影片中的動物都是用衛生紙做成的,加上很精緻的配樂,是一段非常有創意的短片。


這段影片是日本 Fuyu Arai 這家衛生紙公司所拍攝的廣告影片,這是我看過最有創意的衛生紙廣告。他將衛生紙做成飛鳥、小狗、袋鼠與青蛙等動物,而其拍攝的技巧很好,加上很精緻的配樂,讓整個畫面很生動,就好像真的一樣。

從舊金山 Google Shopping Express 買 Costco 的東西,商品當日送達!

Google 在舊金山灣的 Shopping Express 購物服務現在可以直接買 Costco 的商品了,而且商品是「當日送達」。


Google 在 11 月 18 日宣布他擴充在舊金山灣原有的 Shopping Express 購物服務,讓使用者可以直接購買 Costco 的商品,而且在下定之後,當天即可收到商品(比我們的 Pchome 24 小時到貨更厲害),既方便又不用去賣場人擠人,不過當日送達的服務一開始會送你免費試用半年,之後若要繼續使用是要付費的,而第一次訂購這個服務還會有 5 美金的折價優惠。

2013 年最熱門的程式語言:Python 排名第一

這張圖顯示了 2013 年最熱門的程式語言排行榜,第一名是 Python,佔了 29.8%。

Most Popular Coding Languages of 2013

在這個時代作為一個專業的程式設計師,通常都需要不斷的學習新的程式語言,如果僅僅只會單一種程式語言,通常是不太夠用的,通常除了專精一種程式語言之外,最好涉獵一些其他的語言作為輔助。

ssh-keygen 在建立金鑰時所產生的 randomart 是做什麼用的?

這裡告訴你 ssh-keygen 在建立金鑰時所產生的 randomart 是做什麼用的。

一般在使用 OpenSSH 的 ssh-keygen 指令建立認證用的金鑰時,建立完成之後會顯示一個 randomart,這像這樣:


但是你可能搞不清楚這個圖到底是作什麼用的。

使用 Screen 指令操控 UNIX/Linux 終端機的教學與範例

這裡介紹如何使用 screen 指令來操控 UNIX/Linux 的終端機,讓工作更有效率。

screen 指令是一般 UNIX/Linux 使用者或管理者常會使用的終端機管理程式,它可以讓一個終端機當成好幾個來使用,對於以 SSH 連線到伺服器上工作的人會很有用。

通常一個終端機(terminal 或 console)只能開啓一個互動式(interactive)的 shell 來使用,而藉著 screen 的幫助,使用者可以在一個終端機下,同時開啓多個互動式的 shell,除了自己使用之外,還可以讓 session 分享給不同的使用者,或是讓執行中的 session 暫時卸離(detach),隨後再重新連接(attach)即可繼續操作。

安裝 screen

某些 Linux 發行版可能本身就已經內建 screen 這個指令了,但如果你所使用的 Linux 系統沒有安裝,通常也都可以透過套件管理程式直接安裝編譯好的版本,因為 screen 是一個很常用的指令之一,通常安裝起來不需要花費太多的力氣。

在 Debian 或 Ubuntu Linux 中若要安裝 screen 可以使用 apt-get 來安裝:
sudo apt-get install screen
而 Red Hat 系列的 Linux(如 Fedora 等)則可使用 yum
yum install screen

code:deck -- 專門設計給電腦迷(Geek)的撲克牌

code:deck 是一個專門設計給電腦迷的撲克牌,是個很有趣的設計。

微軟新的網路犯罪中心(Cybercrime Center)

微軟新的網路犯罪中心可能不像 S.H.I.E.L.D 的 Helicarrier 一樣厲害,但是看起來也是氣勢十足。


這個微軟新的網路犯罪中心(Cybercrime Center)今天正式啟用,這個中心是專門為微軟內部最好的法律與技術專家所打造的,成立這個中心的目的在於對抗惡意軟體、殭屍網路與各種的網路犯罪活動。

Google 街景服務 -- 水都威尼斯(Venice)

水都威尼斯是世界上美麗的城市之一,現在你可以透過 Google 街景服務,到那裡一探究竟。


Google 的街景服務除了提供一般道路之外,也不斷持續增加各種附加的服務,這次增加的是水都威尼斯(Venice)的景色,在這裡 Google 當然不可能使用街景車來拍攝,除了靠著人力背著 Trekker 裝備拍照之外,還坐上船實際走過威尼斯的水道,讓使用者更有身歷其境的感覺。

硬碟的壽命有多長?(損壞率分析)

你知道一般的硬碟使用多久之後會壞掉嗎?這裡有專業的分析報告。

硬碟

現在的資訊設備蓬勃發展,各種電腦應體設備隨處可見,而這些電腦設備中通常負責儲存資料的就是硬碟,從個人電腦到大型的超級電腦與雲端服務的伺服器都是這樣,而這些負責儲存資料的硬碟如果損壞了,裡面的資料也就會隨之消失,所以一顆硬碟的壽命有多久就是個很重要的問題。

在過去似乎比較少人真正做過這方面的研究(至少有寫出研究報告的很少),Backblaze 這家提供無上限雲端儲存服務的公司,以自己的 25,000 顆硬碟作實驗,測試到底一顆硬碟能夠使用多久,以下是他們的測試報告。

Google Adsense 非同步廣告程式碼,省略重複的 Async Script,加速網頁載入

這裡介紹如何使用 Google AdSense 的非同步廣告程式碼,讓網頁載入速度更快。


新的 Google AdSense 廣告程式碼支援非同步載入之後,可以改善網頁延遲的問題,讓網頁的載入速度更快、更順暢。使用非同步程式碼的好處是可以讓廣告不會影響正常網頁的載入,不管廣告是否可以正常顯示,一般網頁的內容都不會受到影響。

Mac OS X 解決「無法打開...,因為它來自未識別的開發者」安裝軟體問題

這裡說明在 Mac OS X 中如果在下載軟體要安裝時,遇到「無法打開...,因為它來自未識別的開發者」這個問題該如何解決。

Mac OS X 為了保護使用者的安全,若碰到從網路上下載一些軟體要安裝時,會驗證這些軟體的開發者,如果發現軟體的開發者不在信任的清單內,就會提出警告,如果你的系統設定比較嚴格,它甚至會不讓使用者執行這個程式,而出現這樣的畫面。

Mac OS X 無法打開...,因為它來自未識別的開發者

雖然有這個驗證機制會比較安全,但是這個限制有時候就會造成一些困擾。以下說明如何更改 Mac OS X 的設定,讓系統可以讓我們執行從網路上下載的程式。

使用 MacPorts 安裝與管理 Mac OS X 中的開放原始碼(Open Source)軟體

這裡介紹如何使用 MacPorts 安裝與管理 Mac OS X 中的開放原始碼(Open Source)軟體。


MacPorts 是一個用於編譯、安裝與管理 Mac OS X 中各類開放原始碼軟體的工具,其由開放原始碼社群負責主導與開發,透過這個工具可以簡化安裝軟體的編譯工作,並且可以自動處理套件相依性問題,概念上很類似 Linux 的 apt 與 yum,只要下達一些簡單的指令就可以輕鬆安裝各種軟體。

Mac Ports 針對目前最新的三個 Mac OS X 版本(OS X 10.9 Mavericks、OS X 10.8 Mountain Lion 與 Mac OS X 10.7 Lion)維護最新的軟體庫,目前包含了超過一萬七千個軟體,總共分成 87 個類別,這些軟體的列表可以從 MacPorts 的網站中查詢,如果你想要安裝的軟體有在這個列表中,就可以使用 MacPorts 來幫助你快速安裝。

以下示範如何使用 MacPorts 來安裝與管理軟體。

Presto:Facebook 開放原始碼、互動式資料查詢系統,支援 petabyte 等級的資料

Presto 是 Facebook 所使用的互動式資料查詢系統,支援 petabyte 等級的資料量,目前以開放原始碼的方式釋出。

Data Center

Facebook 是一家資料導向的公司,資料的處理與分析是建立這家公司與其超過十億個使用者的核心技術,而其擁有的資料量高達 300 PB(petabyte),這些資料可用於各種的應用領域,其所使用的處理方式從傳統的批次處理、graph analytics、機器學習(machine learning)到即時的互動式分析都有。

Facebook 的資料科學家與工程師常常都要分析這些資料,研究如何改看他們的產品,對於他們而言,如何在這麼大量的資料中快速撈出他們想要的資料會是一個大問題,因為 Facebook 的資料量實在太大了,若以一般的資料庫來處理,根本無法負荷。

一開始 Facebook 的資料中心是使用幾台大型的 Hadoop/HDFS 的叢集電腦來處理這些資料,Hadoop 的 MapReduce 與 Hive 都是特別為大量資料處理而設計的,但是當資料量成長到 petabyte 等級的時候,又加上更多的新的使用需求,這樣的系統漸漸不敷使用,Facebook 需要一個互動式的資料系統,而且查詢的反應速度更要夠快才行。

在 2012 年秋天,Facebook 成立了 Data Infrastructure 這個團隊,其目的在於解決這些資料處理上的問題,他們審視過市面上各種的解決方案,不是過於新穎就是不太符合它們現形的需求,所以他們決定自行發展一個快速互動式的資料查詢系統,並命名為 Presto。

這裡我們將簡單介紹 Presto 的基本架構,並說明它目前發展的狀況以及未來的規劃方向。

在 Linux 中以特定的 CPU 核心執行程式

這裡介紹如何在 Linux 中以特定的 CPU 核心執行程式,不要讓系統自動排程。


現在不管是伺服器或是一般個人電腦的 CPU 大部分都是多核心的架構,而各種應用軟體、編譯器與作業系統也受到這個趨勢的影響,也都會有針對多核心處理器做的最佳化設計。

通常在多核心的作業系統中常使用處理器的親和性(processor affinity,亦稱 CPU pinning)來處理需要高效能計算的應用,這個技術是屬於作業系統的一個特殊功能,它可以讓行程在特定的 CPU 核心中持續執行,不受作業系統排程的干擾。

將行程綁定在特定的 CPU 核心上有許多優點,例如一個 cache bound 的程式跟其他比較耗費 CPU 計算的程式一起執行時,將程式綁定在特定的 CPU 核心可以減少 cache miss 的狀況。另外在兩個行程頻繁的藉由 shared memory 進行溝通時,將兩個行程都綁定在同一個 NUMA 節點中也可以增進執行效率。

這裡我們會以 Linux 系統為例,介紹如何在 Linux 系統中將一般的程式綁定在一個選定的處理器核心中執行。

Face Your Manga:製作卡通大頭貼(漫畫風個人頭像)的線上工具

Face Your Manga 是一個可以讓你線上製作漫畫風個人頭像好用工具,非常有趣!

如果你的 Facebook 或 Google+ 的大頭貼不想放個人的實際照片,那麼就可以考慮用 Face Your Manga 這個線上工具製作一個屬於自己的大頭貼。

雖然它是一個卡通造型大頭貼設計工具,但是可用的組件超乎想像的多,每個人都可以依照喜好自由設計,也不用太擔心製作出來的大頭貼會跟別人一樣。

Face Your Manga -- 製作卡通大頭貼

進入 Face Your Manga 的網站後,直接點選左上角的「Create」就可以開始動手設計了。首先選擇性別。

C 程式語言相關的面試問題與解答

這裡整理一些 C 程式語言相關的面試問題與解答,除了可以讓你增強 C 程式語言的能力,對於面試可能也有幫助。


gets() 函數

下面這段程式碼中有一個問題,你能找出來嗎?
#include<stdio.h>
int main(void) {
  char buff[10];
  memset(buff, 0, sizeof(buff));
  gets(buff);
  printf("\n The buffer entered is [%s]\n", buff);
  return 0;
}

答案
這裡的問題出在 gets() 函數的使用,這個函數會從 stdin 中讀取字串,但是卻不會檢查緩衝區的大小,這有可能會造成緩衝區溢位(buffer overflow)的問題,改用標準的 fgets() 函數會是個比較好的方式。

線上電子書轉檔工具(支援 EPUB、MOBI、PDF 等)

這裡介紹如何使用線上電子書轉檔工具轉換電子書的檔案格式。

Book

許多的電子書閱讀器都有支援某些特定的電子書格式,有時候拿到的電子書格式如果自己的閱讀器沒有支援,就無法觀看,例如常見的 EPUB 格式電子書就沒辦法用亞馬遜電子書閱讀器 Kindle 來看。

當碰到這樣的問題的時候,可以使用一些線上的轉檔工具,幫你把電子書的格式轉換成閱讀器可以支援的格式。

程式設計師面試時會碰到的十種常見問題

這裡是整理了一般程式設計師面試時會碰到的十種常見問題。


如果你是一個資訊背景的人,在面試程式設計師職缺的時候,通常會跟一般的技術職缺有些不同,這裡整理了十個很常見且應該要避免的問題。

沒有在紙上或是白板上寫程式的經驗

這是應徵者常會犯的毛病之一,一般的面試常常會使用紙筆或是白板讓應徵者作答,許多應徵者的程式設計能力很好,但是卻沒有這方面的經驗。

一個只會在電腦上使用 IDE 寫程式的人,突然被要求使用紙筆寫程式,會是一件有困難的事情,再加上這個場合是在面試,不是在自己的家裡,在如此緊張的氣氛中更加深了它的難度,而且在沒有編譯器的情況,面試者無法靠著編譯器幫他除錯,也會讓程式中很容易參雜一些平常不會注意到的錯誤。

第一次使用紙筆寫程式是有些難度的,我自己本身也有類似的經驗,在大學的時候修習系上開設的程式設計課程,平常上機的小考我都是輕鬆拿滿分,結果碰到期中的大考突然要在考卷上寫程式,一時之間還真的不會寫,考出來的成績就不是很理想。

建議如果沒有使用只比寫程式經驗的人,在面試之前可以自己在家練習一下,以免碰到類似的窘境。

在未來資料科學家與使用者經驗設計師將會是兩大熱門的工作職缺

奇異公司(GE)的高級副總裁兼首席營銷官貝絲康斯托克,談論其公司如何利用設計(design)來打造其所謂的工業網路(industrial internet),進而改變我們的工作形態。


奇異公司與設計這兩個東西乍看之下是不太相關的,但是在各種工業產品、醫療器材、家庭應用到網路等等範疇,都跟設計有關係,再加上現在時代的潮流影響,以致於奇異公司現在也正在關注設計這個議題。在今年 Roadmap 2013 的研討會上,奇異公司的高級副總裁兼首席營銷官貝絲康斯托克(Beth Comstock)解釋了該公司如何設計機器的處理流程與使用者介面,讓機器與操作者在工作上都可以發揮最好的效能。

如何在程式中不使用暫存變數交換兩個變數(適用於 Java 與 C/C++ 等語言)

這裡說明如何在程式中不使用暫存變數(temporary variable)交換兩個變數,這個問題也是面試時常問的問題。


在 C/C++ 與 Java 等程式中,如果要將兩個變數所儲存的值交換,最簡單的方式就是使用一個暫存變數,例如若要將 ab 兩個變數交換,則可使用:
tmp = a
a = b
b = tmp
其中 tmp 就是一個暫存變數,而這樣的方式也是最簡單、最直覺會想到的方法。但這裡會多使用到一個暫存變數,是否有辦法不要使用額外的 tmp 變數,就將 ab 交換呢?這個問題是許多程式設計面試時會問到的問題,以下有三種解決方法。

Google 推出全新 Helpouts 線上專業諮詢服務

Helpouts 是 Google 最新出的線上服務,使用者可以透過這項服務進行線上一對一的教學課程或專業諮詢。

Google Helpouts

Google 在本週二發表了其最新的服務 Helpouts,它算是一種媒合服務,這個平台上面提供了各式各樣的老師與專業人士,專門進行各種問題的教學課程或諮詢服務,使用者可以在者裡找尋自己喜歡的老師,詢問各種問題,例如居家修繕、烹調、電腦、身體健康等,應有盡有。

將 Mac OS X 免費更新成最新版的 Mavericks(10.9)

這裡介紹如何將舊的 Mac OS X 升級成最新版的 Mavericks,這是第一次 Apple 讓 Mac OS X 免費升級!

OS X Mavericks

一開始我還以為我眼花了!現在 Apple 竟然讓 Mac OS X 的使用者「免費」升級作業系統,只要你的 Mac 電腦是下面列表中的其中一種,就可以使用這次的免費升級:
  • iMac (2007 年中或後續機種)
  • MacBook (2008 年底鋁金屬機種,或 2009 年初或後續機種)
  • MacBook Pro (2007 年中/年底或後續機種)
  • MacBook Air (2008 年底或後續機種)
  • Mac mini (2009 年初或後續機種)
  • Mac Pro (2008 年初或後續機場)
  • Xserve (2009 年初)

在 Mac OS X 中擷取螢幕畫面(螢幕快照)

這裡教大家如何在 Mac OS X 擷取螢幕畫面,包含整個桌面或單一視窗。

使用快速鍵擷取

在 Mac OS X 中,若要擷取螢幕畫面有好多種方式,最方便的就是利用系統的快速鍵。

如果想要擷取整個桌面的畫面,可以使用 Command + Shift + 3(按住 CommandShift 鍵不放,並同時按下數字鍵 3),這樣系統就會把整個桌面的畫面擷取下來,儲存成一個 png 檔放在桌面上,而其檔案名稱則是以日期與時間來命名,例如:螢幕快照 2013-11-05 上午7.39.32.png,下面這張圖就是擷取整個桌面的結果。

Mac OS X 桌面

使用 Google Chrome 下載 Facebook 影片 -- 不需要安裝任何擴充功能

這裡介紹如何使用 Google Chrome 來直接下載 facebook 影片,而且不需要安裝任何擴充功能。

有時候我們在 facebook 上看到喜歡的影片,想要把它下載下來,但是 facebook 有沒有提供下載的功能,這時候就可以從瀏覽器的快取中尋找這種影片檔,這裡我們以 Google Chrome 瀏覽器來示範如何下載 facebook 的影片。

Step 1
首先開啟 facebook 上想要下載的影片,然後先把整段影片看完,記得要從頭看到尾,這樣才能讓瀏覽器把完整的影片都下載來。

數學家的眼睛看世界是什麼樣子?

這段影片可以讓大家了解數學家的眼睛看世界是什麼樣子?


影片分為三部分,右邊是一般人看到的自然景象,而中間是各種專業領域的學者在腦袋裡浮現的圖,但如果是一位數學家,他除它除了可以看到中間的圖形之外,他還可以知道左邊的公式!

這是 Betrand Russell 說的一段話:
Mathematics, rightly viewed, possesses not only truth, but supreme beauty — a beauty cold and austere, without the gorgeous trappings of painting or music.

Digital Attack Map:全球即時 DDoS 網路攻擊監控地圖

這是一張全球的分散式阻斷服務攻擊地圖,在這裡你可以觀察及時的狀態或是從過去的資料來研究攻擊時的狀況。


分散式阻斷服務(distributed denial of service,簡稱 DDoS)攻擊,是一種現今網路上常見的攻擊手法,這種攻擊是透過各種方式控制網路上已經被攻陷的殭屍電腦(zombie computer),向某一特定的目標電腦發動密集式的「拒絕服務」式攻擊,藉以把目標電腦的網路資源及系統資源耗盡,使其無法向真正正常請求的使用者提供服務。

Google 倫敦辦公室:佔地一百萬平方英尺、高級豪華的工作環境

這是 Google 預計在 2016 年會開放的倫敦辦公室,是一個佔地一百萬平方英尺、高級豪華的工作環境。

Google 倫敦辦公室

Google 最新的倫敦辦公室預計在 2016 年開幕,不改 Google 的一貫作風,裡面的各種硬體設施都讓人為之驚豔,露天游泳池、室內足球場、攀岩牆與空中花園,到處都有意想不到的設計。

Parole -- 輕巧的多媒體播放器

Parole 是一個專門為 Xfce 桌面所設計的多媒體播放器,對於一般只是單純看影片的人很好用。

Parole 多媒體播放器

Parole 是一個小巧的影片播放器,可以播放本機的檔案與 DVD/CD,也支援字幕顯示,更可以直接觀看線上的 live stream,另外也有一些 plugin 可以擴增它的功能。

Parole 最近釋出最新的 0.5.90 版(事實上這是 0.6 版的前身),改善了 GStreamer 1.0 的支援,也完全移植到 GTK3,並且加入了看起來很高級的控制列。

各種作業系統與應用程式的程式碼規模比較

這張圖顯示了各種應用程式的程式碼規模比較,有些可能超乎你的想像。

這張圖統計了各式各樣的作業系統與應用程式的程式原始碼行數,雖然每個程式設計師的習慣不同,也會造成程式碼統計的一些差異,但大致上還是可以看出每個程式的規模在哪一個數量級,以及不同程式間的差異。

首先是十萬行這個等級的程式,一般的手機 App 與一些應用程式在初期發展時,都是在這個範圍,例如 1990 年的 Photoshop v1.0 大概只有十幾萬行的原始碼。

使用 Xfce Theme Manager 調整 XUbuntu 桌面佈景主題

這裡介紹如何安裝與使用 XFCE Theme Manager,調整 XUbuntu 桌面佈景主題。

在一般的 Xfce 的桌面環境中,並沒有提供一個整合性的佈景主題調整工具,系統中有好幾個設定工具分別負責不同的設定,而且也沒有提供預覽的功能,你在選擇佈景主題時只能先套用之後才能知道它長的怎麼樣。

如果你是常常會想更換佈景主題的人,使用 Xfce 內建的設定工具可能會很不方便,建議可以改用 XFCE Theme Manager 這個佈景主題管理工具,以下介紹這個工具如何安裝與使用。

sudo add-apt-repository ppa:rebuntu16/other-stuff
接著更新 apt 的資料庫之後,再用 apt-get 安裝:
sudo apt-get update
sudo apt-get install xfce-theme-manager

Lucidpress -- 免費且專業的線上排版軟體

Lucidpress 提供了一個專業的線上排版服務,你可以用這個免費的雲端服務製作出各式各樣專業的版面。


在以往的專業排版多半都是使用一些專用的軟體來進行,例如微軟的 Publisher 等,而這類的軟體通常都是設計給專業人士使用的,操作方式比較複雜,一般人若要使用不是那麼容易,而此類軟體的價格通常也不低。

現在 Lucid Software 這家以雲端服務為主的公司推出一項免費的線上排版服務 Lucidpress,比起傳統的排版工具,他更適合一般的使用者來使用,甚至只需要使用滑鼠的拖拉就可以設計出專業的排版效果。