タグ

hfmgardenのブックマーク (6,916)

  • MySQL 8.0.31で追加されたINTERSECTとEXCEPTの動作例 - sakaikの日々雑感~(T)編

    MySQL 8.0.31 がリリースされました。「リリースノートでわいわい言う勉強会」は1か月後くらいにやりたいと考えているので、それまでツイッターやブログでぜひ MySQL 8.0.31 を試して、ブログやツイートなどで気になる変更点を教えてください。 さて、さっそくですが私が気になったのは「新構文」。 "INTERSECT" と "EXCEPT" に対応したということで、軽く試してみました。 テーブルとデータの準備 flg1とflg2の2つのカラムを含むテーブルを作成し、データを投入します。 mysql> SELECT @@VERSION; +-----------+ | @@VERSION | +-----------+ | 8.0.31 | +-----------+ 1 row in set (0.00 sec) mysql> CREATE TABLE t26 ( -> id I

    MySQL 8.0.31で追加されたINTERSECTとEXCEPTの動作例 - sakaikの日々雑感~(T)編
    hfmgarden
    hfmgarden 2022/10/14
  • Cookpad Code Puzzle for RubyKaigi 2022の解説(表ステージ) - クックパッド開発者ブログ

    技術部の遠藤(@mametter)です。RubyKaigiお疲れ様でした! クックパッドRubyKaigiで、Rubyを使ったパズルを出してました。この記事では、出題者が想定していた解き方を公開します。自力で遊びたい人は解いた後で読んでください。 Cookpad Code Puzzle for RubyKaigi 2022 どんなパズル? あらかじめ定義された謎の関数の中身を当てるパズルです。適当な引数で呼び出してみて、結果を観察して、中身を想像します。あたりがついたら、同じ関数を定義してみて、テストをパスしたらクリア。 次のURLでブラウザでプレイできます。もう賞品はもらえませんが、解きたい人は今からでも挑戦してみてください。 ruby-puzzles-2022.cookpad.tech 以下、ネタバレで各問題を解説していきます。 1問目 あらかじめヒントが書かれています。 # You

    Cookpad Code Puzzle for RubyKaigi 2022の解説(表ステージ) - クックパッド開発者ブログ
    hfmgarden
    hfmgarden 2022/09/16
  • RubyKaigi 2022にオフライン参加しました - $shibayu36->blog;

    ANDPADに入社してRubyistになったのでRubyKaigi 2022にオフライン参加してきました。 rubykaigi.org 久しぶりのオフラインカンファレンス参加、当に楽しかったです。最近オンラインのカンファレンスや勉強会に行っても中々いろんな人と話す機会が持てず、なんとなく行かなくなっていました。今回久々にオフライン開催ということで行ってみたら、久々に会った人と技術的な会話ができたり、ブースでいろんな企業のことを知れたり、ふらっと見てみた発表で異常な技術が発表されていたりと、楽しいことが盛りだくさんでした。オフラインとオンラインのハイブリッド開催は非常に大変だったと思いますが、運営の皆様ありがとうございました。 印象に残っていること 今回視聴者として印象に残っているのはこの辺り。 久々に技術でねじ伏せる人たちを生で見れたのが良かった。自分もまだまだ技術を学ばないとという気持

    RubyKaigi 2022にオフライン参加しました - $shibayu36->blog;
    hfmgarden
    hfmgarden 2022/09/15
  • AWS GameDay を社内開催しました - クックパッド開発者ブログ

    技術部 SRE グループの奥村 (@hfm) です。クックパッドでは Hackarade というエンジニア技術力の底上げを目的とした社内ハッカソンを不定期に開催しています。テーマは毎回異なり、2022 年 8 月 3 日に開催された Hackarade では AWS GameDay を題材としました。記事ではそのイベントをレポートします。 AWS GameDay と開催経緯 AWS GameDay は ISUCON のようにスコア計測があるトレーニングプログラムで、テーマに沿って自分で考えながらシステムを構築しつつ、時に障害に対処したり、スキルアップを図る実践的な内容になっています。AWS re:Invent などで開催されるものに任意参加するのが一般的ですが、今回は社内向けに開催してもらいました。GameDay という名の通り、AWS に関するクイズだけにとどまらないゲーム要素もあり

    AWS GameDay を社内開催しました - クックパッド開発者ブログ
    hfmgarden
    hfmgarden 2022/09/05
  • Ruby 3.0.0 リリース

    Posted by naruse on 25 Dec 2020 Ruby 3.0系初のリリースである、Ruby 3.0.0 が公開されました。 これまで、Ruby3に向けてパフォーマンスの改善、並行処理、静的解析という3つの目標を掲げて、活発に開発が行われてきました。特にパフォーマンスの改善については、Ruby 3x3 として「Ruby3はRuby2の3倍速くする」ことを目指してきました。 Ruby 3.0では開発の指標の一つとしてきたOptcarrotベンチマークで3倍を達成するとともに、以下のような取り組みが行われています。 benchmark-driver.github.io/hardware.html に書かれている環境で計測されました。 8c510e4095 が Ruby 3.0 として使われています。環境やベンチマークによっては3倍にならないかもしれません。 Ruby 3 では

    hfmgarden
    hfmgarden 2020/12/26
  • Rubyと型についてのポエム - まめめも

    zenn.dev matz はじめコミッターの型に対する姿勢にも疑問を持っています。 というご意見が自分に刺さった気がしたので、他の話題はともかくこの点に関してだけ、ポエムを書きます。 「Rubyに型が欲しい」というのは、「もっと速い馬が欲しい」だと思っています。意味を知らない人は ヘンリー・フォード もっと速い馬が欲しい で検索してください。 これは批判でも皮肉でもありません。みんなが馬の乗り方を知っている世界では、誰も乗り方を知らない自動車より、速い馬のほうが確実で合理的です。まして、自動車が当に実現できるかどうかわからない段階では。なので、他言語で型注釈を書くことによるプログラミング体験が良いと思った人が、それをRubyでも享受したいと思うのは自然だと思います。実際、Steep や Sorbet は Ruby でそういうプログラミング体験を提供することを目指していて、すでにある程度

    Rubyと型についてのポエム - まめめも
    hfmgarden
    hfmgarden 2020/12/14
  • 富士フイルムのフィルムシミュレーションはどのようにつくられているのか(前編) 独自の設計思想の深層に迫る

    富士フイルムのフィルムシミュレーションはどのようにつくられているのか(前編) 独自の設計思想の深層に迫る
    hfmgarden
    hfmgarden 2020/12/10
  • Command Line Interface Guidelines

    Contents Command Line Interface Guidelines An open-source guide to help you write better command-line programs, taking traditional UNIX principles and updating them for the modern day. Authors Aanand Prasad Engineer at Squarespace, co-creator of Docker Compose. @aanandprasad Ben Firshman Co-creator Replicate, co-creator of Docker Compose. @bfirsh Carl Tashian Offroad Engineer at Smallstep, first e

    Command Line Interface Guidelines
    hfmgarden
    hfmgarden 2020/12/05
  • レシピサービスのフロントエンドを Next.js と GraphQL のシステムに置き換えている話 - クックパッド開発者ブログ

    技術部の外村(@hokaccha)です。今回はクックパッドのウェブサイトのフロントエンドNext.js などを使って作り直している話を書きます。 この記事で紹介する新システムは、スマートフォン向けのレシピページで確認することができます。もし興味があるかたはレシピページをスマートフォンのユーザーエージェントで開いて DevTools などで確認してみてください。 Next.jsGraphQL で動いているのがわかると思います。 ご存じの方も多いかもしれませんが、クックパッドのウェブサイトはモノリシックな Rails で作られていて、10年以上 Rails で開発を続けてきました。10 年以上同じシステムで開発を重ねれば当然レガシーな部分が大量に生まれてきますが、特にフロントエンドはその影響が顕著でした。 どこから使われているかわからない CSS が大量にある、JS のコードは昔なが

    レシピサービスのフロントエンドを Next.js と GraphQL のシステムに置き換えている話 - クックパッド開発者ブログ
    hfmgarden
    hfmgarden 2020/12/01
  • 検索インフラを安全に切り替えた話 - クックパッド開発者ブログ

    こんにちはこんにちは。技術クックパッドサービス基盤グループの id:riseshia です。 記事では直前の記事で提案された新しい検索システム(以下、 solr-hako と呼びます)を利用し、レシピサービスの検索インフラの切り替えた話をします。 solr-hako の設計を直接参照する内容はありませんが、それを前提においた移行作業ですのでそちらの記事を先に読むことをおすすめします。 インフラ構成の変化 まずインフラ構成の変化ををみておきましょう。 検索インフラ(変更前) 今まではこのようなインフラ構成でした。特徴としては、 search-cache というキャッシュサーバ(Varnish)が手前にあることくらいでしょうか。今回、 solr-hako を利用することで以下のような感じになりました。 検索インフラ(変更後) しれっとキャッシュレイヤーである Varnish がなくなったこ

    検索インフラを安全に切り替えた話 - クックパッド開発者ブログ
    hfmgarden
    hfmgarden 2020/11/25
  • 人気順検索のSolrはスケールのためにディスクを捨てた - クックパッド開発者ブログ

    技術クックパッドサービス基盤グループの id:koba789 です。 昨年まではデータ基盤グループというところで 最新のログもすぐクエリできる速くて容量無限の最強ログ基盤 を作ったりしていました。 今年はちょっとチームを移動しまして、検索システムをいじっていました。今回はそのお話です。 なお、クックパッドには様々な検索システムがありますが、この記事では説明を簡単にするためにレシピの検索のみに焦点をあてています。 クックパッドの検索システムにあった課題 クックパッドにはレシピを検索できる機能があります。 プレミアム会員限定の人気順検索もこの機能の一部です。 しかし、この重要な機能を支える検索システムにはいくつもの課題がありました。 Solr が古すぎる クックパッドでは、レシピ検索を含む多くの検索機能にSolrを用いています。 今年の始めに私がこの課題に取り組み始めた時点では、その Sol

    人気順検索のSolrはスケールのためにディスクを捨てた - クックパッド開発者ブログ
    hfmgarden
    hfmgarden 2020/11/25
  • Rustで古典的なDisk-Oriented DBMSを実装した話 - Write and Run

    KOBA789 です。みなさん DBMS は好きですか。私は好きです。 最近、自作 DBMS をずっと作っていて、ようやく最低限の機能ができたので公開をしました。 (とはいえコードを書いていたのは正味2日ほど。設計と勉強に2週間かかった) github.com この記事ではこれを作った目的と、そのちょっとした詳細についてご紹介します。 目的 Disk-Oriented DBMS の学習に適している Rust で書かれた実装が欲しかった、というのが理由です。 DBMS の勉強に適している実装というのは意外と多くありません。 MySQL や PostgreSQL といった有名な実装は実用的である一方でコード量は非常に多く、また細かな最適化によって教科書的なアルゴリズムと実際のコードの差が大きくなっているため、初学者にとっては構造を把握しづらくなっています。 教科書的な実装の Disk-Orie

    Rustで古典的なDisk-Oriented DBMSを実装した話 - Write and Run
    hfmgarden
    hfmgarden 2020/11/17
  • クエリログを使ったAurora MySQLの負荷テスト - クックパッド開発者ブログ

    最近はZX-25Rが気になっている菅原です。4気筒250ccといえば、以前バリオス2に乗っていたんですが、あれもよく回るよいバイクでした。足つきの良さが懐かしいです。 この記事では、クエリログを使ったAurora MySQL負荷テストの話を書きます。 MySQL負荷テスト サービスに使われているデータベースは、Webサーバと比べて自動的なスケールアップ・スケールアウトが簡単ではないためキャパシティプランニングは非常に重要です。サービスへのアクセス増による負荷増大の結果、急激に性能が低下するためなるべく事前にキャパシティを把握しておきたいところです。 クックパッドではサービスのデータベースとして主にAurora MySQLを利用しているのですが、キャパシティを把握するための負荷テストには以前から苦労してきました。 1. シナリオを書くのが大変 サービスで使われているデータベースの負荷テス

    クエリログを使ったAurora MySQLの負荷テスト - クックパッド開発者ブログ
    hfmgarden
    hfmgarden 2020/10/13
  • Rails アプリでオンラインでカラムの削除やリネームを行うには - eagletmt's blog

    前提知識 Rails アプリにおいて、テーブルの追加やカラムの追加は簡単なものの、カラムの削除やリネームは慎重に行う必要がある。たとえアプリからそのカラムを参照してないとしても、いきなりカラムを削除するとエラーになる可能性が大いにある。 というのも Rails にはスキーマキャッシュというものがあり、テーブルのカラム情報をモデルがキャッシュしているからだ。このキャッシュはたとえばいわゆる N+1 クエリ問題を避けるために includes (eager_load) するときに参照される。 SELECT 句で t0_r0 のような機械的に別名が振られるようなクエリを見たことがある Rails エンジニアは多いと思う。 機械的に全カラムを取得するためにスキーマキャッシュを利用しているため、このようなクエリが実行されてる中でカラムを削除したりリネームしたりすると、スキーマキャッシュをもとに並べら

    Rails アプリでオンラインでカラムの削除やリネームを行うには - eagletmt's blog
    hfmgarden
    hfmgarden 2020/08/28
  • LGエレクトロニクス、2019、2020年のテレビ製品が「Apple TV」アプリに対応Apple TV+限定のApple Original作品の視聴が可能に、ホームランチャーからも簡単アクセス

    hfmgarden
    hfmgarden 2020/08/12
    しれっと使えるようになってた
  • カロリーメイトリキッドのQuineを書きました - まめめも

    縁あって、カロリーメイトリキッドのプロモーション用にちょっとした Ruby プログラムを書かせてもらいました。 www.otsuka.co.jp ↑のリンクを開いて、cd .Quine したところにある CML_quine.rb がそれです。 cat CML_quine.rb とすると中身が見えます。ruby CML_quine.rb すると動きます。 CalorieMate-Liquid-Quine 実行してみましたか?サイト上で気楽に実行できるので、ぜひ試してみてください。 これがどういうプログラムなのか、簡単に解説しておきます *1 。 ローカルでの遊び方 サイト上で ruby CML_quine.rb をするだけでも楽しめますが、自分のパソコンに保存するとより楽しめます。 まず、cat CML_quine.rb した中身をまるごとコピーしてください。 n=2;で始まる行の頭から、'

    カロリーメイトリキッドのQuineを書きました - まめめも
    hfmgarden
    hfmgarden 2020/08/11
  • オリオンビール社長が語る、ストロング缶をやめた理由「黙っていられなかった」(bizSPA!フレッシュ) - Yahoo!ニュース

    ビールや発泡酒よりも安いにもかかわらず、アルコール度数は9~12%とその2倍近くあり、しかも飲みやすい。安くて酔えることから人気になったストロング系チューハイ。一方では、依存症の専門医から、アルコールの過剰摂取により健康問題へつながる危険性を指摘する声もあがっています。 そんななか、オリオンビールは4月22日、同社が発売するストロング系チューハイ「WATTA STRONG」の業界で初となる販売終了を発表、話題を集めています。WATTA STRONGは2019年5月に発売を開始したオリオンビールの缶チューハイWATTAシリーズのラインナップのひとつで、シリーズ販売額の約4割をしめる人気商品。 オリオンビールはストロング系チューハイの販売終了に踏み切った、その背景には何があるのか。オリオンビール株式会社の早瀬京鋳代表取締役(51歳)に電話で話を聞きました。 なぜストロングを販売終了できたのか―

    オリオンビール社長が語る、ストロング缶をやめた理由「黙っていられなかった」(bizSPA!フレッシュ) - Yahoo!ニュース
    hfmgarden
    hfmgarden 2020/06/19
  • 一般社団法人RTA in Japanを設立しました

    一般社団法人RTA in Japanを設立したことを報告いたします。 一般社団法人RTA in Japanは非営利性が徹底された法人です。 今後税務署や税理士とも相談してまいりますが、海外RTAイベントのようにチャリティイベントとして活動していくことを目的とします。 設立に至った背景 設立に至った理由は大きく分けてふたつです。 まず一点目は、個人でイベントを主催していくには金銭面の負担が大きくなりすぎてきたからです。 Webサイト内にも掲載していた通りRTA in Japanは今まで個人主催で行ってきました。配信のための機材の購入、会場費の支払い、その他の諸経費もありますが、それらの支払いはすべて主催ひとりで行ってきました。 RTA in Japanの収益はTwitch以外は存在しないため、イベントを行っていない月は収益があまりありません。 その反面、会場費の支払いや機材の購入はイベント

    一般社団法人RTA in Japanを設立しました
    hfmgarden
    hfmgarden 2020/06/16
  • KPI 設定の難しさについての思索とそれに付随した細かな考察 - クックパッド開発者ブログ

    こんにちは、事業開発部でプロジェクトマネージャー兼エンジニアをやっている新井(@SpicyCoffee)です。10 万円の申請書を書く前に 20 万円のパソコンを買いました。 クックパッドでは、毎日の料理を楽しみにするべく日々サービス開発がおこなわれています。稿では、サービス開発の中でも重要かつ難解な「KPI の設定」について、私がプロジェクトマネージャーとして普段考えていることや注意している点を紹介します。 KPI を決めるのは難しい サービス開発において KPI を設定し、それを改善するような施策や検証を繰り返していくことは基中の基です。しかしながら、現実には「KPI を設定する」という行為自体の難易度が非常に高く、日夜頭を悩ませている開発者のみなさんも多いのではないでしょうか。 以下では、その要因の一つである「KPI は複数の要件を満たす必要がある」ことについて考えます。 満た

    KPI 設定の難しさについての思索とそれに付随した細かな考察 - クックパッド開発者ブログ
    hfmgarden
    hfmgarden 2020/06/15
  • 純ジャパ文系エンジニアが語る海外で1XXX万円稼ぐ英語術

    2020年6月1日追記:私はいわゆる「純ジャパ」の「文系エンジニア」だが、どちらの言葉もあまり好きではない。タイトルはこれらの言葉の普及を皮肉ったものだ。 エンジニアを狙った悪質な情報商材が増えているようだ。皆様にも用心していただきたい。 はじめに日人は英語ができないとよく言われるが、当だろうか。ヨーロッパで数年勤めた今、残念ながらこれは事実として認めざるを得ない。度々挙がる「TOEIC900点論争」などを見ても明らかなように、海外で要求される語学力は国内での一般的な理解と乖離している。経済的競争力があった親世代の駐在員とは違い、我々の多くは現地の従業員と対等な立場で仕事をすることになる。 高い人事評価を得るには、仕事の対象を個人<チーム<チーム横断<組織全体<業界全体というように拡大していく必要があり、これには高度な言語能力が不可欠である。20代に技術海外を渡り歩いたが、気づけ

    hfmgarden
    hfmgarden 2020/06/05