新潟の空は今日も灰色/東京の空は今日も青空

知識も技術も文章力もないので練習しています。新潟から東京へ移住しました。

NDS meetup #8 「JavaScript Day」を開催しました

御礼

長岡IT開発者勉強会、通称NDS。次回で45回目を迎えるこの勉強会の名前を借りて新潟市で行っているNDS meetup(NDS in Niigata)も14日の開催で8回目を迎えることが出来ました。

NDS in Niigata #8 - connpass

前回までは時間がない!を合い言葉言い訳にもくもく会などを開催したりしていたのですが、今回はJavaScriptというものを一つのテーマに定めました。

その結果、30名もの方に来場いただきました! OSCのような大きなカンファレンスでもない中で、新潟市でこれだけの方に集まっていただいたのは主催者として、とても嬉しい気持ちです。

本当にありがとうございました。

勉強会について

今回、JavaScriptをテーマとした背景として、ウォーターセル社内から「新潟にどれくらいのフロントエンドエンジニアがいるんだ?」という声があがったからというものがありました。

そのため社員が張り切って発表内容を作った部分もあって、当初は「内容的にちょっと偏りが激しかったのでは…?」というところは正直否定できませんでした。 ですが、最終的には多く方に発表いただいたおかげで、非常に幅の広い内容になったなあ、と感じています。

JSだけでこの発表、しかも新潟という地方都市でって考えるとすごいと思います。

これは本当に発表者の皆様のおかげだなと思っています。 いくら聞く側の人がいても、発表する人がいなかったら、残念な会にしかなりませんから。

今後の運営について

勉強会本編は良い感じで嬉しかった半面、懇親会やその前後のごたごたもあり、大変申し訳なく思っています。 また、今回を最後に、NDS meetup開催の主導的立場で引っ張ってくださった @dictav さんが東京に行かれてしまうということで、正直今後のNDS meetup運営に不安な面もあります。

ただ、もちろんですが、今後もこの勉強会はまだまだ続けていきたいと考えています。 自分自身の力不足は否応なく感じますが、皆様も気が向いたときには、ぜひお手伝いいただければうれしいです。

特に、懇親会の時も話していたのですが、Code for Niigataを引っ張ってくれている山田さんの組織運営方針などはすごく刺激になってます。 僕自身彼のようにもう少し組織だった運営が出来る様、頑張りたいと思います。

次回の予定や他のイベント

今回のNDS meetupを発端として、「Niigata.js」を定期的に実施したいという話になっています。次回は来年2月か4月の開催予定で動いているようです。

NDS meetupとしては、懇親会の際に、1月のNDS meetupではiOSAndroidをテーマにやろうという方向の話になりました。 日程などが決まり次第、また告知いたしますので、奮ってご参加ください! もちろん、発表はしなくてもご協力いただける方も募集中です!

また、来月12月には、本家NDS#45とNDB(Niigata Developers Bonenkai)が開催予定です。僕もいまから楽しみです!

そのほか、Code for Niigataでは、来月13日にYahoo!Japanの技術者の方を招いて、myThingsのハンズオンをやるという話が出ています。後ほどC4Nから告知が出ると思いますので、こちらもぜひチェックしてみてください。

今後とも、新潟のIT系コミュニティ活性化のために、ご協力よろしくお願いします!

独り言

僕もなにか発表できる技術ネタ作らなきゃなぁ…

新潟のIT勉強会コミュニティ一覧を(暫定的に)まとめてみた

なにを作ったの?

新潟県内のIT勉強会コミュニティをMarkdownでまとめてみました。

ただし、まだまだ未完成です。今現在の動向がつかめていないコミュニティも多くあります。そもそもコミュニティじゃない団体も載せています。

gist7178405c41b5f7a08938

思っていること

きっかけとしては、北海道のコミュニティ「LOCAL」の勉強会情報がすごく整っていて、新潟にはこういうページないよな…作りたいな…という思いからでした。

今のところ、新潟のITコミュニティの横のつながりは人を主に介してだけで、情報がまとまっているページがあるとか、Googleカレンダーにイベント情報まとめてるとか、そういうものは無かったように思います。ちょっと前までFacebookグループでやられていた方がいたようですが、今は更新されていないようで。

本当は、Code for Niigataのサブプロジェクト的に整備していきたかった内容なのですが、しばらく見た目綺麗にしたりするだけの手間が掛けられそうにないため、まずはRAWな形で公開することにしました。最終的には、Code forに移管すると思います。

今後はもう少し整備をしていき、コミュニティのリストだけでなく、イベントとしての勉強会・セミナー・カンファレンス情報なども載せられればと思っています。 理想としては、出張や転勤、場合によっては旅行などで新潟に来たITエンジニアが、フラっと情報を探せて、そのまま勉強会参加出来るような情報ページ作りをしたいなと考えています。

最後に

載せて欲しくない、載せて欲しい、情報を更新して欲しいなどについては、この記事のコメント欄か私のTwitterアカウントに声を掛けてもらえれば対応します。

それでは、新潟でよい勉強会ライフを!

道路趣味

最近、道路が趣味です。すみません、最近じゃなくて昔からでした。

物心ついたときには、すでに車が好きで、幼稚園バスを待つ間、自分の家の前の道を通る車の名前を全部言い当ててから登園していた記憶があります。 大学に入る直前の3月28日に免許をとって、入学後すぐから車に乗り始めて、今の車で4台目。 あるとき気づいたのは、車そのものよりも運転が好きで、さらに運転しているときに道路について考えているのが好きと言うことでした。

実家のすぐそばには、116号というごく平凡な国道*1と402号というそれなりに起伏に富んだ国道(海岸なのにね)が走り、大学の頃は404号という、なにやらなにもなさそうな番号*2の国道のすぐそばで暮らしていました。

道路が好き、と言ってもミクロな視点よりマクロな視点のほうが好きです。道路の組成アスファルトがどうとか、舗装がどうとかについても詳しくなりたいけど、なんでこの険峻なところに道路作ったのか、なんでこんな形の道路になったのかなど、そういう方に対して興味があります。

そんな折り、去年、書店で見かけた一冊の本に胸を躍らせることになりました。

すごく良かった。僕が知らない国道の世界がそこには広がっていました。もちろん知っている内容もたくさんあったんですけど。

読んでみて思ったのは、新潟県というのは道路にはやはり恵まれているということでした。昔から角栄の影響とかとはよく言われていますしね。

なにせ新潟市だけでこれだけの国道の話題があるのです。

  • 新潟市中央区の本町交差点は日本で一番重なっている国道が多い

    国道7号、8号、17号、113号、116号、289号、350号、402号の8国道。ほかに県道も重なってる。あと、高知市にも同数8国道重なっている交差点があるらしい。

  • 新潟市を走る国道7号・8号新潟バイパスのピーク時交通量は日本一

    なお、終日を通しての日本一は神奈川の保土ヶ谷バイパス

  • 国道350号と言えば、海上国道

    しかも、佐渡を経由して上越まで行くんだからね、すごいよね。

新潟市の道路に限らず、やっぱりそういう話題があったり行きたくなるし、走りたくなるしで、今は次どこへ走りにいこうかとか、会社の帰りはあそこの道路寄ってみようか、とかそういうことがナチュラルに行えるというのは素晴らしいと思っています。

そんな中で今一番気になっている道路は国道352号。栃木県から柏崎市までを結ぶそれなりに長い道路で、特に福島・新潟の県境の奥只見湖付近、通称樹海ラインは酷道の一つとして有名です。 この道路は現在もまだ長岡市内に不通区間があり、開通に向けて工事が行われています。

新潟県:一般国道352号 萱峠バイパス

この区間は学生時代からすごく気になっているところで、竹之高地トンネルは、偶然ドライブしているときに見つけて、「これいったいどこに繋がるんだろう」と不思議に思ったものです。 それまでにも反対側の萱峠トンネル側の近くにも行ったことがあったので、まさかこことあそこが繋がる計画とは、当時はよもや思いませんでした。 この竹之高地というところは、山古志の蓬平温泉のさらに奥で、本当に山の奥なのですが、どんな風な道になるのか、今から楽しみで仕方がありません。

上のページを見る限り、栖吉とか蜂伏には間違いなくたどり着かないルートだと思うのですが、これはどうなるのかとか、そのあたりを予想したり、調べてみたりするのも道路の楽しみの一つなんだと思います。

ほかには、国道289号八十里越も楽しみですが、開通は2020年代ということで、もうちょっと先になりそう。

そんなわけで、道路が好きなんだーということをただ書きたかったエントリでした。なんか、道路ネタ増やしたいね。

*1:今じゃ二階級降格で市道ですよ

*2:Not found. ちなみに長岡市小国地区の相野原交差点で403号に接続します。Forbidden!

(僕にとっては)OpenSSH for Windows がすごく良かったというお話し

概要

Windowsをホストマシンとして使うことを前提に、Linux/UNIX系のOSの管理をやろうとしたときに、僕にとってはPuTTYTeraTermよりも、OpenSSH for Windowsをいれた方が良かったというお話し。

背景

今、家(デスクトップ)でも外(ノート)でも、個人ではWindowsマシンを使っています。なお、会社ではMBAです。

Windows環境で、たとえばVirtualBox + Vagrant、たとえばAmazon EC2のような環境にログインしようと思ったらPuTTYなり、TeraTermなり、Poderosaなり、ChromeSSHクライアント使うなりといった選択肢になるんだと思います。

決まったホスト(IP)にしかログインしないのであれば、GUIで設定してそれらでも全然良いんですけど、たとえばコマンドラインvagrant sshコマンドは直接はたたけないですし、EC2をぼこぼこ建てたりつぶしたりしたときにIPが変わるときにはなかなか面倒です。EC2はまだ良いとして、vagrantでいくつかインスタンス作ったときにvagrant ssh appとかができないのは結構きつい…。

一方で、CygwinとかSUAはちょっと大げさすぎるし…。

そこで、一瞬思いついたのは、バッチファイルやGolangで、OpenSSHのsshコマンドと同様のものをパースして、PuTTYなどに渡してやるという案だったんですが、ただただ不毛であることに気づきまして。

根本的な話として、デスクトップのOSをLinuxにするとか、Linux仮想マシンを動かすという案もありましたが、仮想マシンでは結局どれか使わないと入れないし*1、そこそこゲームとかもしたいので、Windowsホストの方がうれしいのです。

「新しくMacでも買えば良いじゃん」と言うのは、お金くれるなら考えます。そこまでもらえてないです。辛い。

一番早い方法として、Windows版のOpenSSHを入れればそれだけで解決して、ちゃんと生産性があがったので紹介します。

これです。

mls-software.com

Windows用のSSH調べると、古いバージョンを配布してるのはすぐ引っかかるんですが、新しいのはここくらいしかなさそうです。やったらあたらしいです。ecdsa鍵だけじゃなくて、ed25519鍵もいけちゃうよ☆*2

もちろん、コマンドラインからvagrant sshもいけちゃいます。

ただし

自己責任でお願いしますね。

Linuxとか、最近だと、yumとかaptとかどこから落としてくるか大体分かるからいいけど、Win32だとそういう機構もないので、その辺りが辛いです*3。良い感じの認証機関とかないんですか。ないんでしょうね。

補足

ごめんなさい、生産性があがったのはSSHのおかげだけでは無いです。コマンドプロンプトをやめて、ConEmuを入れて、git-bash使うようになりました。とりあえず、今の手元の環境はこれでいいかなって思っています。

*1:VBoxとか、VMware Workstation Playerのコンソール使うとかってどうなんですかね?

*2:ただし、僕がログインしに行く環境はCentOSばっかりなのでログイン先が対応してない

*3:ストアアプリがんばれ。

携帯電話の料金を見直してみてる

Facebook あたりに書きまくってるんですが、今お金がないです。辛いです*1

節約するために、いろんな月額料金のものを解約していってます。見直してみると結構無駄遣いしてるもので(-_-;)

ところで、僕の docomo の携帯電話契約、まだ「学割2012」が効いています。学割は3年間有効なのですが、契約したのが修士2年の3月。つまり学生最後の月に契約してるので、まだ有効期間内なのです*2

こいつの学割が切れるとちょっと出費が大きくなるので、それまでに対応策を考えたいところ、というわけで検討してる内容の備忘録。

現状

今がどういったプランになっているかというところから。

1. docomoFOMA回線)

普段は電話用に F-09C に挿してるやつ。iモードと moperaU 契約してた(spモードは未契約)。

2. docomo(Xi回線、学割効いてる)

普段はデータ通信用に SO-02F に挿してるやつ。moperaU とspモード契約中。キャリアメールのメインを契約中。今の時点で6500円くらいかかっててて、半分は端末代金。残り10ヶ月。

3. docomo(Xi回線)

BF-01D 挿してたデータ通信専用のやつ。解約済。10260円払う必要が…。

4. docomoFOMA回線)

祖母の携帯(mova)から僕が受け継いだ番号。死蔵中。700円くらいかかってる。

4は一番古い番号。1もそこそこ古くて高校時代から。

使う頻度も落ちてきたとは言え、キャリアメールはとりあえず確保しておきたい。

考えた結果(現時点での決定事項)

  • 1の moperaU を解約。spモード契約。iモード続行(ここまでは実行済)。spモードに、2に紐付いているキャリアメールを移管する。
  • 2はしばらくはこのまま。プランがタイプXiにねんなので、通話し放題の恩恵がないから変更無し。タイミングを見て IIJmio かワイヤレスゲートに飛ばす。
  • 3は解約済だから関係ない。
  • 4はどうしようか…?続行させる? Fx0 にでも MNP させようかな。

結果を受けて

  • 1の料金は変わらない。ISP割の適用先が moperaU からspモードに変わるだけ。
  • 2の料金は安くなると思った。思ったけど、そういえば端末代金あるんだった。今は一括で払う余裕ないし結局10260円もなんとかしないと。とりあえず隙をみて、払いきりたい。
  • 4はしばらくは変わらないな。

んー、端末代金どうしようかな。工面できればなぁ…。

どっちにしても、しばらくは変わらないっぽいな。

*1:欲しかった車を買ったのです。その点はすごくうれしい。そのうち日記にも書きたいな

*2:つまり社会人3年目が終わると言うことですね。

CentOS 6.xとAmazon Linux(2014.09.1)でyumの戻り値が違う件

状況説明

たとえば、こういうコマンドを打った場合。

  • ちゃんと yum コマンドが発行出来る(権限が足りてる)
  • インストールするパッケージは、パッケージ名では無くURLでの指定である
    • rpm -Uvh http://hoge/fuga.rpm と同義のコマンド
    • レポジトリ登録のときに***-release.2.3.x86_64.rpm みたいなのを最初にインストールすることは結構ありますよね。

とりあえずこの状況では、最初は対象のパッケージはインストールされていない前提で、1回目のコマンド発行でインストールされ、もう一度同じコマンドを実行したときのお話です。

$ sudo yum -y install http://hoge/fuga.rpm
$ sudo yum -y install http://hoge/fuga.rpm # 上と同じコマンド
$ echo $?

CentOS6とAmazon Linuxで値が違います。

結果

CentOS6の場合

0

Amazon Linuxの場合

1

なにが困るか

たとえば、Ansibleとかを使っていると、Amazon Linuxの場合は、- ignore_errors: yes が必須になります。気をつけましょう。

ちょっとつらい…。

Mac のファイル名に使える文字列にびっくりした話

仕事中のこと

仕事では Mac を使っています。

ある日、エクセル*1でファイルを保存しようと思ったときに、なにを思ったか、こんな感じで保存したんです。まあ、Windows とかと同じ感覚で、どうせはじかれるだろうと思っていたんですが*2

f:id:hagane:20140605193242p:plain

ちょっとまって、保存出来てしまったけど、Mac って /(スラッシュ)を含むファイル名保存出来るの?!

ターミナルではどうなるのか

こうなると、よくわからないのは、ターミナルでの扱い。iTerm2 を立ち上げ保存したディレクトリに移動して、ls したらこうでした。

f:id:hagane:20140605193810p:plain

/ だったところが : になってる!二度びっくりです。

これは、本当にコロンなのか?

ファイル名の文字コードとか、ファイルシステムを直接いじれるならその方がいいんでしょうけど、そんな技量今の僕にはないので、とりあえずプログラムから触ったときに、この文字列がなんであるのかを確かめてみました。

Python 2.7.5 (default, Mar  9 2014, 22:15:05)
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> print os.listdir('.')[0]
2014:06:05.xlsx
>>> for i in os.listdir('.')[0]:
...     print i, ord(i)
...
2 50
0 48
1 49
4 52
: 58
0 48
6 54
: 58
0 48
5 53
. 46
x 120
l 108
s 115
x 120
>>>

ASCIIの58は確かに : ですね*3

ふーむ。

これが許されているのは歴史的経緯?

ちょっと調べてみると、BSD ベースになる前の Mac のディレクトリ区切り記号は : だったようですね*4。その当時は、スラッシュはファイル名を構成する文字列として許されていたのでしょう。つまりこれは後方互換性のための措置なんですね。

どうやら、システム内部では : として扱い、Finder で表示するときに / に置き換えている模様。保存した瞬間結構びっくりしたんですけど、すごい仕様ですね。

ですので、bash から / を含む文字列を作ることはできません。bash:をファイル名に含むファイルを作った場合は、Finder 上では、/ に置き換えられて表示されます。

このスラッシュ入り(コロン入り?)ファイル名、Mac 上では閲覧・確認・保存等出来ますが、他のファイルシステムではたぶんだめです。Windows でやったらたぶん怒られます。今のところ、Windows あんまり触れないので確かめられてないんですが、共有しようとしたらなんかしらのトラブルになると思います。というか、Windows で直接 : の入ったファイル名をつけようとしたら怒られました。

Linux: 入りは大丈夫でした(/ は当たり前だけどだめぽ)。GUI 環境のある Linux 環境が今手元にないので、そっちでの表示のされ方は不明ですが、普通に考えれば : のままで出てきて欲しいところです。

というわけで、出来る限りこういう文字列をファイル名を入れるのはやめましょうね、というお話でした。

... もしかして常識でしたか?!

*1:別にエクセルじゃなくてもいいです。

*2:ATOK で「今日」って打鍵して入力した次第。「今日」って打ったときに、「2014-06-05」とかに変換出来ればいいのに…と思って確かめてみたら出来るじゃん!便利!

*3:ASCII文字コード : IT用語辞典

*4:ファイル名のスラッシュとコロン - onumeraneの日記 - mdsg。内容的にも今回の内容とほぼ同じものを書かれている方がいたんですね。