並び順

ブックマーク数

期間指定

  • から
  • まで

161 - 200 件 / 252件

新着順 人気順

refの検索結果161 - 200 件 / 252件

  • CPUの珍命令 - Qiita

    EDIT: はてなブックマークのエントリ だと ABCD (BCD加算) や DJNZ (ループ命令) が人気なようだ(Wikipediaしばりなもんで...) 。6502によくある JSR / RET が対応しないコーディングや、Z80で PUSH を目的外利用するような例は入れても良かったのかも。 DOOMの例を追加。 Wikipediaに個別ページができちゃうくらい有名な命令のメモ。 きっかけ このソースコードは現在の倫理上一般的でない表現が使われている箇所については当時の内容を尊重して掲載しています — ほうめい マイコンで遊んでばっかりで (@houmei) July 14, 2020 を受けて、 6809の命令のことですね。わかります >RT — Miura Hideki (@miura1729) July 14, 2020 1つのCPU命令が独立したWikipediaのページ

      CPUの珍命令 - Qiita
    • JSON Schema をクックパッドマートの商品登録画面に導入した話 - クックパッド開発者ブログ

      主にバックエンドのエンジニアとしてクックパッドマートの開発に携わっている塩出( @solt9029 )です。 美味しい食材をユーザにお届けするサービスであるクックパッドマートでは、日々街の販売店や地域の生産者が商品の登録を行っています。 商品を登録する際、販売者は消費期限をはじめとする様々な品質保証の情報を正確に入力する必要があります。 しかし、商品の種類や状態に応じて記載するべき品質保証の情報は異なるため、全項目が羅列されるフォームでは正確な入力が困難であり、販売者および商品の審査を行う社内の運用メンバに対して大きな負担をかけていました。 そこで、 JSON Schema を利用して複雑なフォームの出し分けを自動で制御し、またバックエンド側でのバリデーションも行うことが出来る仕組みを導入しました。 その結果、商品の種類や状態を選択するだけで、適切な品質保証の情報が自動的に入力され、必要な

        JSON Schema をクックパッドマートの商品登録画面に導入した話 - クックパッド開発者ブログ
      • GPT-3.5-turboの新機能を使ってCVPRの論文を良い感じに検索・推薦・要約するシステム

        はじめに 5月からTuringに中途入社した棚橋です。リクルートで広告配信システムの開発や量子アニーリングに関する研究開発に関わっていました。現在、Turingのリサーチチームで完全自動運転システムの研究開発に取り組んでいます。 3行でまとめ 今月開催されるCVPR2023では約2400本もの論文が発表されるため、見るべき論文を事前に検索しておきたい。 社内で行われた大規模言語モデル(LLM)ハッカソンをきっかけに、LLMのEmbeddingを用いて論文の「検索・推薦・要約」システムを作成し公開した。 検索クエリに文章を使った曖昧な検索が行えたり、類似論文の推薦ができる。6/13にアップデートされたGPT3.5の新機能であるファンクション機能を使うことで、複数観点に分けて研究内容の要約を出力させた。 ↓ 今回作成した、LLMを使ったCVPR論文検索システム 事の発端 Turingは、ハンド

          GPT-3.5-turboの新機能を使ってCVPRの論文を良い感じに検索・推薦・要約するシステム
        • はてなブログをECSに移行してリリース頻度も改善した話 - Hatena Developer Blog

          この記事ははてなエンジニア Advent Calendar 2022の26日目のエントリです。 こんにちは id:cohalz です。はてなブログでは2022年7月にインフラをAmazon EC2からAWS ECS(AWS Fargate)に移行するプロジェクトが完了しました。 プロジェクトは2021年9月から始まったので約10ヶ月間という大きなプロジェクトでした。 プロジェクト完了までに行ってきたことのうち、特に面白かったところなどをこの記事で実施した順に振り返ってみます。 はてなブログのインフラのこれまで アプリケーションを動かせるようにする ALBを追加する 検証環境を用意だけしておく プロキシの設定埋め込み 証明書の配信 アクセスログを配送できるようにする アクセスログの形式を新しくする EC2でもFirehoseを経由するように タイムゾーンをUTCに統一 FirehoseのLa

            はてなブログをECSに移行してリリース頻度も改善した話 - Hatena Developer Blog
          • Reactでウェブフォームを作る2021

            Webのフォームは、いつでもベストプラクティスを悩むものの一つです。React を使うとして完全に自作でやるのか?それともフォームライブラリを使うか?フォームライブラリならどれを使うか? 今の時代 Formik を選ぶ理由はありませんが、React Hook Form と React Final Form のどちらを使うかはとても悩ましいです。 React Hook Form は利用経験者・採用実績が多い、速度が速いなど様々な利点はありますが、React 哲学に反する作りなどクセの強さが難点です。あと良くも悪くも利用シーンが豊富でドキュメントも豊富で迷子になりがちです。 React Final Form は Final Form の React wrapper です。個人的にはこちら React 的使いやすさに反すると感じてること、React Final Form として見たときにドキュメ

              Reactでウェブフォームを作る2021
            • エイプリルフールに便乗しているサイトまとめ2024年版

              By ほしのるる 毎年おなじみのエイプリルフールが今年も始まりました~!どれが本当でどれがウソなのか、もしかしたらネタのふりをしているだけでマジなのではないか?というようにして現実と虚構が溶け合っていくカオスな一日のはじまりはじまり~。 ◆エイプリルフールのネタのタレコミのやり方 この記事中に未掲載のネタで「エイプリルフールやってる!」というのを発見したときや「うちもエイプリルフールをやってます!」という自薦の連絡はネタのタレコミ用メールフォームから送信してもらえればOKです! ・掲載されやすくなる押さえるべきポイント GIGAZINE編集部員がサイトを見に行っても「どれがエイプリルフールのネタなのだ……?」ということで瞬時に判断できない&ネタの意味がわからず記事化をあきらめてしまうしかない……となったり、「どこかがいつもと違うらしいが元のサイトの状態を知らないので、どこがどう変化したかま

                エイプリルフールに便乗しているサイトまとめ2024年版
              • MySQLとOracleの実行計画を比較してみた - ASMのきもち

                まいえすきゅーえりたい ぽすぐれない おらくるってる(狂ってる)tomoです。 今日はいつものMySQLリファレンスを読むではなく、夏休みの宿題にしていたこれをやってみます。 MySQLとOracleDBの実行計画を比較してみた さて同じようなテーブルで同じデータを載せて。 実行計画を取ってみた時、どのくらい情報量が違うのか簡単に違いを見てみましょう。 前提として、以下をご認識ください。 一方はOSSのDBエンジン、もう一方はガチガチ商用DBエンジンです。情報量が違うのは当たり前であって、良し悪しを比較したいのではありません。そして製品比較をしたいのではありません。いつも商用DBメインで使っているエンジニアが、OSSのDBにこうゆう情報も出してほしいな!というのをお願いしたいと思っていて、それを考える元ネタメモだと思ってください。 OSSでこれだけの情報出せるMySQLや、今回紹介しません

                  MySQLとOracleの実行計画を比較してみた - ASMのきもち
                • OpenAPI Generator と TypeScript で型安全にフロントエンド開発をしている話 - SmartHR Tech Blog

                  こんにちは、SmartHR でフロントエンド開発を担当している @Tokky0425 です。 この記事では、私のプロダクトでの OpenAPI Generator を使ったフロントエンド開発の取り組みを紹介していきます。 目次 OpenAPI とは 「ラクラク分析レポート」の DX 上の課題 OpenAPI Generator とは 実際に generate してみる 生成ファイルを使ってみる 型情報を出力してみる 組み込み・運用の工夫 chokidar で監視する lint-staged に組み込む メリット・デメリット メリット デメリット まとめ OpenAPI とは OpenAPI とは、「REST API のドキュメントの記述形式を定めた仕様」のことを指しています。 簡単な例ですが、下記のような YAML ファイルがあるとします。 schema.yml paths: "/some

                    OpenAPI Generator と TypeScript で型安全にフロントエンド開発をしている話 - SmartHR Tech Blog
                  • React プロジェクトのディレクトリ構成 - fsubal

                    #React #フロントエンド #設計 #React プロジェクトのディレクトリ設計をもう5〜6年同じようなディレクトリ構造でやっている 1個のプロジェクトではなく複数のプロジェクトで全部同じような感じ それであまり困ったことがない のでどんな感じにしているかをメモしていく だいたい以下の構造で作る code:plaintext /src /api /domain /components /pages /utils (任意) index.tsx (任意) ルーターやフレームワークは(だいたい)問わない #Next.js だろうと React Router だろうと React Location だろうと関係ない #Redux を使ってようと #react-query や SWR を使ってようと関係ない 裏が Firestore でも #REST API でもやはり関係がない ……という程度

                      React プロジェクトのディレクトリ構成 - fsubal
                    • テクノロジーマップ、技術カタログの在り方について - テクノロジーベースの規制改革推進委員会(第1回)

                      2022年10月3日(月) 登 大 遊 * Daiyuu Nobori, Ph.D. テクノロジーベースの規制改革推進委員会(第1回) 提出資料 テクノロジーマップ、技術カタログ の在り方について * 所属: 独立行政法人 情報処理推進機構 (IPA) 等 技術情報を日本組織に向けて発信し、組織内で技術が実際に仕事に使われるまでには 1 登 大遊 提出資料 1. たとえ良い技術であっても、外部から組織に技術情報を注入し、業務利用を促すことは、とても難 しい。なぜならば、組織には、従前の動きをひたすら繰り返す性質があり、変化を避けたがり、堅い外 殻により、外からの異物を排除するためである (これはもちろん、セキュリティ上必要な防衛機構である)。そこで、 良い技術の情報を単純に発信しても、跳ね返される。 外 内 ↑強固なファイアウォール (FW) 組織 従来手法 従来手法 従来手法 従来手法

                      • 青木健『ペルシア帝国』(講談社現代新書 2020年)の諸問題|アザラシ

                        「ひどいよドクロちゃん。何がひどいって全部ひどい」 (OVA「撲殺天使ドクロちゃん」第2期4話より) この記事ですが、タイトルに掲げました通り、青木健『ペルシア帝国』(講談社現代新書 2020年)を読んでの感想や批評、および古代ギリシア史を学んだ人間からのツッコミです。 『ペルシア帝国』がお手元にあって、なおかつどんな問題点があるかを把握したいという人向きの記事ですので、「面白ければヨシ!」という方にはオススメしません。 また、私の専門分野の都合上、本書全体の4分の1程度、アカイメネス朝に関わる部分のみを批判の対象としています。これ以外の時代・地域の問題点を把握したい方は以下の記事やレヴューが参考になります。 ・春田晴郎先生の連続ツイート https://twitter.com/HarutaSeiro/status/1307841405193080832 ・「青木健著『ペルシア帝国』で確認

                          青木健『ペルシア帝国』(講談社現代新書 2020年)の諸問題|アザラシ
                        • Prisma ORMを2年運用して培ったノウハウを共有する

                          TSKaigi 2024 ref: https://tskaigi.org/talks/tockn

                            Prisma ORMを2年運用して培ったノウハウを共有する
                          • 強化学習に出てくるベルマン方程式を理解しよう - HELLO CYBERNETICS

                            はじめに ベルマン方程式の概要 最適制御と評価関数 最適制御 評価関数 価値関数 ベルマンの最適性原理 ベルマン方程式 価値関数の離散化 状態の時間発展再訪 ベルマン方程式 まとめ 最後に はじめに 強化学習の基礎に置かれている「ベルマン方程式」について、言葉は知っているが実はちゃんと理解していないという方は意外と多いのではないかと思われます。これを知っていようが知っていまいが、正直世の中の便利なフレームワークを活用すれば強化学習を実行することは可能であるためだと推測されます。 しかし、ある種の出発点になっているはずの基礎方程式を無視して、ガチャガチャ色々試してみても、なんだかフワついたままでモヤモヤしてしまうのではないでしょうか。少なくとも自分はそうです。 なので今回はベルマン方程式を基本から丁寧に解説していきたいと思います。 ベルマン方程式の概要 細かい話をする前に、ベルマン方程式がど

                              強化学習に出てくるベルマン方程式を理解しよう - HELLO CYBERNETICS
                            • Amazon ECSで動かすRailsアプリのDockerfileとGitHub Actionsのビルド設定 - メドピア開発者ブログ

                              CTO室SREの@sinsokuです。 Dockerイメージのビルドを高速化するため、試行錯誤して分かった知見などをまとめて紹介します。 AWSのインフラ構成 assetsもECSから配信し、CloudFrontで /assets と /packs をキャッシュする構成になっています。 Rails on ECS デプロイ時にassetsが404になる問題 以前の記事に詳細が書かれているため、ここでは問題の紹介だけしておきます。 Rails等のassetsファイルをハッシュ付きで生成し配信するWebアプリケーションの場合、ローリングアップデートを行うと、アップデート時に404エラーが確立で発生してしまいます。 引用: メドピアのECSデプロイ方法の変遷 Dockerfile 実際のDockerfileには業務上のコード、歴史的な残骸などが含まれていたので、綺麗なDockerfileを用意しま

                                Amazon ECSで動かすRailsアプリのDockerfileとGitHub Actionsのビルド設定 - メドピア開発者ブログ
                              • 子連れファミリーにおすすめのキャンプ場20選! プロが全国で旅した300カ所以上の中から厳選 #くるまも - くるまも|三井住友海上

                                ファミリーキャンプのためのキャンプ場選びは、テントなどの道具(ギア)がレンタルできるのか、子どもと一緒にどんな過ごし方ができるのかなど、気になるポイントがたくさんあります。 子連れでのキャンプは初心者という人のために、北海道、東北、関東、北陸、中部、関西、中国、四国、九州、沖縄にあるファミリーキャンプにおすすめの全国20ヵ所のキャンプ場をピックアップしました。山や川などの大自然、春夏秋冬の季節ごとのイベントや個性的なコテージなど、魅力いっぱいの施設ばかり。 持ち物を車に積むコツや、快適に過ごすポイントもあわせてご紹介します。 こんにちは、プロキャンパーのさくぽんといいます。私は大学卒業後、生活用品メーカー勤務を経てフリーランスになり、ライターやコーディネーターなど、キャンプにまつわるさまざまな活動を始めました。 キャンプ場をめぐりながら日本一周して47都道府県を制覇した経験があり、これまで

                                  子連れファミリーにおすすめのキャンプ場20選! プロが全国で旅した300カ所以上の中から厳選 #くるまも - くるまも|三井住友海上
                                • swagger-merger を用いた大規模API開発における Swagger 運用

                                  はじめにこんにちは、Finatext で保険事業のプロダクト開発をしている @toshipon です。今回は以前の Fin-JAWS のイベントで少し紹介させていただいた、我々の現場で取り組んでいる、大規模API開発における Swagger を用いたAPI仕様のドキュメント運用方法について紹介いたします。 概要我々の現場では、API ベースのWeb Application を開発する際に、Swagger を用いて API 設計をしたり、BFFサーバー開発者やフロントエンド開発者とのコミュニケーション手段として活用しています。 ただし、Web Application の規模が大きくなってくると、Swagger の 定義ファイルは肥大化してしまい、メンテナンスが困難になってきます。 今回は、Web Application の規模が大きくなっても耐えうる Swagger 定義ファイルの運用方法を

                                    swagger-merger を用いた大規模API開発における Swagger 運用
                                  • Rustで書いたWebAssemblyインタプリタ上でGoで書いたゲームボーイエミュレータを動かした - undefined

                                    概要 最近はWebAssemblyに興味があり、勉強していたんだけど仕様を読み始めても頭に入らないのでインタプリタを作ってみることにした。よくわからないものは作ってみるのが一番よい。 github.com まだ残された課題は多いのだけれども、一つ目標にしていた「Goで書いたゲームボーイエミュレータを動かす」を達成できたのでここに書いておく。 うおーついにRustで書いた自作wasm interpreter上でgoで書いた自作gameboy emulatorが動いたー!けど1FPSくらいしかでない... pic.twitter.com/I5B2XL5E0W— bokuweb (@bokuweb17) 2020年2月24日 こツイートに貼られているのは残念ながら、静止画ではなく、動画でありパフォーマンスが悲しいことになっていることを示している。あまりに遅くてプレイ画面まで到達できない。今後これ

                                      Rustで書いたWebAssemblyインタプリタ上でGoで書いたゲームボーイエミュレータを動かした - undefined
                                    • 自作して学ぶKubernetes Scheduler | メルカリエンジニアリング

                                      Mercari advent calender の21日目を担当します@sanposhihoです。現在大学の学部4回生で、メルカリでは内定者インターンとして、メルカリのホーム画面などのバックエンドを担当するチームに所属しています。 また、最近は個人的にKubernetesやその周辺のOSSにコントリビュートをしていて、特にKubernetesのコントロールプレーンのコンポーネントのうちの一つであるkube-scheduler周りを触ってることが多いです。 後で詳しく説明しますが、kube-schedulerはPodをどのNodeで実行するかを決定しているコンポーネントです。NodeAffinityや比較的新しいものだとPod Topology Spread Constraintsなど、Podのスケジュールの制約を指定できる機能も基本的にこのkube-schedulerに実装されています。

                                        自作して学ぶKubernetes Scheduler | メルカリエンジニアリング
                                      • フェミニストだいっきらい!なみなさまへ|女三宮|note

                                        宇崎ちゃんの献血ポスター以来、インターネット上でフェミニト批判が今まで以上に溢れかえっている。 先ほどツイッターで「フェミニスト」と検索すると、「フェミニスト 死ね」と検索予測に入ってきたり、巨乳のアニメキャラ、漫画キャラをフェミニストが批判していることへの罵詈雑言、「フェミニストは結局女性の地位向上とかじゃなくて自分たちが気に入らないものをフェミニズムを掲げて批判したいだけ」、#Kutoo 石川優実さんに対しての「自分の利益のためにフェミニズムを利用しているだけ」……etc. ああ、ここまで書いてもういやになってきた…。 私の大学の恩師の研究室に『右翼辞典』という分厚い本があった。先生は授業で代議制民主主義を批判し、政権を批判していた左翼でアナキストだった。それをよく知っていた私はそれが目に入って、「右翼辞典って何ですか笑」と言ったら、 「右翼…正当な右翼は面白いんですよ。」 と言ってい

                                          フェミニストだいっきらい!なみなさまへ|女三宮|note
                                        • 同じソースツリーでテストが通っていたらテストをスキップする | おそらくはそれさえも平凡な日々

                                          tl;dr git rev-parse HEAD^{tree} でツリーオブジェクトのハッシュ値が取れるので、ブランチが異なる場合でも同じソースツリーであるかどうかを判定できます。 これを利用して、すでにテストを通ったtreeのハッシュ値をどこかに記録しておいて、同一のソースツリーに対するテストをスキップできます。 本題 よく使われている、develop/mainブランチ運用をしている場合に、ちょっとした修正を本番に入れたい場合には以下のようなフローを踏むことになるでしょう。 featureブランチをdevelopブランチの先頭から切って修正を作ってテストが通るのを待つ developブランチにfeatureブランチにマージしてテストが通るのを待つ mainブランチにdevelopブランチをマージしてテストが通ったらdeployする さて、この時、他の作業が混ざらない限りにおいては1,2,

                                            同じソースツリーでテストが通っていたらテストをスキップする | おそらくはそれさえも平凡な日々
                                          • リリース用のpull requestを自動作成し、マージされたら自動でタグを打つtagpr | おそらくはそれさえも平凡な日々

                                            常々GitHubにtag requestが欲しいと言ってきましたが、それを実現するツールを作りました。OSSなど、バージョニングとリリースが伴うソフトウェア開発のリリースエンジニアリングをとにかく楽にしたいという動機です。既に自分が管理している幾つかのOSSでは導入して便利に利用しています。 https://github.com/Songmu/tagpr アイデア 基本の発想は以下のようにシンプルです。 リリース用のpull requestがGitHub Actionsで自動で作られる バージョン番号が書かれたファイルやCHANGELOG.mdを自動更新 そのpull requestをマージするとマージコミットに自動でバージョンtagが打たれる semver前提 リリース用のpull requestを自動で作りマージボタンを以てリリースと為す、というのは、みんな(僕が)大好き git-pr

                                              リリース用のpull requestを自動作成し、マージされたら自動でタグを打つtagpr | おそらくはそれさえも平凡な日々
                                            • MySQL で複合インデックスを作成する際には必ず Explain の key_len を確認すべきという話

                                              「Rails Developers Meetup 2018 で「MySQL/InnoDB の裏側」を発表しました」でちゃんと触れられてないので今更ながら key_len について補足します。発表で触れた内容については言及しないので、storage engine や B+ tree といった用語がよくわからない方は発表内容を参照してください。 なお、MySQL のバージョンは 5.7.38 です。 mysql> SELECT @@version; +-----------+ | @@version | +-----------+ | 5.7.38 | +-----------+ 1 row in set (0.00 sec) 事前準備 sample-data-railsdm-2018 の orders テーブルを少しいじって、キャンセル時刻(canceled_at)、配送予定時刻(deliv

                                                MySQL で複合インデックスを作成する際には必ず Explain の key_len を確認すべきという話
                                              • 株式会社ドワンゴを退職します - kmizuの日記

                                                はじめに 当初、ScalaMatsuri 2019が終わった次の日の、6月30日に書く予定だったのですが、最終出社日も終わっていることだしよいかということで、エントリを書くことにします。 2019年6月30日をもって、5年と3か月勤めた株式会社ドワンゴを退職します。最終出社日は6月26日でした。 これまで2回転職してきましたが、ドワンゴに居た期間が最長です(なお、5年で最長でというのに違和感感じる人もいるかもですが、博士卒で就職したので、まあそんなもんかと思っています)。 何やってたの 1年目こそプロダクト開発に携わっていたものの、2年目以降は、 Scala研修テキストの執筆やメンテナンス 新入社員研修の中のScala研修講師 ドワンゴ社員として各種イベントやカンファレンスで発表 論文の査読や情報処理学会関連のイベント(主にPRO(プログラミング研究会))への参加 自分主催の勉強会(テーマ

                                                  株式会社ドワンゴを退職します - kmizuの日記
                                                • 今までの人生で脳汁がでるほど嵌ったコンテンツ125 +α本 - orangestarの雑記

                                                  最近、頭おかしくなることがない。 www.karzusp.net かーずさんが、いつの間にか製麺業を引退していた。いろいろ理由はあったのだろうけれども、大きなきっかけは『『ゼルダの伝説BoW』をプレイできました。これがもう、快楽物質ドバドバ出て昇天し』かけたかららしい。 脳汁どばどば。 そういえば、最近、そういう体験をしていない。『うえええぇええええっぇえっ!おもしっれええぇええ!脳汁でるぅううううう!じぬううぅううう!』してない。もう数年もしていない。歳をとると、感性も摩耗して、すげーすげーしづらくなる。少なくとも自分はそうで。だから、脳汁びゃーできる人が羨ましい、自分が悲しい。嫁はゴリゴリと脳汁出して、今は若俳にはまっているけれども。あれは別の生き物だから……。 最近、ミドルエイジを迎えた周りのブロガー諸子が人生を振り返っている。これからの人生と今までの人生。 自分は、振り返るにも色々

                                                    今までの人生で脳汁がでるほど嵌ったコンテンツ125 +α本 - orangestarの雑記
                                                  • 一年ぶりにドワンゴに再入社した - thiryのブログ

                                                    一年(厳密に言うと11ヶ月)ぶりにドワンゴに再入社しました。 なぜドワンゴを辞めたのか 新卒としてドワンゴに入社して3年目の夏、友人の務めているITベンチャーが異業種大手の会社に買収され、IT関連事業の新規創設を行うとの事で、そこへの参画を依頼されました。この時ドワンゴで比較的大きな仕事の区切りがついたところで、次の会社へ行くには良いタイミングと考え退職を決めました。 なぜ転職先を辞めたのか 多くは語りませんが、転職先企業の社風や、合理性よりも感情が優先される風潮に馴染めなかったことが主な理由です。 通常業務をこなしつつ業務の自動化や効率化を行っていたことがサボり扱いされる理不尽がまかり通るような会社が世の中にどれくらいあるのかは分かりませんが、少なくとも転職先の会社はそうでした。(一番悲しかったのは、僕を誘った友人からも同じ扱いを受けたことです。出世欲って怖いですね。) 転職して3ヶ月も

                                                      一年ぶりにドワンゴに再入社した - thiryのブログ
                                                    • useEffect完全ガイド

                                                      あなたは Hooks を使って複数のコンポーネントを書きました。ちょっとしたアプリも作ったことがあるでしょう。満足もしている。API にも慣れて、その過程でコツも掴んできました。しかも重複したロジックを転用できるよう Custom Hooks を作り、同僚に自慢して見たり。 でも useEffect を使う度、いまいちピンときません。class のライフサイクルとは似ているけど、何かが違う。そしていろんな疑問を抱き始めます。 🤔 componentDidMount を useEffect で再現する方法は? 🤔 useEffect 内で正確に非同期処理を行う方法とは? []ってなに? 🤔 関数をエフェクトの依存関係として記すべき? 🤔 非同期処理の無限ループがたまに起こるのはなぜ? 🤔 古い state か props がエフェクト内にたまに入るのはなぜ? 私も Hooks を使

                                                      • awslim - Goで実装された高速なAWS CLIの代替品を作った - 酒日記 はてな支店

                                                        最初に3行でまとめ AWS CLIは便利です。しかし起動が遅いので、Goで実装された高速な(ただし機能は少ない)代替品を作りました。awslim といいます リリースバイナリは無駄に大きいので、必要な機能だけを組み込んだビルドを簡単にできるようにしてあります。ビルドして使うのがお勧めです どうぞご利用下さい github.com 以下はこれに至るまでの経緯とか、実装や使い方の話とかです。長いです。 作成の経緯 AWSの各種サービスにアクセスするための AWS CLI は、スクリプトやコマンドラインから処理を自動化するために大変便利なツールです。AWSでサーバーサイドの開発、運用している人であれば、ほぼ全員がお世話になっているんじゃないかと思います。 しかし、AWS CLI (コマンド名aws) には「起動が重い」という問題があるなとずっと思っていました。具体的には、aws --versio

                                                          awslim - Goで実装された高速なAWS CLIの代替品を作った - 酒日記 はてな支店
                                                        • PIXIV TECH FES.のLPを支えるCSSアニメーションテクニック - pixiv inside

                                                          ※本記事に出てくるアニメーションは全てCSSで作られています はじめまして、新卒エンジニアの yui540(@yui540)です。普段は、pixivFANBOXというサービスのCSSエンジニアをしています。 今回は、私がコーディング&ページ演出のアニメーションを担当させていただいたPIXIV TECH FES. の LP(第一弾)の CSSアニメーションの実装方法を一部解説します。 第一弾 conference.pixiv.co.jp 第二弾 conference.pixiv.co.jp とその前に、「PIXIV TECH FES.って何?」という方もいると思うので、簡単にご説明します。 PIXIV TECH FES. は、私たちピクシブのエンジニアが普段からお世話になっている方や、 お話ししてみたい方をお招きして、サービス開発で得た技術的知見とピクシブの未来についてお話しするテックカンフ

                                                            PIXIV TECH FES.のLPを支えるCSSアニメーションテクニック - pixiv inside
                                                          • 混乱を引き起こしがちなGitの用語まとめ

                                                            分散型バージョン管理システムのGitは2005年の登場以降シェアを伸ばし続け、2022年の調査では約94%のユーザーに利用されるほど一般的なツールとなっています。Gitにはさまざまな機能が搭載されていますが、その中で特に混乱を引き起こしがちな用語について、Gitを15年近く使用してきたというジュリア・エヴァンスさんが解説しています。 Confusing git terminology https://jvns.ca/blog/2023/11/01/confusing-git-terminology/ ◆HEADと「heads」 HEADは現在チェックアウト中のブランチやコミットを指しており、「.git/HEAD」に保存されています。一方「.git/refs/heads」に保存されているのはブランチで、「heads」は「branches」と読み替えればOKとのこと。 ◆detached HE

                                                              混乱を引き起こしがちなGitの用語まとめ
                                                            • 試行錯誤を邪魔しない開発環境 - mizdra's blog

                                                              ある機能を実装する際、完成形のコードになるまでには、プログラムとして不正確な状態や、プロダクト品質ではない状態を経る 静的型検査や lint rule に違反したコードが途中に挟まる 型エラーや lint エラーは望ましくないので、できるだけ早くこうした情報を開発者に伝え、気付けるようにすると良い CI でこうしたエラーを検知して、Pull Request をマージする前に気づけるようにするとか エディタ上にエラーの情報を表示して、コーディング中に気づけるようにするとか エラーを積極的に通知してくれるのはありがたいけど、やりすぎには注意するべき なんとなくでも動いてくれたほうが嬉しい 例えば lint エラーがあった際に、watch モードで起動しているビルドやテストの実行を止めて、lint エラー見つけたよーと教えてくれる開発環境がたまにあるけど... 別にビルドやテストの実行は止める必

                                                                試行錯誤を邪魔しない開発環境 - mizdra's blog
                                                              • APIのコードを自動生成させたいだけならgRPCでなくてもよくない? - エムスリーテックブログ

                                                                こんにちは、エンジニアリンググループの福林 (@fukubaya) です。 先月から、今年の秋くらいにリリース予定の新サービスの設計、開発を始めました。 せっかく新しく始めるサービスなので、まだ経験したことがない言語やフレームワーク、技術を使わないと楽しくありません。 そこで、バックエンドにGoにして、フロントのAPIまで含めてgRPCの .proto ファイルで定義を一元化し、APIコードは protoc で生成させる計画を立てていたのですが、 フロントでgRPCとなると、 gRPC-web か grpc-gateway になるが、リリースまでに使える期間では認証も含めると検証が間に合わなさそう Goだけでなく、terraform(インフラ設計もやります) も Vue.jsも今回が初めて、というメンバーもおり、さらにRESTではなくgRPCも、となると未経験技術が多すぎてキャッチアップが

                                                                  APIのコードを自動生成させたいだけならgRPCでなくてもよくない? - エムスリーテックブログ
                                                                • 赤い羽根募金とColabo関連団体との間に強いつながりはあるのか?|ペーパーハウスくん|note

                                                                  SNSを中心に話題となっている暇空茜さんとColaboを含む若年女性支援関連4団体との争いについて色々情報が飛び交っています。そんな中、昨日赤い羽根運動を主催する中央共同募金会(以下、赤い羽根)から以下のようなリリースがでました 「中央共同募金会による一般社団法人Colabo等への助成について」 https://www.akaihane.or.jp/news/31075/ 内容は「過去にcolaboへ助成していました」というものなのですが違和感を覚えました。いくらcolaboが騒がれているとはいえ現時点でなんら罪が確定していない段階でプレスリリースは必要でしょうか。そこでその違和感を確かめるべく2016年~2022年までの公表されている中央共同募金会による助成、全1567件をリストアップしました。 (なお予め言っておきますが本noteは登場する各団体に対していかなる違法行為についてもそれを

                                                                    赤い羽根募金とColabo関連団体との間に強いつながりはあるのか?|ペーパーハウスくん|note
                                                                  • OpenAPI Generator で API Client と型を自動生成した話 - BASEプロダクトチームブログ

                                                                    フロントエンドエンジニアの @rry です。 自分は BASE の Sales Promotion というチームで主に新規機能開発を行っています。このチームでは主にオーナーさんの使う管理画面に新しく機能追加をしています。 そこで、管理画面で使っている API Client と型を、OpenAPI Generator を使って自動生成するようにしてみたのでそのお話を書きたいと思います。 そもそも OpenAPI とは? https://www.openapis.org/ OpenAPI とは、RESTful Web サービスを記述、生成、使用、および視覚化するための仕様です。 ※ 以前は OpenAPI ではなく仕様自体も Swagger と呼ばれていましたが、現在は仕様自体については OpneAPI と呼ばれており、Swagger というのは OpenAPI を使ったツール群のことをさすよ

                                                                      OpenAPI Generator で API Client と型を自動生成した話 - BASEプロダクトチームブログ
                                                                    • MySQLでNested Loopなクエリはインデックスをどう辿っているか - $shibayu36->blog;

                                                                      タイムライン的なものをSELECTだけで実装しようと思った時に、Nested LoopなクエリでUsing temporary; Using filesortが出るようなそこそこ遅いクエリになる。その時にMySQLがインデックスをどう辿っているかを知りたかったので調べてみた。MySQLバージョンは8.0.33。 あまり自信はないので、もし間違った話をしていたら教えて欲しい。 どのようなクエリを検証するか タイムラインの取得ができるような、ユーザー・フォロー関係・投稿の3つのテーブルを作る。スキーマは次の通り。 CREATE TABLE users ( id INTEGER PRIMARY KEY AUTO_INCREMENT, name VARCHAR(100) NOT NULL ); CREATE TABLE follows ( id INTEGER PRIMARY KEY AUTO_I

                                                                        MySQLでNested Loopなクエリはインデックスをどう辿っているか - $shibayu36->blog;
                                                                      • Rustを使ってスケーラブルなプログラムを書く方法 - かとじゅんの技術日誌

                                                                        この記事はRust Advent Calendar 2021の12/24日の記事です。 仕事ではScalaを使っていますが、趣味のプログラミングではRustで書いたものが増えました。Rustは楽しいですね。 今回は、Rustでオブジェクト指向プログラミングに関数型デザインを導入することで、スケーラブルなプログラムを書く方法(スケーラブル・プログラミング)について書きます。 「スケーラブル・プログラミング」といえばScalaです。Scalaの「スケーラブル」という言葉には「小さいプログラムも大規模なプログラムも同じ概念で記述できるべきである」という、柔軟性や拡張性を重視した設計の意図が込められています。それを実現するために必要なものは、オブジェクト指向と関数型を組み合わせたマルチパラダイムな設計です。 Scalaはマルチパラダイム言語の先駆者(今も先頭を走り続けています)ですが、他の言語にも

                                                                          Rustを使ってスケーラブルなプログラムを書く方法 - かとじゅんの技術日誌
                                                                        • エイプリルフールに便乗しているサイトまとめ2023年版

                                                                          By ほしのるる 毎年おなじみのエイプリルフールが今年も始まってしまいましたー!どれが本当でどれが実はウソなのか、どこからどこまでがネタなのか、いや、もしかしたらこれはネタのふりをしているだけでマジなのでは?というような感じで混沌としていくカオスな一日の始まりです~! ◆エイプリルフールのネタのタレコミのやり方 この記事中に未掲載のネタで「エイプリルフールやってる!」というのを発見したときや「うちもエイプリルフールをやってます!」という自薦の連絡はネタのタレコミ用メールフォームから送信してもらえればOKです!掲載されやすくなる押さえるべきポイントとして、GIGAZINE編集部員がサイトを見に行っても「どれがエイプリルフールのネタなのだ……?」ということで瞬時に判断できない&ネタの意味がわからず記事化をあきらめてしまうしかない……となったり、「どこかがいつもと違うらしいが元のサイトの状態を知

                                                                            エイプリルフールに便乗しているサイトまとめ2023年版
                                                                          • 個人的によく使うGitエイリアス、zshキーバインド - 本日も乙

                                                                            最近、リモートワークということもあり、ペアプロというかAWS、GCPなどの操作をする際に一緒に画面を見ながら作業する機会が多いです。若手の同僚がターミナルソフトを起動してコマンドを実行するのですが、傍から見ているとエイリアスなりキーバインドなりを使えば効率的に操作できるのにと思うことがあります。 最近はGUIで操作することが多いのでターミナルソフトでコマンド操作することがあまりないのかもしれませんが、私は少し前までは(クラウドしかできない)ITインフラエンジニアをやっており、プログラミングよりもコマンド操作するのが圧倒的に多かったため、ちょっとしたことならGUIよりもターミナルで操作することが多いです。Windowsを使っていますが WSL2 + Ubuntu 20.04 LTSで開発環境を整えているため、操作に不自由はほとんどしません。 この手のエイリアスやzshなどのオススメ設定はググ

                                                                              個人的によく使うGitエイリアス、zshキーバインド - 本日も乙
                                                                            • ISUCON11 予選問題実践攻略法 : ISUCON公式Blog

                                                                              DB は以下のコマンドで確認できる通り、MariaDB 10.3 でした。$ mysqld --version mysqld Ver 10.3.31-MariaDB-0ubuntu0.20.04.1 for debian-linux-gnu on x86_64 (Ubuntu 20.04) 当日マニュアルに記載の通り、各言語実装は systemd で管理されているため、systemd に関する知識があると良いと思います。特に、アプリケーションを編集しビルドした後、 systemctl restart isucondition.go.service を実行しないと編集が反映されないことに注意しましょう。 他にも例えば、isucondition がどのように環境変数を読み込んでいるかを調べるには以下のような手順で行えます。 当日マニュアルの参考実装の項目を読み、サービス名が isucondit

                                                                                ISUCON11 予選問題実践攻略法 : ISUCON公式Blog
                                                                              • React コンポーネントの「制御・非制御」を意識しない方法

                                                                                React でフォームを作るとき「制御・非制御」コンポーネントに関する知識は必須です。デザインシステムを作成するにあたり、どちらを採用するか検討されたこともあるかと思います。 「制御・非制御」コンポーネントの差分を一言でまとめると、次のとおりです。 制御コンポーネントはライブラリ(React)が「入力要素の状態」を管理 非制御コンポーネントは「入力要素の状態」を DOM 自身が保持 「制御・非制御」コンポーネントと Form ライブラリ React Hook Form は、非制御コンポーネントを使うことで、少ないコード量で高パフォーマンスの Form 実装が実現できる人気のライブラリです。「非制御コンポーネント」として作成された<Checkbox>コンポーネントの例を見てみましょう。次の方法で<input type="checkbox" name="test" />がレンダリングされ、Fo

                                                                                  React コンポーネントの「制御・非制御」を意識しない方法
                                                                                • Goでつまづいたところを仕様を見ながら理解してみる - ravineport blog

                                                                                  Go言語デビューしました!🎉 シンプルなのもあってすぐに馴染むことができています。Goよいですね! さてさて今回はGoを書いていて「これできるんだ」「これはコンパイルエラーなんだ」となったところをGoの仕様などを見ながら(できればそのwhyまで)理解したいと思います。 Go 1.18時点での記事です。 つまづき1:constをポインタとして扱えない 例えばこんなのがあったとして const Ten = 10 type User struct { age *int } 以下のコンパイルが通りません。 func main() { user := User{ &Ten, // コンパイル通らない🤔 } fmt.Println(user) } エラーメッセージを見てみると invalid operation: cannot take address of Ten (constant 10 of

                                                                                    Goでつまづいたところを仕様を見ながら理解してみる - ravineport blog