Posts

Showing posts from 2013

CSS3 Zebra striping table

Image
CSS3 提供針對表格 <table> 裡子集合(某一行、某一列) 設定樣式,關鍵字 nth-child,語法如:
th:nth-child(2n+1) { . . . }
th / tr / td 均可

小括弧 中間運算式(2n+1): 2n 表示除以 2,+1 表示 餘 1,(2n+1) 表示符合除以2餘1的範圍。運算式舉例:純字


(1), (2), (3)…: 第幾行或列 倍數 (2n), (3n), (4n) … : 每隔 n 行 倍數+數字 (2n+1), (3n+1), (3n+2)…: 每隔 n 行再加幾行

兩碼的網域清單

兩碼的網域通常是代表地方機構或國家,列出目前所有兩碼的網域。不過這些網域並不限制只能在當地使用,像 Google 縮短服務的網站 http://goo.gl/ 就是使用格陵蘭(GL)網域,可以試著組合公司、產品的名稱,例如筆者想到一個超酷的網址 rob.in,可惜太遲現在當然買不到。查詢/購買 較偏門的網域名稱,可以到 http://www.onlydomains.com/domain-names/domain-registration

iFit 愛瘦身成功之道

Image
愛瘦身粉絲團,創團於2012年7月20日,初期尚未有官網 (可能是2013年1月建置),以 facebook 做導購,Google 問卷做線上訂購單,目前粉絲總數43萬人,公司 20 位員工,最引人注目數字是每月營收約達 700 萬。 很好奇這位創辦人艾莉絲 (1987年生) 是如何做到 ?
團主以親身瘦身成功經驗,算是很有說服力。但瘦身成功者不在少數,如何在一年半內變成月營收 7 百萬的電子商務,這就很不容易。
很可惜,錯過了她上次來高雄的創業分享,11/02 活動的連結。個人從她的粉絲團 與 官網 做個案分析。

Google Form with email notification

在 Google 建立好表單(問卷調查表),發送給使用者填寫,若希望當使用者送出表單後,可以發送 Email 提醒,這功能得需要稍微動手設定一下。
先說明一下,在 Google 雲端硬碟中建立表單(Form),使用者填寫的資料會儲存於另一個試算表檔案中。建立表單有兩種方式:
直接建立一個表單,之續選擇回應的目的地,可再建立新的試算表。先建立試算表,透過 [工具] > [建立表單] 完成上述動作後,開啟試算表,進入 [工具] > [指令碼編輯器],按以下兩步驟即可完成
貼上程式碼,請參考設定啟動程序,請參考 將原作者提供的程式碼,混搭所有功能後的版本,請參考

使用 Bootstrap 建置雛型網站 2

Image
前文 <使用 Bootstrap 建置雛型網站> 可以逐步完成一個具功能性的雛型網站,但若想要進一步改變外觀主題,也就想更換 template, style, theme <--- 這裡指的都是同一件事,以下都稱 Theme。
按前文的精神,希望找到一個方法,可以不需要依賴網頁設計師,也可以自行做到。

更換 Bootstrap Theme

Image
前文 <使用 Bootstrap 建置雛型網站> 可以逐步完成一個具功能性的雛型網站,但若想要進一步改變外觀主題,也就想更換 template, style, theme <--- 這裡指的都是同一件事,以下都稱 Theme。
按前文的精神,希望找到一個方法,可以不需要依賴網頁設計師,也可以自行做到。

高雄App創意聚焦論壇 2013

Image
2013年的高雄App創意聚焦論壇於 10/30 在高雄軟體園區舉行,當天的 議程 區分下上半場,上半場是專家論壇,下半場是 10 家新創團隊的 Demo show。本文摘錄專家論壇三位演講者(之初創投 程九如、LINE 陶韻智、Hiiir 時間軸科技 葉建漢)的內容。

使用 Bootstrap 建置雛型網站

Image
Bootstrap 是一套網站前端的框架,目前對此框架的評價很好,被許多網站採用 (以Bootstrap建置的案例),需要為愛上Bootstrap找理由?就在眼前
框架內容包含 HTML5, CSS3, jQuery 等檔案組成,至於從官網 下載 整包檔案後,要如何形成網站,還是得靠網頁設計師才行吧 !? 噗 ~~~

不過,透過第三方工具能讓這一步走得容易些,本文所介紹的工具與操作方式,相信對於 Bootstrap 新手或不熟悉 HTML5 語法的朋友,可以較容易上手。
期許也能讓專案經理、程式開發人員也自行完成建構 (漂亮的) 雛型網站。

MOPCON 2013 notes

Image
MOPCON 是專注於行動軟體開發 / 應用技術之專業研討會,也是南部最大社群研討會。2013年於 10/26 ~ 27 在高雄國際會議中心舉行,這是 MOPCON 第二年舉辦,今年的 議程 中分三廳進行,除了四場 Keynote 外,同時段有三堂課可以選擇,有兩廳以技術為主,有一聽以營運為主。營運主題的場次亦適合非程式開發人員,大多是邀請新創公司或App獨立開發者擔任講者,分享其創業或開發App獲利的方式。對於幾堂創業分享課程印象深刻,能現場聆聽 Startup 創辦人的分享,瞭解他們經實創業的過程,讓人也跟著熱血起來。演講者的陣容很堅強,其中有不少特別從國外來的演講者,如:Amazon Web Service (兩位阿豆仔),PTT批踢踢創辦人。另外像 TonyQ (JSDC核心成員),Sega (iKala SEO) 也都是曾拜讀過他們的文章。

KSDG #2 jQuery Mobile + PhoneGap

KSDG 第二次聚會於 2013/10/11 在高雄軟體科學園區舉辦,活動資訊。 當天有兩個主題:jQuery Mobile 與 PhoneGap。 Query Mobile 是一個專為 Mobile 所設計的 Web 前端 Framework,套用其框架可以設計出在個種手機上均看到相同的 Web畫面。
PhoneGap 是將 Web 程式轉為各種各種手機的 App, 包括: iOS, Android, WP, FireFox ... 等六種平台,功能與效能上不比原生語言所開發的 App。其最大優勢是撰寫一次 JavaScript 的 Web 程式,就可以轉生成六種平台的 App。
未來有 Mobile App 需求例如:網站活動、企業內資料查詢...等應用,可以嘗試選擇合併搭配這兩種技術或單以 jQuery Mobile。

解決搜尋引擎查不到網站

Image
接獲一個挺新鮮的任務,客戶反應:自家的高雄市民政局官網 http://cabu.kcg.gov.tw,Google 可以找到但是 Yahoo 卻找不到。本文記錄一下前前後後約一個月(9/12~10/14) 的處理過程。先提一下 Yahoo 搜尋目前是採用微軟的 Bing 搜尋引擎,原問題修正為:Google 有找到,但 Bing 找不到。

如何修正 VOB 檔案的播放時間

Image
將影片檔 *.vob 上傳至 Windows Azure Media Service,經編碼後有時會發現影片的長度變短,影片還沒播完便提前結束。造成此問題的可能是當時錄製影片過程中,有按下暫停後再錄製等動作,導致在 Windows Azure Media Service 編碼時誤判影片的結束點,這個問題目前已向 Windows Azure forums 提出。尚未獲得正確解決方法前,筆者實驗發現,透過轉檔工具 (Avidemux、格式工廠) 先將原始 *.vob 轉碼輸出,可修正此問題。

Windows Azure Media Service Training

Image
這是公司2013-10月份第一週教育訓練的文件,本次主題是:Windows Azure Media Service 程式開發。課程綱要:
申請試用 Windows Azure 。 Windows Azure Media Service 簡介。 使 SDK 進行程式開發。 專案分享:jn-math.com。

jQuery plugin 顯示 facebook 粉絲團照片

Image
接續前文<<jQuery 顯示 facebook 粉絲團照片>>,修改原本的 jQuery 加入動態產生標籤與CSS,讓使用端更為簡單。
第一撰寫 jQuery plugin,主要是參考:[jQuery] 自製 jQuery Plugin - Part 1,這文章寫得很詳盡,推薦 !!
筆者已將 jQuery 及相關檔案上傳至 Windows Azure 網站上,可選擇以下兩種方式使用。

jQuery 顯示 facebook 粉絲團照片

Image
透過 facebook Graph API 可以 取得/設定 粉絲團的資訊,官方 API 說明文件( https://developers.facebook.com/docs/reference/api/page/ ),寫得很詳細,看過卻不知如何下!! 筆者前後也瞄過好幾次,但總是不得其門而入。
近日工作上遇到一個需求要在其他網站上顯示粉絲團相簿。同事幫忙找到範例程式,以 jQuery 解析 json 文檔後,呈現在網頁上,對於 jQuery 與 facebook API 兩者均生疏,趁此機會一併熟悉。

TechDays 2013 上課筆記匯整

Image
TechDays Taiwan 2013 上週已結束,稍整理一下所有上課的筆記。原本出發前預訂的課表,在前面幾堂課聽講師推薦相關課程,便臨時修正計劃。不過,也因為是以公司經費參加,選課原則是以近期最有幫助的技術課程為首選。課堂筆記筆者計參加 Keynote 及 15堂課,各堂筆記如下:

如何 Google 行事曆嵌入網頁

Image
本文是說明將 Gmail 日曆如何分享嵌入自己的網站或部落格中。創建網站或部落格時,想要建立一個活動公告日曆,若原本系統並無此功能時,可以藉由 Google 日曆嵌入HTML的方式得到相同結果。2011年筆者曾自製分享 王建民MLB出賽行事曆,並持續維護一段時間,今日竟一時間找不到如何取得嵌入HTML的語法,將操作步驟詳細列出。

Windows Azure 企業帳務 - 付款與發票

Image
訂閱 Windows Azure 預設是以信用卡繳款,台灣地區微軟會主動開立二聯式發票。透過 [建立支援票證] Support Ticket 提出需求,經由台灣微軟技術支援工程師協助,可以的調整為 發票付款(月結轉帳) 或 三聯式發票。
發票付款的付款條件:30 天到期,僅限以新台幣付款。轉帳時最好備註 Micorsoft Account ID。

如何取得IIS記錄檔

Image
IIS 記錄檔在不同版本的作業系統中儲存位置並不相同,以下是在 Windows 2003、2008 如何找到網站記錄檔儲存的位置。

Windows Azure Media Service Step by Step

Image
本文純脆是一份操作說明,針對 Windows Azure 所提供 Media Service 基本操作,從 上傳檔案 >  編碼 > 發行 >  (測試)使用串流影片。
當然前 3 道動作都可以程式化( Media Services .NET SDK ) 完成,這部份另章分享。

SQL Server 壓縮初始檔案大小

Image
通常客戶端建立資料庫以效能考量,會將資料庫檔案初始大小做設定(或許幾個GB),當要移植做測試資料庫,回到自家 SQL Server 時都需要瘦身一下。建立資料時會設定初始的大小,若遇到建立過大的檔案,事後想縮小檔案。

Windows Client 檔案上傳範例

這個範例有 Client 與 Server 兩個專案1. Client 傳送端:Windows Form 專案,將多個檔案與POST資料彙整後,透過 httpWebRequest 做上傳程序。2. Server  接收端:ASP.NET 網站 ,以泛型處理常式 (.ashx) 撰寫接收檔案與參數。程式碼主要是參考 stackoverflow 這篇討論: Upload files with HTTPWebrequest (multipart/form-data) 修改而來的。

Windows Form TextBox UI 調整

Image
近日著手修改 Windows Form 專案中,執行程式與視覺設計的原搞差很大,其中以 TextBox 為例有以下要求:A. 所有採用控制項採用相同字型與顏色B. 可輸入的TextBox    (1)其邊框顏色是…    (2)取得焦點時背景顏色是…    (3)離開焦點時背景顏色是…C. 不可輸入的TextBox    (1)其邊框顏色是…    (2)背景顏色是…

[LINQ] 比對兩個目錄有新增的檔案

筆者做 Desktop 程式線上更新時,常會需要整理本次新增的檔案(DLL, 圖片, 聲音),先複製到另一個目錄下,在壓縮 Zip 後上傳到自行開發的 Update Server 上。

NuGet Package Metadata 編輯欄位對應

Image
本文將 NuGet Package Explorer 編輯與 IDE 中顯示的欄位做一個對照,未來新建立套件時有個依據。
我曾發生一個狀況,明明 IDE [管理 NuGet 套件] 中標題看到兩行文字,但在 NuGet Package Explorer 卻找不到 ??

IIS 虛擬記憶體設定

Image
曾在 2011 年發生過的老問題,關於 IIS 回收與記憶體設定的問題。IIS  回收條件中會其中一項是是關於記憶體部份,這設定值若太大,反而會造成自動回收失敗,導致須要手動進行回收。主要原因是回收時,需要相同虛擬記憶體大小的 Buffer,才能順利進行。

{範例} Windows Pass Json to Asp.net

Image
這個範例原始開發環境是 Visual Studio 2010  + .NET Framework 4主要程序有:透過 DataContractJsonSerializer 將 Json字串 與 物件做序列化與反序列化 以 Asp.net 泛型處理程序(*.ashx) 做為介面 <---- 應改要 Restful 才對…模擬消費端採用 Windows 專案進行存取。

ASP.NET Clean page base

public class CleanPage : System.Web.UI.Page
{
public override string StyleSheetTheme
{
get { return ""; }
set { }
}

protected void Page_PreInit(object sender, EventArgs e)
{
this.EnableViewState = false;
this.ViewStateMode = System.Web.UI.ViewStateMode.Disabled;
this.Theme = "";
}

public CleanPage()
{
this.EnableTheming = false;
this.ViewStateEncryptionMode = System.Web.UI.ViewStateEncryptionMode.Never;
}

}

開啟 TeamViewer,接受遠端登入

Image
TeamViewer_V8.0.16447 為例,在官方網站上可以下載安裝程式,免安裝也可直接執行。依序完成下列步驟後,可以接受從遠端另一部機器連上來。

微軟實戰課程日-筆記

這是個人參加 2013/5/4 微軟實戰課程日的筆記。

以網頁傳遞訊息遠端機器的應用程式中(exe)

Image
一般網頁在瀏覽器端執行時,不能直接傳遞訊息至本機端執行中的應用程式,或是另一部機器執行中的應用程式。筆者遇到的案例是,由第三方所開發的PHP網頁執行某個動作時,希望將訊息傳達至某一部機器上正運行的應用程式(.NET Windows Form)。原本作法是在 Windows Form 上建立一個輪巡式呼叫 PHP 提供的另一個網頁, 這樣作設計上還矕單純的。

Silverlight call WCF(tcp) self host 實作

Silverlight 呼叫 WCF 服務時,會先連結服務主機 PORT:80 上,檢查 clientaccesspolicy.xml 上
的 crossdm domain 規定,若是將 WCF 服務部署在 Web server 上,只要建立一個實體檔案置於對應的目錄上就完成了。但是,若是以Windows Form 或 Console 應用程式啟動服務時,clientaccesspolicy.xml 要如何
讓 Silverlight 找到?

Call By Value 與 Call By Reference

Image
學 C# 的第一天起,就深植了這個印像:參數若是數值是 Call By Value,
若是物件則是 Call By Reference。
較精確的說法:
C# 的參數有數種傳遞方式,包含傳值參數 (call by value),傳址參數 (call by reference) 等,基本型態的參數,像是 int, double, char, … 等,預設都使用傳值的方式,而物件形態的參數,像是 StringBuilder,陣列等,預設則是使用傳址的方式。
以上摘錄自: http://cs0.wikidot.com/function
But, 筆者遇到一個看似推翻上述的案例,使用 Lambda Expressions 傳入數值,竟然是以 Call By Reference 方式。

程式產生器 : 圖片目錄轉為資源組件(DLL)

Image
在 WPF 專案中,動畫會大量使用圖片檔案,預設圖片會直接與原本的專案合併,一來導致產生的組件檔案過大,二則程式邏輯與圖片檔案維護分工不易,日後任一更動,整個組件就得重新封裝。WPF 程式與圖檔關連,開發時可以選擇幾種不同分式程式與圖檔合併產生一個組件 (Visual Studio 與 Blend 預設採用) 程式產生組件,圖檔儲存於本機的實體檔案目錄中 程式與圖檔分別產生為不同組件

我家的福特汽車會對香草冰淇淋過敏

Image
Google 輸入關鍵字:福特 香草冰淇淋,可以搜尋到不同版本的故事,以下轉摘自: 讀書網

一天,美國福特公司客服部收到一封客戶抱怨信,上面是這樣寫的: “我們家有一個傳統的習慣,就是我們每天在吃完晚餐后,都會以冰激凌來當我們的飯后甜點。但自從最近我買了一部你們的車后,在我去買冰淇淋的這段路程上,問題就發生了。每當我買的冰淇淋是香草口味時,我從店里出來車子就發不動。但如果我買的是其他的口味,車子發動就順得很。為什么?”

Two-tier 轉為 three-tier 自動化轉換實例

Image
2 tier to 3 tier 筆者近期遇到一個案例,原本系統架構是 Windows Form 直接連接資料庫進行存取(如下圖左),
如今要在介面層與資料處理層間加入Web層(如下圖右)。



使用反映(Reflection)讀取組件的資訊

續前一篇 Two-tier 架構改變成 three-tier,確定實作方法後,評估實作的工作量可不小,針對一個既有的資料處理類別,得對應寫出:1. 新增一個 Interface2. 新增一個 Proxy 類別,實作上面的 Interface3. 新增一個 Web Service 而這些撰碼的過程,大部份都是 Copy-Paste 動作 或 很機械式的修改筆者想到透過 Reflection 讀取原本的資料處理類別,就可以分別產生另外三組程式碼。

Two-tier 架構改變成 three-tier

Image
筆者近期遇到一個案例,原本系統架構是 Windows Form 直接連接資料庫進行存取(如下圖左),
如今要在介面層與資料處理層間加入Web層 (如下圖右)。
筆者實作的想法是:1. 新增 Web Service 專案,使用原本Data Access Library 存取資料庫2. 新增 Interface 專案,將原本的資料處理類別逆向產生 Interface 3. 新增一個資料代理類別層,並實作上述所有介面,實作方法就是直接呼叫Web Service4. 參考MSDN : ConfigurationElement Class 將要實例的類別填在組態設定檔,
     UI 層讀取組態設定檔透過 Activator 產生資料處理物件。

Picasa 網路相簿分享連結

Image
Picasa 相簿與 Google + 整合後,
從分享相簿的連結點擊進入會是 Google + 的畫面,
若想直接進入原本 Picasa 網站,
可以在分享的網址後面加上 "&noredirect=1"

{範例} SQL資料庫的圖檔匯出至檔案目錄

Image
筆者曾在系統建置時,將使用者上傳得圖片或附加檔案儲存至SQL Server中,之後客戶欲從檔案總管中取得所有檔案,當初系統未提供此供能。本想找看看有工具可以直接轉出,並未尋得。只能動手寫個簡單的匯出程式,若有遇到相同狀況者,也可以下載直接使用。

No1 Question is

請不斷的問自己:我幫使用者解決了什麼問題?我到底幫使用者解決了什麼問題?
做 App 之前得先思考:
你的使用者是誰?你的早期使用者是誰?中期使用者?長期使用者?他們都有怎樣的特徵?(e.g. 性別、年齡、收入、居住地區、興趣、婚姻…)你可以在哪裡抓到他們?他們有哪些共通的問題?你幫他們解決的又是其中哪些問題?你如何確定這些問題實際存在?這些問題有多麼困擾他們?他們願意付錢解決這個痛苦嗎?在沒有你的產品之前,他們都如何解決這個問題?原本的解決方案的優點是什麼?缺點又是什麼?人們都花多少錢在這些原本的解決方案上?你知道什麼事情是原本那些解決方案提供者所不知道的?為什麼原本的解決方案提供者不知道這些事情?為什麼原本的解決方案提供者不修正他們的缺點?這個問題是因為使用了某個產品/服務而造成的嗎?這個產品/服務的生命週期如何?能夠等待/支撐你的解決方案嗎?

原文在這


OneNote 編寫的版本歷程

Image
Office OneNote 2013 針對每一頁面編輯的過程,會依日期留下記錄,日後可以尋找舊版本並可還原為目前的內容。在 OneNote 中瀏覽某一頁面時,可以點擊 [HISTORY] > [Page Versions],頁面清單中會列出各版本的日期與編輯者。還原作法,在想還原的版本日期按右鍵,點擊 [Restore Version],即完成。PS:筆記本軟體 Evernote 也有提供版本控管,目前需要付費才擁有此功能。http://evernote.com/premium/

會議準備與主持

準備作業: 

會前請檢視以下項目 瞭解議題、簡報或文件、與會人員 此三者不對稱時要先做處置再進行簡報 開會前與主持人確認議題 事前與或電話瞭解關鍵使用者 包括內部業務窗口 
進行重點: 

手機勿開 即時通訊軟體(MSN)勿開 節奏放慢,詢問,互動 單一主題逐一說明後 記下重點 掌控會議主軸 使用者的反應 說話節奏 聚焦 條列討論問題 酷炫簡報或工具(Office 2007)有加分效果 依會議類型採不同進行方式 如需求訪談是要請使用者盡情發言, 而成果展示或教育訓練最好能藏拙 (可以事前準備操作腳本) 



會議結束之後 

重點整理 待處理事項