タグ

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

  • セキュリティ相談を受けたときに引用したい記事集(WIP) - Qiita

    セキュリティ相談を受けたときに引用したい記事・ニュース集・事例集 これは何? セキュリティ相談受けた際、過去のインシデントや事例などを引用して、「その対策必要なの?」というい疑問への説得力を持たせたりすることがあります。 が、その場で思い出せることは稀です。よく引用できていますが、「どっかにあった気がするんだけどな〜」と思って思い出せないことが7割くらいな気がします。 そんなことがないように、ここにまとめていきます。 いつかまとめたいと思っていたんですが、すぐ思い出せないので永遠に先延ばしにしていたので、未完成のまま公開します。 少しずつ思い出す度に増やします。 BetterThanNothingの精神です。 参考: https://www.youtube.com/watch?v=bnfPUrJQh1I 事例集 各種プロダクトのセキュリティガイドラインなど メルカリさんのgithub ac

    セキュリティ相談を受けたときに引用したい記事集(WIP) - Qiita
  • Firebase から取得したIDトークンをサーバサイド(Java+SpringBoot)で検証する - Qiita

    @Component public class LoginFilter extends OncePerRequestFilter { // 予めObjectMapperをBean登録しておきます @Autowired ObjectMapper objectMapper; @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException { // コンテキストにログインユーザ情報をセット SecurityContextHolder.getContext().setAuthentication(new PreAuthenticatedAut

    Firebase から取得したIDトークンをサーバサイド(Java+SpringBoot)で検証する - Qiita
  • 必要だと気付いてもいなかったフロントエンド用リポジトリ7選 - Qiita

    より良いものをより早く作るのに役立つ、あまり知られていないリポジトリ。 Photo by Juan Rumimpunu on Unsplash はじめに 私たちは、汎用ツールやリソースが数回タップするだけで手に入る時代に生きています。しかも幸いなことに、そのほとんどが無料です。 新しいツールやより簡単な方法が見つかり、面倒で複雑なタスクを実行できれば、誰にとっても、特に開発者には嬉しいことです。 でも、より良く賢い方法があり、予想外の方法で時間を節約できることを知らない場合もあります。 この2年間で見つけたGitHubの素晴らしいリソースは、私をかなり助けてくれました。これらのうちいくつかは、その必要性さえ知りませんでした。 そこで、あなたもおそらく必要になるGitHubリポジトリのリストを作りました。 1. 33 JS concepts ソース 私はプログラミングをJavaで始め、その後

    必要だと気付いてもいなかったフロントエンド用リポジトリ7選 - Qiita
    hysa
    hysa 2021/04/14
    RealWorld知らなかったけどかなり良さそう
  • シニアフロントエンド開発者みたいにChromeデベロッパーツールを使おう - Qiita

    開発環境にChromeを選ぶなら知っておきたい12のテクニック Photo by Morning Brew on Unsplash さて、何らかの理由で、開発ブラウザとしてChromeを選んだとします。次は、デベロッパーツールを開き、コードのデバッグを開始します。 Consoleパネルを開いてプログラムの出力を確認したり、Elementsパネルを開いてDOM要素のCSSコードを確認したりします。 でも、Chromeデベロッパーツールを当に理解していますか?実は、パワフルだけど知られていない機能がたくさん用意されていて、開発効率を大幅に改善できるのです。 ここでは、最も便利な機能を紹介します。お役に立てたら嬉しいです。 ChromeのCommandメニューから始めましょう。ChromeのCommandメニューは、LinuxのShellのようなものです。コマンドを入力してChromeを操作で

    シニアフロントエンド開発者みたいにChromeデベロッパーツールを使おう - Qiita
  • ゆめみのiOSエンジニア研修を公開します! - Qiita

    私たち株式会社ゆめみでは、2020年から新卒者向けiOS研修カリキュラムを作成し運用してきました。 この研修をOSSで公開いたします! 研修の内容 この研修には1〜14の課題が用意されており、 順番にクリアしながら天気予報アプリを開発していきます。 研修期間は個人のレベルによって異なりますが目安としては1ヶ月ほどと定めています。 研修に必要なもの インターネット環境 課題を参照するためにインターネット環境が必要です 開発環境 (Mac, Xcode) 実際にiOSアプリを開発していくので、Xcodeなどの環境は一通り必要になります 1名以上のメンター 課題を進行していくうえで、レビュー・フィードバックやフォローを行うメンターが不可欠です 複数名でローテーションし負荷分散するのも良いと思います Gitのホスティングサービス 実務に近い形でプルリクエストベースで進行することを想定しています G

    ゆめみのiOSエンジニア研修を公開します! - Qiita
    hysa
    hysa 2021/04/02
  • DIS例2 / PHPは配列型と辞書(HaspMap)型が区別不能な言語! | PHPを使いもせずDISってる君達へ - Qiita

    PHPはよくDISられることがあります。しかし、実際にはほとんどPHPを利用していない人が印象だけでDISってることが多いような気がします。 そこで、PHPがよくDISられている点について、実際どうなのかをPHP未体験者向けに解説していきたいと思います。PHPを触ったことない人でもわかりやすいようにシンプル目な仕様のRubyを例に説明していきたいと思います!( Ruby触ったことなくても、その他のOOP言語を触ったことあれば雰囲気は理解できるように書いています ) DIS例1 / PHPは配列操作がしづらい PHPの配列操作は扱いづらい等とDISる人たちがいます。実際のところどうでしょうか。 以下のような処理を配列への中間変数を用いず行うコードを例に考えてみます。 0. [2,4,6,8,10]という配列を用意して 1. ↑の配列から8以下の数だけを選択した配列を作る 2. ↑の配列から各

    DIS例2 / PHPは配列型と辞書(HaspMap)型が区別不能な言語! | PHPを使いもせずDISってる君達へ - Qiita
    hysa
    hysa 2021/03/08
  • 【2021 最新版】ノンデザイナーだからこそ知っておきたかった10のイラストサイト - Qiita

    みなさん、こんちには 【watnowテックカレンダーの23日目】 今日はwatnowのしゅいが担当します よろしくお願いします はじめに 今回は普段私が資料作りなどの際に利用している デザインの参考サイト,フリーのイラストサイト,配色のサイトを紹介します 今回紹介するサイトは全て無料で利用できます デザイン参考 1,pinterest URL:https://www.pinterest.jp ピンタレストは画像のSNSのようなものでネット上の画像を自分の「ボード」に 「ピン」して集めたりできる画像をブックマークとして集めるツールです パワポデザインなどと検索してデザインのアイデアを見つけたりして マネして作ってみるのもありです 2,dribbble URL:https://dribbble.com/ dribbbleはアメリカで生まれたサービスで、招待された人しか画像の投稿ができないため

    【2021 最新版】ノンデザイナーだからこそ知っておきたかった10のイラストサイト - Qiita
  • Firebase AuthなどJavaScriptでAPIセッション用のトークンを得ることについて - Qiita

    ちょっとでもセキュリティに自信がないなら、 Firebase Authentication を検討しよう (※ こちらの参照記事の内容自体に不備があるとか甘いとか指摘するものではないんですが、勝手に枕として使わせてもらいます) 上記記事は、Firebase Authenticationが提供するJavaScript APIを使ってJWTのトークンを取得し、自前のサーバにHTTPのヘッダで送りつけて検証をさせることで、認証の仕組みをセキュアかつかんたんに実現しよう、という内容です。 このようにJavaScriptAPIでトークンを発行して自前バックエンドのAPI認証につかう方法はAuth0のSDKなどでも行われていますので、IDaaSをつかってSPAを開発する場合には一般的なのかもしれません。 話は変わりますが、SPAの開発に携わっている方は「localStorageにはセッション用のトー

    Firebase AuthなどJavaScriptでAPIセッション用のトークンを得ることについて - Qiita
  • 開発体験を変える! Chrome DevTools Tips 7選 - Qiita

    最近Chrome DevToolsについて調べていて発見した便利機能を紹介します。 誰もが使える最高便利な開発マシンChrome DevToolsを使いこなして開発体験を変えましょう! 1. $0で選択中のDOM要素の取得 特定の要素に何かしたいという時には、要素のIDやclassを確認してConsoleでdocument.querySelector("#xxx")で取得するというのが一般的だと思います。実はそれはカーソル選択と$0で代替できます。 Classや、IDがついていない特定のDOMを取得したい時とかにも使えるので地味に便利です。 手順 カーソルで取得したい要素を選ぶ Consoleタブで$0を入力 最近知ったChrome DevToolsの便利機能① $0 での選択中のDOM要素取得 Elementsタブで選択状態のDOM要素は、Console上で $0 を入力することで取得で

    開発体験を変える! Chrome DevTools Tips 7選 - Qiita
    hysa
    hysa 2020/08/18
  • Flutter製アプリ「筋トレ ビフォーアフター」を元にFlutterと個人開発を学ぶ - Qiita

    会社勤めをしながら個人開発をしているtakashiです。 記事では、Flutter製アプリ「筋トレビフォーアフター」を元にプロダクト開発の解説をしていきます。 長文になりますが、重要な部分を絞り込み、コードも記事用のサンプルコードに書き換えているので記事を読み進めやすいと思います。 アプリはこちら。無料でダウンロードできます。 目次 1.Flutterを採用した理由 2.Flutterのキャッチアップ 3.設計 4.開発期間 5.アプリの規模感 6.初回起動時の画面説明 7.入力画面 8.入力ダイアログ 9.カレンダー管理 10.写真撮影とカメラライブラリ選択 11.データ登録完了時 12.ビフォーアフター比較画面 13.ビフォーアフターのロック 14.ビフォーアフターの履歴追加時 15.ビフォーアフターの履歴一覧画面 16.ビフォーアフターの履歴のシェア 17.写真管理画面 18.写真

    Flutter製アプリ「筋トレ ビフォーアフター」を元にFlutterと個人開発を学ぶ - Qiita
    hysa
    hysa 2020/04/25
  • [Flutter] package:provider の各プロバイダの詳細 - Qiita

    はじめに Google I/O 2019 にて provider というパッケージについて言及があり、公に Google 推奨になりました。 provider | Flutter Package https://pub.dev/packages/provider 使用例を探してみたのですが、scoped_model の代わりに ChangeNotifierProvider を使う例ばかりで、他の多数のプロバイダの情報はほとんど見当たりません。 各プロバイダの使用例について 要望 が上がっているので、そのうち公式に用意される可能性がありますが(結局なし)、まず自分で探り探りサンプルを作りながら調べてみました。 文字どおり「探り探り」ですので、誤りがあった場合にはご容赦ください。 2019/12/25 追記 投稿から一年が経った今では非常に有用なパッケージとしてメジャーになっています。 202

    [Flutter] package:provider の各プロバイダの詳細 - Qiita
    hysa
    hysa 2020/03/06
  • 【Flutter】アプリ開発_初心者のアプリをプロっぽくする最強のpackageを紹介 - Qiita

    はじめに 2020年の元旦からFlutterの勉強を開始し、無事2ヶ月で見た目がそれなりのアプリを作ることができるようになりました。これは、すんごい方々が作ったパッケージを使用したおかげです。今回、私が使ったパッケージ・使わなかったけど、いいと思ったパッケージをまとめていきたいと思います。初心者がそれなりの物を短時間で作るにはすんごい方々が作ったすんごいパッケージをどれだけ知っているか、そしてそれをいかに組み合わせられるかが重要だと思います。下記が私が紹介するパッケージで作ったアプリです。もし、インストールしていただけたら嬉しいです。評価してくださると泣いて喜びます。私のアプリ見ながらだと、よりどこに該当のパッケージが使われているかわかりやすいかと思います。 画面チュートリアル編 1.tutorial_coach_mark https://pub.dev/packages/tutorial

    【Flutter】アプリ開発_初心者のアプリをプロっぽくする最強のpackageを紹介 - Qiita
    hysa
    hysa 2020/03/05
  • MySQL データベースの負荷対策/パフォーマンスチューニング備忘録 インデックスの基礎〜実践 - Qiita

    TL;DR この記事に書いた事 二分探索木のお話(前提知識) MySQLのInnoDBで利用されているB+木インデックスの構造と特性 (前提知識) MySQLのClusteredIndex,SecondaryIndexについて(前提知識) カーディナリティについて(前提知識) 実際の負荷対策 検出編 スロークエリ 検出編 その他のクエリ割り出しいろいろ クエリ・インデックスの最適化 explainの使い方と詳細 ケース別実践 単純にインデックスがあたっていないケース カーディナリティが低いインデックスが使われているケース 部分的にしかインデックス/複合インデックスがあたっていないケース 複合インデックスの順序誤りでインデックスが適用できていないケース 複合インデックスの最初がrange検索のケース ソートにインデックスが適用できていないケース ソートにインデックスが適用できていないケース(

    MySQL データベースの負荷対策/パフォーマンスチューニング備忘録 インデックスの基礎〜実践 - Qiita
  • TOMCAT殺害事件 - Qiita

    OOMKillerの殺意 顧客EC2のTomcatがアクセスの無い早朝にもかかわらずOOMKillerに突然殺されてしまったので、調査した顛末をたぶん同じような問題に直面されている方もおられるかと思いますので備忘録として記載します。 Javaヒープのチューニングにも多少役立つかと思います。 (この記事はJava8が対象となります。) OOMKillerとはOut of Memory時に、サーバ全体を守るためにメモリーを消費しているプロセスを停止するLinuxの標準機能です。 そのOOMKillerになんとTomcatが突然殺害されてしまいました。 問答無用の辻斬り状態です。 早朝ですのでアクセスログには何も記録されておらず、catalina.outには OpenJDK 64-Bit Server VM warning: Setting LargePageSizeInBytes has no

    TOMCAT殺害事件 - Qiita
    hysa
    hysa 2020/01/10
  • 【失敗と後悔】Flutterアプリ開発 七つの大罪 (と二つの余罪) - Qiita

    Flutter Advent Calendar 2019の22日目の記事です。 はじめに 私は今年の5月にウィッシュリスト(やりたいことリスト)を作ったり、共有したりできるアプリをFlutter + Firebaseで作り、リリースしました。この記事では、そのアプリを開発し、約半年間運営する中で見えてきた失敗や後悔をまとめ、七つの大罪として皆様に共有したいと思います。同じ過ちを繰り返す人が一人でも減れば幸いです... 嫉妬の罪:アプリ強制アップデートの仕組みを実装せずにリリースした 罪状 ゲームなどではよくある「アプリの強制アップデート」だが、これを行わず運用している多くのアプリへの〈嫉妬〉から、強制アップデートの仕組みを実装せずバージョン1.0.0をリリースしてしまった 詳細 ゲームアプリを起動して、まずアップデートさせられるという体験を自分がよくしていたんですね。で、これが「面倒だなぁ

    【失敗と後悔】Flutterアプリ開発 七つの大罪 (と二つの余罪) - Qiita
  • Effective Dartまとめ - Qiita

    Flutter Advent Calendar の5日目です。 Effective Dartを意訳してまとめました。 他の言語でも共通で言えるようなことも多く記載されています。その辺りは一部割愛しましたが、Dartを書くにあたって知っておいた方がよいと私が感じた部分をまとめました。(それでもかなり長いですが…) また、ここでは割愛しますが、Flutterとしてのスタイルガイドはこちらに記載されているので、併せて読むと良いと思います。 Style guide for Flutter repo Style Guide 命名規則 対応style guide クラス名:UpperCamelCase 例)SampleDataClass ファイル/ディレクトリ/パッケージ名:lowercase_with_underscores 例)page/sample_first/sample_first フィール

    Effective Dartまとめ - Qiita
    hysa
    hysa 2019/12/09
  • 長めだけどたぶんわかりやすいBLoCパターンの解説 - Qiita

    Flutter #2 Advent Calendar 2018 15日目の記事です。 14日目は @ttlg さんの「Flutter, This is it」でした。 はじめに Flutterはとても取っつきやすいですよね。 公式の Get Started などで少し学ぶだけでもう格的に開発していけそうに思えます。 私もそう感じたのですが、そんなとき「Flutterの効率良い学び方」という記事を目にしました。 状態管理の仕方として、公式ドキュメントやUdacityコースなどによくまとまっているのは setState() で素朴に書くパターンです。 ただ、それだけだとある程度以上複雑なアプリを書くのは厳しくなってきます。 どんなアプリも setState() を使えば楽に作れると思っていたので、これを読んで少しショックでした。 でも確かに大きなアプリでは多数のWidget間で状態が複雑に絡

    長めだけどたぶんわかりやすいBLoCパターンの解説 - Qiita
    hysa
    hysa 2019/11/05
    わかりやすい
  • ソシャゲエンジニアの自分が開発に必須だなと思った知識(MySQL編) - Qiita

    この記事の目的 自分は、とある会社様の元でソシャゲAPI 開発をさせていただいています。 ソシャゲは、リリース時やイベント時などに集中アクセスされやすく、負荷軽減の知識がない状態で開発を行ってしまうと、運用時に緊急メンテ祭りになりやすいジャンルかなと思っています。 これまで培ってきた MySQL の知識ですが、脳内メモリ量の関係上、暗記できないのでメモしておこうというのが主目的です。 ここ数年ほどソシャゲ開発しかしていないため、偏っている感がある内容ですのでご注意ください。 概要 ストレージエンジンは InnoDB。メインで扱っている MySQL バージョンは 5.6。 記事の内容ですが、これらのキーワードを見て、おおよそ分かる方は読む必要はないかと思います。 インデックス系 クラスタインデックス カバリングインデックス EXPLAIN で注意するべき値 トランザクション系 MVCC

    ソシャゲエンジニアの自分が開発に必須だなと思った知識(MySQL編) - Qiita
    hysa
    hysa 2019/09/25
  • Android開発者のためのFlutter説明文がためになったので全訳&要約 - Qiita

    View Viewに相当するものは? Androidではボタン、ツールバー、inputsなどのすべてがViewです。 Flutterでは、Viewとおおよそ同じものがウィジェットです。 ウィジェットはAndroidのViewに正確に対応しているわけではありませんが、Flutterがどのように機能するかを学んでいる間は、"UIを宣言および構築する方法"と考えることができます。 ただし、これらにはいくつか違いがあります。はじめに寿命が異なります。 ウィジェットは不変であり、変更が必要になるまで存続し続けます。 ウィジェットやそのウィジェットのStateが変更されるたびに、Flutterフレームワークは、新しいウィジェットツリーを作成します。 それに対して、AndroidViewは、一度描画されたら、invalidate()が呼ばれるまで再描画されません。 Flutterのウィジェットは、その不

    Android開発者のためのFlutter説明文がためになったので全訳&要約 - Qiita
    hysa
    hysa 2019/09/17
  • Firebase Cloud Functionsの定期実行が、それ単体で簡単にできるようになった! - Qiita

    以前、Firebase Functionsを定期実行するには、Googleの他のクラウドサービスや外部サービスと連携する必要がありました。 さて、 firebase-functions NodeJS モジュールバージョン : 2.3.0 Firebase CLIバージョン : 6.7.0 を使うことで、Firebase Functions中の設定・実装のみで、Firebase Functionsの定期実行が行えるようになりました。(これらは、2019年4月時点では利用可能です。) Firebase公式ブログ : 「Scheduling Cloud Functions for Firebase (cron)」(2019年4月18日) Firebase公式ドキュメント : 「Schedule functions」 以下に、公式ドキュメントを参考に試したこと、確認した事項をまとめます。最新のドキ

    Firebase Cloud Functionsの定期実行が、それ単体で簡単にできるようになった! - Qiita