天天看點

一個 SAP 開發工程師十餘年的技術寫作之路回顧

這是 Jerry 2021 年的第 31 篇文章,也是汪子熙公衆号總共第 307 篇原創文章。

本文目錄

汪子熙公衆号的風格定位

為什麼我會開始在微信公衆号上書寫技術文章

我的寫作素材從哪裡來

堅持了長達十餘年的技術寫作,我最大的三個收獲

Jerry 從 2018 年正式開始在微信公衆号平台寫作,至今已經整整三年半了。到 2021 年 4 月 30 日為止,總共輸出了 306 篇原創文章,獲得了 10000 個粉絲。

一個 SAP 開發工程師十餘年的技術寫作之路回顧

雖然我深知,這一萬個粉絲朋友,在整個數以億計的微信使用者群裡,隻是極其小衆的一個群體,不過我開啟公衆号技術文章寫作的初衷,絕非是“在 XXX 時間段内,粉絲數達到 XXX 個”。是以,對于公衆号的粉絲數,以及每篇文章的閱讀量,點贊個數,我也采取很佛系的态度去對待,一切順其自然。

一個 SAP 開發工程師十餘年的技術寫作之路回顧

當今這個自媒體時代,每天都有新的微信公衆号湧現。然而能夠被大家記住,經常保持關注和閱讀的,隻有一小部分。這一小部分公衆号無疑都有各自鮮明的特色。

申請這個公衆号之初,我就對其有着清晰的定位,并且堅持到了現在,那就是:嚴謹,專業。

為了做到嚴謹,這 306 篇原創文章,篇篇書寫的過程我都是字斟句酌,在釋出之前自己也會重複讀幾遍,确認思路是否清晰,行文邏輯有無問題,文章裡描述的 SAP 知識點,力争做到 100% 正确。除此之外,我也會檢查語句是否通順,是否存在錯别字。

為了做到内容的專業,我有三不寫。

和 SAP 不相關的技術不寫。

自己了解得似是而非,不夠深入的 SAP 技術不寫。

雞湯文不寫。

因為持續發表技術文章,我也被邀請加入了一些微信公号主群。認識了一些同仁,他/她們會琢磨和分析比較受歡迎的的文章類型,寫作方式和标題命名方式等特征,然後模仿進行創作,也能獲得不錯的吸粉效果。然而采取這種方式打造出的文章,已經和我對本公衆号的定位産生了較大的偏差,是以我沒有選擇去模仿,今後還是會一如既往堅持自己的寫作風格。

幾乎每天都有人在公衆号背景聯系我,詢問我是否有興趣進行商務合作,即在這個公衆号上發一些課程的推廣文章。然而我覺得這些課程(比如人工智能學習課程)的閱聽人,和本公衆号的粉絲相差很大,是以也沒有接受此類合作的請求。

這要從我 2009 年還在做 SAP Business ByDesign 标準開發說起。當時我負責這個産品的 Form 和 Field Extensibility 話題,從 2007 入職開始 已經做了兩年多了,也習慣把自己對二者的一些了解和技術分析,寫到公司内網 wiki 上。另外我平時喜歡用 ABAP 寫一些小工具,能讓自己平時工作中少做些體力活。比如手動在 SAP GUI 裡點選完成一個流程,需要十幾步的操作,但是寫一個 ABAP 報表,然後 F8 執行,一步即可完成。我把這些小工具的名稱,所在系統和使用方法也寫到了公司内網 wiki 上。堅持一段時間後,我會不時收到一些其他同僚的郵件,有的是感謝我寫的 wiki 幫助他/她們澄清了工作中的一些疑問,同時就 wiki 内容提出了新的咨詢;有的則是覺得我寫的小工具很實用,但是和他/她們的使用場景還有差距,詢問我能不能再增強一下給他/她們團隊使用。

下圖是我在公司内網 wiki 寫作的一個例子,寫于 2010 年 11 月。

一個 SAP 開發工程師十餘年的技術寫作之路回顧

在公司内網 wiki 寫作的習慣,我一直保留到了 2013 年,此時我已經從 SAP Business ByDesign 開發團隊轉到了 SAP CRM 團隊。在一次員工和上級的例行談話時,我不經意向我的老闆,就是後來 SAP 成都研究院的吳院長(詳見 我與SAP成都研究院吳院長的二三事 ),提到我寫的 wiki, 在公司内部還是有挺多同僚在看的。吳院長就說, “這很好啊。你可以試着在 SAP 社群上寫,這樣能讓更多的人看見。” 我心想這提議不錯, 加上我也挺樂意在工作中嘗試新的方式方法,于是就開啟了我在 SAP 社群上的寫作之路。

一個 SAP 開發工程師十餘年的技術寫作之路回顧

從 2013 年到 2018 年,我總共在 SAP 社群上寫了 631 篇英文部落格,其中 SAP UI5 & Fiori 221 篇,SAP CRM 198 篇,ABAP 197 篇。

一個 SAP 開發工程師十餘年的技術寫作之路回顧

常年在 SAP 社群寫作,我也獲得了一千個社群粉絲的關注,其中大部分是老外。

一個 SAP 開發工程師十餘年的技術寫作之路回顧

因為我寫的這些社群部落格,以及我在社群上回答 SAP 從業者的問題,我也成為了 SAP 社群導師和 SAP 社群的技術大使。

一個 SAP 開發工程師十餘年的技術寫作之路回顧

2017 年獲得的 SAP Mentors Program Excellence & Dedication 的 一個 Award:

一個 SAP 開發工程師十餘年的技術寫作之路回顧

SAP Technology Ambassadors 的衣服:

一個 SAP 開發工程師十餘年的技術寫作之路回顧

到了 2017 年底,因為我自己持續關注了一些微信技術公衆号,從中獲益匪淺,是以萌生了自己也申請一個号并且使用中文進行技術輸出的念頭。于是就有了現在這個公衆号。

這個公衆号的絕大多數文章都取材于我的每日工作。當我在 SAP 标準産品開發團隊從事産品傳遞工作時,這個崗位對開發人員的技術要求是精而深,是以我有足夠的時間和精力,進行技術積累。同時感謝 SAP 對員工以人為本的培養方式,使得我有機會先後在不同的 SAP 産品團隊工作,能接觸到不同類型,不同技術架構,不同程式設計語言實作的 SAP 标準産品。随便舉一些例子:

我最近在 SAP Commerce Cloud 開發團隊從事 Angular 前端開發時寫的一些文章:

SAP Commerce Cloud ( 電商雲 ) 路由路徑的自定義配置與開發

一小時内在本地搭建SAP Commerce Cloud(電商雲)的前背景運作環境

SAP 産品一脈相承的 UI 增強思路,在 SAP Commerce Cloud(電商雲) UI 增強實作中的展現

我在 SAP Cloud for Customer 産品開發團隊工作時,團隊同僚們和我寫的文章:

SAP Cloud for Customer Extensibility的設計與實作

SAP成都研究院大衛哥:SAP C4C中國本地化之微信小程式內建

SAP成都研究院飛機哥: SAP C4C中國本地化之微信聊天機器人的內建

SAP成都研究院廖婧:SAP C4C社交媒體內建概述

淺談SAP C4S自動化

SAP成都C4C小李探花:淺談Fiori Design Guidelines

SAP 成都研究院 S4CRM 開發團隊的同僚們和我寫的文章:

Hello World, S/4HANA for Customer Management 1.0

S/4HANA Service Management和SAP Field Service Management的內建

SAP S4CRM 1811 服務訂單API介紹

SAP S4CRM vs C4C, 諸葛亮和周瑜?

分享我在 SAP CRM Fiori 開發團隊時所學知識的文章:

SAP Fiori應用的三種部署方式

雪妖現世:給SAP Fiori Launchpad增添雪花紛飛的效果

SAP Fiori Launchpad Tile,UI5應用,和PFCG Role的對應關系

2018 年到 2020 年 4 月底這三年,我在 SAP 成都研究院數字創新空間團隊工作,基于 SAP C/4HANA 産品線做一些概念驗證和原型開發。如果說 SAP 标準産品傳遞團隊對開發人員的要求是精而深,那麼做原型開發,概念驗證,配合售前同僚打單,從事這些工作的開發人員,就得做到廣而博,即在最短的時間内,用當下業界流行的技術,完成能夠進行示範的原型。

一個 SAP 開發工程師十餘年的技術寫作之路回顧

這三年裡,我的團隊同僚們和我也将完成的很多原型開發,以文章和視訊的方式分享了出來,比如:

Hyperledger Fabric on SAP Cloud Platform

SAP雲平台,區塊鍊,超級賬本和智能合約

打通C/4HANA和S/4HANA的一個原型開發:智能服務創新案例

SAP成都研究院數字創新空間溝通S/4HANA和C/4HANA的智能服務示範視訊和Coresystems分享預告

在SAP UI中使用純JavaScript顯示産品主資料的3D模型視圖

如何在SAP UI5應用裡添加使用攝像頭拍照的功能

以及 SAP 成都研究院的同僚們和我的職場之路分享:

SAP成都研究院Sunshine: 我的C4C實習感受和保研之路

SAP成都研究院35歲以上的開發人員都去哪兒了?

“最不合格”的SAP應聘者: 從大學生到SAP成都研究院開發工程師

SAP成都研究院馬洪波:提升學習力,增強競争力,收獲一生樂趣

從程式猿到SAP産品經理,我是如何轉型的?(上篇)

從程式猿到SAP産品經理,我是如何轉型的?(下篇)

我與SAP成都研究院吳院長的二三事

我是怎麼和SAP結緣的 - Jerry的SAP校園招聘之路

那些年伴我一起成長的SAP裝備

由于篇幅限制,本文羅列出來的隻是冰山一角。全部的 306 篇原創文章,可以從下面的連結獲得:

SAP成都研究院小夥伴們2018~2019兩年間的179篇原創文章合集

一個SAP成都研究院開發工程師 2020 年的所有文章清單

當然我也試圖在技術文章中添加一些趣味性,讓它們顯得不那麼枯燥:

一段讓人瑟瑟發抖的ABAP代碼

昨日萬聖節ABAP怪獸級代碼謎團,公布答案啦

ABAP vs Java, 蛙泳 vs 自由泳

淺談前後端分離思想對自由泳練習的指導意義

我用ABAP做過的那些無聊的事情

金庸的武俠世界和SAP的江湖

使用代碼列出金庸小說中使用過的所有成語

關于SAP ABAP字元變量和字元串變量字元個數的一個知識點,和一個血案

堅持了長達十年的技術寫作,我最大的三個收獲

收獲頗多,這裡隻說三點。

1. 梳理和完善了自己的知識體系。

技術人員有時候會遇到一種情況,認為自己掌握了一個知識點,但當試圖将其用語言或者文字講解給别人聽時,發現事實并不像自己想象得那樣。自己認為已經透徹了解的知識點,其實卻領悟得似是而非。

我在技術寫作時也偶爾會遇到這種情形,然後隻能中斷寫作過程,重新查閱 SAP 幫助文檔,閱讀源代碼,單步調試,思考,直至我有足夠的自信,已經 100% 了解了該知識點,然後才敢繼續往下寫。

一個 SAP 開發工程師十餘年的技術寫作之路回顧

在經曆過多個 SAP 産品的标準開發工作後,通過寫作,我能夠有意識地去分析這些不同産品的一些共性,比如 SAP 産品在發版之前都必須確定滿足的可擴充性 (Extensibility) 這一非功能性需求,于是有了這篇文章:

SAP産品增強技術回顧

很多 SAP 産品都允許 Key User 進行字段增強,比如 SAP CRM,SAP Cloud for Customer 和 SAP S/4HANA. 這些不同産品的字段增強方式的 UI 雖然有差異,但設計思路卻有相通之處:

SAP産品的Field Extensibility

SAP 不同類型的 CRM 解決方案的橫向比較:

SAP的這三款CRM解決方案,您能區厘清楚麼

一些 SAP 不同産品中某一特性的橫向比較:

SAP 幾款産品的 UI 設計 和 Salesforce UI 開發比較:SAP UI和Salesforce UI開發漫談

SAP 不同産品的 UI 搜尋分頁的不同技術實作:SAP UI 搜尋分頁技術

SAP 不同産品裡 OData 的不同技術實作:SAP OData程式設計指南

SAP 不同産品裡 API 開發的不同技術實作:SAP API開發方法大全

以上都是知識體系梳理的例子。知識體系的完善,我的了解是:将看似割裂獨立的一個個知識點,串成一個網狀或者樹狀結構。

知識體系形成和完善後,再進入新領域學習時,就能靈活運用自己已有的知識和經驗,做到舉一反三了。

知乎上安曉輝老師有一篇文章:那些很厲害的人是怎麼建構知識體系的,值得一讀。

安曉輝老師對于知識體系的觀點我非常認同:

知識體系是結構化的,知識點之間彼此關聯,有無數回路,四通八達。這樣的好處是,我們遇到一個問題,就會觸發某個知識點,我們捕捉到這個知識點,就可以沿着知識體系的無數關聯和回路,快速找到相關的其他知識的點,組合起來,形成針對所遇到問題的解決方案,就表現出專業水準,就當得起“領域專家”之稱。

2. 擴大了自己的交際圈,認識了很多朋友。

三年半的寫作,讓我結識了很多 SAP 中國研究院其他部門的同僚,以及 SAP 生态圈的客戶和合作夥伴們。不少也是圈内深受從業人員尊敬和認可的成名人士,三人行必有我師焉,我從這些朋友身上也學到了很多。

我自己還建立了一個技術交流群,裡面彙聚了來自五湖四海國内外的 SAP 從業者們,群内的技術交流氛圍濃厚,裡面讨論的話題也給我提供了源源不斷的寫作素材。

一個 SAP 開發工程師十餘年的技術寫作之路回顧
一個 SAP 開發工程師十餘年的技術寫作之路回顧
一個 SAP 開發工程師十餘年的技術寫作之路回顧

3. 在持續寫作過程中,找到了自己的短闆和不足

每逢寫作過程中卡殼的時候,我就意識到,自己對該領域的了解還存在問題。技術寫作讓我能發現自己的技術短闆,進而明确将來努力的方向。

在寫作過程中,要回複讀者在文章内的留言,和粉絲互動,不可避免就需要和人進行互動。有一種說法認為,好的程式員邏輯思維能力強,沉浸于代碼的海洋中遊刃有餘,但是往往不擅長和人打交道。而我通過技術寫作建立起來了一個人脈圈,我需要和圈内不同背景的朋友打交道:SAP 同僚,客戶,合作夥伴的開發顧問,合作夥伴的管理人員,SAP 自由職業者,學生等等。我很珍惜這種能夠與 SAP 生态圈内各種類型的從業者交流的機會,以此彌補我和人交流溝通方面的不足。

以上就是本公衆号關注者達到一萬之際,我對過去十餘年來技術寫作之路的一個複盤。我也希望自己的身體狀況,能支援我将技術輸出繼續進行下去。

感謝大家一路的支援和陪伴。

一個 SAP 開發工程師十餘年的技術寫作之路回顧