並び順

ブックマーク数

期間指定

  • から
  • まで

161 - 200 件 / 4060件

新着順 人気順

Scalaの検索結果161 - 200 件 / 4060件

  • 関数型プログラミングなんもわからん。を考えようと言うイベントを開きました。

    先日Connpassにて、関数型プログラミングなんもわからん。を考えようと言うイベントを開かせていただきました。 関数型プログラミングがわからない! と言う方達の疑問に対して、普段関数型プログラミング言語を使っているわかる人たちが回答をして行くと言うスタイルのイベントでした。関数型プログラミング言語と一口に行っても、Elm, Scala, Haskell, Clojure, Elixir, F#と様々な言語があり(これは今回参加した人たちの使っている言語で、関数型プログラミング言語の一部にしか過ぎません)何が正解かなどはわからない中での意見の集約といった形のため参考程度にご覧ください。結果イベントとしては様々な視点からの意見が聞けて満足という声が多かったです。私自身知らないことがたくさん知れて勉強になり楽しかったです。 イベントの内容は、Figma上で開けるFigJamファイルとして、公開

      関数型プログラミングなんもわからん。を考えようと言うイベントを開きました。
    • ZOZOSUITからZOZOMATへ - CQRSによる解決アプローチ - ZOZO TECH BLOG

      はじめに こんにちは、計測プラットフォーム部バックエンドチーム、テックリードの児島(@cozima0210)です。この記事では、ZOZOSUITとZOZOMATの違いにより生じたバックエンド開発における課題と、その解決のためにCQRSアーキテクチャを採用した経緯、そしてその実践について紹介します。 ZOZOSUITとは ZOZOSUITは、2017年に発表した全身の計測を目的としたツールです。現在も計測機能は提供されていますが、新規の販売は終了しています。現在、ZOZOSUITの計測データは、マルチサイズ商品の開発に活かされています。 ZOZOMATとは ZOZOMATは、2019年に発表した足の計測を目的としたツールです。足の計測データから、足型診断や推奨サイズの提案に活用されています。今年の2月にリリースし、ZOZOSUITに続く計測技術として、とても注目をいただきました。 計測プラッ

        ZOZOSUITからZOZOMATへ - CQRSによる解決アプローチ - ZOZO TECH BLOG
      • Goとマルチコアスケール実装

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

          Goとマルチコアスケール実装
        • Amazon CodeWhispererでどの程度コーディングが効率化できそうか試してみた - Taste of Tech Topics

          ここのところ気温も暖かくなり、外に出かけるのが楽しみになってきた、カメラ好き機械学習エンジニアの@yktm31です。 いま世間を賑わせている生成系AI、ChatGPTは私にとって欠かせないものになりました。 そんな中つい先日、AWSから「Amazon CodeWhisperer」がGAになりました。 といことで、さっそく試してみました。 目次 概要 特徴 サポート サポートされるプログラミング言語 サポートされるIDE サポートされる自然言語 使い方 利用開始方法 基本操作 Lambdaで、DynamoDBのレコードを取得する処理と、そのユニットテストを書いてみた コード参照(Code references)を試してみる セキュリティスキャンを試してみる ドキュメントからわかったこと 安全性・セキュリティ ProfessionalとIndividualの違い 料金と制限 オプトアウト方法

            Amazon CodeWhispererでどの程度コーディングが効率化できそうか試してみた - Taste of Tech Topics
          • あらゆるプログラミング言語の最先端を行くScala 3のマクロ - 貳佰伍拾陸夜日記

            この記事はScala Advent Calendar 2023の11日目です. 最近, 趣味でScala 3のコードをだいぶ書いていて, マクロの使い心地のよさに感心しました. 理論的な背景も含めて, 産業界で多く使われているプログラミング言語の中では筆者の知る限りぶっちぎりに優れたマクロを備えています. 他の言語にも見習ってほしいですね. たぶん見習おうとすると処理系を作り直す羽目になりますが. この記事ではScala 3のマクロのすごいところを例を使って紹介します. マクロの実践的な例 準備 実践的な例: NamedArray – 名前でアクセスできる配列 NamedArrayのマクロ実装 記述が明瞭 メタレベルのプログラムの扱い クォートとスプライスがある パターンマッチもある 生成コードに型がつく 多段階計算に基づいている クォートとスプライスの本当の意味 ネストしたスプライス ネ

              あらゆるプログラミング言語の最先端を行くScala 3のマクロ - 貳佰伍拾陸夜日記
            • ソフトウェアエンジニアをしていて影響を受けた5冊(+α)

              他の方の記事ですが、読んでいておもしろかったです。記事に出ている本はClean ArchitectureとTDD、LeanとDevOpsの科学くらいしか読んだことなかったです。 また自分も書くことで、他の方も記事を書くようになり、ついでに他の方の記事を読んでみるなどしたいなと思ったので書いてみます。 私はソフトウェアエンジニアとしてのキャリアはまだ7年くらい[1]なので短い方ですが、約7年間の中で読んで印象に残ったものを紹介します。 計算機プログラムの構造と解釈 Scala関数型デザイン&プログラミング Effective Java Programming Rust 実践ドメイン駆動設計 なお、この記事ならびに本のリストは誰かの役に立つことは想定しておらず、単に自分が読んで影響を受けているなあと感じる本をまとめています。つまり自己満足です。 加えてこの手の記事を書く際には、一応筆者のプロフ

                ソフトウェアエンジニアをしていて影響を受けた5冊(+α)
              • Introduction · Scala研修テキスト

                はじめに 本資料は、Scala初学者向けの学習テキストです。本資料を読み進めることで、 プログラミング言語Scalaを用いたアプリケーションを開発できるようになること 『Scala スケーラブルプログラミング』(第4版)(通称コップ本)を通読して理解できるようになること 『Scala関数型デザイン&プログラミング ―Scalazコントリビューターによる関数型徹底ガイド』(通称FP in Scala)を通読して理解できるようになること が主な目的です。 『Scalaスケーラブルプログラミング』は、Scalaの言語設計者であるOderskyさんらにより書かれた解説書で、Scalaの言語機能について詳細に書かれており、Scalaプログラマにとってはバイブルと言える本です。この本は決して読みにくい本ではないのですが、本の分量が多いのと、関数型など他の言語でのプログラミング経験がないとわかりにくい箇

                • 経験5年のHaskellユーザがScalaを仕事で半年使ってみた

                  haskell-scala-java ちょっと前までScalaを書いていたので、 Haskell好きな人がScalaを書いた感想を書きます。 タイトルは経験15年のOCaml ユーザーが Haskell を仕事で半年使ってみた - camlspotter’s blogの模倣です。 あくまで1ユーザの感想です。 Scalaに慣れてしまうと違和感を忘れてしまうと思ったので、当時箇条書きで雑にメモしていたものを参照して書いています。 逆にScala使いがHaskellを知るメモに役立つかもしれません。 Haskell歴 when: 2013年から知って学び始めましたが、本格的に使い始めたのは2015年からで、5年ほど使っています where: どの言語を使っても良くて新しい言語を学ぶ必要がなければ基本的にHaskellを使っています what: 趣味OSSプロジェクトの大半 現在一番スターもらっ

                    経験5年のHaskellユーザがScalaを仕事で半年使ってみた
                  • GWに技術書イッキ読み!Kindleセールで5/10まで半額の本を分野別に総まとめ - 仮想サーファーの日常

                    Amazonで、Kindle本が最大50%OFFになるゴールデンウィーク限定キャンペーンが開催されています。 期間は、2020年5月10日(日)まで。 50%OFFは、自分の観測範囲では前回の開催が2019年12月末だったので、4ヶ月ぶりの50%OFFセール。 これだけ多くの種類の技術書が50%OFFになる機会は多くないので、この機会にほしい本がないかチェックしておきたいですね。 【Kindle技術書50%OFFセール(5/10まで)】を見てみる この記事では、ゴールデンウィークに一気に技術書を読んで技術力を伸ばしたい方向けに、学びたい分野別にKIndleセール本をまとめました。 プログラミング言語を学ぶ HTML/CSSに入門したい HTML5/CSS3モダンコーディング フロントエンドエンジニアが教える3つの本格レイアウト スタンダード・グリッド・シングルページレイアウトの作り方 吉田

                      GWに技術書イッキ読み!Kindleセールで5/10まで半額の本を分野別に総まとめ - 仮想サーファーの日常
                    • サービスメッシュ必読ガイド - マイクロサービス時代のサービス間通信管理

                      このパターンには2つの背景があります。ひとつは、技術者がマイクロサービスアーキテクチャパターンを採用して、複数の(理想的には単一目的で、独立してデプロイ可能な)サービスで構成されるアプリケーションを開発するようになったことです。ふたつめは、企業がコンテナ(Dockerなど)、オーケストレータ(Kubernetesなど)、プロキシ/ゲートウェイ(Envoyなど)といった、クラウドネイティブなプラットフォームテクノロジを支持するようになったことです。 意図 サービスメッシュが解決しようとする問題は次のようなものです。 サービスディスカバリ、ルーティング、アプリケーションレベル(レイヤ7)の非機能通信要件を処理する言語対応の通信ライブラリを、個々のサービス用にコンパイルする必要性の排除 外部サービスのネットワークロケーション、セキュリティ認証、サービス品質(QoS)目標など、サービス通信設定の外

                        サービスメッシュ必読ガイド - マイクロサービス時代のサービス間通信管理
                      • AWSエンジニアの副業のリアル。案件の内容や獲得の仕方について | Offers Magazine

                        1986 年生まれ、freee で働く SRE エンジニア。 Scala, Ruby でのアプリ開発や AWS が得意分野。モットーは「はったりエンジニア」。 2017 年より本業の傍ら個人事業主として開業し、スタートアップの技術アドバイザーをやっています。 はじめまして。 freee 株式会社に勤めているエンジニアの坂井と言います。普段の仕事は SRE (Site Reliability Engineering) として「会計 freee」や「人事労務 freee」をはじめとしたクラウドサービスのインフラを支えています。 私は本業の傍ら、個人事業主として AWS を中心とした技術支援の副業をやっています。 最近はテレビや雑誌などのメディアでも、副業というキーワードを目にすることが多くなってきました。みなさんの中にも、興味を持っている方は多いのではないでしょうか。 でも、副業というとなんだ

                          AWSエンジニアの副業のリアル。案件の内容や獲得の仕方について | Offers Magazine
                        • 「DDDで複数集約間の整合性を確保する方法 Rev2」に対する考察 - かとじゅんの技術日誌

                          どうも、かとじゅんです。 松岡さん(id:little_hands)が以下の記事を更新されたそうです。松岡さん自身が悩まれた中で検討したオプションであって、唯一の正解ではないと踏まえたうえで、率直な感想を述べたいと思います。結論からいうと、論旨は前回の記事と変わりませんが、コード例で具体的な考え方を示している点を工夫しています。 little-hands.hatenablog.com 前回の考察記事も古くなったので、最新の記事に併せて考察をまとめ直したいと思います。 blog.j5ik2o.me ドメインモデル ドメインモデル図が追加されていますね。以下の3つの集約があるそうです。「一つの集約にまとめればいいよね」という提案はなしという前提で考えます。 ユーザー タスク アクティビティ・レポート 「アクティビティ・レポート」は「タスク」もしくは「ユーザー」に関連を持つようです。 「これらの

                            「DDDで複数集約間の整合性を確保する方法 Rev2」に対する考察 - かとじゅんの技術日誌
                          • アメリカでの転職活動2022 - shinichy's blog

                            去年サンフランシスコにあるFintechのスタートアップに転職しましたと書きましたが、なんと1年も経たないうちに会社が資金難で潰れてしまいました…。 会社には日本人の方も何人かいて、1ヶ月前に元同僚の方がブログに詳細をまとめて下さっています。会社が倒産した経緯などはそちらを見ていただくとして、自分も転職活動を振り返ってみようと思います。 note.com ちなみに自分のステータスとしてはビザはH-1B、経験年数12年(うちアメリカで5年)のフルスタックソフトウェアエンジニア(バックエンドメイン)です。 仕事探し LinkedIn、Twitterを使って探しました。仕事募集中の投稿直後からたくさんの方にお声がけいただけたので嬉しかったです。たださすがにフルタイムで転職活動しても全ては受けきれない数だったので、スキルマッチしそうな仕事 (プログラミング言語としてはClojure、Scala、D

                              アメリカでの転職活動2022 - shinichy's blog
                            • ChatworkはPHPエンジニアの採用をより強化していきます、というお話。 - kubell Creator's Note

                              プロダクト本部で副本部長をしています、田中(@tan_yuki)です。最近はたべっ子水族館をずっと食べています。 私の主な仕事はプロダクト開発組織に関する採用・ピープルマネジメントに関するところがメインなのですが、最近、中途採用の方針を少し変更しました。その変更内容について、社外にも発信していこうと思い、ブログを書きました。 以下の文章は社内で共有した文章に少し加筆修正を加えたものになります。 ~ * ~ * ~ * ~ * ~ * ~ * ~ Chatworkで使われているプログラミング言語といえば、どういったものを想像するでしょうか? 私達はいままで、Scalaという言語を強くアピールしてきました。その功績もあり、多くのScalaエンジニアの方々を採用することに成功しています。もちろん、今後もScalaとは長く付き合っていくつもりです。 しかし、最近エンジニア採用の優先度の調整をし、P

                                ChatworkはPHPエンジニアの採用をより強化していきます、というお話。 - kubell Creator's Note
                              • 「理研、整備中のスパコンをコロナ研究のために前倒しで運用開始」というニュースに厨二心が刺激されてしまう人々

                                NHK科学文化部 @nhk_kabun 新型コロナウイルスに対する薬の開発などに利用するため、理化学研究所は整備途中の最新のスーパーコンピューター「富岳」の運用を1年前倒しで始めたと公表しました。 www3.nhk.or.jp/news/html/2020… 2020-04-07 17:31:01 リンク NHKニュース 治療薬開発などに利用 スパコン「富岳」前倒しで運用開始 | NHKニュース 新型コロナウイルスに対する薬の開発などに利用するため、理化学研究所は整備途中の最新のスーパーコンピューター「富岳」の運用… 59 users 4446 リンク Wikipedia 富岳 (スーパーコンピュータ) 富岳(ふがく、英語: Fugaku)は、兵庫県神戸市・ポートアイランドの理化学研究所計算科学研究センターに設置予定のスーパーコンピュータである。京の後継機として2014年に開発を開始し、2

                                  「理研、整備中のスパコンをコロナ研究のために前倒しで運用開始」というニュースに厨二心が刺激されてしまう人々
                                • Java 注目の機能:Sealed クラス

                                  クラスまたはインタフェースはsealedと宣言されている場合があります。これは特定のクラスやインタフェースの集合だけがそれを直接拡張できることを意味します。 sealed interface Shape permits Circle, Rectangle { ... } これは Shape と呼ばれる Sealed インタフェースを宣言します。permits リストは、Circle と Rectangle だけが Shape を実装できることを意味しています。(場合によっては、コンパイラが permits 句を推論できるかもしれません)。 Shape を拡張しようとする他のクラスやインタフェースは、コンパイルエラーを受けます(または、Shape をスーパータイプとして宣言しているラベル外のクラスファイルを生成しようとした場合は、実行時エラーとなります)。 私たちは、final クラスを介し

                                    Java 注目の機能:Sealed クラス
                                  • N予備校に入学してプログラミング入門コースを少しやってみたけどかなり良さそうだった - みんからきりまで

                                    このエントリはバーチャル幼女プログラマーのきりみんちゃんが書いています。 N予備校に入学してみたよ www.nnn.ed.nico 少し前にも話題になっていたけど、Webプログラミングなどの勉強がしたいと思ってN予備校というサービスに登録してみました。 N予備校はドワンゴが運営してるネット学習サービスで、大学受験コースの他にプログラミングコースなどもあり、月額1000円ですべてのコースが自由に履修できるようです。 N予備校に入学しました— きりみんちゃん💮バーチャル男声幼女プログラマー(茶) (@kirimin_chan) 2020年1月28日 プログラミングコースではプログラミングの完全な初学者向け教材から、かなり本格的なソフトウェア開発のコースまで用意されているようです。 「プログラミング入門」コースではnode.jsを使った簡単なWebアプリの作成まで、「大規模Webアプリ」コース

                                      N予備校に入学してプログラミング入門コースを少しやってみたけどかなり良さそうだった - みんからきりまで
                                    • 交通センサスの解析と可視化 - ponkotuyのブログ

                                      概要 今回は交通センサスの解析して市区町村間の交通流動を解析して日本の市区町村をグルーピングし、GISの仕組みを使って可視化するところまでやったので、その話をします。 モチベーション そもそもなんでそんなことを始めたかというと、特に福島県なんですが「県境の設定が雑じゃね?」みたいな素朴な疑問があったからです。 これは歴史的事実として、実際に廃藩置県の政治的なゴタゴタの中で決まった県境が変更されずに今に至っているので当然そうなんですが、 となると「じゃあそこらへん合理的に県境を決めたらどうなるん?」という疑問がわいてくるわけです。 多くの地元民が納得する県境を考えると、 「大きな買い物をするときに行く街や、遠くに行くときにいくときに経由する街が同じ都道府県になると、まあまあうまくいくだろう」 という仮説をまず立てます。 その上で、その地域のグループを作るのであれば、最も交通流動の多い地域を繋

                                        交通センサスの解析と可視化 - ponkotuyのブログ
                                      • DSL作りたいんだけど何もわからないので識者に教えてもらいたい - Lambdaカクテル

                                        トランスパイルするDSLを作りたいが何を読んだらいいのかまだよくわかっていないので、誰か教えてほしい、という記事です。 あらすじ DSL作りたい あらすじ 最近色々な技術を勉強している。具体的にはロガーの実装を読んだりRefinement Typesの勉強をしたりしている。仕事で必要というのが半分、興味半分といった具合で、素振りも兼ねてやっているので結果的に仕事で役立ったりしている。 個人的には、こういう暮らしの勉強みたいなところだと、本業で勉強しなければならないものに加えて、シナジーが生じるような勉強をしたり購買をすると良いのだろうなと思っている。 たとえばラズパイとかN100のマシンを買ってちょっとしたk3sクラスタを作ってみたりするとクラスタ技術の良い勉強になる。さらに電子工作の勉強をしておくとラズパイと組み合わせてIoT的なこともできるようになる。 そんな中、ずっと自分が勉強したい

                                          DSL作りたいんだけど何もわからないので識者に教えてもらいたい - Lambdaカクテル
                                        • 新しくプログラミング言語を作る際に数値型をどうするべきか

                                          この記事は、新しくプログラミング言語を設計する際に数値型をどうするべきかについて、私の持論をまとめたものです。 数の体系 JavaScript(BigInt以前)やLua(〜5.2)などは唯一の数値型が浮動小数点数型で、整数も実数も同じ「number」型で表現します。ミニマルな言語を作るのならそういう設計もアリかもしれませんが、ネイティブコンパイルも視野に入る実用的な言語を作るなら整数と実数を一緒くたにする設計はやめた方が良いと思います。 特に、JavaScriptにコンパイルする言語を作るからと言って、数値型の設計まで真似る必要はありません。 整数を浮動小数点数で表現すると、思わぬ性能低下の要因になったりします。最近(2023年2月)、次のツイートが話題になりました: これは正のゼロと負のゼロが値として区別され、正のゼロは内部的に整数扱いされるのに対し負のゼロはそうではないことによるもの

                                            新しくプログラミング言語を作る際に数値型をどうするべきか
                                          • LINEヤフー Tech Blog コード品質向上のテクニック: 第 1 回

                                            こんにちは。コミュニケーションアプリ「LINE」のモバイルクライアントを開発している石川です。 私達は、高い開発生産性を維持するために、コード品質と開発文化の改善に注力しています。 そのために様々な取り組みを行っているのですが、その 1 つとして Review Committee の活動があります。 Review Committee では、マージ済みのコードを再度レビューし、レビューアとオーサーにフィードバックしたり、レビューで集めた知見を Weekly Report と称して毎週共有したりしています。 この Weekly Report で共有される話題は、Android や iOS といったプラットフォームや、Kotlin や Swift 言語固有の注意点も含まれるのですが、多くの場合はプログラミング一般に適用できるものになるように配慮しています。(ただし、説明のために使うコードは Ko

                                              LINEヤフー Tech Blog コード品質向上のテクニック: 第 1 回
                                            • プログラムを「書き始める」「試しに実行する」コストを下げる工夫

                                              はじめに 物事を上達するためには反復を、というのはよく聞きますが、もちろんプログラミングでも大事なのかと思います。とくに自分は「一を聞いて十を知る」ような器用なことはできないので、何度も何度もプログラムを書いて、試していました。 このような反復を支援するためには、できるかぎり「書き始めるコスト」と「実行して確認するコスト」は低い方がいいと思っています。書き始めるのがだるいと、そもそも「ちょっと書いてみようかな」となかなか思わないですし、実行するための手数が多いと、「書いて→結果を確認」の回数が減ります。 本稿では、この「書き始めるコスト」と「実行して確認するコスト」を下げる私が20年くらい行っている工夫についてご紹介します。 筆者が Ruby が好きなので、Ruby の例が多いですが、別に Ruby に限った話ではありません。 プログラミング言語による違い たとえば、C 言語ですと、プログ

                                                プログラムを「書き始める」「試しに実行する」コストを下げる工夫
                                              • 非同期処理の道具箱 — HACK The Nikkei

                                                この記事はNikkei Advent Calendar 2022の 13 日目の記事です。 こんにちは、Web チームの井手です。最近 Web チームで働く魅力について語ったので是非とも読んで欲しいです。 今日は非同期ランタイムについて書きます。 私は非同期ランタイムやサーバー進化論が好きで、たまにブログを書いたり、前職でもアドベントカレンダーに書いたりしていました。 本稿では効率的な非同期処理を実現するライブラリが中で何をしているのかを、低レイヤーの非同期処理そのものを解説しながら見ていきたいと思います。説明の都合上 Rust を使うので、Rust 特有の話もありますが、低レベルな API があればどの言語でも当てはまる話だと思います。この辺りは Rust, Scala(JVM), Erlang, Go などはお互いがお互いのアイデアを参考にしていて切磋琢磨しつつも似た仕組みをそれぞれが

                                                  非同期処理の道具箱 — HACK The Nikkei
                                                • ZOZOMATにおけるEKSやgRPCを用いたシステム構成と課題解決 - ZOZO TECH BLOG

                                                  ZOZOテクノロジーズSRE部の市橋です。普段は主にAWSを用いて複数プロダクトのシステム構築、運用に携わっています。今回は2020年2月にリリースされたZOZOMATについて、システム構成と開発時に直面した課題、その課題を解決するために工夫した点について紹介します。 ZOZOMATではEKSやgRPCを新規に採用しており、これによって仕様の変更に強くなる、通信のオーバーヘッドを削減できるなど様々なメリットを享受できました。しかし導入時に一筋縄ではいかないことがあったため、今回苦戦した点についてご紹介できればと思います。 ZOZOMATとは お客様の足を3Dで計測するために開発された計測用マットです。ZOZOMATでの計測情報をもとに、靴の推奨サイズを参照するなどのサービスをご利用いただくことが可能です。ご興味のある方はこちらをご確認ください。 ZOZOMATのシステム構成 システムの全体

                                                    ZOZOMATにおけるEKSやgRPCを用いたシステム構成と課題解決 - ZOZO TECH BLOG
                                                  • コードの複雑度をあげる Pull Requests を GitHub Actions で止めよう

                                                    循環的複雑度が閾値を超えた Pull Requests に、自動的に変更をリクエストする 「コードの品質を、維持したいよーーー」 ということで、テストや Linter を GitHub Actions で実行している環境はよくあると思いますが、今回は 循環的複雑度 を継続的に計測して、閾値を超えた場合に自動的に Pull Request に対して Request Changes のレビューをしようという試みです。 Lizard この例では、Lizard を使用して CCN を計測します。 おそらく似たようなツールでも同様に実行することができると思います。 Lizard は Python で開発されている CCN 計測ツールです。(追記:シンプルに書いてしまいましたが、もちろん他の指標も計れます) 以下のようにサポート言語が多いので、大抵の場合で採用できそうです。 サポート言語 (1.17.

                                                      コードの複雑度をあげる Pull Requests を GitHub Actions で止めよう
                                                    • "simple"と"easy"はどう違う? Simple Made Easyを解説 Part1

                                                      2019年7月29日、Opt Technologiesが主催するイベント「Fun Fun Functional (2) 関数型言語Lightning Talks!!」が開催されました。関数型プログラミングについて楽しく学び、知見を共有することを目的に開催されている本勉強会。今回は6名のエンジニアが、関数型プログラミング言語にまつわるユニークな発表を行いました。プレゼンテーション「"Simple Made Easy" Made Easy 」に登壇したのは、lagenorhynque氏。講演資料はこちら "Simple Made Easy" Made Easy lagenorhynque 氏(以下、lagenorhynque):それではよろしくお願いします。 (会場拍手) 今日は見たところScalaの人とかOCamlの人とかHaskellの人とか静的関数型言語勢の人が多くて、LISPの人や、と

                                                        "simple"と"easy"はどう違う? Simple Made Easyを解説 Part1
                                                      • 関数型はプログラミングスタイル

                                                        「関数型プログラミングは関数型言語じゃないとできないんでしょ?」という質問をたまに受けます。答えは「いいえ」です。もちろん、言語のサポートはあれば越したことはないです。 そもそも命令型及び関数型はプログラミングスタイルです。そして、命令型と関数型の間は0/1ではなく、グラデーションがあります。 なので、関数型プログラミングは関数型言語以外でも使えますし、プログラムをよい設計へ導く考え方ですよ、というのがこの記事の主張です。コード例も交えて説明してみます。 関数型へのアプローチ ロジックを書くとき 可変の変数(var)を使わず、不変の変数(val)を使う 可変のオブジェクト(mutable)を使わず、不変のオブジェクト(immutable)を使う voidやUnitなどの戻り値のない関数は使わず、戻り値を返す(高階)関数を使う 関数を定義するとき 参照透明な関数を定義する 必ず意味のある戻り

                                                          関数型はプログラミングスタイル
                                                        • 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
                                                                • 関数と型で理解する自動微分

                                                                  Scala アプリケーションのビルドを改善してデプロイ時間を 1/4 にした話 | How I improved the build of my Scala application and reduced deployment time by 4x

                                                                    関数と型で理解する自動微分
                                                                  • 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 柏木餅子, 風薬 手を動かしてわかるクリーンアーキテクチャ ヘキサゴナルアーキテクチャによるクリーンなアプリケーション開発 Tom Hombergs(著), 須田智之(訳) 詳解 AWS CloudFormation 潮村 哲 その決定に根拠はありますか? 確率思考でビジネスの成果を確実化するエビデンス・ベースド・マーケティング 小川 貴史, 山本 寛 プログラマーのためのVisual Studio Codeの教科書【改訂2版】 川崎 庸

                                                                                    達人出版会