並び順

ブックマーク数

期間指定

  • から
  • まで

281 - 320 件 / 4295件

新着順 人気順

scalaの検索結果281 - 320 件 / 4295件

  • Haskellを業務で使う、カジュアルに - Haskell-jp

    Link to hereはじめに この記事では、Haskellを業務でカジュアルに使う観点やヒントについて、簡単に紹介します。 Haskellを業務で使える局面は、以下のようにいくつか考えられます。 「プロダクト」の開発用言語として、Haskellを使う 「作業」の支援・加速用に、Haskellを使う 「思考」の支援・加速用に、Haskellを使う つまり、プロダクトの開発用言語としてHaskellを用いない業務形態においても、上記2や3のケースとして、Haskellを使用できます。すなわち、Haskellは幅広い局面でカジュアルに、つまり気軽に手軽に使用できます。 本記事では、特に、上記の2と3について、いくつかの観点やヒントや例を紹介します。 なお、上記は、Haskellを用いる場合には限りません。Python, Perl, Ruby, Rust, Scala, OCaml, Cloj

      Haskellを業務で使う、カジュアルに - Haskell-jp
    • JavaScriptで遊ぶ3Dゲーム!独自のステージも作成可能な「CodeQuest」で遊んでみた! - paiza times

      どうも、まさとらん(@0310lan)です! 今回はJavaScriptでプログラムを書いてプレイヤーを操作する3Dゲームのご紹介です! 大きな特徴として、3Dのステージを自作できる機能が提供されており、誰でも簡単に自分好みのステージを作成して楽しむことができます。 プログラミングの学習教材としても利用可能なので、ご興味ある方はぜひ参考にしてください。 【 CodeQuest 】 ■「CodeQuest」の使い方! それでは、「CodeQuest」をどのように使えばいいのか詳しく見ていきましょう! まず最初に【Sign Up】ボタンをクリックして無料のユーザー登録を済ませておきます。 メールアドレスとパスワードを入力しましょう。 ユーザー登録が完了したら、画面上部にあるリンクをクリックしてください。 次のようなダッシュボード画面が表示されたら準備完了です! この画面からチュートリアルを試し

        JavaScriptで遊ぶ3Dゲーム!独自のステージも作成可能な「CodeQuest」で遊んでみた! - paiza times
      • LINE開発担当が語るプロダクションレディなgRPCサーバをArmeriaで簡単に作る方法

        LINE Developer MeetupはLINEが定期的に開催する技術者向けミートアップです。66回目の今回はLINEの新規サービス開発に携わる奥山氏が社内フレームワークArmeriaを使って簡単にgRPCサーバーを実装する方法を共有しました。 gRPCって何だったっけ? 奥山裕也氏(以下、奥山):LINEの開発4センター、 Official Account開発室の奥山が、「OA DevにおけるgRPC」についてお話しします。 まず簡単に自己紹介しますと、私は2019年の4月に新卒で入社しました。Official Account開発室というチームで、LINE公式アカウント関連の新規サービスを主に開発しています。コードは、サーバサイドで主にKotlinを書いています。また、line-bot-sdk-pythonというMessaging API SDKのメンテナーもしています。 今日は、最

          LINE開発担当が語るプロダクションレディなgRPCサーバをArmeriaで簡単に作る方法
        • Chatwork のプロダクトフェーズと技術選定の流れ - Chatwork Creator's Note

          こんにちは! Chatwork 株式会社のプロダクトマネージャー (PM)、宮下 (@ryugoo_) です。 2013 年にモバイルアプリエンジニアとして入社し、 2014 年に Android 専任になり、 2019 年からは PM に転向してそろそろ 2 年になろうとしています。 さて、今回はエンジニアから PM になった私から見た、 Chatwork の技術選定の流れの変化について話してみようと思います。 技術選定の歴史 2013 年 - PMF を目指すために 2014 〜 2016 年 - 技術的課題を解決するために 2017 〜 2020 年 - ユーザー影響を最小化するために これから - 攻めた技術選定を、ユーザーのために 2013 年 - PMF を目指すために 2013 年当時の Chatwork は PMF (Product Market Fit) を目指すフェーズ

            Chatwork のプロダクトフェーズと技術選定の流れ - Chatwork Creator's Note
          • Scala 3 is here!🎉🎉🎉

            ⚠️ Beware of Scams: since Feb 2024, scammers are using fake Scala websites to sell courses, please check you are using an official source. After 8 years of work, 28,000 commits, 7,400 pull requests, 4,100 closed issues – Scala 3 is finally out. Since the first commit on December 6th 2012, more than a hundred people have contributed to the project. Today, Scala 3 incorporates the latest research in

              Scala 3 is here!🎉🎉🎉
            • Scalaのtrait、Rustのtrait、そしてScalaのimplicit - Don't Repeat Yourself

              Scala の trait と Rust の trait は微妙に使い方が異なる、とよく質問を受けます。たしかに、使い心地は微妙に異なるかもしれません。Scala はオブジェクト指向を中心に設計された言語ですが、Rust はそれを中心に設計されているとは言えません*1。こういった言語設計の差が、trait の使い心地の違いを生み出していると私は思っています。 両者の trait には、共通した特徴もあります。共通した処理をまとめあげるという意味では同じ目的をもっているといえますし、また、「犬は動物である」「猫は動物である」の共通性を示すことで、共通したものをひとまとめに処理しきることもまた可能です。 Scala には implicit という強力な機能が存在します。これは柔軟でスケーラブルなソフトウェアデザインを可能にする Scala の特徴のひとつです。非常にすばらしい機能です。この機能

                Scalaのtrait、Rustのtrait、そしてScalaのimplicit - Don't Repeat Yourself
              • Scalaの学習コストについての私見 - kmizuの日記

                ※2022/01/25 17:10追記 以下のツイートが別に「Scalaが主眼でない」こと自体は承知しています。一般論として、Scalaに限らず言える技術選定の話ですよね。ただ、妙な方向への読解をちょくちょく見かけたので、それに乗っかる形で現状のScalaについて率直な感想を書いておこうと思ったのでした。「この話とは別なんだけど」みたいな言葉をつけておけば良かったです。申し訳ありません。 数日前、以下のツイートに端を発して色々な意見が交わされていました。 「Scala好きなメンバーがプロダクト開発にScalaを採用して1人で開発していたが、そのメンバーが抜けてしまいScalaコードの保守ができなくて別の言語で書き直すことになった」という技術選定の失敗のお手本のような事例を目の当たりにしてしまった....— コミさん (@komi_edtr_1230) 2022年1月19日 これを見て「いや

                  Scalaの学習コストについての私見 - kmizuの日記
                • 「実践プロパティベーステスト」という本が出版されました #pbtbook - YAMAGUCHI::weblog

                  はじめに こんにちは、Google Cloudのオブザーバビリティ/SRE担当者です。このたび私が翻訳しました「実践プロパティベーステスト PropErとErlang/Elixirではじめよう」という書籍がラムダノート社より去る11月1日に出版されました。書店ならびに各社オンラインストアでご購入いただけます。 実践プロパティベーステスト ― PropErとErlang/Elixirではじめよう 作者:Fred HebertラムダノートAmazon 実践プロパティベーステスト ― PropErとErlang/Elixirではじめようwww.lambdanote.com 電子書籍についてはラムダノート社のECサイトよりご購入いただけます。 実践プロパティベーステスト ― PropErとErlang/Elixirではじめよう(電子書籍のみ)www.lambdanote.com 「実践プロパティベ

                    「実践プロパティベーステスト」という本が出版されました #pbtbook - YAMAGUCHI::weblog
                  • 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"とその未来
                    • SIerに生息する「おじさんSE」の生態を知る - Qiita

                      ここでいうおじさんSEとは、主にSIerに生息する、 ・30歳以上で ・モダンな技術を知らない ・レガシーな技術しか知らない ・主に設計書などのドキュメント類を弄っており、コーディングをしない ・現状から変わる気がない(キャリアアップに対し具体的なアクションがない) 人たちを指す。 決して単に妙齢のエンジニアを一括りにしているわけではない。 「おじさんSE」より良い呼び方があれば、ぜひご提案いただきたい。 第1章 おじさんSEの仕事内容 おじさんSEは、コードを書くことはほぼ無い。 これは現場にもよるので、全く無いというわけではないが、 多くのおじさんSEはコーディングはしない。 ではおじさんSEは何をやっているのかというと、 ・内部設計書、外部設計書、詳細設計書の記述 ・結合試験以降の試験項目票の作成 ・試験結果のレビュー 大抵はこの3つになる。 99.9%はウォーターフォール型である。

                        SIerに生息する「おじさんSE」の生態を知る - Qiita
                      • Renovateを用いてCI/CD環境やKubernetesエコシステムのバージョン更新を楽にする - ZOZO TECH BLOG

                        はじめに こんにちは、計測プラットフォーム開発本部SREブロックの髙木(@TAKAyuki_atkwsk)です。普段はZOZOMATやZOZOGLASS、ZOZOFITなどの計測システムの開発・運用に携わっています。およそ2年ぶりのテックブログ執筆となりました。 さて、今回はCI/CD環境やKubernetesエコシステムのバージョン更新についてRenovateを使って楽しようという話をご紹介します。 CI/CDのワークフローや実行環境、Kubernetesを運用する上で導入するエコシステム1の多くはコード管理されています。そして、これらについてどのバージョンを使うかをコード上で指定することが多いです。しかし、コード化はされているもののバージョン更新まではなかなか手が回らなくなっており、どうにか解消したく取り組んだ話になります。 目次 はじめに 目次 背景や課題 バージョン更新のステップ

                          Renovateを用いてCI/CD環境やKubernetesエコシステムのバージョン更新を楽にする - ZOZO TECH BLOG
                        • REST・Protocol Bufferは必要ない RPCフレームワークにそのまま使えるScalaの魅力

                          アジア最大級の国際Scalaカンファレンスである「ScalaMatsuri2020」がオンラインで開催されました。そこでTreasure DataのTaro L. Saito 氏がScalaに関するいろいろなテクノロジーを紹介しました。2つ目は、Scalaで直接通信する方法について。前回の記事はこちら。 Scalaは実はRPCを実装するのに適した言語 Taro L. Saito氏:もともと何をしたかったかというと、「Scalaでクライアントもサーバーも実装できるんだったら、Scalaでそのまま通信できないのか?」というところが出発点になって、今新しいフレームワークを整えているところです。 ScalaはFunctional(関数型)で、かつstatically typed(静的型付き)、というobject orientedな言語になっているのがいいところです。 これよく考えてみると、Scal

                            REST・Protocol Bufferは必要ない RPCフレームワークにそのまま使えるScalaの魅力
                          • Scalaの難しさをインターネットから集めてみる - Lambdaカクテル

                            Scalaは難しいと思われたり敬遠されがちである。Scalaの難しさについてTwitterなどでアンケートをとったり、ネットでググって意見を吸い上げてみた。議論の叩き台にするみたいな用途を意図しています。 ご意見や記事募集中です。できればTwitterじゃなくて記事だと嬉しいです。流れていってしまうので・・・ また、私見は私見です。 追記(2024-03-08)ちなみに、色々書いていますが僕はScalaが大好きです(このブログでものすごい数の初心者~中級者向けの記事を書いています)し、ネットで言われているような終わった言語ではまったくないです。初心者をサポートして、難しいと感じている部分をほぐして、みんながScalaでワイワイやれるようにコミュニティを立ち上げ、継続的に活動しています。おかげさまで日本の公式Scalaコミュニティとして認めてもらっています。ブログのバナー下のリンクからDis

                              Scalaの難しさをインターネットから集めてみる - Lambdaカクテル
                            • トレンドから考えるフリーランスJavaエンジニアの生存戦略 | Offers Magazine

                              「Offersエージェント」では、業界で活躍するプロフェッショナルがあなたの転職を徹底サポート。CxO経験者を含む現役エンジニア・デザイナー・プロダクトマネージャーが在籍し、職種に特化した専門的なアドバイスをご提供・非公開求人の紹介も可能です。 →【かんたん30秒】無料登録で転職相談する 今の案件内容と獲得経路 Javaをメインにフリーランスエンジニアをしている、いろふ(@irof)です。システム開発の仕事は10年以上、フリーランスとして独立して4年目になります。 会社員をしていた頃は主に企業内で使われる基幹システムの開発に携わってきました。フリーランスとしてはシステム開発だけでなく、Javaに限らない技術支援やチームビルディングのサポートなどいろいろさせてもらっています。コミュニティ活動として関西Javaエンジニアの会などをやっています。 ▲JJUGでの直近の登壇資料 今回は、フリーラン

                                トレンドから考えるフリーランスJavaエンジニアの生存戦略 | Offers Magazine
                              • 2020年現在 Web系企業で採用されてる技術についてまとめてみた - Qiita

                                はじめに 2020年も始まりましたね! タイトル通りですが、2020年現在スタートアップや大手のWeb系IT企業で採用されている、トレンドとなっている技術についてそれぞれのジャンル毎に求人や採用ページ、ブログを元にまとめてみました。 いくつかピックアップしている形になるので、記述できてないものもありますが、ご了承くださいm(_ _)m (適宜アップデートしていきたいと思います。) (自分のメイン領域がバックエンドなので、そちらに偏っていると思います) 言語編 Ruby サーバーサイドのスクリプト言語、動的型付け言語です。 まつもとゆきひろさん(Matzさん)により開発されたオブジェクト指向スクリプト言語。 日本生まれの言語です。 整数や文字列なども含めデータ型はすべてがオブジェクトであり、純粋なオブジェクト指向言語です。 有名なフレームワークである Ruby on Rails を使うと開発

                                  2020年現在 Web系企業で採用されてる技術についてまとめてみた - Qiita
                                • サーバーサイドにKotlinを導入して3年経った結果

                                  Kotlin – Wikipedia サーバーサイドKotlinの導入から一年が経ちましたという記事から更に2年が経過し、アプリボットではサーバーサイドにKotlinを導入してから3年が経過しています。 その間に開発中であったタイトルはリリースを迎え、安定的に運用・更新が行われるようになりました。そこで、Kotlinを導入した結果、開発者体験はどのように改善されたか、そうでなかったかを振り返ってみることとしました。 この記事はアプリボット技術研究室、室長の斎藤が、Applibot Advent Calendar 2021の5日目の記事として執筆しました。 本記事の主張 既存開発者/新規開発者にとっても学習曲線がゆるやかであるJavaの既存資産のKotlin環境への可搬性は高いIntelliJ IDEAの開発者体験の良さプログラミング言語としての細かい機能が便利になっている 学習曲線のゆるや

                                    サーバーサイドにKotlinを導入して3年経った結果
                                  • ソースコードを自動生成する Amazon CodeWhisperer でアクセンチュアが開発生産性を向上させた方法 | Amazon Web Services

                                    Amazon Web Services ブログ ソースコードを自動生成する Amazon CodeWhisperer でアクセンチュアが開発生産性を向上させた方法 Amazon CodeWhisperer は、統合開発環境 (IDE) で記載されたコードやコメントから提案コードを生成する AI アシスタントで、開発者の生産性の向上に役立ちます。 CodeWhisperer のような AI アシスタントを導入することで、必要なコードがリアルタイムに提案され IDE とドキュメントや Q&A サイト間の往復 ( コンテキストスイッチ ) が減りコーディングの完了を早めることができます。 CodeWhispererは、何十億行ものコードでトレーニングされた大規模言語モデル (LLM) により 15 のプログラミング言語でコードを書けます。執筆時点で、 Java、Python、JavaScript

                                      ソースコードを自動生成する Amazon CodeWhisperer でアクセンチュアが開発生産性を向上させた方法 | Amazon Web Services
                                    • 非同期と並列 / morrita - Message Passing

                                      karino2 が 並列プログラムから見たFuture というビデオを作って公開していたので、引っ越しの荷造りをしながら眺めた。 長いのでここにざっくりとした主張をまとめると: Future/Promise (およびその後釜の async/await) は非同期プログラミングで callback hell にならない発明という見方をされているが、 そもそもなぜ callback hell が必要だったかの時代背景が十分に理解されていない。 背景の一つはブラウザ JavaScript のプログラミングモデルにシングルスレッド・ノンブロッキング(イベントループ)という制限があったから。 これは(特にフロントエンド開発者の間では)よく理解されている。 もう一つの視点は SEDA みたいなマルチスレッド・ノンブロッキング環境の必要性で、 こっちはいまいち広く理解されていないように思える。 結果とし

                                        非同期と並列 / morrita - Message Passing
                                      • はてなブックマーク3万件にみる技術トレンド2020年まとめ - Qiita

                                        tl;dr 2020年1年間のはてなブックマークの人気エントリー3万件をもとに技術トレンドを分析。 その結論とPythonでグラフ化した手順を書き記します。 ※ご指摘がありましたが、技術トレンドというよりitニューストレンドと言った方が正しいかもしれません。踏まえてお読みください。 前置き 手元に2020年の1年間ではてなブックマークの技術カテゴリーにおいて人気エントリーに一度でも乗ったことのある記事のタイトルデータが3万件ほどあったため、形態素解析を行い単語の出現頻度順に並べてみました。欠損の割合としては多くても1割程度、つまり少なくとも9割程度のデータは揃っているはずなので精度はかなり高いと思います。 (※はてなブックマークはNewsPicksみたくインターネット上の記事をブックマーク・コメントでき、より多くブックマークされた記事が人気エントリーとしてピックアップされるサービスです。w

                                          はてなブックマーク3万件にみる技術トレンド2020年まとめ - Qiita
                                        • さくらインターネットの技術スタックをまとめてみた(2020年版) - Qiita

                                          この記事は さくらインターネット Advent Calendar 2020 4日目の記事です。 本記事をご覧のみなさまお久しぶりです。さくらインターネットの大久保です。 ふと気づいたら、去年のアドベントカレンダーでゆるふわな趣味の記事 を書いてから、あっという間に1年が過ぎてました。 自分自身振り返ると、新型コロナの影響で働き方が大きく変わったのに加え、仕事上の役割も変化し、激動の1年間だったように思います。 下っぱエンジニアが突然マネジメントもやることになった話 さくらインターネットでは2020年7月に大きな組織変更がありました。自分は、2009年7月からちょうど11年間所属していた「研究所」を離れ、新たに発足した「クラウド事業本部」の副本部長を務めることとなりました。 当方の本部は、サービス企画・開発から、データセンター運用、お客さまサポート、マーケティングなどを含めた7つの部門、45

                                            さくらインターネットの技術スタックをまとめてみた(2020年版) - Qiita
                                          • ヤフーのJava開発を支えるJavaサポートチーム

                                            ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは。Yahoo!広告エンジニアの高見と申します。 2021年10月より「第11代黒帯〜プログラミング言語(Java)〜」 に就任しました。 この記事では、「ヤフーにおけるJava開発」と、私が従事している「Javaサポートチームの活動」について、紹介します。 (※黒帯制度とは:各領域において突出した専門性を持つ社員を黒帯として任命し、社内外における活動を会社として支援する制度) 1.ヤフーにおけるJava環境 2017年10月頃から全社でシステムのモダナイゼーションが推進されています。 この取り組みで、主要開発言語がPHPから、JavaとNode.jsに変更となりました。 Javaは、主にサーバーサイドアプリケーションで使

                                              ヤフーのJava開発を支えるJavaサポートチーム
                                            • Strykerを使ってTypeScriptでMutation Testingする

                                              概要 JavaScript/TypeScript向けのMutation Testing FrameworkであるStryker-jsがいい感じになってきたので紹介してみます。簡単な紹介のみです。 対象読者 Strykerの概要を知りたい人 Mutation Testingよく知らないJSer/TSer Mutation Testing導入したいけどJS/TS用のツールが見つからなかった人 Mutation Testingとは テスト対象のコードを変更(Mutate)するミュータントを仕込み、Unit Testが正しくそれらのミュータントを退治できるか測定するものです。 一般的には退治できた割合が高いほど意味のあるUnit Testを書いていると言えます。 Wikipediaの項目にもある通りFuzzingの一種とも言えます。 Mutation Testing自体はGoogleが論文出してた

                                                Strykerを使ってTypeScriptでMutation Testingする
                                              • Rustでマイクロサービス開発はじめました - EmotionTechテックブログ

                                                はじめに こんにちは、テックリードのかどたみです。 「冷やし〇〇はじめました」の幟が街を彩って久しくも、まだまだ暑い日が続きますね。 突然ですが、皆さんは今夏新しくはじめたことはありますか? 弊社ではタイトルの通りRustでマイクロサービスの開発をはじめました。 この記事では、マイクロサービス化やRustに至った考えとRustで開発をしてみた感想を述べたいと思います。 なぜマイクロサービス化するのか? 弊社ではサービス開始当初からRuby on Railsを用いて開発が進められ、現在でも機能の追加が続いています。モノリスとしてどんどん大きくなっているのですが、大きくなることによって以下のような課題が出てきています。 新しいメンバーがコードを把握するのにかなり時間を要する 改修の影響範囲が大きくなり、見積もり難度が上がっている テストやビルドに時間がかかり、細かな修正でもリリースのコストが高

                                                  Rustでマイクロサービス開発はじめました - EmotionTechテックブログ
                                                • Elm at Rakuten | Rakuten Engineering Blog

                                                  In our team at Rakuten, we have been using Elm1 in production for almost two years now. This post is about our story, the lessons we learned, and our likes and dislikes. This post is quite long so if you prefer to see an overview, feel free to jump to the index. Everything started in the Berlin branch of Rakuten during the summer of 2017. We were maintaining a medium-size single-page application w

                                                    Elm at Rakuten | Rakuten Engineering Blog
                                                  • 数としての赤黒木 - エムスリーテックブログ

                                                    エンジニアリンググループの高島(@rst76)です。 社内の勉強会で、計算機科学の有名な教科書、アルゴリズムイントロダクション(Introduction to Algorithms)を輪読しています。 ちょうど赤黒木の章を私が担当したので、要点をかいつまんでご紹介したいと思います。 今回お話したいのは「ある条件の下で、赤黒木は記数法表現と見ることができる」という話です。 赤黒木の例 赤黒木 二分木というデータ構造があります。 計算機科学では一般的なデータ構造で、ランダムなデータであれば、検索や挿入などの操作を で実現できます。 ただ、データの与え方によっては偏った木ができてしまうことがあり、そうすると各操作の性能が に落ちてしまうので、どうやって木の平衡性を維持するかが課題です。 赤黒木は二分木の一種で、ノード(節点)を赤と黒に塗り分けて、赤と黒の組み合わせによって平衡性を保つための調整を

                                                      数としての赤黒木 - エムスリーテックブログ
                                                    • 『計画の科学』を読んでPERT図について学んだ / PERT図を出せるツールを作成した - Lambdaカクテル

                                                      id:hitode909におすすめされてはいたものの読んでなかったので、休日を使って読むことにしたのが『計画の科学』である。技術と読書の贅沢二本立て。 成果物 成果物1 あたまがよくなりました 成果物2 PERT図(をGraphVizで出力するためのDOTドキュメント)を出力するScalaのプログラムを書きました。 github.com CSVから直接指定はまだできません(直にコードを書く必要があります)が、工程を短縮したい場合にどこから短縮すればよいかを表示する機能があります。実際の図は記事の下らへんにあります。 計画の科学 1965年と比較的古い本でありながら、依存関係を含んでいる複雑なタスクをいかに科学的に処理していくかについて、アメリカで開発されたPERTと呼ばれる技法を紹介して説明していく本。 あまり分量も多くなく、物理本も新書サイズでKindle版もあるのですぐ読み終わる。 計

                                                        『計画の科学』を読んでPERT図について学んだ / PERT図を出せるツールを作成した - Lambdaカクテル
                                                      • Scalaはバックエンドでもフロントエンドでも動く Treasure Dataのエンジニアが語るScalaの応用力の高さ

                                                        アジア最大級の国際Scalaカンファレンスである「ScalaMatsuri2020」がオンラインで開催されました。そこでTreasure DataのTaro L. Saito 氏がScalaに関するいろいろなテクノロジーを紹介しました。まずは、バックエンドとフロントエンドの両方で使えるScalaについて。 趣味はオープンソースのプロジェクトを作ること Taro L. Saito氏:「Scala For Everything」というタイトルで発表します。簡単な自己紹介を。Treasure DataのSaitoといいます。Principal Software Engineerをしていて、今、カリフォルニア、アメリカの西海岸から発表しています。タイムゾーンの都合上、今こちらは夜の20時なんですけれども、ScalaMatsuriの運営の麻植さんが、タイムゾーンに配慮してくださったので、非常に感謝し

                                                          Scalaはバックエンドでもフロントエンドでも動く Treasure Dataのエンジニアが語るScalaの応用力の高さ
                                                        • 現在時刻が関わるコードを関数型で書いてテスタビリティを見てみた - Qiita

                                                          最近、現在時刻が関わるプログラムを題材に、高テスタビリティなプログラミング作法を解説した素晴らしい記事が復刻されて、感想などがTLに流れてきたので、自分もそのお題を関数型プログラミングで解いてみた記事。 はじめに 最近、こんな引用ツイートをした。 関数型界隈だと、参照透過な部分とそうでない部分(現在時刻, 乱数, etc.)を分離しといて使うところで合成する作法が尊重されてて、simplicity と composability の結果として、テスタビリティや柔軟性が高くなる(低くならない)ということがよく謳われている。あとで自分もFPでお題解いてみよう。 https://t.co/00TwqXmtC7 — yasuabe (@yasuabe2613) September 30, 2019 元記事は、t-wadaさんの『現在時刻が関わるユニットテストから、テスト容易性設計を学ぶ 』で、めち

                                                            現在時刻が関わるコードを関数型で書いてテスタビリティを見てみた - Qiita
                                                          • TypeScript で幽霊型っぽいものをつくる

                                                            この実装だと当然エンコード済みの文字列も渡せてしまい、多重エンコードが起きる。未エンコードの文字列だけが渡ってくることをコンパイラレベルで検出したい。 幽霊型(Phantom Type) こういうとき、他の言語ではよく幽霊型が用いられる。次のリンク先は Scala での実装例を紹介している https://www.slideshare.net/AkinoriAbe1/aja-2016623 // 上記スライドの 6 枚目より class Str[T] (val str: String) trait Normal trait Encoded def encode(x: Str[Normal]) = new Str[Encoded](...) 内部では利用されない型パラメータ( Normal Encoded )を使って、Str[T] にはそういう種類があること、 Str[Normal] と S

                                                              TypeScript で幽霊型っぽいものをつくる
                                                            • Hatena Engineer Seminar #18 を1月26日にオンライン開催します #hatenatech - Hatena Developer Blog

                                                              こんにちは. はてなWebアプリケーションエンジニアの id:papix です. 2022年1月26日(水)に, Hatena Enegineer Seminar #18 の開催が決定しましたのでお知らせします. 今回は2021年に新卒入社したエンジニア7名が登壇します. 自社サービスである「はてなブログ」「はてなブックマーク」, 共同開発や開発支援のプロジェクトを担当するエンジニアが, それぞれのチームでのサービス開発や運営での取り組み, そこで得た学びを発信します. 新しく取り組んだ技術や新機能開発の進め方, 他部署や他職種との連携の工夫, チームの改善やGraphQLの話まで幅広い内容となっています. 開催はオンラインです. (詳しくはconnpassのイベントページをご確認ください). 皆様のご参加をお待ちしております! イベント概要 日時: 2022年1月26日(水) 19:00

                                                                Hatena Engineer Seminar #18 を1月26日にオンライン開催します #hatenatech - Hatena Developer Blog
                                                              • Akkaのライセンス変更について - Chatwork Creator's Note

                                                                こんにちは、かとじゅんです。 『Chatwork Product Day 2022』に関連してブログを書こうということで、Akkaのプラグインの改善などをテーマに記事を書こうと思ったのですが、Akkaのライセンス変更が界隈ではちょっとしたニュースになりました。「Chatworkさんはどうするの?」とよく聞かれるので、Chatwork社での今後の方針について簡単にまとめてみたいと思います。 Akkaのライセンス変更 www.lightbend.com Akka 2.7 から Apache License Version 2.0 から Business Source License (BSL) v1.1 に変わりました。BSLはMariaDBでも採用されているライセンスです。 The new license for Akka is the Business Source License (BS

                                                                  Akkaのライセンス変更について - Chatwork Creator's Note
                                                                • 2021年にやったこと - k0kubun's blog

                                                                  2020年にやったこと 2019年にやったこと 2018年にやったこと 2017年にやったこと 2016年にやったこと 2015年にやったこと というわけでこれ毎年書いてるんですけど、 なんか参戦したくなったので Rubyist近況 Advent Calendar 2021 24日目です。 入居者募集 記事があるくらいですし、自由に書こうと思います。メリークリスマス。 発表 1歳児がいる状況で家を留守にしたり夜に声を出したりすると家族に負担がかかるので、録画提出できるカンファレンスにしか基本参加しないことにしているのだけど、コロナが長引いていることにより今年も登壇しやすい状況が続いた。 とはいえ、ハイブリッド開催だったRubyConfに関しては、国内の渡航だけでShopifyのYJITチーム全員 (や当地のRubyフレンズ) と対面で話せる貴重な機会だったので、行けなかったのは惜しいなあと

                                                                    2021年にやったこと - k0kubun's blog
                                                                  • モジュラモノリスで表現する複雑なドメイン領域と境界 / Expressing complex domain regions and boundaries with 'modular monoliths

                                                                    モジュラモノリスで表現する複雑なドメイン領域と境界 / Expressing complex domain regions and boundaries with 'modular monoliths

                                                                      モジュラモノリスで表現する複雑なドメイン領域と境界 / Expressing complex domain regions and boundaries with 'modular monoliths
                                                                    • 【現役エンジニア解説】2020年に初心者が最初に学ぶべきプログラミング言語 - 仮想サーファーの日常

                                                                      「プログラミングを学んで、自分に向いているならエンジニアとして転職したいけど、最初に学ぶ言語ってどれがいいんだろう?」 「2020年にプログラミングを学び始めるなら、どの言語をどんな目的で学べばいいんだろう?」 と、最初のプログラミング言語って何がいいのか、悩んでしまいますよね。 ぼく自身も未経験からエンジニアに職種を変更する決断をしたとき、最初に学ぶべきプログラミング言語がわからなかったので、いろんな記事を読みあさった記憶があります。 今回は、2020年これからプログラミングを学び始めるならどの言語がオススメなのか、現役Webエンジニアとして働いている立場のぼくが「初心者の学習のしやすさ」と「求人・案件数の多さ」と「今後の需要が伸びる可能性」の観点から紹介していきます。 プログラミング初心者が最初に学ぶ言語の重要性 プログラミングを勉強する上で、なぜ最初に学ぶ言語選びをこだわる必要がある

                                                                        【現役エンジニア解説】2020年に初心者が最初に学ぶべきプログラミング言語 - 仮想サーファーの日常
                                                                      • OSSへの貢献 - Issueから始めるチーム活動 - ZOZO TECH BLOG

                                                                        はじめに こんにちは、計測プラットフォーム部バックエンドチームのリーダー、児島(@cozima0210)です。この記事では、今年4月に社内で策定されたOSSポリシーに基づいて、チームでOSSに貢献する活動に取り組んだ話を紹介します。社内のOSSポリシーが策定された経緯については、こちらの記事をご覧ください。 なお、これはZOZOテクノロジーズ Advent Calender 2020 #3の5日目の記事です。 背景 私たちのチームでは、ZOZOSUIT/ZOZOMATから生成されるデータ及びそれを元とする計算データを高速に扱うため、様々なライブラリの使用を試みてきました。それらの中には、調査や試用の段階で不具合を発見したライブラリがありました。しかし、プロダクトの開発及び運用の過程では、そうした不具合の根本原因を探る時間を持つことは難しいものでした。そのため、代替ライブラリの選択を検討した

                                                                          OSSへの貢献 - Issueから始めるチーム活動 - ZOZO TECH BLOG
                                                                        • Webシステム開発で関わる技術のまとめ(2022年に知った物) - Qiita

                                                                          はじめに Webシステムの開発に携わりたくて転職して9か月,知らない事ばかりで日々勉強しております。 自分の勉強用メモとして知っておくべき技術をまとめようと思いました。 (こちらの記事にインスパイアされたものです) 技術用語について,なるべく2~3行で概要を説明できる事を目指しています。 情報が多過ぎるので,主流な技術は見出しを赤字にしています。(主観強め) また,今後需要が増えそうな技術は青字にしています。(かなり主観強め) とはいえ,新しい技術が登場すれば,数年でトレンドが変わってしまう事も多々あると思います。 ほとんどはあくまでも初心者がネットで情報をかき集めた程度のものです。 誤りがあればご指摘,ご意見など頂きたいです。 ※2023/2/6追記 不正確・不十分だと思った記載はひっそりと随時修正しています。 また,「そういえばこんなんあったな」という項目も追記しています。 あと,自分

                                                                            Webシステム開発で関わる技術のまとめ(2022年に知った物) - Qiita
                                                                          • OSSへの貢献をさらに良い形にしたい | はてなで働く itchyny にアンケート [#13] - Hatena Developer Blog

                                                                            はてなで働くエンジニアにアンケートシリーズ第13回は、ブックマークチームのWebアプリケーションエンジニア、id:itchynyに話を聞きました。 はてなidはかぶらないように適当に付けた Haskellが得意な自分ならScalaも書けるだろうと思って チーム間で協力しながら新しいAPIの仕様を策定 TLとして、チーム横断での依頼の窓口にも 夕方から深夜にかけて頭が冴える より戦略的にOSSへ貢献する体制作りをしたい スプリントごとに常に方法を改善 実装力を活かして良いシステム構成にできた時に手応えが 意思決定の過程を書き残すのは重要なこと 意欲がある人はいくらでも学べる会社 はてなidはかぶらないように適当に付けた ── Q1. はてなidとその由来を教えてください id:itchyny (いちにぃ)です。本名ばれせず、かつかぶらないよう適当に付けたので、由来はありません。 Haskel

                                                                              OSSへの貢献をさらに良い形にしたい | はてなで働く itchyny にアンケート [#13] - Hatena Developer Blog
                                                                            • 仕様の複雑化、過渡期特有の難解なコード、技術スタックの老朽化… システムの健全な成長を妨げる要因に対する基本戦略

                                                                              仕様の複雑化、過渡期特有の難解なコード、技術スタックの老朽化… システムの健全な成長を妨げる要因に対する基本戦略 アーキテクチャ刷新の現場:未知の技術を採用するために #1/2 アーキテクチャ刷新の現場における取り組みと成果を発表 成瀬允宣氏:みなさん、こんにちは。GMOインターネットグループでデベロッパーエキスパートとして活動しています、成瀬允宣と申します。本日はよろしくお願いします。 私、所属はGMOインターネットグループ株式会社で、システム統括本部に所属している一般のプログラマーではありますが、私からお送りするお話は、「アーキテクチャ刷新の現場」で、ここ数年……2年ほどですかね、アーキテクチャを刷新する現場で一番前を走っていたので、その現場のお話をしようかなと思っています。 非常に苦労して、やっと花開いてきたところなので、今日は、何を予測して、何を準備して、そして何を失敗したのか。そ

                                                                                仕様の複雑化、過渡期特有の難解なコード、技術スタックの老朽化… システムの健全な成長を妨げる要因に対する基本戦略
                                                                              • 全ての開発者が学ぶべき5つの言語 - Qiita

                                                                                「どの言語を学ぶべきか」という議論はエンジニア向け記事の定番ネタですが、HackerNoonに投稿された5 Programming Languages Every Master Developer Should Learnという記事がなかなか興味深かったので翻訳してみました。 (2018/11/04追記) こちらの記事に関する「別視点からの意見」として下記のような記事を追加いたしました。宜しければこちらも併せてご参照ください。 Ruby->Go->Scalaという習得順序がエンジニアの爆速の成長に最適である理由 はじめに 「プログラマーは新しい言語を毎年1つは習得するべきだ」という趣旨の文章をどこかで読みました。(多分CODE COMPLETEだったと思いますが) もしそれが難しくても、キャリアの中で最低限この後に紹介する5つの言語に通じておくことをお薦めします。 あらゆる会社は、多言語を

                                                                                  全ての開発者が学ぶべき5つの言語 - Qiita
                                                                                • 秘密情報をGitLabに格納することなくGoogle Cloud / AWSに対して認証する - エムスリーテックブログ

                                                                                  エムスリーエンジニアリンググループ AI・機械学習チームの笹川です。 趣味はバスケと筋トレで、このところはNBAはオフシーズンですが、代わりにユーロバスケが盛り上がっていて、NBAに来ていない良いプレーヤーがたくさんいるんだなーと思いながら見ています。 夜ご飯を催促するためデスク横で待機する犬氏(かわいい) 今回は、パブリッククラウドへの認証に必要な秘密情報をGitLab自体に格納することなく、安全に認証する方法について紹介します。 CI/CDの実行時のパブリッククラウドに対する認証 ナイーブな手法とその問題点 OpenID Connectを用いた認証 Terraformでパブリッククラウド側の設定を記述する Google Cloudの場合 AWSの場合 GitLab CI/CDで認証する Google Cloudの場合 AWSの場合 認証ステップの共通化 まとめ We are hirin

                                                                                    秘密情報をGitLabに格納することなくGoogle Cloud / AWSに対して認証する - エムスリーテックブログ