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

  • Microsoft Bot FrameworkのDirect Line APIの簡単まとめ - Qiita

    Microsoft Bot Frameworkには、ボットのインターフェースとしてSkype, Slack, Facebook, Teamsなどの他に、単純なREST APIとして呼べるDirect Lineが用意されています。 Second Lifeのオブジェクトの周りで喋ったら反応するボットのスクリプトを書いたついでに、現時点でのDirect Lineの使い方を整理してみました。 サーバ側の準備 Botを稼働させるサーバを用意 インターネットからアクセスできれば(理論上は)何でも良い 特にこだわりがなければAzureにした方が楽 Botサーバ部分の開発 C#.NETかNode.jsにすると、SDKがあって楽 ローカルでテスト Bot Emulatorをインストール ここに書かれている通りに、ngrokを連携させておく これを怠るとサーバにデプロイした後の確認でハマる サーバにデプロイ

    Microsoft Bot FrameworkのDirect Line APIの簡単まとめ - Qiita
    dinozeng
    dinozeng 2019/04/17
  • Facebook製のJavaScriptテストツール「Jest」の逆引き使用例 - Qiita

    はじめに みなさん、日頃JavaScriptのテストはどのように行っていますか? 昨今ではAngularJSやReactJSを始め、JavaScriptのフレームワークやライブラリを使用してのフロントエンドの開発が当たり前のようになってきております。 ではそのフロントエンドJavaScriptのテストはどんなツールを使っていますか? mochaやpower-assert、chaiKarma、Jasmine等を組み合わせて使用してテストしているでしょうか。 前置きが少し長くなりましたが、Facebookが開発したオールインワンな「Jest」というツールのReactでのHowto的な使い方から実際のテストでの使用例を交えて紹介したいと思います。 ちなみにこのJest、最近リリースされて話題になったパッケージ管理のYarnでも使われています。 対象バージョン Jest:22.0.4 Reac

    Facebook製のJavaScriptテストツール「Jest」の逆引き使用例 - Qiita
    dinozeng
    dinozeng 2019/03/22
    “increment(”
  • 何も知らない子がレスポンシブデザイン入門 - Qiita

    前提 ・普段そんなにフロントやってない ・レスポンシブデザインってなによ ・モバイルファーストなんでしょこれからは ・モバイルはもうスマホって言いかえるよ レスポンシブデザインって ・複数の端末の画面サイズに対応するWebサイトづくりのこと ・単一のファイルで制作し、端末や画像サイズで適時変化するようにする手法 ※スマホ用とPC用でデザインを分けるのは違う ・複数ファイルによるURLの分散が防げるのはもちろん、更新なども容易になる レイアウトの種類 リキッドレイアウト ボックスの要素が端末に応じて伸縮して伝えられる。 要は常に、横幅いっぱいにブロックが表示される感じ。 フレキシブルレイアウト リキッドレイアウトと基変わらない。 ただし、最小幅と最大幅の制限があり、 最大幅以上のときは余白が出来るような作り。 グリッドレイアウト メイン部はリキッドなどで。 一部のボックスを固定サイズとして

    何も知らない子がレスポンシブデザイン入門 - Qiita
    dinozeng
    dinozeng 2019/03/14
  • javascriptでhtml要素を複数追加するときの【ひと目で分かる】書き方 - Qiita

    やりたいこと javascripthtml要素を追加するときに【一目でわかる様に】書きたい。 追加するもの li要素の中にはdiv, input, a,の3つの要素が入れて ul要素の中にli要素を入れる。 イメージはこんな感じ li << (div, input, a) ul << li ひと目で分かるとは? javascriptのファイル上で、まるでhtmlファイルを見ている様なコード。 実際のjavascript上のコード 基方針 文末の + で繋げつつ、インデントの様に書く 変数以外を文字列として書く 変数は扱いが厄介なので後で.findを使って入れる function appendSeacrhList(name, id){ $( '<li class="box">' + '<div class="searched_user"></div>' + '<input type="h

    javascriptでhtml要素を複数追加するときの【ひと目で分かる】書き方 - Qiita
    dinozeng
    dinozeng 2019/03/04
  • IBM Watson Assistant (Conversation) 書き方 Tips - Qiita

    IBM Watson Assistant は簡単に説明するとチャットボット用のフレームワークですが、原理的にはこれまた簡単に説明すると「IF (条件・コンディション) THEN (レスポンス)」をひたすら書いていくのが基です。 ただ、入力される自然言語テキストは当然ですが入力パターンが非常に多く、全部の入力パターンに対して(条件・コンディション)を設定していたのではキリがありませんし、AIっぽくもなんともないのです。そこで(条件・コンディション)部に機械学習の機能を入れ込んでいるのが、IBM Watson Assistantのよいところです。(※個人の意見です!w) ところがコンディション部にはけっこういろいろな記述方法が用意されているので、そこの部分までまとめたのが以下の記事になります。 コンディション部 入力が「A」に等しい

    IBM Watson Assistant (Conversation) 書き方 Tips - Qiita
    dinozeng
    dinozeng 2019/02/21
  • 30分ですぐ動く! Watson Assistant(旧Conversation)用サンプルアプリ - Qiita

    Watson Assistant用サンプルアプリケーション Watson APIのAssistant(旧Conversation)は、機械学習モデルによる意図分類を含んだチャットボットのフローを簡単に作れるAPIです。 しかし、このフローを番の環境で動かすためには、APIの機能でカバーできていないユーザーインターフェイス用のアプリケーションサーバーを別途立てる必要があり、そのための開発も必要でした。 このサンプルアプリケーションは、この問題を解決するためのものです。 具体的には、Waston Developers Cloud上で公開されているサンプルアプリを番で使えるよう修正した上で、いくつかの便利機能を追加しています。 次の点が特徴となっています。 番ですぐに使えるUI 元のサンプルアプリではデバッグ用のペインが表示されていて番利用が難しかったのですが、この表示をなくし、すぐに

    30分ですぐ動く! Watson Assistant(旧Conversation)用サンプルアプリ - Qiita
    dinozeng
    dinozeng 2019/02/06
  • DjangoにLinebotを実装してみた①(応答Bot編) - Qiita

    dinozeng
    dinozeng 2019/01/30
    chatbot/django
  • Watson Conversationをwebで動かして確認する方法 - Qiita

    dinozeng
    dinozeng 2019/01/30
    chat-bot
  • Django データベース操作 についてのまとめ - Qiita

    この記事について Djangoのデータベース操作について網羅している日語の記事が無かったので自分でまとめてみる。 Djangoのデータベース操作 DjangoではORM(オブジェクト関係マッピング)を使ってデータベース操作を行う。 DjangoORMの実装はActiveRecordパターンを採用している。 RubyOnRailsのActiveRecordと同様に以下のような機能があり、最低限の記述で簡易にデータベースを扱うことができる。 ・モデルを設計すればマイグレーション機能でDB定義を自動作成する。 ・SQLの記述は不要。モデルマネージャ経由でクエリを実行するとレコードをモデルのインスタンスとして扱える。 ・クエリは人間に読みやすく命名されたマネージャメソッドの連鎖として表現する。等 参考:ActiveRecord入門 - Qiita https://qiita.com/kimio

    Django データベース操作 についてのまとめ - Qiita
    dinozeng
    dinozeng 2018/12/26
  • asciidoctor-pdfでかっこいいPDFを作る(1) - Qiita

    追記4(2022/10/8) asciidoctor-pdf 2.0あたりでテーマファイルを指定する引数が変更されています。 この記事で紹介しているテーマファイルの指定方法ではうまくかなくなっています。 対応方法については、このことを気づかせてくれた記事「 asciidoctor-pdfでのテーマファイルの指定」を参照することをお勧めします。また、テーマの各パラメータにも変更があります。そちらは、asciidoctor-pdfのテーマファイルのリファレンスを見れば解決できるでしょう。 追記3(2021/07/12) この記事の説明は、asciidoctor-pdfの1.5.x までに対応したものです。 それ以外の体裁に関するテーマの設定は、まだ使えると思います(全部は確認していませんのであしからず)。 asciidoctor-pdfの1.6以降では、 asciidoctor-pdf-cjk

    asciidoctor-pdfでかっこいいPDFを作る(1) - Qiita
    dinozeng
    dinozeng 2018/12/19
  • Nginx での 413 Request Entity Too Large エラーの対処法 - Qiita

    アップロードしようとしたデータサイズが大きいと怒られているので上限値を上げます。 client_max_body_size を下記のように配置します。 http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { client_max_body_size 20M; listen 80; server_name localhost; # Main location location / { proxy_pass http://127.0.0.1:8000/; } } }

    Nginx での 413 Request Entity Too Large エラーの対処法 - Qiita
    dinozeng
    dinozeng 2018/12/14
  • Djangoの既存プロジェクトをec2にデプロイ - Qiita

    概要 詰まりまくったのでメモ。Dockerで開発していたのでそのままデプロイしたろ!と思っていたが意味わからなすぎて断念。(おそらく?)一般的な方法でデプロイした。もっと良い方法があれば教えて欲しい限りです。 環境 OS: Amazon Linux AMI release 2017.09 ローカル: Docker Python: 3.6.2 Django: 1.11.5 Gunicorn: 19.7.1 Nginx: 1.12.1 AWSの設定 インスタンスの作成 AWSの設定はAmazon Web Services 基礎からのネットワーク&サーバー構築を参考にした。 AWSに登録してコンソール > EC2からインスタンスを作成する。全部デフォルト。t2microなら無料。 VPC、サブネット、ルートテーブル、ゲートウェイ、セキュリティグループやらが作成される(はず)。なかったら作ってVP

    Djangoの既存プロジェクトをec2にデプロイ - Qiita
    dinozeng
    dinozeng 2018/12/13
  • CentOSにnginxをインストールする方法 - Qiita

    問題点 nginxのリポジトリが登録されてない場合、yum install nginxコマンドの結果がNo package nginx available.となりginxがインストールできない # yum install -y nginx Loaded plugins: fastestmirror base | 3.6 kB 00:00 extras | 3.4 kB 00:00 updates | 3.4 kB 00:00 (1/4): base/7/x86_64/group_gz | 155 kB 00:00 (2/4): base/7/x86_64/primary_db | 5.6 MB 00:01 (3/4): updates/7/x86_64/primary_db | 7.8 MB 00:01 (4/4): extras/7/x86_64/primary_db | 191 kB

    CentOSにnginxをインストールする方法 - Qiita
    dinozeng
    dinozeng 2018/12/06
    “[nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=0 enabled=1”
  • Python Django入門 (1) - Qiita

    はじめに なぜPythonを選ぶか かなり独断と偏見が入っていますが、 シンプルな言語セット 某言語のように、呪文のように短く書けることが命ではない。 それでいて、書くコード量は少なく、すっきりしている。 某言語のように、記号を多用しない。 コードを書いている間Shiftキーを押しっぱなしにならない。 学習コストが低い。 言語セットとしての文法は、わりと平易で、直感で理解できる。 難しい書き方は、後から覚えればよい。 文法書を読むのは、後からでいいでしょう。まずこの講座をやってみましょう。 Djangoフレームワークや、各種Pythonパッケージのソースを読んでも、 言語仕様を駆使した難しい書き回しは少ない。 メンテナーでなくても意外と読める。 なぜDjangoを選ぶか Pythonで作られたフルスタック・フレームワークであるということ。 必要なものはすべて揃っている。 テンプレートはあれ

    Python Django入門 (1) - Qiita
  • Visual Studio Code で UML を描こう! - Qiita

    この記事では、Windows 環境に Visual Studio Code と PlantUML をセットアップする手順を説明します。 PlantUML とは PlantUML は、以下のような図をテキストで素早く描くためのオープンソースプロジェクトです。 シーケンス図 / Sequence diagram ユースケース図 / Usecase diagram クラス図 / Class diagram アクティビティ図 / Activity diagram コンポーネント図 / Component diagram 状態遷移図 / State diagram オブジェクト図 / Object diagram 環境 下記の環境で動作確認しました。 Windows 10 Pro (64bit) Visual Studio Code 1.11 Java SE Runtime Environment

    Visual Studio Code で UML を描こう! - Qiita
  • 正規化の要点を理解する - Qiita

    この場合営業部の部長は社員によって異なる人物となっており矛盾が発生しています。 つまりこのテーブルは更新の仕方によっては矛盾が発生しうる設計となっています。 上記で矛盾が起きたのは、複数のレコードが同じ部長名という情報を持っていたことが原因です。 RDBにおいて矛盾が発生しうる原因はこのようなデータの重複です。 正規化を正しく行うことで、データの重複を排除し、矛盾が発生しないテーブル設計とすることが出来ます。 正規化によって得られるもの 正規化を正しく行うことで、DB上での矛盾の発生を設計レべルで防ぎ管理が容易なテーブル構造とすることが出来ます。 容易になることで色々なメリットを享受できますが、ここではコスト削減という点を見てみます。 DBは必ずしも正規化を行わないと矛盾を防げないわけではありません。 データに矛盾があるDBはそもそも使い物にならないため、業務においては正規化していようがし

    正規化の要点を理解する - Qiita
  • インフラエンジニアとしてよく使うコマンド集 - Qiita

    私がよく使うコマンド集となります。 参考に頂けたら幸いです。 随時更新するかと思います。 コマンドを打つ前に覚えておく事 ①サーバに負荷がかかるコマンドを打つ場合、下記をコマンドの先頭に付けましょう $ ionice -c 2 -n 7 nice -n 19 # -c 2:ディスクI/Oの実行優先度をベストエフォートで実行 # -n 7:さらにこのコマンドの優先度を低くする # -n 19:プロセスの実行優先度を一番低くする

    インフラエンジニアとしてよく使うコマンド集 - Qiita
    dinozeng
    dinozeng 2018/11/14
    インフラ用コマンド
  • Linuxよく使うコマンド - Qiita

    ファイル・ディレクトリの参照 -a 隠しファイルの表示 -l Long形式で出力 -t 最終修正時間で並び替え -r 逆順

    Linuxよく使うコマンド - Qiita
    dinozeng
    dinozeng 2018/11/14
    よく使用するlinuxcomand
  • vimで文字が削除出来ないと思ったらバックスペースが効かなくなった - Qiita

    はじめに vimを最新版にしようといろいろいじってたらおかしくなりました。 vimでインサートモード中はバックスペースが効くのですが、文字入力後に一度ノーマルモードに戻って、もう一度インサートモードになって先ほどの文字を消そうをすると消 え な い 。 対策 以下のコードを.vimrcに記述して解決しました。 コントロールコード ちなみに、vimでコマンドラインモードになってバックスペースを入力すると^Hと入力されてしまいました。 この^Hというのは コントロールコード と呼ばれるものです。 制御コード とも呼ばれますね。同じ意味です。 キーバインドを変更する時などにコントロールコードを入力しなければならない場合があります。 表示上では^Hとなっていますが、この文字通りに入力してもコントロールコードとしての意味を持ちません。 vimで入力する場合は、Ctrl + vを押してバックスペースや

    vimで文字が削除出来ないと思ったらバックスペースが効かなくなった - Qiita
    dinozeng
    dinozeng 2018/11/14
    vi削除
  • AsciiDoc入門 - Qiita

    AsciiDocとは AsciiDocMarkdownなどのような軽量マークアップ言語の一つです。 利用例 Pro Git book - Github オライリーの書籍 Clojure Cookbook - Github Programming Scala Mastering Bitcoin - Github Open Government - Github O’Reilly Atlas Neo4j documentation - Github Git User's Manual なぜAsciiDocを使うのか 表現力と可読性 技術文書を書く場合HTMLは汎用性が高いが可読性が低い、一方Markdownは可読性が高いがテーブル記法がないなど表現力が乏しい。 AsciiDocは可読性が高く表現力もある程度高いので、技術文書等を書くには最適である。 表現力:HTML > AsciiDoc >

    AsciiDoc入門 - Qiita
    dinozeng
    dinozeng 2018/11/14
    編集用