サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
災害への備え
qiita.com/sand
SQLModel はPythonコードから SQL databases と会話するためのライブラリです。ここでは FastAPI での使われ方を見ていきますが、FastAPIとは独立したものとして設計されています。 SQLModelはFastAPI の作者が自ら作成しており、SQLAlchemy と Pydantic の両方との互換性を保っています。Pydantic はデータ検証のためのPythonライブラリです。Pythonのtype hintが使われます。ですからPydanticクラスはAPIの入り口であるパスオペレーション関数で使われることが一般的です。 過去記事「FastAPI と SQL Databases(SQLAlchemy)」でFastAPIで SQLAlchemy を使ってSQL Databaseを扱う方法を述べましたが、SQLAlchemy と Pydantic の2重
以下の過去記事でも述べていますが、FastAPIはStarletteを基盤として構築されており、WebSocketのサポートも継承しています。 Starletteで作る Simple Web Server - Qiita WebSocket - FastAPI公式サイト 今回は公式サイトにあるチャットプログラムを少し修正し、特にクライアントは簡単なVueプログラムに置き替えています。 1. クライアント - Vue.js 過去記事のFastAPI OAuth2 クライアント - Qiitaと同じディレクトリ構成で、FastAPIのディレクトリのサブディレクトリstaticにindex.htmlとindex.jsを置きます。 index.htmlは2つのフィールドから構成されています。ログイン画面とメッセージ送信画面です。メッセージ送信ボタンはログインするまでは無効化されています。 <htm
今回はRequest パラメータのバリデーションを取り上げます。パスパラメータとクエリパラメータです。Swagger UIとともに、FastAPIでの開発効率を上げてくれるものです。 【過去記事】 Python Asyncio入門 Aiohttpで作るSimple Web Server - Qiita Starletteで作る Simple Web Server - QIita FastAPIで作るWebアプリ - 基本 FastAPIで作るWebアプリ - validation FastAPIで作るWebアプリ - Body validation FastAPIで作るWebアプリ - Form validation FastAPI 公式サイト 1.パスパラメータ 1-1.型チェック 前回と同じプログラムを使います。 from fastapi import FastAPI app = Fa
Asyncioは、大雑把に言えば、PythonでNodeのような非同期プログラムを行えるようにするモジュールです。Pythonでは、スレッド(concurrent.futures)を用いて並行プログラムを書くことができますが、Asyncioではもう少し軽量の並行プログラムを実現できます。 この辺は「Fluent Python」に詳しいですが、いかんせんAsyncioの箇所は最新のPythonのバージョンで大きく変更されています。以下の公式サイトが貴重な情報源になります。 Asyncio公式サイト ここでは、最も有名なAsyncioライブラリであるaiohttpを使ったソースコードを説明することで、Asyncioの概念を見ていきたいと思います。 aiohttp公式サイト 以下の関連記事を投稿しました (追加 2021/02/13) Django 3.1のAsync Views - Qiita
qiita.com/sandabu
この記事は SkyWay Advent Calendar の20日目です Webカメラの映像をアバターに反映し、その映像をSkyWayに投げて殺伐なテレビ会議を楽しくしちゃうぞ モデルはthree-vrm-girlをお借りしました:kawaii: WebGLはさっぱりなんですが、まずはthree.jsを触ってみようとやってみました SkyWayにMediaStreamを渡すまでがメイン リポジトリは一番下へ 流れ 顔認識 WebCamからVideoStream取得 (face-api.js)学習済みモデルのロード (face-api.js)HTMLVideoElementをInputとして、68landmarks、表情を取得 デバッグ用のcanvasに68landmarksを表示 VRMの表示・モーション制御 (three.js) レンダラ、カメラ、ライティング、シーンの初期化、canva
2023/07/23 更新、 Redux Hook APIに対応 React Reduxをキチンと理解したいという想いを胸にまとめてみました。 まずReduxのコア機能について、そのエッセンスを解説します。 次にReduxをReactに組み込んで使うための、React Reduxというライブラリを解説します。これはReduxの公式サイトにあるTodosアプリを使って行います。 1.Reduxのコア機能 1-1.Reduxのインプリメント 実際にReduxのソースコードをみることで、内部でやっていることを調べてみます。 https://github.com/leonciocaminha/fullstack-react-code/blob/master/redux/counter/complete/reducer-w-store-v1.js 以下のコードが、オリジナルのcreateStoreの
qiita.com/sandopan65
2021/01/01 編集しまして、1.0.0 -> 1.2.0 にしました。 バージョンアップによる変更はそこまでありませんが、個人的に気になったものは以下です。 FreeRDP 2.0 に依存ライブラリが変更(1.1.0) 日本語に対応(1.2.0) Guacamoleって何? https://guacamole.apache.org/ html5を使ってブラウザ経由でvnc、rdpなどを利用できるもののようです。 vnc(virtual network computing) はデスクトップ環境にネットワーク越しからアクセスできる仕組みです。 検証環境など、閉じたネットワークでGUI操作が必要な場合に、踏み台のlinuxサーバに手元の端末からvncで接続すると便利です。 しかし、専用のクライアントが必要だったりします。 今回は仮想マシン上で動作するvncサーバにブラウザからアクセスでき
Djangoは認証やセッションなどが簡単に実装できて便利です。DjangoとReactでWebアプリを構築するときに、ReactでSPAアプリを作れば、Djangoのこのような利点を利用するのが難しくなります。SPAでの認証にはJWTなどを使うのが一般的で少し複雑になります。結論的に言えば、基本的なところはDjangoに全て任せるとして、特定のDjango のページ(Template)をリッチにするためだけに使うのが現実的だと思われます。本記事はこのような考えを実装するための最小限の知識をまとめたものです。以下の記事を参考にしつつ自分なりに再構築しました。 Tutorial: Django REST with React (Django 2.0 and a sprinkle of testing) Webpack 4 Tutorial: from 0 Conf to Production
1.Django Rest API と Reactアプリ 以前、「DjangoのページをReactで作る - Webpack4」という記事を書きました。DjangoのページでReactを使うための、開発環境の構築を紹介したものですが、これはどちらかと言えば、Djangoの開発環境にReactの開発環境を「従わせた」ものでした。BabelやWebpackの設定はDjangoの環境に合わせる形で手動で行いました。 今回はDjangoとReactの開発環境を完全に独立させます。特にReactではcreate-react-appを使いますので、簡単に開発環境を構築できます。 (1)サーバは、DjangoプロジェクトでRest APIを開発・単体テスト (2)クライアントは、create-react-appで開発・単体テスト (3)サーバ側でCORS設定を行い、クライアントからRest APIにアク
jestで非同期関数をテストする - Qiita jest で React component をテストする - Qiita jest で Redux をテストする - Qiita jest で React component をテストするときはスナップショットテストを使います。またEnzymeを使えば、jQueryの様にDOMアクセスが可能となり、DOMのテストが行えます。 1.通常のJavaScriptのテスト まずはjestの復習の意味を込めて、簡単なJavaScriptのテスト環境を構築します。Getting Started テストディレクトリを作成しjestをインストールします。
世間はサマータイム導入の議論で盛り上がってますが、Timezoneとかってつらいですよね。 プロジェクトが国内サービスと確定しているならDBもApp側(Laravel)もTimezoneをJSTとするのがわかりやすいです。 しかし、国際対応など考えるとDBにはUTCで格納してAppはJSTとして扱うのがスケールするときにも良いですし、なにより精神衛生的にスッキリするかと思います。 主にEloquentによってAppとDBを繋いでいるのですが、ここらへんのTimezoneの違いをどのように吸収すればいいのか調べて実装してみました。 解決法(timestamp型カラム)
qiita.com/sand_bash
swapon: /var/swpfile: insecure permissions 0644, 0600 suggested. って言われたので、chmodの記述を追加 おそらく記事書いた当初はCentOS5/6系で試したからかと。(古すぎ) 拡張の流れ。 余っているDisk領域をddでファイル作って確保。 mkswapコマンドでswapファイルに変換。 swap onコマンドで有効化。 freeコマンドとswaponコマンドで確認。 拡張方法。 0.事前確認。 # free -m total used free shared buffers cached Mem: 7872 7728 143 0 15 3325 -/+ buffers/cache: 4386 3485 Swap: 4095 3 4092 # swapon -s Filename Type Size Used Prior
qiita.com/sandream
このページはDjango公式サイト並びに、DjangoGirlsチュートリアルを参考にしてまとめています。 記事者環境:Win10 Python3.5.1 Djangof1.11.8 モデルは、保存したいデータを表すデータを表すデータフィールドと、挙動を定義します。 通常、1つのモデル = 1つのデータベーステーブルに対応しています。 モデルの基本 ・アプリディレクトリ内に生成されるmodels.pyが基本ファイルです。 ・各モデルはPythonのクラスで、django.db.models.Model のサブクラスです。 ・モデルの各アトリビュートの値は、データベース上のあるフィールドを表現します。 ・モデルの情報をもとに、DjangoはデータベースAPIを自動生成します。 モデルの定義 例(Django公式サイト: from django.db import models class P
1.Callbackパターン 以下がcallbackのみを使ったパターンです。readFileのCallbackの中でwriteFileを呼んでいます。writeFileのCallbackの中で最終的な処理の成否がわかります。 const fs = require("fs"); fs.readFile("ttt.txt", (err,contents) => { if(err) { console.log(err); return; } fs.writeFile("ttt2.txt", contents, (err) => { if(err) { console.log(err); return;} console.log("書き込み成功!"); }) }) このパタンの悪いところは、処理が長くなるにつれてCallbackの入れ子が深くなり読むに堪えないコードになっていくことです。今回は2
D3.jsで日本地図を描くときの基本(geojson) D3.jsで埼玉県地図を描くときの基本(topojson) D3.jsで埼玉県の地図上に市町村ラベルを描く 前回はGeoJSONフォーマットのデータを使って、D3.js(v4)で日本地図を描く方法を紹介しました。今回はTopoJSONフォーマットのデータを使って地図を描く方法を紹介したいと思います。同じ日本地図ではアレなので、今回は埼玉県の地図を描くことにします。 今回作成した埼玉県地図 https://s3-ap-northeast-1.amazonaws.com/kuki-app-bucket/japanmap/saitama.html 1.TopoJSONについて GeoJSONは経度緯度の配列をデータとして持っていて、ポイントやライン、ポリゴンを描くことができました。TopoJSONはアーク(弧線)の配列を持っています。しかも
D3.jsで日本地図を描くときの基本(geojson) D3.jsで埼玉県地図を描くときの基本(topojson) D3.jsで埼玉県の地図上に市町村ラベルを描く D3.jsは便利で地図も簡単に描けますし、さらに高度なこともできます。ここでは基本的なことをまとめたいと思います。D3 v4で動作するソースコードを示します。サイト上にはD3 v3のものが多く、参考になるものが少なかったため誤りがあるかもしれませんがご了承ください。 今回作成したD3.jsプログラム https://s3-ap-northeast-1.amazonaws.com/kuki-app-bucket/japanmap/japan.html 1.データの入手 地図のデータは通常shapefileのフォーマットとして提供されていることが多いようです。それをWebに描画する時は、GeoJSONフォーマットに変換して使います。
例えばダッシュボードとかのページを作るときに、複数のチャート Componentを組み合わせて、1画面を作る必要があります。このような時はReact+D3.jsの組み合わせが第一候補となるでしょう。しかしReactはVirtual DOMを扱うライブラリであり、D3.jsもDOM(SVG要素)を直接扱うライブラリです。この2つを組み合わせて使うには、バッディングしないように明確な仕切りを行う必要があります。大きな流れとしてはReactで作ったDOM要素を、D3.js関数に渡してチャートを描きます。DOM要素を作り出すまではReactの仕事で、そのDOM要素をもらってチャート描く関数はD3.jsの仕事です。以下が今回作ったサンプルです。 http://react-d3-app.s3-website-ap-northeast-1.amazonaws.com/ まず以下のコマンドで環境を作ります
埼玉県は日本で一番市町村が多い県だと聞いています。平成の大合併の前の知識なので現在もそうであるかは知りません。しかし市町村が多いことは確かで、同じ県に住んでいてもとても把握できません。今回は埼玉県の公式ホームページから最新のデータをExcel形式で取ってきて、ツリーマップで表示して見ましたのでご紹介します。以下のURLでツリーマップが参照できます。ツリーマップの使い方や効果を確かめたいのが動機でしたが、人口に視点を置いた時の市町村の存在感が直感的に把握できるのが実感できました。 https://s3-ap-northeast-1.amazonaws.com/kuki-app-bucket/saitama/treemap-saitama.html ※(参考)また同じデータから以下の2種類のグラフも描いてみました。 付録1:埼玉県市町村ツリー https://s3-ap-northeast-1
AWS+Reactアプリ作成入門(Cognito編) AWS+Reactアプリ作成入門(S3編) AWS+Reactアプリ作成入門(DynamoDB編) AWS+Reactアプリ作成入門(IAM Role編) AWS+Reactアプリ作成入門(ログイン後のAdmin編) 今回作成したアプリ ==>久喜SNS AWSを使って簡単なWebアプリを作り、結構苦労したところがありましたのでその部分を中心に備忘録もかねて書いていきたいと思います。個人的には、Webアプリを作るのはMeteor+Reactの環境が最強だと思っていますが、(2018年12月08日現在、Phoenix/Elixir+Elmが最強かなと思っています。) 画像の保存やシステム環境の信頼性を考えればAWSの利用も強力な選択肢です。ただ使ってみた感想はCognitoの認証やDynamoDBは癖が多くてハードルが高かったです。一度覚
Puppeteerのnode apiを使ったサンプルプログラムを作り、ヘッドレスChromeを操作してみましたので報告します。 先日、Google Chromeにヘッドレス機能が追加されました。GUI無しにコマンドラインからChromeを操作できるようになったわけです。 https://developers.google.com/web/updates/2017/04/headless-chrome?hl=ja ちょっと前まではnodeからこのヘッドレスChromeへアクセスするにはchrome-remote-interfaceなどが必要でしたが、最近Puppeteerというものが現れてもっと簡単にヘッドレスChromeを操作できるようになりました。 https://github.com/GoogleChrome/puppeteer 公式サイトにあるPuppeteerの使い方 スクリーンシ
インフラエンジニアの方なら、調査の時に下記のような感じでawk のprint文を使ってログファイルから必要なフィールドだけ取り出すことも多いと思う。 # awk '{print $1,$4,$5}' /var/log/httpd/access_log 46.161.9.4 [07/Feb/2016:03:55:32 +0900] 133.130.88.115 [07/Feb/2016:03:58:13 +0900] 142.54.169.164 [07/Feb/2016:04:06:17 +0900] 133.130.88.115 [07/Feb/2016:04:08:13 +0900] 133.130.88.115 [07/Feb/2016:04:18:14 +0900] 157.7.137.160 [07/Feb/2016:04:28:13 +0900] 133.130.88.115
MySQLにはOracleなんかと違ってROW_NUMBER関数がないので、ユーザ変数を使って振ってやる必要がある。 便利なのでメモ。 普通にSELECTした結果。 mysql> SELECT TABLE_NAME FROM information_schema.TABLES LIMIT 10; +---------------------------------------+ | TABLE_NAME | +---------------------------------------+ | CHARACTER_SETS | | COLLATIONS | | COLLATION_CHARACTER_SET_APPLICABILITY | | COLUMNS | | COLUMN_PRIVILEGES | | ENGINES | | EVENTS | | FILES | | GLOBAL_
qiita.com/sandinist
At first このページは「RICOH THETA Advent Calendar 2015」17日目のページです RICOH THETA S ではカメラをプログラムから操作するAPIが提供されています このモデルから、Open Spherical Camera準拠のAPIが提供されている 以前のモデルより、簡単に任意のプログラミング言語から操作を行える いろいろな言語でTHETA S の OSC APIを叩いてみた!という内容です このページが THETA S のAPIを叩いてみようという人の参考になると幸いです RICOH THETA API V2 開発者向けのページがあり、リファレンスとフォーラムが公開されています。 本ページではGetting Startedを元にしつつ、下記のAPIを実際に叩いた例を示します カメラ本体の情報取得 GET /osc/info セッション開始 P
特定のURLスキーム(mail:等)を指定して、該当するアプリケーションを開く。受け渡しできるのはURL文字列のみ。
その2はこちら サービス概要 遠くの場所を、リアルタイムに360度体験できるサービスをなるべく簡単に作ります。 ゴールイメージ 作成したアプリの入ったiPhoneとTHETAを持って旅にでる 家で待っている人が、旅先の風景をOculusでリアルタイムに360°体験できる 使ったもの Hardware THETA m15 Oculus Rift DK2 iPhone 6 MacBook Air (13-inch, Mid 2012) Software Unity 5.0.0f3 サービス全体像 Unity App 編 今回はいよいよ (3)Unity App 部分をつくります。 前提条件 その1、その2ができてること Unity がインストールされていること Oculus Rift DK2 があること 開発の準備 下記のURLなどを参考にOculus Riftの開発環境を整えましょう * U
サービス概要 遠くの場所を、リアルタイムに360度体験できるサービスをなるべく簡単に作ります。 ゴールイメージ 作成したアプリの入ったiPhoneとTHETAを持って旅にでる 家で待っている人が、旅先の風景をOculusでリアルタイムに360°体験できる 使ったもの Hardware THETA m15 Oculus Rift DK2 iPhone 6 MacBook Air (13-inch, Mid 2012) Software Ruby 2.1.5 Rails 4.1.8 Unity Xcode 6.1 サービス全体像 Ruby on Rails App - ローカル編 はじめに (2)の Rails App を作ります。 まずは、ローカルで写真のアップロード・ダウンロードができるAPIを作りましょう。 前提条件 ruby がインストールされていること https://www.rub
qiita.com/sandlife@github
はじめに 機械学習 (Machine Learning)って何だろう? 「機械」が「学習」するの? 「機械」ってロボットとかAIとかいうやつ? どうやって「学習」するの? 普通の人には分からない何かで出来てるの? そもそも何なの?! という疑問とか質問とか苛立ちがある人はきっといると思います。(少なくとも僕はそう思ってる) それについてざっくり答えてみます。 何に使われてるの? 色々使われてる。本当に色々なところで使われている。 例えば、Amazonとかのオススメ機能とか。 (例: 伊藤計劃の『虐殺器官』を買ったら、フィリップ・K・ディックの『アンドロイドは電気羊の夢を見るか?』がオススメされたり) 後は下の例を見てください。 日常にある機械学習の応用例 で、一体何なの? 困ったら、Wikipediaを見てみましょう。 http://ja.wikipedia.org/wiki/%E6%A9
このページを最初にブックマークしてみませんか?
『@sandのマイページ - Qiita』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く