並び順

ブックマーク数

期間指定

  • から
  • まで

201 - 240 件 / 4260件

新着順 人気順

Scalaの検索結果201 - 240 件 / 4260件

  • PCを離れたらマイク音量を下げるmacOSアプリを作った - 詩と創作・思索のひろば

    この記事は、はてなエンジニア Advent Calendar 2020の21日目です。昨日は id:tarao による Scalaの依存ライブラリ更新はRenovateでもけっこうイケる でした。明日は id:Krouton です。 みなさん在宅勤務してますか? 私もしています。 仕事も雑談も、とにかくオンラインで話すことが多いので在宅勤務中は AfterShokz という骨伝導ヘッドホンを使っている。ずっと装着してても疲れにくいので、大変いい買い物です。 いちいち外すのも面倒なのでほとんど一日中付けっぱなしにしているんだけど、これが事故を呼ぶこともある。マイクをオフにすることを忘れて離席してしまうと、オフのときの会話が筒抜けになってしまうので、同僚の前ではおとなしいのに家族の前では豹変するとか……。あとおしっこしてる音が聞こえちゃってないとか。気になりますよね。油断できない。 そういうわ

      PCを離れたらマイク音量を下げるmacOSアプリを作った - 詩と創作・思索のひろば
    • Java 17の新機能でドメインモデリングの表現力を高めてみる - BIGLOBE Style | BIGLOBEの「はたらく人」と「トガッた技術」

      基盤本部(開発部門)の木下です。Java 17 の新機能を使って、ドメイン駆動設計(Domain Driven Design: DDD)のモデリングの表現力を高める例をご紹介します。 皆さんは「事前条件が OK ならデータベースを更新する」というロジックを、クリーンアーキテクチャのどのレイヤーに実装していますか? 事前条件はドメイン知識なのでドメインサービスに実装したいところですが、リポジトリーを操作するアプリケーションサービスの中に書かれることも多いのではないでしょうか。 クリーンアーキテクチャー。https://style.biglobe.co.jp/entry/2020/02/13/150709 より引用 この記事では、ドメインサービスとアプリケーションサービスをきれいに分離するために、Java 17 で正式導入された interface の sealed と permits を活用

        Java 17の新機能でドメインモデリングの表現力を高めてみる - BIGLOBE Style | BIGLOBEの「はたらく人」と「トガッた技術」
      • Kubernetes環境に特化したCI/CDツール「Jenkins X」を試してみる | さくらのナレッジ

        広く使われている継続的インテグレーション(CI)/継続的デリバリ(CD)ツールの1つに「Jenkins」がある。このJenkinsの開発チームが、Kubernetesに特化したCI/CDツール「Jenkins X」を発表した。今回はこのJenkins Xの特徴やインストール、基本的な使い方を紹介する。 昨今ではソフトウェア開発を迅速に進めるために「継続的インテグレーション(CI)」と呼ばれる手法が広く採用されている。CIはバージョン管理システムなどと組み合わせて使われるのが一般的で、たとえばバージョン管理システムへのコミットをトリガーとして自動的にビルドやテスト、パッケージ作成を実行する仕組みなどを構築できる。また、最近では「継続的デリバリ(CD)」という手法も使われる。CDはCIと似ているが、運用環境へのデプロイまでも自動で行うという仕組みだ。 CIツールとして著名なものの1つに、以前紹

          Kubernetes環境に特化したCI/CDツール「Jenkins X」を試してみる | さくらのナレッジ
        • Heroku 花札 | Heroku

          リソース Herokuとは? ヘルプ お客様 採用情報 イベント情報 ポッドキャスト コンプライアンス Heroku は 開発者のために CTOのために チームコラボレーションのために スタートアップのために エンタープライズのために ソフトウェア開発会社のために 学生のために その他 言語 Node.js Ruby Java PHP Python Go Scala Clojure その他 Heroku Blog からの最新情報 Heroku Blog ブログからHerokuの最新情報を見つけましょう。 その他の投稿 すべての投稿を見る 背景: Heroku 花札の創作 Heroku には全世界から様々な人々が集まった多様なチームがあります。私たちのコアブランドは、明晰・調和・技巧の実例となっています。この価値観を讃えて、私たちはトランプを作成しました。このプロジェクトを再訪する時期になり

            Heroku 花札 | Heroku
          • iOSからSREに転向した

            2020年5月10日昨年7月にiOS EngineerとしてSoundCloudに入社したが、今年の4月からは同社でSREをしている。 モバイルエンジニアのキャリアSoftware Engineerになって約8年、基本的にはずっとiOS Developerを名乗ってきた。そこそこ真面目にやった甲斐もあり、国内外のカンファレンスで登壇したり、書籍を執筆したり、それなりの規模のプロジェクトでTech Leadをする機会に恵まれた。 その一方で、長らく水平方向にスキルを伸ばしたいという思惑があり、伸びそうなSRE・ML・セキュリティといった分野を検討していた。その中でも特にSREがしっくりきたので、少し前からインフラ関連技術のキャッチアップをはじめていた。 本音としては「モバイルのキャッチアップにかけるコストを最低限におさえて別のスキルを伸ばしたい」と思っていた自分にとってこの数年のiOS開発環

            • SREの観点から考える定期的・継続的な負荷テスト - Qiita

              この記事はSRE Advent Calendar 2019の24日目の記事になります。 はじめに こんにちは、OPENREC.tvでSREに所属している@toro_ponzです。納豆が好きです。 今年の9月までアプリケーションエンジニアとしてサーバーサイドチームに所属していましたが、10月よりSREチームに所属することになり、Kubernetes回りの運用や既存インフラの改廃などを行っています。今期のOKRの内の1つに「負荷テスト環境の整備」というものがあり、自分なりに負荷テストについて調べる機会があったため、それをまとめてみようと思います。 負荷テストとは Webシステムにおける負荷テストとは、そのシステムに対して多数のリクエストを送ることによって、システムが想定される性能を満たしているかどうか確認するテストのことを指します。 一口に負荷テストといえども、その種類はいくつかあります。後述

                SREの観点から考える定期的・継続的な負荷テスト - Qiita
              • Java, MySQLをKotlin, PostgreSQLに移行した - k0kubun's blog

                7年前にGitHub Rankingというサービスを作り、APIを叩きすぎてGitHubからの風当たりが強くなって*1からはデータの更新を止めていたが、KubernetesやGraphQLの時みたいに技術を試す砂場用に惰性で動かし続けていた。 Issueの機能要望対応が段々面倒になってきて、サーバー代節約のために潰すかと考えていたのだけど、毎日1000PVくらいあるので試しにGoogle Adsenseを設置してみたところ1日平均 $1 くらいは入ってて黒字になりそうだったので、ちょっとメンテしやすくしてデータの更新再開するかー、ということで今回いろいろ綺麗にした。 DB: MySQL → PostgreSQL なぜPostgreSQLにしたのか 個人的には多くの用途ではMySQLとPostgreSQLどっちでもいいと思っているんだけど、今所属してるチームがメンテしてるサービスのDBの多く

                  Java, MySQLをKotlin, PostgreSQLに移行した - k0kubun's blog
                • ガチ調査版::2019年プログラミング言語 求人人気ランキング - Qiita

                  背景 実求人をクロールし、どの言語がどれだけ求人を保有しているか実数を取得し、年収別の求人数から総合ランキングを作成してみました。個人の恣意的な価値観を反映しないよう、エンジニアとしての個人的な主観は可能な限り省いています。(解説のところで少し主観が入っているのでお気をつけください) 調査方法 Web上にある求人サービスから実求人をクローリングし、言語の頻出数から人気言語のランキングを調査しました。 クローリングとは何か クローラーとは、ザックリ言うと、web上でデータを集めてくれるロボットです。webにある色々なサイトを飛び周り、こちらの命令(求めているもの)に該当するページで、データを集めてくれます。集まったデータは、各項目ごとに分別され、それぞれ値が抽出されます。抽出されたものは、何かうまいことやってデータベースに格納するなどします。 初心者でも分かる説明 水泳帽をかぶったロボットが

                    ガチ調査版::2019年プログラミング言語 求人人気ランキング - Qiita
                  • メルペイDataPlatformのCDC DataPipeline | メルカリエンジニアリング

                    こんにちは、メルペイ DataPlatformチーム(@rerorero, @darklore, @laughingman7743)です。 この記事は、Merpay Tech Openness Month 2022 の14日目の記事です。 今日はメルペイ DataPlatformで取り組んでいるCDCパイプラインについて紹介します。 CDCパイプラインとは何か CDCとは Change Data Capture の略称で、データベース内のデータの変更(新規作成、削除、変更など)を追跡するシステムです。データソースで発生した変更は、ニアリアルタイムでデータシンクに反映させることができます。 CDCの実現方法にはいくつかあるのですが、メルペイ DataPlatformでは以下の2つの方法を使ったパイプラインを構築しています。 Striim社のブログ がよくまとまっていたので、こちらから引用させ

                      メルペイDataPlatformのCDC DataPipeline | メルカリエンジニアリング
                    • 【2019年No.1事例】0から始めたエンジニア採用、気付けば6名採用できたので徹底解説します。|黒須仁美 | Hitomi Kurosu|note

                      ※本note、気合いを入れて書いていたら 10000字 を超えてしまいました。 こちら見ていただいている皆様、お時間があるときに是非見ていただければ幸いです。 どうも。黒須(@hitmeeeeen)です。 ポテンシャライトで採用コンサルタントやってます。 早速ですが・・・今のエンジニア採用、かなり厳しくないですか? ポテンシャライトは現在(2019年12月時点)までに、100社以上のエンジニア採用支援に携わらせていただきました。また、お問い合わせの約80%が、エンジニア採用についてのご相談となっています。 🤦🏻‍♀️「早急にエンジニアリングマネージャーを3名採用しないといけないんですけど、何通スカウト送ったら採用できますか?」🤦🏻‍♂️「エージェントから全然紹介が来ないんですけど、認知されていないんですかね・・・」🤷🏻‍♂️🤷🏻‍♀️「エンジニア採用、何から始めたらいいのか

                        【2019年No.1事例】0から始めたエンジニア採用、気付けば6名採用できたので徹底解説します。|黒須仁美 | Hitomi Kurosu|note
                      • キャリアと給料 - たにしきんぐダム

                        (自分の気持ちを整理するために考えをダンプしただけの雑文です) 日本のエンジニア達は海外に出なければいけない|Kei というブログを見た。日本より海外の方がソフトウェアエンジニアの給料が一般に高いので海外に行こうという話 僕は今ポーランドの会社にコンパイラエンジニアとして(日本からリモートで)働いていて、コンパイラバックエンドやIDEなどの開発をフルタイムでしている。"海外" に関する話だけど上記ブログに載せられているスクショにはポーランドが見当たらないですね。 上記のブログのソースとなった Average Software Engineering Salaries by Country [2022] を見てみると、 Japan $36,024 に対して Poland $22,740 で日本のほうが200万円くらい平均が高い。実際、日本でフリーランスとしてWebアプリケーションとか書いてた

                          キャリアと給料 - たにしきんぐダム
                        • 達人出版会

                          探検! Python Flask Robert Picard, 濱野 司(訳) BareMetalで遊ぶ Raspberry Pi 西永俊文 なるほどUnixプロセス ― Rubyで学ぶUnixの基礎 Jesse Storimer, 島田浩二(翻訳), 角谷信太郎(翻訳) 知る、読む、使う! オープンソースライセンス 可知豊 きつねさんでもわかるLLVM 柏木餅子, 風薬 R/RStudioでやさしく学ぶプログラミングとデータ分析 掌田津耶乃 データサイエンティストのための特徴量エンジニアリング Soledad Galli(著), 松田晃一(訳) 実践力をアップする Pythonによるアルゴリズムの教科書 クジラ飛行机 スッキリわかるサーブレット&JSP入門 第4版 国本 大悟(著), 株式会社フレアリンク(監修) 徹底攻略 基本情報技術者教科書 令和6年度 株式会社わくわくスタディワール

                            達人出版会
                          • Backlogのコードメンテナンス性を向上させるために気をつけたこと【Backlog Play化プロジェクト】 | Backlogブログ

                            ヌーラボの江口です。約8年間Backlogの開発を担当しており、BacklogをJavaからScala / Play Frameworkに移行するプロジェクトには最初から最後まで関わりました(プロジェクトの概要は時系列でみる!4年の歳月をかけてPlay Frameworkで「大規模リプレイス」した話をご覧ください)。 本記事では、BacklogのScala / Play Framework化プロジェクトで「Backlogのサーバーサイドを進化させる“土台”を作る」をテーマに、どのようにBacklogのアーキテクチャを設計・実装したのかご紹介します。 はじめに 私は2012年の入社以来、Backlogの開発を担当しています。Backlogは10年以上続くサービスであるため、度重なる機能追加や修正を行うことで複雑化し、日頃開発をする上で様々な問題を感じていました。 今回のBacklogのSca

                              Backlogのコードメンテナンス性を向上させるために気をつけたこと【Backlog Play化プロジェクト】 | Backlogブログ
                            • JavaScript で遅延評価を導入して起動を高速化した話

                              この記事は、JavaScript で Flash Player の実現を頑張った(もしくは現在進行系で頑張っている)人たちの集う Flash Advent Calendar 2020 に参加しております。 Flash Player を JavaScript で実装していた際に、現場から「起動の高速化」という難しい要求をもらった際、「遅延評価」を導入したところ大変効果がありました。今回、その遅延評価について簡単なご紹介をしたいと思います。 Flash Player 起動までのステップ 当時 Flash Player を JavaScript で提供していた際、当時のスマートフォン端末においてロード完了から最初の画面が出るまで大体 150ms くらいかかっていました。普通の Web ページであれば 150ms はロード時間の中に吸収され許容範囲になる可能性が高いのですが、当時 Flash Pl

                              • paiza、大人気ゲーム「STEINS;GATE(シュタインズ・ゲート)」とコラボしたITエンジニア向けプログラミングゲーム「電脳言語のオルダーソンループ」を本日より無料公開!

                                paiza、大人気ゲーム「STEINS;GATE(シュタインズ・ゲート)」とコラボしたITエンジニア向けプログラミングゲーム「電脳言語のオルダーソンループ」を本日より無料公開! ITエンジニア向け国内最大の転職・就職・学習プラットフォーム「paiza(パイザ)」を運営するpaiza株式会社(本社:東京都港区、代表取締役社長 片山良平)は、本日より、株式会社MAGES.が提供する大人気ゲーム「STEINS;GATE(シュタインズ・ゲート)」とコラボしたプログラミングゲーム「電脳言語のオルダーソンループ」を一般向けに無料公開いたします。 電脳言語のオルダーソンループ:https://paiza.jp/steins_gate ■大人気ゲーム「STEINS;GATE」とpaizaのコラボ「電脳言語のオルダーソンループ」について 「電脳言語のオルダーソンループ」は、プログラミング問題を解いて物語を進

                                  paiza、大人気ゲーム「STEINS;GATE(シュタインズ・ゲート)」とコラボしたITエンジニア向けプログラミングゲーム「電脳言語のオルダーソンループ」を本日より無料公開!
                                • なぜLINEは600以上のテストケースをKotlinで書くのか? “とにかく便利なテスト”を実現する、kotestのお役立ち機能

                                  LINEが定期的に開催する、Kotlinをテーマにした技術者向けのミートアップ「LINE Developer Meetup for Kotlin」。今回は「LINEにおけるServer Side Kotlinの導入事例と開発裏話」をテーマに開催します。ここで登壇したのは、「Messaging API」のサーバーサイドを開発している川田裕貴氏。システムの改善における取り組みについて発表しました。全2回。後半は、「Messaging API」のテスト環境について。前回はこちら。 End to EndでテストができるテストケースをKotlinで書いている 川田裕貴氏:前半はMessaging APIの話をしてきましたが、後半はちょっと話を変えます。Messaging APIの中ではテストをいろいろ動かしているのですが、テストケースも全部Kotlinで書いています。普通のユニットテストではなく、E

                                    なぜLINEは600以上のテストケースをKotlinで書くのか? “とにかく便利なテスト”を実現する、kotestのお役立ち機能
                                  • CQRS/ESによって集約の境界定義を見直す - かとじゅんの技術日誌

                                    peing.net メッセージングシステムのお題のようです。面白そうなのでちょっと考えてみよう。 問題提起 集約候補が以下の3つ。 ユーザー 企業 スレッド メッセージ スレッド集約はメッセージを複数保持するようです。 1000件のメッセージを保持するスレッド集約を更新した際、1000件のアップデートが行われる スレッド集約内部で更新された属性を把握していない場合は、リポジトリでは全メッセージ分の更新となる。これを避けるための仕組みはどう実装するのか? ということが指摘されている。まぁわかります。これはCQRS/ESなら解決できるよと言ってみる 問題の分析 で、僕ならどう考えて実装に落とすかつらつらまとめてみよう。CQRS/ES前提です。Akkaの成分は少なめでScalaの擬似コードで解説します。コードはコンパイルしてないので…おかしなところあるかも。 問題はスレッド集約がメッセージの集合

                                      CQRS/ESによって集約の境界定義を見直す - かとじゅんの技術日誌
                                    • GitHub Copilot for Businessの所感、みんなに聞いてみた - LIVESENSE ENGINEER BLOG

                                      はじめに LET運営の村山と毛利です。 社内の交流を活発にし、お互いの知識を伝搬する機会を設けるために、Livesense Engineer Talk(通称:LET)というチームを運営しています。 今回は、GitHub Copilot for Businessを社内導入して2ヶ月程経ったので、エンジニアにCopilotを使った感想を聞いてみました。 はじめに みんなの感想 ayumu838さん ここがよかった ここが惜しい 池谷さん ここがよかった ここが惜しい 赤坂さん ここがよかった ここが惜しい 中野さん ここがよかった ここが惜しい 富士谷さん ここがよかった ここが惜しい 渡辺さん ここがよかった ここが惜しい 鈴木さん ここがよかった ここが惜しい 今井さん ここがよかった ここが惜しい まとめ みんなの感想 みんなの感想をChatGPTに要約してもらうと、こんな感じになりまし

                                        GitHub Copilot for Businessの所感、みんなに聞いてみた - LIVESENSE ENGINEER BLOG
                                      • Oracle DatabaseがGraalVMを搭載、DB上でJavaScriptを実行可能。Pythonやほかの言語もサポートしていくと

                                        Oracle DatabaseがGraalVMを搭載、DB上でJavaScriptを実行可能。Pythonやほかの言語もサポートしていくと オラクルは、最新データベース「Oracle Database 21c」を含む「Oracle Autonomous Database」を、Oracle Cloud上で無料で利用できる「Always Free」で提供開始したと発表しました。 「Oracle Database 21cは、世界で最も強力なコンバージド・データベース・エンジンの提供というオラクルの戦略を継続します。」発表資料はこちら https://t.co/DH13zechSx #database #データベース #OracleLive pic.twitter.com/o5huPbw6Hp — Oracle Japan/日本オラクル (@Oracle_Japan) January 14, 20

                                          Oracle DatabaseがGraalVMを搭載、DB上でJavaScriptを実行可能。Pythonやほかの言語もサポートしていくと
                                        • Re: ドメイン固有型(値オブジェクト含む)を再考する - Software Transactional Memo

                                          blog.j5ik2o.me 値オブジェクトはドメイン固有型の一種です。なので、不変と等価判定だけではなく、なにかしらのドメイン固有の不変条件(invariant)を維持する責任があると考えます(もちろん型として切り出すわけですからその投資に見合うだけの見返りがないといけません)。 違う。値オブジェクトとはID以外で等価判定をするオブジェクトの事であって、RubyのHash、Pythonのdict、C++のstd::unordered_setすらも値によって等価判定を行うのでこれらは値オブジェクトであるがドメイン固有型ではない。RubyでHashに入れて渡されたユーザ入力値をValidationしてドメイン固有型に詰め直すのはもちろん必要ならやれば良いが、Hashクラスそのものにモンキーパッチなり特異クラスなりを行って不変条件を維持する責任を負った自分専用Hashを作って普通のHashクラ

                                            Re: ドメイン固有型(値オブジェクト含む)を再考する - Software Transactional Memo
                                          • PyCon JP 2019で見たセッションの聴講記録20個分 / 資料・動画・関連リンクなど - フリーランチ食べたい

                                            2019年9月16日/17日に開催されたPyCon JP 2019で自分が直接/YouTubeで聴講したセッションについてのまとめです。主に下記の内容を書いています。 スピーカーURL 配信動画 スライド 発表内で出てきたライブラリなどのURL 自分の感想 「あのセッションで話していたライブラリなんだっけ」と思い出したい方やざっくり内容が知りたい方に読んでいただければ幸いです。PyCon JPに自分も発表者としても参加し、スタッフとして参加し、Webサイトの開発もしたので、それについては改めて書きたいと思います。 pycon.jp PythonとAutoML / 芝田 将 スピーカー: https://twitter.com/c_bata_ 動画: https://www.youtube.com/watch?v=Whkwu46DgBs スライド: https://www.slideshar

                                              PyCon JP 2019で見たセッションの聴講記録20個分 / 資料・動画・関連リンクなど - フリーランチ食べたい
                                            • ほぼレベル4の自動運転! フランスのヴァレオが挑戦したライダーセンサーだけでの試み

                                              2021年11月13日 15時00分更新 文● 鈴木ケンイチ 写真●鈴木ケンイチ、SIP試乗会事務局 編集●ASCII カメラをほぼ使わない自動運転が登場 レベル4相当とのことだがその実力は? すっかり秋めいた10月下旬、東京のお台場エリアにおいて「SIP自動運転 実証実験プロジェクト試乗会」が実施された。SIPとは「戦略的イノベーション創造プログラム」の英文からきた呼び名で、科学技術イノベーション実現のために2014年度からスタートしている国家プロジェクトだ。様々なジャンルの科学技術のイノベーションを目指すが、その中に自動運転技術も含まれている。今回は、そうした日本の最新自動運転技術を披露する場としての試乗会が開催されたのだ。参加したのは、トヨタやホンダ、日産といった自動車メーカーだけでなく、ヴァレオやコンチネンタルなどの国際的サプライヤー系もあって、それぞれの最新技術を搭載した車両が用

                                                ほぼレベル4の自動運転! フランスのヴァレオが挑戦したライダーセンサーだけでの試み
                                              • 『関数型ドメインモデリング』はF#の本なのか? - 詩と創作・思索のひろば

                                                関数型ドメインモデリング ドメイン駆動設計とF#でソフトウェアの複雑さに立ち向かおう 日本語版出版に際し、訳者の猪股さんにご恵贈いただきました。ありがとうございます! すでに原著の『Domain Modeling Made Functional』を読んでいて、そのときの感想は以前に書いたとおり。そこからの差分としては、はてな社内でこの本の輪読をはじめたこと。輪読がはじまったその週に日本語版の出版が告知され嘆息する一同でしたが、日本最速で輪読を開始できたのは間違いないと思う。 この本の特徴をひとつ挙げろと言われれば、実装に使われている言語がF#であること、というのが大方の回答になるとおもうが、一方でこの本をやるのにF#を実践する必要はない、と考えている。そういうわけで今回輪読における実装言語にはGoとTypeScriptを指名しており、その後Scala勢力も増えたのだけど、進度的には実際にコ

                                                  『関数型ドメインモデリング』はF#の本なのか? - 詩と創作・思索のひろば
                                                • PythonやR対応の統合開発環境「JupyterLab 4.0」正式リリース。 より効率的なレンダリング、リアルタイムコラボレーション機能が分離など

                                                  PythonやR対応の統合開発環境「JupyterLab 4.0」正式リリース。 より効率的なレンダリング、リアルタイムコラボレーション機能が分離など Project Jupyterは、オープンソースで開発されているWebIDE「JupyterLab 4.0」の正式リリースを発表しました。 JupyterLabは、Webブラウザから使えるPythonやR、Scala言語などに対応した統合開発環境です。 Project Jupyter傘下のプロジェクトには「JupyterLab」以外に「Jupyter Notebook」「Jupyter Desktop」もリリースしています。 JupyterLabは、PythonやScala、Rなどのコードを打ち込んですぐに実行できるインタラクティブなデータ解析環境であった「Jupyter Notebook」をベースとし、そこにターミナル画面の機能、ファイル

                                                    PythonやR対応の統合開発環境「JupyterLab 4.0」正式リリース。 より効率的なレンダリング、リアルタイムコラボレーション機能が分離など
                                                  • 僕らがカンファレンスへ行く理由 - Magnolia Tech

                                                    本エントリは、BGMに「僕らが旅に出る理由」を流しながら読んで下さい。 builderscon 2019へ参加してきた。 https://builderscon.io/tokyo/2019builderscon.io 特定の言語やフレームワークに特化したカンファレンスが多い中、buildersconは特定のテーマに縛られることの無い幅広さが魅力ですね(自分は見れていませんが、スーパーカミオカンデの発表はかなりTwitterのTLが盛り上がっていましたね)。 一方でPHP系のカンファレンスのように、間口が広い分、メインテーマのPHP以外の、設計や開発プロセスに関する話題もけっこう充実してきていて、必ずしもその言語を使っていないからといって最初から対象から外すのももったいないイベントも有ります。 もちろん、その言語、ライブラリに100%振り切ったカンファレンスもたくさんの学びが有ります。 (今

                                                      僕らがカンファレンスへ行く理由 - Magnolia Tech
                                                    • ドワンゴ21新卒がフルリモートでの入社から機能をリリースするまで - dwango on GitHub

                                                      はじめに 2021年新卒エンジニアのHikamayoです。 先日、僕が入社して初めて開発に関わった機能がリリースされました。 ニコニコ動画で、自分の投稿動画の再生数・コメント数が伸びている際にお知らせが届くようになりました。https://blog.nicovideo.jp/niconews/157710.html 「ニコニコの"お知らせ"について」はこちらをご覧ください。 入社して半年が経過して、機能のリリースまで体験できたこの機会に、せっかくなのでここまでの僕のドワンゴ生活についてお話してみようかなと思います。 この記事では、以下のようなことをお話しします。 入社してから配属までの新卒エンジニア研修 配属されてからの配属後研修 実際のプロダクトを作成してリリースするまでのOJT ドワンゴでの働き方 入社から配属までの新卒エンジニア研修 入社してから3ヶ月ほどは新卒エンジニア全体研修があ

                                                        ドワンゴ21新卒がフルリモートでの入社から機能をリリースするまで - dwango on GitHub
                                                      • DDDのエンティティはイミュータブルな実装にしてもいいの?(サンプルコード有り)[ドメイン駆動設計 / DDD] - little hands' lab

                                                        本記事はドメイン駆動設計(DDD) Advent Calendar 2021の13日目の記事です。 エンティティとイミュータブル性 オブジェクトをイミュータブル、つまり内部状態を変えない実装にすることで可読性やマルチスレッド対応性が向上することがあります。 エンティティはモデリング上の定義はミュータブルなものですが、実装方法をイミュータブルにすることは可能です。 (DDDでは、エンティティはミュータブルもしくはイミュータブル、値オブジェクトは必ずイミュータブルという定義です。詳しくはこちら) DDD基礎解説:Entity、ValueObjectってなんなんだ - little hands' lab 本記事ではエンティティをイミュータブルな実装にするサンプルコードと合わせて、イミュータブルにした場合の旨みを感じられるコードを紹介します。 イミュータブルなエンティティ実装の例 エンティティをイ

                                                          DDDのエンティティはイミュータブルな実装にしてもいいの?(サンプルコード有り)[ドメイン駆動設計 / DDD] - little hands' lab
                                                        • LINEの「あけおめLINE」過負荷対策(1) ― リスクマネジメントの全体像と「発生可能性の低減」 | gihyo.jp

                                                          「SREの現場から」と題した本連載では、さまざまな企業におけるSREの実践事例を不定期に紹介していきます。 こんにちは、LINE株式会社の加藤(maru)です。SREチームに所属し、主にLINEスタンプや着せかえ、ホームタブ、ウォレットタブでEmbedded SREとして信頼性の改善に従事しています。 LINE株式会社は、コミュニケーションアプリ「LINE」を機軸として、コミュニケーション・コンテンツ・エンターテイメントなどモバイルに特化した各種サービスの開発・運営と広告事業に加え、Fintech事業、コマース事業などを展開しています。基軸となる「LINE」アプリは2023年現在、世界で約2億人が利用しており、LINEスタンプと呼ばれる画像を用いたコミュニケーションがユーザー同士で活発に行われている点が大きな特徴のひとつです。 これから数回にわたり、SREの私が主に担当しているLINEスタ

                                                            LINEの「あけおめLINE」過負荷対策(1) ― リスクマネジメントの全体像と「発生可能性の低減」 | gihyo.jp
                                                          • エンジニア入門者に習得してほしい「熟考」とは何か、それは論理的飛躍の最小化ではないか - Lambdaカクテル

                                                            会社の1on1があって、 id:yigarashi と30分くらい話したら面白い話がいろいろできたので紹介する。掲題ではエンジニアと書いているが、別にウェブ系ソフトウェアエンジニアに限られた話でもないし、ホモサピエンス全員におすすめ、考える葦の皆様におすすめです、くらいのニュアンスである。 熟考すると良い 熟考すると良い答えが出る。当然のことである。しかし入門者に熟考しろと言ってプロになるかといったら難しい。 今期も例によってゴリゴリScalaを書いたりTypeScriptを書いたりPerlを書いたりしていたが、アーキテクトとして中規模プロジェクトを引っ張る機会がいくつか与えられたし、今も引っ張っている最中だ。反省点としてあるのが、具体的にどういうプロジェクトかはいったん措いといて、その進み方に着目すると、一筋縄でうまくいったり、いかなかったりしたことだ。 どういう風に考えると良いんでしょ

                                                              エンジニア入門者に習得してほしい「熟考」とは何か、それは論理的飛躍の最小化ではないか - Lambdaカクテル
                                                            • いつScalaを使い、いつ使わないのか

                                                              前置き 先日Twitterでこのような興味深いツイートを拝見しました。 なるほどと思ったので、自分が技術選定/アーキテクチャ設計において「どのような時にScalaを選択し、どのような時に選択しないのか」をあらためて言語化してみることにしました。 ちなみにこの記事タイトルは Scala福岡 2019 で講演させて頂いたものと同じタイトルですが、当時の資料は説明が無いと誤解を招く部分も多く非公開にしているため、その焼き直しも含めてこの記事を書いています。 また、ここで記載している内容は2022年8月現在の事情を元にした考えになります。言語の機能やとりまく状況などは日々変わっていくものであり、前提が変われば結論が変わることも当然にあります。あくまで現時点での意見の一つとして参考程度にして頂ければ幸いです。 また、この記事では主に言語機構や周辺ライブラリ・エコシステムといった側面からの判断を中心と

                                                                いつScalaを使い、いつ使わないのか
                                                              • 部分型における変性と極性 - なぜScalaの変性は+や-で指定するのか - 貳佰伍拾陸夜日記

                                                                この記事はScala Advent Calendar 2022の19日目です. Scalaではジェネリック型の変性(variance)は+や-で指定しますが, 他の言語(たとえば, C#, Kotlin)ではoutやinだったりします. この記事では変性の意味を整理して, なぜScalaでは+/-の記号を使うのか説明します. 追記ただし, ここで説明している内容は基本的にC#やKotlinでも成立する(はずな)ので「なぜこれらの言語では+/-の記号を使わないのか」を説明するものではありません. 個人的には+/-の方がわかりやすいと思うし, out/inの記法は扱っている概念が簡単であるかのような誤解を生む(悪く言えば騙す)のでどちらかと言うと嫌いです. 発端 こういう話題がありました. Scala は共変が + で、反変が - なので理論重視? なのに対して、Kotlin と TypeSc

                                                                  部分型における変性と極性 - なぜScalaの変性は+や-で指定するのか - 貳佰伍拾陸夜日記
                                                                • Rust の DI を考える — Part 1: DI とは何だったか - paild tech blog

                                                                  paild 社でお手伝いをしている yuki です。みなさんは Rust で DI をしようと思った際に困ったことはありませんか?この連載では、他のプログラミング言語で利用される DI パターンを参照しながら、Rust でそれを実装するためにはどのような工夫が必要かまでを検討します。中には Rust での実装が難しいパターンも出てくるかもしれません。その際は、なぜ難しいのかまでを検証します。 そこそこの規模のソフトウェアを実装するにあたって、ソフトウェアエンジニアが共通して利用する手法がいくつかあると思います。その中でも DI (Dependency Injection; 依存オブジェクト注入) は最もポピュラーな手法の一つであり、保守運用まできちんと耐えうるソフトウェアの設計をしたいとなったときに、まず真っ先に候補に上がる手法でしょう。 Rust ではこの DI をどのように行えばよいの

                                                                    Rust の DI を考える — Part 1: DI とは何だったか - paild tech blog
                                                                  • AWSのコード生成AI「CodeWhisperer」、生成モデルのカスタマイズが可能に。社内の独自ライブラリやAPIを生成コードに組み込める新機能がプレビュー公開

                                                                    AWSのコード生成AI「CodeWhisperer」、生成モデルのカスタマイズが可能に。社内の独自ライブラリやAPIを生成コードに組み込める新機能がプレビュー公開 Amazon Web Services(AWS)は、コメントやコードの一部からAIがコードを自動生成してくれるサービス「Amazon CodeWhisperer」の新機能として、生成モデルをカスタマイズし、社内の独自ライブラリやAPIなども生成されるコードに組み込むことができる新機能をプレビュー公開しました。 下記はAWS CEO Adam Selipsky氏のツイート。 Exciting news! Amazon CodeWhisperer’s new customization capability is now available in preview! The new feature helps customers to

                                                                      AWSのコード生成AI「CodeWhisperer」、生成モデルのカスタマイズが可能に。社内の独自ライブラリやAPIを生成コードに組み込める新機能がプレビュー公開
                                                                    • Scalaのメモリ使用量はJavaよりも多いか検証した - Lambdaカクテル

                                                                      こういう記事を読んだ。 transparent-to-radiation.blogspot.com なんかScalaのメモリ使用量が異常に多いなと思って、調べた。検証コードもアップした。 github.com 検証として、様々なJVM(OpenJDKとかCorettoとか)とそのバージョン(8, 11, 17)でJARを実行して考察した。JVMを用意するためにASDFを使った。また、ASDFから引っぱってこれないJVMのバージョン(OpenJDKの8など)は省略している。 JAVA_OPTSは-Xms100M -Xmx2Gである。 手元のマシン(Linux x86_64 Xeon W-10855M 2.80GHz 64GiB RAM)でのrun-matrix.shの実行結果は、以下の通り(各列は、JVM、計算件数、実行時間Sec、メモリ総使用量KiB)。 openjdk-11 openjd

                                                                        Scalaのメモリ使用量はJavaよりも多いか検証した - Lambdaカクテル
                                                                      • ZOZOSUITのサーバーをPythonからScalaで実装し直してコストを下げた話 - Qiita

                                                                        TL;DR ZOZOSUITで計測したデータを扱うサーバーは、元々Pythonで実装していた それをScalaで実装し直した 結果、レイテンシにおけるパフォーマンスが向上した さらに、リソース面におけるサーバーコストも削減できた 技術選定における背景 ここ数年、機械学習の文脈やサービスの立ち上げ期のプロトタイプ実装のため、Webアプリケーションの分野においてもPythonが選択されることは本当によく聞かれるようになりました。 事実、難しいビジネス要求や急な仕様変更への柔軟な対応においては、比較的実装コストの低い言語やフレームワークを選択するメリットはとても大きいと言えます。 利用できるすべての変数やメソッドの型をプログラムの実行中に決めなければならない場合、ランタイムのオーバーヘッドは甚大になります。静的型付け言語では、そのオーバーヘッドが不要になります。Python、Perl、Rubyと

                                                                          ZOZOSUITのサーバーをPythonからScalaで実装し直してコストを下げた話 - Qiita
                                                                        • 偏見に満ち溢れた俺の書いたことのあるプログラミング言語の説明

                                                                          1つにつき3行で書いた、言語の話は炎上しがちだから匿名で。 C言語: 現代だと電子機器のプログラミングで使うよ! Linuxとかサーバープログラムの内部で使われることが多いけど、 自分で手を加えることは少ないから安心して! C++: 実行速度が超高速なのと複雑怪奇な構文が特徴だよ! ゲームプログラミングや動画編集ソフトといった高いパフォーマンスが 求められるシステムで使われるイメージがあるから、最初は近づかなくても良さそうだね! C#: Unity でゲーム作る時に使うよ! 比較的書きやすくて勉強になるからオススメ出来るけど、 Microsoft にズブズブな印象が強いのがちょっと気になっちゃうね! Java: Androidアプリとかサーバーアプリ作るのに使えるよ! 勉強しやすくて個人的には良いと思うけど、 現代だったら他の言語のほうが書きやすくてオススメかな?? Scala: Java

                                                                            偏見に満ち溢れた俺の書いたことのあるプログラミング言語の説明
                                                                          • Cloudflare WorkersがNode.js API互換の提供を発表。Bun、Denoなどに続く対応により、Node.js APIはサーバサイドJavaScriptの事実上の標準になるか

                                                                            Cloudflare WorkersがNode.js API互換の提供を発表。Bun、Denoなどに続く対応により、Node.js APIはサーバサイドJavaScriptの事実上の標準になるか Cloudflareは、エッジでJavaScriptを実行できるサービス「Cloudflare Workers」において、Node.jsのAPI互換機能を提供すると発表しました。 node.js APIs have officially landed in Cloudflare Workers — no polyfills required. We've added AsyncLocalstorage, EventEmitter, Buffer, assert and util, with more on the way soon.https://t.co/8CkPZkS3Yb — Cloudfl

                                                                              Cloudflare WorkersがNode.js API互換の提供を発表。Bun、Denoなどに続く対応により、Node.js APIはサーバサイドJavaScriptの事実上の標準になるか
                                                                            • 月額報酬が高いプログラミング言語 3位「Vue.js」、2位「Go」、1位は?

                                                                              仕事に役立つ調査データ: 消費者の傾向、若者の価値観、働き方の変化――このコーナーでは、ビジネスパーソンの働き方や企業の戦略立案に役立つようなさまざまな調査データを紹介していく。 リモートワーク求人に特化したITフリーランスエージェントのRemogu(リモグ)は、約4000件のITエンジニア向けのフルリモートワーク案件から、職種別・言語別の平均月額報酬をランキング形式で発表した。職種別の1位は「CTO/VPoE/テックリード」の93.7万円、言語別の1位は「Scala」の93.8万円となった。全案件の平均月額報酬は約73.5万円だった。

                                                                                月額報酬が高いプログラミング言語 3位「Vue.js」、2位「Go」、1位は?
                                                                              • Scala3と圏論とプログラミング

                                                                                最近、圏論とプログラミングという素晴らしい資料を拝読しました。圏論とプログラミング愛に溢れる資料で読んでいて目頭が熱くなりました。そうだよな・・・プログラマにも圏論いるよな・・・ ただ、自分にとって残念だったのは、資料で説明用に選択されたプログラミング言語が「Haskell」だったことです。もちろんHaskellは素晴らしい言語です。ただ、自分にとってHaskellは外国語なのでちょっと理解が難しいのです。そしてこの資料が「Scala」で書かれていたらと夢想せずにはいられなかったのです。 Scalaと言えば昨年末にScala3のリサーチコンパイラのDottyがFeature Completeを宣言しました^1。この宣言で新機能の追加は終了して、あとは2020年末のリリースに向けてひたすら品質を上げていく段階に突入しました。つまり、ようやく次世代のScalaが全貌を現したということです。 こ

                                                                                  Scala3と圏論とプログラミング
                                                                                • 型付けは難しい

                                                                                  ベン・フィードラーのブログより。 型検査と型推論 型検査とは、あるプログラミング言語で与えられたプログラムを実行し、すべての変数や式が正しい型を持っているかどうかを調べるプロセスです。例えば、文字列は文字列に代入され、算術式は数値のみを使用するなどです。一部の言語では型推論を提供しており、コンパイラに自分で正しい型を見つけるタスクも提供します。言語の特徴に応じて、型検査と型推論の問題は、些細なものから決定不能なものまで様々です。 一般的な用語 完全性 正しく入力されたプログラムを全てチェックできれば、タイプチェッカーは完了です。 健全性 正しく型付けされたプログラムのみを受け付けるものであれば、型検査は健全です。 決定可能性 任意の入力に対して、その入力が問題を満足するかどうかを有限時間で計算できる場合、決定問題は決定可能です。決定可能な問題の例としては、素数判定や充足可能性などがあります