Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Elixir/Nerves衛星を打ち上げる日

 Elixir/Nerves衛星を打ち上げる日

Susumu Yamazaki (ZACKY)

September 01, 2022
Tweet

More Decks by Susumu Yamazaki (ZACKY)

Other Decks in Technology

Transcript

  1. ࣗݾ঺հ • ࢁ࡚ ਐ (ZACKY) • ๺۝भࢢཱେֶ ࠃࡍ؀ڥ޻ֶ෦ ।ڭत •

    ओͳݚڀςʔϚ • Elixir, Phoenix, Nerves, NxΛ࢖ͬͨγεςϜ࣮ ૷ɾࣾձ࣮૷ • Elixirϕʔεͷਓ޻Ӵ੕ը૾ॲཧγεςϜ • ຊ೔͸෱Ԭݝ๺۝भࢢ಺ΑΓΦϯϥΠϯͰൃද ͍ͯ͠·͢ 2 © 2022 Susumu Yamazaki
  2. ฒྻϓϩάϥϛϯάݴޠElixir(ΤϦΫαʔ) • 2012೥ʹJosé Valim(δϣθɾϰΝϦϜ)ʹΑͬͯ։ൃ͞Εͨϓϩάϥϛϯάݴޠ • ࠓ೥2022೥͸10प೥ʂ • José͸ɼҎલ͸Ruby on RailsͷίϛολʔͰͨ͠

    • Joséͷ໰୊ҙࣝͱͯ͠ɼRubyͷ͔ΘΓʹɼ΋ͬͱߴ଎ʹಈ࡞͢Δϓϩάϥϛϯάݴ ޠ͕ඞཁͰ͋Δͱߟ͍͑ͯ·ͨ͠ • ͍Ζ͍Ζ୳ڀͯ͠Erlang(Ξʔϥϯ)ͱ͍͏ؔ਺ܕݴޠʹग़⁊͍·͢ • Erlang͸ނJoe Armstrong(δϣʔɾΞʔϜετϩϯά)Λத৺ʹΤϦΫιϯͰ1986 ೥͔Β։ൃ͕ਐΊΒΕ͍ͯ·ͨ͠ • Erlang͸ΤϦΫιϯͷࣄۀͷ1ͭͰ͋ͬͨి࿩ަ׵ػ޲͚ʹઃܭ͞Ε͓ͯΓɼి࿩ ަ׵ػ༻్ʹ଱͑ΒΕΔΑ͏ɼݎ࿚͔ͭฒߦॲཧΛ௥ٻ͍ͯ͠·ͨ͠ • ి࿩ަ׵ػ༝དྷͱ͸ɼTRON OSͷ1ͭͷCTRONͱ͍ۙϞνϕʔγϣϯͰ͢Ͷ • ͨͩ͠ɼErlangͷจ๏͸ͱ͖ͬͭʹ͍͘ͷ͕ܽ఺Ͱͨ͠ • ͦ͜ͰɼJosé͸Rubyͱಉ౳Ҏ্ͷϓϩάϥϜίʔυͷॻ͖΍͢͞Λ௥ٻ͠ɼErlangΛ ϕʔεͱͯ͠ฒߦॲཧج൫Λ੔උͨ͠৽͍͠ϓϩάϥϛϯάݴޠ Elixir Λ։ൃ͠·͢ • Elixir ͸࿉ۚज़ࢣ͕௥͍ٻΊͨෆ࿝ෆࢮͷྶༀͷ໊લͰ͢ • José͍Θ໋໊͘ཧ༝͸ɼErlangͱಉ͡EͰ࢝·Δ͔͍͍ͬ͜୯ޠͱ͍͏Ҏ্ͷ͜ ͱ͸͍֮͑ͯͳ͍ͦ͏Ͱ͢ • Ұ࣌ظݴΘΕ͍ͯͨɼJosé͕ϑΝΠφϧϑΝϯλδʔʹڵ໋໊͍ͯͯͨ͡͠ͱ͍ ͏આ͸ɼJoséࣗ਎ʹΑͬͯ൱ఆ͞Ε·ͨ͠ • Elixir͸ύΠϓϥΠϯԋࢉࢠ|>͕ಛ௃తͰɼ͜ΕΛ࢖ͬͯॻ͍ͨϓϩάϥϜίʔυ͸ɼ ࠨ͔Βӈ΁ɼ͋Δ͍͸্͔ΒԼ΁ɼσʔλΛม׵͍༷ͯ͘͠ΛྲྀΕΔΑ͏ʹಡΈԼ͢ ͜ͱ͕Ͱ͖·͢ 1..1_000_000 # 1͔Β1,000,000·ͰͷϦετΛ |> Enum.map(& &1 * 2) # ֤ཁૉ2ഒͯ͠ |> Enum.map(& &1 + 1) # ͞Βʹ֤ཁૉʹ1଍ͨ͠ϦετΛฦ͢ • Elixir͸ɼ͜ͷΑ͏ͳίʔυΛ؆୯ʹฒྻԽ͢Δ͜ͱ͕Ͱ͖·͢ 6 © 2022 Susumu Yamazaki © Elixir Team
  3. ࢖͍΍͍͢IoTج൫Nerves(φʔϰε) • 2015೥͔ΒNerves Project developersʹΑͬͯ ։ൃ͕ਐΊΒΕ͖ͯͨɼElixirϕʔεͷIoTج൫ • Tombo Worksͷࢿྉࢀর 8

    © 2022 Susumu Yamazaki Copyright (C) 2015- by the Nerves Project developers https://swest.toppers.jp/SWEST24/proceedings/interactive/SWEST24-IS-004.pdf
  4. ঎༻ͷਓ޻Ӵ੕ʹmruby͕ࡌͬͨͦ͏Ͱ͢Ͷ • Ruby Business Users Conference 2021 Online • 2021೥2݄26೔(ۚ)ɹ15:35ʙ16:15

    • খܕϨʔμʔӴ੕։ൃʹ͓͚Δmrubyͷద༻ • QPSݚڀॴCEO େ੢ढ़ี 11 © 2022 Susumu Yamazaki https://i-qps.net/news/438