サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Switch 2
twodollarz.hatenablog.jp
前回のエントリーでは、学習のゴールである概念ネットワークについて説明しましたが、今回は本題の学習法について説明したいと思います。前回のエントリーを読まれていない方はこちらをご覧の上、続きを読んでください。 私の考える構造的学習法は4つの戦略から成り立っています。なぜそれらが有効なのかは、適宜補足を加えていきますが、前回エントリーで説明した概念ネットワークの幾何学的な意味を想像しながら読んでもらえると理解の助けになると思います。 マッピング 最初の戦略はマッピングをマッピングと呼んでいるものです。概念ネットワークに新しいノードを追加したい場合、既知の概念との距離が遠ければ遠いほど、新しい概念との関係性を表現するのは難しくなり、理解の速度が落ちます。今までまったく予備知識の無い分野にチャレンジした時に、なかなか理解が進まずにどかしく感じた経験は誰しもあるかと思います。それはこの性質によるもので
clangとllvm-gccがごっちゃになってはまったので整理してみた。 Mac上でXcodeを使わずにObjective-Cのプログラムを書いた時のお話。 前提はMac OS X 10.7.3, Xcode 4.3.2です。 以下のようなmain関数からいくつかのクラスを呼び出すコードを書いて、 gccを使ってコンパイルした所エラーが発生。 #import "Song.h" #import "Singer.h" int main(void) { id song; id singer; song = [[Song alloc] init]; [song setLyrics:@"HaHaHa"]; singer = [[Singer alloc] init]; [singer setSong:song]; [singer sing]; return 0; } $ gcc -o app mai
アプリケーションのI18N対応をする中で出てくるタイムゾーン問題。今回はRails3環境で ActiveRecordのTimezoneの設定をどのようにすべきかまとめてみました。 photo credit: Myxi via photo pin cc Timezoneの問題はOS、DB、Frameworkといろいろ絡みうるので、一つ一つ行きたいと思います。 OSのTimezone Amazon EC2などだったらそれぞれの地域のタイムゾーンで運用しているケースも あるかと思いますが、JST(日本標準時)で運用しているところが多いのではないでしょうか。 $ date Tue Jul 3 12:54:53 JST 2012 $ ls -l /etc/localtime lrwxrwxrwx 1 root root 30 Jul 3 10:51 /etc/localtime -> /usr/sh
Windows, Linux, MacOSどのOSでも利用できるエディタということで個人的にVimを愛用しています。私たちの会社では、エンジニアはエディタは各々好きなものを利用することにしているので、社内では他にもEmacsやEclipseやメモ帳などが使われています。メモ帳Hacksは別の人に任せるとして、今回はVim派を代表して、Vimの便利な機能の中でも意外と活用されていないText Objectsについて紹介したいと思います。 基本となるText Objects Vimには3種類の基本となるText Objectsが存在します。単語、文章、段落の3種類です。まずは単語から見てみましょう。 aw 前後の空白を含む単語(a word) iw 前後の空白を含まない単語(inner word) aが冠詞のaを表し、iがinnerを表し、wは単語を表しています。同じように文章と段落は以下の様
昨今ノマド的な働き方が流行っているようですが、 個人的にはあまり生産性の高い仕事の仕方とは言えないと思います。 ということで唐突ですが、ノマド反対!w photo credit: hyku via photopin cc 理由は簡単です。 ノマドワーカーになれる条件として以下の3つが挙げられています。 集中力のコントロールができるということ 情報をコントロールできるということと 仲間とのコラボレーション(協調)をコントロールできること けど、それだけ自律的に仕事ができる人ってそもそも付加価値が高くないですか? そういった人材がこの3つをコントロールすることに労力を掛ける方が 仕事の効率のロスが大きいので、ノマドをできるぐらいの人は ノマドをやらない方がお得というパラドックスになるというわけです。 ノマド自体が目的化しているのであれば話は別ですが。 エンジニア以外の職種の方は分かりませんが、
サーバに対して何台も同じような設定をしていると、そんな刺身にたんぽぽのせるような仕事やってられるかー!となりますよね?特に最近だとクラウドや仮想化技術が身近になってきたので、環境をイメージコピーで構築する手法も増えているのではないかと思いますが、一方で、ハードやOSレベルでも技術が進化していくので、OSより上のレイヤー(ミドルウェアやアプリケーション)とOS以下のレイヤー(ハードウェアやOS)を粗結合にしておくことが重要だと思います。 OSより上のレイヤーのシステムの構成管理を自動化ツールとしてPuppetが有名でしたが、最近だとChefがRubyでスクリプトが書けて便利です。 ChefはChef-server, Chef-client, Chef-solo という3つの構成に分かれています。しかしChef-serverとChef-clientを利用した構成は構成がやや複雑になるので、中央
システム全体の品質は、そのシステムを構成する各要素の品質の積で表現される。 photo credit: thebmag via photopin cc システムは一つでも欠陥があると全体として欠陥があるとみなされる。なので、例えば90%の信頼性のモジュールと90%の信頼性のモジュールを組み合わせたシステムを作ると、両方において問題が発生していない確率は81%となり全体としての信頼性も81%となる。 このようなパターンはシステムとモジュールの関係だけに当てはまるわけではなく、組織やプロセスにおいても仕組み(システム)である以上同じように当てはめることができる。一人がミスをすればお客様からの信頼を失うってしまうことは、個人という構成要素が会社というシステム全体の品質を左右しているといえるし、生産工程の中で一行程で問題が発生した場合に全行程が止まってしまうことも同様である。 では、システム(仕組
今回は仕事の生産性について書いてみました。20〜30代の若手の社会人の方向けのエントリーです。仕事の生産性を上げたいとき皆さんはどうされています?今日は生産性を上げるために、自分が意識していることを紹介したいと思います。 photo credit: hawkexpress via photopin cc 複利の仕事を意識しよう 結論から言うと、普通の人の数倍の生産性を上げたいのであれば、仕事にコミットする時間や集中力に加えて、何に取り組むかを正しく選ばなければなりません。そして仕事を選ぶときは、それが複利の仕事であるかどうかを考えて選んでください。 複利の仕事とは何でしょうか?複利というのは、銀行の金利を説明する際によく使われるとおり利子(得られたリターン)が次の元本に含まれるようになることです。単利と複利とでは1、2年ではそれほど差がつきません。しかし数年と時が経つにつれて差が開いてきま
以前のエントリーで「もう少し構造的な学習方法については詳しく書きたいので、別のエントリーで紹介したいと思います」と言っておきながらしばらく放置していたのを若いメンバーに指摘され筆をとった次第です(笑)今まで個人的に感覚で実践してきたものをまとめたものですので、何かのヒントになれば幸いです。 私が思うに学びというのは大きく2種類あるかと思っています。それは、静的な学び(概念の理解)と動的な学び(因果律の習得)です。この一連のエントリーでは、前者の概念の理解を効率的に行うための学び方(個人的にそれを構造的学習法と呼んでます)を紹介したいと思います。後者の学びは、フィードバック学習法と呼んでいるものがあるのですが、別の機会に紹介したいと思います。 気が重かった理由は単純で、きっと書き始めたら短くはならないだろうと踏んでましたが、実際書いてみると予想通りの長文となってしまいましたので、エントリーを
最近会社にインターン生が2名入ってきました。プログラミングはほぼ未経験だったのですが、この1ヶ月ぐらいで見違えるぐらい成長しています。若いエンジニアの卵が成長するのを見るのは楽しいですね。久しぶりに教える機会がたくさんあるので、その中で感じたことをまとめておきます。 乾いた根に水を与える そもそも当人に学ぶ意欲があるという前提は、教えるにあたって重要だと改めて思います。私は植物を育てるのが好きなのですが、水やりの基本として「土の表面が乾いてきたころに水やりをすること」が重要だと言われています。人も同じように、学びたい/成長したいと乾いている人に、アドバイス(水)を与えるのが基本だと思います。植物の場合、水を与えすぎると根腐れを起こしてしまうのですが、知識も同様に詰め込んでも吸収する土台がなければ、身になりません。双方にとって時間の無駄になってしまうので、意欲が湧かないのであれば環境を変えた
このページを最初にブックマークしてみませんか?
『Future Journal』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く