元記事:Why developers should know how to write
私は最近、「コーディングではなくライティングこそがデザインのユニコーンスキルである」と主張するJohn Maedaの記事を発見しました。それは私に、開発者の人生の中でライティングがどのような役割を果たすかについて私に考えさせました。
今日のデータドリブンでデータ重視の世界では、消費できるコンテンツは大量にあります。私たちは常に動画、写真、広告、ポッドキャスト、そして記事によって情報の洪水に晒されています。これらのメディアにはそれぞれ違った魅力があり、人を惹きつけて離さないようにするための激しい競争が常に存在するように見えます。
過去数十年間の様々なメディアチャンネルの普及に伴い、依然と比べると文章記述には重きが置かれなくなり、ビジュアル— 具体的にはビデオや画像が重視されるようになりました。1997年の3Mのメモによると、人々はビジュアルをテキストより6万倍も早く処理できます。
しかし、それでも文章の書き方を知ることは未だに重要なスキルです。言葉は、自分の思考を最も純粋な形で表現することができる表現形態の1つです。言葉は手紙、記事、あるいはテキストメッセージなどの形式で情報を伝えることができます。ライターは紙の上のインクやスクリーン上のデジタル化されたピクセルの形式で彼らの思考を広め、共有するでしょう。
私は、うまく文章を書くことが成功のきっかけとなることを学びました。それは個人的成長、専門的開発、あるいは社会的成功のどの場合にも当てはまります。過去数年間に数十の記事を書きながら培った数多くのスキルのおかげで、私はPutnam Investmentsのフルタイムのソフトウェアエンジニアになることができました。
開発者として、文章の書き方を学ぶことで得た5つのメリットについて以下で説明します。
1.良く書けるようになれば、良いコミュニケーターになれる
私が頻繁に文章を書くことによって実現した最も明白なメリットは、良く書けるようになれば良いコミュニケーターになれることです。人間として、私たちは主に言葉を利用して私たちの感情や考えを他人に伝えることに依存しています。頻繁に書くことで、正しい言葉を使用しているか、多すぎず少なすぎず丁度良い量書けているか、曖昧すぎたり複雑すぎたりしないか心配することなく、自分の思考をより簡単に説明できるようになりました。
職場では、正確なスペルや類語を調べるために辞書を引く必要もなく簡潔なメールやインスタントメッセージを送れますので、優秀であるように思われます。志向があなたの心からあなたの手に自由に流れることができるならば、その言葉は紙の上でなめらかに流れ、特定の目的を達成するために後で弄り回す必要はありません。
他の多くの技術と同様に、ライティングを学ぶためには数年にわたる練習が必要です。ライティングの最も素晴らしい部分は、改善が検出可能であることです。以前の作品と比べて、時間経過に伴い目に見えて品質が改善しているのを見ることができます。
2.読者のためのライティングは、より良い仕様書を書くのに役立ちます
優れた開発者である基準の1つとして、技術案件と仕様を他のステークホルダーに伝える方法を知っていることが挙げられます。あなたの読者を知ることは、文章を書くことの重要な一部分です。ステークホルダーとのコミュニケーションやあらゆる種類の文書の作成でも同じことが言えます。
テクニカルではないチームメンバーと作業する場合は、技術的な用語や概念を深く理解し、それを一緒に作業している人に共鳴する方法でうまく説明する必要があります。例えば、プロダクトオーナーやデザイナーと一緒に作業する場合、私はいつも細部に立ち入ることを避け、私が取り組んでいる内容の大まかな概要を伝えます。デザイナーに対しては、私はUXやUIの観点から機能を実装する方法を伝えます。プロダクトオーナーに対しては、私はビジネスの観点から自分の仕事について説明します。
また、開発者は自分の仕事を他の開発者に伝える必要があります。変数名や関数名のネーミング、インラインコメントの記述、システムのハイレベルな動作の文書化など、開発者はコードを理解可能で維持可能なものにするために適切な文書を書く方法を知る必要があります。私が文書を書く時には、私はいつもそれを可能な限り完全なものにしようとします。私のコードベースで作業している開発者は全て、ハイレベルな構造を理解することができ、コードを解剖したりリバースエンジニアリングしたりすることなく即座にコントリビュートすることができます。
3.ライティングを学ぶことで、あなたはプログラミングの特質を認識できます
2011年、とあるRedditorは/r/programming subredditにライティングとプログラミングの類似性について書き込みました。ある人は「プログラミングは、概念的には難しいものではなく、時間の経過とともに洗練されたものであるという点で、書くことに似ています」と述べました。またある人は「ライティングはクリエイティブな試みであり、プログラミングは基礎概念に対する深い理解を必要とする複雑な科学であるという点で、ライティングはプログラミングとはまったく異なります」と述べました。
それぞれのニュアンスに若干の不一致はあるにせよ、一般的なコンセンサスは、ライティングもプログラミングも構文や構造、意味論などの基本的な知識が必要であることで一致します。しかし、どの分野でもベテランとアマチュアを区別するのは創造性であり、手元のシステムやトピックの複雑さに対処する能力です。
ライティングは開発者に異なる思考法を教えます。開発者にとっては、使用できるキーワード、関数、ライブラリの数が限られているため、コードの作成が制限されているように感じることがあります。しかし、自然言語はプログラミング言語は通常許さない方法で自由に表現することを可能にします。
Ted Kaminskiは、コードやそのほかの媒体で使用される言葉の目的について興味深いことを書いています。
「まず、文章は読まれます。コードは読まれ、そして変化します」-Ted Kaminski
ライティングの領域内では、読者と作者の関連を分離するために厳密な二分法が形成されているように見えます。ライティングは石に固定されているように見えますが、コードは古い物を改善しようとする現在進行中の試みです。
多くの点で、「創造的」に書くこととコードを書くことには多くの類似点がありますが、その違いを知ることで両者をより深く認識できるようになります。
4.ライティングは、あなたが学んだことを実地適用するチャンスを与えます
私が書くとき、いつも自分と会話している気分になります。本を読み終えたり、重要なことを発見したりしたとき、私は自分が学んだことを記事に書くことで、私の考えについて熟考します。私にとっては、特定の分野で私の知識を進歩させるための最良の方法は、そのトピックについて書くことだと分かっています。
freeCodeCamp(開発チュートリアルや記事のための最良のリソースの1つです)や基本的な開発チュートリアルを提供する他の多くのWebサイトでは、著者は様々なトピックやコンセプトについて書いています。非常に多くのボランティアが自分の時間を使って記事を書く理由には、自分の経験を共有したり他人を助けたりするだけでなく、書いている話題に関する知識を深めることも含まれます。
私が学ぶ対象の話題について書くとき、私はいつもそうでなければ晒されないようなほど大量の情報の断片に対するリサーチを行います。私が書く時、私は長期的に私が学んだ内容を覚えています。また、私はときどき、最初の見通しとは違う、異なる視点と観点に遭遇することもあります。ライティングの全過程は生きた会話であり、私は遭遇した情報を処理しながら自分の判断を下すことができます。
ライティングは、私たちが取り入れた情報を消化して処理するためには素晴らしい方法です。しかし、学識や知性は取り込む情報量からではなく、その情報を効果的に処理して有意義な結論を導く能力から生まれます。
5.ライティングにより、カタルシスを得ることができます
私ライティングが重要であると考えるこの最後の理由は、以前の4つの理由と比べると開発者のロールと直接関係しないかもしれません。しかし、それはもっとも重要ではないとしても、依然として重要です。私が書くことを選んだ理由の大きな部分は、ライティングが私の感情や思考の主な拠点だからです。私は自分の感情や思考をボトムアップしていくのが好きではないので、私はカタルシスのために文章を書いています。
私は若い頃、日記帳に日記を書きました。い合、わたしは様々な話題について書いて、読んでもらうために世界中に公開します。しかし、私は今でも個人的な考えを表現するために紙とペンに戻ります。私は私の専門的な目標、個人的な人生、社会的な関係、そしてそれらの中間の全てについて疑問があるときに時折書くプライベートな日誌を持っています。
「書くことは簡単だ。タイプライターの前に座って血を流すだけで良いのだから」
私の気持ちについて書いているとき、話を真面目に聞いてくれる友人と話しているような気分になります。否定的な感情を取り除き、批判される恐れなく白紙のページに向けて語る方法です。
ライティングには多くのメリットがあります。それはあなたの思考を表現するのに最適な形式ではないかもしれませんが、今日の耳障りでカオスな世界においてさえ、必要かつ有用なスキルです。もしあなたがライティングの初心者であっても、一人で座りながら思考し、心の赴くままに自由に書くことをおすすめします。あなたが思いつくことが自由に書けることは素晴らしいです。
私の記事をチェックする時間を割いてくれてありがとうございます!