JavaScriptをがんばるブログ

React,OSS,ソフトウェア開発が中心のブログです👨‍💻

日記: 逐一行づつ都度書き捨てているから非常に頭が悪い文章になっちゃう (╯︵╰,)

daily-tweetのトップ画面をデザインしようと思いフリー素材を探したり人気のwebサービスを見て回った。 cssはsassでで書きたいと思ったのでgulpの使い方を勉強した。 symfonyとgulpには関連が無いけど、symfonyでgulpを導入するチュートリルアプリがあったの…

日記: symfony2のsecurityコンポーネントに少し慣れた

symfony2のsecurity設定ファイル、サービスコンテナの使い方に馴染む事に大半の時間を使った。 controllerにif文でログインユーザー判別してリダイレクトする処理とか書かなくてもymlで全部設定出来るのが気持ち良い。 Ruby on RailsでMVCフレームワークの大…

React.js meetup #2

自分はReact.jsは本を写経したりワークショップで少し書いた程度だったけど、かなり楽しめました。 facebookエンジニアのViktor Kelemenさんが発表していたFlow | A Flux & React demoという静的解析ツールが本格的でした。 swiftみたいにオプショナルも定義…

フルスタックにわか

初心者がちょっと触るのと何か一つ深いバックボーンを持った人がちょっと触るのはまるで違うので、 まずは深いバックボーンを構築する事を優先しようと思った。 自分を例にしても、 プログラミング入門以前と現在では写経して得られる感想や情報の量がまるで…

脱ifconfig

昔からlunuxを触っていた訳じゃないけど、 LAN内でのIPを確認する方法についてググって最初に覚えたのがifconfigなのでつい使ってしまいそうになる... ネットワーク RHEL7/CentOS7でipコマンドをマスター アーキテクチャ サービスロケーターの本末転倒具合 /…

セッション固定攻撃を防ぐ方法

セッション固定攻撃とは? IPA ISEC セキュア・プログラミング講座:Webアプリケーション編 第4章 セッション対策:セッション乗っ取り:#4 セッションIDのお膳立て 攻撃者が発行したsession idを被害者に使わせる方法 ダミーページからGETクエリ経由でセッ…

YAPC::Asia Tokyo 2015 Day2

寝坊はしなかったがDay1で受け取ったネームプレートを忘れたまま外出し電車乗る前に気づいて取りに戻ったため朝イチのセッションには3分ほど遅れてしまった/(^o^)\ トラック1開始に間に合わないペースだ #yapcasia— Ryota Murakami (@malloc007) 2015, 8月…

YAPC::Asia Tokyo 2015 Day1

※公開するの忘れて下書きのままだったので2015/08/22公開になってますヽ(・ω・)/ 自分にとっては最初で最後のYAPC::Asia(((o(゚▽゚)o))) 事前に聴きたいトークを選定したり、雑誌のperl入門記事で基礎知識を身につけたり最低限の準備はしていましたが、 少し寝坊…

NodeSchool Tokyo in BizReachに参加しました

BizReach様のオフィスにて2015年8月18日(火)に開催されたこちらのイベントに参加しました。 NodeSchool Tokyo in BizReach (2015/08/18 19:30〜)d-cube.connpass.com ワークチョッパーというnpmのモジュールとして作られたテキスト教材をターミナルで読みな…

YAPC::Asia Tokyo 2015の聴講トーク

08/21~22に開催されるyapc::asiaに参加するため自分が聴いてまわるトークをセレクトしました。 同じ時間帯に興味のあるものが被っている箇所が若干歯がゆいですが、こればかりは仕方がないですね。 懇親会にも参加しますが、人数がめっちゃ多いようなので邪…

dotfilesリポジトリを作りたい

まに誰かのgithubにあるdotfilesリポジトリについて気になり調べてみたら、 設定ファイル置き場だったのですね。 ファイル名先頭にドットが付くからtotfilesと... これがあるとよりプログラマっぽさが増しそうなので自分も作ってみよう 最強の dotfiles 駆動…

react.jsデビューヽ(*・ω・)ノ

React.jsにだんだん慣れてきた。さっと使うだけでデータバインドとコンポーネント化の恩恵受けられるのがメリットだろうか。書いていて楽しいしReactを通じてnode.js界隈に飛び込んで行けそうo (◡‿◡✿)— Ryota Murakami (@malloc007) 2015, 7月 27 reactに少…

Travis CIデビューヽ(*・ω・)ノ

今日はふつうのブログの categoryモデルの更新/削除のテストコード Travis CIとの連携 RSSフィードの出力/はてなブログのサイドバーへの出力 が完了しました。 CIツールには初めて手を付けるので多少苦戦する事を覚悟していましたが、 超シンプルなymlファイ…

ヘルシープログラマ購入

日経ソフトウェアを買いに行ったらオススメコーナーにあったので買ってしまいました(/^▽^)/ 技術書購入。ヘルシープログラマほか(^o^) 安全な通信を確保するSSl/TLSの教科書という特集が気になってsoftware designも買ってしまった... 今日はふつうのブログ…

git: ステージングとインデックスは同じ意味

git管理下のファイルにはstateが3つありますが ワーキングディレクトリ ステージングエリア リポジトリ 「ワーキングディレクトリからステージングエリアへファイルを登録する」 行為の呼び方が、 「ステージングする」「インデックスに登録する」の2通りあ…

Cookieを安全に扱うポイント

secure属性 httpsで通信時のみサーバーへの送信を許可する(httpでは送信出来ない) httpOnly属性 Javascriptから取得出来ない(document.cookie等) この2つが特に重要なようです。 両方を有効にしていれば通信を傍受されても、 xss埋め込まれてもcookieの値は…

「理論から学ぶデータベース実践入門」は必読書っぽい?

MySQLへの興味が印象的だった1日。 「理論から学ぶデータベース実践入門」については周りの方々も続々と読み始めているし、 こちらを理解している方がoracle bronze持ってるよりずっと価値がありそうだ。 著者の方が運営している「漢のコンピューター道」に…

git: 誤rebase/merge後に有用なORIG_HEAD変数

$ git reset --hard ORIG_HEAD rebaseやmergeの対象は大体masterブランチで、originのHEADに戻せば大体失敗を巻き戻せるケースが多いので有用です。 reflogコマンドで良い気がしますが、寝ぼけてる時はこっちの方が直感的で間違いが無さそう。 てっきりコミ…

rails: 本番環境でのrake db:migrate

ハマってしまいました~(>_<。)\ オプションでproductionモードである事を明示する必要があります。 $ rake db:migrate RAILS_ENV=production rake db:migrateとだけ実行しても成功してSQLが流れるのでproductionのDBにスキーマ変更が適用されていない事に気…

node.jsの利点(と学習備忘録)

node.jsとapacheを比較した際のメリット プロセス数の削減(リクエスト数分) メモリの削減(リクエスト数分) メインルーチンでI/O待ちをしない 現状分かったのはこれくらいですかね、 一つのマシンで生成出来るスレッド数に上限は無いのかが疑問ですが。 [Node…

symfony: Form,Validatorを作る時参考にした記事(備忘録)

最近silexでFormBuilderを使用している中で役に立ったページをまとめ。 ひたすらググりっぱなし EntityのプロパティにEntityを持たせる方法 プロパティにはArrayCollectionオブジェクトを代入してそこにEntityを追加する >> フォームのコレクションを埋め込…

日本科学未来館: チームラボの展示に行ってきました!

2015/05/10いっぱいで展示が終了するということで、 以前から気になっていたチームラボ 踊る!アート展と、学ぶ!未来の遊園地へ行ってきました。 日本科学未来館自体行くのが初めてでしたが、 ゆりかもめの[船の科学館駅]で降りて徒歩で行くことにしました…

ATOM: gitignoreしたファイルを表示する方法

ATOMエディタはデフォルトだとgitignore対象のファイルがtree view(左のファイル一覧)に表示されず、 ファイル検索にもヒットしません。 そのためbundlerやcomposerで落としたパッケージのコードを読む時などは少し工夫が必要です。 PHPのsilexというフレー…

自動記録を覚えたその次に! selenium IDE入門

selenium IDEの録画ボタンで[type][clickAndWait]コマンド辺りの記録が出来るようになった人が、 assert系コマンドでテストを書く時に知っていると捗ること〆(・∀・@) 表示されているテキストが正しいが確認する コマンド[assertText] 対象[CSSセレクタ,XPa…

ruby on rails: sqliteの改行を置換

僕はruby on railsでsqliteをそのまま利用しています。 今までブログ記事の改行にnl2br(自作helper)を使用していましたが、 記事本文をhtmlで書きたい時に邪魔になるので、 nl2brをやめて改行文字を<br>に置換することにしました。 php脳から脱却ヾ(o・ω・)ノ ブロ…

ruby on rails:ブログ利用におけるログイン認証gem「devise」の設定

deviseはデフォルトだと誰でも新規ユーザー作成ページにアクセス出来る仕様です。 ブログの場合は一度管理用ユーザーを作った後、 ログインページとログアウト機能があれば良いので不要なルーティングを削除しました。 #routes.rb #元の設定 devise_for :use…

ruby on rails: 変数の型を確認する

とあるmodelの「created_at」カラムを取得して、 正規表現を使用した置き換えを行いたい。 2015-03-30 15:20:51 UTC #元データを 2015-03-30 #こんな風にしたいので def pick_datetime(time) #こんなヘルパーを定義して time.to_s.gsub( /^(\d{4}-\d{2}-\d{2…

OSXのviで検索結果をハイライト

viコマンドモード中に / <文字列> returnキー で文字列検索が出来ますがmac OSXではデフォルトで検索結果をハイライトしてくれなかったのでメモ。 /usr/share/vim/vimrc←こいつが設定ファイル(隠しファイルじゃないのでドットが付いていません) viでこちらの…

設計とプログラミングパラダイムを学ぶ

最近職場の方との会話の中で、 自分が思っていたMVCとは、MVC2と呼ばれるアーキテクチャである事が判明しました。 cakephpやRailsのMVCデザインパターンに関して - 田舎の技術者が奮闘中 cakephpやRailsのMVCデザインパターンに関して - 田舎の技術者が奮闘…

【linux】プロセスを殺す操作周り ~ps grep kill~

プロセスを殺すには ps コマンドからPID(プロセスID)を取得して、 kill -9 PID を行う必要がありますが、 ※「-9」は「Killシグナルによるプロセスの終了」のシグナルを送信している psコマンドの結果から停止したいプロセスのPIDのみを抽出できないか? 調べ…