bc コマンドが思った以上に便利なので紹介します

こんにちは。 久しぶりにプログラマー向けの記事です。 bc と言うコマンドが、知れば知るほど素晴らしすぎるので、その凄さを知っている範囲で紹介します。「そんなの知っている」と言う方はスルーでお願いします。

bc コマンドとは

Unix の標準コマンド(SUS Shell and Utilities)の1つで、任意精度の計算を行うコマンドです。例えば Mac OS X は Unix ですので、標準でインストールされています。Windows で使用したい場合は別途インストールする必要が有ります。

使い方(基本編)

起動

Mac OS X で使用する場合の例を紹介します。 まず Dock からターミナルを起動して bc と入力します。

するとクレジット情報が表示され、入力待ちになります。プロンプトはありません。

式の入力

例えば “1+2” を計算したい場合は、そのように入力してリターンキーを押します。

答えは “3” ですね。 デフォルト状態で、四則演算(+, -, *, /)、剰余(%)、累乗(^)、平方根(sqrt)などが使えます。 ちょっとした計算、例えば平均値の計算などが、通常の電卓よりは計算しやすいと思います。

小数点以下の桁数を指定

デフォルト状態では、小数点以下の値は切り捨てられますが、scale と言う特殊変数に値を設定することで、小数の計算結果も得られます。例えば、小数点以下3位までの結果を表示させるには以下のようにします。

終了

終了するときは quit と入力します。

応用編

2進/10進/16進の相互変換(ibase, obase)

このあたりから非常に有用になってきます。 bc は、ibase, obase という変数に値を指定することで、入力と出力に使用する進数を自由に指定できます。

16進数 98A0B0223F を 10進数に変換する

10進数 1234 を2進数に変換する

10進数 987.6543 を 16進数に変換する「16進の小数」なども普通に扱えます!

ひとつ注意点があります。 ibaseを10以外の値にしてしまうと、それ以降入力する値はすべてその進数で入力しなければなりません。例えば以下の例は思うように動作しないでしょう。そのため、obaseを ibaseより先に設定するのが無難です。

16進->10進変換(失敗例)

π の計算(初等関数の使用)

起動時に “-l” (小文字のエル)オプションを付加すると、サイン (s), コサイン (c), アークタンジェント (a), 自然対数 log (l), exp (e), ベッセル関数 (j) が使用できます。このとき scale は自動的に 20 に設定されます。

ここで、アークタンジェント1が π/4 だと言うことを利用し、a(1)*4 で π を求めています。これは数値計算の定石です・・・よね。 scale を 1000 とかにしても、いけます!

そう、π は男のロマン・・・。 誤差はほとんどありません!最後の桁は(4でかけてることもあり)合わないことが多いですが、その1つ前の桁は正しいと思っていいようです。(厳密な話をすると長くなるので割愛します・・・)

π を16進数で表示

ここで obase=16 にすると、16進数で π が表示できたりします!

16進数の π が標準コマンドで、こんな手軽に表示できるとは! しかもPCの計算能力が許すまでいくらでも!

\(^o^)/

オイラー数 e についても e(1) とすれば表示されるので、同様のことが可能です。すごいです。 プログラマーとしては押さえておきたいコマンドですね!

気がついたら当ブログ初の1万PVを越えていた記事がある・・・

こんにちは。

デジゲー博直前、ブログどころかツイートすら控えていたので、書きたいことがたまっていました。久々の1日2記事目の投下をお許しください。

当ブログ tomeapp は、個人アプリ開発者を目指す TOME が、日々の開発で経験した技術的な情報を中心に綴っていくブログとして今年2015年6月に開始しました。

開始直後「さいたま市の創業相談会に行ったら「まず会社作らなくていいからゲーム作りなさい」と言われた」という記事を書いたところ「起業をなめている」「順序が逆」「ふざけるな」などのキツめの応援の言葉をいただきPVを稼いでいました。

さいたま市の創業相談会に行ったら「まず会社作らなくていいからゲーム作りなさい」と言われた
投稿日 : 2015/6/18
最高PV(日): 1,862

合計PV: 6,147Screen Shot 2015-11-17 at 10.20.35 PM

また「アプリが勝手に中国語化されてリリースされていると聞いて調べてみたら、想像以上にやばかった」という記事ではハルシオン様ポケガ人気に便乗したり ITmedia に寄稿するま〜ちさんに取り上げてもらうなどの幸運もあり、ヤフトピ(ヤフーのトップページ)に入る記事に tomeapp の名前が載るなどしました。ありがたいことです・・・。

アプリが勝手に中国語化されてリリースされていると聞いて調べてみたら、想像以上にやばかった
投稿日: 2015/8/12
最高PV(日): 1,978

合計PV: 8,595

Screen Shot 2015-11-17 at 10.24.25 PM

 

上記2つの記事は、かなりのPVがあったのですが、1万PVには到達していませんでした。

 

 

そんな中、ついに tomeapp 史上初の 1万PVを達成する記事がこのほど現れました!

すごい!

 

 

「あれ、あいつ最近炎上してないのになあ?」

 

 

と思われた方、そう。自分も同感です。

しかしその記事は9/23に投稿され、バズることはありませんでしたが、Google や Yahoo! 検索、いわゆる「オーガニック検索」でコンスタントに集客があり、毎日100〜300PVくらいがずーーーと続いています。今でもそうです。と言うか、むしろちょっとずつ増えてる??

その記事はこちら。

日本初上陸!本格中国火鍋『海底撈火鍋』池袋店に行ってきた!
投稿日: 2015/9/23
最高PV(日): 531

合計PV: 12,589

Screen Shot 2015-11-17 at 10.27.30 PM

 

アプリ開発と関係ないじゃん!

( ;´Д`)

・・・それはさておき、継続は力なり。

100PVが100日続けば1万です。

前述の2記事は、1日ほぼ2000PVくらいあったのですが、ピークがその日だけで、いまは1日5PVあるかないかです。

しかしこの謎の食レポ記事は公開から常に1日100PV以上、時として500PVとか出てます。なんでだろう・・・。

 

まあ何というかこの現象はアプリにも当てはまりそうです。

ネットで拡散されて、リリース直後に数万〜100万DL 以上行ってしまうアプリだけがヒットアプリかというとそうでもなく、コンスタントに毎日数百〜数千DL されるアプリ(ツール系が多いと思います)があれば、それが数ヶ月〜数年続くと、ものすごいDL数になります。

残念ながらアプリではまだヒット作と呼べるものが出せていませんが(泣)、前者を狙うか後者を狙うかは、コンセプトの段階ではっきりさせておいたほうがよさそうですね。

ちなみに気付いたら tomeapp 全記事の総計で6万PVを越えてました!

ちょっとずつ増えている気がして、アプリ開発するよりブログ書くほうが簡単かもしれないと思うこともありますが、気のせいでしょう・・・。

tomeapp 総計

最高PV(日): 2,442 (8/13)
合計PV: 60,979

Screen Shot 2015-11-17 at 10.45.18 PM

まじめに開発に戻ります・・・。

( ;´Д`)

『デジゲー博2015』に出展して来ました!

こんにちは。

前回の記事「11/15開催の『デジゲー博2015』に出展します!」で予告していた通り、2015年11月15日に秋葉原で開催されたデジゲー博2015に出展してまいりましたので、出展報告をいたします。

展示

思ったより荷物が多くて会場の秋葉原UDXに着いた時にはすでに疲労困憊していました。日頃の運動不足がシャレにならないレベルに達しているようです。設営は音楽担当の椎葉大翼さんにも手伝っていただき、大変助かりました・・・。

ポスタースタンドは目一杯の高さにして、A2のポスターを掲示。ちょっと両脇にスペースがあったので、配置番号とかフライヤーとか吊るしてみました。

机の上に台を置いてその上に19インチの液晶ディスプレイを乗せました。ここにずっとPRINCIPIA PERFECTUS の動画を流していました。

 

写真 2015-11-16 11 58 21

あとデモ用 MacBook Pro を置きました。試遊可能でしたが、ゲームの完成度がイマイチだったので、あえてオートモードに設定してなるべく触られないようにしました(それで良かったのだろうか・・・)。

手に取れる物としては、フライヤー(紙広告)、缶バッジが無料配布。

そして今回唯一の商品、PRINCIPIA PERFECTUS サウンドトラックCD!(価格: 1,000円)

写真 2015-11-15 12 48 30

音楽担当の配慮により、iPad Mini が設置され、サントラCDの視聴が可能でした。親切。

成果

開場時間が11時〜16時の5時間だったのですが、何というかあっという間な感じでした。

ブースの前を素通りされる方が多いですが、液晶ディスプレイに写した動画や、ポスタースタンドにぶら下げたフライヤーの裏面を見て足を止めてくれる方が結構いました。

あとは知人や、ツイッターで交流のあった方々とそのご友人が結構(HobbyAppTokyoさん、ナナゼロハチさん、チームヒロポン久野さん、bluffmanさん、魔王さま(120)配下Bさん&Aさん、うに+さん、ねこバタ会議さん、じぇふさん、ザクロさん、Zabosamaさん、エムプロさん、奈良の人さん、ryoukeさん、ち←さん&オーヤマさん、Cocominapさん、ふりふらさん、ゆかさとさん、まつたけさん、suiheilibeさん、ガンズターン公式さん、ミスターXさん、囚人へのペルエムフルさん [順不同])ブースまで遊びに来てくれました!ありがとうございます!

ちなみにここっとダンジョン開発中のまさしさん(room6)はブースには来ていただけませんでしたので、こちらから行きました!misakichi02さんとヌンさんもいらっしゃいましたが、話せませんでしたね・・・。

(覚えている範囲で名前あげてしまいましたが、皆さんツイッターで「デジゲー博行きました!」と公言されているので大丈夫でしょう・・・)

あとちょっとここには書けないような方とも挨拶できました。ありがたいです・・・。

頒布できたものの数量

5時間で頒布できた頒布物の数量です。自分のメモも兼ねて参考までに・・・。

フライヤー

124/240枚(残り116枚)

無くなったらどうしよう、と思っていましたが、杞憂でしたね。

缶バッジ

ニュートン:23/40個
アン女王:10/20個
ハレー:12/20個
ホイヘンス:9/20個
合計:56/100個

44個+予備分少々が余ってしまいました・・・。次回使おう・・・。

サントラCD

20枚

バルクCDを現地で包装しながら売っていましたが、ゲームが完成していないサントラCDとしては上々の結果だと思います!バルクCDは製造の都合上、まだたくさんあるので欲しい方はメールください!

感想

デジゲー博は申し込み締め切りが2015年8月末で、その時点で PRINCIPIA PERFECTUS はまったく実装が始まっていませんでした。しかしこんな機会はそうそうないと思い、見切り発車的に申し込んでしまいました。結果、なんとか先が見えるところまで実装できて「開発中です」と宣伝できたので、ちょっとホッとしています。

あとブースに来ていただいた方の中で、15年前の前作 PRINCIPIA を知っている方が結構いらっしゃったのが嬉しかったです。一番すごかったのは「おととい知人に紹介されてやってみた PRINCIPIA の新作が開発中だとは驚いた」という方がいたことです。15年前の作品なのに・・・。(^^;

また、複数の方から「いつリリースされるんですか?」と聞かれたことも嬉しいです。何というか期待されている感じがしました。社交辞令かもしれませんが・・・。

というわけで、年内リリースを目標に頑張って完成まで持っていこうと思います!

11/15開催の『デジゲー博2015』に出展します!

 【※2015年11月13日 更新】

こんにちは。

ツイッターなどでちょろちょろと情報をつぶやいていますが、2015年11月15日(日)に秋葉原で開催されるデジゲー博2015に『tomeapp』として出展させていただきます!

つきましては展示予定内容をこちらで紹介しますので、興味を持たれた方は是非当日会場に足をお運びください!

ゲーム完成しなかったから、あるものでやるしかない・・・・・・!!

( ;´Д`)

展示内容(予定)

PRINCIPIA PERFECTUS のデモ展示

開発中の新作「PRINCIPIA PERFECTUS(プリンキピア・ペルフェクトゥス)」のデモを展示します。

プレイ可能なものにするか、動画再生にするかなどの詳細は現在検討中です。当日までの完成具合で判断します。

SS_Society SS_Main

サウンドトラックCD先行販売

ねずみハンターキャシーに引き続いて、本作の音楽は椎葉大翼さんに担当していただきました。本作ではなんと挿入される6曲すべてに新曲を提供していただきました!すごすぎる!

ゲーム本編の正式リリースに先駆けて、この椎葉大翼さんの新曲6曲を収録したサントラCDを先行販売いたします!すべて弦楽四重奏による生演奏です!やばい!!

12212476_430671150458220_1588844550_n

当日(11/15)は椎葉さん本人もブースに来ていただける予定ですので、ファンの方にはいろいろとすごいチャンスなのではないかと思います。

CDは現在台湾の工場で絶賛プレス中のはずです!間に合え!!(価格:1,000円)

【※2015年11月13日更新: CD間に合った模様です】

フライヤー配布(先着200名)

街中で配布する紙の広告のこと「フライヤー」って言うんですね。最近まで知りませんでした・・・。まあ宣伝です。ブースにいらしたらとりあえず持って行ってください。 omote ura

缶バッジ配布(先着100名)

展示物をいろいろ検討していたところ、物足りない気がしてきて急遽ノベリティーグッズに手を出しました。定番の缶バッジです! とりいそぎ4種類デザインして100個発注しましたが、まだ実物を見れておりません! Screen Shot 2015-11-06 at 11.57.05 AM 果たしてどんなものが出来てくるのかもわかりませんが、一応間に合う予定です。ニュートンはまだいいですが、ホイヘンスの缶バッジなどは少なくとも日本初のシロモノではないでしょうか。 ニュートン40個、その他3名各20個用意しますので、是非ブースにいらして、この謎のレアアイテムをゲットしてください!

【※2015年11月13日更新: 缶バッジ届きました】  

開催情報

イベント名:デジゲー博2015
日時:2015年11月15日(日)11:00~16:00
場所:秋葉原UDX2階 アキバ・スクエア
(※入場のために1,000円のカタログの購入が必要)
公式ホームページ:http://digigame-expo.org

digihaku-banner1

ブース情報

CircleCut

【サークル名】tomeapp
【代表者】TOME
【配置】C-06b
【ジャンル】シミュレーション

 

それではデジゲー博2015でお待ちしています!

 

奨学金完済したら何か送られてきた

こんにちは。

奨学金制度といえば、最近いろいろネガティブな声も聞かれますが、自分は学生時代に利用させていただき、ずいぶん助かりました。

先日13年間かかってようやく完済することができたので、記念の投稿です。

借りた時の状況

自分の場合は学部の卒業までは親のすねをかじっており、学部卒業後、一般企業に就職しました。しかしその後、会社やめたくなって進学を名目に退職した(苦笑)という経緯があります。

数年間社会人やって貯金も少しあったので、今度は自分で払おうと決意し、学費は自分で払っていました。しかし1年間生活してみて、結構苦しいことに気づいて、2年目に日本育英会(現:日本学生支援機構)様の制度の奨学金を申請し、支援を受けました。尚、残念ながら利子のある方(第二種奨学金)しかもらえなかった模様。(泣)

このような返済義務のあるものを奨学金と呼ぶのはよくないという人もいますが、自分のように成績があまりよくない学生にとっては、返済義務があっても支援していただけるのはありがたかったです!

それで1年間、合計120万円の奨学金をいただきました。自分の場合1年間しか借りなかったので合計額はおそらく比較的少額だと思います。

返済

卒業後、再度就職したので返済が始まりました。年利は0.7%とのことで、自分の場合は大体毎月8千円くらい返済していました。お金のことよくわかりませんが、新◯銀行カードローンのレ◯クが実質年利4.5%~18.0%と書かれているので、恐らくかなり低金利だと思います。

昔は「奨学金は踏み倒すもんだ」みたいな噂もあったのですが、自分はそんな度胸はなく、言われるがまま返済することにしました。(当たり前)

それから13年、口座引き落としにしているので、あんまり実感もないまま毎月毎月返済は続いていました。

そしていろいろありすぎましたが、月日は流れ・・・。

とうとう残額が0円になる日が来ました。

長かった・・・。

というわけで2015年9月の引き落としを持って、完済となりました。なったはず。

返済完了したら?

で、そのあと特に何も音沙汰なかったので「やっぱりお役所はドライだなあ」と思っていたのですが、11月に入って、何か来ました!

a

 

b

おお、「返還完了証」!

正直に生きてきたことが報われたようで、ちょっと嬉しいですね!

感想

借金返し終わっただけなんですが、すごい達成感でした。

踏み倒そうとしたこともありますが、いえ、ないです。返せてよかった・・・。

正直、一括返済とかもできなくはなかったんですけど、上記のようにこんなに低金利でお金借りれる機会はそうそうないだろうと思って、あえて繰上げ返済はしませんでした。

しかし13年間、いつも心のどこかに借金をしているという重みがありました。なので、精神的には一括返済した方がよかったかもしれません。こころだいじ。

さあ、あとは住宅ローンだ。(震え声)

サイン、コサインをインテルの CPU で計算すると少しバグっているらしい

こんにちは。

ちょっと前にどこかの偉い人が「女性にサイン、コサイン教えても仕方ない」ような発言をして炎上したのは記憶に新しいところです。面白いですね。

「女の子にサインコサイン教えて何になる」 鹿児島県知事の発言がネットで非難 発言撤回の会見動画も公開 – ねとらぼ
http://nlab.itmedia.co.jp/nl/articles/1508/28/news145.html 

「いやいやサイン、コサイン使うでしょ」という反論には完全に同意です。それはよいのですが、プログラマー的な視点で見れば「サイン、コサインはコンピュータでどうやって求めているか」を説明できてやっと安心(?)ではないでしょうか。

そこでちょっと復習と思って調べてみたら、なんかインテルのCPUのバグ?の話とか出てきてわけが分からなくなってきたので、まとめておきました。

sin(x) の求め方(基本)

理系の方は学校で習ったと思いますが、テーラー展開した多項式で求めるのが常套手段です。

例えばサインの値は、以下の多項式で表現できます。

Screen Shot 2015-10-21 at 10.26.30 AM

自然科学のための数学I/II(2014年度)- 琉球大学
http://www.phys.u-ryukyu.ac.jp/~maeno/sizensuugaku/lec11_sin.html

これを実際に計算するサンプルプログラムとかはネット上にごろごろしてるので、ここでは挑戦しません。ここでは、この計算が最近のコンピュータのどの部分で行われるかに注目してみます。

コンピュータのどの部分で計算しているのか

コンピュータで sin(x) の値を計算させるときは、昔も今も上記の多項式が使われているようです。(※他のアルゴリズムもありますがあまり使われていないらしい)

最近(と言っても 8087 にすでにあったようなので20年以上前から)はハードウエアレベルでその機能が提供されています。別の言い方をすると、sin(x) の値を求めるアセンブラ命令があるということです。インテルの x87 では FSIN, FCOS などです。

なので当然 sin(x) の実装にはこのアセンブラ命令 FSIN が使われていると思いますよね?

しかし念のため確認してみると意外な事実が判明しました。確認したのは GNU の C 標準ライブラリ glibc のソースで、バージョンは 2.22.90 です。

GNU C Library (glibc)

https://www.gnu.org/software/libc/

おそらく sin(x), cos(x), tan(x) とかはそのハードウエアのアセンブラ命令を叩くだけのはず。

sin(x) とかはアーキテクチャ依存の実装になるので、double __sin(double) の実装があちこちにあって悩ましいですが、とりあえず x86_64 アーキテクチャでは、

  • sysdeps/x86_64/fpu/multiarch/s_sin.c
  • sysdeps/ieee754/dbl-64/s_sin.c

の実装が有効のようです。すると、

<sysdeps/ieee754/dbl-64/s_sin.c>

Screen Shot 2015-10-21 at 1.11.21 PM

https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/ieee754/dbl-64/s_sin.c;hb=HEAD#l279

あ、あれ?

なんか思っていたのと違いますね・・・と言うか、完全にソフトウェア的に計算しています。

なんでハードウエアサポート使わないの?

せっかくハードウェアサポートがあるのに何で使わないんだろうか・・・。って思っていろいろ調べてみましたが、以下ページを見つけました。

Intel overstates FPU accuracy – 06/01/2013

http://notabs.org/fpuaccuracy/index.htm

Screen Shot 2015-10-21 at 1.17.29 PM

リンク先を見てみると「インテルの FPU (x87) のコサイン、タンジェント命令は、スペック通りの精度がでない場合がある。」と言った趣旨のことが書かれています。

また以下のページにも興味深いことが書いてあります。

How does C compute sin() and other math functions? – Stackoverflow

http://stackoverflow.com/questions/2284860/how-does-c-compute-sin-and-other-math-functions

Screen Shot 2015-10-21 at 2.35.57 PM

この質問に対する回答によると、「2011年の10月以降 x86-64の Linuxではこの(ソフトウェア)コードが使われており、明らかにFSINより速いSince October 2011, this is the code that actually runs when you call sin() on a typical x86-64 Linux system. It is apparently faster than the fsin assembly instruction.)」とのことです。

というわけで、現在かなり普及している x86_64 アーキテクチャー(Windowsも Mac も大部分が採用している)の CPU の三角関数命令 FSIN は、速度、精度などが問題視されており(少なくとも glibc では)、別途ソフトウェア的に実現されているようです。

他の実装ではどうなっているかは不明ですが、glibc での実装と似たようなことをやっているのではないかと思います。

インテルも大変なんだな・・・。

まとめ

  • サインなどの三角関数の値はテーラー展開を使用した有名な式を昔も今も使って計算していることが多い。
  • 20年以上昔から浮動小数点数演算用のFPU(コプロセッサー) には三角関数の値を計算する命令(ハードウェアサポート)がある。
  • しかしインテルの x86_64 系アーキテクチャーのこの命令は精度及び速度に問題があるらしく、少なくとも glibc 2.22 ではFPUのサイン命令は使っておらず、ソフトウェア的に計算しているらしい。

という感じでした。

何はともあれ glibc の sin 関数のソースは勉強になるので、数値計算に興味のある方には一度じっくり見てみることをおすすめします。

 

 

「性別」を表す変数名をアレにするのやめませんか?

こんにちは。

プログラマーあるあるだと思うのですが、人物を表すクラスなどをしばしば以下のように定義すると思います。

typedef _Person {
    char* name;  //名前
    int age;     //年齢
    int sex;     //性別 (0:男性 1:女性) <=== 恥ずかしい (><)
} Person;

 (※言語は何でもいいんですけど、とりあえず C で記述します)

「性別」って辞書で調べると「sex」って出てくるので、おおそうかとばかりにこれを変数名にしているコードが実に多いです。

いや間違いではないし、むしろ正しいのですが、個人的にはなんか恥ずかしくてどうしてもやりたくありません。

「sex = 1;」とか書きたくない。

「sex が 0 のとき・・・」とか読みたくない。

セクハラ認定されそう。

などなど不安でたまりせん。

そこで代案をいくつかあげましたのでプログラマーの皆さんにおかれては、今後そのようなコードを記述する際にはご検討ください。

代案1:そこだけローマ字にする

ぐぐってみると以下のようなコードを使っているサイトがありました。

typedef _Person {
    char* name;   //名前
    int age;      //年齢
    int seibetsu; //性別 (0:男性 1:女性) <===
} Person;

個人的には「これは無い」と思いますが、例の単語を使うよりはましな気もしました。しかしおすすめではありません。自分がコードレビューワーなら却下したいところです。

代案2:”gender” に置き換える

個人的なおすすめはこれ。”sex” という単語の代わりに “gender” (ジェンダー)と言う単語を使う方法です。ロジックはそのままなので簡単ですね。ちなみに weblio 様のサイトによると gender の意味は次の通り。

gender【名詞】
1【文法】 性.
2《口語》 (人の)性,性別,ジェンダー 《社会的,文化的意味づけをされた男女の差異》.

[weblio – http://ejje.weblio.jp/content/gender]

いろいろ調べてみると、gender は sex よりも「社会的な性」という意味で使われることが多いとか書かれてたりしますが、Wikipedia 様の「Sex and gender distinction」(2015年10月18日閲覧)という記事によると婉曲表現うんぬんとの解説があるので、今回の目的にも使えると思います。っていうか、自分は使います。

typedef _Person {
    char* name;   //名前
    int age;      //年齢
    int gender;   //性別 (0:男性 1:女性) <===
} Person;

「ジェンダーが0のとき〜」とか自然に読めます。やった!

代案3:男性であるかどうかのフラグに置き換える

これもいい方法です。「性別」ではなく「男性かどうか」のフラグに置き換える方法です。

typedef _Person {
    char* name;   //名前
    int age;      //年齢
    BOOL isMale;  //性別 (TRUE:男性 FALSE:女性) <===
} Person;

但し、こうすると「男性でも女性でもない」状態が表現できなくなります。それが必要な場面はそれほど多くはないと思いますが、昔自分がかかわった医療機器のコードでは、性別は「男性、女性、不明」と3つの値が取れるように定義されてました。

この方法にはもう1つ心配な点があります。それは「なんで真の時に男性を表すのですか?これは男尊女卑的ではないですか?」というクレームがどこからともなく来そうな予感がするところです。

それに備えてコードを以下の様にしておけばスキはありません。

typedef _Person {
    char* name;    //名前
    int age;       //年齢
    BOOL isFemale; //性別 (TRUE:女性 FALSE:男性) <===
} Person;

これなら真のときに女性を表すので妙なつっこみもできそうにないですね!

以上、真面目な提案なのでよろしくお願いいたします。

駅のホームにある非常ボタンを押したときの話(※適正使用)

こんにちは。

昨日、Yahoo!ニュースにこんな記事があったのですが、

非常ボタンで阪急電車を妨害 男2人を逮捕(毎日放送) – Yahoo!ニュース http://headlines.yahoo.co.jp/hl?a=20151015-00000019-mbsnewsv-l26

そう言えば自分もまだ会社員だった時代、非常ボタン押したことあります。もちろんニュースのようないたずらではなく、ちゃんと非常事態でした!

会社がJR豊田駅にあったので、朝自宅からJR中央線で豊田まで行ったときの話です。そのときのツイートしてたので、正確な日時がわかりました。2013年の6月11日だったようです。ツイート便利ですね。

自分は一番後ろの車両に乗るのが好きなので、その日も一番後ろの車両に乗っていて豊田で降りました。で、ホームの端から階段まで、(会社行きたくないので)ゆっくり歩いていました(笑)。そうしていると、自分の後ろの方でドスンと言う音がして続いて男性のうめき声がしました。

すぐに振り返ってみると、5〜60歳くらいのおじさんがホームの下に転落してました。周りに誰もいなかったので、突き落とされたとかではなく、一人で落ちたようです。間近で見たときに感じたのですが、ホームから線路上に落ちただけでも怪我してたと思います。音もそんな感じでした。

で、すぐに電車が来る雰囲気ではありませんでしたが、来てしまったらやばいです。ホームを見渡しても、近くには自分しかいない感じでした。

あ、なんかこれはやばい。あれ、駅員さん呼ばないと!非常ボタンだ!

って思って近くを見渡すと、5〜10メートルくらい離れたところにありました!非常ボタン!

結構こまめな間隔で設置してあるんですね。(※この画像は豊田駅のものではありません)

Emargency_train_stop_button

“Emargency train stop button”. Licensed under GFDL via Wikipedia – https://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Emargency_train_stop_button.jpg#/media/File:Emargency_train_stop_button.jpg

迷っている時間はなかったので、押しました。

ボタンを押すと、ホーム全体に「ビーーーーー」と言う警報音が大音量で鳴り始めます。

これはずーっと鳴ってます。多分音を止める操作をするまで鳴り続けるのだと思います。

そうすると、どこからともなく多方面から駅員さんが駆け寄ってきました。ホーム上から2人(どこにいた?)くらいと、階段から2人くらい降りてきて、合計3〜4人来ました。

自分はそこから離れるといたずらだと思われたりするかもしれないので、駅員さんが来るのを待っていました。

で、駅員さんが「押された方ですか?」とか聞いてきて、押した理由とか言おうと思ったんですけど20メートルくらい先に人が転落していたので、指差しただけで全てが通じました。

幸い後続電車もすぐにはなく、駅員さんが2〜3人がかりで転落した人を助け上げていました。

助け上げ終わったくらいのときに警報音も鳴り止みました。

てっきり非常ボタンを押した人は駅員室に連れて行かれて、長々と事情聴取的なものがあるのかなあと思ってたんですが、ありませんでした。ただ、連絡先を教えて欲しいと言われたので携帯の電話番号だけ伝えました。確か名前は聞かれませんでした。個人的には貴重な経験だったので、むしろ名前聞いて欲しかったんですけど。

結局事情聴取もほぼ無かったので、午前中は会社サボれるかもと言う淡い期待は叶わず、普通に1日がスタートしました。JRからの電話も来ませんでした。

なおボタンを押した時の感触ですが、フニャフニャしてたのが印象的です。その時のツイート。

皆さんも危険を感じたらためらわずに押したほうがよいと思います。いたずらはだめですが!

水のトラブルがあったので業者呼んだら危うく別のトラブルに巻き込まれるところだった

こんにちは。

築10年のマンション住まいですが、先日洗面所の蛇口を閉めても水がちょろちょろ漏れていることに気づいたときの話です。

いわゆる「水のトラブル」というやつですかね。

業者さん呼んだんですけど、危うく「別のトラブル」に巻き込まれるところだったので、そのときの顛末を紹介します。皆さんもお気をつけください。

「水のトラブル」なので業者さん呼んだ

ある日、洗面所の蛇口を閉めても、水がちょろちょろと漏れていることに気づきました。

当時忙しかったこともありしばらく放置していたんですけど、だんだん漏れがひどくなってきたのでしかたなく業者さんを呼ぶことにしました。

自宅はさいたま市内なんですが、よくポストにこんな感じの広告が入ってます。マグネットになってるので、台所とかに貼り付けておきました。ついにこいつの出番が。

securedownload

(※重要)この写真の業者さんと本文の業者は関係ありません!その業者のやつは即刻捨てました!

たしか土曜日の昼ごろ電話したら、「本日の16時ごろに伺えます」とのことだったのでお願いしました。そして16時近くになって業者さんが到着。

早速洗面所の状況を見てもらうと、

「ああ、これは壊れてますね。とりあえず止めますね。」

と言って、洗面所の下の棚の部分を開くと、そこに隠し蛇口があってそこで止めてました。

考えてみれば当たり前な気もしますが、そんなとこに蛇口があって、手でひねればすぐ止められるんですね。恥ずかしいですが知りませんでした・・・。

securedownload-1

で、その業者さんが言うには、

「このメーカーは倒産している。いま自分の車にある別のメーカーのやつと総入れ替えすれば直せますがどうしますか?値段は8万円くらいです。」

とのことでした。

まさかの見積もり8万円

軽い気持ちで修理を頼んだつもりが、新品との交換で8万円!

なんか(この業者とは関係ない)テレビCMとか見てたので、元体操の選手みたいな人がニコニコしながら専用の工具でチョチョっと直してくれて8千円、とかいうのを期待してたので、びっくりしました。

こちらも人生経験多少あるおっさんなので、これは水道トラブルの緊急性につけこんだ手口ではないかと疑い始め、

「わかりました。お金がないので、ちょっと考えさせてください。」

と言って帰ってもらいました。

真剣に調べることにした

こちらとしては、洗面所の下に隠された蛇口を閉めればとりあえず水は止まることを教えてもらったので、緊急性は下がりました。

で、いろいろぐぐってみると、確かのこの水道メーカーMYMは、水道事業から撤退していたのですが、メンテナンスはKVKという別会社が引き継いで行っているようです。

securedownload-4

↑蛇口の下の方にメーカー名(MYM)が書いてありました。

自分で直せて4千円ですんだ・・・

長くなるので詳細は割愛しますが、これをドライバーなどで分解してみたところ、水漏れしている箇所がわかり、その部品をアマゾンで購入することができました。

アマゾン便利すぎ!!

KVK シングルレバーカートリッジ 【PZ110S】

41oRA6yTvML._SX425_

(※注意)似たようなパーツがたくさんあるので、購入する場合はよーーく調べてからにしてください!
レバーを上げたときに閉まるタイプと、下げたときに閉まるタイプもあったりします!

交換したら、直りました!

自分でやったので、部品代の4千円ですみました!8万円はひどい!

全部の業者がこんな感じなのかはわかりませんが、皆さんも水道トラブルの際はぼったくられないように気をつけてください!

会社やめたら出勤したくてたまらなくなった

こんにちは。

今年の初めに会社やめてから半年と少したったのですが、あれほど行きたくなかった会社に行きたくなってきました。

人間の心理とは不思議なものです。と言うか結局いまの状態から逃げ出したいだけなのかもしれませんが・・・。

せっかくなので経緯と現状についての報告です。会社辞めようかどうしようか検討している方などの参考になれば幸いです。

プロフィール

1973年生まれの42歳です。妻と4歳になる娘1人の3人家族。

今年3月に10年勤めた会社を辞めて現在起業準備中。(ただし再就職も捨てきれない)

会社を辞めた理由

前向きな理由と後向きな理由が相乗効果をもたらして辞めてしまいました。

後向きな理由は、会社の人も見ているかもしれないので控えめな表現にせざると得ませんが(苦笑)、仕事が忙しすぎて会社に行きたくなくなったからです。朝起きるのつらいし。

前向きな理由は、もともとフリーでいくつか公開していたゲームを商品化して勝負してみたいとずっと考えていたからです。最近はアプリとかで市場も広がっているという噂もありました。(その噂についてはまた長くなるのでここでは触れません・・)

会社やめて良かったこと

朝目覚ましをかけなくてもよくなったのが何気に一番うれしいです。

勤めてた会社はコアタイムの無いフレックスのような制度で、ミーティグが無い限り何時に出社しても良かったんですが、忙しくなってくると朝9時とか10時からのミーティングは普通なので、結局それに間に合うように目覚ましをかけて出勤しなければなりません。

しかし自分が朝弱いのが原因なのか、それとも最近ちょっと話題になった『午前10時前から働くことは「拷問に近い」と英研究 ネットは「今世紀最大級の重要な発見」と賛同 』のように、朝9時からの始業がそもそも無理があるのかわかりませんが、自分は毎朝つらかったです。

会社やめて良くなかったこと

おちんぎんがもらえなくなります。

まあ当たり前なんですけど、これにつきます。みんなお金のために働いているのです。自分もそうでした。

最近の生活

現在、自分のゲームを商品化すべく活動しています。

会社辞めた後、とりあえず2本アプリリリースしてみたんですけど、びっくりするほどダウンロードされてません。収入はほとんどありません。(泣)

生活費は、失業保険と貯金から出してます。今年いっぱいくらいは収入なくても大丈夫そうですが、その後はさすがにまずいです。

いま、社運(?)をかけて新作を開発中ですが、なかなかはかどっていません。この新作は、プログラムが自分、音楽とグラフィックはそれぞれ発注して制作してもらっているのですが、この自分担当のプログラム部分がはかどらない。

準備期間を経て、8月 始めくらいから開発しており、2ヶ月で完成の予定でした。ああ、だから9月いっぱいで完成の予定だったんですね。いま思い出しました・・・。

しかし本日10/14現在、まだ50%くらいしかできてないです。進捗ダメです。

予定では来月11/15に開催される展示会(デジゲー博)でパッケージ販売しようと思っていました。いろいろ調べたところ、パッケージにするには3週間〜1ヶ月くらい前に発注しない間に合わないようなので、そうすると今日くらいにすでに完成してないとダメだった。

しかたないのでパッケージ販売はあきらめて、どうしようかなあとか考えています・・・。

「出勤したくなった」の真意(1)

やっと本題です。

会社員時代は、朝早く出勤し終電まで会社にいることはよくありました。

今は、寝たいだけ寝て起きると10時とか11時だったりします。寝不足は頭の回転を悪くすると信じているので、それはいいんですが、その後自宅で机に向かうこともあれば、外出してスターバックスとかタリーズコーヒーとかで作業することもあります。

誰も管理してないので、気が乗らなかったら作業しません。というか、できません。

最初は「そのうちやる気でるよね。やる気でるまで待とう。」って思っていて、実際1日とかサボると次の日とかは結構やる気出てました。

最近は、なんかなかなかやる気が出なくなってきました。これはたぶんやばい。

会社員時代は、いやだったんですけど、進捗管理されてました。なので、いやだったんですけど、やる気がないからと言って手を動かさないわけにはいきません。いやでしたが。無理やりにでも手を動かせば進捗はあります。これが今の自分にはないんですよね。

「出勤したくなった」の真意(2)

会社員最後の2年間くらいは、20人くらいのソフトチームの開発リーダーをやってました。リーダーなんて向いてないんですけど、目立つのは好きでした。

そんなこともあって、会社での自分は多少輝いていました。たぶん。

なので、それがいいモチベーションになっていたようですね。頑張れている実感。

今の自分は、1人でやっているので、頑張れている実感がありません。計画通りにリリースしていけば、多少は結果も期待できると信じていますが、なんか頑張っても頑張らなくてもリリースするまでは反応もらえないんですよね。

なので、モチベーションが足りなくなっている気がひしひしとします。最近特に。やばい。

imgres

まとめ

というわけで、一人でずっと作業していると、

  • 管理されてないので、果てしなくサボれてしまう。これは楽だけど、やばい。
  • まわりに誰もいないと頑張れてるのか頑張れてないのかよくわかなくてモチベーションが下がってくる。

と言ったデメリットがあることを痛感しました。大丈夫かな、自分?

ちなみに、それなりの貯金をしてから辞めたのでお金の問題はまだ発生してません。しかしそれが逆にモチベーションを下げている気も少しだけします。

自分でもよくわかりませんが、たぶん「ちょっと会社行って管理されて、やる気を取り戻したい・・・」と感じているようです。

行きませんけど・・・。

 

1 2 3 4 7