タグ

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

  • 画像の保存を禁止する方法とその回避方法 - Qiita

    Webサイトによっては掲載する画像を保存できないようにしなければいけない時があります。 今回は画像がダウンロードできないようにするための対策とその回避方法を紹介します。 回避方法に関しては既存のサイトでも使えるかもしれないので、悪用厳禁です! また、ここに載っている方法は回避可能なので他の方法を検討しなければいけません。 個々の内容は昔からあるテクニックなので何番煎じな内容ですが、まとめ記事として残しておきます。 TL;DR フロントエンド: 透明の画像を被せる フロントエンド: 右クリックを禁止する フロントエンド: ドラッグを禁止する バックエンド: 画像のURLから直接アクセスできないようにする 環境 フロントエンドChromeで確認しています。 バックエンドはnginx、Node.jsで確認しています。 OSはmacOS 10.13で確認しています。 透明の画像を被せる 保存され

    画像の保存を禁止する方法とその回避方法 - Qiita
    lazex
    lazex 2018/07/04
    ここのでもcanvasでもdevtools使えたら画像保存簡単だからね。1px×1pxのdivを並べてそれぞれに背景画像指定+独立して昔のTVみたいに切り替えるアニメーションを高速でやればスクショしても汚いのか一部欠けてるのになりそう
  • 死んだCSSを見つける方法 - Qiita

    使われてないCSSであればツールで見つけられますが、そうではなく、"実質的に"使われてないCSSを見つけるにはどうすればよいでしょうか。 という問題にスマートな解決方法を記載している記事を見つけたので訳してみます。 以下はFinding Dead CSSの日語訳です。 Finding Dead CSS 私が今週開いていたパフォーマンスワークショップで、Webサイト上で死んだCSSを見つけるテクニックが頭をよぎりました。 今、故意に『未使用CSS ( unused CSS ) 』ではなく『死んだCSS ( dead CSS ) 』というフレーズを使いましたが、これは以下のようなシナリオを想定して使いました。 数十人規模の多数のチームが開発している、数十万行のコードを含む、長期にわたって運用されている大規模なプロジェクトがあるとしましょう。 そこには既に使われていないCSSがあるだけではなく

    死んだCSSを見つける方法 - Qiita
    lazex
    lazex 2018/06/18
    物によってはほぼ使われず1年以上開かれてないページが存在するとかあるからね・・・。消した頃にアクセスされて動いてないと言われるんだよ。設定画面がまともに機能しないのに一度も使われず修正依頼もない例が
  • [Git] .gitignoreの仕様詳解 - Qiita

    対応バージョン この記事の内容は、少なくともGitのバージョン2.19.1までは対応している。 もし最新のGitで新しい動きがあれば随時更新する。 基 .gitignoreを使うと無視する(Gitのトラッキングの対象外とする)ファイル or ディレクトリを指定できる。 .gitignoreは複数のディレクトリに置くことができる。 深い階層の.gitignoreに書かれた指定の方が優先順位が高い。(後に解釈される) .gitignore内の記述は上の行から順に以下のように解釈される。 /を含まない行(fileなど) .gitignore以下の全サブディレクトリ下にあるこの名前のファイル or ディレクトリを無視する 末尾以外にのみ/を含む行(/file, /path/to/file, path/to/fileなど) .gitignoreが置いてあるディレクトリをカレントディレクトリとする相

    [Git] .gitignoreの仕様詳解 - Qiita
  • MicrosoftによるGitHub買収について次期社長に訊く(翻訳) - Qiita

    GitHubの次期CEOのNat Friedmanだけど質問ある? RedditGitHubの次期CEOであるナット・フリードマン氏が現れて、MicrosoftによるGitHub買収による影響についていろいろな質問に答えてくれています。興味深い内容が多く、(彼の発言を額面通り受け取るなら)一部で出ている不安を緩和できるようなものでもあると思ったので、翻訳して紹介します。内容的に重要と思われる質問について、人の発言のみをかいつまんでおり、ジョーク系のやりとりなどについては省いています。また、読みやすさのため、同じ話題についての複数の回答を適宜統合したりもしています。ご了承ください。 ソース: I'm Nat Friedman, future CEO of GitHub. AMA. この買収による近い将来の変化は? 回答:我々がGitHubを買収するのは我々がGitHubが好きだからです。

    MicrosoftによるGitHub買収について次期社長に訊く(翻訳) - Qiita
  • WebサイトをHerokuで公開してドメイン取得とSSL化までの全手順

    2018/6/4 公開していたサービスはAPIのリクエスト数上限を超えたため、停止いたしました ここでは元々作成したサイトも紹介していましたが、F5攻撃を受けたことでAPIのリクエスト数上限を超えてしまいました。 元々勉強の為に作成した物だったのでこのまま対策方法を学ぶのも時間が掛かりそうでしたのでサービスは終了させました。 今後のために対策方法がわかれば、次のサービスを公開する際に一緒に共有しようと思っています。 ここには公開手順のみ残して置きますのでよければ参考にしてください。 文 自分で作ったwebサービスを公開したことがなかったので、知見を広げる為にもやってみようと思いました。 同じように、知識が浅い人、作ったサービスを公開したいけど何をすればいいかわからないという人の参考になればと思います。 公開手順 GitHubに登録 もしかしたら最初にやるべき事なのかもしれないですけど、ノ

    WebサイトをHerokuで公開してドメイン取得とSSL化までの全手順
    lazex
    lazex 2018/06/03
    結構丁寧で初心者がサービス公開するまで何すればいいか知るのに良さそう。最初youtubeにニコニコのコメント流すって読んでて別動画のコメント流してどうするんだろう?と思って読んでた。タイトル見直して気づいた
  • 2018年の最先端バックエンドエンジニアになろう - Qiita

    フロントエンドエンジニア / バックエンドエンジニア / DevOpsエンジニア@poly_soft 先日2018年の最先端フロントエンドエンジニアになろうという記事を訳したのですが、そのリポジトリにはバックエンドとDevOpsのロードマップ画像も置いてあります。 しかしバックエンドのテキストにはTODOの1行だけで、動きがありませんでした。 解説が追加されないかなー、と思ってたら別の人がやってたのを見付けました。 ということで以下はModern Backend Developer in 2018の日語訳です。 Modern Backend Developer in 2018 こんにちのWeb開発の様相は、数年前とは全く別物です。 Web開発には多すぎる選択肢があって何をすればいいのか迷います。 それが、これらのステップを視覚的に表し、段階的にWeb開発を行っていくためのガイドラインを作

    2018年の最先端バックエンドエンジニアになろう - Qiita
    lazex
    lazex 2018/05/24
    最後の方はいくつかやることによっては必須とも言えないのがあるけど、基本的に最先端とかじゃなくて最低限の必須スキルだよね
  • 名刺の代わりにCLIアプリを書く - Qiita

    ここ1週間自己紹介用のCLIアプリを書くのが流行ってる。 はじまりはいつものSindre Sorhus。 My new business card pic.twitter.com/koVIsUT5np — Sindre Sorhus (@sindresorhus) May 10, 2018 nodeが入っていれば すると自己紹介CLIアプリが起動。 ``` $ npx sindresorhus ```https://t.co/QO3ogKmu1d pic.twitter.com/xZdQSzFLAq — Sindre Sorhus (@sindresorhus) May 9, 2018 基的には、このレポジトリを適当に書き換えれば簡単にできる。 はじめてのnpmライブラリにちょうどいいかも知れない。 また、使っている技術がちょっとおもしろくて、inkを使っている。 これは何かとCLIのた

    名刺の代わりにCLIアプリを書く - Qiita
    lazex
    lazex 2018/05/17
    npmに使えないパッケージがムダに増えるわけか・・・。登録しやすい分他のパッケージマネージャに比べて使えないのもいっぱいあって欲しいもの探すときに結構辛いんだよね
  • 「赤の他人」の対義語は「白い恋人」 これを自動生成したい物語 - Qiita

    背景 「造語対義語」がちょっと面白いと思ったので、Word2Vecを応用して機械に作らせてみよう!という試み。 やりたいことは、以下のようなギャグ対義語を自動生成すること。 「赤の他人」⇔「白い恋人」 「ウサギは寂しいと死ぬ」⇔「ゴリラは孤独を背負い生き抜く」 「生きろそなたは美しい」⇔ 「死ねブス」 「冷やし中華始めました」⇔ 「おでんはもう辞めました」 「コアラのマーチ」 ⇔ 「ゴリラのレクイエム」 「やせ我慢」 ⇔ 「デブ大暴れ」 「生理的に無理」 ⇔ 「理論上は可能」 「ゲスの極み乙女」 ⇔ 「ほんのりピュア親父」 「週刊少年ジャンプ」⇔「月刊老人スクワット」 「お母さんと一緒」 ⇔ 「お父さんは別居」 「そんなんじゃ社会に出てから通用しないぞ」 ⇔ 「それだけの力があれば幼稚園では無敵だろう」 果たしてWord2Vecを活用して、このようなユーモアを生み出せるのか!? 投稿の内

    「赤の他人」の対義語は「白い恋人」 これを自動生成したい物語 - Qiita
    lazex
    lazex 2018/05/10
    サービスとして公開してほしい
  • 就活のためにWEBサービスを作ったら、転職できた以上の価値をもたらしてくれた話 - Qiita

    WEBサービス立ち上げ2周年を迎えたGWに、記念に書いたものです(^^) 長いけどお付き合いいただけると幸いです。 TL;DR 転職時のポートフォリオに「こんなことできます」と書くためにWEBサービスを作った 最新のいろんな技術を実践的に学ぶことができスキルがメキメキ上がった 就活どころか、新たな出会いとチャンスが生まれて、これはもしかしたら…………。 想定読者様 WEBサービスを立ち上げたい人 WEBサービスを立ち上げるのに、プログラム以外にどんなことをするのか具体例を知りたい人 まぁそれはそれ、1つの例としては参考になるよね、と割り切っていただける方 今回はごめんなさい…な読者様 転職したい人。……釣りタイトルですみません、転職ノウハウな話は出てきません。 WEBサービスを立ち上げて独立したい人。……すみません、独立していません。 WEBサービスを立ち上げて収益をガンガン上げていくノウ

    就活のためにWEBサービスを作ったら、転職できた以上の価値をもたらしてくれた話 - Qiita
    lazex
    lazex 2018/05/10
    植物図鑑は興味ないけどこういう個人のサービスはいろいろ増えてほしいね
  • 開設後3週間で収益10万円を得た個人開発サイトでやったことの全部を公開する - Qiita

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

    開設後3週間で収益10万円を得た個人開発サイトでやったことの全部を公開する - Qiita
    lazex
    lazex 2018/05/10
    ターゲット絞るなら自分の欲しいもの作っててほしい。同じ好みの人からはすごく好かれるしなにより作ってる人の好みなら長続きしそう。まぁ売れるものを作って稼ぐという目的だとダメだろうけど
  • Gitで日本語長文のdiffをとる方法 - Qiita

    (この記事はここからの転載です) 課題 日語の長文をgitで管理していると、ほんのちょっとの変更でもdiffでは行丸ごと変更されたことになり、変更点がよくわからないことがある。 二泊三日で小説を書く過激なイベントNovelJam 2018参加作品である高橋文樹氏の「オートマティック クリミナル」は、GitHubを使って執筆されている。小説では、git diffの欠点がはっきりでる。高橋氏は参加レポートで、こう書いている。 あと、今回得た重要な知見なのですが、Githubではある程度以上テキストが長くなってくると、数文字の調整で全部差分として判定されたりするので、小説には向いてないかなーと思いました。小説は行の移動とかがよく発生するので、GithubじゃなくてGitとの相性かもしれません。 普通にdiffを取る 確かに、普通にdiffをとるとその通り。コマンドラインで「オートマティック ク

    Gitで日本語長文のdiffをとる方法 - Qiita
    lazex
    lazex 2018/05/09
    guiツール使ってるとだいたいどれでも行の中での変更点だけをさらに色変えてくれたりするから気にしたことなかった。普通のdiffだと行内のどこが違うかはわからないのか
  • 相対的なネーミングはよせ、やめるんだ! - Qiita

    たぶん1000回くらいは言われてきているがいまだに絶滅しないので、もう1回言う。ファイル名でもソースコード上の変数でもCSSのセレクタでもなんでもいいけど、相対的なネーミングはやめよう。 Safe Harbor Statement この投稿は個人の(中略)であり、所属する組織とは関係ありません。 なぜ相対的なネーミングをしてはいけないか 名前をつけた人の主観が入り込むため 時間が経つにつれ名前が実態と乖離し混乱を招くため 実装に無駄な制約をかけるため なぜ相対的なネーミングがなくならないか なにが相対的なネーミングなのか理解していないため じゃないかな多分。 避けるべき語 というわけで相対的なネーミングを回避するための禁止ワードのうち代表的なものをあげておきます。 new, 新, latest, 最新, old, 旧 など これらの時系列を表す語は、比較対象がないと新なのか旧なのかわかりま

    相対的なネーミングはよせ、やめるんだ! - Qiita
    lazex
    lazex 2018/05/07
    使い方が悪いんであってその単語を特に避ける必要はないと思う。
  • プログラミングなんて大嫌いだ - Qiita

    プログラミング教育や子育てに通じるかもしれないプログラミングが大嫌いになった体験談をよかったら聴いて欲しい。こんな悲しい子どもが2度と生まれてはいけない 自分が小学生のころのこと、まさに昭和の全盛期と言っていい時代だった。経済は発展し新しい文化や文明の利器が世の中には溢れ出していた。 その中の一つが全ての小学生が夢中になったファミリーコンピューター、通称ファミコンだった。 僕たちはファミコン世代とも呼ばれ外で遊ぶことが減った最初の世代だ。ゲーム体を持っていることは最高のステータスであり、人気ソフトを持っているとそいつの家はたまり場になる。特にゲームのうまいやつはヒーローだった。 そんな時「ゲームが欲しい欲しい欲しい欲しい欲しい欲しい欲しい欲しい欲しい欲しい欲しい欲しい」とねだる少年に手を焼いた父親は一冊のを買ってきた。うろ覚えだが多分、C言語のプログラミング系雑誌だったと思う。そして

    プログラミングなんて大嫌いだ - Qiita
    lazex
    lazex 2018/05/06
    あ、消えてる・・・。最近Qiitaのページでよく見かける「これはQiitaに書くべきじゃない」とか言ってる人が増えるほどQiitaに書く人が減っていってる気がする。そんな面倒なところに書きたいと思わないしね
  • ExcelからElixir入門①:データ並替え/絞り込み - Qiita

    コラムは、2分で読めて、10分くらいでお試しいただけます】 piacere です、ご覧いただいてありがとございます Excel位カンタンな関数型プログラミング言語「Elixir」 「関数型言語」の習得が、なかなか進まない、といったことをよく聞きます 特に、「オブジェクト指向言語」に慣れ親しんだ方ほど、苦しんでいるようです Elixirは、「ExcelGoogleスプレッドシートを使う位、簡単」なので、「関数型言語」の習得が進まない方には、オススメの言語です また、プログラミングが初めての方でも、ExcelGoogleスプレッドシートでできることが、Elixirも同じようにできると分かれば、習得しやすいでしょう この「Excelから関数型言語マスター」シリーズでは、ExcelGoogleスプレッドシートと同じ機能を、Elixirでも実践するだけ … というカンタンなところからスター

    ExcelからElixir入門①:データ並替え/絞り込み - Qiita
    lazex
    lazex 2018/04/29
    ここまでだとだいたいの言語で出来るからあえてelixirを選ぶメリットを感じられない
  • Chrome拡張でとっても役立つAPIのまとめ - Qiita

    BLOCK CLOCK」という、Chrome拡張のサービスを作りました。リリースの記事をQiitaにも投稿してサービスの紹介をさせていただいたのですが、技術的な内容が全くなかったので、開発に使用したChrome ExtensionのJavaScript APIsにも触れておきたいと思います。 Chrome拡張を作るためのGoogoleが提供しているChrome ExtensionのJavaScript APIsを呼び出しています。公式リファレンスは存在していますが全て英語で書かれており、APIの内容を調べるのに苦労しました。 Chrome拡張の開発で、同じように苦戦する方がいると思うので、少なくとも僕が使ったAPIだけは今回まとめておこうと思います。 JavaScript APIs BLOCK CLOCK - 仕事の時間をSNSから守るクローム拡張 マニフェストファイル chrome拡張

    Chrome拡張でとっても役立つAPIのまとめ - Qiita
    lazex
    lazex 2018/04/29
    alermsだけ使ったことなかった。setTimeoutで困ってないし
  • Twitterのタイムライン上で動くブラウザゲームをJSで作りました - Qiita

    TL; DR JavaScriptでブラウザゲームを作りました。 UFOを操作して動物を誘拐するゲームです。 TwitterOGPを設定すると、ツイートに埋め込むことができます。 『Alien Abduction』 こちらからプレイできます。 https://alien.laineus.com/ 画面をタップするだけのミニゲーム的なやつです。 ツイートに埋め込む なんとツイートに埋め込むことができました! UFOを操作して動物を誘拐するゲームを作りました! PCだとタイムライン上で直接プレイできます↓ Alien Abduction https://t.co/7qAtPXTnGj #phina_js — らいね (@Laineus) 2018年4月25日 (↑ぜひリツイートお願いします!) TwitterOGPのカードタイプに、playerというものがあり、オリジナルの音声・動画プレイ

    Twitterのタイムライン上で動くブラウザゲームをJSで作りました - Qiita
    lazex
    lazex 2018/04/27
    そういうことか。タイムラインの画面全体を書き換えて画面の下の方でキャラクター動かしたり、googleのzergrushみたいに画面内のコンテンツ利用して各ツイートの四角を壊したりするのかと
  • 開発に集中するためのChrome拡張を作りました! - Qiita

    個人開発をしていて、全く開発せずに1日中Twitterをしている日がありました。 もしこれが受託開発だったらヤバいですよね...。 このSNS問題については僕だけではなく、色々な人から話を聞くことがあり、なんとか解決したいなーとずっと思っていました。 開発や仕事に支障が出ないように、Twitterときちんと付き合うためのサービスを色々と探していたのですが、自分が求めているサービスが見つからなかったのでChrome ExtensionのAPIを使ってクローム拡張アプリ「BLOCK CLOCK」というサービスを自作しました。 今更感はありますが、Chrome Extensionの情報などを共有したいと思います。 以下のリンクからインストールのできます↓↓(Chromeのみになります...) BLOCK CLOCK - ChromeWebStoreサイト 作ったもの BLOCK CLOCK -

    開発に集中するためのChrome拡張を作りました! - Qiita
    lazex
    lazex 2018/04/26
    よくあるやつだけど見た目いい感じ
  • 他人のコミットをgit merge --squashするべきでないのではという話 - Qiita

    最近某OSSに出されたPRが、git merge --squash <branch> でマージされたことにより、コミットのAuthorが書き換えられてしまったことが一部界隈で話題になっていました。この件にはマージを行った人に悪意はなかったようなのですが、gitの理解不足により生じてしまった案件だとすると悲しい話なので一応メモ 何が起きたか コミッターが複数の内容が含まれたPRを送った 管理者はその中の一部の内容だけをマージするために、管理者はgit merge --squashを実施し、コミットを改変した上でmergeを実施した ←これが問題 コードの内容はコミッターのものなのに、Authorだけ管理者にすげ変わってしまいコミッターのモチベを損ねた そもそもsquashするとどうなるの ここに分かりやすくまとまっています。 アジャイルSEを目指すブログ 図で分かるgit-mergeの--f

    他人のコミットをgit merge --squashするべきでないのではという話 - Qiita
    lazex
    lazex 2018/04/14
    他人のは基本書き換えないけど、書き換えられたくらいでこんなに一々文句つけてるとか面倒な人もいるもんだなぁ。プロジェクトが良くなったのならコミットのauthorとか誰でも良いよ
  • Twitterの名前を5分毎に東京の天気⛅☂☃と連動させるサーバレスプログラムを書いたら色々知らないことが出てきた話 - Qiita

    みんなが使えるようになりました(追記 2018/11/20) 【祝】Twitterの名前をお天気と連動されるアプリを作った時の技術的な紹介【公開した🌥️】 導入 みなさんこんにちは! 私は将棋プログラムPonanzaの作者、山一成といいます。Qiita初投稿です。よろしくおねがいします。 いつものようにTwitterをしていた時、ふと思ったんです。 「Twitterの名前の部分が天気のEmojiと連動して変わったら嬉しいな」 つまりこんな感じですね ↓ いつもは、C++など低いレイヤーのプログラムを書くことがメインなので、こういったプログラムを書いたことがあまり経験がないのですが、よしいっちょやってみるかと思ってやってみました。 技術選択 さっそく技術選択の段階です。 こういう類のプログラムは技術の選択がとても大切です(たぶん)。 正しい技術選択をすればとても幸せなのですが、間違えると

    Twitterの名前を5分毎に東京の天気⛅☂☃と連動させるサーバレスプログラムを書いたら色々知らないことが出てきた話 - Qiita
    lazex
    lazex 2018/04/13
    絵文字多すぎ。Win7でみたら白黒が多くて変に目立たず気にならない程度だったけど、Win10でみたら鬱陶しすぎ。
  • 何故for文は許されるのか?反省会会場 - Qiita

    祖父母記事: なぜfor文は禁止なのか?ポエム版 親記事: でもやっぱりfor文は使っていいと思うよ だって遅いんだもん こんなに遅いとは思いませんでした。 まさか1/6の速度しか出ないだなんて軽くショックです。 折角良いサイトhttp://jsben.chを教えてもらったので速度改善を目指して色々試行錯誤してみましょう。 この記事(反省会)では、速度も意識したメソッドチェーンのあり方を考えていきます。 メソッドチェーンはチューニングでどの程度速くなるのか それによる可読性はどの程度影響するのか 結局JSerはどう生きていけば良いのか 配列を生成するイディオムの速度比較 JSは配列作るのが下手くそですが、 メソッドチェーンや関数型プログラミング的な事をしたければ、 まずは速い数列(配列)を作るイディオムが必要です。 とりあえず4パターン用意してみました。 // length指定: 別の所で

    何故for文は許されるのか?反省会会場 - Qiita
    lazex
    lazex 2018/04/13
    chromeだけどfillが最速だった。Array.fromとfillでこんな差があるのが謎。|0ってasm.js有効にしてなくても意味あるんだっけ?ループ目的なら「for(const i of Array(10).keys()){/**/}」でいいと思う。連番いらないならkeys消す