並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 44件

新着順 人気順

erlangの検索結果1 - 40 件 / 44件

  • Gleam version 1 – Gleam

    Published 04 Mar, 2024 by Louis Pilfold Today Gleam v1.0.0 has been released! This is the first “stable” release of the language (more on what that means later) and a big milestone for the ecosystem. It has been a long journey and I’m proud of both the technology and the community that we’ve built here with Gleam. Thank you so much to everyone who has taken part in any way, you’ve all contributed

      Gleam version 1 – Gleam
    • 『実践プロパティベーステスト ― PropErとErlang/Elixirではじめよう』は、言語に関係なくプロパティベーステストを学びたい人はすぐ買うべき - Magnolia Tech

      実践プロパティベーステスト ― PropErとErlang/Elixirではじめよう 作者:Fred HebertラムダノートAmazon Erlang/ElixirのPropErというライブラリをベースに、プロパティベーステストの考え方、テストの実践的な書き方を学ぶための本です。 『実践プロパティベーステスト ― PropErとErlang/Elixirではじめよう』www.lambdanote.com 書名だけ見ると「Erlang/Elixirは使ってないからなー」と避けてしまうかもしれませんが、それはもったいなく、言語に関係なく、”プロパティベーステスティング”という手法の本質的な活用の仕方が学べるようになっています。 ここしばらくScalaのScalaCheckというプロパティベーステストライブラリを使ってテストを書くことに挑戦していたのですが、今一つより良い書き方が分からず、何か

        『実践プロパティベーステスト ― PropErとErlang/Elixirではじめよう』は、言語に関係なくプロパティベーステストを学びたい人はすぐ買うべき - Magnolia Tech
      • Erlang QuickCheck | QuviQ

        Tired of writing and maintaining thousands of automated tests? Did you know that repeating tests finds only 15% of your bugs anyway? Let QuickCheck generate new tests for you daily, saving you effort and nailing your bugs earlier! QuickCheck takes you quickly from specification to identified bug. Three steps to QuickCheck Write a QuickCheck specification instead of test cases— general properties y

        • サーバー間通信の暗号化を Tailscale に丸投げする

          まとめ Erlang/OTP の分散機能利用時のサーバー間通信はデフォルトでは暗号化されていない Erlang/OTP が提供する分散機能の暗号化は TLS を利用する Tailscale で P2P VPN をサーバー間で張って Erlang/OTP の分散機能オススメ Erlang 分散機能 時雨堂で開発しているミドルウェアソフトウェアは Erlang/OTP (以下 Erlang) を利用しています。 Erlang は分散機能が入っています。分散機能を簡単に説明すると、他のサーバーにある Erlang とやりとりができる仕組みです。 このときにサーバ間を利用する際に、暗号化が必要になりますが、Erlang が標準で提供為てる機能はサーバー間通信を TLS にする方法がありますが、Erlang に TLS 処理させるのは CPU も食べるしお勧めはできません。 Erlang -- Us

            サーバー間通信の暗号化を Tailscale に丸投げする
          • Dockerを使ってElixirの分散システムを気軽に楽しむ - Qiita

            分散Erlangシステムを楽しむには複数のPCがあるといいのですが、それだと準備が大変で敷居を高く感じるかもしれません。 Dockerを使えば一つのPC上に複数の仮想ホストを簡単に立ち上げられます。それらを別々のPCに見立てれば、気軽に遊べるのではないでしょうか。 やりたいこと Dockerで仮想Linuxマシンを三つ起動してそれらを別々のPCと見立てる それぞれの仮想Linuxマシンでノードを起動する すべてのノードを接続 後は自由に遊ぶ ノードとは 分散Erlangのドキュメントによると A distributed Erlang system consists of a number of Erlang runtime systems communicating with each other. Each such runtime system is called a node. 分散

              Dockerを使ってElixirの分散システムを気軽に楽しむ - Qiita
            • 時雨堂は何をしている会社なのか

              大変反省したので、何をやっていて、どんな会社なのか書いていきます。知ってもらうためにも定期的に更新していければ思っています。 まとめ零細企業リアルタイムな音声と映像を扱うミドルウェア製品を作って売ってるミドルウェアのクラウド版を作って売っているサブスクリプションモデルの積み上げ型OSS 重視何をやってるのか時雨堂はミドルウェアソフトウェアをパッケージとして開発、販売しています。最近は「リアルタイムな音声と映像、データの配信」に特化したミドルウェアがメインです。 現在の主力製品は WebRTC SFU Sora (以降 Sora)という本来は P2P で利用する WebRTC を、クライアント・サーバー方式で利用するソフトウェアを1 から開発して、販売しています。売上のほとんどはこの製品関連になります。 製品はサブスクリプションを採用しており、 3 ヶ月、6 ヶ月、 12 ヶ月単位で Sor

              • なぜ Zig の採用を検討しているのか

                かなり雑に書いてるので、雑に読んでください。 Bun が Zig で開発されていることを知り、そこから Zig を調べてみています。 調べていくと自分が求めていた言語っぽいというのがあり、社外では学生に QUIC や TLS 1.3 を Zig で OSS を開発してもらうお仕事を出したり、社内では実際に採用に向けて調査を進めています。 そもそもの目的自分の会社では Erlang VM を利用した製品をメインに利用しています。ただ Erlang VM 遅いんです。少なくとも暗号処理であれば Rust の方が 2 倍ほど速いです。Erlang VM 自体 JIT を採用したり、いろいろ頑張ってくれているのですが劇的な高速化というのは今すぐには難しいのが現実です。 そこで NIFs (Native Implemented Functions) を使って頑張るという戦略があります。早い話が Er

                • ニッチプログラマー

                  Twitter で “The Nitche Programmer” という記事が流れてきたので、自分もおそらくニッチプログラマーのくくりには入ると思うので雑に何か書いておこうと思います。 思ったことを適当に書いていくので読みにくいと思います。適当に流し読みしてください。 まとめニッチかどうかはどうでもいい。 ニッチプログラマーはじめてのちゃんとしたプログラミングは Python 2.2 あたりから始まり、その後 Erlang/OTP へ切り替えて 10 年以上 Erlang/OTP を書いてご飯を食べています。ここ数年は開発に注力はせず、ビジネス考える人になっています。 最近では WebRTC をメインでやっており、 Erlang/OTP + WebRTC という組み合わせであればおそらく日本では社員を除けば自分だけというくらいニッチです。世界的に見ても Erlang/OTP + WebR

                  • Goにおいてアクターモデルを実現するライブラリ"Molizen"とその未来

                    こんにちは。@sanposhihoです。 この記事では、アクターモデルとはなんぞやという話から始まり、僕が卒業論文のプロジェクトとして作成したGoのライブラリ、“Molizen”の紹介をします。 わりと長く、乱文ですが、適宜読み飛ばして興味のある部分だけをご覧いただければと思います。 マサカリは優しく投げてください。ここはこうした方がいいんじゃないかみたいなのも参考にしたいので是非。 Twitter(@sanpo_shiho)に投げていただいても、雑にGitHubのissueを立てていただいてもいいです。 sanposhiho/molizen: Molizen is a typed actor framework for Go. Goのアクターモデルのフレームワークを公開しました。未完成なので暖かく成長を見守ってください🌱 sanposhiho/molizen: Molizen is a

                      Goにおいてアクターモデルを実現するライブラリ"Molizen"とその未来
                    • 【メモ】私が愛する Elixir/Erlang の楽しさと辛さ - Taku’s Teckブログ

                      元資料が素晴らしいためまとめる必要など全くないのですが、自己の整理のため、箇条書きにて書き起こししているものです Elixirのメリット なぜ流行らないのか? 伝えたいこと 難しいのであれば学ぶことを取捨選択して学習コストを下げる EVMの並行処理について 巷の良い話 巷の悪い話 EVM=OSと似たプロセスの仕組みを持つ プロセスとは どういうことか メリット ネットワーク上の一意な住所を持つとは? 速さはおまけ Elixirの関数型について 巷の良い話 巷の悪い話 Elixirは純粋な関数型ではない 純粋だと言われる条件 オススメの学習方法 プログラミングElixirを読む前に 活用の鍵 Elixirのリスト ※糖衣構文:プログラミング言語において、読み書きのしやすさのために導入される書き方であり、複雑でわかりにくい書き方と全く同じ意味になるものを、よりシンプルでわかりやすい書き方で書く

                        【メモ】私が愛する Elixir/Erlang の楽しさと辛さ - Taku’s Teckブログ
                      • Goとマルチコアスケール実装

                        マルチコア化の未来予測 半世紀前にSF映画「2001年宇宙の旅」に登場するコンピューターHAL-9000が並列コンピューティングの未来を示しました。マルチコアで構成されたコンピューターの物理コアを取り除いてもすぐにクラッシュせずに性能ダウンして処理が継続するという演出がありました。 当時ですらシングルコアコンピューティングの限界が予想されていて、現状のコンピューティングがマルチコア化しているという未来をしっかり予測できていたことがわかります。 演出はコア数に応じてコンピューティング性能がスケールしていることを表現しています。これはマルチコアスケールするソフトウェア実装の未来を示していたと思います。 シングルコア性能向上の頭打ち 2003年以降あたりはCPUの動作周波数が伸び悩み出したところ。 https://queue.acm.org/detail.cfm?id=2181798 より その

                          Goとマルチコアスケール実装
                        • 難しくても「Rust」を学びたくなってしまう理由

                          関連キーワード アプリケーション開発 | プログラミング プログラミング言語「Rust」は、特に高速な動作速度や高い安全性が求められるアプリケーションを開発する際にメリットが際立つ。その半面、開発者の学習曲線は険しいという見方がある。 仕組みが大きく異なる他のプログラミング言語からRustに移行すると、開発者の生産性が悪くなる恐れもある。例えばプログラミング言語「Go」は、自動でメモリ領域を解放するメモリ管理技術「ガベージコレクション」を採用しているため、開発者はメモリ管理の負担を軽減できる。Rustの場合は開発者が意図的にメモリを操作しなければならない。これが原因で全体的な開発スピードが低下することもある。 併せて読みたいお薦め記事 新興のプログラミング言語 プログラミング言語「Rust」が「C」「C++」の後継になるこれだけの根拠 プログラミング言語「Go」の魅力とは? 「Goで“脱C

                            難しくても「Rust」を学びたくなってしまう理由
                          • Docker ComposeとDipで開発用コンテナを再利用可能にする(翻訳)|TechRacho by BPS株式会社

                            概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Reusable development containers with Docker Compose and Dip — Martian Chronicles, Evil Martians’ team blog 原文公開日: 2021-04-21 著者: Vladimir Dementyev サイト: Evil Martians -- ニューヨークやロシアを中心に拠点を構えるRuby on Rails開発会社です。良質のブログ記事を多数公開し、多くのgemのスポンサーでもあります。 はじめに: Docker Composeファイルを管理しながら、最小限の労力で複数のDocker環境でコードを実行・テストする方法をご紹介します。YAML設定をいじくる時間を削減し、シンプルなコマンドを1つ実行するだけで任意のホストフォルダから指定の

                              Docker ComposeとDipで開発用コンテナを再利用可能にする(翻訳)|TechRacho by BPS株式会社
                            • Elixir v1.12 released

                              Elixir v1.12 is out with improvements to scripting, tighter Erlang/OTP 24 integration, stepped ranges, and dozen of new functions across the standard library. Overall this is a small release, which continues our tradition of bringing Elixir developers quality of life improvements every 6 months. Some of these improvements directly relates with the recent efforts of bringing Numerical Computing to

                              • 協調型スケジューリング vs. 先取り型スケジューリング

                                この記事はCooperative vs. Preemptive: a quest to maximize concurrency powerの翻訳・意訳記事になっています。 動機 私のチームはJavaを多用しています。システムを構築するために、ウェブサーバやデータベースドライバなど、多くのものに、スレッドを介した同時実行機能を内蔵した、実績のあるオープンソースのJavaライブラリを使用しています。 また、ビジネス特有のロジックを実装する際には、Javaのスレッド化命令を利用して同時実行を実現しています。 しかし、時間が経つにつれ、パフォーマンスの問題が見えてきました。 Javaアプリには合計1万個のスレッドが実行されていたため、ホストのRAMをすべて占有してしまうサービスがありました。 64ビットのJVMのスレッドのスタックサイズが1024バイトであるため、スレッドが1万もあるとスタックだ

                                  協調型スケジューリング vs. 先取り型スケジューリング
                                • なぜもっとたくさんのコアを搭載したCPUを作らないのでしょうか?2000コアのGPUなんかそこら辺にありますが、なぜCPUでは同じようにできないのでしょうか?

                                  回答 (6件中の1件目) GPUで言うコア数とはFMA(Floating Multiply-Add)と呼ばれる演算器の数です。FMAとはいわゆる一次式 y=ax+bを解くための回路で、式に浮動小数(Float)の掛け算(Multiply)と足し算(Add)があるのでFMAです。GPUがよく活用される3D演算では4x4の行列同士の掛け算や行列にベクトルを掛けるような処理を頻繁に使います。これはアフィン変換と言われるものですが、アフィン変換とは一次式を複数同時に行う計算の事です。例えば4x4行列同士の掛け算は64回の一次式(FMA)のセットです。また行列とはマトリクスとも呼び、4本(ないし3...

                                    なぜもっとたくさんのコアを搭載したCPUを作らないのでしょうか?2000コアのGPUなんかそこら辺にありますが、なぜCPUでは同じようにできないのでしょうか?
                                  • Caramel: massively scalable, type-safe applications

                                    caramel is a functional language for building type-safe, scalable, and maintainable applications Install Docs Discord Code

                                      Caramel: massively scalable, type-safe applications
                                    • Ruby 3.0 の Ractor を自慢したい - クックパッド開発者ブログ

                                      Ruby の開発をしている技術部の笹田です。娘が自転車に乗り始め、まだ不安なためずっとついていなければならず、少し追っかけまわしただけで息切れがヤバい感じになっています。運動しないと。 ここ数年、Ruby で並列処理を気軽に書くための仕組みである Ractor を Ruby 3.0 で導入するという仕事を、クックパッドでの主務として行ってきました(クックパッドから、これ、と言われていたわけではなく、Ruby を前進させるというミッションの上で行ってきました)。 Ractor は、もともと Guild という名前で開発をはじめ、2020年の春頃、Ractor という名前に変更することにしました。いくつかの機会で発表しています。下記は、RubyKaigi での発表の記録です。 A proposal of new concurrency model for Ruby 3 - RubyKaigi

                                        Ruby 3.0 の Ractor を自慢したい - クックパッド開発者ブログ
                                      • プログラマを育てる脳トレパズル 遊んでおぼえるPythonプログラミング&アルゴリズム | 翔泳社

                                        最初から最後まで、遊びっぱなし。 でも、「使えるコード」が書けるようになります。 【本書の特長】 <<遊び感覚でプログラミングとアルゴリズムをおぼえよう!>> ・イチからPythonのプログラミングとアルゴリズムがわかる ・ゲームをつくりながら基本を理解できる ・パズル問題で実践的なコードの書き方が身につく ・環境構築不要のGoogle Colaboratoryですぐ始められる ・パズル問題の解答はPythonに加え、JavaScriptとRubyのコードも提供 【内容紹介】 楽しくなきゃ、プログラミングじゃない! プログラミングを学ぶとき、 言語の文法などを勉強するのは退屈なものです。 何かつくりたいものがあり、 それを自分の手でつくることが 達成感となり、楽しさにつながります。 本書でも一般的なプログラミングで 必要な要素がひと通り登場しますが、 簡単なゲームをつくりながら基本をおぼえ

                                          プログラマを育てる脳トレパズル 遊んでおぼえるPythonプログラミング&アルゴリズム | 翔泳社
                                        • Real time communication at scale with Elixir at Discord

                                          Welcome to our series of case studies about companies using Elixir in production. See all cases we have published so far. Founded in 2015 by Jason Citron and Stan Vishnevskiy, Discord is a permanent, invite-only space for your communities and friends, where people can hop between voice, video, and text, depending on how they want to talk, letting them have conversations in a very natural or authen

                                          • Swift 6で来たる並行処理の大型アップデート近況

                                            最近、 Swift リポジトリに並行処理関係の Pull Request (PR) が続々とマージされています。 たとえば、次のような PR があります。 Add async to the Swift type system. #33147 Add @asyncHandler attribute. #33476 Import "did" delegate methods as @asyncHandler. #34065 Import Objective-C methods with completion handlers as async #33674 Basic support for actor classes and actor isolation #33906 Swift の並行処理( Concurrency )関連の機能については、 2020 年 1 月に発表された "On th

                                              Swift 6で来たる並行処理の大型アップデート近況
                                            • Erlang/OTP の JIT 実装 BeamAsm が公開されました

                                              注意: 著者は JIT について「実行時に機械語を生成する」くらいの知識しかありません。間違いなどあったらコメントで教えて下さい。 2020 年 9 月 10–11 日に行われた Code BEAM STO にて、Erlang VM コアコミッターの Lukas Larsson 氏が発表中に Erlang/OTP の JIT 実装である BeamAsm のプルリクエストを送りました。

                                              • The Hamler Programming Language

                                                Haskell-style functional programming language running on Erlang VM. View the Project on GitHub hamler-lang/hamler The Hamler Programming Language Hamler is a strongly-typed language with compile-time typechecking and built-in support for concurrency and distribution. Hamler empowers industries to build the next generation of scalable, reliable, realtime applications, especially for 5G, IoT and edg

                                                • Underjord | Lumen - Elixir & Erlang in the browser

                                                  The Lumen Project is an alternative implementation of the Erlang VM, more known as the BEAM. It is designed to work in WebAssembly with the specific goal of bringing Elixir and Erlang to the browser. Note: This guide is outdated. These instructions will not work. Lumen is at the time of this update (2020-12-10) a moving target with an early release out. I plan on making an updated post at some poi

                                                  • Erlangについて思うところ

                                                    職場の今までいた部署が潰れてしまったので、新しい部署で仕事のためにErlangを学んでいる。基礎的な文法については学び終わったので、現時点でのErlangについての雑感を書いておこうと思う。 Erlangは多数派のプログラミング言語とはだいぶ違う文法を持っている。終端記号がドットであることもそうだが、比較演算子もだいぶ違っている。多くの言語が!=を使うなか、Erlangは/=を使っている。Less than or equal toが=<であるのも多数派とは異なっている。ただし、Greater than or equal toは>=だ。一貫性がない。 終端文字はドットだが、関数の中には一つの式しか書くことができない。式はカンマで区切ることができるので、以下のようになる。 func() -> expr1 , % カンマ expr2 , % カンマ expr3 . % ドット このような文法はリ

                                                    • Pleromaはいいぞ - PartyIX

                                                      この記事は分散SNS Advent Calendar 2019 の9日目です. ふだんはMastodon/Pleromaのクライアントアプリケーションである,Whalebirdの話が多いけど,実は https://pleroma.io というPleromaサーバも運用しています. なお,この記事は,分散SNSのサーバを自分で建てたい,管理したいという方に,Pleromaをおすすめする記事です. 利用者として登録するサーバとしてPleromaを強く薦めているわけではありません.もちろんPleromaサーバ管理者としては,Pleromaに登録してくれたら嬉しいけれども. Pleromaって? ja.mstdn.wiki ActivityPubを喋る分散SNSの一つですが,MisskeyやPixelfed等と違って,APIはできるだけMastodonに近づけようとしているため,Mastodonク

                                                        Pleromaはいいぞ - PartyIX
                                                      • Gleam

                                                        Gleam is a friendly language for building type-safe systems that scale! ✨ The power of a type system, the expressiveness of functional programming, and the reliability of the highly concurrent, fault tolerant Erlang runtime, with a familiar and modern syntax. Reliable and scalable Running on the battle-tested Erlang virtual machine that powers planet scale systems such as WhatsApp and Ericsson, Gl

                                                          Gleam
                                                        • Introduction

                                                          Adopting Erlang is an ongoing effort to gather all the resources that will help you use Erlang in a business. The booksite is divided in three sections focusing particularly on Erlang/OTP’s higher level concepts in the current open source ecosystem, how to use it in production (while setting up a pipeline for continuous development and delivery), and how to build a team when you’re starting from s

                                                          • Elixir を支える技術 -「落ちない」システムの秘密に迫る (Takanori Ishikawa) - builderscon tokyo 2019

                                                            https://builderscon.io/tokyo/2019/session/5e4eb13c-4efd-42ee-b22c-5ccb37c0854e

                                                              Elixir を支える技術 -「落ちない」システムの秘密に迫る (Takanori Ishikawa) - builderscon tokyo 2019
                                                            • Elixir版?①「プログラミングHaskell第2版」 - Qiita

                                                              fukuoka.ex/kokura.exのpiacereです ご覧いただいて、ありがとうございます 先日9/7(土)に開催した、「ElixirConf JP 2019」の準備・運営にかかりきりで、約3ヶ月弱ぶりの投稿です(ElixirConf JP 2019のレビューは追ってまとめます) さて最近、Haskellerの方々と、ご一緒することが、ちょくちょくあります ご存知の方は、ご存知ですが、元々、私の関数型初体験は、Haskellでした … それから幾つものプログラミング言語を経由して、現在、Elixirに落ち着いており、恐らく、Elixir以外の言語を選ぶことは、よほどのことが無い限り、無いと思います とはいえ、言語ヲタとして、他言語に学ぶことは多くあり、今回は、先月出たばかりの「プログラミングHaskell 第2版」の第1章を、Elixirで解釈してみようと思います(コラムは、原著の

                                                                Elixir版?①「プログラミングHaskell第2版」 - Qiita
                                                              • builderscon tokyo 2019 - Elixir: Under the Hood - Qiita

                                                                2019年8月31日、builderscon tokyo 2019 にて「Elixir を支える技術 -「落ちない」システムの秘密に迫る」というセッションで発表してきました。この記事では、発表で使ったスライドと台本を公開します。時間的制約で当日喋れなかった部分や参考リンクもつけているので、当日聴かれた方は差分を楽しんでみてください。 builderscon は参加するのも初めてで、もともとは、Erlang & Elixir Fest 2019 の懇親会で元同僚から勧められた勢いで CfP を送ったのがキッカケでした。3日前になっても台本すら出来ていなかったときはさすがに後悔しましたが、当日は予想以上に多い聴衆と質問で非常に楽しいセッションでした。すべて運営スタッフと温かい聴衆のみなさんのおかげです。ありがとうございました。 また、ぼくがいま勤めている株式会社 ABEJA でも、Elixir

                                                                  builderscon tokyo 2019 - Elixir: Under the Hood - Qiita
                                                                • GitHub - GetFirefly/firefly: An alternative BEAM implementation, designed for WebAssembly

                                                                  You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                    GitHub - GetFirefly/firefly: An alternative BEAM implementation, designed for WebAssembly
                                                                  • 大規模ゲーム開発で存在感を高めるErlang/Elixir ─ Nintendo Switch™とロマサガRSの事例から - エンジニアHub|Webエンジニアのキャリアを考える!

                                                                    エンジニアHub > 記事一覧 > 大規模ゲーム開発で存在感を高めるErlang/Elixir ─ Nintendo Switch™とロマサガRSの事例から 大規模ゲーム開発で存在感を高めるErlang/Elixir ─ Nintendo Switch™とロマサガRSの事例から 大規模なゲーム開発で、プログラミング言語Erlang/Elixirの存在感が増しています。Nintendo SwitchのErlang活用事例と、ロマサガRSにおけるElixirの導入事例について、アカツキ島崎清山さんに解説してもらいました。 2019年6月1日、永田町JA共済ビルにて、Erlang & Elixir Fest 2019が開催されました。Erlang/Elixirを利用する開発者らを集めて国内で開催されるメインイベントとしては、2017年のElixir Conf Japanから数えて、今年で3回目を

                                                                      大規模ゲーム開発で存在感を高めるErlang/Elixir ─ Nintendo Switch™とロマサガRSの事例から - エンジニアHub|Webエンジニアのキャリアを考える!
                                                                    • オブジェクト指向プログラミング -- 1兆ドル規模の大失敗

                                                                      CodeIQのブログより。🤔 なぜ、OOPから移行する時なのか Ilya Suzdalnitski OOPは、多くの人にコンピューターサイエンスの重要資産と考えられています。コード構成(code organization)に対する究極のソリューション。すべての問題の終焉。私たちのプログラムを書くための唯一の本当の方法。自分自身をプログラムするという真なる唯一神から私たちに授けられました… それまでは、そうではなく、抽象化の負担、そして無差別に共有されるミュータブルなオブジェクトの複雑なグラフによって、人々は屈し始めています。現実世界の問題を解決するのではなく、「抽象化」と「デザインパターン」について考えるのに貴重な時間と頭脳が費やされています。 非常に著名なソフトウェアエンジニアを含め、多くの人々がオブジェクト指向プログラミングを批判してきました。驚くことに、OOP自身の発明者でさえ、今

                                                                        オブジェクト指向プログラミング -- 1兆ドル規模の大失敗
                                                                      • Ten Years of Erlang

                                                                        I've joined the Erlang community about 10 years ago, in the midst of its first major hype phase. Erlang, we were told, was the future of concurrency and parallelism. The easiest and fastest way to get it done, and you could get distribution for free too. Back then, things were just starting to get amazing. The virtual machine had recently gotten SMP support, before which you needed to run multiple

                                                                          Ten Years of Erlang
                                                                        • Elixir勉強会で使った資料を公開します!【Erlang&Elixir fest 2019 レポート付き】 - Qiita

                                                                          Elixir勉強会で使った資料を公開します!【Erlang&Elixir fest 2019 レポート付き】 面白法人カヤックのKoyoです!先日社内勉強会でElixir勉強会を行ったので、みなさんがElixirを広める際に参考になればと思い、資料を公開します! 6/1に開催されたErlang&Elixir fest 2019のレポート付きです! (開催者・講演者の方にこの場を借りて感謝を述べさせていただきます) 後半のハンズオンで使うので以下の環境構築を先に済ませておくことを強くオススメします!(brew install elixir が長い!!) https://github.com/ohr486/ErlangElixirFestHandsOn2019/wiki/1-%E7%92%B0%E5%A2%83%E6%A7%8B%E7%AF%89#1-1-%E7%92%B0%E5%A2%83%

                                                                            Elixir勉強会で使った資料を公開します!【Erlang&Elixir fest 2019 レポート付き】 - Qiita
                                                                          • NPNS における Erlang/OTP

                                                                            Erlang & Elixir Fest 2019 で任天堂さんの発表について、懇親会で話せる範囲でお教えていただいたことなどを交えて、Erlang/OTP を利用してパッケージ製品を開発しているプログラマー視点で見ていきます。残念ながら運用については未経験のため、その辺りは触れません。 また自分が XMPP というプロトコルはなんとなく知っているレベルということもあり、XMPP 自体には踏み込みません。 XMPP/ejabberd という選択当たり前ですがプッシュ通知を送るには TCP/IP の接続を維持するという方針になります。その上、将来的には 1 億を目指して行くわけです。 TCP の常時接続が経験ない中で 1 億同時接続を目指す際の技術選定で、自作プロトコルに行かず、 枯れている XMPP という選択をしたのは本当に素晴らしいと思います。 また、そんな中で実績がある ejabbe

                                                                            • Elixir を支える技術 -「落ちない」システムの秘密に迫る - builderscon tokyo 2019

                                                                              Abstract Elixir というプログラミング言語をご存知でしょうか? Ruby に似たモダンなシンタックスをもつ言語であり、Erlang という言語にコンパイルされて、Erlang VM の上で実行されます。 Erlang には 20 年以上の長い歴史があり、古くは電話交換機から、インターネットの膨大なトラフィックをさばくスイッチ、数億人規模のメッセージングアプリなどで採用されています。最近では、Nintendo Switch 向けのプッシュ通知システムに採用されたことでも話題になりました。 採用されている事例からも分かりますが、大量のアクセスをさばく必要があり、高可用性と耐障害性が求められるシステムにうってつけの言語です。Elixir (Erlang) で書かれたシステムは「落ちない」とまで言われるほどです。 では、Elixir (Erlang) の高可用性と耐障害性は、どのよう

                                                                                Elixir を支える技術 -「落ちない」システムの秘密に迫る - builderscon tokyo 2019
                                                                              • Elixir プロセス入門

                                                                                Elixir のプロセスを学習する際, 予めプロセス関連のモジュール郡の関係性を大雑把に理解していた方が, 記憶定着が良いであろうと考え, このスライドを作成しました. 主に, Task, GenServer, Agent, Supervisor, DynamicSupervisor, Task.Supervisor, Registry などを解説しています.

                                                                                  Elixir プロセス入門
                                                                                • ejabberd & Nintendo Switch NPNS / ProcessOne

                                                                                  Colissimo For Colissimo, ProcessOne reworked a critical piece of their events processing chain for the high-speed parcel sorters. BBC News For the BBC, ProcessOne created and maintained a notification system for breaking news delivery to mobile devices that sends millions of pushes per day. Social Platform for Football Fans For a well known sports brand on a tight schedule, ProcessOne rapidly deve

                                                                                    ejabberd & Nintendo Switch NPNS / ProcessOne