web-dev-qa-db-ja.com

開発者はどのようにして最新のテクノロジーを使いこなす時間を見つけますか?

私は2004年頃までフリーランスのWeb開発者でしたが、管理ルートをたどり始めたのですが、再び開発(特にJavaScriptおよびHTML5 Web /モバイルWebアプリ)に戻ろうと決心し、本当に優れた印象を得ましたこれらのおよび同様の高速移動テクノロジでは、新しいスキルの学習に加えて、既存のスキルの向上に投資するために一定の時間を確保する必要があります。

物事に戻ってきたので、今は理解しています。かなり急な学習曲線がありますが、そこには多くの人がどれだけ優れているかを見ることができます。そこで立ち上がる唯一の方法は、かなりの時間を費やすことです。

フルタイムの開発者として働いている人にとって、私が理解しようとしているのはこれです。ほとんどの日、オフィスで学習/研究と比較して実際にコードを磨くのにどれだけの時間が費やされていますか。毎日2〜4時間を費やすことで、物事を進めるための最良の方法を身に付けることができました。

フルタイムで雇用されているほとんどの優れた開発者は、スキルを磨く仕事以外にかなりの時間を費やしていますか?

または、私はこれをすべて完全に間違っていると考えていますか?

83
u2sonderzug

正直なところ、ニュースフィードリーダーを使用しています。私は数多くのブログやテクノロジー関連のサイトを購読しています。私は昼食時、仕事の前、そして仕事の後でフィードを読みます。しかし、私はそのために私のタブレットを使用しており、ニュース提供元が価値と時間の比率に優れているかどうかを常に検討しています。私はおそらく新しいことについて1日1〜2時間読んでいます。

一般的に、実際の知識の伝達でない限り、コメントを読んだりコメントしたりすることに時間を費やすことはありません。

61
Phil Hannent

本当に?これはまだ答えの1つではありませんか?

newThingについて聞いたことがある上司に、特にhideousProblemWeJustHadを使って会社を助けることができることを提案します。それが私がユニットテストに進出した方法です。それはエッジを超斬新なものではありませんが、私の学校はそれが何であるかを教えるという恐ろしい仕事をしました、そしてそれは私にとって新しいものでした。それを行う時間の一部は、間違いなくそれを正しく行う方法を研究することでした。

そして、これは多かれ少なかれあなたの制御の外にありますが、私はしばしば自分の仕事をするためだけに新しいことを学んでいます。 DO-178とSQLを身につけたのは、それらが当面のタスクに必須であったからです。あなたが本当に新しいものに飛び込みたいなら、新しい仕事を得なさい。

要するに。 学ぶために報酬を得ます。これらの新しいもの(の一部)を使用する実際の正直な理由があります。彼らはより良いので。彼らがより良いなら、それは彼の収益を助けるので、ボスはあなたにそれらを使わせてくれるでしょう。確かにオーバーヘッドがあります。学習プロセスは瞬時ではなく、時間はお金ですが、それだけの価値がなければ、ちょっと、新しいことはそれほど良くはないかもしれません。その場合、それはたわごとです。

31
Philip

私が遭遇した最も有用な情報を Anki デッキに入れました。毎朝、5〜10分かけて資料を調べます。たとえば今週、アンキは私がしばらくは扱っていなかったこの質問を私に尋ねました:

PHP:参照された配列のforeachの後に何をしなければなりませんか?

答えがunset($value)reset($value)かを覚えていなかったので、それが私を鋭くしました。案の定、今朝はコードでそれを使用する必要がありました。

AWS、PHP、Bash、およびそこで使用しているその他のテクノロジーに関する情報の一部を保管しています。少なくとも、Ankiは情報を最新の状態に保つか、忘れてしまった場合でも見つけやすいようにしています。

編集:また、プログラミングはソフトウェア開発のキャリアに発展した趣味でした。キャリアが趣味でもある人は、プロとしての関心だけでなく、個人的な関心として当然ながら遅れをとらない傾向があることがわかります。これは、プログラマーだけでなく、芸術家、医者、庭師、および他のほとんどの熟練した職業にも当てはまります。

15
dotancohen

時間が限られている場合は、最高品質の素材に集中することをお勧めします。

本(良いもの)は、ブログよりも高品質の素材を持っている可能性が高いです。 Amazonでの顧客レビューの平均スコアが高い本は、通常、最高品質の資料を持っています。 Kindleを入手して、そのテーマに関する数冊の高評価の本をダウンロードしてください。たぶん1日1時間の読書? -それはとにかく私がやっていることです、何が良い時間のガイドラインかわかりません。

サドルに戻って予算がある場合は、キックスタートのためのまともなトレーニングコース(または会議)に参加することをお勧めします。数日間の激しいトレーニング=数ヶ月の読書。

12
GBH

のこぎりを研ぐ は、知識ベースの作業に関わるすべての人にとって必需品です。その方法は個人に任されています。ここにいくつかあります[〜#〜] i [〜#〜]します

  • ポッドキャストを聞いて、ピックアップリンクは技術について学び、その関連性は特定の領域です( http://www.javaposse.com/http://www.se-radio .net / およびその他多数)
  • 私はかなり重く読みました(管理とテクノロジー)
  • 私の通常の作業では直接使用されない、新しいものの感触を得るために小さなプロジェクトを行います。
  • Google Tech Talks-これは単純なポッドキャストよりもはるかに複雑ですが、より便利です。
8
Jayan

率直に言って、はい。良い開発者do仕事以外の時間をプログラミングに費やす。多くの場合、これはペットプロジェクトであり、彼らは新しく興味深いものをいじることができます。多くの場合、仕事に適用できないものは、心を広げ、(比較的)最先端に追いつきます。

6
Telastyn

AC/DCが言うように:「ロックンロールが欲しいならトップへの長い道のりです」。

トップを目指すのは簡単なことではありません。馬に乗ろうとする主な問題は、時代遅れに感じることです。

TDDを理解しようとすると、Dependency Injection、次にInversion of Controlコンテナーにつまずきます。私のレーダーの下でポップする最新のものはCQRSでした。それらすべてを一度に把握しようとすることは本当に難しいです。小さなステップ。

そしてそれはそれのいくつかがただの流行と見なすことができるという事実を助けません。男の子、私たちはすべての問題を解決するこの新しい光沢のあるものを自慢したいですか?.

試すことのいくつか:

  • http://www.safaribooksonline.com/ 彼らは月額9.99ドルあたり5スロットのサブスクリプションを持っています(それはちょっと隠されています)。彼らはモバイルアプリを持っています。どこにいても勉強できます。

  • いくつかのビデオクラスを購読してください。私は http://tekpub.com/ を一度購読して、大好きでした。 https://peepcode.com および http://pluralsight.com も知っています。外出先でも視聴できます。

  • いくつかの良いニュースフィードを選択し、それに従ってください。量より質を選ぶ。そうでなければ、あなたはあまりにも多くの情報に打ちのめされたと感じるでしょう。

  • https://getpocket.com を使用して、後で表示したい興味深いページを保存します。新しいタブを開いて後で表示したり、忘れたりするのをやめます。保存されたページを外出先で表示できるモバイルアプリがあります。

  • https://ifttt.com を使用して、生活を楽にします。 Googleリーダーでアイテムにスターを付けると、Pocketに自動的に保存されるようにするためです。

  • http://www.class-central.com/ スタンフォードやMITなどの機関が提供するMOOCのリスト。それのいくつかは本当に興味深いものになる可能性があります。

とにかく、最高のプログラマーはおそらく、新しいことを学ぶために、勤務時間外に多くの時間を費やしています。しかし、彼らはコーディングを愛しているので、それをしています。コーディングが好きなときに、コーディングスキルを向上させる時間を見つけるのは簡単です。 :)

6
Luiz Angelo

「コードを削る」IS最高の学習ツール。新しい方法を使用できるものを与えられたら、私はそれが機能するまでそれを叩きます。顧客が新しい技術を必要とする何かを要求した場合、私は彼らにそれを請求しますが、それが私が習得していなかったものであるなら、私は彼らに請求しません。

ウェブ関連は順調に進んでいます。私の小さな会社では、知らないことや時間がないときにフリーランサーを使っています。通常、彼らは私に教えますが、今日うまくいくことに追いつくのは難しくなりましたが、あなたは昨日は使えなかったか、それが明日働くので、今日そしてそれを何度も学ぶべきです。

Web以外のものについては、より安定していました。 1つのプラットフォームで1つの言語でコードを記述しました。ここで、HTML/CSS/Javascript/Java/SQL/PHP/* nix /これらのすべてのAPIを知る必要があります。そして、Internet Explorerがあります。

一人の開発者にとっては苦労です。

4
Rob

独自のプロジェクトを概念化して構築します。

真剣に。私が学んだことのすべては、私がいくつかの遠いアイデアを思いついて、それから座ってそれを理解しようとすることから来ています。これを十分に長く行うと、継続的な改善への道を進むことになります。

3
Chris Cagle

私が何か新しいことを学ぶときに使用する1つのトリックは、StackOverflow(または技術の専用フォーラム)にアクセスし、答えがわからない質問を見つけて、答えを理解することです。また、新しいスキル/テクノロジーを使用して何かを実装しようとしています。たとえば、Windows Phoneのプログラミング方法を学ぶために、妻にどのようなアプリが必要かを尋ねました。そのアプリを作成する過程で、プラットフォームとその方法について詳しく学ぶ必要がありました。

好きなだけ読むことができますが、読んだ経験はありません。

2
Michael Brown

他の人が動かしているのではなく、何があなたを動かしているのかを自問してみてください。

たとえば、モバイルアプリを作成したり、ウェブアプリでの作業を継続したりするのは、過去の経験があるためですか、それともテクニカルコンサルティングを行いたいですか?今後数か月または数年の間に何をしたいかがわかれば、どこから始めればよいのか、何を学ぶ必要があるのか​​が正確にわかるでしょう。

これは、IT担当者だけが質問する問題ではありません。

2
Tejaswi Rana

ただあなたの自由な時間を最大限に活用してみてください。毎日3時間をかけて新しいテクノロジーについて学びますが、それでもおそらくソーシャルライフを楽しみたいと思うでしょう。したがって、それが最善のアプローチではないかもしれません。

私が通常行うことは、(通常の状態で)私が「怠惰」であるような瞬間に学ぶことです。 (Facebookにいる代わりに)仕事で休憩が必要なときの出典、ランチタイムに同僚とテクノロジーについて話します。

2
margabit

私はこれに時間をかけるための「方法」または「なぜ」のより良い説明を見つけたことがありません Peter Norvigの「Teach Yourself Programming in 10 Years」 。 「時間を作る」という動機を失うと、あなたが指摘したように、誰がそうしませんか?!? -私は彼の記事をもう一度読んでコミットします。 :)

1
egbutter

フルタイムの開発者として働いている人にとって、私が理解しようとしているのはこれです。ほとんどの日、オフィスで学習/研究と比較して実際にコードを磨くのにどれだけの時間が費やされていますか。毎日2〜4時間を費やすことで、物事を進めるための最良の方法を身に付けることができました。

私の会社は非常に前向きな考え方をしており、最新のテクノロジーに照らして開発していることを確認したいと思っています。彼らは、その一環として、開発者に新機能やAPIなどに取り掛かる時間を与えなければならないことを認めています。たとえば、最近、Richfaces 3からRichfaces 4に切り替えました。新しい風景を理解する。会社があなたに会社に最新の開発を維持する時間を与えることを約束できない場合、あなたは間違った場所にいる可能性があります。

会社にSafari Booksライセンスを取得してください。それはそこにある最高のテクニカルブックの包括的なリソースです。一連のラフカットと進行中の作業を含みます。一般的にウェブも素晴らしいリソースですが、周囲のノイズや誤報のレベルが高いです。

フルタイムで雇用されているほとんどの優れた開発者は、スキルを磨く仕事以外にかなりの時間を費やしていますか?

また、最新の状態を維持するために、毎晩1時間ほど投資します。時々、私も私の認定資格を更新します。これには、週末に達成するために追加のコミットメントが必要です。

もう一度あなたの会社にあなたがあなたの時間にこれをしていることを知らせて、彼らがあなたの試験料金またはトレーニングのために支払うかどうか確かめてください。または、会社の時間に試験を受けられるようにすることもできます。

1
Tim

答えは簡単です。職場で最新のテクノロジーを使用してみてください。できない場合は、サイドプロジェクトを行ってください

しかし、時間を節約するために、最初に何を学ぶべきかを知る必要があるので、時間を上手に使うことができます。

これは私のために働いたものです

  1. ハッカーニュースですが、注意してください。定期的にキーワードを検索するとうまくいきます
  2. GitHub-ほとんどのスター付きおよび分岐したプロジェクトのリストを参照してください。これはほとんど常に現実と同期しています
  3. Stackoverflow-最もトレンドのタグと質問を表示
  4. Googleトレンド(ただし、何を最初に探すかを知る必要があります)
  5. 確かに仕事の傾向(これは例えば、MongoDBについて私がどのように学んだかです)
  6. ミートアップ(非常に良い情報源)
  7. Twitter-あなたが尊敬する仲間のハッカーをフォローしてください、私はしばしばそのように新しいものを知りました
  8. Coderwall、Geeklist、その他のハッカー専用のソーシャルネットワークも時々役立ちます
  9. 会議-それらのほとんどは、事実またはライブ後にオンラインで記録されています
  10. または、自分で新しいテクノロジーを作成することもできます:)

2番目の部分は、効果的に学習して時間を効果的に使用する方法です

Udacity、coursera、codeschool、codecademy、teamtreehouse、edx.org、udemy、net tuts +などのコースは最新のテクノロジーに追いつく傾向があるため、すばらしいリソースであることがわかりました

一方、あなたは私が以前に持っていたように情報爆発に終わり、それについて怒鳴ることができます: http://tilomitra.com/the-crazy-world-of-code/

1
Eran Medan

継続的に使用するリソースとツールを以下に示します。テクノロジーのテーマについては、1日1〜2時間読んでいると思います。

コーディングに費やした時間に対する仕事での読書に費やした時間の比率に関する限り、それが目前の仕事に直接関連している場合(たとえば、その新しいフレームワークを適切に使用する方法など)、私は主題を読むのに時間を費やします。

私は2種類の読書をしています。私が使用している、または将来使用する特定の主題に関する深い読み、または私が使用していないがまだ興味深いと思う他の技術分野を閲覧する広い読書。

  • ポッドキャスト

    • 移植性があるため便利です。通常は読むことができないときに聴くことができます(例:ジム、掃除屋、料理)
  • RSSリーダー

    • 彼らはあなたのブログのフィードを集約するので便利です。それらを使用して、価値の高いコンテンツをグループ化します。
    • これらのフォルダーは購読しているすべてのブログをカバーするため、特定のテクノロジー用の「検索」フォルダーを設定すると便利です。
  • Safari Books Online

    • 費用がかかるので、これを行ったり来たりします。私がそれを使うとき、それは大きな価値ですが、あなたがあなたの棚に追加するすべての本を読むのに努力が必要です。
  • 書籍(デッドツリー形式)

    • 特定のテクノロジーの詳細や参考資料として役立ちます。

スコットハンセルマンは、「個人データストリーム」の扱いに関する優れたビデオを公開しています- http://www.hanselman.com/blog/ItsNotWhatYouReadItsWhatYouIgnoreVideoOfScottHanselmansPersonalProductivityTips.aspx

0
Rich Rousseau

言われたことに加えて、「計画を立てなさい」と付け加えます。 6か月から12か月ごとに1つまたは2つのテクノロジを選択し、これらのテクノロジを深く理解することを目標としています。次に、実際のタスクを定義してそこにたどり着こうとします。たとえば、いくつかのオンラインチュートリアルを読み、そのテクノロジーを使用してサイドプロジェクトを選び、新しいディスカッションサイトのフォローを開始します(またはStackOverflowの新しいタグをサブスクライブします)など。大量の時間は必要ありませんが、毎週少しずつ前進することで一貫性があります。 (GTDなどの生産性システムを使用している場合、学習目標を通常のプロジェクトと目標計画に含め、定期的に確認することができます)。

0
Ed Schembor

ニュースレター!

私は現在 Pycoder's Weekly というニュースレターを書いていますpython開発者向けの毎週のニュースレターは、pythonあなたが追いつけたいかもしれない特定の領域に非常に話題です。

それは実際にはプラグを意図したものではありませんでした。

このメディアは物事に追いつくのに非常に役立ち、多くの開発者にとって優れたリソースだと思います。

さまざまな言語やツールに対応するものが多く、大量のニュースを調べて、興味深いものを見つけるのに時間がかかり、非常に煩わしい場合があります。

0
dustyprogrammer

新しいテクノロジーを常に把握するために、いくつかのことを行います。

  • 私はおそらく、週に平均8〜16時間を費やして、何か新しいことを学んだり、アイデアを磨いたり、新しいテクノロジーを試したりしています。たとえば、ASP.Net MVC 4について詳しく知りたいので、古いデータベースのメタデータを管理できるように、仕事用の簡単なアプリをまとめました。アプリが使用されることはほとんどなく、これは認可されたプロジェクトではありませんでしたが、新しいフィールドなどを追加する必要があり、必要に応じて操作することができます。
  • 過去に私が書いたり、作業したりしたものを再訪し、言われた新しいテクノロジーでそれをやり直そうとします。少し前にPerlで簡単なスクリプトを書いて、15分ごとにパブリックWebページを変更を監視できるようにし、Pythonでどのように表示されるかを確認してから、Clojureで再構築しました。
  • 私はO'ReillyのSafariアカウントの料金を支払い、使用しています。興味のあるものについては、常に新しい本を交換しています。
  • さまざまなStackExchangeボードを読んで、人気のあるもの、トレンドのものなどを確認しました。質問に対する答えがわからない場合でも、自分で答えを見つけようとすることがあります。

これらは私が行うことのほんの一部ですが、明確なことは、もしあなたが何か新しいことを学び、最新の状態を保ちたいのであれば、時間を投資する用意があるだけです。それはあなたが磨きたい他のスキルと同じです。

0
Maurice Reeves