タグ

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

  • 軽い気持ちでLinkedListを使ったら休出する羽目になった話 - Qiita

    ざっくり言うと リスト構造のデータに対してランダムアクセスはしちゃだめだぞ。お兄さんとの約束だ! 発端 数年前に他部署の支援で作ったJavaのシステムに、ちょっとデカめのデータを突っ込んだらありえないほど遅いので助けてくれ、と連絡が入った。 まぁクエリとかインデックスをちょっと見れば直るっしょ・・・と鼻をほじりながら支援に向かった。 処理内容 遅い部分の処理は以下のようなものであった。 処理対象のデータをListで受け取る。 それをforループで1件ずつ前処理する。 処理結果をオブジェクトに格納し、ORマッパーでDBにINSERTする。 これだけ? そう、これだけだ。並列処理なんて高級なことはもちろんやってない。 インフラ調査 処理中のサーバのようすを調査する。今回のインフラは典型的な3層3サーバ構成。 WEBサーバはなにもかもが余裕。 APサーバではCPUを1つ使い切っている。 14コア

    軽い気持ちでLinkedListを使ったら休出する羽目になった話 - Qiita
    s5ot
    s5ot 2018/02/19
  • イマドキのJavaScriptの書き方2018

    PySpa統合思念体です。これからJavaScriptを覚えるなら、「この書き方はもう覚えなくていい」(よりよい代替がある)というものを集めてみました。 ES6以降の難しさは、旧来の書き方にプラスが増えただけではなく、大量の「旧来の書き方は間違いを誘発しやすいから非推奨」というものを作り出した点にあります。5年前、10年前のやウェブがあまり役に立たちません。なお、書き方が複数あるものは、好き嫌いは当然あると思いますが、あえて過激に1つに絞っているところもあります。なお、これはこれから新規に学ぶ人が、過去のドキュメントやコードを見た時に古い情報を選別するためのまとめです。残念ながら、今時の書き方のみで構成された書籍などが存在しないからです。 たぶん明示的に書いていても読み飛ばす人はいると思いますが、すでに書いている人向けではありません。これから書くコードをこのスタイルにしていくのは別にいい

    イマドキのJavaScriptの書き方2018
    s5ot
    s5ot 2017/12/27
  • CTOのやるべきことは何なのか?(翻訳と考察) - Qiita

    【背景】 この記事はQuoraの「What does a CTO do?」という質問に対するAmr-Awadallah氏のよくまとまった回答の翻訳です(人から許可取得済)。 私はMAMORIO株式会社でCTOをしているのですが、最近自分の仕事が何なのかよく分からなくなってきたことがこの記事を書こうと思ったきっかけです。 私はこの記事でいう所の「雑草CTO」であり、たまたま会社の初期に私以外に適任者がいなかったので成り行きで就任し現在に至ります。 そして、人数もプレッシャーも少ない総初期は来た玉は打つの姿勢でコーディングから渉外まで何でもこなしていましたが、メンバーが増え、それよりも早いペースでユーザーと仕事が増えてくると、自分の職務を定義しやることとやらないことをはっきり分ける必要が出てきます。 この翻訳が同じような状況にあるCTOの助けになればと思いますし、誤訳等があったら指摘してくだ

    CTOのやるべきことは何なのか?(翻訳と考察) - Qiita
    s5ot
    s5ot 2017/12/11
  • ISUCON7予選のNode.js参考実装を担当させていただきました - Qiita

    ISUCON7のNode.js版の参考実装の作成を担当させていただきました。 参加者のときとは全然別視点で、得られたことが沢山ありました。 Twitterでもつらつらと書いてたのですが、まとめた振り返りを書きたいと思います。 なお参考実装のリポジトリはこちらからご確認いただけます。 — ISUCON7 予選問題の公開と解説 : ISUCON公式Blog 自分のISUCON歴 ISUCON5, 6と二回参加し、どちらも予選敗退してます。 ちなみに過去二回ともGoでの挑戦で、Node.jsで挑んだことはありませんでした。 なぜやったか 自分は参加メンバーを集めきれなかっため、 Node.js版で参加したいという知り合いから「Node.js版に清き一票を!!」と推されて一票入れ、 あとは今年のISUCONには関わらず終わりかなと思っていました。 ISUCON参加予定者にアンケートです。PHP,

    ISUCON7予選のNode.js参考実装を担当させていただきました - Qiita
    s5ot
    s5ot 2017/10/24
  • フロントエンドチェックリスト(日本語訳) - Qiita

    GitHubで公開されているフロントエンドチェックリストというドキュメントが、網羅されている内容が幅広く便利そうだったので、日語に翻訳しました。 日語版は、以下のGitHubリポジトリにあります。GitHub側と自動的に連携するようにしておりますので、誤訳や誤りなどがあれば GitHub のプルリクエストまたは Issue で報告していただけると幸いです。 https://github.com/miya0001/Front-End-Checklist 日語版への貢献方法 最終更新日時: 2017-11-19 03:50:47+09:00 (未翻訳) Front-End Checklist The Front-End Checklist is an exhaustive list of all elements you need to have / to test before lau

    フロントエンドチェックリスト(日本語訳) - Qiita
    s5ot
    s5ot 2017/10/23
  • もう逃げない。HTMLのviewportをちゃんと理解する

    <meta name="viewport" content="width=device-width,initial-scale=1"> と呪文のように書いてきたが、いい加減ちゃんと整理して理解しよう。 いろいろ調査した結果、以下の考え方で理解できると思う。 まず、実際の液晶の解像度は一旦忘れろ。 <meta name="viewport" content="width=480">と指定したとする。 するとそこに幅480pxの仮想的なウインドウが作られる。幅480pxの液晶モニターがあることをイメージして欲しい。これをviewportと呼ぶ。 ブラウザはviewportにレンダリングする。viewportの中では、あたかも当に480pxのモニターを使っているかのような環境になっている。なので、JSのdocument.documentElement.clientWidthなんかも480を返す

    もう逃げない。HTMLのviewportをちゃんと理解する
  • 何番目系の便利なCSSまとめ - Qiita

    最初 :first-child 最初の要素(親要素から見て、子要素すべての最初) デモ :first-of-type ある要素の最初(親要素から見て、ある子要素の最初) デモ 最後 :last-child 最後の要素(親要素から見て、子要素すべての最後) デモ :last-of-type ある要素の最後(親要素から見て、ある子要素の最後) デモ 1個だけ :only-child 1個だけ子要素がある(親要素から見て、子要素が1個だけある) デモ :only-of-type 1個だけある子要素がある(親要素から見て、ある子要素が1個だけある) デモ X番目 :nth-child(X) X番目 デモ:5番目 :nth-of-type(X) ある要素のX番目 デモ:5番目 :nth-child(Xn) Xの倍数 デモ:2の倍数 :nth-of-type(Xn) ある要素のXの倍数 デモ:2の倍数

    何番目系の便利なCSSまとめ - Qiita
    s5ot
    s5ot 2017/09/06
  • Webの未来は今。Polymer 2.0とWeb Components。Google I/O 2017 - Qiita

    Webの未来は今。Polymer 2.0とWeb Components。Google I/O 2017GooglePolymer Googleが「Google I/O 2017」でW3C標準のWeb ComponentsベースのフレームワークPolymerの2.0のリリースを発表しました。 Polymer Keynote on Day 1の内容を速報します。 プロダクトマネージャーTaylor Savage 今年、SafariがWebコンポーネントをサポートしました。 これによって、10億以上のモバイルデバイスがWebコンポーネントをサポートすることになります。 PolymerはWebプラットフォームを未来に進めるために、Chromeチームと協働で進めてきました。 そして、PolymerはOSSのWebエコシステムと共に進んできました。 ReactVueはWebに革新をもたらしました。

    Webの未来は今。Polymer 2.0とWeb Components。Google I/O 2017 - Qiita
    s5ot
    s5ot 2017/09/05
  • @akamecoのマイページ - Qiita

    posted articles:JavaScript:37%Node.js:25%React:15%babel:10%flow:10%

    @akamecoのマイページ - Qiita
    s5ot
    s5ot 2017/09/05
  • Polymer 3.0 を始めよう🔰 - Qiita

    この記事は、以下の意訳です。 Hands-on with the Polymer 3.0 preview https://www.polymer-project.org/blog/2017-08-23-hands-on-30-preview 以下のドキュメントをお読みになる際は、最新の公式ドキュメントの不整合に注意してください。 現在、実験的にPolymer 3.0 プレビューが利用できます。しかし、"実験的"というところに注意してくさい。これは、早期プレビュー版です。間違えなく雑な部分があります。 幸運や成功というものは、何事も恐れずに大胆に行動する人に訪れます。今日も一日がんばるぞい!! ツールを入手 始める前に、Polymer CLIを最新にアップデートする必要があります。 以前、説明したように、コンポーネントをインストールするために Yarn パッケージマネージャをインストールする

    Polymer 3.0 を始めよう🔰 - Qiita
    s5ot
    s5ot 2017/09/05
  • Polymer 3.0 Previewについて〜npmとES6モジュールへの移行〜 - Qiita

    この記事は、公式サイトのブログ「Polymer 3.0 preview: npm and ES6 Modules(Justin Fagnani,2017-08-22)」を訳したものです。 日コペンハーゲンで開催されたPolymer Summit 2017において、私たちはPolymerプロジェクト歴史において一つのとても大きなワークフローの転換を発表しました。それは以下の二つの大きな変更です。: PolymerはBowerからnpmへ移行します。 HTML importsの代わりにES6モジュールを使用するように変更を行っています。 私たちは現在、これらの変更のプレビューを行っています。Polymerの次のメジャーバージョンに含まれるこれらの変更に対して、フィードバックを得ることができるようにプロジェクトは公開しながら開発を行っています。是非プレビューを試してみてください。プロダクショ

    Polymer 3.0 Previewについて〜npmとES6モジュールへの移行〜 - Qiita
    s5ot
    s5ot 2017/09/05
  • やばい、iOSにネイティブアプリ要らなくなるかも。SafariもPWAに対応する可能性 - Qiita

    これ以上は長くなるため後述. Chromeは既に,Safariもようやく 上記の通り,Service WorkersがPWAでも最重要な機能の一つである.Chromeでは既に対応済み. しかしSafariが対応しておらず,世間的にはモチベーションの上がらない状況であった(やちまもその一人である). Safariにおいて,Service Workersの実装状況 No active development が Under Consideration になったのは2015/12/041のことである. 20ヶ月という永遠とも呼べる時を経て,2017/08/032にようやく In Development となったわけであった. ちなみにMicrosoft Edgeでは既に開発中34である. だから何なのか SafariにService Workersの実装がなされると,一気にウェブアプリへの移行が

    やばい、iOSにネイティブアプリ要らなくなるかも。SafariもPWAに対応する可能性 - Qiita
    s5ot
    s5ot 2017/08/08
  • JavaScript開発者が一度は読むべきStackOverflow - Qiita

    10.How do JavaScript closures work? http://stackoverflow.com/questions/111102/how-do-javascript-closures-work JavaScriptのクロージャーについて 結構とっつきにくい「クロージャー」に苦労されている人も多いかもしれませんが、サンプルコードが多いので英語わからなくても助かります 個人的にはQuestionの「Like the old Albert Einstein said: ... 」というくだりが好きw 9. What does “use strict” do in JavaScript, and what is the reasoning behind it? http://stackoverflow.com/questions/1335851/what-does-use

    JavaScript開発者が一度は読むべきStackOverflow - Qiita
    s5ot
    s5ot 2017/07/13
  • webpackのrequire.ensureでDynamic Loadingをして大規模アプリケーションを作る - Qiita

    大規模アプリケーションを運営するときに、最初にすべてconcatしたファイルをいっぺんに読み込むと膨大なコード量が読み込まれてしまうので、各ルーティングごとに分けて必要のあるときにだけJSを読み込みたいケースがあります。 従来はRequireJSを使えば解決できる話だけど、最近ではwebpackやbrowserifyを使うケースのほうが増えてきたきて併用なんて絶対したくないと思います。なのでwebpackを使った大規模サイト運営におけるDynamic Loading方法をここに書き置いておきます。(知ってる方にはしょうもない話ですが間違ってたら注意してもらえれば助かります。) require.ensureでjsファイルを後から読み込む

    webpackのrequire.ensureでDynamic Loadingをして大規模アプリケーションを作る - Qiita
    s5ot
    s5ot 2017/07/11
  • [CSS] z-index とスタックコンテキスト - Qiita

    z-index を使って要素の重なりを制御するとき、何も考えずに適当に z-index: 100; などと指定したりしていませんか? このあたりの仕組みをよく理解せずに z-index を濫用していると、いつか怪奇現象に見舞われてつらいことになるかもしれません。 怪奇現象の例 早速ですが、以下のコードを御覧ください。 <div class='boxes'> <div class='box1'> .box1 { z-index: 1 } </div> <div class='box2'> .box2 { z-index: 2 } <div class='box3'> .box3 { z-index: 0 } </div> </div> </div> .boxes { color: white; position: relative; } .boxes div { width: 10em; h

    [CSS] z-index とスタックコンテキスト - Qiita
    s5ot
    s5ot 2017/07/11
  • CSSアニメーション 入門 - Qiita

    はじめに CSSアニメーションに関して説明する機会があったため、それらに関してまとめました。 「CSSは書けるがCSSアニメーションがよくわからん!」といった人達向けに書いた記事であり、 CSSアニメーションに関するプロパティを理解できるようになることを目的としています。 デモはCodePen上に置いてあります。編集して変化を見てみると理解が深まると思います。 デモのJavaScriptはjQueryを読み込んでいないと動かないため、ローカル環境でデモを実行する場合はご注意ください。 CSSアニメーションとは 要素をアニメーションさせるCSSの機能。 CSS TransitionCSS Animationの2つの機能がある。 CSS Transitionとは プロパティに変更があった時に、一定時間でプロパティを変化させる機能。 単純な動きのアニメーションを実装する時に利用する。 CSS

    CSSアニメーション 入門 - Qiita
    s5ot
    s5ot 2017/07/04
  • css脱初心者? :before :after擬似要素の使い方とか基本的なこと - Qiita

    <!-- イメージです --> <ul> <li> <span>(:before)</span> リストです <span>(:after)</span> </li> </ul> このようなhtmlがあるというイメージでcssを書くことが出来るため、デザインの幅がとても広がります。 あくまで「擬似要素」であるため、実際に上記のようなhtmlが出力されるわけではありません。 無駄なhtmlが出力されないので、htmlを汚さずにセマンティック?な感じでいけるのもメリットですね。ちなみに:before,:after要素はインライン要素です。

    css脱初心者? :before :after擬似要素の使い方とか基本的なこと - Qiita
    s5ot
    s5ot 2017/07/03
  • マネージャーと開発者が安心してアプリ開発を続けるための開発ルール - Qiita

    @eaglesakura です。 皆さん、進捗どうですか? お仕事の規模が大きくなれば、参加人数が増えていくでしょう。 参加人数が増えれば、様々な宗教観の人がプロジェクトに参加するでしょう。 お一人様プロジェクトを中心にやっていた人もいれば、大規模案件のソルジャーとしてキャリアを積み上げてきた人もいます。彼らのスキルレベルもまちまちです。 私が参加している(そしてプログラマーに対して強い権限のある立場である)プロジェクトでは、次のようなルールをベースに適用しています。 これはなるべくプログラマーの負担をかけずに管理側(プロジェクトマネージャー=PM)が開発管理を行える(進捗がブラックボックス化しない)ことを目的とした開発ルールです。 前提ルール ソースコード管理はgit/githubを利用する 1コミット(1ブランチ)に対して、複数Issueを処理しない githubはリポジトリ管理(作成

    マネージャーと開発者が安心してアプリ開発を続けるための開発ルール - Qiita
    s5ot
    s5ot 2017/06/26
  • Code SplittingでどれくらいReactアプリの初回ロード時間を減らせるか試してみる - Qiita

    ということで、前々回書いた通りSSR(Server Side Rendering)したくない派ですが、CSRの問題は解決したいので今回は初期ロード時間対策でCode Splittingを試してみます。 基的なことしか試さないので、一度も試したこと無い人向け程度の内容かと思います。 この記事で言うCode Splittingはこのproposalにあるdynamic importを使ったCode Splittingのことです。react-routerを使った場合にrouteごとにjsファイルを分けることで、初期ロード時に1つの大きなバンドルされたjsファイルを読み込むのではなく、それぞれのrouteごとに必要最小限のjsファイルを読み込むことで初期ロード時間を低下させることを目的としたものです。(Routeは今回のデモのための例で、Route以外の用途にも使うことももちろん可能です) ちな

    Code SplittingでどれくらいReactアプリの初回ロード時間を減らせるか試してみる - Qiita
    s5ot
    s5ot 2017/06/13
  • PageSpeed Insightsで100点を取るためにやったこと - Qiita

    はじめに 内部SEOとして、PageSpeed Insightsで高得点をとる……なんて話を昔から、チラホラ聞きます。 ページ速度がSEOにどれほどの影響があるのかはわかりませんが、ページ表示速度の改善を行って悪いことはないはずなので、私が運営している個人サイトをPageSpeed Insightsで100点とれるように頑張ってみました。 記事では、レンダリングブロック周りを主に取り扱っていきたいと思います。 目標 デザインは崩さない よく見る対応として、「外部CSSをbodyの直後で読み込むようにして……」というのがあるけど、そうすると、一度CSSが当たらないページが出てしまう。美しくないので、ファーストビューではCSSが当たった状態で表示する maxCDN等を利用している部分は、そのまま使う 個人サイトなので、CDNを使用しているのはサードパーティー製のJSやCSSのみだが、これはこ

    PageSpeed Insightsで100点を取るためにやったこと - Qiita