2021年3月23日 星期二

 test jkksisk

2020年6月4日 星期四

RAID在筆記本上的用法


RAID是什麽?全名是redundent array of independent disk,獨立磁碟的冗餘陣列,簡言之就是將多個磁碟組成單一個儲存媒體,且它有容錯功能。什麽是容錯?容錯等於容忍磁碟錯誤,當磁碟壞掉或出錯的時候,使用者還可以使用

不同組合的磁碟有不同的演算方法,依據不同的演算方法有不同的RAID級別,級別也就是策略。比如RAID0,是將資料分散寫入每個磁碟,優點是平衡每個磁碟的負載,且傳輸資料快。缺點是沒有容錯功能,因爲如果其中一個硬碟挂了,就沒有那個硬碟上的那些資料。

怎麽把RAID0用在筆記本上?筆記本當作磁碟,資料分散寫入每本筆記本,優點是你不用擔心筆記本馬上就用完,且拿到筆記本就用,不用花時間找特定的那一本。

RAID0用在筆記本上,沒有容錯功能該怎麽辦?這時就要用到RAID1級別,也就是將同樣的資料分別存入每顆硬碟的策略,好處是有容錯功能,一個硬碟挂了,還能從其他硬碟找到完整的資料。

RAID1用在筆記本上,你會想不過是把之前RAID0做的所有筆記再抄寫一份,不是累死了嗎,且沒有增加任何價值,頂多重複寫一遍加深印象。RAID0筆記各個主題是分散到每本筆記中,做RAID1筆記時,就可以把各個主題相關的集中起來。像是Google新聞的分類,台灣、國際、地方新聞等,不是一目瞭然嗎。

以上先用RAID0後用RAID1,可以簡稱為RAID01策略。

2020年5月1日 星期五

書籤的處理方法

這幾天我把書籤整理了一下,我的書籤有分工具類與新聞類,這兩類有獨立的工具可以來處理。用書籤的好處:

  • 囤積控很喜歡
  • 有時效性,存了要一直用,因為有天它會不見。
壞處:
  • 很亂,有的書籤文字說明很長有些很短。
  • 要在層層的目錄中找到想要的,要花很長時間。

工具類書籤的處理

用Chrome的編輯搜尋引擎的功能,它可以定義關鍵字,比如你定義輸入d 後面接要查的單字,代表到奇摩字典查字典,搜尋引擎要設為 URL/%s。
好處:
  • 不用到層層的目錄中找
  • 沒有書籤列,瀏覽器變簡潔

新聞類書籤的處理

使用instapaper這個網頁工具,可以在Chrome瀏覽器加個instapater延伸套件,會出現個按鈕在你的工具列,看到喜歡的文章按這個按鈕就會把網頁暫存起來,很方便。
好處:
  • 有暫存,不怕文章有天會不見。
  • instapaper的閱讀畫面很簡潔。
  • 囤積控很喜歡。

囤積控控什麼?

囤積控在我們周圍有很多,在路上在車上好多人滑手機,被手機上的信息給吸引。電視一打開,有好多新鮮有趣的節目讓我們一直看下去。為什麼會有這種現象?最常見的原因是:
  • 我在看電視放鬆呢,結果一天就過完了。
  • 看大廚在做菜真香,學了這個以後可能會用到。可以後就忘了。
拿電視跟手機的設計來看,一開機新鮮的事物一直來從沒停過,它設計給一種生物使用,這個生物有以下幾個特徵:
  • 可以一直不斷吸收新知從沒停下。
  • 時間體力無限。
  • 不用睡覺。
我能想到符合這些特徵的生物,只有機器人了。我們不是機器人,為什麼用機器人的東西?商人追求利益的最大化,就有個方案這麽說,用了這個方案,讓你24小時重要的信息不漏接,想想這個說法覺得有點問題,晚上大家都睡覺誰發信息給你。

怎麼解決囤積控的問題呢?

首先是要目標的攝取,像以後可能會用到,改為以後會用到,拿整年做規劃,今年的哪個時間點會用到。時時都以長遠的目標做考量,廢一天對未來的目標有益嗎,如果有助益才去做。

2020年4月17日 星期五

什麽是CSS

CSS

CSS樣式表語言是用來設計網頁外觀的脚步語言,下圖是它與Sass的關係。為什麽會有Sass的誕生呢?主要是考慮了UX原則的易用性原則,讓樣式表語言的結構更清晰易懂


Sass

  • 是一個預處理器脚本語言,能把Sass脚本編譯或解譯轉爲一般CSS。
  • 是一種樣式表語言,最初由Hampton Catlin設計,由Natalie Weizenbaum開發。
  • 提供比CSS更進階的功能,讓工程師更容易使用。
  • 提供變數的功能。
  • 允許使用@import來引入其他scss檔案。
  • 瞭解scss幫助你訂製Bootstrap 4。
  • 允許使用槽狀語法。
  • 有兩種書寫的語法
    • SCSS
      • SCSS更類似於CSS樣式,並且必須使用分號和花(大)括號
      • 延伸檔名用.scss
    • SASS
      • SCSS語法改良,類似Python語法,去掉縮分號和花(大)括號,以縮排代替,使得程式碼更容易閲讀。
      • 延伸檔名用.sass
      • 比SCSS獲得更多工程師支持。

使用

  • 先安裝Node.js
  • 安裝在全域,下指令npm install -g sass
  • 查看是否安裝成功,下指令sass -v,輸出:
    Ruby Sass 3.5.7
  • 建立專案
    project\css
    project\sass\style.sass
    project\index.html
  • 轉爲css檔案,下指令sass sass\style.sass:css\style.css
  • 監聽sass檔案的修改自動轉出CSS檔,下指令sass --watch sass\style.sass:css\style.css

參考

什麽是UI與UX

為什麽要知道UI

有時候我會想UI設計師是怎麽把產品變出來的,產品很直覺容易使用,背後需考慮很多用戶的觀點。軟體設計師有時候也要自己設計界面,常常只有自己用的感覺好,而沒有考慮到其他人使用的感覺。如果知道UI設計師是怎麽設計的,就多一種角色的想法,做出來的產品會更貼近用戶經驗

UI是什麽

UI 指的是行爲操作設計師設計行爲以幫助用戶快速找到資料。例如書頁的設計,除了有頁碼之外,還加了4.04表示第四章的第四頁,並用一個圖示表示這是飾品分類。
游戲設計也有很好的例子,數位產品通常會借用現實產品做個隱喻,如異塵餘生:庇護所Online這個手機游戲,分頁的使用像是夾在書裏的小書籤,會想點看看書籤那一頁裏面有什麽。肖像圖示用三維表示是一曡肖像,但你在二維的圖像怎麽表示?除了下圖用數字表示這個概念是否有別的表示法,比方進度條、百分比等,哪種表示比較好?

UI設計師的工作

  • 確立design guide line,使得產品視覺語言一致化。
  • 設計資料狀態(user state)。如何顯示UI頁面的 錯誤等圖面。
    • 資料狀態是對應資料庫行爲給用戶做的設計。
    • 資料狀態種類滿抽象的,拿Windows來舉例
      • 理想狀態(Ideal State)- 登入Windows了
      • 空白狀態(Empty State)- 鍵盤滑鼠都無法動作
      • 極限狀態(Maximum State)
      • 錯誤狀態(Error State)- Windows 當機藍白畫面
      • 局部資料狀態(Partial State) 
      • 載入中狀態(Loading State)- Windows 載入中
  • 做交互動態設計的小動畫。

好設計原則

  • 好學
  • 效率高
  • 一段時間沒用還記得怎麽用
  • 失誤后,能立即復原嗎?
  • 用戶用了會開心嗎?

UX是什麽

  • 從用戶的角度找到合適的行爲方式。
  • 以總體經驗體驗做評估。
  • 差的體驗是?覺得難用的原因是什麽?
  • 原則

UX設計師的工作

  • 用戶研究(user search)
    • 產品給用戶帶來怎樣的價值,搜集資料以釐清此價值。
    • 工具用戶旅程地圖(user journey map),找出用戶的痛點與甜蜜點。
  • 功能地圖(function map)資訊結構(information architecture)

    • 功能地圖:產品的所有功能。
    • 資訊結構:對用戶有利的資訊整理。
  • 綫稿(wire-frame)原型(prototype)
    • 目的為確認用戶流程與資訊架構
    • 原型依創作方式不同,有分紙筆做出來的低保真(low-fi)原型 與電腦創作的高保真(high-fi)原型。

參考

2020年4月12日 星期日

為什麽你該用Git?

Git是Linus Torvalds設計的一種在軟體開發時用來追蹤原始碼更動分散式的版本控制系統,Git名稱是隨機字母的組合沒有任何意義。用這個工具能追蹤各種文件的變化,不只是原始碼。以前沒有這樣的系統來管理,我會一個版本,存一份文件,導致版本衆多,不知道哪個版本更改什麽地方,搜尋起來很沒有效率。

分散式與中央式版本控制系統的差異

在Git系統中,快照資料庫(repository)是個很關鍵的角色,它被用來追蹤檔案的變化。分散式的版本控制系統與中央式的差異在,它的快照資料庫(repository)會儲存到本地端,所以操作會比較快,且不用連網。但有些中央式版本控制系統也提供分散式類似的功能了,細節你要查該工具的更新列表。


基本操作

工作目錄相關指令
  • git init //建立快照資料庫
  • git commit -a -m "修改hello.py檔案" //對資料做快照
  • git diff //現在的檔案與上一個commit的比較
  • git log //查看版本記錄
  • git status //看檔案有無加入追蹤
暫存區相關指令
  • git add -A //所有檔案加入追蹤
  • git ls-files //列出追蹤的檔案
  • git ls-files --others //列出未追蹤的檔案
  • git rm --cached hello.py //不要追蹤hello.py
  • git add hello.py //追蹤hello.py

名詞解釋

  • 暫存區用來標注你想做版本控制的檔案
  • 對資料做快照是什麽?像對資料做拍照一樣,把這個時間的資料照起來。下個時間點資料有更新了,覺得這個資料很重要,可以再對它做一次拍照。
Git指令流程圖

幫助指令
  • git help ls-files //查看ls-files指令的綫上幫助

Git與自拍的差異

Git 與自拍都是對喜愛的東西拍照的動作Git是拍資料,拍的資料存入Git快照資料庫,自拍是拍臉,拍的照片存入Google相簿。

Git的多人協作

GitHub 是一個支持Git的綫上程式碼托管平臺,目的是讓多人協作一份文件更容易

更新Git

按版本的不同,有不同的更新方式。如果有一個類似手機應用自動更新的選項就很方便。

  • Git版本是2.14.1或更早,反安裝Git,並下載最新的Git安裝。
  • Git版本介於 2.14.2與2.16.1之間,使用指令git update
  • Git版本等於或大於2.16.1,使用指令git update-git-for-windows

參考

2020年4月10日 星期五

自學vue.js

資源

學習一個vue.js JavaScript框架,首先要知道框架的規則也就是語法,每個語法代表什麽意思,語法學足了就能構建我們的程式。

  • w3school what is vue.js - 最簡短的語法説明,可以從這裏開始。
  • Learn vue.js - 有三個path初中高級,每一級都有免費的課程可以聼,它會舉生活實際的例子説明變數值傳遞的過程,較容易學習,比如用手機去接受基地台的信號。
  • vue.js org - 比較詳細的説明。