【本】時価総額の低いタグは無視 - すべての教育は「洗脳」である 21世紀の脱・学校論 (光文社新書)
今日読んだ本です。 読了時間: 10分
学んだこと
- そもそも「学び」というものをとても高く評価していて、意見が合うなぁと思った
- 自分の価値を高める為に、自分の特徴とも言える「タグ」を3つほど掛け合わせて、レアな存在になろうという考え方は同感だけど、勇気がいると思った
- その他既存の日本の教育についてや、企業というものや、風土、常識、親や教師や地域もろもろ・・・・・ずーーーーーっと思っていたし、その根拠もだいたい昔調べたことと似通っていた
- 結局自分も「やりたいことがあるのに我慢して我慢してやれずに生きている人」に近いけど、私の見解では私は我慢の結果大切な色々が死んだ人です。
- 確実な未来予測を求めることは、何もできなくさせるので、意味がない
このまま会社にいても自分が死ぬ上に対価も乏しいから、本当はやりたかったことやって幸せになろうと生活をシフトさせた自分について、この本にある「自分の価値」「タグ」「時価総額」といった言葉を使って表現出来ることを知って、やっと腑に落ちた。言葉ってすごい大切 https://t.co/QaEPr1XCXk
— Suu (@_satomixxx) 2018年5月10日
自分に活かせること
- 丁度色々変化の時期にいて、これまでは隠した方がいいと言われてきたり、自分でそう思ってしまった(ずっと素敵なことだと思っていたのに、いつしか折れた💧)ことを、改めて自分の価値を高めるものとして、掲げていきたい
- もうそれを始めているけど、もっと出したい
- 確実な未来を求めないで、変動する今をちゃんと生きていきたい
- でもちゃんとプランBを用意して、ちゃんと前にすすめるアプローチを取りたい(最近学んでいる手法)
すべての教育は「洗脳」である 21世紀の脱・学校論 (光文社新書)
- 作者: 堀江貴文
- 出版社/メーカー: 光文社
- 発売日: 2017/03/16
- メディア: 新書
- この商品を含むブログ (6件) を見る
最後に
インプットの時間は減らせてきているけど、それをまとめて文字にすることがなかなか時間がかかってしまうので、もっともっと速くしたい。
3Dアプリの行動履歴ログを獲得する為に参考にした資料の備忘録
経緯
とあるサービスでユーザーの行動解析を行う際に、ログデータを受け取ってなるべくリアルタイムに加工して出力するシステムが必要になったので、どう構築していくか調査することになりました。 その際にとても有用だと感じた資料を残しておきます。備忘録です。
概要
ログ管理のベストプラクティス
AWS Japanのソリューションアーキテクトの方の資料です。AWSを使う場合にはたくさんの定石を知ることができて役立ちました。
秒間数万のログをいい感じにするアーキテクチャ
- Cookpadのログへの考え方からシステムの変遷まで書かれていて、ログというものへの全体像を実感するのにとても役立ちました
【AWS summit 2016 Tokyo 発表内容】タウンワークにおけるサーバーレスアーキテクチャデザイン
サーバーレスアーキテクチャのパターン別ユースケース
各要素
Kinesis
データの一時受けに便利です。KinesisはStreamsとFirehoseとAnalyticsの3つのサービスにわかれています
Kinesis Streams
Kinesis Streamsの公式ページで、結局ここが一番わかり易いです。
Kinesis Firehose
Kinesis Firehoseの公式ページがとてもわかり易いです。
Amazon Kinesis StreamsとAmazon Kinesis Firehoseは何が違うのか
Amazon Kinesis StreamとAmazon Kinesis FirehoseのAPIを比較する #reinvent
AWS Kinesis Firehoseを動かして見る
KafkaとAWS Kinesisの比較
AWS以外のサービスとの比較、AWSにとらわれないシステム構成などを学ぶことができました
fluent-plugin-kinesisでKinesis Streamsにログを送信する
実用例としてとても参考になりました。
fluent-plugin-kinesis-firehoseでAmazon Kinesis Firehoseにログを転送する
のfirehose版で、こちらも参考になりました。
結合例
ストリーム型(kinesis stream)のAWS Lambdaの同時起動数とデータの取り方を整理
Kinesis Streams と Lambda との組み合わせ方について勉強になりました
Fluentd&Kinesis&Lambdaによる柔軟で高可用性なログ収集基盤の構築
- Fluentd -> Kinesis -> Lambda -> [S3, DynamoDB...] などの流れが明快にわかってとても参考になります
API Gateway / Lambda / Kinesis を使ったストリーミングなバッチ実行基盤の実装
考察が乗っていてとてもわかりやすいです
Kinesis Producer Library(KPL)とfluentdとLambdaを連携してKinesisのスループットを上げる
2つ目の記事に関して解説が追加された記事になります。わかりやすい。
Data Storage
Amazon DynamoDB
公式ですので、とりあえず目を通します
API Gateway
とりあえずAPI Gatewayはとっても便利という印象でした。 EC2がいいのか、API Gateway + Lambdaがいいのかとか色々悩みましたが、そもそもいろんな使い方があることが勉強になります。
以下、入門編という感じで資料です。
API ホスト名としてのカスタムドメイン名の設定 - Amazon API Gateway
【新機能】Amazon API GatewayがACM (AWS Certificate Manager)に対応。簡単に独自ドメインAPIがSSL化。 | Developers.IO
API Gateway リソースの CORS を有効にする - Amazon API Gateway
API Gateway API のリクエストパラメータをマッピングする - Amazon API Gateway
Amazon API GatewayからAWS Lambdaにパラメータを渡す方法 - Qiita
EC2からLambdaへの移行
AWS 謹製 aws-serverless-express を使って APIGateway + Lambda + Node + Express で RESTful サービスの雛形を最速で作る - Qiita
expressでEC2に構築済のサービスをLambdaに移行していきたかったので、役立ちました
AWS LambdaからIAM RoleのCredential情報を取得し、RedshiftのCOPY処理に利用する
結局毎回権限周りであれこれチグハグするので、こうした記事は大変助かります
既存プロジェクトをRails5.1にアップデートしたので、webpackerを使って、楽できる感じの JS(ES6)とRailsの開発環境を構築してみた
経緯
環境を以下のようにアップデートしたので、webpackerを導入しました。 - Rails 5.1.3
既存プロジェクトにwebpackerを導入する
- 基本的に README を見れば問題ないです
- またのコマンドを打てば、サンプル(大元になるガイド)ファイルも出力してくれるので、乗っかればやりやすいです。
gem 'webpacker', '~> 2.0' # OR if you prefer to use master gem 'webpacker', git: 'https://github.com/rails/webpacker.git' gem 'foreman'
bundle install
./bin/rails webpacker:install
vueを導入
- elmやreactも導入するコマンドがあります
./bin/rails webpacker:install:vue
const { env, settings } = require('../configuration.js') const isProduction = env.NODE_ENV === 'production' const extractCSS = !settings.dev_server.hmr module.exports = { test: /\.vue$/, loader: 'vue-loader', options: { extractCSS: isProduction || extractCSS } }
既存環境との両立
- 既存の古いJSもたくさんあったので、一気にwebpacker環境に持っていくのは大変そうだったため、共存させつつ、少しずつ移行していくことにしました。
- webpacker環境のファイル構成を
app/frontend
以下に構築します。 app/frontend/packs
以下のファイルを、public/packs
以下に、Compileした後に
出力します。
default: &default source_path: app/frontend source_entry_path: packs public_output_path: packs . . .
const webpack = require('webpack'); const merge = require('webpack-merge'); const sharedConfig = require('./shared.js'); const { settings, output } = require('./configuration.js'); module.exports = merge(sharedConfig, { devtool: 'cheap-eval-source-map', output: { pathinfo: true }, . . . });
viewファイルからのインクルード
= stylesheet_pack_tag 'hoge/style/main' # /public/packs/hoge/style/main.css を読みます = javascript_pack_tag 'hoge/main' # /public/packs/hoge/main.js を読みます = javascript_include_tag 'http://d3js.org/d3.v3.min.js' # おなじみのタグも使えます
開発の為の工夫
webpacker環境下のファイルを編集したらブラウザがライブリロードされてほしい
rails s
と合わせて、 webpackerもwatchしたまま走らせたい- formanを使って、両方を一つの npm run script で叩く
web: bundle exec rails s # watcher: ./bin/webpack-watcher webpacker: ./bin/webpack-dev-server
{ "scripts": { "dev": "bundle install && bundle exec foreman start -f Procfile.dev", "build": "bundle exec rails webpacker:compile", }, }
開発の際は
yarn dev
を叩いて開発
d3.js初心者が3時間でRails5.1に複数のグラフを実装した際に参考にした記事
作ったグラフを行動軌跡図と棒グラフです。
References
Path
Grouped Bar Chart
- D3 v4 - Group barChart
- グループ化した棒グラフ
- http://jsbin.com/nuyipikaye/edit?output
- Grouped horizontal bar chart.
- Grouped Bar Chart with Legend and Tooltips
PieChart
Donut Chart
v3 -> v4
"Cannot truncate a table referenced in a foreign key constraint" 外部キー制約でtruncate tableできなかった時の対応
あんまりtruncate tableする機会がいままでなかったのですが、mysqlでtruncateしようとしたら、外部キーの制約があるからできませんってエラーが出てきたとき、どうしてもtruncateしたい場合は次の様に外部キーチェックを一度キルトいいようです。
mysql> truncate table messages; ERROR 1701 (42000): Cannot truncate a table referenced in a foreign key constraint (`database_name`.`table_name`, CONSTRAINT `foreign_key_name` FOREIGN KEY (`foreign_key_culumn_name`) REFERENCES `database_name`.`target_table_name` (`id`))
mysql> set foreign_key_checks = 0; mysql> truncate table table_name; mysql> set foreign_key_checks = 1;
migrate時にエラーメッセージが表示されていなくても、エラーになる場合
laravel 初心者の備忘録です。
php artisan migrate
してみたら、migrateは走って
migrated xxxxxxxx migrated xxxxxxxx
って表示されて特にエラーは表示されていないのに、エラーになることがありました。
とりあえずログ表示を増やそうと思ったので、コマンドを確かめました。
php artisan migrate --help Usage: migrate [options] Options: --database[=DATABASE] The database connection to use. --force Force the operation to run when in production. --path[=PATH] The path of migrations files to be executed. --pretend Dump the SQL queries that would be run. --seed Indicates if the seed task should be re-run. --step Force the migrations to be run so they can be rolled back individually. -h, --help Display this help message -q, --quiet Do not output any message -V, --version Display this application version --ansi Force ANSI output --no-ansi Disable ANSI output -n, --no-interaction Do not ask any interactive question --env[=ENV] The environment the command should run under. -v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug Help: Run the database migrations
-vvv
ってやれば一番詳しく出るんですね。
というわけでで詳しくログをだしてみることができました。
php artisan migrate -vvv