タグ

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

  • 至高のDockerイメージ生成を求めて -2019年版- - Qiita

    この記事は@yugui氏の書いた至高のDockerイメージ生成を求めてに感謝しつつ、記事が投稿された当時には無かったさまざまな事情を組み込んで再度まとめたものである。 良いDockerイメージ 良いDockerイメージとは何だろうか。Dockerの利点は次のようなものだから、それを活かすイメージが良いものであるに違いない。 ビルドしたイメージはどこでも動く 適切にインストールされ、設定されたアプリケーションをそのままどこにでも持っていける。 コンテナ同士が干渉し合うことはないので、任意のイメージを互いに配慮することなく柔軟に配備し実行できる 必要のないサービスがコンテナ内で走っていないので、セキュリティの向上に資する イメージの転送が効率的である ベースイメージ部分は一度送ればいちいち再転送する必要がないので、ベースイメージを共有する複数のイメージを効率的に転送できる 標準のレジストリAP

    至高のDockerイメージ生成を求めて -2019年版- - Qiita
  • 個人的に超絶為になったので新人エンジニアに勧めたい記事まとめ - Qiita

    はじめに コードを綺麗に描く方法やプログラミングの勉強方法や考え方など、 個人的にとても為になって感謝している記事をまとめてみました。 コード関連 [良いコードを書く技術(まとめ)] (https://qiita.com/NoriakiOshita/items/e60ab5bb01b90d927ae5) [Naming -名前付け-] (https://qiita.com/Koki_jp/items/f3d3e824f98d182d4100) [ソースコードを汚くするには?] (https://blog.y-yuki.net/entry/2016/09/03/210156) [ダメエンジニアの8つの特徴] (https://blog.toshimaru.net/8/) 勉強方法関連 [新しく言語を学ぶときに心がけていること] (https://qiita.com/hiraike32/ite

    個人的に超絶為になったので新人エンジニアに勧めたい記事まとめ - Qiita
  • Oracle JDK 8にあってOpenJDKにない機能 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに Oracle JDK/JRE 8のPublic Updates1が商用ユーザーに対しては2019年1月までで終了し、2019年4月のリリースからライセンスが変更されたため、別のJDKディストリビューションへの切り替えを考えている方も多いと思います。 しかし、特にOracle JDK 8までは、素のOpenJDKにはない2機能が多く存在します。 安易に切り替えてトラブルにならないように、Oracle JDK 8にはあるが、一般的なOpenJDKディストリビューション3にはない機能を無償・有償別にまとめてみます。 Oracle J

    Oracle JDK 8にあってOpenJDKにない機能 - Qiita
  • 初心者プログラマーの僕が、テスト駆動開発を愛する5つの理由 - Qiita

    最初に テスト駆動開発(以後TDD)の存在を知って、自分で取り入れてみてから、自分の開発は良くなったと思っています。 TDDを人におすすめしよう! と思ってを読んだり色々と調べていたりするうちに、 TDDは死んだ とか、テスト全部書かなくても...と言われていることを知りました。 それでも自分はTDDで開発するのが好きだし、自分には合っていると思うので、自分がTDDを愛する理由を書いてみたのがこの記事です。 若干ポエム寄りになっているかもしれませんが、ご容赦いただけると幸いです。 前提としていること TDDの基的な流れとして、タスク細分化→Red/Green/Refactoringのループを回す、であること 実践者は初心者であり、実装にまだ不慣れであること(内容についての言い訳ではなく、そういう人がTDDを実践した事で感じた事を書いたという意味) TDDではなく自動テストによる恩恵も含

    初心者プログラマーの僕が、テスト駆動開発を愛する5つの理由 - Qiita
  • 実際のところ「ブラウザを立ち上げてページが表示されるまで」には何が起きるのか - Qiita

    9月15日(土) DNSについて追記しました。バックエンド?今はクラウドがきっと上手くやってくれるので深く考える必要は無いんですよ(知らないので書けません😔) 問題のツイート 面接の質問で「ブラウザを立ち上げてページが表示されるまでの仕組みを全て知ってる限り説明してください」ってのをやると結構Web系の知識どれだけあるか分かると思ってる — 🍛🍺 (@tan_go238) September 10, 2018 解釈 今回は「ChromeのURL欄に入力してからページが表示されるまで」をやります。ブラウザの起動云々はWeb系の話じゃないと信じてます。 1. HTTPリクエストが飛ぶ **HTTP2のヘッダ圧縮技術**に全て書いてありました。 (追記)下のリクエストヘッダはテキストで書かれていますが、実際にはこれをバイナリにしたものが飛んでいるとのことです。segfoさんありがとうござい

    実際のところ「ブラウザを立ち上げてページが表示されるまで」には何が起きるのか - Qiita
    manhole
    manhole 2019/08/06
  • フロントエンドのプロ直伝! CSS余白設定の三原則(+線の引き方) - Qiita

    前置き CSSでの余白の取り方について、後輩に「margin-topとmargin-bottomどっち派ですか?」と聞かれたので、 回答内容を記事として残します。 昔、会社のOJTで学んだことの共有となります。 原則 1. 基的にmargin-topを使う 理由としては、そちらの方が後々調節しやすいからです。 また、後述の優先度で設定していけば、margin-bottomの出番はほぼなくなります。 2. どうしても無理な場合にbottomを使う margin-bottomは他の方法ではどうしても設定が無理なケースのみ使いましょう。 3. 隣接セレクタをうまく使うとトルツメしやすい 特定の要素同士が並んだ時だけマージンを取る=余白の打ち消し設定が不要になります。 設定の優先度 要素がいくらネストしても下記の優先度は変わりません。 この優先度で余白を設定していけば、margin-bottom

    フロントエンドのプロ直伝! CSS余白設定の三原則(+線の引き方) - Qiita
    manhole
    manhole 2019/07/22
    margin-topを使う。打ち消しはせず隣接セレクタを使う。
  • 【完全無料】Linux(Unix)コマンドを覚えるたった一つの冴えたやり方 - Qiita

    はじめに インフラや組み込みに限らず、Web開発でもLinuxコマンドに触れる機会は多いと思います。 最近ではAndroidのアプリ開発が隆盛しているようですが、AndroidLinuxの一種です。 MacOSもUnixのOSなのでTerminalでコマンドを使って環境構築したり、Gitにコミットしたり…。 VagrantやDockerもガンガン使うと思います。 最近ではWindows上でも使えるようになりましたね。 今回は触れる機会の多いであろうLinuxコマンドを覚える方法を書いていきます。 たった2STEPです。滅茶苦茶簡単です。 First STEP まず、Ping-tをやりましょう。 問題集ですが、非常に解説が充実しているため、最初は正答率を気にせず解説だけ見るだけでもOKです。 私はこちらだけでLpic Level 1を取得しました。 最強WEB問題集LinuC/LPIC L

    【完全無料】Linux(Unix)コマンドを覚えるたった一つの冴えたやり方 - Qiita
  • Chrome拡張の高速な英語辞書ツールをつくりました(Mouse Dictionary) - Qiita

    経緯 もともとMouseoverDictionaryという素晴らしいFirefox用辞書があったのですが、Quantumの登場とXULの廃止とともに使えなくなってしまったため、自分用にChrome拡張をつくった次第です。 ソースコード 実装に関わる技術寄りの用語: React, esbuild, chrome.storage.local, chrome.storage.sync, Cross-extension messaging, Hogan, debounce, resizable/draggable, intl.v8BreakIterator, deinja, クロスブラウザ, など。 ※詳細は「Mouse Dictionaryの技術的な話」をご参照ください https://qiita.com/wtetsu/items/2a5568cb0b5a38c003fb 使い方 インストール

    Chrome拡張の高速な英語辞書ツールをつくりました(Mouse Dictionary) - Qiita
  • 「ドラッカー風ふりかえり」を実践しよう - Qiita

    はじめに このスライドは @TAKAKING22 さんの「 心理的安全性について気出して考えてみたら普段やってるチーミングの話だった #DevLOVE by TAKAKING22 」で紹介されている「ドラッカー風ふりかえり」をチームで実践するために独自の解釈でテンプレ化したものです。 ドラッカー風ふりかえりとは? 参考:ドラッカー風エクササイズ 「内側の期待」と「外側の期待」の2つの期待をすり合わせる 「組織の中のチーム」と「チームから見た組織」 「チームの中の個人」と「個人から見たチーム」 チームメンバーの期待をあわせる「ドラッカー風エクササイズ」 1. チームについて考えてみてください 4つの質問(5分) 何が得意か? どうやって貢献するか? 大切な価値は何か? どんな成果を期待されているか? 次に向けてすり合わせましょう 何ができるか 何を改善するか 完成イメージ 2. 自分自身に

    「ドラッカー風ふりかえり」を実践しよう - Qiita
  • RSA鍵、証明書のファイルフォーマットについて - Qiita

    RSAの公開鍵暗号技術を利用するためには、鍵や証明書のファイルを扱う必要があるため、そのファイルフォーマットについて理解しておく必要があります。 実際、いろんな拡張子が登場するので、それぞれの意味を理解していないとすぐにわけがわからなくなります。そんなときのために備忘録をまとめてみました。 ファイルの拡張子の注意点 .DERと .PEMという拡張子は鍵の中身じゃなくて、エンコーディングを表している デジタル暗号化鍵やデジタル証明書はバイナリデータなのですが、MD5のハッシュ値のような単なる 値 ではなく、データ構造をもっています。.DERや .PEMはそのデータ構造をどういうフォーマットでエンコードしているかを表しています。そのため、.DERや.PEMという拡張子からそのファイルが何を表しているのかはわかりません。暗号化鍵の場合もあるし、証明書の場合もあります。 .DER 鍵や証明書をAS

    RSA鍵、証明書のファイルフォーマットについて - Qiita
  • シェルスクリプトBash入門 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    シェルスクリプトBash入門 - Qiita
    manhole
    manhole 2019/06/19
    array[@] は配列のすべての要素
  • Nuxtで毎日やりたいことを習慣づけるWebアプリ「コツコツ忍者」を作った🏃‍♀️【個人開発】 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? お久しぶりです。 以前、Nuxt.jsとFirebaseでchocottoというTwitterでお菓子と一緒にメッセージを送れるサービスを作ったG4RDSです。 先週、二十歳を迎えて成人しました🎉 今は高専五年で、編入試験を受けている真っ只中です。 適度にお酒を入れて、今後も個人開発頑張っていこうと思います! さて、今回作ったWebサービスは「コツコツ忍者」というWebアプリです。 昔ばなしに、忍者は跳躍力向上のために毎日成長していく小さな木を飛び続けた、というお話があるのをご存知ですか? ある能力を向上させたいのであれば毎日継続して

    Nuxtで毎日やりたいことを習慣づけるWebアプリ「コツコツ忍者」を作った🏃‍♀️【個人開発】 - Qiita
    manhole
    manhole 2019/06/19
    20歳! すごい!!
  • 見たいエンジニアの職務経歴書の書き方 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 前置き 某上場Web系の企業で中途社員のサーバーサイドエンジニアの書類選考や採用面接官などをしています。途中に転職もしましたが面接などの採用に関わり始めてから5年経ちました。 以前に面接についてはこちらの記事を書きました。 エンジニアを面接するときに面接官が当に知りたいこと 書類選考もしていて、欲しい情報が足りない。当の実力はもっとあるのでは?と思うこともあり、今回は採用側の立場から、もっと見たい職務経歴書の書き方について書こうと思います。 全てのパターンに当てはまることはなく、主にWeb系の中でもそれなりに大きな会社の中で見てきた

    見たいエンジニアの職務経歴書の書き方 - Qiita
  • [前編] IDトークンが分かれば OpenID Connect が分かる - Qiita

    はじめに 「解説記事を幾つも読んだけど OpenID Connect を理解できた気がしない」― この文書は、そういう悩みを抱えたエンジニアの方々に向けた OpenID Connect 解説文書です。概念的・抽象的な話を避け、具体例を用いて OpenID Connect を解説していこうと思います。 この文書では、JWS (RFC 7515)、JWE (RFC 7516)、JWK (RFC 7517)、JWT (RFC 7519)、ID トークンの説明をおこないます。 追記(2020-03-20) この記事の内容を含む、筆者人による『OAuth & OIDC 入門編』解説動画を公開しました! 1. 『ID トークン』を発行するための仕様 一般の方々に対しては「OpenID Connect は認証の仕様である」という説明で良いと思います。一方、技術的な理解を渇望しているエンジニアの方々に対

    [前編] IDトークンが分かれば OpenID Connect が分かる - Qiita
  • Spring Security & JWT with Spring Boot 2.0で簡単なRest APIを実装する - Qiita

    概要 この記事は、以前に投稿した「[Spring Security with Spring Boot 2.0.1で簡単なRest APIを実装する] (https://qiita.com/rubytomato@github/items/6c6318c948398fa62275)」で利用したデモアプリケーションをJWT(Json Web Token)に対応させたときの変更点を説明する記事です。 JWTの仕様については詳しい記事がたくさんありますのでここでは触れません。 ソースコードは[rubytomato/demo-security-jwt-spring2] (https://github.com/rubytomato/demo-security-jwt-spring2)にあります。 環境 Windows 10 Professional Java 1.8.0_172 Spring Boot

    Spring Security & JWT with Spring Boot 2.0で簡単なRest APIを実装する - Qiita
  • 【Vue.js】Web API通信のデザインパターン (個人的ベストプラクティス) - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに Vue.jsを使用したアプリケーションでのWeb API呼び出しのデザインパターンについて調べてみました。 しかし検索して出てくるチュートリアルやサンプルは、コンポーネント内でaxiosをインスタンス化していたり、Vuexの中でaxiosを使用するというサンプルがほとんどでした。 しかし実際のプロダクトでこれをしてしまうと コンポーネント内でAPIアクセスの直書きによって単体テストが困難に Vuex(actions)の肥大化(使い回さない処理はStoreに記述しないほうがいいとする文献もある) API通信部分をPureJSでモ

    【Vue.js】Web API通信のデザインパターン (個人的ベストプラクティス) - Qiita
  • サーバーレスを使用して最初の6ヶ月で学んだ6つのこと - Qiita

    こちらの記事は6 things I’ve learned in my first 6 months using serverlessの和訳になります。 サーバーレスの世界は適切なツールさえ見つければミドルレイヤーを省けるのでとても良いものです。 10月に行われたServerlessconfの後、自分の会社を全てサーバーレスにすることに決めました。最初の2ヶ月は Python Flask appにLambdaを導入するのに必死でしたが、そのおかげでより良い方法を思いつきました。 そして6ヶ月後、私たちにとって4番目に大きいプロジェクトをサーバーレスでデプロイすることになったのです。以下の内容がデプロイするまでに私たちが学んだ教訓、意見です。 レッスン1 Pythonの使用は避けましょう Flaskは昔ながらのリクエスト、レスポンスのスタイルで、サーバーによって管理されるセッションがあるWeb

    サーバーレスを使用して最初の6ヶ月で学んだ6つのこと - Qiita
    manhole
    manhole 2019/05/09
  • プルリクエストが最速でマージされるための7つの技 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? わたしはOSSとして公開されているGitHubのリポジトリに貢献することがあるのですがいつも困っていることがあります。私がPRをオープンするとめっちゃコメントがついて、それを修正するのにすごく時間がかかることです。そういえば私の元同僚のピーターは生まれて初めて新しい言語で書いたPRですら一発でマージされていて驚いた覚えがあります。どうやったらプルリクエストが最速でマージされるのか?インターネットを調べても情報がなかったので、自分で調べてみることにしました。ちなみにこのポストは、私自身が書いたHow can you get your PR

    プルリクエストが最速でマージされるための7つの技 - Qiita
    manhole
    manhole 2019/04/08
  • お前のtarオプション指定は古い - Qiita

    はじめに mattnさんが以下のようなことをつぶやかれていました。 tar コマンドで z フラグを付けるとオッサンだとバレる。 — mattn (@mattn_jp) 2018年3月7日 それに対するリプへのリプ。 今は自動判定なのです。。 — mattn (@mattn_jp) 2018年3月7日 オッサンでした。 ここら辺の処理はbuffer.cのcheck_compressed_archiveという関数で行われてます。まあ今回の題はこちらでないのでこの話はここまで。 その後もオッサン達(失礼)がオプションの話で盛り上がっていました。 さらにオッサンになると tar cf - . | gzip -9 > foo.tar.gz のように別途実行してました。 当時使ってたSunOSだかSolarisのtarはzオプションサポートしてなかった気がしますが定かではないです。 — Hiroa

    お前のtarオプション指定は古い - Qiita
    manhole
    manhole 2019/04/03
    オッサンでした
  • dockerでvolumeをマウントしたときのファイルのowner問題 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    dockerでvolumeをマウントしたときのファイルのowner問題 - Qiita
    manhole
    manhole 2019/04/03
    Linuxで-vマウントするとホスト側ユーザがownerになる現象への対応方法。(macではdocker内ユーザがownerになる)