MogLog

メモというか日記というか備忘録というか

今更ながらベイマックスを見たら脳が震えた

ベイマックス (字幕版)発売日: 2015/04/17メディア: Amazonビデオこの商品を含むブログを見る 中身のない日記です。 AmazonでKindle本50%OFFセールがやっていたので適当に気になった本を数冊買ったところ、Amazonビデオの割引クーポンが送られてきたのでベ…

LPICレベル1 合格体験記

LPICレベル1を受験し、無事に合格できたので感想やら何やらを書いていく。 受験の動機 ことのはじまりはSREに興味があって、SREにどんな技術セットが求められるかを調べたりしていたところ、Linuxの深い知識を求められる傾向があると気づいたことだった。 ま…

『Web開発者のための大規模サービス技術入門』がめっちゃ良かった

『Web開発者のための大規模サービス技術入門』を読んだ。とても勉強になった。 [Web開発者のための]大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ (WEB+DB PRESS plusシリーズ)作者: 伊藤直也,田中慎司出版社/メーカー: 技術評論社…

『知識ゼロからの宇宙入門』を読んだ

『知識ゼロからの宇宙入門』を読んだ。 知識ゼロからの宇宙入門作者: 渡部潤一,渡部好恵,ネイチャー・プロ編集室出版社/メーカー: 幻冬舎発売日: 2010/07メディア: 単行本 クリック: 1回この商品を含むブログ (1件) を見る 読みはじめた動機 突然、宇宙につ…

初めてのスペイン旅行を楽しむためのスペイン基礎知識

...っていうタイトルの記事があったら嬉しいな〜、と思って調べたけど無いようなので書いた。 この記事のスコープは、スペインのかなり基礎的な知識。 ※ 注意:記事の内容がタイトル通りになっている保証はありません 内容のほとんどは、以下の書籍とスペイ…

地球に季節ができる仕組みについて調べた

知識ゼロからの宇宙入門作者: 渡部潤一,渡部好恵,ネイチャー・プロ編集室出版社/メーカー: 幻冬舎発売日: 2010/07メディア: 単行本 クリック: 1回この商品を含むブログ (1件) を見る 『知識ゼロからの宇宙入門』という本の中に「地球に季節がある理由」とい…

『話したくなる!つかえる物理』を読んだ

『話したくなる!つかえる物理』という本を読んだ。 話したくなる! つかえる物理 (アスカビジネス)作者: 左巻健男出版社/メーカー: 明日香出版社発売日: 2013/02/14メディア: 単行本(ソフトカバー)この商品を含むブログを見る 読みはじめた動機 とにかく物…

Tokyo RubyKaigi11に行ってきた

http://regional.rubykaigi.org/tokyo11/ 2016年5月28日に秋葉原コンベンションホールで開催されたTokyo RubyKaigi 11に行ってきた。満足度の高い勉強会だったので簡単に感想を残しておく。 発表一覧 Streem mruby/c Rubyに型があると便利か 最速ウェブサー…

心労業務

最近やっているプロジェクトで最高に心労の高まりを感じたギョームについて書く。 v2移行時のDB構成変更に失敗。残ってしまった不要なレコードを手動で削除する v2移行時にDB構成を結構変えた。 特に大きな変更が、論理削除から物理削除に変更した部分だった…

2015年の振り返り

少し時間が経ってしまったが、以前自分が書いた振り返りブログを見返すと当時のことを鮮明に思い出せて「ああ、こんなこともあったなぁ。こんな感想持っていたのかー。」という感じになっておもしろかったので、2015年分の振り返りも書くことにした。 時系列…

DBとかパフォーマンスとか

チラ裏です。 そのカラムにインデックスを張るべきか否か、そしてそれはどう判断すべきなのか かなり頻繁にwhere句として使われる カーディナリティは極端に小さい(現状2パターンしか無い。直近増える予定もない) ...というカラムがあった。時間が無いなり…

詰まったことリスト2

sandragon.hatenablog.com これの続き。 よくもまあここまで詰まりポイントがボンボン出てくるもんだと自分の無能っぷりに呆れてきたところです。 この無能感を越え、強くなりたい。 activerecord-importの罠 activerecord-importはINSERTのクエリを1SQLにま…

詰まったことリスト

最近、業務でRailsアプリケーション開発をしている。 が!Railsに限らずだが何かと行き詰まってばかりなので忘れないうちにこの怒りと苦しみの元となったネタどもをリストアップしておきたいと思う。 ※ ほとんど単なる調査不足・知識不足が原因だと思います …

ブログのデザインを変更した

新年なのでなんとなく変えてみた。 公式テーマを使いつつ、font-familyだけカスタマイズした。

YAPC::Asia Tokyo 2015に行ってきた

8/22(Fri)、8/23(Stu)の2日間、YAPC::Asia Tokyoに参加してきた。 YAPCについては、一昨年・昨年とはてブやTwitterで盛り上がっているのを見ていて、一度は行ってみたいなぁと思っていたら今年が最後らしいという情報を聞きつけて勢いで申し込んだ。なので、…

pgrep、pkill

pgrep 現在実行中のプロセスからパターンにマッチするプロセスのプロセスIDを標準出力にリストする pgrep [pattern] fオプションでマッチさせる範囲をコマンドライン全体にする lオプションで結果にプロセス名も表示させる uオプションで実行ユーザIDを指定…

【Ruby】Hash#delete(key)、Hash#delete_if

Hash#delete(key) keyに対応する要素を削除する 取り除かれた要素の値を返す。マッチしないkeyを指定した場合はnilを返す。 ブロックを渡すことも可能で、このブロックは与えられたkeyにマッチする要素が無いときに評価される。 hash = { one: 1, two: 2, th…

【Ruby】Hash#assoc、Hash#store、Hash#clear

ただのリファレンスの写経です。 class Hash Hash#assoc(key) ハッシュがkeyをキーとして持つとき、キーと値のペアを配列として返す。 hash = { one: 'a', two: 'b', three: 'c' } p hash.assoc(:one) # => [:one, 'a'] p hash.assoc(:two) # => [:two, 'b']…

TCPひとめぐり

TCP

業務でTCPの知識が無いことで困ることが増えてきたので、『マスタリングTCP/IP』を中心にTCPの概要をひとさらいした。今回はなんとなくでスライド形式でまとめてみたけれど、単純なテキストよりも知識の整理にはなっているような気がした。 次はTCPコネクシ…

HomebrewでVim7.4をluaオプション付きでインストールする

vim

単純に7.4をインストールするだけなら以下のコマンドでOK。 $ brew install vim ただし、上のコマンドでインストールするとluaオプションがついていないため、neocompleteが使えない。 neocompleteをインストールしてvimを起動すると、以下のようなメッセー…

Linuxにおけるメモリ管理

DBサーバ上でおもむろにfree、sar、topコマンド等でメモリの使用率を見てみたところ、 メモリの空きがほとんど無くなっていることに気がついて(正確にはそう見えて)、焦りながら色々調べた結果をまとめる。 Linuxのページキャッシュの仕組み まず、メモリ…

RSpec + Guardで自動テスト実行環境を作る

タイトル通り。 TDDのお試し環境として自動でテストが実行される環境を作りたかったので、構築した。 1.作業ディレクトリを作る $ mkdir fizzbuzz $ cd fizzbuzz 2.Gemfileを作る $ bundle init 3.Gemfileを編集する # A sample Gemfile source "https…

【Chef】ローカルのクックブックを削除する

※ 環境 MacOS 10.7.5 Chef 11.10.4 結論:-zオプションをつけてknife cookbook deleteを実行すれば削除できる おもむろに$ knife cookbook create <cookbook-name>と打ってクックブックを作ったんだけど、cookbook-nameを間違えて作成してしまった。 削除したかったので、そ</cookbook-name>…

新卒で入社してからの1年間を振り返ってみる

2013年4月に新卒で入社してから大体1年くらい経ったので1年間を振り返ってみる。 殆ど技術的な仕事の話。 今ではできるようになっていることもあるけど、その時その時は初めて知ることで、理解するので精一杯だったことなどを思い出している。 1. WebAPI開発…

【Ruby】requireメソッドの使い方メモ

環境:ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-darwin11.4.2] sinatraとかnokogiriのような外部ライブラリを読み込みたい時と、同じプロジェクト内にある自身が作ったファイル等を読み込みたい時の2パターンがあって、その時にrequireをどう使…

apt-get/apt-cacheとaptitudeの違い

Ubuntuの情報を調べていると、apt-getとaptitudeの両方を見かけることが多いので気になって調べてみた。 全体 apt-get/apt-cacheはコマンドラインのユーザーインターフェースのみを提供する aptitudeはコマンドラインユーザーインターフェースに加え、フルス…

Google Chromeのinput要素にborder-radiusをつけると現れる影を消す方法

CSS

結論 適当なborderをつけると消える 動作環境 MacOS X 10.7.5 Google Chrome バージョン 31.0.1650.63 タイトル通り、Google Chromeのinput要素(type属性はtext)にborder-radiusをつけると謎の影のようなものが現れたのでこれを消す方法について。 これが…

HTTPリファラについて

リファラとは何か リファラとは 【 referer 】 〔 リファラー 〕 - 意味/解説/説明/定義 : IT用語辞典 あるWebページのリンクをクリックして別のページに移動した時の、リンク元のページのこと。Webサーバーのアクセスログに記録される項目の1つ。 これを辿…

PHPのビルド? Phing?

ビルドまわりについては過去に調べたことがある。 ビルドとかコンパイルとかリンクとか - MogLogしかし、PHPに対してビルドという言葉が使われている記事などを見かけたり、聞いたりすることが多くなって、意味がわからなくなってきた。 (PHPそのものに対し…

cocos2d-xの概要

最近は自分用のWikiにメモやtipsをとることが多くなって、ブログの更新をしていなかった。 でもどんなに些細な内容でもどこかの誰かに役立つ可能性があると思ったので、メモでも作業ログでも何でもwikiとブログの両方に残していきたいと思った。 「スキルな…

ポートベースのバーチャルホストを設定する

ポートベースのバーチャルホストの設定をした時の作業メモ。IPアドレスは同じに、ポート番号だけでリクエストを振り分けて表示するページを切り替える。 今回は、 192.168.56.101:5000 192.168.56.101:7000 192.168.56.101:9000 のようなURLにリクエストをし…

mod_rewriteを使って、リクエスト時の拡張子を消す on Apache2.2 -Ubuntu12.04

mod_rewriteを使ってリクエストを制御する練習。 とりあえずよく使いそうな「ファイルの拡張子を消す」処理を実現してみる。 今回対象とするのは「html」拡張子。 必要なモジュールの確認をする (1) rewrite_module $sudo apache2ctl -M | grep rewrite→ 見…

Ubuntu12.04環境のApache2.2にWebDAVのインストール

Digest認証に続いて、WebDAVのインストールと設定を行った。設定までのメモ。 WebDAV(Web-based Distributed Authoring and Versioning)とは WebDAVはHTTP1.1の拡張プロトコルで、Webサーバー上のコンテンツを管理できるよう、リモートファイルのアップデ…

Ubuntu12.04環境のApache2.2にDigest認証を設定する

Digest認証を設定するまでのメモ。 今までRedHat系しか触ったことが無かったので色々新鮮だった。 Basic認証とDigest認証の違い Basic認証とDigest認証の違いは、「認証情報を暗号化するか否か」という点にある。 Basic認証はプレインテキストで書かれた認証…

surround.vimことはじめ

vim

surround.vimを導入した。 とりあえず、基本的な使い方をいくつかのブログ記事を参考にまとめておいた。 surround.vim概要 テキストを囲うモノを編集するプラグイン。 テキストオブジェクトの操作を強化する感じ。 インストール NeoBundleを使った場合のイン…

ビルドとかコンパイルとかリンクとか

「ビルド」という言葉がどんな意味を指すのか、しっかりと理解していなかった。 コンパイルと何が違うのかもよくわかってなかったし、人に聞かれたら確実に答えらないと思った。 というわけで、調べてみた。まずは定義から調べた。安定のe-words.jp様から拝…

『Webを支える技術』 第9章 HTTPヘッダ まとめメモ

前回に引き続き、『Webを支える技術』を読んで、気になった箇所を簡潔にまとめる(第9章 「HTTPヘッダ」のみ)。■ HTTPヘッダの重要性 ヘッダはメッセージのボディに対する付加的な情報、いわゆるメタデータを表現する クライアントやサーバはヘッダを見て…

『Webを支える技術』 第6章 HTTPの基本 まとめメモ

久しぶりに『Webを支える技術』を読んでみると、忘れている箇所や知識が曖昧な箇所が出てきたので、記憶定着のために重要だと思ったところを簡潔にまとめておく(第6章 HTTP 「HTTPの基本」のみ)。 HTTPの基本 ・HTTPはRESTの重要な特徴である統一インター…

sudoについて勘違いしていたこと

root権限を得てコマンドを実行するときの動作を通して、勘違いに気がついた。sudoは「指定したユーザーでコマンドを実行する」ものであり、「指定したユーザーの権限を得て、コマンド実行する」ものでは無かった。ここを混同していても問題ない場合もあるけ…

【Linux】ハードリンクとシンボリックリンク

リンク機能についておさらいをしたのでまとめておく ■リンク機能とは ファイルやディレクトリをコピーせずに、別のファイルまたはディレクトリのように扱うことができる機能のこと ■ 2種類のリンク リンクにはハードリンクとシンボリックリンクの2つがある…

TextViewのclickイベントを、タップした箇所によって振り分ける

Android4.2にて。 具体的に言うと、1つのTextViewにおいて、左半分をタップした時と右半分をタップした時とでイベントを振り分けたかった。その時の実装手順メモ。FrameLayoutを利用して、透明のビューを左半分、右半分と配置し、その上にTextViewを重ねるこ…

【Android】TextViewにonClickイベントを付与する

Android4.2にて。 TextView属性にXMLファイルからonClick属性を付与したもののクリックイベントが発動しなかった。Buttonなどでは普通に動いていたので、TextViewに原因があるようだった。 <TextView android:layout_width="match_parent" android:layout_height="match_parent" android:text="Test" android:onClick="testToast" /> // アクティビティ public void testToast(View view) { Toast.mak</textview>…

【Android】可変の文字列リソースを定義する

Android4.2にて。 可変の文字列リソースを定義する方法は以下。 1.文字列リソースファイル(strings.xmlなど)に記述する各要素の値に、出力フォーマット指定子を含める 2.文字列を呼び出すときにgetString()メソッドを用い、第一引数に文字列リソース、…

AndroidのListViewの区切り線を消す方法と要素ごとのスペースを設定する方法

Android4.2系にて。 ListViewの各アイテムごとの区切り線を消すには、ListView要素の「android:divider」属性に「@null」を与えることで実現できる。 各ListViewの各アイテムごとのスペースを設定するには、ListView要素の「android:dividerHeight」属性に高…

AndroidのListViewのタップ時の反応を無効化する

Android4.2系にて。 ListViewの各要素をタップした時に、画面がうす青く光るのを無効化するには BaseAdapterクラスのisEnabled(int position)をオーバーライドして、返り値としてfalseを返すことで実現できる。 public class CustomeListAdapter extends Sim…

Android Studioでのアプリ開発時の文字化け対策メモ

Android Studioを使って開発をしていたところ、logcatやアプリ内で日本語が文字化けしていることに気がついたので、それの対応までのメモ。 1.LogCat上に出力した日本語の文字化け これに関しては以下の記事どおりに実行したら治った Android Studioでビル…

Permission denied (publickey). fatal: The remote end hung up unexpectedly.

git

公開鍵をセットしたのに、bitbucketからgit pullできない。 以下のエラーが吐かれてしまう。Permission denied (publickey). fatal: The remote end hung up unexpectedly.公開鍵はbitbucket上にセットした。秘密鍵もちゃんと.sshディレクトリ上にある。 ssh…

CentOS6.3にApache2.4.4をソースファイルからインストールした時の手順メモ

タイトルどおり、CentOS6.3にApache2.4.4をソースファイルからインストールした際の手順を記録しておく。 バイナリパッケージからのインストールでは2.2系しかインストールできないようなので、ソースファイルからインストールをした。主に参考にしたのは『…

技術情報をすばやく検索する方法

結論から言うと、はてなブックマークを使って検索をするってだけ。はてなには技術系の人々が多いようなので、技術系の情報が充実している。 単純にGoogleやYahooで検索するよりも、はてブ数で信頼度がよくわかるのですばやく求めている情報に辿り着ける。特…

.vimrc、vimプラグイン管理の見直し

vim

エディタにvimを使い始めてかれこれ1年半くらい経った。 にも関わらず.vimrcの設定とかプラグイン等、よくわからないままなんとなくで使っていた。 このままではいけないと思い、.vimrcの設定やプラグインを見直し始めた(今さら)。 <.vimrcの整理> まず…