タグ

2022年8月13日のブックマーク (7件)

  • アジャイル開発とデータベース設計 - 変化に対応するシンプルな実装のために必要なこと - Agile Journey

    はじめまして。そーだい(@soudai1025)です。私は普段は技術コンサルティングや受託開発を請け負う合同会社HaveFunTechの代表として、また、予防治療の自社サービスを展開する株式会社リンケージのCTOという二足の草鞋を履き、日々、さまざまなWebサービスの開発に携わっています。 これまでの開発経験のなかで、データベース設計に関わるさまざまな問題に遭遇してきましたが、稿ではとくに、アジャイル開発時に発生しやすい問題とその対処についてお伝えしたいと思います。開発の現場で目にしやすい実装におけるアンチパターンを示しつつ、アジャイルという指針を維持しながら、対処となるデータベース設計についてご紹介します。 会員登録のアンチパターンと処方箋 イージーな実装とシンプルな実装 Userと言う名の罠 拡張と破綻 データベースは変化に弱い 仕様変更とテーブル変更 Addで変化に追従する 正規化

    アジャイル開発とデータベース設計 - 変化に対応するシンプルな実装のために必要なこと - Agile Journey
    kiririmode
    kiririmode 2022/08/13
    アジャイルを支えるデータモデリング。データのライフサイクルを見極め、小さな責務を果たすテーブルを追加していく。
  • 個人開発でクローズドなチャットを作るので電気通信事業に届出

    電気通信事業法 第九条の規定に違反して電気通信事業を営んだ者は、三年以下の懲役若しくは二百万円以下の罰金に処し、又はこれを併科する。 実はこの法律のことは知っていたので、特定の人だけが見られるチャットを作るのを今まで避けてきました。届出は面倒そうだと思っていましたが、実行してみると簡単だったので記事にまとめました。 総務省による解説 電気通信事業参入マニュアル[追補版] を基準に解説します。 他人の通信を媒介する 電気通信設備を用いて「他人の通信を媒介する」とは、他人の依頼を受けて、情報をその内容を変更することなく、伝送・交換し、隔地者間の通信を取次、又は仲介してそれを完成させることをいう 『他人の通信を媒介する』場合、クローズド・チャットと見なされ、電気通信事業の届出が必要となることがあります。なお『オープン・チャットは電子掲示板と考えらえるため届出は不要』らしいです。そういうものとして

    個人開発でクローズドなチャットを作るので電気通信事業に届出
    kiririmode
    kiririmode 2022/08/13
    クローズドチャットの場合は、電気通信事業法の定めるところの届出が必要になる
  • AWS Elemental MediaConvertを使った動画自動変換サービスを構築した備忘録 | エンジニアBLOG

    AWS Elemental MediaConvertを使った動画自動変換サービスを構築した備忘録 クラウド AWS こんにちは! 今回はスマートフォンで撮影された動画を自動変換してストリーミング再生させるサービスの構築方法と 必要な知識について、備忘録も兼ねて箇条書きにしていきたいと思っています。 (具体的にここをこう設定しよう!という内容ではありません) 今回の要件 iPhoneAndroidで撮影された動画を自動で変換し、 PCiPhoneAndroidでストリーミング再生ができるようにします。 必要なこと動画ファイルの形式について知る iPhoneで撮影した動画の拡張子は.MOV(video/quicktime) Androidで撮影した動画の拡張子は.mp4(video/mp4) ストリーミングする動画はHLS形式(HTTP Live Streaming) → MOVとMP4

    AWS Elemental MediaConvertを使った動画自動変換サービスを構築した備忘録 | エンジニアBLOG
    kiririmode
    kiririmode 2022/08/13
    動画をS3にアップロードしてlambdaを起動、lambdaからmediaconvertをキックしてHLSに変換しcloudfront でサーブ
  • HTTPライブストリーミングとは?| HLSストリーミング

    HTTPライブストリーミング(HLS)とは? HTTPライブストリーミング(HLS)は、最も広く使用されている動画ストリーミングプロトコルの1つです。HTTP「ライブ」ストリーミングと呼ばれているものの、オンデマンドストリーミングとライブストリーミングの両方に使用されます。HLSは、動画ファイルを小さいダウンロード可能なHTTPファイルに分割して、HTTPプロトコルを使用して配信します。クライアントデバイスは、これらのHTTPファイルを読み込んで動画として再生します。 HLSの長所の1つは、インターネットに接続されたすべてのデバイスがHTTPをサポートしているので、特殊なサーバーを使用する必要があるストリーミングプロトコルに比べて実装が簡単であることです。もう1つの長所は、HLSストリームが再生を中断することなくネットワークの状態に応じて動画品質を上げたり下げたりすることができることです。

    HTTPライブストリーミングとは?| HLSストリーミング
    kiririmode
    kiririmode 2022/08/13
    HLSの基本
  • 同じソースツリーでテストが通っていたらテストをスキップする | おそらくはそれさえも平凡な日々

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

    同じソースツリーでテストが通っていたらテストをスキップする | おそらくはそれさえも平凡な日々
    kiririmode
    kiririmode 2022/08/13
    テストpass時のリポジトリ全体のtree hashをS3に保存しておき、同一ハッシュの場合はテストをスキップする仕組み
  • git-pr-releaseとGitHub Actionsでワンクリックデプロイを実現する | おそらくはそれさえも平凡な日々

    突然ですが、git-pr-releaseのなんちゃってコラボレーターである私が僭越ながら、その王道の使い方を皆様に伝授していきます。何番煎じかの記事ではありますが、現代の、特にGitHub Actions出現以降の使い方をまとめたいというのが動機です。 https://github.com/x-motemen/git-pr-release https://rubygems.org/gems/git-pr-release git-pr-releaseはGitHubを業務開発で利用している場合に便利なツールで、デフォルトブランチにマージされたpull requestをリリース項目として一覧し、それをpull request化してくれるものです。これにより以下のことが実現できます。 リリース項目が一覧されることによるリリース内容の明確化 マージボタンによる明快なワンクリックデプロイの実現 pul

    git-pr-releaseとGitHub Actionsでワンクリックデプロイを実現する | おそらくはそれさえも平凡な日々
    kiririmode
    kiririmode 2022/08/13
    github actions を用いて、gitlab flowに近い形のブランチ戦略を前提に本番リリースを楽にできる
  • Amazon EventBridge now supports receiving events from GitHub, Stripe and Twilio using Webhooks

    Amazon EventBridge now supports integrations with GitHub, Stripe, and Twilio via webhooks using Quicks Starts. You can subscribe to events from these SaaS applications and receive them on an Amazon EventBridge event bus for further processing. With Quick Starts, you can use AWS CloudFormation templates to create HTTP endpoints for your event bus that are configured with security best practices for

    Amazon EventBridge now supports receiving events from GitHub, Stripe and Twilio using Webhooks
    kiririmode
    kiririmode 2022/08/13
    twilioやstripeからのwebhookをeventbridgeで受ける