常在人家錄的教學影帶上面看到會顯示到底按了哪些快速鍵(shortcut),查了一下,原來MacOS內建的可能就可以達到類似的功能
設定位置如下:
系統偏好設定-->輔助設定->鍵盤--> 啟用按鍵暫留: 在設定內容下設定要顯示的位置即可
或者也可以花錢買軟體,在Mac上最好用的軟體是
常在人家錄的教學影帶上面看到會顯示到底按了哪些快速鍵(shortcut),查了一下,原來MacOS內建的可能就可以達到類似的功能
設定位置如下:
系統偏好設定-->輔助設定->鍵盤--> 啟用按鍵暫留: 在設定內容下設定要顯示的位置即可
或者也可以花錢買軟體,在Mac上最好用的軟體是
安裝完後,一直deploy失敗,後來看了一下console log,發現是rvm的關係,
解決方法:
1.加入rvm 參數在mac 的profile
echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"' >> ~/.profile
2.在Sublime Text2 plug-in設定octopress的設定,
"octopress_cmd_before_rake" : "source ~/.profile",
1.先使用快速鍵叫出系統預設的符號表 command + option + T
2.在左上角的符號表設定,選取自定列表
加入"科技符號"
3.用滑鼠切換符號表到科技符號,就可以看到⌘⌥⇧⌃ ,在把它選起加到喜好項目,之後即已從喜好項目中直接使用
原始參考網站:
這兩天在學習使用octopress +github 寫部落格,因為對git 跟ruby以前完全沒用過,所以遇到的問題還不少,這邊做個記錄,方便自己以後查詢
# git remote -v show
1.執行rake deploy時遇到 permission denied(publickey)
原因:ssh publickey 錯誤
debug: 先使用command line 去連接github看看,如果正常的話會看到successful的訊息,如果不正卻就是得重新產生public key
或者重新上傳你的public key
#ssh -T git@github.com
*重新產生public key
#ssh-keygen -lf ~/.ssh/id_rsa.pub
*將public key 上傳到 github account 上去,上傳位置如下
https://github.com/settings/profile
-->SSH keys
執行rake deploy時,遇到 Github: Error: repository not found. fatal: The remote end hung up….
原因:因為repository 有分大小寫,我在執行時rake setup_github_pages 填入的repository (包括自己的帳號)沒注意到大小寫
可以使用 git remote show 看一下repository是否正確
#git remote -v show
http://islamismailov.com/blog/2012/12/31/octopress-on-mac-os-x-with-homebrew/
http://zerodie.github.com/blog/2012/01/19/octopress-github-pages/
assuming you have installed ruby 1.9.3
|
1.brew install git
2.brew install ruby
3.brew install brew-gem
4.git clone https://github.com/imathis/octopress.git octopress
5.cd octopress
6.brew-gem bundler
7.bundle install
8.bundle exec rake install
常用快速鍵:
☐ ⌘ + enter
or ⌘ + i
: 增加新的todo list
✔ ⌘ + d
**: 標記完成的task
VXLAN: VMware 跟思科為主等專長在網路相關的廠商提出的 Virtual Extensible Lan 技術,類似的技術,dell 微軟亦提出
NVGRE: Network Virtualization using Generic Routing Encapsulation
主要參考的來源:
http://news.networkmagazine.com.tw/magazine/2012/10/06/42512/
今天lab 網路的database 遇到 replication fail,嘗試了幾個方法都沒辦法解決,後來看到另外一篇,搭配fix slave relay log curruption 之後,終於把他正常啟動了
1. mmm replication fail # mmm_control set_online shard0master1 MySQL Multi-Master Replication Manager Version: 1.2.6 Config file: mmm_mon.conf Daemon is running! Command sent to monitoring host. Result: ERROR: This server is 'REPLICATION_FAIL' now. It can't be switched to online.
2.遠端連線到replication fail那台database
#mysql > show slave status \G
就看到如下的錯誤
Last_IO_Error: Last_SQL_Errno: 1594 Last_SQL_Error: Relay log read failure: Could not parse relay log event entry. The possible reasons are: the master's binary log is corrupted (you can check this by running 'mysqlbinlog' on the binary log), the slave's relay log is corrupted (you can check this by running 'mysqlbinlog' on the relay log), a network problem, or a bug in the master's or slave's MySQL code. If you want to check the master's binary log or slave's relay log, you will be able to know their names by issuing 'SHOW SLAVE STATUS' on this slave. 1 row in set (0.00 sec)
3.開始進行 mysqlbinlog 修護
發現他顯示某一行有錯誤,可能是因為之前錯誤的顯示,這個能是由於在之前我的硬碟空間滿了,所以造成系統寫入有問題,即時我把硬碟空間刪除後,在重新啟動系統也沒用,因為file 已經corrupt
#mysqlbinlog mysql-relay.001722
4.在執行show slave status \G
記住下列兩個欄位
Relay_Master_Log_File: mysql-bin.001722
Exec_Master_Log_Pos: 4185958
5.執行下列comman ,跳過這段有問題的relay log
#mysql > stop slave;
#mysql> CHANGE master TO master_log_file='mysql-bin.001019', master_log_pos=4185958;
#mysql > start slave ;
這本書,雖然是2008年出版的,不過我一直沒注意到,一直到最近才有機會聽到,目前我手上還沒拿到書,就先把網路上其他先進所做的十種類型先貼上作為閱讀提示
主要分為三大類,十種類型的人,前面兩種個有三種類型的角色,後面建造者則有四種角色
A.學習型角色
.1人類學家 the Anthropologist – 構成探索之旅的真正要素並不在於發現新景物,而是以新眼光來看景物。( 普魯斯特 )
.2實驗家 the Experimenter – 我並沒有失敗。我只能說,我已經知道有一萬種方法沒有用。( 愛迪生 )
.3異花授粉者 the Cross-Pollinator – 偶而離開大家常走的路,鑽到林子裡去吧。這樣做,你每次都一定會發現一些前所未見的東西。( 亞歷山大 . 格雷翰 . 貝爾 )
B.組織型角色
4.跨欄運動員 the Hurdler - 我們決定在這十年中作些事,到月球上去,並不是因為這件事很容易,而是因為很困難,因為這個目標可以組織並考驗我們的精力和技能,因為我們願意接受這項挑戰,面對這項挑戰,我們不想拖延,我們只想獲勝。( 約翰 . 甘迺迪 )
5.共同合作人 the Collaborator – 在漫長的人生歷史裡 ( 動物界也一樣 ),學會以最有效的方式合作並就地取材發揮創意者佔上風。( 達爾文 )
6.導演 the Director – 我靠夢想過活。( 史蒂芬 . 史匹柏 )
C. 建造類角色
7.體驗建築師 the Experience Architect - 對大多數公司而言,「附加價值」不論大小,全來自客戶體驗的品質。( 湯姆 . 彼得斯)
8.舞台設計師 the Set Designer – 每個組織 ( 以及每個員工 ) 表現的好壞,多少都會受到實際辦公處所規劃、設計,和管理的影響。( 富蘭克林 . 貝克 )
9.看護人 the Caregiver - 一次考慮一個客戶,盡全力把他們一個個照顧好。( 蓋瑞 . 卡默。地角公司 )
10.說故事的人 the Storyteller – 構成宇宙的是一個個的故事,而不是原子。( 彌瑞爾 . 盧奇瑟 )
Ring level 可分為 0,1,2,3
run levels 則為0,1,2,3,4,5,6
通常ring level跟電腦安全(權限控管)有關,run level 則是linux feature 控管跑在哪一種模式
在linux ring level 通常對應成,同一層的權限不能存取,採用least privilege
Ring 0: Kernel (OS kernel)
Ring 1: init.d (I/O)
Ring 2: Driver(utilities)
Ring 3: Application(User Apps)
在Windows 通常,R0~R2 對應的是kernel mode ,R3 對應的是 User mode
最近公司在統計BYOD設備,要求員工提供IMEI,對於這種名詞常常聽到,知道他是一個手機裝置識別號碼,但從來沒更深入去了解他,剛剛去wiki上查了一下,看了一下他的說明
國際移動設備辨識碼(International Mobile Equipment Identity number,IMEI),即通常所說的手機序列號,用於在手機網路中識別每一部獨立的手機,是國際上公認的手機標誌序號,相當於行動電話的身份證。
序列號共有15位數字,
前6位(TAC)是型號核准號碼,代表手機類型
接著2位(FAC)是最後裝配號,代表產地。
後6位(SNR)是串號,代表生產順序號。
最後1位(SP)一般為0,是檢驗碼,備用。
國際移動裝備辨識碼一般貼於機身背面與外包裝上,同時也存在於手機記憶體中,通過輸入*#06#即可查詢。
一. 名詞解釋
Credentials | |
---|---|
Sender ID (SID) | 開發者的email帳號,用來註冊C2DM service 使用 |
Application ID | 使用C2DM 的應用程序名稱,用來確保收到的push message 可以綁訂到正確的程序上 |
Registration ID (Auth) | 用C2DM 認可的device去註冊C2DM service後,所得到的一組id,其他第三方伺服器可以透過這一組registration ID去發送訊息,這個id大概每隔一週就會被Renew,鑰重新申請產生 |
Google User Account | Device需要透過此google account去通過認證 |
Sender Auth Token | 由Sender Id對應的Token,可以得到使用C2DM service |
註:register ID會存活直到你unregister,或者直到Google refresh為止。
Robot Framework 是一個自動測試框架
1. High-level architecture
2.檔案架構
Test suit directly/ [subsuit directory | test case file] : include many test cases
/initialization file
建議的檔案目錄:
1.Test libraries: lowest-level keywords
2.Resource files with variables and higher-level user keywords
3.Variable files to provide more flexible ways to create variables than resource files
3. Test data tables
Table name | Used for | Aliases |
---|---|---|
Setting table | 2) Defining metadata for test suites and test cases | Setting, Settings, Metadata |
Variable table | Defining variables that can be used elsewhere in the test data | Variable, Variables |
Test case table | Creating test cases from available keywords | Test Case, Test Cases |
Keyword table | Creating user keywords from existing lower-level keywords | Keyword, Keywords, User Keyword, User Keywords |
4. Test setup and teardown
Test setup: Executed before a test case
Teardown: Executed after a test case
Setting | Value | Value | Value |
---|---|---|---|
Test Setup | Open Application | App A | |
Test Teardown | Close Application |
Test Case | Action | Argument | Argument |
---|---|---|---|
Default values | [Documentation] | Setup and teardown | from setting table |
Do Something | |||
Overridden setup | [Documentation] | Own setup, teardown | from setting table |
[Setup] | Open Application | App B | |
Do Something | |||
No teardown | [Documentation] | Default setup, no | teardown at all |
Do Something | |||
[Teardown] | |||
No teardown 2 | [Documentation] | Using special NONE, | works with 2.5.6 |
Do Something | |||
[Teardown] | NONE | ||
Using variables | [Documentation] | Setup and teardown | given as variables |
[Setup] | ${SETUP} | ||
Do Something | |||
[Teardown] | ${TEARDOWN} | |
5.Test case styles
*1.keyword-driven style
*2.data-driven style
*3.behaviro-driven style
6.Variable types:
*1 Scalar variables
It is possible to use list variables as scalar variables containing lists simply by replacing @ with $. This makes it possible to use list variables with list related keywords, for example, from BuiltIn and Collections libraries. This feature works only if there is no scalar variable with same base name as the list variable has. In these cases the scalar variable has precedence and its value is used instead.
Test Case | Action | Argument | Argument | Argument |
---|---|---|---|---|
Example | @{items} = | Create List | first | second |
Length Should Be | ${items} | 2 | ||
Append To List | ${items} | third | ||
Length Should Be | ${items} | 3 | ||
Remove From List | ${items} | 1 | ||
Length Should Be | ${items} | 2 | ||
Log Many | @{items} |
*2 list variables: only can be used with some of settings
Settings | Value | Value | Comment |
---|---|---|---|
Library | ExampleLibrary | @{LIB ARGS} | # This works |
Library | ${LIBRARY} | @{LIB ARGS} | # This works |
Library | @{NAME AND ARGS} | # This does not work | |
Suite Setup | Some Keyword | @{KW ARGS} | # This works |
Suite Setup | ${KEYWORD} | @{KW ARGS} | # This works |
Suite Setup | @{KEYWORD} | # This does not work | |
Default Tags | @{TAGS} | # This works |
*3 environment variables
Environment variables set in the operating system before the test execution are available during it, and it is possible to create new ones with the keyword Set Environment Variable or delete existing ones with the keyword Delete Environment Variable, both available in the OperatingSystem library. Because environment variables are global, environment variables set in one test case can be used in other test cases executed after it. However, changes to environment variables are not effective after the test execution.
Test Case | Action | Argument | Argument |
---|---|---|---|
Env Variables | Log | Current user: %{USER} | |
Run | %{JAVA_HOME}${/}javac |
|
Built-in variables
Variable | Explanation |
---|---|
${CURDIR} | An absolute path to the directory where the test data file is located. This variable is case-sensitive. |
${TEMPDIR} | An absolute path to the system temporary directory. In UNIX-like systems this is typically /tmp, and in Windows c:\Documents and Settings\<user>\Local Settings\Temp. |
${EXECDIR} | An absolute path to the directory where test execution was started from. New in Robot Framework 2.1. |
${/} | The system directory path separator. / in UNIX-like systems, \ in Windows. |
${:} | The system path element separator. : in UNIX-like systems and ; in Windows. |
http://osherove.com/blog/2007/9/16/mocks-and-stubs-the-difference-is-in-the-flow-of-information.html
其實這個軟體已經下載了大概快半年了,但一直沒仔細研究他,只覺得這個編輯器文字很簡潔,
今天因為看到軟體有更新,就連上他的官網,剛好看到的他的demo才發現,他的功能其實滿強的
如果好好研究的話,應該可以加速文件編輯速度
例如選取多行的文字,要把它轉到一個list裡面,就可以使用下面的組合技完成任務
1.選取多行後,按⇧⌘L
軟體下載:http://www.sublimetext.com
2.如何透過Package Control 安裝其他額外的套件
command+shift+p: 叫出pakage control 套件
在command line 輸入:install package
接者系統就會列出一推套件可以選擇安裝,在此我要安裝的套件是PlainTask
就輸入PlainTask,系統即會開始搜尋並安裝
3.常用快速鍵
影片介紹
https://tutsplus.com/course/improve-workflow-in-sublime-text-2/#getting_started
在windows編輯文字檔案時,有好用的Home 跟End (將游標移到句子的前面跟後面)的快速鍵,但自從轉移到MBP後,卻找不到類似的快速鍵,現在才知道,原來還是有快速鍵可以使用 control+A 等於 Home, Control+E 等於End
官方網站如下:https://ankiweb.net/shared/addons/
Addons:安裝方法,只要從Anki軟體工具輸入代碼,例如這個
代碼為3448800906,只要輸入後,系統即會自動下載
https://ankiweb.net/shared/info/3448800906
主要參考文件:
目的:可以透過卡片的範例設計,讓學習效率變好,或者利用網路字典,節省還要查詢單字意思的功夫,只要單純存入生字部分即可
1.重點提示: field :可以想成之後可以在卡片中使用的變數名稱:
例如下圖的範例:我建立了四個field: Charactor, Pronunciation,Meaning,Examples之後,就可以把這四個當成變數元素,自己設定template,決定要在
範例中顯示的範例
2.如果要更偷懶,連字典都不查的話,也可以在card內容,填入下面類似的內容
<iframe src="http://tw.dictionary.yahoo.com/search?p={{text:Front}}&fr=yfp&ei=utf-8&v=0" width=1024 height=600 ></iframe>
{{text:Front}}==> 表示取出field變數 Front中的文字,並送出查詢,如果你確認你的網路速度還可以的話,也可以如此加速你的編輯卡篇速度
3.匯入單字
最簡單的format,就是使用,分隔的csv檔案,如果我只是需要一份生字表,基本上應該只要每一行對應一個單字,然後直接匯入,透過yahoo字典自動查詢,如此就可以把時間完完整整的省下來
4.在Mac 下面的話,可以配合快速鍵command+enter達到快速輸入
這個工具其實在去年三月就release了,只是我一直沒用過,今天偶然的狀態下發現,稍微玩了一下,就不小心把我的iphone回覆成出廠值,還好我昨天還有針對自己的iphone做備份,還不算太悲劇,
圖片請參考下列ETtoday的新聞連結
http://www.ettoday.net/news/20130103/148120.htm
看完圖片,真的覺得同事被告,公司被罰只是剛剛好,這種類似集體罷凌的狀況實在不可取,其實在外面工作久了,真的會常常遇到一些同事開黃色笑話,
很多一點都不好笑,都不知道為什麼會肉麻當有趣
On premises software是指相對於SaaS而言的一種名詞,有人翻譯成本地授權軟體,基本上就是只安裝在本地(自家公司)中的軟體,如果是屬於client server架構的軟體,則通常client 跟Server都會安裝在公司內部,而SaaS則通常Cleint 會安裝在自家公司,但Server則會安裝在軟體服務商本身的data center中
影片:透過chrome plug-in : Video Downloader for Facebook<sup>TM</sup> 相簿: 透過chrome plug-in : Tampermonkey 搭配script : Facebo...