.logbook

学んだことを書き綴る、言わば航海日誌です。

Fedoraをインストールして実施したこと

開発用PCのOSとして長らくUbuntuをメインで使用してきたが、より使いやすい環境を求めてFedoraへ切り替えることにした。 OSのインストールはそうそうない機会なので、行った環境構築の内容をメモする。 更新 まずはここから。Fedoraはapt-getではなくyumであ…

2年目のETロボコンに向けてプラットフォームの知識を深めよう

本記事はETロボコン Advent Calendar 2016 7日目のエントリです。 3年目のETロボコン Advent Calendar。リタイアさせるのはもったいないので12/6が終わる10分前から書き始めました。が、@yuri_at_earthさんが先にフォローに入ってくださったので12/7のエント…

2015年の振り返り

今年も年末年始はバタバタしており、今更ながら2015年の振り返り。 尚、2014年の振り返りは以下の記事を参照。 ylgbk.hatenablog.com やったこと 勉強したこと・自己啓発系 Railsチュートリアルを読んだ mrubyデバッガにnextコマンド追加した 高度情報処理技…

組込みソフトウェア開発者がネットワークスペシャリスト試験に合格するためにやったこと

はじめに 2015年(平成27年)秋の情報処理技術者試験を受験し、見事ネットワークスペシャリスト試験に合格することができた。 データベーススペシャリスト試験の時と同様、合格に向けて取り組んだことを体験記としてまとめる。 受験のきっかけ 昨年、データベ…

ETロボコン2016で勝つために

この記事はETロボコン Advent Calendar 2015 - Adventarの最終日のエントリーです。 メリークリスマス。皆様は2015年のクリスマスをどのようにお過ごしでしょうか? さて、皆様既にお気づきとは思いますが、今年のAdvent Calendarは残念ながら完走とはなりま…

実行委員から見た、ETロボコン

これは、ETロボコン Advent Calendar 2015 - Adventarの 1 日目のエントリーです。 初日のエントリーですので精一杯、執筆させていただきます。 まえがき 筆者は2011年〜2013年にETロボコンに参加、本年度よりETロボコン関西地区の実行委員となりました。私…

Ruby on Rails チュートリアル 第1章でハマったところ

railsコマンド実行時、「誤ったインタプリタです: そのようなファイルやディレクトリはありません」と表示される 一度apt-getによりrubyをインストールした後、アンインストールし、その後rbenvにてrubyをインストールしたため発生した模様。 再度gemのイン…

はじめてDockerfileを書いてみた(ruby開発環境構築)

前回の記事にてひとまずdockerをインストールし、Docker HubのDockerイメージを取得・起動することができた。 今回は自分自身でオリジナルのDockerイメージを作成することとした。ruby開発環境の構築を想定して、Dockerfileを作成してみた。 作業は以下の記…

Ubuntu14.04LTSにDockerをインストールする

すっかり話題となっているDockerをそろそろ使ってみようと思う。 我が家には複数のPCがあり、Virtual Box上でUbuntuを動かしていたり、GRUB2でWindowsと共存させていたりと環境がばらばらである。このためPC毎に開発環境を構築することに飽き飽きしていた。 …

Let's noteにインストールしたUbuntu14.04でホイールパッドによるスクロール

中古で購入したLet's note N10にUbuntuをインストールしたら、ホイールパッドによるスクロールができず、不自由していた。調べたところ簡単に有効化できたので、備忘録として記録しておく。 参考記事 以下の記事で動画付きで解説されている Let’s Noteホイー…

Ruby on Rails上で動作するCMS LocomotiveCMSをインストールしてみた

Ruby on Railsの入門教材のサンプルとしてしばしばブログシステムが取り上げられているにも関わらず、WordPressばりの知名度を誇るCMSがRuby界隈には登場していない。が、唯一挙げるとするならばLocomotiveCMSというものがそれに相当するらしい。 Locomotive…

Atom安定版1.0はC言語のコーディングに使えるか?

つい先日、Atomの安定版1.0が公開された。 GitHub、Atomテキスト・エディタの安定版1.0をリリース―月間アクティブ・ユーザーは35万人 | TechCrunch Japanjp.techcrunch.com 筆者は普段C言語やRubyのソースをコーディングする際、Vimを使っている。これまでも…

Raspberry Piにて無線LAN接続が切れる件の対処

Raspberry Piに無線LANアダプタを差し込み、ワイヤレスの状態でいろいろ遊んでいるものの、半日も放置すると無線LAN接続が切れてしまうという問題があった。 ググってもなかなか解決できず、諦めかけていたが下記記事で紹介されているツールを使うことで、切…

Raspberry Piにて無線LANアダプタを使う場合にIPアドレスを固定化する

備忘録として記録する。 Raspberry Piに無線LANアダプタを設置し、無線接続している。デフォルトはDACPであるがこれではIPが動的に変化して不便である。 このため、IPアドレスを固定化することにした。 interfacesを編集する 以下のコマンドにてinterfacesを…

rspec3でハマった

昨年作成したソースを久々に修正し、rpsecによるテストを実行したところどういうわけか修正箇所とは無関係なエラーが多発した。 どうやら昨年時点ではrspec2.x.xを使用しており、rspecのバージョンが3.x.xに上がったことでテストコードが正しく動作しなくな…

デジカメ写真を日付別にフォルダ分けするRubyスクリプトを作成してみた

我が家ではデジカメやスマホで撮影した写真をNASに保存し、PCやスマホから閲覧可能にしている。フォルダは日付別に分けて整理しているが、数カ月分の写真をまとめて吸い出すことも多く、手動での整理に限界が来つつあった。 大抵のファイルシステムであれば…

mruby-mqttを使ってクリーン・セッション(Clean Session)を試す

以前の記事*1*2にてMQTTブローカ、クライアントを作成し、動作確認を実施した。本記事ではこれらを使用してMQTTのクリーン・セッションの動作を確認する過程を記録する。 クリーン・セッションとは MQTTにおけるクリーン・セッションの仕様はIBMのサイト内に…

MQTTのパケットをWiresharkでキャプチャする

MQTTのパケットをWiresharkでキャプチャする方法をまとめる。本記事の動作確認はWindows上で実施した。 問題点 Wireshark1.12.4はMQTTに対応しているように見える。*1しかし、実際にはMQTTのパケットをキャプチャしてもTCPのパケットであるかのように表示さ…

mruby-mqttを使ってMQTTクライアントを作成する

MQTTによる通信 MQTTクライアントを作成する前に、MQTTでは複数のクライアントがどのように通信を行うか理解する必要があります。 MQTTによる通信では「MQTTブローカ」と呼ばれるサーバが必要です。MQTTブローカが複数のクライアントと接続し、クライアント…

RaspberryPi上でMQTTサーバを起動する

MQTTとは 以下の記事がわかりやすい MQTTについてのまとめ — そこはかとなく書くよん。 MQTTの仕様に則り情報を送受信するためにはMQTTサーバ(Broker)が必要らしい。 丁度手元にRaspberryPiがあるので、この実機上にBrokerをインストールし起動させることに…

bundle installにてrmagickのインストールに失敗

Redmine3.0.0をインストールしようと「bundle install」を実行すると失敗した。 Gem::Ext::BuildError: ERROR: Failed to build gem native extension. /home/user/.rbenv/versions/2.1.1/bin/ruby extconf.rb checking for Ruby version >= 1.8.5... yes ch…

Redmineのプラグインをrspecでテストする

近づくRedmine3.0と、混沌としたソースコード 筆者は個人的に作成したRedmineのプラグインをgithubで公開している。Redmine上でニコニコカレンダーを実現するプラグインである。 yuuu/redmine_nikoca_re 実はこのプラグイン、勢いで作ったこともあってテスト…

LinuxのVimでクリップボードへのコピーを実現する

Vim

UbuntuまたはXubuntuでインストールしたVimは"+レジスタを利用したクリップボードのコピーができなかった。次の記事を参考にすると、実現できた。 UbuntuにインストールしたVimでクリップボード共有する方法 | MBA-HACK Vimのバージョン情報を確認 Vimを起動…

mrubyにおけるmrbgemsの設定方法

mrubyは軽量に動作することを前提としたVMであるため、Rubyのように機能が豊富ではない。また、requireで動的にモジュールを読み込むこともできない。従って機能を追加するためには、追加機能のソースを入手し一緒にビルドしておく必要がある。 機能を追加す…

Vimのレジスタをまとめる

Vim

本記事はVimのレジスタに関する情報を備忘録としてまとめたものである。 レジスタとは Vimにおけるレジスタとはヤンク、削除した文字列を記憶しておく引き出しのようなものである。 例えば、「ヤンクした文字列をaレジスタへ格納する」といった具合に、特定…

Windowsで使えるMarkdown エディタを探した

メジャーなものが現れないMarkdownエディタ 本ブログもそうだが、GithubのREADMEなどMarkdownで文章を書くことが増えている。Markdownで文章を書くときはエディタを使うのだが、Markdownに特化した「Markdownエディタ」を使うと便利だ。しかし、特にWindows…

清く正しい本棚を作ってみた まとめ

あるサイト&書籍に影響され、いわゆる「清く正しい本棚」を自宅でDIYした。製作の過程をいくつかの記事に分割して投稿したので、まとめる。 これらの記事が、本棚を作成する全ての人に役立つことを祈っている。 清く正しい本棚を作ってみた(1) 準備編 - .lo…

mrubyデバッガ(mrdb)の設定可能なブレイクポイント数を増やす

先日mrubyデバッガ(mrdb)に関する記事を書いたところ、そこそこ評判が良かったので、もう少し実用的な話題について書きます。 ETロボコン2015の準備。mrubyの開発環境を知る - .logbook mrubyデバッガ(mrdb)を使ってみる - .logbook 突然ですが、mrdbのブレ…

清く正しい本棚を作ってみた(4) 設置編

DIY

清く正しい本棚を作ってみた(3) 塗装編 - .logbookから随分時間が経ってしまったが、水研ぎ~裏板の取り付け、設置作業をまとめる。 水研ぎ 塗装が終わったら、水研ぎをして表面をなめらかにする。水研ぎにはホームセンターで購入した耐水ペーパー(2000番)を…

Windowsでgvimを使う(neobundleのインストール)

Vim

Windows上でgvimを使う手順を備忘録まとめる。Windowsに依存する箇所以外は、Linux, Macでも同様の手順で問題ないはず。(未確認) neobundleのインストール、カラースキーマの設定、vimrcの作成までを対象とする。 gvimのインストール ダウンロード Windows向…

2014年の振り返り

年末年始はバタバタしており、まとめる暇がなかったため、今更ながら2014年の振り返りをする。 やったこと 結構あるのでジャンル分けして挙げてみた。 mrubyに関すること Ruby東京プレゼンテーションに参戦した mrubyデバッガ(mrdb)開発に携わる Redmineのプ…

ETロボコンAdventCalendar2014を振り返る

12/1~25の期間中、ETロボコン Advent Calendar 2014 - Adventarを開催しました。 多くの方々が記事を執筆・公開してくださったおかげで、無事に1記事も欠かすことなく完走することができました。この場を借りて御礼申し上げます。 本記事ではAdvent Calenda…

mrubyデバッガ(mrdb)を使ってみる

mrubyデバッガ(mrdb)を使ってみる #etrobo

ETロボコン2015の準備。mrubyの開発環境を知る

これは、ETロボコン Advent Calendar 2014 - Adventarの 24日目のエントリーに備えた、補足記事です。 mrubyをよく知らない人向けに、mrubyのソフトウェア構成・開発環境についてまとめます。 mrubyのソフトウェア構成 mrubyの内部構造は、おおまかに以下の…

三色ボールペンで読むETロボコン競技規約

これは、ETロボコン Advent Calendar 2014 - Adventarの 17日目のエントリーです。 ETロボコンの競技規約を読むときに三色ボールペンを使うことのメリットをまとめます。 競技規約を正しく理解するために三色ボールペンを使う ETロボコンの競技規約は年々複…

ETロボコン関西連合BOTを作った話

これは、ETロボコン Advent Calendar 2014 - Adventarの 16日目のエントリーです。 昨日はAtsushi (@Atsushi4) | Twitterさんによるインターフェースクラスと抽象クラスのお話でした。いつもありがとうございます。 本日書く記事は実装の話でもモデルの話で…

ETロボコンで使うAPIをモック化してみた

これは、ETロボコン Advent Calendar 2014 - Adventarの 14日目のエントリーです。 本カレンダー初の2日連続投稿となってしまいました。 やはり、前回の記事の続編となります。 作ってみた 前回の記事で書いた通り、PCMockに付属するRubyスクリプトを使うとM…

ETロボコンにおけるモックの役割と作り方

「ETロボコン Advent Calendar 2014」13日目のエントリーを作成しました。 #etrobo

ETロボコンでも使える単体テストフレームワーク

これは、ETロボコン Advent Calendar 2014 - Adventarの 8日目のエントリーです。 単体テストの必要性 ETロボコンに限らず、作成したS/Wはテストを行う必要があります。人間がプログラムを書いている以上、S/Wには誤りが混在しうるためです。 では、ETロボコ…

清く正しい本棚を作ってみた(3) 塗装編

DIY

パテ塗り 組み上がった本棚のネジ止め部分やキズ・へこみのある部分にパテを塗る。本で紹介されている通り、指で直接塗った。 この作業でいくつかわかったことがある。 ネジ止めの際、木材にネジがめり込むまで締めあげておかないとパテでネジを隠すことがで…

raspberry pi と Windowsでファイルを共有する方法

raspberry piを購入し、いろいろ環境構築した。 開発環境となるWindowsからファイルを受け渡すのが面倒だなーと思ったのでsambaサーバを構築。 思いの外、簡単に環境構築できた。 Sambaのインストールと設定と接続

ETロボコンで繰り広げられる情報戦とAdvent Calendar 2014作成の経緯

これは、ETロボコン Advent Calendar 2014 - Adventarの 1 日目のエントリーです。 ETロボコンに参加する際の情報収集と、Advent Calendar作成の経緯の2テーマで記事を執筆します。 ETロボコンの情報戦 「今年からETロボコンに参加するぞ」と意気込んだチー…

清く正しい本棚を作ってみた(2) 製作編

DIY

けがき 本棚を組み立てるために木材へケガキ線を書き入れる。本家サイトや書籍にある方法でケガキをすることで、ズレを防止しながらケガキ線を書き入れることができた。 穴あけ 電動ドライバーにドリルを取り付け、穴を開ける。ドリル直径は5mmを使用した。 …

清く正しい本棚を作ってみた(1) 準備編

DIY

本棚を作るきっかけ こういう仕事をしていると、どうしても技術書やビジネス書をたくさん読む必要がある。問題はその本をどのように保管するか、だ。 自分はどちらかと言うと一冊の本を2回も3回も繰り返し読みたい人間なので、手持ちの本を一目で把握できる…

メンバーのコメントへレスポンスを返せるRedmine 2.0対応のニコカレプラグインを作ってみた

yuuu/redmine_nikoca_re · GitHub Redmine 2.0対応のニコカレプラグインを作ってみた。 ニコカレとは Redmineでよく使うプラグインの一つにニコカレプラグインがある。 ニコカレとはアジャイルなプラクティスの一つである。*1 使い方は非常に簡単で、プロジ…

Redmineプラグイン開発でモデルへカラムを追加する方法

Redmineプラグインはrailsで動作しているが、MVCを生成するrailsジェネレータはplugin用のものを使用するようだ。このため、新規作成・削除といった基本的な操作はできるものの、変則的な操作は対応していなさそう。 代表例として一度作成したテーブルへカラ…

Redmine上で動作するニコカレプラグインを作る(1) 準備編

Redmineを使ってタスクや工数を記録・管理するのが当たり前となっている昨今、プラグインを作成することにした。 しかし、作成方法をググってみたところRedmineのプラグインに関しては情報が少ないように思えた。このため、数少ないサイトの情報やRedmine自…

VirtualBox 4.3.16またしても起動不良

はじめに 以前書いた記事にもあるが、Windows7 64bit上で仮想マシン環境を構築するためにVirtualBoxを使用しているが、ここ最近さまざまなトラブルに見舞われている。 Ubuntu14.04 LTSをVirtualBox上で動作させると非常に遅い - .logbook Ubuntu14.04 LTSをV…

cannot load such file -- bundler/setup (LoadError)を解消

rbenvでインストールしたrubyではなく、システムにインストールしたruby上のgemを使ってbundlerをインストールしていたことが原因だった。 下記コマンドを実行することでrbenvのruby上のgemを使ってbundlerをインストールすることで解消できた。 $ rbenv exe…

RedmineのプラグインをUbuntu(Xubuntu)上で開発する~ハマったことと解決法~

プラグイン開発ガイド - r-labs 上記をベースに開発を進める中で、発生した問題と解決方法をまとめる。 pluginをmigrateするとエラーが発生(1) 下記のようなエラーが発生した。 $ rake -v rake aborted! Gem::LoadError: You have already activated rake 10…