2018年8月21日

仕事で思うところがあり、久しぶりにJenkinsの環境を構築。

2,3年前と比べてUIが少しわかりやすくなったような気もするけれど、設定の面倒さは変わらず。

設定の自由度が高い分仕方ないのだろうけど、最初にビルドタスクが通るようにしたりテストとかのタスクがきちんと動くように持っていくまでが手間がかかる。

実行時のパーミッションが違うとか、SCMからチェックアウトしたままの状態ではビルドが通らない(Makefileとか設定ファイルの変更が必要)から、チェックアウト後に修正済み設定ファイルを上書きするとか、別プロジェクでビルドしたファイルが後工程で必要になるとかいろいろ。

オンプレで使えるCIツールはJenkinsの一人勝ち?なのは変わってないのかな。
いまの時代は外部のCIサービスを使えってことなのだろうけど、当然我々のようなSI仕事の場合はセキュリティポリシー云々で外のサービスは原則使えないので。


2018年8月20日

夏休みの9連休明け。

ほぼインドアな過ごし方だったが休み中にやろうと予定していたことの3分の1もできなかった。
起きてる間はいろいろやってたはずだけど、時間はどこに消えたのか…。

読書も録画消化もあまり進まず。
技術の勉強は手を付けた程度で何かを作るまでも至らず。

・このブログのテーマ、見た目の調整
・VPS、クラウドについて調べる(途中)
・録画番組消化

文字にしてみるとこの程度か。

時間だけあっても使い方が上手ではないのだろうなあ。
まあ動画を観たりゲームしてたりもしてたのである程度は仕方ないか。


個人で開発する時のサーバに悩む

個人開発者向けサーバ環境の選び方まとめ(heroku,aws,firebaseなどなど)

↑の記事にあるように、個人でちょっとお試し開発したいときのサーバの選択肢は意外と難しいように思う。

自分が作ったサービスとかを公開するつもりなら別だけど、自分しか使わないとかちょっと実験的な使い方だと使う頻度も高くないので

・できれば安く(数百円、高くても月1000円以内)
・でもある程度自由が効く(ソフトのインストールができる)
・対応言語が多い(今はpythonが動いてくれればいいかな)
・DBも使える(しっかり使うわけでもないので軽く使えればOK)

という感じ。

勉強として考えるとAWSとかAzureあたりを触っておくのがいつか役に立つかもしれないけど、どうしてもこのあたりはVPSとして使おうとすると割高になるように思う。
(スモールインスタンスやサーバレス環境があるのは知ってるけど、一通りのVPSとして使うとなると)

いまは、このブログのレンタルサーバとしてエックスサーバー、VPSはDTIのServersMan@VPSを契約している。

ServersManは月500円でメモリ1GBと安くてスペックもそこそこだけれど、管理画面が貧弱というか無いに等しいのと、選択できるOSが古めのしかない、VPSサービスの改善やアップデートが数年単位で止まっているように見えるのが少し不満なので、どこか良い所があれば乗り換えたい。

今の時点ではいろいろ見てみて、Conohaあたりを検討中。サーバスペックは落ちるけど現在進行系でサービス内容がアップデートされているところが良いかなあと。


2018年8月10日

昨日あたりから朝晩の通勤の人が目に見えて減る。
今週が夏休みのところも多いのだろう。

うちは今週末から9連休。
いつも客先の夏休みは5日間と、自社の夏休み期間より短くて損した気分だったのだけど今年は17日を有給にすることで9連休に。

休みが長くなったとは言っても少し風邪気味なのとこの猛暑で、どこか旅行して日中に観光する、という意欲が沸かない。
おそらく基本は自宅で、行っても近場くらいの過ごし方になるかな。


夏風邪

先週あたりから夏風邪をひいたらしい。
職場で体調を崩していた人がいたので、感染ったのか他の原因なのかは分からないが。

いつもの風邪のパターンに比べて、鼻水が少なく、喉の痛みも少ない。
ただ咳と痰はいつもと同じ。

今週末から夏休みだというのに体調を崩すとは…。
ひとまずこれ以上ひどくならないように用心。


最近触っている技術

後の自分のためにメモ。
2018年8月時点ではだいたいこんなことをやっている。

・仕事はC++メイン。テンプレートをゴリゴリというより割とシンプルなクラス構成のもの
・ただし開発環境がC++11もフルで使えないくらいのコンパイラバージョンなので少し面倒

・勝手にPythonの勉強も兼ねて開発用ツールを作っている。PythonでCUIツールだったり、Python + FlaskでWebアプリだったり(勝手に作っているとは言っても作ったものはチーム内に公開してる)
・LeafletやGoogleMap APIも入門レベルでは使えるようになった
・CSSフレームワークはBulma。簡単な分、少し手の届かないところもあるがあまり不満はない
・JS関係はVue.jsでSPAを見よう見まねで。ただしVue.jsのコンポーネントは勉強できてないので作れない
・DBはPostgreSQL。ただこれはデータストアのために使っているだけなので、そこまでDB自体を弄り倒してない
・SCMはチームはTFSやSVN。手元では一人ローカルgitで開発ブランチ切ったりして少しだけ導入してる


自作PCを新調してみようか考え中

いま使っているデスクトップPCを自作したのが、だいたい4年前

haswell世代のCorei5を使っていてそれほど不満は無かったのだが、今年話題になったCPUの脆弱性「Spectre」「Meltdown」の対策が入ったあたりから体感で速度が落ちているような気がする。

実際に対策パッチを当てるとパフォーマンスは多少低下するらしいので、この体感での低下もまんざら気のせいではないのだろう。

ということで、ふとPCを新調しようか…という気分になってきた。
過去にはAMDのCPUを好んで使っていたこともあるので、Ryzenが気になる。

ずっと自作PC関係のニュースを追っていなかったので、パーツの相場を調べるところからだけどメモリが高いらしいので、16GBくらい載せたい私としてはちょっと考えどころかもしれない。


Subversionのコマンド結果(svn logなど)をXML形式で取得する

つい最近まで知らなかったのでメモ。

ソースコードのバージョン管理と言えば今ではgitがトレンドだけど、仕事先ではまだまだSubversionだったりマイクロソフトのTeam Foundation Serverだったりで、おそらくgitを使っているチームはほとんど無いのではないかと思う。

そんな中、Subversionのコミットログをプログラム上で扱いたいと思うことがあり、いろいろと方法を探していた。
最初はSubversionの言語バインディング(API)を使うしかないのかな、と調べてみたけれどJavaとCしかまともにサポートされてなさそうな雰囲気だったのと使い方が面倒そうで保留。

次にSubvertionがリポジトリとやり取りしてるプロトコルを喋れないかと調べてみたけれどこれも仕様がよく分からず、WebDAVだとどうかな?と見てみてもSubversionのサーバー構築の情報はたくさん出てくるけれど、あまり情報が無くてこれも保留。

※いまこのブログを書いてる途中に調べてみると、WebDAVのプロトコル仕様は公開されている様子。時間があればこちらも調べてみる。

で、何気なくsvn logコマンドのリファレンスを眺めていたら”–xml”というオプションがあるのを発見。

通常のsvn logコマンドだとこんな感じの出力(一部省略)だが、

# svn log -l 2 http://svn.apache.org/repos/asf/subversion/trunk
------------------------------------------------------------------------
r1801108 | philip | 2017-07-07 05:56:14 +0900 (金, 07  7月 2017) | 24 lines

Add exception checks to some of the JavaHL native code to avoid JVM
warnings about JNI problems of the form:

  WARNING in native method: JNI call made without checking exceptions when required to

------------------------------------------------------------------------
r1801012 | danielsh | 2017-07-06 19:19:47 +0900 (木, 06  7月 2017) | 3 lines

* tools/dist/templates/rc-release-ann.ezt,
* tools/dist/templates/stable-release-ann.ezt:
    Fix a copy-pasto in these templates.
------------------------------------------------------------------------

–xmlオプションをつけると

# svn log -l 2 --xml http://svn.apache.org/repos/asf/subversion/trunk



philip
2017-07-06T20:56:14.167594Z
Add exception checks to some of the JavaHL native code to avoid JVM
warnings about JNI problems of the form:

  WARNING in native method: JNI call made without checking exceptions when required to



danielsh
2017-07-06T10:19:47.297427Z
* tools/dist/templates/rc-release-ann.ezt,
* tools/dist/templates/stable-release-ann.ezt:
    Fix a copy-pasto in these templates.


とXMLで出力される。

これなら標準入力でXMLを受け取ってパースすればどうとでも扱える。プログラム内からsvnコマンドを直接実行するのでセキュリティ的にどうこうはあるかもしれないが、個人が使うちょっとしたツールではあまり問題にならないだろう。

svn logコマンド以外にもsvn info や svn status など–xmlオプションを付けられるコマンドは他にもあるようなので、上手く使うと便利なことができるかも。


そろそろブログも復活させたいけれど

もう1年に一度くらいしか更新してないブログ。

そろそろ少し復活させたいとは思っているのだけれど、まとまって文章を書く時間が取れなさすぎる。

私の場合はブログと言ってはいるけれど日記のようなものなので一言二言でも良いとは思っているけど、日々過ごしているとすぐに時間が過ぎてしまっていて、ああ書くネタあったのに…となってるので。

普段の時間の使い方も含めて見直さないといけないんだろうなあ。


2016年振り返り

気がついたら2016年も終わり。

今年はこのブログを一度も更新しないまま年が終わろうとしているので、振り返りと称して何か書くことにする。

振り返りと言っても今年は大きな出来事はなかったかなぁ。
淡々と仕事して適当に遊んで、という感じであっと言う間に一年が過ぎていった。
仕事が忙しかった時期も割と多く、そんな時は気持ちも余裕がなくなるし会社と家の往復で休日も出かけたりせずにゴロゴロして休養取って、なのでそういう間は特に楽しみも無く。

仕事面ではかなり自由にやらせてもらっているが、作っているものが過去に作ったものの保守に近くて何かスキルアップできるような環境では無かった。プロマネがグダグダで無意味に火を噴いたりして本来やらなくていいはずの残業や休日出勤が発生したのはどうにも我慢できなかった。
今も納期が逼迫していてスケジュールも遅れているのに危機感の無いプロマネと仕事していてストレスが溜まる。

健康面では体重が増え、コレステロール値がかつて無いほど上がり、心臓に対して所見が出ていて、もしかして身体はけっこうマズい状況なんじゃないかという気がする。
人生で大きな目標があるわけではないけど、さすがにもう少し生きていたいので健康は気をつけていこうと思うし病院にもちゃんと行って診てもらおうと思ってる。

いつも、もう少しアウトプットを増やさないとと思ってはいるし、ネタはたまにあるのだけど実際に書こうと思うほどのモチベーションまでいかずにそのままになってばかり。
年齢とともにいろいろと手を動かすまでのモチベが上がりづらくなってきている気がするので、このままだと危険だとは思っているのだけど…。


スポンサーリンク