SlideShare une entreprise Scribd logo
1  sur  46
Télécharger pour lire hors ligne
ゆとりがErlangを
 始めるようです
    id:sleepy_yoshi
 (SUHARA YOSHIHIKO)
自己紹介
• id:sleepy_yoshi
  –      で    の  しています
  – (コンピュータサイエンス的な意味で) ゆとり


• ゆとりの由来
  – 会社入る (2 前) まで
    • 分   を らなかった
    • C書いたことがあるけれどmalloc/freeしたことが
      なかった

          注) 1983 生なのでゆとり   ではありません
ここから来ました
そんなゆとりが
Erlangをかじってみました
    ____
   /      \
  / ─     ─\
/   (●) (●) \
|     (__人__)  |
/    ∩ノ ⊃ /
( \ / _ノ | | // //
感じたこと
Erlangは楽しい!
思ったこと
ユーザが少ない!


      (´・ω・`)
人気で眺めるErlang
• TIOBE Programming Community Index
   – 2009 1月 2010 1月




                                 いない・・・
はてブ数で眺めるErlang
•    ) 基礎文法最速マスターシリーズ
    – Perl 1312 users
    – Ruby 973 users
    – Java 528 users
    – Awk 41 users
    – Smalltalk 26 users
    – Erlang 21 users
    – OCaml 12 users
    – Logo 6 users
OCaml以上
Smalltalk未満
シェア拡大のため
どうすればよいか?
基盤系? ウェブサービス系?
既存のシェアをいかに奪うか

• vs. C, C++, Java?
• vs. Perl, Ruby, Python, JavaScript?
• vs. Haskell, Lisp?
視点を変えてみる
ユーザ層で考える
HIGH SKILL   業務で使用


                学生・日曜
                プログラマ

                      ?!



LOW SKILL
そうだ,
ゆとり,
狙おう.
ゆとり (=平成生誕) は増えている
     0.3

    0.25

     0.2

19890.15まで                                    2020 には
平成生まれが
     0.1                                      4人に1人が
 存在せず
    0.05                                      平成生まれ
      0
           1980 1985 1990 1995 2000 2005 2010 2015 2020




            急激なゆとりの増加
まさに
ブルーオーシャン!
ゆとりの心を掴み
Erlangユーザにする
ゆとりの3つの特徴
ゆとりの特徴: 3つの「す」

すぐ投げ出す
 – ググってわからなかったらすぐ諦める


すごくせっかち
 – すぐに何かできるようにならないと嫌な気分になる


すねる
 – 褒められないとすぐすねる
ゆとり向けErlang勉強法
従来のゆとり学習法の問題点
• ゆとりの基本的なプログラミング言語学習方法
 –   print文覚える ⇒ hello, world出
 –   制御構文覚える ⇒ ィ           ッ 数 を
 –       イル入出 覚える ⇒ ここらへんで面倒になる
 –   文字      覚える ⇒ 身につく前に挫折
 –   ...
当初の予定
               ____

 .
             / \ /\ キリッ
           / (ー) (ー)\
                           <「それErlangで出来るおw」
        /     ⌒(__人__)⌒ \
        |        |r┬-|    |
          \       `ー’´   /
        ノ                 \
     /´                     ヽ
   |       l                  \
   ヽ       -一””””~~``’ー?、    -一”””’ー-、.
     ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒))




現実                /)
                 ///)
              /,.=゙''"/             < こまけぇこたぁいいんだよ!!
  /          i f ,.r='"-‐'つ____
/         /       _,.-‐'~/⌒ ⌒\
    /     ,i       ,二ニ⊃( ●). (●)\
  /     ノ        il゙フ::::::⌒(__人__)⌒::::: \
       ,イ「ト、 ,!,!|            |r┬-|     |
     / iトヾヽ_/ィ"\             `ー'´    /
細かいことにこだわらない
    学習方法
ゆとりに辛い学習方法


•   変数は      されると変 できない
•   変数は大文字か_で始まる
•   {A, B, C}はタプル,[X, Y, Z]はリスト
•   print文はio:format/2
•   ...
___
      /       \
     /ノ \     u. \ !?
   / (●) (●)      \
   |  (__人__)     u. |
   \ u.` ⌒´       /
   ノ             \
/´                  ヽ

        ____
      /        \!??
     / u     ノ \
   /      u (●) \
   |          (__人__)|
   \    u     .` ⌒/
   ノ              \
/´                  ヽ
最初にメッセージパッシング
   的に  しやすい &                          プログラミングの基本
⇒ 必要事項は順次学べる


                     {self(), hello}
    Pid1                                   Pid2

Pid2 ! {self(), hello}           receive
                                  {From, hello} ->
                                    io:format(“hello,~p!”, [From])
                                 end,
なんかかっこいいお!
            ____
          /⌒ ⌒\
        /( ●) (●)\
      /:::⌒(__人__)⌒:::\
    |        |r┬       |
      \       `ー'´  /

ゆとりにとっては,かっこよさも大 です
「すねる」対策
ケーススタディ:
id:sleepy_yoshiの場合
____
         /   u \     今ホットなErlangのブログ記事書いたから
       / \     /\ そろそろブクマされてるはずだお
     / し (>) (<) \
     | ∪   (__人__) J | ________
     \ u    `⌒´   / ||       |
     ノ            \ ||       |
  /´                 ||      |
|      l             ||       |




         /
          ____
             u \
                        チラッ
       / \     ─\
     / し (>) (●) \
     | ∪   (__人__) J | ________
     \ u    `⌒´   / ||       |
     ノ            \ ||       |
  /´                 ||      |
|      l             ||       |
____
              /::::::::::::::::\
           /::::::─三三─\
       /:::::::: ( ○)三(○)\              ゼ,ゼロ件!!
       |::::::::::::::::::::(__人__):::: | ________
       \:::::::::        |r┬-| ,/ .| |        |
       ノ:::::::::::: `ー'´         \ ||          |
 /:::::::::::::::::::::                 ||          |
|::::::::::::::::: l                   ||         |
___       < もう,Erlangなんて興味ないお
     /       \
    / ─    ─.\
/ (●) (●) \
|     (__人__)        |
\. _ ` ⌒´        /
  / \           \
  |    \, -‐- 、-‐- 、
  |\     \. (" ̄ .入
  | \       "  ̄ ̄ ̄ )
  | / \,,_______人
  |      /\        \ \
  ヽ,____/;___\         \,,_ \,,__
               (______)___)
後日
____
         /   u \     こないだは週末だったからみんなネット
       / \     /\ してなかったんだお...
     / し (>) (<) \
     | ∪   (__人__) J | ________
     \ u    `⌒´   / ||       |
     ノ            \ ||       |
  /´                 ||      |
|      l             ||       |




         /
          ____
             u \
                        チラッ
       / \     ─\
     / し (>) (●) \
     | ∪   (__人__) J | ________
     \ u    `⌒´   / ||       |
     ノ            \ ||       |
  /´                 ||      |
|      l             ||       |
,.へ
    ___                                                ム i
  「 ヒ_i〉                                               ゝ 〈
  ト ノ                                                   iニ(()
  i {                     ____                            | ヽ
  i i                  /__, , ‐-\                         i   }
  |   i              /(●) ( ● )\                       {、 λ
  ト-┤.             /      (__人__)            \           ,ノ  ̄ ,!
  i     ゝ、_        |        ´ ̄`              | ,. ‘´ハ       ,!
. ヽ、        `` 、,__\                       /“ \ ヽ/
     \ノ ノ         ハ ̄r/:::r―--―/::7        ノ         /
         ヽ.          ヽ::〈; . ’::. :‘ |::/  /      ,. ”
             `ー 、      \ヽ::. ;:::|/           r’“
         / ̄二二二二二二二二二二二二二二二二ヽ
         |答|             Erlang
         \_二二二二二二二二二二二二二二二二ノ
やっぱりErlangは最高!
          ____
        /⌒ ⌒\
      /( ●) (●)\
    /:::⌒(__人__)⌒:::\
  |        |r┬       |
    \       `ー'´  /

       はてなスターや
TwitterでRTするのも効果的です
ゆとり的まとめ
• Erlangはゆとりに優しい言語
• Erlangコミュニティはゆとりに優しい
• よって,ゆとりはErlangを選ぶ
                   ____
                 / \ /\ キリッ
     .         / (ー) (ー)\
            /     ⌒(__人__)⌒ \          時代はErlangだお!
            |        |r┬-|    |
              \       `ー’´   /
            ノ                 \
         /´                     ヽ
       |       l                  \
       ヽ       -一””””~~``’ー?、    -一”””’ー-、.
         ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒))
おそまつ
※ タなので   な   はお しください

Contenu connexe

Similaire à ゆとりがErlangを始めるようです

やる夫で学ぶマーケティング
やる夫で学ぶマーケティングやる夫で学ぶマーケティング
やる夫で学ぶマーケティング
logch admin
 
Eucalyptus 3.1 and next in #occpv
Eucalyptus 3.1 and next in #occpvEucalyptus 3.1 and next in #occpv
Eucalyptus 3.1 and next in #occpv
Osamu Habuka
 
【TDDBC2.1】やる夫で学ぶTDD
【TDDBC2.1】やる夫で学ぶTDD【TDDBC2.1】やる夫で学ぶTDD
【TDDBC2.1】やる夫で学ぶTDD
Kohki Miki
 
オブジェクト指向プログラミング再入門
オブジェクト指向プログラミング再入門オブジェクト指向プログラミング再入門
オブジェクト指向プログラミング再入門
Ryo Miyake
 
about Eucalyptus 3.1 in OSC 2012 Tokyo/Fall
about Eucalyptus 3.1 in OSC 2012 Tokyo/Fallabout Eucalyptus 3.1 in OSC 2012 Tokyo/Fall
about Eucalyptus 3.1 in OSC 2012 Tokyo/Fall
Osamu Habuka
 

Similaire à ゆとりがErlangを始めるようです (16)

やるおがtriphone HMMを作るようです
やるおがtriphone HMMを作るようですやるおがtriphone HMMを作るようです
やるおがtriphone HMMを作るようです
 
やる夫で学ぶマーケティング
やる夫で学ぶマーケティングやる夫で学ぶマーケティング
やる夫で学ぶマーケティング
 
Eucalyptus 3.1 and next in #occpv
Eucalyptus 3.1 and next in #occpvEucalyptus 3.1 and next in #occpv
Eucalyptus 3.1 and next in #occpv
 
【TDDBC2.1】やる夫で学ぶTDD
【TDDBC2.1】やる夫で学ぶTDD【TDDBC2.1】やる夫で学ぶTDD
【TDDBC2.1】やる夫で学ぶTDD
 
オブジェクト指向プログラミング再入門
オブジェクト指向プログラミング再入門オブジェクト指向プログラミング再入門
オブジェクト指向プログラミング再入門
 
about Eucalyptus 3.1 in OSC 2012 Tokyo/Fall
about Eucalyptus 3.1 in OSC 2012 Tokyo/Fallabout Eucalyptus 3.1 in OSC 2012 Tokyo/Fall
about Eucalyptus 3.1 in OSC 2012 Tokyo/Fall
 
Source treeで始めるgit
Source treeで始めるgitSource treeで始めるgit
Source treeで始めるgit
 
Gitのすすめ
GitのすすめGitのすすめ
Gitのすすめ
 
帰りの会
帰りの会帰りの会
帰りの会
 
20141115グンマーのヤボー
20141115グンマーのヤボー20141115グンマーのヤボー
20141115グンマーのヤボー
 
Dev camp25 lt
Dev camp25 ltDev camp25 lt
Dev camp25 lt
 
programming camp 2008, BOF Study Group
programming camp 2008, BOF Study Groupprogramming camp 2008, BOF Study Group
programming camp 2008, BOF Study Group
 
ご注文はコミュニティテンプレートですか?~コミュニティテンプレートを作って、使って思うこと~
ご注文はコミュニティテンプレートですか?~コミュニティテンプレートを作って、使って思うこと~ご注文はコミュニティテンプレートですか?~コミュニティテンプレートを作って、使って思うこと~
ご注文はコミュニティテンプレートですか?~コミュニティテンプレートを作って、使って思うこと~
 
Cold-Start Reinforcement Learning with Softmax Policy Gradient
Cold-Start Reinforcement Learning with Softmax Policy GradientCold-Start Reinforcement Learning with Softmax Policy Gradient
Cold-Start Reinforcement Learning with Softmax Policy Gradient
 
モテる! Node.js でつくる twitter ボット制作
モテる! Node.js でつくる twitter ボット制作モテる! Node.js でつくる twitter ボット制作
モテる! Node.js でつくる twitter ボット制作
 
モダンでもなく reactでもなく フロントエンドでもなく 開発でもない話
モダンでもなく reactでもなく フロントエンドでもなく 開発でもない話モダンでもなく reactでもなく フロントエンドでもなく 開発でもない話
モダンでもなく reactでもなく フロントエンドでもなく 開発でもない話
 

Plus de sleepy_yoshi

SEXI2013読み会: Adult Query Classification for Web Search and Recommendation
SEXI2013読み会: Adult Query Classification for Web Search and RecommendationSEXI2013読み会: Adult Query Classification for Web Search and Recommendation
SEXI2013読み会: Adult Query Classification for Web Search and Recommendation
sleepy_yoshi
 

Plus de sleepy_yoshi (20)

KDD2014勉強会: Large-Scale High-Precision Topic Modeling on Twitter
KDD2014勉強会: Large-Scale High-Precision Topic Modeling on TwitterKDD2014勉強会: Large-Scale High-Precision Topic Modeling on Twitter
KDD2014勉強会: Large-Scale High-Precision Topic Modeling on Twitter
 
KDD2013読み会: Direct Optimization of Ranking Measures
KDD2013読み会: Direct Optimization of Ranking MeasuresKDD2013読み会: Direct Optimization of Ranking Measures
KDD2013読み会: Direct Optimization of Ranking Measures
 
PRML復々習レーン#15 前回までのあらすじ
PRML復々習レーン#15 前回までのあらすじPRML復々習レーン#15 前回までのあらすじ
PRML復々習レーン#15 前回までのあらすじ
 
PRML復々習レーン#14 前回までのあらすじ
PRML復々習レーン#14 前回までのあらすじPRML復々習レーン#14 前回までのあらすじ
PRML復々習レーン#14 前回までのあらすじ
 
PRML復々習レーン#13 前回までのあらすじ
PRML復々習レーン#13 前回までのあらすじPRML復々習レーン#13 前回までのあらすじ
PRML復々習レーン#13 前回までのあらすじ
 
PRML復々習レーン#12 前回までのあらすじ
PRML復々習レーン#12 前回までのあらすじPRML復々習レーン#12 前回までのあらすじ
PRML復々習レーン#12 前回までのあらすじ
 
ICML2013読み会: Distributed training of Large-scale Logistic models
ICML2013読み会: Distributed training of Large-scale Logistic modelsICML2013読み会: Distributed training of Large-scale Logistic models
ICML2013読み会: Distributed training of Large-scale Logistic models
 
SEXI2013読み会: Adult Query Classification for Web Search and Recommendation
SEXI2013読み会: Adult Query Classification for Web Search and RecommendationSEXI2013読み会: Adult Query Classification for Web Search and Recommendation
SEXI2013読み会: Adult Query Classification for Web Search and Recommendation
 
計算論的学習理論入門 -PAC学習とかVC次元とか-
計算論的学習理論入門 -PAC学習とかVC次元とか-計算論的学習理論入門 -PAC学習とかVC次元とか-
計算論的学習理論入門 -PAC学習とかVC次元とか-
 
PRML復々習レーン#11 前回までのあらすじ
PRML復々習レーン#11 前回までのあらすじPRML復々習レーン#11 前回までのあらすじ
PRML復々習レーン#11 前回までのあらすじ
 
SMO徹底入門 - SVMをちゃんと実装する
SMO徹底入門 - SVMをちゃんと実装するSMO徹底入門 - SVMをちゃんと実装する
SMO徹底入門 - SVMをちゃんと実装する
 
PRML復々習レーン#10 前回までのあらすじ
PRML復々習レーン#10 前回までのあらすじPRML復々習レーン#10 前回までのあらすじ
PRML復々習レーン#10 前回までのあらすじ
 
PRML復々習レーン#10 7.1.3-7.1.5
PRML復々習レーン#10 7.1.3-7.1.5PRML復々習レーン#10 7.1.3-7.1.5
PRML復々習レーン#10 7.1.3-7.1.5
 
PRML復々習レーン#9 6.3-6.3.1
PRML復々習レーン#9 6.3-6.3.1PRML復々習レーン#9 6.3-6.3.1
PRML復々習レーン#9 6.3-6.3.1
 
PRML復々習レーン#9 前回までのあらすじ
PRML復々習レーン#9 前回までのあらすじPRML復々習レーン#9 前回までのあらすじ
PRML復々習レーン#9 前回までのあらすじ
 
PRML復々習レーン#7 前回までのあらすじ
PRML復々習レーン#7 前回までのあらすじPRML復々習レーン#7 前回までのあらすじ
PRML復々習レーン#7 前回までのあらすじ
 
SIGIR2012勉強会 23 Learning to Rank
SIGIR2012勉強会 23 Learning to RankSIGIR2012勉強会 23 Learning to Rank
SIGIR2012勉強会 23 Learning to Rank
 
DSIRNLP#3 LT: 辞書挟み込み型転置インデクスFIg4.5
DSIRNLP#3 LT: 辞書挟み込み型転置インデクスFIg4.5DSIRNLP#3 LT: 辞書挟み込み型転置インデクスFIg4.5
DSIRNLP#3 LT: 辞書挟み込み型転置インデクスFIg4.5
 
ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...
ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...
ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...
 
PRML復々習レーン#3 3.1.3-3.1.5
PRML復々習レーン#3 3.1.3-3.1.5PRML復々習レーン#3 3.1.3-3.1.5
PRML復々習レーン#3 3.1.3-3.1.5
 

ゆとりがErlangを始めるようです