一個SAP開發人員的雙截棍之路

因爲種種緣由,Jerry最近加入了SAP成都研究院的一個演講俱樂部,這個俱樂部主要是提升你們的英語演講能力。html

說來Jerry也是大一下期和大二上期一次性高分經過四六級考試的,可是當畢業進入SAP成都研究院後,經過和同事比較才知道本身口語有多爛。在SAP成都研究院,我能聽到同事們地道的倫敦腔,紐約腔,曼徹斯特腔,固然還有Jerry的成都腔。前端

本文是我參加最近一期演講俱樂部的演講稿。下面是正文。算法


目錄編程

  • 搭環境設計模式

  • 找教程網絡

  • 跟着視頻學數據結構

  • Jerry對雙截棍表演動做的理解架構

  • 程序猿用的開發工具和雙截棍愛好者用的雙截棍框架

  • 如何快速上手一門編程語言/雙截棍編程語言

  • 雙截棍對SAP開發有什麼幫助?

Jerry爲何會接觸到雙截棍這項運動呢?在Jerry對游泳上癮以前,我並無什麼愛好的運動。足球,籃球,羽毛球,網球。。。我通通不感興趣。2012年個人孩子出生了,是個男孩。我想:我如今這麼宅,之後無法給我兒子樹立一個好的榜樣,得練點什麼。因而在2012年時,我選擇了雙截棍,其中緣由也包括了我很是喜歡的歌手周杰倫,那一首火遍大江南北的《雙截棍》。我在接觸雙截棍好久以後,經過網絡上雙截棍愛好者寫的周杰倫《雙截棍》MV裏的動做分解,才知道周杰倫當時爲了拍這首歌的MV,也曾請名師學過雙截棍。

網絡上對於雙截棍最先源自中國仍是外國一直爭論不休,由於這個器械的歷史實在是太悠久了,以至沒法考證。對於一個對雙截棍一竅不通的程序猿來講,從哪裏開始自學呢?做爲一個時刻都得學習新知識的SAP從業人員來講,我以爲這難不倒我。

搭環境

自學雙截棍其實和程序猿自學一門新的編程語言差很少,首先是搭環境。我從淘寶上買了一根不鏽鋼製成的雙截棍,我還記得價格,30多塊錢。

找教程

環境搭好後,而後是網上找教程。我當時到百度貼吧的雙截棍貼吧裏一看,發現裏面很熱鬧,從業餘界的頂尖高手到菜鳥都有。不少朋友都上傳了本身的練習視頻到貼吧裏,其中不乏一些女性愛好者。我想:既然他們能學會,我爲何不能?因而,我興致勃勃地投入了自學中。

我閱讀了百度貼吧精華區的新手指南貼,知道了國內雙截棍界有一位很厲害的高手——劍舞狂沙,他出了不少面向新手的雙截棍教學視頻。

下圖是百度百科裏對劍舞狂沙的介紹。

下面是劍舞狂沙2012年珠海市棍道交流會表演的視頻,只有1分多鐘。

https://v.youku.com/v_show/id_XMzg2NDQ2MjQ0.html?spm=a2h0k.11417342.soresults.dtitle

和游泳視頻同樣,Jerry曾經在網絡上觀看了大量的雙截棍教學視頻,絕大多數都是業餘愛好者錄的,視頻裏的動做確實很是炫目,然而缺乏一些力量。打開上面我提到的劍舞狂沙的表演視頻,您會發現視頻裏的動做確實完美闡述了百度百科這句對他的評價:

"在輕盈靈動基礎上明顯增長了力量和剛硬的風格。 剛柔達到了新統一,這在中國甚至世界雙節棍界都是一個了不得的成就。"

視頻裏第45秒開始的螺旋花轉棍算是輕盈靈動的表明動做,而第51秒迅速銜接成了劈棍。

這種短期內化剛爲柔的急劇轉折,另外一位高手張無忌在把乾坤大挪移練到level 7後才能辦到,有書爲證:

滅絕師太好容易反賓爲主,長劍顫動,直刺他後心。張無忌聽到背後風聲,

只得回刀揮出,噹的一響,手中寶刀又斷去了半截。滅絕師太的長劍跟着刺到,張

無忌反手運勁,擲出半截寶刀,這一下使上了九成力。滅絕師太登時氣息一窒,不

敢舉劍撩削,伏地閃避。半截寶刀從她頭頂掠過,勁風只颳得她滿臉生疼。張無忌

眼見有隙可乘,不及放下週芷若,隨即搶身而進,右手前探,揮掌拍出。滅絕師太

右膝跪地,舉劍削他手腕,張無忌變拍爲拿,反手勾處,已將倚天劍輕輕巧巧的奪

了過來。

這般於一剎那間化剛爲柔的急劇轉折,已屬乾坤大挪移心法的第七層神功,滅

絕師太武功雖高,但於對方剛猛掌力襲體之際,再也難以拆解他轉折輕柔的擒拿手

法。

Jerry後來螺旋花轉棍練熟之後,也想模仿劍舞狂沙這種轉棍->劈棍的轉換,但立刻就發現徹底控制不住棍的運行軌跡——從初始狀態開始劈棍和從轉棍狀態開始劈棍發力的方式徹底不一樣。

跟着視頻學

視頻找好後,終於能夠開始照着視頻編寫第一行代碼,哦不,進行第一次有棍練習了。

我很是尊敬劍舞狂沙的一點是,儘管他在雙截棍上的造詣已是國內頂尖的了,然而他的入門教學視頻,卻可以放下大師的身段,從最最基本的手法開始教。

有多基本?Jerry打個比方,有個前端開發的教學視頻,視頻裏教你如何打開IE下載Chrome,如何安裝Chrome,如何在電腦上新建一個txt文件,重命名成html,如何在html裏編寫代碼,如何用Chrome打開這個html文件查看效果。劍舞狂沙的教學視頻就是這種風格,造福了衆多像我這樣的雙截棍門外漢。

他的教學視頻徹底是免費的,包含了文字講解和動做示範。

文字講解:

動做示範有正常速度和放慢30%的動做示範,然而Jerry一開始學的時候,放慢30%在我眼中仍然快了,我是用播放器放慢50%來學習的。

Jerry對雙截棍表演動做的理解

雙截棍的實戰和表演性質的動做練法徹底不一樣,本文只討論後者。

Jerry本身對雙截棍表演動做的理解:任何外行的朋友們看起來很酷炫的動做,最終均可以分解成舞花和轉棍兩種基本動做。若是說程序=算法+數據結構,那麼Jerry認爲,面向新手的雙截棍表演動做=舞花+轉棍

劍舞狂沙的教學視頻裏,把經過鐵鏈鏈接的兩根棍分別標記成A和B棍。做爲一個程序猿,我喜歡把單手握住的棍稱爲支撐棍, 用程序猿的術語就是local stick,由鐵鏈連接的另外一根棍稱爲遊離棍:remote stick

  • 舞花:單手始終握住支撐棍,手腕發力,這股力由鐵鏈傳遞到遊離棍,產生各類圓周運動軌跡。

  • 轉棍:單手給支撐棍一個初速度,利用慣性,支撐棍和遊離棍以手爲圓心,經過鏈接的鐵鏈繞手旋轉一週。

下面是劍舞狂沙寫的周杰倫《雙截棍》MV裏動做解析,能夠看到周杰倫的動做主要也是以舞花爲主。

①「巖燒店的煙味瀰漫」(斗室中Jay在空中揮舞二節棍做右手前舞花) 

②「從小就耳濡目染,什麼刀槍跟棍棒,我都耍得有模有樣」(搏鬥中,Jay一記右掃棍擊中對手,而後棍舞至身前,一個右手側舞花) 

③「飛檐走壁莫奇怪,去去就來」(Jay在斗室中前舞花) 

④「幹什麼,幹什麼,我打開任督二脈」(Jay左手託棍於右腋下,右手握棍於左肩前,向右掃擊接側舞花) 

⑤「東亞病夫的招牌,已被我一腳踢開」(Jay在斗室中跳下,右手前舞花) 

⑥「若是我有輕功」(Jay雙手持棍在胸前轉來轉去作假動做) 

⑦「快使用雙截棍」(Jay在黑色背景下做前舞花) 

⑧「什麼刀槍跟棍棒」(Jay在黑色背景下做右手舞花) 

⑨「學少林跟武當」(Jay在斗室中右手前舞花) 

(附:Jay的右手舞花全解—— 

ⅰ、棍在體前8字橫舞一週 

ⅱ、轉腕,棍在右側轉一週 

ⅲ、棍擺至左側轉二週 

ⅳ、棍擺至右側,向上向前向下,腋下收棍 ) 

舞花和轉棍兩個動做練熟後,就能夠按照視頻裏前人總結出來的各類套路,或者本身發明一些新套路,把各類角度進行的舞花和轉棍銜接起來。

做爲一個程序猿,平常工做少不了和設計模式打交道。若是說設計模式是經過前人的經驗千錘百煉總結下來,每種設計模式描述了某一特定場景下設計的最佳實踐,那麼雙截棍表演動做的套路,Jerry把它們理解成和編程中的設計模式起到一樣的做用:好比小螺旋花轉棍,能夠說每一個雙截棍表演視頻裏都會出現,就像單例和工廠模式,稍稍複雜點的項目裏都會用到。雙截棍的套路和設計模式固然也有區別,好比即便再複雜的項目,也很難出現用到所有23種設計模式的狀況,然而雙截棍的不少表演視頻,出於展現目的,不少朋友都傾向於把儘量多的套路放進去。

另外一個區別就是,和編程設計模式那些乾巴巴的名稱不一樣,雙截棍的招式套路極富美感:

流星趕月:

狂龍亂舞:

雪花蓋頂:

白蛇吐信:

雙截棍愛好者們光聽這些招式的名稱就能想象出棍的運行軌跡和速度感,彷彿置身於金庸筆下的江湖中。

程序猿用的開發工具和雙截棍愛好者用的雙截棍

我知道有些朋友能在Mac下不用IDE進行Java開發,我很佩服。可我作不到,我在SAP成都研究院的編程工做仍是在各類各樣的IDE裏完成的,詳情見我這篇文章:Jerry和您聊聊Chrome開發者工具

而雙截棍愛好者們,也有各類類型的雙截棍可供選擇。

淘寶上除了不鏽鋼製成的雙截棍以外,還有海綿棍和木棍。有的店家打的廣告是這些海綿棍(就是上圖最左邊那根)專門用於雙截棍初學者的練習。Jerry也買過一根,然而很快發現對我這個初學者沒什麼用,由於海綿棍幾乎沒有重量,初學者用它來作舞花和轉棍練習根本沒法控制棍的運行軌跡。

那麼木棍和不鏽鋼棍比起來有何區別?Jerry的答案,對新手來講沒啥區別。就像我以爲Eclipse和IntelliJ IDEA區別不大同樣。編程大師們不多會拘泥於某種IDE,而劍舞狂沙,用兩本《讀者》捲起來做爲棍體,用一張報紙捲起來做爲繩索鏈接兩根棍,用這種自制棍也能舞出雙截棍的精氣神出來。

如何快速上手一門編程語言/雙截棍

關於如何快速上手一門編程語言或者框架,Jerry的經驗是,除了多練之外,還要作好隨時受打擊的心理準備,即按照教程上介紹的步驟,一步步作下來,最後得不到指望的結果。此時要有足夠的耐心去分析問題。

一樣,雙截棍貼吧裏有新人發了一些請教貼 : "如何快速學會雙截棍」?一些老司機的回答:多練,多捱打。Jerry的學習經驗就是,正如但願不嗆水就能學會游泳是一件不現實的事情同樣,雙截棍的初學者也免不了被舞花或轉棍時不聽指揮的雙截棍所誤傷。個人一個竅門是,在練習一些很危險的動做,好比雙截棍距離頭部很近的轉棍動做時,我會拿毛巾提早把頭部包起來,帶上口罩以避免把門牙打落,最後再戴上帽子。

下面是個人雙截棍練習專用帽。

雙截棍對SAP開發有什麼幫助?

付出這些代價,咱們能從練習雙截棍中獲得什麼好處呢?SAP開發人員的職業病,像鼠標手、鍵盤手、頸椎病、腰椎病、肩周炎這些,均可以經過雙截棍來防治,固然游泳也行。

英國大腦基金會總裁,英國記憶力之父---東尼博贊說:每一個人都是天才,都具備巨大的潛能等待本身去開發和利用,特別是右腦的潛能90%都沒有被利用,就須要鍛鍊咱們的左手和左腳,從而開發咱們的右腦,激發咱們的潛能

我相信每位SAP開發人員身上都有巨大的潛能還沒有開發出來,而堅持用左手練習雙截棍,也是一個很好的激發潛能的方式。

在我第一次嘗試用左手作出各類右手能輕鬆作出的舞花和轉棍動做時,我發現很是困難。你們若是想體驗,能夠嘗試在平常工做中用左手使用鼠標,若是不是天生的左撇子,必定都會以爲很彆扭。可是左手使棍也是能經過努力練習而熟練的。通過一段時間的練習,我已經能作到,右手可以作出的動做,左手同樣能熟練作出來。

對於一個SAP開發人員來講,左右手均能熟練使棍還有一個象徵意義。SAP公司自己也在進行雲轉型,SAP愈來愈多的雲產品的標準開發採起的是和傳統的Netweaver上On-Premise開發徹底不一樣的技術和架構。對於一個有追求有抱負的SAP開發人員來講,除了追求右手熟練地掌握傳統地基於Netweaver平臺的On-Premise開發技術外,也要提升本身左手在SAP雲平臺上進行Cloud開發的能力。

做爲一個SAP開發人員,不斷學習新的開發知識和技術是必須的,自學過程當中老是挫折感和成就感並存。當學習一個新的知識點,在實踐中發現不能按照本身指望的情形工做時,是就此放棄,仍是和問題死磕到底?一樣,在新手學習雙截棍時,挫折感是不可避免的,尤爲是看到視頻裏的雙截棍,在一些高手使來彷彿成爲他們身體的一部分那樣熟練,而到了本身手裏,只會在本身身上增長傷痕,這真是情何以堪。如何把這種挫折感轉換爲堅持學習的動力,是每一個SAP開發人員和雙截棍愛好者須要終生修煉的能力。

Jerry今天的演講就到這裏。你們若是聽了以後對雙截棍產生了興趣,能夠試着按照劍舞狂沙的教學視頻,去開始您的雙截棍學習之路。感謝閱讀。

更多閱讀

要獲取更多Jerry的原創技術文章,請關注公衆號"汪子熙"或者掃描下面二維碼:

相關文章
相關標籤/搜索