2015年6月27日土曜日

Javascript: 文字列→数値変換

http://lealog.hateblo.jp/entry/2013/02/28/005010

Javascript: CSVファイルの読み込み

http://home.a00.itscom.net/hatada/js01/ajax/ajax01.html

Python: バックスラッシュの表示

ダブルバックスラッシュ
http://jutememo.blogspot.com/2008/10/python-row-stirng.html

Python: 文字列置換

replace
http://orangain.hatenablog.com/entry/20100503/1272900555

SQLite: データベースのデータ構造を確認する

とりあえず全部ゲットならnameのところをアスタリスクに
http://stackoverflow.com/questions/305378/get-list-of-tables-db-schema-dump-etc-in-sqlite-databases

項目別のリスト
http://program.station.ez-net.jp/special/sql/sqlite/columns.asp

HTML: 一定時間でリロード(Refresh)

http://www.tagindex.com/html_tag/page/meta_refresh.html
metaデータを使う

HTML: キャッシュのクリアについて

だいたい書いてあることは同じ
http://qa.atmarkit.co.jp/q/6365
 http://hungred.com/how-to/tutorial-stop-caching-jquery-javascript/

で、クエリーを変更する(「違うファイルですよー」)も常套手段
http://yuki.silk.to/2006/04/000170.html

jQuerryを使うのは試していない
http://www.koikikukan.com/archives/2011/08/29-015555.php

2015年6月12日金曜日

Mac, shellスクリプトで自動スクリーンショット

screencaptureを使って60秒毎にスクショを取るサンプルコード
http://yumulog.hatenablog.com/entry/2014/10/30/230110

screencaptureコマンドの詳細
http://qiita.com/South_STR/items/f4624134726eca839647

Python, Facebookページに投稿する

このチュートリアルがシンプルでわかりやすい
http://nodotcom.org/python-facebook-tutorial.html
よくあるエラーの一例
http://stackoverflow.com/questions/8823049/facebook-graph-api-error
'publish_stream'とここでは書いてあるが'publish_pages'のことだと思われ(バージョンの問題かな)

このexampleに従うと「自分のアカウント」で投稿する
http://stackoverflow.com/questions/24052651/python-facebook-sdk-post-to-page
そのときのエラーの一例
http://stackoverflow.com/questions/19535885/oauth-exception-200-while-trying-to-post-to-groups-after-recent-facebook-mainte
「アプリの設定」でアプリ自体のpublicへの投稿を許可しておく必要がある(only meではダメ)

Facebookページへの写真投稿についてはハマった
HTTPのリクエストを自力で作るやつが結果的には容易だった
http://stackoverflow.com/questions/17691636/uploading-photos-or-videos-to-facebook-using-python
ここにあるのはvideosの例だけどphotosに書き換えればよい
あとは前述のこれ、
http://nodotcom.org/python-facebook-tutorial.html
のサンプルへの注記にあるようにappへのaccess tokenではなく、Facebookページに対するaccess tokenをゲットすればページ管理人として投稿できる

参考Graph APIのphoto部分のリファレンス
https://developers.facebook.com/docs/graph-api/reference/page/photos/ 

Facebook-SDKのリファレンス(post_wallはいいんだけどput_photoは使えなかった)
http://facebook-sdk.readthedocs.org/en/latest/api.html#put-photo
リファレンス全体(root node)
https://developers.facebook.com/docs/graph-api/reference/

http://facebook-sdk.readthedocs.org/en/latest/api.html#class-facebook-graphapi

2015年5月29日金曜日

Python: 文字列内に特定の文字が何個あるか数える

http://www.pythonweb.jp/tutorial/list/index10.html

JSONファイルを取り込む

色々な手段があるのだろうが、一番簡単で上手くいったのはコレ
http://www.openspc2.org/JavaScript/Ajax/Ajax_study/chapter03/006/index.html
サンプルコード内で参照しているxmlhttp.jsとやらはこちらに
http://www.openspc2.org/JavaScript/Ajax/Ajax_study/chapter02/005/index.html



jQueryの有望なようなんだがシンプルな解答にたどり着けなかった
http://directorblog.jp/archives/50960177.html

Node.jsもしかり。


機械学習に関する読み物

読む時間が無いので一旦リンク保存

http://gihyo.jp/admin/serial/01/aws_rsmu/0005


http://sssslide.com/www.slideshare.net/takahirokubo7792/ss-46471269

smart sensor

smart sensorに関する読み物
読む時間が無いので一旦リンク保存



open data

World Bank
http://datacatalog.worldbank.org/

San Mateoの環境データベース
https://data.smcgov.org/browse?category=Environment


Google Maps APIでオーバーレイ部分の消去

「非表示」ではなく「消去」
http://phpjavascriptroom.com/?t=ajax&p=googlemapsapiv3_overlays#a_remove
要するに参照先のデータアレイを空っぽにしてしまうということのようだ
mapオブジェクト自体を初期化すると地図自体をリロードするので(一度真っ白になる)見ててウザい。この方法が好ましい

2015年5月27日水曜日

Google Maps APIでのLatLngの使い方

https://developers.google.com/maps/documentation/javascript/reference#LatLng

Javascriptの基礎

デバッグ
http://postd.cc/how-to-not-hate-javascript-tips-from-the-frontline/

色々リファレンス
http://www.ajaxtower.jp/js/

オブジェクトの取り扱い
http://d.hatena.ne.jp/nattou_curry_2/20090801/1249109261

演算子
http://ja.wikibooks.org/wiki/JavaScript/%E6%BC%94%E7%AE%97%E5%AD%90

配列の最後に要素を追加
http://www.24w.jp/study_contents.php?bid=javascript&iid=javascript&sid=array&cid=008

Google Maps API "Heatmap Layer"

Google公式ガイド
https://developers.google.com/maps/documentation/javascript/heatmaplayer?hl=ja
APIリファレンス
https://developers.google.com/maps/documentation/javascript/reference#HeatmapLayer

HTML + JSのサンプル
https://developers.google.com/maps/documentation/javascript/examples/layer-heatmap
http://jsfiddle.net/EBQQH/
http://www.joyofdata.de/blog/interactive-heatmaps-with-google-maps-api/

Earthquake Mappingを事例にした説明
https://developers.google.com/maps/tutorials/visualizing/earthquakes?hl=ja


Google Maps APIを拡張した独自のAPI?(試してない)
http://www.heatmapapi.com/sample_googlev3.aspx



2015年4月10日金曜日

Pythonで半透明のpngファイルを作る

PILの使い方

http://qiita.com/suto3/items/87af35517f2a8c3bc22e


アルファ設定について
https://showa-yojyo.github.io/note/python-pil.html

Parse SDK for iOS

ここから落とした
https://www.parse.com/apps/quickstart#parse_data/mobile/ios/native/new
いろいろ抜けてるので追記必要

いきなりシミュレータが落ちた
setApplicationIdを追記したらok
http://stackoverflow.com/questions/26808248/parse-ios-sdk-you-have-to-call-setapplicationidclientkey-on-parse-to-config
よくよくみたら公式チュートリアルにも書いてあった。。。

オブジェクトの使い方を読めばだいたい必要なことはこなせる
https://www.parse.com/docs/jp/ios_guide#objects

iOSアプリの作り方を一個一個勉強する

storyboardの使い方の超基礎
http://techacademy.jp/magazine/1825

ボタンアクションを学ぶためにこれを続けて読んでみた
http://www.kyoji-kuzunoha.com/2013/02/xcode-app-4.html

Parseはここを読んだらだいたいわかった
https://www.parse.com/docs/jp/ios_guide#objects

2015年4月3日金曜日

Arduinoで時間測定

1回実行時の測定と2回実行時の測定をすることで
差分でmills()コマンドの分を消すというノウハウ
http://homepage3.nifty.com/h-machida/digitalRead.html

2015年3月28日土曜日

気圧センサ

BMP085を使ったモジュールはけっこう色々売ってる。
3.3VのLDOを含んだもの、I2Cのレベルシフターを含んだもの
逆に言うと自分がどれを買ったのか注意が必要
https://www.adafruit.com/products/391

Adafruitのライブラリ
https://github.com/adafruit/Adafruit-BMP085-Library

BMP083のデータシート
http://www.adafruit.com/datasheets/BST-BMP085-DS000-06.pdf

接続は単純にWire.hで使うI2Cのポートに入れるだけ
http://blog.simtronyx.de/en/sensors-pressure-and-temperature-measurement-with-the-bmp085-gy-65-breakout-board/

海抜も測ることができて、理屈はここに書いてある
https://www.sparkfun.com/tutorials/253
ただしその日その時の海抜0m地点での気圧が必要(天気によって変動)
なのでまぁ参考程度か

海抜と標高について
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1411442419

2015年3月22日日曜日

JavascriptからPythonを呼ぶ

フォームに値を入れて送信、pythonで計算した結果を表示
http://creatornote.blog87.fc2.com/blog-entry-31.html
jqueryファイルの名前を自分がダウンロードしたバージョンに合わせて
変更するのを忘れずに

別のもう少し簡単なサンプル
http://creatornote.blog87.fc2.com/blog-entry-28.html

ローカルでCGIを動かすためのサーバーを立てる
http://creatornote.blog87.fc2.com/blog-entry-27.html
実行するファイルはpythonのままで良い
/cgi-bin/xxxx.pyと書いてあるが実際の場所はcig_serverを起動させたところから見て./cgi-bin

エラーの解決法
http://www.yukun.info/blog/2013/08/python-cgihttpserver.html
chmod 775をやっておくこと、改行はLF

ここのソースにあるように一行目に#!/usr/local/env python

これも同じこと言っている。ハマりどころ
http://stackoverflow.com/questions/16120621/python-cgihttpserver-access-denied-on-os-x

2015年3月14日土曜日

光学式オゾン検出の原理

http://www.whitworthnearspace.org/wiki/Ozone_detection_using_visible_light_and_a_custom_integrating_sphere

DustセンサーとPM2.5、大気汚染関連

Dust sensor DSM501
http://store.cutedigi.com/dust-sensor/
PM2.5について正式な記載は無し

センサーの中身と値について
http://aqicn.org/sensor/shinyei/
スパイクの持続時間でparticleのサイズが推定可能だという仮説を立てている

Air Quality index (アメリカ政府主導)
http://www.airnow.gov/index.cfm?action=aqibasics.aqi
アメリカのみだがPM2.5のforecastなどを出している
indexと実際の値の換算
http://www.airnow.gov/index.cfm?action=resources.aqi_conc_calc

CO2センサー

MG811の原理説明やら
http://www.spencerpages.com/wiki/index.php?title=MG811_Carbon_Dioxide_(CO2)_Sensor
CO2濃度(ppm)への計算のアレコレ
http://forums.parallax.com/archive/index.php/t-129979.html

SainSmartで買ったやつが不良品ぽく苦戦したやつの記録
http://forum.arduino.cc/index.php?topic=259751.0

DFRobotモジュールを使う際のインストラクション
http://www.dfrobot.com/wiki/index.php/CO2_Sensor_SKU:SEN0159


MQ-135とCO2の相関を検討したブログポスト
http://davidegironi.blogspot.com/2014/01/cheap-co2-meter-using-mq135-sensor-with.html#.VQMpcxDF9zM
MHZ14での測定結果を基準値として使用

http://www.futurlec.com/Datasheet/Sensor/MH-Z14.pdf
http://www.sensor-test.de/ausstellerbereich/upload/mnpdf/en/MHZ14_14.pdf
warm up time = 3min

MG811を使った例について書いている。サンプルコード回路図あり
http://sandboxelectronics.com/?p=147

2015年2月26日木曜日

Google Maps APIを使う

APIキーの取得
ここがとにかく丁寧
一番下にlocalhost上での動かし方も

「とりあえず表示」のサンプルコード
code1_1.jsとmap1_1.html


マーカーの配置

マーカーの色変更

Google Chart API
カスタマイズってほどではなく簡単にマーカーの見た目を変更できる

独自マーカー(pngファイルを表示)
./imgというのはhtmlファイルのディレクトリを基準とした場所のこと(./js/imgではない)

本家で紹介してるやり方の方が簡単かも

マーカーをクリックしたら情報ウィンドを表示
一番上のサンプルコード
情報ウィンドについてももうちょい詳細な
http://phpjavascriptroom.com/?t=ajax&p=googlemapsapiv3_infowindow

JSONファイルの読み込み


Zoomを指定箇所が全部入るように収める
http://ma-bank.com/item/1415
これのaMapFitBoundsの機能をinitializeの最後に書けば良い

Parseでサーバ上にあるデータをローカルに引っ張ってくる

ライブラリのReadMeだけどここを読めば最低限のことはできる。
https://github.com/dgrtwo/ParsePy

少々気の利いたデータfetchの仕方はこちら参照
https://github.com/pktck/ParsePy

2015年2月5日木曜日

アメリカの医療保険の仕組みと用語

最もわかりやすかったのがここ
http://smartandresponsible.com/blog/how-to-select-health-insurance/

Blue ShieldとかBlue Crossとかの複雑な事情や経緯がなんとなくわかる
http://www.sj-ri.co.jp/issue/quarterly/data/qt42-1.pdf
http://www.sj-ri.co.jp/issue/quarterly/data/qt47.pdf

COBRAのこととか
http://www.kenkouhokenusa.com/

Windows8 マシンにPyBluezをセッティングするまでの時系列メモ

まずは手元のVistaで実験(ZBOXは動作遅いので色々試すとストレスになる)

とりあえずここを参考にターミナル(MSYS)を入れてみる
http://tanakh.jp/posts/2011-11-15-windows-terminal.html
ここにあるインストーラーを使った
https://code.google.com/p/mintty/downloads/list
https://code.google.com/p/mintty/downloads/detail?name=mintty-1.1.2-msys.zip&can=2&q=

Pythonはこちらから
https://www.python.org/downloads/release/python-279/

環境変数に;C:\Python27を追加
ここ参照
http://next.matrix.jp/config-path-win7.html

MSYSはうまく入らなかったがPythonはコマンドプロンプトでも起動可能
cygwinからも起動できた

Bluetoothのモジュールはここからダウンロード
https://code.google.com/p/pybluez/

これ参考にimportまでは成功したが、仮想環境上で動かしていたのでそこでコケた
http://homepages.ius.edu/RWISMAN/C490/html/PythonandBluetooth.htm

これを解決するのは骨が折れそうなのでやめる

この頃にZBOXやめとくかという話になっていたので
Windows8タブレット(最終的に動かすもの)に移行。
ターミナルはMSYSのロケーションがよくわからんので
もうコマンドプロンプトを使うことにする(衝撃)

Pythonは3.4を落としてみたらprint文の文法の仕様が変わっててめんどいので
http://stackoverflow.com/questions/25445439/what-does-syntaxerror-missing-parentheses-in-call-to-print-mean-in-python
やはり前述と同じ2.7にする

で、同様にPyBluezのセットアップをしてここのサンプルコードを実行してみるが
http://homepages.ius.edu/RWISMAN/C490/html/PythonandBluetooth.htm

IOError: No Bluetooth adapter detected
のエラーで動かない。

ここら辺の情報を参考にして、
http://stackoverflow.com/questions/4198203/pybluez-does-not-detect-the-built-in-bluetooth-adapter
https://cnweb.wordpress.com/

一度デフォルトで入っているBluetoothのドライバを消して、
Broadcomのサイトから引っ張ってきたドライバをインストール
http://support.lenovo.com/us/en/downloads/ds039505
(機種ごとに依存。これはLenovoのMiix用)

これで解決。

2015年1月27日火曜日

英語役職を日本に当てはめると

全部は網羅できていないがわかりやすい
http://blog.kwbt.org/2010/03/blog-post.html


かなりざっくりだが偉さの順がわかる
http://itpro.nikkeibp.co.jp/article/Watcher/20070215/262079/

整理されている
http://www.daijob.com/tipsadvice/resume_wordbook/title.html


Pythonでバイナリデータの読み込み

結局これがヨシ
http://d.hatena.ne.jp/nakamura001/20080610/1213113814

Raspberry Piでグラフ表示のpylabを使う

matplotlibをインストールすべき、というオチ
http://wyolum.com/numpyscipymatplotlib-on-raspberry-pi/

Raspberry Piにpipをinstall

apt-getから
http://www.raspberrypi.org/documentation/linux/software/python.md

Raspberry PiにSSHで『ホスト名』でアクセスする

ここで解決
http://openrtm.org/openrtm/ja/node/266
apt-get updateを先にしなければならないというのがポイント
設定後は再起動

その他、sambaの設定とかw
http://www.shellvalley.0t0.jp/micro_comp/raspberrypi/first_setup.html


Linkit ONEのライブラリとサンプルコード

面白そうなライブラリとサンプルコードが並んでるんだが時間がないので後回し。。。
https://github.com/Seeed-Studio/LinkIt-ONE-IDE/tree/master/libraries


GoogleSpreadsheetにデータを直接送るやつとか
https://github.com/Seeed-Studio/LinkIt-ONE-IDE/blob/master/libraries/Bridge/examples/Temboo/SendDataToGoogleSpreadsheet/SendDataToGoogleSpreadsheet.ino



Python2進数表示について

http://kaworu.jpn.org/python/Python%E3%81%A72%E9%80%B2%E6%95%B0%E3%82%92%E6%89%B1%E3%81%86

Pythonファイル書き込み

http://www.yukun.info/blog/2008/09/python-file-write-writelines.html

signed, unsigned のbit配列

http://www.cc.kyoto-su.ac.jp/~yamada/programming/bit.html