開発者のキャリアを始める卒業生でも、別の分野からプログラミングに移行する人でも、長年これをやっている人からプログラマーを始めるためのこれらの7つのヒントを止めて読んでください。
ボンネットの下をのぞきます
プログラミング言語の知識は、ソフトウェア開発の基礎です。 しかし、舌の裏に隠れているものを理解することも同様に重要です。
AcquiaのサポートエンジニアであるPete Ballは次のように述べています。「 システムレベルで発生することから多くの言語が抽象化されています。この抽象化は、開発者がより迅速に開発できるため便利です。 しかし、本当に不快なバグである熊手に出くわした場合、内部で何が起こっているのかを理解する必要があります。 プロセスの内部を調べ、システムコールを調べ、コードがシステムの他の部分とどのように相互作用するかを理解できることが絶対に必要です 。
同様に、Platform.shの顧客満足担当副社長であるRobert Douglasは次のように述べています。「 プログラミングを始めたとき、本当に理解していなかったことがありました。 そのようなものの3つの例は、ファイルシステム、ネットワーク、およびデータがメモリに格納される方法です。 これは、私が遭遇したプログラムのいくつかの目標を必ずしも理解していなかったことを意味します。
コマンドラインツールを理解する
開発者として、ほとんどの場合、美しいエディターまたはIDEでコードを記述する可能性があります。 ただし、さまざまなコマンドラインユーティリティを知っていると、作業が楽になります。
匿名を希望する20年の経験を持つベテランは、次のように語っています。「 限られたツールと今すぐに実行する必要のあるタスクを備えたマシンの前にいることがあります。 5本の指のようなコマンドラインを知っている。 find、comm、diff、vi / vim、sed、awkなどのツール。 プロダクションが壊れているため、すぐに修正する必要があるファイルを見つけるためにコマンドラインで小さなスクリプトを作成する方法を知っています 。 間違った場所で小さな手を登ったジョーはフィジーで休暇中です。
マイクロソフトのツールを使用して、現在Linuxに移行している点は、次のとおりです。「 コマンドラインと* nixユーティリティについて可能なことをすべて学びました。 1年前に書いたコードと、1行のgrep + awkによって解決されるものに何日または何週間かかったかを思い出すことができます。」
デバッガはあなたの友達です
開発者としては、バグをキャッチするのに多くの時間を費やします。 NovartisのバイオテクノロジープログラマーであるDave Vaironは、デバッガを習得するのに時間がかかるにもかかわらず、デバッガの利点を強調しています。
“ デバッガーの使用方法を学びましょう! 「彼は言います。 「 1〜2日かけて設定してください。 期待した結果が表示されない場合は、デバッグするだけです。ブレークポイントを設定し、コード、特にサードパーティライブラリのコードに沿って慎重に移動します。 さらに、失望の日々を奪うことになります 。 他の人のコードを読むだけで新しいことを学ぶことができます 。」
テストの書き方を学ぶ
一部の開発者は、単体テストの決定的な重要性を確信しています。これには、開発者が意図したとおりにコードが機能することを確認するための小さなテストの作成が含まれます。 これらの人々の中には、Strategic Power Systemsのデータベース開発者であるRichard Handloffがいます。 彼は次のように書いています。「 初心者の開発者にできる最善のアドバイスは、できるだけ早く良いテストを書く方法を学ぶことだと思います 。」
自分で計画する
技術の急速な変化に伴い、プログラマが使用するシステム、言語、ツールは変化しています。
Milestone Madeのモバイル開発者であり創設者であるAdam Woolfは、新しい開発者は変化に備え、波の頂点に立たなければならないと示唆しています。 「 今、私はあなたが4年ごとに新しい技術スタックを学ぶ準備ができているべきだと言いたいです。 優れた基礎知識は常に関連しますが、毎日使用するツールとテクノロジーは、指定された頻度で変更されることが少なくありません 。
「 プロジェクトは、もはや同じ言語と技術スタックで書かれていません 」と匿名の開発者は言いました。 「 1つのプロジェクトで1つのテクノロジーのみを使用することに制限されることはありません。 プロジェクトからプロジェクトへ、およびある言語と技術から別の言語への移行に慣れてください 。」
協力する
開発者は通常別々に作業するという事実にもかかわらず、彼らは他の人々と対話する必要があります。 CTO Sinclair Digital VenturesのBen Millerは、あなたのキャリアにとってチームワークの重要性を強調しました。 「彼は書いている。
「 1つのアルゴリズムの改善を開始する前に、チームと一緒になって、問題をすべての人に分ける方法がないことを確認してください。 開発はチームゲームです! 「。
チームスキルの重要性を確認して、Veyron氏は次のように述べています。「 このインターフェースの仕組みを自分で理解できない場合は、助けを求めてください。 あなたの作品を傑作とみなしても、それは傑作にはなりません。 大学のように、部屋にいる他の人も同じ質問やあなただけが答えられる質問を持っています。 同僚との関係を築きます。 多くの場合、問題を発声するだけで洞察が得られます。」
チームプレイの重要性を共有する匿名の情報源は次のように述べています。 しかし、注意してください:あなたは長い間立ち往生する危険を冒します 。」
仕事から離れた自分のためのデザイン
ミラーは、一見したところ明らかではないように思える興味深い十分なアドバイスを提供します。 「 自分で開発することが 、 増加の方法です 」と彼は言います。 「 問題の簡単な解決策を見つけ、コードを明確にし、簡単に修正できるようにしてください。そうすれば、さらに多くの作業を完了できます。 時間が経つにつれて、彼らはあなたにアドバイスを求めさえするでしょう 」と彼は説明します。 「 要するに、安全で安全な仕事への欲求は、キャリアを遅らせるでしょう 。」
翻訳:アンドレイ・ニキフォロフ
___
教育ITポータルGeekBrainsの初心者向けの有用な資料:
ウェビナーの記録「 プログラマの職業について知りたいことすべて 」
無料オンライン初心者向けプログラミング基礎コース