TechDays 2012 隨堂筆記 0919
0 |
【Windows to Go】
- 精準定義: 將Windows 8企業版安裝在認證過的隨身碟上帶著到處走
- 應用情境:
- 方便攜帶,不帶NB也能在其他地方使用"自己的作業系統" (比帶NB輕巧,但個人以為此點說服力較弱)
- 臨時性人員 / 無固定座位
- OS故障時進行救援(Windows to GO功能比Windows PE完整, 甚至可用Office)
- 在不干擾原安裝OS的狀況下進行測試
- Work from Home: "把公司電腦帶回家"
- 硬體需求:
- 主機Win7/Win8認證
- CPU > 1Ghz, RAM > 2G, 顯卡支援DirectX 9及WDDM 1.2, USB 2.0/3.0
- CPU: x86/x84(不支援IA64及ARM)
- 需要能從USB開機
- Windows to Go隨身碟規格
- 必須為USB3.0
- 插入電腦時,需顯示為內接式磁碟,而非卸除式磁碟
- 建議至少32G(Win8裝完就用掉15G)
- 讀寫速度要夠快(Write > 40MB/s, Read > 60MB/s)
- 要通過"微軟Windows to Go認證",目前有兩家廠商: Kingston, SUPER TALENT
- 未認證USB碟也可裝Windows to Go,但官方不提供技術支援及效能保證
- 建議使用BitLocker加密(BitLocker在Win7時代若電腦無TPM晶片,開機時需插有Recovery Key的隨身碟,Win8取消此限制,可透過輸入密碼方式解密,才不會受限硬體)
- 隨身碟當磁碟的效能分數沒想像中差: SSD 7.8分, USB 3.0隨身碟可達 6.5分,沒輸太多
- 建立Windows to Go(Windows 8 企業版)
- 尋找pwcreator.exe 或由 控制台 找到
- 可使用企業客製的Image
- 建議使用BitLocker維護安全
- 製作過程約需20分鐘
- 搜尋windowstogo –> 變更Windows to Go開機選項(將BIOS設為由USB開機)
- 也可以使用PowerShell完成相同工作 (沒有Windows 8企業版時)
- 實際使用:
- 第一次使用會抓硬體,裝Driver,設電腦名稱、帳號
- 之後移到其他台,一樣會抓硬體裝Driver,然後進OS
- x64無法在x86硬體下開機
- 同時支援BIOS及UEFI開機(需要一個Partition 350M FAT32 for 開機)
- 預設Windows to Go Partition "No Default Driver Letter",防止麻瓜使用者誤殺其中檔案
- 用Windows to Go開機時,也不會顯示原PC內建硬碟的檔案(磁碟預設成離線)
- 如果使用到一半把USB拔掉? Hang住60秒等待插回,逾期就停機斷電
(把操作到一半的資訊清理掉,防止機密外洩) - 大量部署: SCCM 2012 SP1部署、USB對Copy機器、Group Policy…
- 授權方式: 建議用KMS,180天內連回公司Refresh即可, 若用MAK綁硬體,一換機器就要重新啟動
- Windows to Go預設停用Windows市集。因為有些App會鎖硬體ID,換機器會造成困擾
- 預設休眠停用、睡眠啟動 (有方法可以改設定)
- Tips: 在資料夾上按右鍵設定,可將其導到SkyDrive上
- USB碟注意事項:
- 關機後再拔USB碟
- 不要經過USB Hub
- 建議USB 3.0,最好要認證過
【VS2012 Launch】
- Modern App (原Metro Style):
三大要素User Experience(UX)、Multiple Devices and Platforms、Access to Cloud - VS2012三項重點: Windows Store App開發、HTML5、Scrum!
- Search Contract(搜尋合約): 實做特定介面,讓Windows 8可以不開啟App就用關鍵字搜尋App內容
- XAML: Blend與Visual Studio聯手編輯 (寡人以為把Blend整進VS才是最高境界)
- 模擬器: 可模擬不同解析度下的檢視結果、觸控操作、垂直水平翻轉、GPS位置
- 精彩示範: 將現成jQuery UI俄羅斯方塊網頁轉成Windows市集App
- Modern App的Build Target: x86, x64, ARM, Any CPU
- Windows Store上架時可選擇發行到哪些國家市場(230個), 103種語言, 75種計價幣別
- Windows Store App大募集活動: 首奬為Win8平板電腦,熱血青年衝吧!
- 凌網科技分享為城邦分開發的Win8版隨身e冊經驗(之前已有Android、iOS、WP7開發經驗)
- 觸控放大縮小翻頁 / App Bar供滑鼠操作
- 開發資源: Templates、API文件、模擬器功能完善... 相較於其他平台開發時間縮短很多
- 在Win App中async, await很好用
- 針對較簡單的應用程式,採用HTML5開發,可以用低廉開發成本達到跨行動裝置的目的
- Responsive Web Design: 同一個網頁在不同的解析度下自動調適成適合Layout
- VS2012新支援: jQuery Mobile、-moz-*, –webkit-*自動補完、單鍵部署到Azure
- 上官神人"博命演出"完全Live Demo
- 使用MVC jQuery Mobile Project
- VS2012支援iPhone模擬器檢視
- CSS顏色設定時可自動帶出Color Picker
- CSS輸入transform按Tab兩次,自動展開moz, o, webkit, ms的對應版,修改時會全部連動更新
- NuGet下載Azure ServiceBus元件
- 從Azure網站下載Profile,匯入專案中,直接部署到Azure
- 現場開放
鄉民大家用手機連到剛部署的網站丟訊息投影到大螢幕(連"釣魚台是我們的"都出來了,好有Open Source Community的歡樂fu) - 聯詮資訊分享Win8版戰情系統: 採用HTML5的心路歷程,想低成本跨平台,兩年前iPad一代時效能偏慢,但在新式硬體上已接近PC表現
- 博暉科技分享VS2012 ALM Scrum電子白板功能
- 軟體改版週期愈來愈短!!
- 美國有4成開發團隊採用Scrum
- VS2012 TFS對Scrum支援更加完整
- Scrum術語: Iteration、Backlog、User Story、預測、白板(New/Active/Closed三種狀態,模擬便利貼,改工時拖拉改狀態)、站立會議,Burn Down Chart(燃盡圖)
- 我的工作: 將工作項目改成工作中(會反應到電子白板)、完成後"要求檢閱"(進行CodeReview)
- 要求意見: 輸入網址加註檢查重點,Email送給特定人員,出現整合式檢視UI,右邊是網站、左邊填意見,可以錄影/抓畫面加註解,還可以評分回饋
- Gartner Magic Quadrant ALM分析報告認為VS ALM是業界第一品牌
- VS ALM跨平台: TFS支援Eclipse、Xcode,有雲端伺服器
- Kingston CIO分享Scrum經驗: 先用Rational Unified Process(RUP), 後來用XP(Pair Programming...等), 目前用Scrum。(Scrum精神: 成員自動自發爭取Task,毋須指派)
- 好消息: MSDN訂戶即日起享有一年免費Windows市集、Windows Phone市集會員帳號
【Scrum】簡報及參考資料分享
- Scrum: 源於橄欖球的正集團(其實是亂成一團)
- 培養IQ - 第一次接觸後盡快吸收知識
培養EQ - 實務進行後遇到書上沒說的困難 - Iteration中不允許中斷: 哪有可能? 工程師是最小的。關在房間裡的玩法註定失敗,不如設法提高可用時間比例
- Scrum是一個Lightweight(規範很少)的方法論,容易亂成一團,需要Scrum Master
- Scrum三種角色:
Product Owner: 可以做決定的人,實務上PO後面還有大PO,要能問什麼答什麼。重要工作為 定義開發目標,需要實現的feature及優先順序
Scrum Master: 激勵成員不斷向前, 保證團隊高效而不受打擾地工作,優化工作條件/過程
Team Member: 自主地完成專案開發,使用一切手段保證進度及品質 - Scrum: 自主性很高、Code是透明的(如果只有一個人看得懂,危險至極)
- 團隊開發速度變慢的原因: Interrupt? Bug增加開始失控?
- 一個人可以Run Scrum嗎? 不行,沒有人給回饋玩個屁?
- 加班短時間有效,長期無效會導致團隊瓦解
- Scrum歷史
源於日本1986 竹內弘高, 野中郁次郎... - Scrum流程圖:
有多種版本,Microsoft Scrum Diagram,VS2012的版本比VS2010簡化,其中的迴圈代表Feedback。
User Story –> Product Backlog(愈上面愈重要,上面小塊,下面大塊) –> 由Planning Meeting產生Sprint(衝刺) Backlog –> 進行Sprint週期(每日循環Stand-Up Meeting) –> Demo Meeting / 部署給需求提供者 --> 要求回饋 –> Retrospective Meetings(以檢討反省自己為主) --> 修正Product Backlog - Todo, Doing, Done –> 狀態如何界定由團隊共識決定
- Scrum under a Waterfall: TechEd北美 Benjamin Day的講題
將衝突的兩種開發模式結合在一起,但實務上常常如此。比喻: Public Clound + Private Cloud = Hybrid Clound - 敏捷開發宣言:
- 個體與交互 重於過程和工具
- 可用軟體 重於完整文檔 (但不代表不要文件,客戶不會善罷甘休)
- 客戶協作 重於 契約談判
- 隨機應變 重於 遵循計劃
- 蕃茄鐘工作法: 產生短期衝刺效果
- Scrum不做文件? Test Case累積資料轉化成文件,也可做為交接的依據
- 當Unit Test變成一個負荷時就丟掉吧! 唯有自動化才能讓Unit Test可行
- Stand-Up Meeting的重點: 昨天做了什麼? 今天要做什麼? 遇到什麼困難?
最佳時間: 10:00, 11:30也不錯,要吃飯了就不會一直開下去 或是 開完會時己買不到東西吃 - 參考書: 硝煙中的Scrum及XP(有電子書)、Mike Cohn三本企業進階書、VS ALM Ranger Projects Guide
- 黑暗騎士電影的啟示: 人間煉獄橋段,解開安全繩才會成功。要心存恐懼(害怕失敗全力以赴)才會成功
- Sprint: 別死要面子害怕承認失敗,檢討後再來。進度落後時,讓成員自願加班完成。
- 提出需求的陳述格式: As a <role>, I want <goal/desire> so that <benefit>
- 三種角色/四個會議/三種工作物件
【VS2012新功能】投影片及程式範例下載
- Regular Expression: 搜尋取代
VS2010以前定義了搜尋用的自訂Regular Express語法。VS2012終於改採標準的RegEx語法: (?<x>[a-z]+)(?<n>\d) 取代 Boo${x}_${n} - 幾乎每個視窗右上角都可以輸入關鍵字搜索
- Source Code View也會有ASP.NET Control的Event Intellisense及自動展成Event Handler
- Code View選取HTML段落,按右鍵"擷取至使用者控制項",自動轉UserControl
- HTML標籤: 修改超始標籤,會自動連動結束標籤
- 輸入<video、<audio按兩次Tab,自動產生含mp3, ogg的範本HTML標籤
- 支援video, audio的Intellisense,例如: video物件輸入"."會帶出muted
- JavaScript主控台/DOM總管
- JavaScript function,宣告參數後按兩下Tab,自動產出/// <param name="boo" type="Number">Boo</param>,宣告完在程式碼中輸入boo時會帶出數字型別的屬性(.toFixed, toPrecision…)
- 跨瀏覽器CSS自動完成。輸入border-radius,按Tab兩次自動帶出moz, o, webkit版本寫法(Vender Specific CSS)
奇怪的縮寫: 輸入bgim->Background-Image, tede->Text-Decoration - 輸入#後會跳出Color-Picker,還可用吸管偷顏色
- Ctrl-K-C把程式碼變註解 Ctrl-K-U移除註解
- CSS Real World Validator: 會自動Update瀏覽器版本的CSS支援狀況
- CSS 在輸入":"會帶出狀態(如:visited)、輸入”-“帶出Vender專用的CSS
- 階層式CSS排序: table tr td依序縮排
- Page Inspector: 即時檢視網頁呈現結果
- Solution Explorer(方案總管)可以在cs下展開class,再展開Members
- 好用的擴充工具:
- Web Essential 2012
CSS字型預覽、滑鼠滑過會顯示該CSS有哪些版本支援、background(../images/boo.png)用智慧標籤轉Data URI - VS10x Code Map v2
為程式碼標底色 - Indent Guides
用虛線對齊大括號 - JavaScript Parser
JS Function清單及導覽 - Snippet Designer
程式碼片段,選取程式Export to Snippet,並可將部分內容改成變數
(工具選項中Snippet Designer/Reset重編Index才會生效, 不然就要重開VS) - Image Optimizer
在圖片上按右鍵選Optimize Image: PNG 3K-0.5KB - Array Visualizer
看二、三維陣列,Cube立體圖,還可以翻轉(但好玩,實用性不足) - 線上範例: 擴充管理員的線上項目有個範例庫
【Kinect SDK】
- 寫書不會發財,是因為有愛... 賣一本書大概賺兩杯飲料錢
- Kinect: 第一台可以"看見"及"聽見"的裝置(四個Mic陣列)
- 彩色鏡頭看顏色、紅外線鏡頭看深度、麥克風陣列聽聲音來源,Kinect Runtime(SDK)提供演算法(扮演大腦的角色)
- SDK功能
- 追蹤人體骨架(最多兩人) -> 可同時看到六人(只有HipCenter),抓其中2個人的骨架(各20點)
- 聲學功能(回音消除,自動增益) –> 用於聲音識別
- 聲音來源
- 臉部追蹤(臉上80幾個點)
- 語音辨識(Wndows內建)
- 硬體有兩種版本: Kinect for XBox / Kinect for Windows(精密度較高,價錢多一倍)
- Kinect for Windows SDK / Kinect for Windows Runtime
- 版本Beta –> 1.0 (跟Beta不相容, 支援K4W近距離模式[坐在電腦前])
- 1.0->1.5: 多了Kinect Studio(先找模特兒錄影拿回來分析)、骨架追蹤、坐姿模式(上半身10個點)
- 1.5 -> 1.6: 支援Win8 / VS2012、更多感應器資訊(Raw Data)
- 預設模式: 0.8 - 4公尺 近距離模式: 0.4 – 3公尺
- 坐姿模式: 20個點過濾成10個點,反而更耗CPU
- 瀘光片分IR Pass/IR Filter, 一片3500-6000元,規格還細分不同波長: Wii 940nm, Kinect 830nm
- 控制PowerPoint:
* SendKeys.SendWait("{RIGHT"}");
* 姿勢判定基準: 抓取頭及手的X軸座標差異值超過40公分 - 控制滑鼠
* PInvoke: SendInput模擬滑鼠操作 - (聽說SendKeys/SendInput模擬鍵盤滑鼠都是骨灰級老人家才會的東西,我只好拒絕承認自己跟跟這些文章有任何關聯。)
- 開發程序:
* 了解骨架座標
* 設計手勢 (與時間有關 vs 與時間無關,與時間有關=>某段時間做某個動作,較複雜)
精彩的來了! 從沒想過能在TechDays場子看到這麼刺激的Live Demo -- 現場目睹血滴子AR.DRONE遙控直升機在場子裡飛來飛去,冒著生命危險聽研討會的經驗可不是人人都有呀。
搞過土砲WP7模擬器照相機、曾用Arduino+Wii搖桿在.NET程式轉飛機, Coding for Fun題材永遠深得我心呀~~
Comments
Be the first to post a comment