ブックマーク / qiita.com (382)

  • AV1エンコーダーの速度と品質の比較 - ffmpeg(libaom) vs SVT-AV1 - Qiita

    記事はDMMグループ Advent Calendar 2019の1日目の投稿です。 どうもこんにちは。DMMで動画の配信基盤を作っているチームでプロダクトオーナーをやっているyanoshiです。 数日前に見たらアドベントカレンダーの1日目が開いてるじゃないですか!ってことで確保した1日目です。私なんかが1日目で良かったのだろうか。 どんな話を書こうかなと思ったのですが、メモ書き程度にちょっと調べたいことがあったのでそれについて書きたいと思います。 動画コーデックの話です。 注意(お約束): 記事の内容は所属する組織との関係は一切ありません。全て筆者の個人による調査/私的見解であり個人利用の範疇による技術的検証となっています。 また稿の内容を実施して発生したあらゆる損害を筆者は一切保証しません。 概要 稿ではAWSの c4.8xlarge インスタンスを用意し、下記のエンコーダーそれ

    AV1エンコーダーの速度と品質の比較 - ffmpeg(libaom) vs SVT-AV1 - Qiita
    yanap1214
    yanap1214 2019/12/15
  • SREやクラウドエンジニアが読むと良さげな本まとめ - Qiita

    一年半ぐらい前にアプリケーションエンジニアからSREにコンバートした筆者が、いま役に立ってるなぁっていうを紹介します。アプリケーションコードを書いてるときは下のレイヤの技術に興味なかったんですが、改めて勉強してみると楽しいです。 コンピュータシステム クラウド全盛とはいえ、コンピュータの仕組みはおさえておくと役立ちます。コレ系のはわりと小難しいものが多いですが、個人的に楽しく読めたを紹介します。 Raspberry Piで学ぶコンピュータアーキテクチャ Raspberry Piと銘打たれてますが、コンピュータアーキテクチャの歴史的な背景も踏まえて解説されています。プロセッサ・メモリ・ストレージ・ネットワーク・OS・プログラミングなど、コンピュータ単体の基的な知識を学べます。 歴史をあわせて知ることができるため、知的好奇心がおおいに刺激され、楽しく読むことができます。このが難しく感

    SREやクラウドエンジニアが読むと良さげな本まとめ - Qiita
    yanap1214
    yanap1214 2019/12/10
  • リリースまで至らなかった個人開発サービスのコードを全公開して反省してみる【Nuxt + Go】 - Qiita

    これはなに これはDeNA20卒内定者エンジニアによるアドベントカレンダーDeNA 20 新卒 Advent Calendar 2019の記事として書かれています。 はじめに 僕は趣味の一環でWebサービスを作ったり作ろうとしたりしています。ちょうど一年程前に企画・開発を始めたのですが、リリースまで至らなかったサービスがあったことを思い出したのでこれを機にコードを全公開して振り返ってみることにします。 公開したコードはこちらになります。 https://github.com/tockn/emukone_public 自分で実装しておきながらすごく無責任なのですが、正直どういう思想で実装していたのかその詳細はもう忘れてしまっているので、コードを読んで思い出しながら書く形になります。 なぜリリースしなかったのか? まずはこれです。当時DDDやクリーンアーキテクチャといったソフトウェアアーキテク

    リリースまで至らなかった個人開発サービスのコードを全公開して反省してみる【Nuxt + Go】 - Qiita
    yanap1214
    yanap1214 2019/12/06
  • Goでヘキサゴナルアーキテクチャ - Qiita

    はじめに 『Standard Go Project Layout』と『ヘキサゴナルアーキテクチャ』を参考にサンプルプロジェクトを作ってみました。 トランザクション周りも取り扱います。 『Standard Go Project Layout』とは ↓これです。 Standard Go Project Layout 上記の内容を日語で簡潔にまとめてくださってる記事もありました。 Goにはディレクトリ構成のスタンダードがあるらしい。 別の記事になりますが、こちらもとても参考になりました。 Practical Go: Real world advice for writing maintainable Go programs ヘキサゴナルアーキテクチャとは ↓これです。 ヘキサゴナルアーキテクチャ(Hexagonal architecture翻訳) 家サイトへのリンクも張りたかったのですが、現

    Goでヘキサゴナルアーキテクチャ - Qiita
    yanap1214
    yanap1214 2019/11/18
  • 2020年のフロントエンドマスターになりたければこの9プロジェクトを作れ - Qiita

    以下はSimon Holdorf( dev.to/ Twitter / GitHub )による記事、9 Projects you can do to become a Frontend Master in 2020の日語訳です。 9 Projects you can do to become a Frontend Master in 2020 Introduction あなたがプログラミングの初心者であるか、既に経験豊富な開発者であるかにかかわらず、この業界では、急速な変化に追いつくために新しい概念と言語・フレームワークを学び続けることが必要です。 たとえばFacebookが4年前にオープンソース化したReactは、既に世界中のJavaScript開発者にとって第一の選択肢になっています。 もちろんVueAngularにも多くのフォロアーがついています。 さらにはSvelte、Next

    2020年のフロントエンドマスターになりたければこの9プロジェクトを作れ - Qiita
    yanap1214
    yanap1214 2019/11/13
  • 開設後3週間で収益10万円を得た個人開発サイトでやったことの全部を公開する - Qiita

    開設して3週間ほどで収益10万円を個人開発サイトから得たので、そこでやったことを全部ここに公開する。 世の中には**億ドルのバリュエーションを獲得したスゲー起業家の話か、個人開発サイトを立ち上げたものの収益なんてゼロに近い話かの両極端しか無いように感じる。 パッと立ち上げてだいたい1ヶ月でiPhoneXが買えるぐらいのサイト規模というのは、どんなレベルのエンジニアでも手が届く範囲内にあるのが実感だ。「人生賭けて起業!」とかそんな熱い話ではない。普段の仕事が終わったら、ちょこちょこコードかいて個人的にアプリを公開して収益を得る、ぐらいの話。「1億総クリエイター時代」ではこんなやり方が世の流れに合っている気がする。 この記事でも「エンジニアアウトプット至上主義であるべき」と主張している。自分で主張するからにはやっぱり得たノウハウは全部公開するのは当然だな、と。だいたい数週間で収益が10万円な

    開設後3週間で収益10万円を得た個人開発サイトでやったことの全部を公開する - Qiita
    yanap1214
    yanap1214 2019/11/04
  • ECRでコンテナ脆弱性診断が標準実装されていたので試してみた - Qiita

    ※2019/10/29(火)追記: 公式で発表されてました!合わせて、issuesもClosedになっていました。 Native Container Image Scanning in Amazon ECR 公式ドキュメント ※2019/10/27(日)追記: 再び利用可能になっていました。 下記のissuesに経緯等が記載されています。 ECR Image vulnerability scanning #17 ※2019/10/25(金)追記: 機能は使用出来なくなっているようです。 ECRでスキャン? 今日の業務中にふとECR画面見たら、「スキャン」の表示を見つける。 コンテナの脆弱性診断が実装されてる? ん?こんなのあったっけ。見落としていただけかな。ということで触ってみた。 リポジトリ作成 「プッシュ時にスキャン」画面メニューがある。とりあえず、リポジトリ作成してみる。 なるほど

    ECRでコンテナ脆弱性診断が標準実装されていたので試してみた - Qiita
    yanap1214
    yanap1214 2019/10/26
  • 3年かけてたどり着いた英語記事を読むための方法 - Qiita

    2023/07/03 要約ツールに「ChatGPTを利用する場合」を追加し、サンプルの生成結果を記載しました。 以前は英語の記事の読み書きが苦手だったのを、このようにして克服した、という話を書きます。 成果を数値で測ってないですが、RSSフィードに登録している英語メディアの数が大幅に増えました。以前は全体の5%程度に対し、今は50%以上が英語メディアになっています。英語に対する心理的ハードルは大きく下がりました。 また、読む力を付けたことで自作のOSSのREADMEもほぼ自力で書けるようになりました。 https://github.com/goodwithtech/dockle/blob/master/README.md では始めます。 全体像 僕の場合、1000文字以上の英文記事を読む場合、STEP1に含まれる内容は必ず行います。 STEP2に含まれるものは、辞書なしで読めないときだけ行

    3年かけてたどり着いた英語記事を読むための方法 - Qiita
    yanap1214
    yanap1214 2019/10/26
  • Rustはこうやって勉強するといいんじゃないか、という一例 - Qiita

    前置き これはRustを学びたいけどどうやって勉強しようかという人向けの記事です。 自分の経験からここ先に読んどきゃよかったとか、ここ読んどけばもっと楽だったとかそんなのをいろいろまとめてあります。もう一度Rustを学び直すならどうするかなー、と考えながら書きました。なお大半が英語の資料です。 英語か・・・と思った方はyukiさんのRust を始めるための資料集もどうぞ。 対象はRubyPythonなどの高レベル言語をすでに習得してる人。 前準備 Rustの主な特徴を知っておきましょう。Rustは他の言語にない考え方や特徴が多いので先に知っておくと良いです。とりあえずinto_rust() : screencasts for learning Rustを全部見ましょう 基礎知識の習得 The Bookと呼ばれる公式の入門書があります。まずこれを読みましょう。日語訳もありますが英語版のほ

    Rustはこうやって勉強するといいんじゃないか、という一例 - Qiita
    yanap1214
    yanap1214 2019/10/26
  • 全ての開発者に知って欲しい5つの業務効率化ツール - Qiita

    こちらの記事は、Indrek Lasn 氏により2019年 6月に公開された『 Here Are 5 Productivity Tools Every Developer Should Know 』の和訳です。 記事は原著者から許可を得た上で記事を公開しています。 私がプログラミングに関して学んだ最も重要なスキルは、おそらく適切な仕事に適切なツールを選ぶことでしょう。ハンマーしか持っていないと、すべてが釘のように見えてしまいます。そのため、開発者の生産性と満足度を向上させる新しいツールを常に探すことが重要なのです。 注意:私はここで紹介する会社やツールとは一切関係がありません。私がそれらを選んだのは、それらが単純とても便利だと感じたからです。 Insomnia バックエンド、フロントエンド、フルスタックのいずれの開発者でも、APIを使った作業をする時があります。ほとんどのモダンアプリケー

    全ての開発者に知って欲しい5つの業務効率化ツール - Qiita
    yanap1214
    yanap1214 2019/10/24
  • サーバーレスアプリケーションの最も危険なリスク12選 - Qiita

    2020/3/14 追記 昨年、PureSec も加盟している Cloud Security Alliance の Israel Chapter から、The 12 Most Critical Risks for Serverless Applications 2019 が公開されました。 ※記事の公開時点で既に TOP12 が最新でした・・・ 記事で記載している既存の TOP 10 の内容に大きな変更はなさそうですが(SAS-9 は Serverless Business Logic Manipulation に改題)、新たに追加された SAS-11、SAS-12 について文に追記します。 既存の文章にも差分があるようですので、正確な内容は原文をご参照ください。 追記はここまで イスラエルのセキュリティスタートアップ PureSec による The Ten Most Critica

    サーバーレスアプリケーションの最も危険なリスク12選 - Qiita
    yanap1214
    yanap1214 2019/10/23
  • DockerやECR, ECS, Fargateなど、コンテナ周りのAWS知識を効率的にキャッチアップしたい人のために - Qiita

    DockerやECR, ECS, Fargateなど、コンテナ周りのAWS知識を効率的にキャッチアップしたい人のためにAWSDockercontainerECSFargate 概要 私自身がコンテナや、コンテナ関連のAWSサービスについてはほぼ分からない状態だったのですが、そこからできる限り効率的に知識をキャッチアップしたくて学習したときの道のりです。 同じように困っていらっしゃる方のお役に立てばと思い、記事にしてみました。この道のりの通りに進んでいただければ、時間を無駄にすることなく、多少なりともスムーズに知識をキャッチアップできると思います。 主要な概念や全体像を理解するまでの道のり いきなり詳細に踏み込んでも、つまりいきなりFargateなどのAWSサービスを使っても、すぐに迷子になることは目に見えていましたので、まずは全体感や重要な概念、用語を理解しようと思いました。 そこで色々と

    DockerやECR, ECS, Fargateなど、コンテナ周りのAWS知識を効率的にキャッチアップしたい人のために - Qiita
    yanap1214
    yanap1214 2019/10/15
  • 追伸。そろそろおまえもstationでslackやWebアプリを一括管理をするように。 母より - Qiita

    みなさん、slackを開きすぎてブラウザのタブが煩雑になったりしていませんか? gmailやtwitter,GoogleDrive,githubのタブを開いたり閉じたりめんどくさくないですか? stationを使うと、Webアプリを一括管理できて、ブラウザで見るより効率化できます。 自分はプログラム歴13年、フリーランス歴4年の@望月と申します。 stationをもう6ヶ月以上使っていて、とても良いアプリだと感じたので紹介しようと思いました。 stationを使う事でブラウザでWebアプリ開きすぎ問題を解決しました。 今回はstationの概要と登録したアプリ、使用感を紹介します。 stationは誰でも簡単に使えるので、アプリを一括管理して効率化しましょう! stationってなに? https://getstation.com/ stationはモダンな人の為のスマートワークステーショ

    追伸。そろそろおまえもstationでslackやWebアプリを一括管理をするように。 母より - Qiita
    yanap1214
    yanap1214 2019/01/09
  • Goで書くClean Architecture API - Qiita

    Enterprise Business Rules ビジネスルールの為のデータ構造を持ったオブジェクト。 データの実態を表す場所。 Application Business Rules ビジネスルールを操作する場所。 つまりこのアプリケーションで何ができるかを実践します。 Interface Adapter 外部からの入力、データの永続化、表示を担当する場所 Frameworks & Drivers Webフレームワーク、DB操作の実際に担うソース、 フロントエンドUIなどがここに所属しています。 外側のレイヤーの要素を直接参照してはならない 上記の図におけるこの矢印は依存を表しており、 内側のレイヤーから外側のレイヤーの要素への依存を禁じます。 ここでいう依存とは要素(構造体、変数など)への直接参照をさせないということです。 では外側のレイヤー要素を参照せざる得ないは、どうするのでしょ

    Goで書くClean Architecture API - Qiita
    yanap1214
    yanap1214 2018/12/10
  • 【入門】Nuxt.js + Contentful + Netlify で始める、JAMstack な CMS 構築 - Qiita

    【入門】Nuxt.js + Contentful + Netlify で始める、JAMstack な CMS 構築JavaScriptVue.jsJAMstackNuxtcontentful 概要 こんにちは、アジアクエスト株式会社でフロントエンドエンジニアをやってます、かめぽんです。最近はエンジニアリングだけでなく Vue や Nuxt の導入支援などもしていたので、徐々に Vue を使ってくれる人が増えつつあり、組織的にもこれからどんどんフロントエンド技術を一層浸透させていきたいなと思っております。 最近、JAMstack やヘッドレス CMS という言葉を聞きますが、CMS と聞いて真っ先に思い浮かべるのは WordPress だと思います。人によっては好き嫌いあって僕もそんなに得意と言うか好きな技術ではありません。だけど、CMS の需要はかなりあるのでどうしたらもっと扱い回しやすい

    【入門】Nuxt.js + Contentful + Netlify で始める、JAMstack な CMS 構築 - Qiita
    yanap1214
    yanap1214 2018/11/23
  • Webパフォーマンス虎の巻

    Webパフォーマンス向上施策のために、今更ながら超速1を読んだので、今までの自分の知見と合わせてまとめてみます。 なるべく柔らかく、改善施策ってまず何をどうすればいいの?という疑問を持った人に向けて書いています。 ▪️格言 そもそもWebは速い。遅くしているのは我々です。大抵は技術の問題ではなくて、人の問題。 引用元: テクニックではなく、今、気で取り組むべきWebパフォーマンス (html5jパフォーマンス部 部長 竹洞さん) 心得 パフォーマンス向上に対する施策は大別すると以下の2通り 軽量化 (単純にやりとりするデータ容量を小さくすること) 圧縮 削除 最適化 (その時に最も適している実装・実行をとること) 経路・順番の変更 非同期 もっとも遅くしている原因を探して、それを対策するのが原則。「対効果」が絶対的正義である。手段から入るのは愚策。まず先に原因を知ることが重要。 ▪️1

    Webパフォーマンス虎の巻
    yanap1214
    yanap1214 2018/10/26
  • Dockerでプログラマが最低限知るべきことが、最速でわかるチュートリアル - Qiita

    はじめに Dockerを理解するには試してみるのが一番です。 でも、あなたはある日突然「あと一時間でDockerを理解する必要がある」 状況に追い込まれた不運なプログラマになってしまうかもしれません。 そんな状況で公式サイトのチュートリアルは長すぎることでしょう。英語ですし。 なので、Dockerでプログラムが最低知るべきことが最速でわかるチュートリアルを書いてみました。 簡単に「Dockerそれっておいしいの?」に答える Dockerは単に仮想環境を提供するアプリケーションです。LinuxのVMを提供します。ただ、コンテナ型ってやつなので軽量です。VMが短時間で構築できて便利です。コンテナ型ではないフルの仮想環境はゲストOSに中間マージンを払っているようなものなので、ゲストOSとホストOSが同じことやってるならリソースのムダです。ならば、ホストOSと直取引し、ゲストOSに支払っていた中間

    Dockerでプログラマが最低限知るべきことが、最速でわかるチュートリアル - Qiita
    yanap1214
    yanap1214 2018/10/10
  • エンジニアは全員技術記事を書くことを習慣化した方がいいぞ(翻訳)

    はじめに この記事は、Why Every Software Engineer Should Write Articlesを翻訳したものです。今まで、記事やブログを書くことに時間を使うことに懐疑的だったのですが、この記事を読んで腑に落ちるものがありました。 アウトプットしたほうがいいのは分かっているけど、めんどくさい、時間が勿体無いなどと思っている方にはぜひ読んでもらいたい記事です。 英語を日語に直訳すると不自然で読みにくくなるため、主張を壊さないことを前提に意訳します。ミス等あれば指摘ください。 なぜ全てのエンジニアが記事を書くべきなのか? 近頃、コンピュータサイエンス産業は複雑かつ急速に進化しており、複雑な技術やコンセプトを簡単な方法で説明するという事がより重要になってきている。 ブロックチェーン・機械学習・深層学習・データサイエンス・分散システム・量子コンピューティング・ビッグデータ

    エンジニアは全員技術記事を書くことを習慣化した方がいいぞ(翻訳)
    yanap1214
    yanap1214 2018/10/06
  • VSCodeのオススメ拡張機能 24選 (とTipsを少し)

    1. vscode-icons アイコンがついて見やすくなる。 2. GitLens とにかく強い。 「コミット単位でのファイル比較」や「最新のコミット内容とそのコミッター表示」など色々してくれる。 git blameする手間なくなる。 3. Prettier コードのフォーマットは自動でやりましょう! 複数人のこだわりをうんたらするよりも、Prettierに委ねるのが楽。 関連のTipsはここ 4. Git History Git logが見やすい 5. Bracket Pair Colorizer カッコの対応を色付きで表示してくれる。 ものすごく読みやすくなって最高&最高!! なおBeta版ですが、後継となるBracket Pair Colorizer 2も出ています。 6. Settings Sync どこでも同じ設定で使いたい人には便利。 ⇧ + ⌥ + U/D で設定をアップロ

    VSCodeのオススメ拡張機能 24選 (とTipsを少し)
    yanap1214
    yanap1214 2018/10/02
  • 【Unity】【AssetBundle】Unity2017~Unity2018.1 のためのAssetBundle システム構築方法 (2018/09/19追記) - Qiita

    AssetBundle とは ざっくりと説明すると「アプリ外部から素材などをダウンロード〜ロードする仕組み」+「ロードする素材群をパック(まとめる)するための仕組み」です。 メリット アプリ内部に一部リソースを持たなくていいため アプリのサイズを抑えることができる モバイルアプリだと各プラットフォームで3G/4G回線でDL出来るアプリのサイズ制限がある(Apple:150MB, GooglePlay:100MB) ユーザーとしてはDLしやすくなるためDL数が伸びやすい 動画やボイスなど重いファイルは必要な時にDLする仕組みに出来る サーバーにAssetBundleを置くことができる アプリ申請なしにリソースの更新が可能 アプリ内イベントなどのリソース追加が容易 見た目修正程度であれば、AssetBundleを更新して、ユーザーに最新のものをDLしてもらえればすぐ治る (アプリの作りによるが

    【Unity】【AssetBundle】Unity2017~Unity2018.1 のためのAssetBundle システム構築方法 (2018/09/19追記) - Qiita
    yanap1214
    yanap1214 2018/09/18