Image for post
Image for post

什麼是Workhub,Workhub就是可以將組織內常用的服務集中在一個Portal的概念,讓這個Portal是被掛在Teams裡面,這樣只要當用戶使用Teams就可以同時在一個平台內使用其他服務,在早期我在認為Teams就因該走向這個方向。Teams本身就整合許多Office 365功能,如果都能在Teams內使用,其實,有時候也就不需要額外登入Sharepoint,畢竟這樣體驗是相當不好的。

而目前在Workhub能做的工作有以下這幾種

  • 連接企業內的應用系統和資訊來源
  • 連結Teams原有的功能
  • 內建自動化流程的應用,也就是Power Automate
  • 整合Power App

如下圖,幾乎可以將所有Office 365整合到一個Portal內,這邊用幾乎,主要是有些可能未來才會支援。這樣也等同於可以設計成為 …


Image for post
Image for post

當我們將SQL開發在DevOps過程中讓它也進入到版控,那樣就需要在每次Check In Code時候,能過作自動幫我們去Scan Code是否有符合T-SQL的開發規範或是有人撰寫影響效能的SQL語法。

我找了半天終於在MarketPlace找到一個現在是免費整合在Azure DevOps的套件

Image for post
Image for post

為什麼說是現在呢?因為就官方說法目前是還在 Preview version,所以,可以免費試用

The download contains SQL Enlight Code Quality extension for Azure DevOps and TFS 2017/2018. This is a fully functional preview version of the extension, fre …


Image for post

去年有幸在中原大學教導學生關於資料科學相關知識。然後就用Azure一些服務建構關於資料平台。為什麼需要資料平台?在IoT是世界中其實要蒐集結構化的資料並不是那樣容易,此外,很多人會很習慣資料讓資料能有結構化,方便做後續的資料分析。不過,在AI或是ML時代再加上需要大數據的世界,大家都希望能從大量數據中找出些甚麼或是AI化甚麼,但是,因為一開始蒐集資料就想要有邏輯性或是結構性或是主觀性的資料,這樣做法,往往都會犧牲掉一些我們自己認為不需要的資料或是不重要資料。有時候這樣反而忽略掉許多資訊或是跡象,進而失去獲取資料價值機會

Image for post
Image for post

因此,在雲端時代的到來,我認為要先有一個資料平台去蒐集大量資料,無論是結構化或是非結構化的資料都因該被蒐集,除非可以很明確認為這資料是跟現行的Domain無相關,則可以不去規 …


Image for post
Image for post

今天要來談談如何備份在Azure DevOps Service上面的Repository。為什麼需要這樣做?既然都用雲端服務,為甚麼還需要把雲端服務的檔案備份呢?主要在有時基於所謂"資安"或是"ISO2XXXX"相關條文就需要做到這一點。當然,另一種就是對於所謂"雲端"抱持的存疑或是其他的不安全關係,必須做到這一點。我想如果今日是使用Azure DevOps Server可能就不會需要這樣子做吧。

不過,既然有這樣需求存在,要去備份Azure DevOps Service上面的Repository也不是不可能。要做到這樣方式也不難,不過,如果靠手工做這件事情,又相當的不先進。因此,我們來透過自動化方式外加使用Azure DevOps Service的Release排程來完成定時備份Azure …


Image for post
Image for post

使用Express Route的Azure Private,讓我們可以透過地端VM使用RDP方式連線到雲端VM,這樣方式就不一定要透過VPN方式才可以連上雲端,畢竟這樣建立起來,等同於地端VM與雲端VM就會屬於一個Close的網路系統。

首先要這樣做的時候,必須要先確認Azure Private是否已經被開通了,如果沒有後面就不需要再設定

Image for post
Image for post

一旦建立好之後,就必須建設一些網路環境,才有辦法。另一個,也必須知道地端VM與雲端VM中間是使用哪一組網路Class建立的。以我們這個案例來說,網路位置是192.168.XX.XX為主。

因此,我們需要先建立虛擬網路閘道,可以在Markplace找到這項服務。

Image for post
Image for post

設定虛擬網路閘道

建立閘道資訊,有幾點要注意。

  • 閘道類型要選Express Route
  • 虛擬網路部分,我這邊重新建立一個虛 …


Image for post
Image for post

一直知道在Azure Web App可以與Visual Studio 整合,進行遠端偵錯,不過,通常的情境來說,都是可以在本地端就可以找到問題。很少需要透過這方式去找Bug,但是,今天遇到一個Case要本地端進行偵錯就相對困難,主要原因是在於環境上的限制。為什麼呢?在Azure Bot要整合Line Channel,但是一直不知道為什摩會發生Bot接收到Line Message後,就發生錯誤,而這環境是直接在Azure Bot與Line Channel直接建立,並非透過程式去整合。所以,要最快方式找到答案,就是直接開啟Remote Debug。

要進行Azure Web App Remote Debug,首先必須要將你佈署在Azure 環境上的App設定為Debug Mode,這樣才可以開 …


Image for post
Image for post

前一篇的[[玩具系列]快速建立一個Azure Bot Service 服務]可以用Bot Service建立好Bot服務,再來就是要看把這個Bot放到那一種IM軟體上,在公司可以使用Microsoft Teams,但是如果是要自己非公司外用,比較常用就是使用Line Bot,如何開發Line Bot呢?首先就是要建立Line Bot的Message API,所以,我們要去Line的開發網站https://developers.line.biz/,申請一組Line Message API 的Provider和Channel。

申請Line Message API

申請Line Message API方式的介面是會常改。但不外乎就是幾個步驟

  • Create a new provider
Image for post
Image for post
  • 選擇要合適的Channel類型
Image for post
Image for post
  • 設定Channel相關屬性
Image for post
Image for post
  • 微調Message API設定,例如下方例子中回應設定,這邊記得關於Webhook設定都要設定為啟 …


Image for post
Image for post

繼上一篇[[玩具系列]快速建立一個Azure Bot Service 服務]我們建立好的一個Bot,但是還是無法去分辨玩具的歸屬,當玩具夠多有些又長的很像時候,說真的大概只有小孩子可以分辨出哪些是脽的玩具,那些是自己的。對於大人們可能要看起來都差不多,尤其像是寶可夢系列的玩偶,根本無法知道哪隻是哪隻,這時候就必須透過Smart方式來處理,可以用Cognitive Services簡單做出分類器。在AI識別的方法針對這問題作法很多,但要怎樣最快又簡單解決這問題,透過API算是比較容易達到。

只要登入到https://www.customvision.ai/ 的Portal,就可以透過UI方式幫你訓練模型,這樣方式算是相當簡單的。

建立訓練模型專案

一進入之後就是必須新建一個模型訓練的專案。

Image for post
Image for post

這裡專案類型有兩種,分別是 …


Image for post
Image for post

每次要幫小孩分辨玩具歸屬是一件很累人的事情,有時候自己又無法確定該玩具是屬於誰的(現在玩具實在太多種類~~),所以,避免家長自己搞錯,最好方式透過AI+BOT方式來幫助識別。

要建立一個Bot 服務,最簡單就是透過Azure的Web App Bot服務。首先在Market Place地方搜尋Web App Bot 就可以開始建立

Image for post
Image for post

把要建立Bot的資訊填好,選擇Echo Bot範本,如果想要更多功能的範本,可以選擇基本Bot,不過,目前我只想要做一個簡單回應互動訊息的Bot,使用Echo Bot範本就夠用了,就等待一點時間讓它建立吧

Image for post
Image for post

建立完成後,就可以到 Web App Bot開始建立Bot相關互動。

Image for post
Image for post

如果一開始本身自己電腦沒有相關BOT開發環境,就必須要先建立相關BOT開發環境,包含了BOT模擬 …


Image for post
Image for post

上週上了公司卡內基的第一堂訓練課程,其中,被交付要去讀卡內基溝通與人際關係 書中的其中一章節將你的想法做戲劇化的說明 ,這個其實是這章的標題的結尾,而標題則是

電影能、電視能,你為何不能

本章節我認為主要的涵義在於如何與他人去建立一個有效或是成功的溝通,當然,更重要就是在溝通過程中能夠有效表達其自己想法或是讓自己想法讓對方買單。畢竟,有時候我們在溝通用平舖直述方式闡述自己的觀點或是太Normal(我個人就是太正常方式)方式,想要引起對方的興趣或能參與話題的機率可能不高,有可能造成無效溝通或是導致雙方之間的衝突因子,而該章節認為如果能具有戲劇性的方式來包裝雙方即將要開始的談話內容,或是用一些跳躍性的要素讓對方對這一次的溝通或是討論有興趣,將能營造出一個好的溝通場域,進而開啟雙方之間的會談。

這種方式簡單來說就是如何去包裝、行銷一次你與他人之間的溝通,借而能有效地把你想法讓對方能夠專心聽,甚至會跟你有後續互動與討論 …

About

Edward Kuo

Enterprise IT Manager / Microsoft Regional Director / Microsoft MVP / DevOps Expert / Speaker, About me: https://profile.edwardkuo.dev/about/

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store