タグ

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

  • Python 3 で簡易の HTTPS サーバーを立てる - Qiita

    概要 JavaScript のコードをブラウザーで試すとき Python の HTTP サーバーは手軽な手段として重宝します。2016年から JavaScript のコミュニティで注目されるようになった Progressive Web App (PWA) では HTTPS が必須ですが、Python の HTTPS サーバーおよび Python 3 系での ssl モジュールの変更についての記事が以外となかったので、調べたことをまとめることにしました。 前提 Python 3.6 および OpenSSL 1.0.2 とそれ以降のバージョンを前提としてます。Python 3 系の ssl モジュールにさまざまなメソッドや定数が追加されており、Python 3.6 以前のバージョンではサンプルコードが動かない可能性があります。 OpenSSL のバージョンは ssl の定数から調べることができ

    Python 3 で簡易の HTTPS サーバーを立てる - Qiita
    dpprkng
    dpprkng 2017/09/04
  • Linux の X Window System で動作するキーリマップソフト x-set-keys を作りました - Qiita

    x-set-keys とは Linux の X Window System で動作するキーバインディング変更ソフトです。 配布元 : https://github.com/kawao/x-set-keys ライセンス : GPLv3 特徴 Emacs 風なキーバインドのカット、コピー、ペースト操作に対応しています。 マルチストロークキーに対応しています。 例えば、 Control+x と Control+c を順にタイプすると、 Alt+F4(アプリケーションの終了) がタイプされたようにすることができます。 また、 Control+k をタイプして、 Shift+End と Constol+x を順にタイプしたのと同じ効果(行削除)をもたらすこともできます。 アプリケーションに任意のキーを送信することができます。 例えば上の例で、Control+k を行削除だけではなく、 Control

    Linux の X Window System で動作するキーリマップソフト x-set-keys を作りました - Qiita
    dpprkng
    dpprkng 2017/08/29
  • HTML初心者のためのHTML5のテンプレートとその解説 - Qiita

    HTMLを勉強しているときに見つけたHTML5のテンプレートです。HTML5とは現在のWeb制作で標準となっているHTMLのバージョンです。私と同じようなHTML初心者はテンプレートの中身を知るだけでも勉強になると思います。今回がQiitaの初投稿です。HTMLの初心者なので上級者の方々にはつまらない内容だと思いますが、それでもよければお付き合いください。ブログに投稿した内容とほぼ同じです。 <!doctype html> <html class="no-js" lang="ja"> <head> <meta charset="utf-8"> <meta http-equiv="x-ua-compatible" content="ie=edge"> <title>タイトル</title> <meta name="description" content="説明文"> <meta name=

    HTML初心者のためのHTML5のテンプレートとその解説 - Qiita
    dpprkng
    dpprkng 2017/08/29
  • QNAPにて削除(rm)したファイルを復元した時の話 - Qiita

    サーバ(CentOS6.4)のデータをNAS(TS-121)に保存していたのですが、誤って必要なファイルを削除してしまいました。 Linuxにて削除(rm)してしまったファイルを復元する【CentOS】 こちらを参考にしてCentOSにextundeleteをインストールしましたがNFS上のファイルは復元できませんでした。 TS-121はLinuxで稼動しているのでこちらでextundeleteを実行することで復元を試みます。 CentOSはグローバルに繋がっていますがTS-121はほぼ初期状態でローカルでのみ繋がっています。 遠隔地にあるためTS-121をグローバルに接続することはできません。 とりあえずRead-Onlyに CentOSからTS-121に接続

    QNAPにて削除(rm)したファイルを復元した時の話 - Qiita
    dpprkng
    dpprkng 2017/08/11
  • 【学習メモ】LinuxCUI初心者が早く知りたかったコマンド(操作も) - Qiita

    はじめに Linuxを学ぶ上で 先に教えて欲しかったことを書きます。 つまりは、教える機会があれば先に伝えておきたいことです。 便利なキー操作や誤りがあればぜひ教えてください。 また、この記事に対してmorimorihogeさんの分かりやすい補完がありますので、ぜひそちらと合わせてお読みください 流れ 1.キーボード操作編 知ってると便利なショートカット。 2.用語・概念編 知ってるとひらめくかも。 3.コマンド編 知っておくべき重要なコマンド、時短になるコマンド。 キーボード操作編 補完機能 Tab連打。 連打すると勝手にlsしてフォルダ内のファイル一覧を教えてくれる。 候補が絞られると勝手に名前を補完してくれる。 入力間違いでもBackspaceやDeleteできない ^H^H^Hや^[[3~、^[[Dが表示されて涙目。 Ctrl + U で入力したものがきれいに消える。 パスワードを

    【学習メモ】LinuxCUI初心者が早く知りたかったコマンド(操作も) - Qiita
    dpprkng
    dpprkng 2017/07/30
  • 【Unity】ソートアルゴリズム12種を可視化してみた - Qiita

    はじめに ソートアルゴリズムの学習として、12種のソートアルゴリズムを実装して可視化してみました。 Unityにはあまり関係がなさそうな話題ですが、Unity上で作ったのでUnityタグをつけます。 バブルソート バブルソートのアルゴリズムは以下のような感じです。 配列の要素を最初から最後まで見ていき、順序が逆の要素があれば入れ替える 全ての要素の順序が正しくなるまで 1.を繰り返す. void BubbleSort(int[] a) { bool isEnd = false; int finAdjust = 1; // 最終添え字の調整値 while (!isEnd) { bool loopSwap = false; for (int i = 0; i < a.Length - finAdjust; i++) { if (a[i] < a[i + 1]) { Swap(ref a[i],

    【Unity】ソートアルゴリズム12種を可視化してみた - Qiita
    dpprkng
    dpprkng 2017/07/13
  • なぜハイレゾは「バカげている」のか - Qiita

    2012年のことだが Xiph.org (Ogg VorbisやFLACの開発元) のクリス・モンゴメリーは 24/192 Music Downloads are Very Silly Indeed 「24bit 192kHz 音楽ダウンロードは当にバカげている」 でハイレゾをバッサリと斬った。非常にわかりやすい記事なので一度は目を通しておくのも良い。 まず記事の要点を説明しつつ、ハイレゾがなぜ全くバカげているのかをわかりやすく説明しよう。 視聴覚とも呼ばれるように、聴覚と視覚は人の認知の重大な要素である。 ここで、「百聞は一見に如かず」ともいうし聴覚と視覚の対応を取ってハイレゾのバカらしさを説明したい。 サンプリングレート 可聴周波数と可視光 まず、人間が見ることのできる可視光線は決まっている。という当然の事実を説明する。以下の図では、可視光のスペクトログラムを示している。 400TH

    なぜハイレゾは「バカげている」のか - Qiita
    dpprkng
    dpprkng 2017/06/12
  • Debian8 でインストール後に暗号化パーティションを作成する - Qiita

    概要 最近の Debian GNU/Linux では、インストール時に暗号化パーティションの作成を選択できるようになっているようです。しかし、インストール後に暗号化パーティションを作成する方法については、適切なドキュメントが見つからなかったので、少し試行錯誤してみました。 暗号化の単位 今回、調査してみたところ、暗号化する単位がいくつか存在することが分かりました。 ディレクトリ単位で暗号化 例えば、あるユーザのホームディレクトリのみを暗号化します。ユーザはログイン時にパスフレーズを入力し、そのユーザのホームディレクトリのみを復号化してマウントします。 物理ボリューム単位で暗号化 物理ボリューム(例えば、/dev/sdb1)単位で暗号化します。システムには複数の物理ボリュームが存在する場合は、LVM の初期化時に複数回のパスフレーズの入力が必要になります。 論理ボリューム単位で暗号化 今回の

    Debian8 でインストール後に暗号化パーティションを作成する - Qiita
    dpprkng
    dpprkng 2017/06/08
  • TensorFlowを中心とした機械学習環境をUbuntuで構築 - Qiita

    目的 TensorFlow(r1.1)を中心とした機械学習環境をUbuntu(16.04LTS)に構築します。機械学習環境はvirutalenvを利用してpython3の仮想環境上に構築します。virutalenvを利用することで、システムのライブラリに影響を与えずに、手軽に機械学習環境を構築できます。Mac版はこちら。 virtualenvを利用してPython 3の仮想環境を構築 Ubuntu 16.04LTS にはデフォルトでPython 3が入っています。そこで、Python 3のパッケージ管理システムのpipと仮想環境を構築するvirtualenvをシステムに導入します。

    TensorFlowを中心とした機械学習環境をUbuntuで構築 - Qiita
    dpprkng
    dpprkng 2017/05/26
  • 機械学習の情報を手法を中心にざっくり整理 - Qiita

    概要 自分用のメモとして、機械学習に関する情報を浅く ( それなりに ) 広くをモットーに、ざっくり整理してみました。 少しでも、他の方の理解に役立ったら嬉しいです。 機械学習とは コンピュータプログラムが経験によって自動的に出力結果を改善していく仕組み。 機械学習の代表的な手法について記載します。 1.教師あり学習 2.教師なし学習 3.強化学習 に分けて記載しました。 ※概要説明は一例です。 1.教師あり学習 1-1.線形回帰 予測したい値を算出する式を連続する多項式として表し、各係数を最小二乗法や最尤推定法で求めることでモデルとなる式を決定する Pythonライブラリ:scikit-learn(sklearn.linear_model.LinearRegression) 参考:最小二乗法による線形回帰のアルゴリズム (自身のQiitaの過去記事です) 1-2.ロジスティック回帰 2択

    機械学習の情報を手法を中心にざっくり整理 - Qiita
    dpprkng
    dpprkng 2017/05/09
  • Linuxでのpage構造体群の配置 - Qiita

    何回か「あれどうだっけ?」と調べるのが面倒なのと、記憶力あまりないので、メモ。(おじさん、記憶力あまりないもんで) 読んだソースはLinux4.10ですが、質的なところは過去のバージョンでもたぶん変わらないのではないかと思います。 Linuxのメモリモデル 「物理RAM空間の連続性」に着目すると、「物理的に連続していたフラットなRAM空間」と「物理的に非連続なメモリホールのあるRAM空間」(例えばx86)に分類できます。 Linuxにおいて、ページ構造体を配置する方式は、4通りあり、カーネルコンフィグで指定します。概要は以下の表のとおりです。 定義名 物理RAM空間はフラット? 概要/備考

    Linuxでのpage構造体群の配置 - Qiita
    dpprkng
    dpprkng 2017/03/29
  • GitBucket / Gogs / Gitea / GitLab のベンチマーク on Raspberry Pi 3 - Qiita

    はじめに 個人的には GitBucket 押しなのだが、Gogs/Gitea が Go で書かれているから速そうだ、とか GitLab の圧倒的な開発力とかが気になっていた。 ならばきちんとベンチマークを取ろうと思ってやってみたので公開する。 なお、環境としてはどこのご家庭にもありがちなマシンということで Raspberry Pi 3B を使ったが、これらのサーバを Raspberry Pi で提供することをオススメしているわけではないのでご注意を(SDカードメディアでリポジトリの管理とか無茶だと思う・・・)。Raspberry Pi だと SD カードのイメージをコピーしておくだけで環境をすぐ元に戻せるのが実験には都合良かった。 環境 名称 Raspberry Pi 3 Model B

    GitBucket / Gogs / Gitea / GitLab のベンチマーク on Raspberry Pi 3 - Qiita
    dpprkng
    dpprkng 2017/03/29
  • 原理原則で理解するbashの仕組み - Qiita

    はじめに 以前書いたエントリー、重大な脆弱性(CVE-2017-5932)で少し話題になったbash4.4の補完機能の便利な点で、bash4.4からでないとタブの補完機能のソート処理が制御できないという問題について、ソースコードレベルで調べた結果をまとめていたのですが、bashの実装そのものを深く掘り下げ過ぎてしまい、内容が膨大になったので、何回かに分けて書こうと思います。 今回はbashが起動されてからインタラクティブモードでキーボードの入力を待ち受けるまでのお話です。普段使っているbashがどのような処理を行っているのか一緒に覗いてみませんか? 検証ソースコード Bash version 4.1.0(1) release GNU bashの生誕 bashのプロセスが起動されるのはOSへのログイン時にユーザーのログインシェルがbashに設定されている場合、あるいはログイン後に明示的にba

    原理原則で理解するbashの仕組み - Qiita
    dpprkng
    dpprkng 2017/03/22
  • JavaScriptで写真を撮りたい(・8・) - Qiita

    ブラウザで写真が撮れたらなぁという場面に出くわしたので、APIを確認したところ、navigator.getUserMedia()は非推奨で、今度からはnavigator.mediaDevices.getUserMedia()を使うようにとのこと 音声、画像をキャプチャするMedia Capture and Streams APIでスナップショットを撮ってみました。 ソースコード ガワの準備 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>MediaDevices.getUserMedia()</title> </head> <body> <button onclick="startVideo()">ビデオ開始!</button> <button onclick="stopVideo()">ビデオ終了!</button>

    JavaScriptで写真を撮りたい(・8・) - Qiita
    dpprkng
    dpprkng 2017/03/16
  • mysqlをdisる会 - Qiita

    はじめに やあ (´・ω・`) ようこそ、バーボンハウスへ。 このmysqlはサービスだから、まずsystemctl start mysqld して落ち着いて欲しい。 うん、「また」なんだ。済まない。 仏の顔もって言うしね、謝って許してもらおうとも思っていない。 でも、このタイトルを見たとき、君は、きっと言葉では言い表せない 「ときめき」みたいなものを感じてくれたと思う。 殺伐とした世の中で、そういう気持ちを忘れないで欲しい そう思って、この記事をかいたんだ じゃあ、注文を聞こうか。 というわけでmysqlをdisります。disるだけなので内容はありません。いいね? mysql には罠がいっぱい そうなんですよ罠がいっぱいなんですよ奥さん。 いやこれはおそらくmysqlに限った話ではないんですけど例えばこういうの! MySQLのチューニングなんてしたらパフォーマンス落ちるだけだし、デフォル

    mysqlをdisる会 - Qiita
    dpprkng
    dpprkng 2017/03/15
  • 2017年のフロントエンドエンジニアならこの程度は知ってて当然だよな? - Qiita

    って海の向こうの人が言ってました。 私はjQueryさえあれば概ね生きていけるので全然知らないけど、 あなたは全部知ってるフロントエンドエンジニアなんだね。すごーい! 以下はFront-End Developer Handbook 2017の第三部、Front-end Developer Toolsからリンクされているツールと、その簡単な紹介です。 ドキュメントツール Dash 150以上のライブラリのAPIリファレンスを検索できる。有料、Mac専用。 DevDocs 200以上のライブラリをオンラインで検索できる。無料。 Velocity 中身はDashと同じ。 有料、Windows専用。 Zeal 200以上略 無料のオフラインドキュメント。 SEOツール Keyword Tool 検索ワードを入れると関連キーワードを教えてくれる。 Google Webmasters Search C

    2017年のフロントエンドエンジニアならこの程度は知ってて当然だよな? - Qiita
    dpprkng
    dpprkng 2017/02/15
  • zfs - 持ってけ ubuntu 16.04 仮想マシン - Qiita

    OneDrive改め埃かぶってたVPSに置いときます。ご自由にお召し上がり下さい。 なにこれ? 何の Ubuntu 16.04 Desktop の仮想マシンです。100% ZFSな点を除いて。 FreeBSDでは10.0-RELEASE以降インストーラーもZFS対応済みなので Pure ZFS なシステムを作るのも実にちょろいのですが、Linuxはまだそこまで行ってません。Ubuntu 16.04 Root on ZFSというドキュメントは上がってますが、これを見た人は「なんて面倒なんだ!」とまたぎするのではないでしょうか。Ubiquityの超絶安楽インストーラーに慣れた人ならなおのこと。 しかし一旦こしらえてしまえば、あとはいつもと変わりません。デフォルトのext4で構築されたシステムと全く同じように apt できますし、同じように 16.10 にも dist-upgrade できまし

    zfs - 持ってけ ubuntu 16.04 仮想マシン - Qiita
    dpprkng
    dpprkng 2017/02/11
  • NASもファイルサーバもいらない!Azure ストレージアカウントの「File Storage」を活用しよう - Qiita

    NASもファイルサーバもいらない!Azure ストレージアカウントの「File Storage」を活用しようAzureAzureStorageAzureFile 概要 Azureを利用していると、ストレージアカウントはお使いになられたことは最低1度はあったかと思います。その中でもよく利用されるのが「BLOBストレージ」や「テーブルストレージ」、場合によっては「キューストレージ」ではないでしょうか。今回はあまり注目を浴びない「ファイルストレージ」のサービスを利用する方法と、オープンソースソフトウェアを組み合わせた実運用的な利用方法をご紹介します。 Azure ファイルストレージって? Azure ファイルストレージは、Azureストレージアカウントのサービスの一つで、SMBプロトコルといういわゆる普通のWindowsファイル共有と同じプロトコルを利用した、ファイル共有サービスの一つです。課金

    NASもファイルサーバもいらない!Azure ストレージアカウントの「File Storage」を活用しよう - Qiita
    dpprkng
    dpprkng 2017/02/03
  • SVN脳患者から見たGit - Qiita

    はじめに 僕はSVN脳患者である。SVN脳とは、SubversionのポリシーでGitを理解しようとしたり、使おうとしたりする病気で、中年プログラマに発症例が多い(気がする)。それまでSubversionを使ったことがない人がGitを使う場合には問題にならなかったことが、SVN脳患者がGitを使おうとすると問題になることが多い。特に、SVN脳を発症したプログラマは、そうでない人に比べてGit学習コストが爆発的に増大する。最初からGitに触れた人は、なぜSVN脳患者がGitを理解できないのかを理解できないだろう。 これは、SVN脳患者である僕1が、なぜGitを長いこと理解できなかったかをつらつら書くポエムである。病人の書いたポエムであるからして、所謂マサカリの類はほどほどにしていただきたい。 以下、「SVN脳患者」という大きな主語を多用するが、要するにこれは僕のことであり、言うまでもなくSu

    SVN脳患者から見たGit - Qiita
    dpprkng
    dpprkng 2017/02/03
  • https://qiita.com/xinolinx/items/0336bcee5926994584f4

    dpprkng
    dpprkng 2017/01/28