島までは遠い 〜サークルアラウンド株式会社代表佐藤のブログ〜

佐藤正志@サークルアラウンド株式会社のことが少しわかる場所。プログラマーを育てるトレーナーとして、現役のソフトウェア技術者として、経営者の端くれとして、想うことをつづる。

オフィス引っ越しまでのあれやこれや

はじめに

公的には9/7付けでオフィスを引っ越したのだが、この情勢でしかもまともなオフィス引っ越しとしては初めてだったのでメモっておく。ちなみに次のオフィスは私の自宅と一緒になってSOHO的になるので、かなりの縮小方向。これを書いている9/9は残りの荷物が全て運び出されている日で、その作業を横目で見ながらこの文章を書いている。

前提

  • コロナ禍なので、皆で集まる作業はやらず、基本的に私が一人で進行
  • オフィス自体は5人くらいで利用のものなのでそれ程大規模ではない
  • 既に全員完全テレワーク達成しているので普段オフィスに来る人はいない
  • 私の自宅の引っ越しとオフィスの引っ越しは同時進行

一人でやると結構ハードだったというのが率直な感想。

物件探し

可能なら当時住んでいた物件に登記事務所だけ移そうと思ったのだが、それはオーナー都合で難しいということになり、新しい居場所を探すところからスタート。メンバーはフルリモートで今後はどこに住んでも問題なくなりそうだけれど、私自身は営業の都合や金融機関等周辺の事情も考えると新宿区からは離れない方が良さそうだと判断*1

  • 新宿区orその周辺程度の場所
  • 会社で契約でき、事務所の登記が可能
  • 仕事部屋or仕事スペースが生活空間以外に持てる物件であること

バーチャルオフィス等は金融機関の融資の都合上難しく、利用しないことに決めた。家の近くに超割安な物件を借りる手もあったが、そうなると大抵狭すぎるのとあまり綺麗でないということ、遊んでいる空間を作るだけになるのは浪費感があるのでやめた*2

登記可能物件はそもそも数が少ないので、少ない中で良さそうなのを見ていく形になった。幸運にも最初の頃に「最悪ここでもいい(ちょっと高いけど)」的な物件がヒットしていたので、安心して進めることができた。結果として想定の間取りや土地を実現できたと思う。大家さんも一緒に入っている物件でとても良い感じの老夫婦で楽しく暮らせそう(社交辞令かわからないけど大家さんは「コロナ明けてきたらお酒飲もうよ」と何度も誘ってくれている。誘惑に負けるかもしれない。お酒やめてるのに)。

移行プロセス

概ね以下のように進行。2つの引っ越しを同時にハンドルする形。

  1. 旧オフィス解約の手続き(2ヶ月前解約)
  2. 旧自宅解約の手続き
  3. 旧オフィス、旧自宅内の物品の整理や破棄
  4. 佐藤個人の新オフィスへの引っ越し
  5. 旧オフィスから必要なものを新オフィスへの送付
  6. 法務局へ変更登記
  7. 旧オフィスの廃棄する物品の撤去
  8. クレカの住所変更とかとにかくいろんなところの住所を片っ端から変える

代表取締役の住所の変更は引っ越しの日から2週間以内に変更登記するものなので、法務局への申請の手間を一回にすべく、個人の引っ越しとオフィスの引っ越しの日程を調整した。最終的にはオフィスの移転日をうまく調整すれば実現できたので大きな問題はなかったが、5〜7が同じ週に一度に発生したので最後の週が想定よりもアクセクしてしまった。

途中で「日中はオフィスの荷物の整理」「帰ったら自宅の荷物の整理」という期間があって、この期間は結構しんどかった。とは言え、近くオフィスを構える予定の人に必要なオフィス用品を譲渡できたのは良かったと思う。こちらの荷物も減るし、相手も無料でホワイトボードやモニター等が手に入ってWin-Win。

おしまいに

荷物の撤去も全て済み物理的なところは終わったので、手続き的なところを進めて全てが終了する。早く解放されたい。変更登記後14日経って履歴事項全部証明書が取れるようになれば、税理士の先生、社労士の先生の仕事も進み、金融機関への住所変更もできる。

大変ではあったけれども、物理オフィスを縮小するのは下記のエントリのように会社として必要なステップだったと考えているので、実現できて良かった。 circlearound.co.jp

全体を俯瞰してみると営業に繋がるパスの減少は否めないので、継続的なアクションとしてチャネルを増やしていくのはやらないといけないなと思っているところ。元々オフライン中心であったところを少しずつ変えようとしているので焦らずに積み重ねていきたい。

そんな未来予測ではありますが、これまでの繋がりから受託のお仕事もトレーニングのお仕事もいただいており、有り難い限りであります。声かけいただいたのに、手がいっぱいになっていることが多い*3ことも課題なので、この辺りも今後は解消していきたいです(きっと相性のいい業務委託の方などいらっしゃると良いんでしょうね)。

その他

これまで私の現場介入を減らすアクションを取ってきた結果(現在ほぼゼロになっている)、引っ越し期間も特に顧客プロジェクトへの影響なく進めることができ、各メンバーの成長には助けられた。今後は人数が増えていく傾向にあるのでこの状態を維持して進められると良いのだろう。自分としては営業や新メンバーの勧誘や育成、書籍を書くなどのコンテンツへ時間を充てて、IT技術者としては「困りごとの相談相手」「何かあった時に使いやすいバッファ」「生き字引き」のポジションになると思われる。

以下はモノが全部無くなってスッキリした旧オフィス。

f:id:ms2sato:20210910181115j:plain
旧オフィス1
f:id:ms2sato:20210910181152j:plain
旧オフィス2

*1:起業前からリモートワーカーだった私はフルリモートの構想はずいぶん昔から持っていて、その当時から自分が都心から離れるのは余程会社のステップが上がらないと難しいだろうと考えていた

*2:倉庫的な活用も無しではないが、倉庫に置きたいようなものがそもそも無かった

*3:新規の作り切りよりも、長期的なものを対応していくことが多いのでこの傾向強いんです

About MikroORM decorators

This entry is answer for @MikroOrm's Tweet.

Abstract

  • As a result Everything works fine.
  • But I do not know the cause, but works fine(Can not reproduce ... sorry).
  • MikroORM works very well!
  • Thanks for your advice!

Logs

Phase 1. Next.js with MikroORM works fine.

I researched MikroORM and Next.js. And found following repository which I refer to.

github.com

It works fine.

(I couldn't reach following entry, but same author's lecture. Nice entry!) medium.com

Phase 2. Configuration.PLATFORMS require all driver ( Can not reproduce)

I wrote any code and refactoring( I think that detail of this is important, but I could'nt find it ). I saw an error as require @mikro-orm/mariadb but not found. I used Postgresql, and already installed @mikro-orm/postgresql worked fine on Phase 1. I tried installing @mikro-orm/mariadb, but another driver required.

Error line is Configuration.PLATFORMS

Configuration.PLATFORMS = {
    mongo: { className: 'MongoDriver', module: () => require('@mikro-orm/mongodb') },
    mysql: { className: 'MySqlDriver', module: () => require('@mikro-orm/mysql') },
    mariadb: { className: 'MariaDbDriver', module: () => require('@mikro-orm/mariadb') },
    postgresql: { className: 'PostgreSqlDriver', module: () => require('@mikro-orm/postgresql') },
    sqlite: { className: 'SqliteDriver', module: () => require('@mikro-orm/sqlite') },
};

I could not solve this.

Phase 3. I realized "Error occured by entity's Decorator on build for client"

I tried creating interface for client(not importing MikroORM's Decorators), Errors not occured!

I thought that errors are solved by changing build config for client/server( Following Tweet )

Phase 4. Omit Decorators and Use EntitySchema helper

Well, MicroORM provide EntitySchema helper as another method of creating schema. https://mikro-orm.io/docs/defining-entities#entityschema-helper

I tried and It works fine. Finally, EntitySchema helper's entity is few dependency and more simple code!

Phase 5. @MicroOrm's advice

Thanks for your kindness. I tried My problem reproducing from my past commit. But no errors occured. It works very well(I'm confused it). Unfortunately, I could not provide good report for this problem.

So MikroORM's developer's experience is very good. Thanks for your great work!

My package.json(save my versions)

{
  "name": "myapp",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "next start",
    "test": "env TS_NODE_PROJECT=\"tsconfig.test.json\" mocha './test/**/*.spec.ts'",
    "test-single": "env TS_NODE_PROJECT=\"tsconfig.test.json\" mocha $@"
  },
  "dependencies": {
    "@babel/core": "^7.12.10",
    "@babel/plugin-proposal-class-properties": "^7.12.1",
    "@babel/plugin-proposal-decorators": "^7.12.12",
    "@material-ui/core": "^4.11.2",
    "@material-ui/icons": "^4.11.2",
    "@material-ui/lab": "^4.0.0-alpha.57",
    "@material-ui/pickers": "3.x.x",
    "@mikro-orm/core": "^4.3.4",
    "@mikro-orm/postgresql": "^4.3.4",
    "@mikro-orm/reflection": "^4.3.4",
    "babel-plugin-transform-typescript-metadata": "^0.3.1",
    "final-form": "^4.20.1",
    "firebase": "^8.1.1",
    "firebase-admin": "^9.4.2",
    "mui-rff": "^3.0.3",
    "next": "10.0.3",
    "react": "17.0.1",
    "react-dom": "17.0.1",
    "react-final-form": "^6.5.2",
    "react-query": "^3.5.11",
    "recoil": "^0.1.2",
    "utility-types": "^3.10.0",
    "yup": "^0.32.8"
  },
  "devDependencies": {
    "@firebase/rules-unit-testing": "^1.1.6",
    "@mikro-orm/cli": "^4.3.4",
    "@types/chai": "^4.2.14",
    "@types/mocha": "^8.2.0",
    "@types/node": "^14.14.10",
    "@types/react": "^17.0.0",
    "chai": "^4.2.0",
    "mocha": "^8.2.1",
    "ts-node": "^9.1.1",
    "typescript": "^4.1.2"
  },
  "mikro-orm": {
    "useTsNode": true,
    "tsConfigPath": "./tsconfig.orm.json",
    "configPaths": [
      "./db/mikro-orm.config.ts"
    ]
  }
}

WEB開発の基礎知識を集約すべく「Tech lib」というサイトを作ってます。または ContentfulとGatsby.JSとNetlify でサイト作ったらとっても良かった話

Tech lib
Tech lib 〜 WEBプログラミングの基礎をここに集約 〜

はじめに

techlib.circlearound.co.jp

Tech libという名前でWEB開発の基礎知識を集めたサイトを作ろうとしているので、お伝えしたいがためのエントリです。後半は弊社が技術的に新たに取り組んだポイントなどを記しました。前半の暑苦しい内容に興味ない方はザッとスクロールどうぞ!

動機や背景

「WEBにに存在する有益な情報に自分でたどり着く」というのはかなり大事なスキルで、その為にはプログラマーを育てたい弊社のスタンスとして「弊社であまり情報集約や学習用サービスの用意などはしない方が良い」と今まで考えていました。「学習が容易である」ということにこだわり過ぎて「補助輪がなければ歩めない人」を誕生させても仕方がないという理由からです*1

ただこの数年の実体験を振り返った時、私がIT技術を学んだ20年前よりも遥かに得られる情報が増えた反面、情報の確からしさの確認や情報への辿り着く事への難易度が大変上がってしまったと言わざるを得ません。

身近な結果として初学者の方に対する「xxを自分で調べて報告してね」という事へのリターンの正確性がかなり低下したと実感しています。

そこで「少なくとも弊社で考えるある程度の確からしさのある情報」が集まった場所を作っておき、それが最初の学習に貢献できれば素晴らしいと考えるに至り、Tech libというサイトの開発がスタートしました。

「正しく権威のあるもの」は海外の一次情報サイトやその翻訳であることは言うまでもありませんが、それをまだ読解できないような方に向けて「とんでもない大間違いということはないから、迷った時に参考にすると良い」という場所を目標にしています。

弊社の技術的な新しい取り組み

上記の動機のような考え方の変容からの新たなチャレンジ以外にも、弊社としていくつか技術的なチャレンジを行っています。

  1. SEO的な情報露出にあまり積極的でなかった弊社がかなり力を入れようと方針している点(露出できないと課題が解決しない為)
  2. Contentful / Gatsby / Netlify という JAMStackのベクトルでの開発を行った点(上記のSEO対策の為にも、サイト速度とセキュリティに力を入れたい内容の為)

1については今後結果は出ると思いますが、既に検索ワードの組み合わせによってはGoogle検索の20番台に出ているものがあるなど、開発した期間やコンテンツの貧弱さから考えるとこの先が楽しみな結果が出ています。

2については

  • 静的サイト&CDNによるレスポンス速度でSEO効果が高まること
  • システムのセキュリティやサーバー性能に気を使わなくて良いこと
  • JSが得意な人間が多い弊社としては最適なこと

という観点で選択しました。実際かなり弊社には合っていると思います。私が初期開発を行なって 小笠原(@IT_BOZU) にバトンタッチしましたが、機能改善も大変スピーディで良好です。コーポレートのWEBもWordpressから乗り換えたい程です。触りはじめの私の喜びの声は以下のあたりを辿ると確認できます。

当時のことを知り合いの開発者の方とのメッセージの中で以下のように共有しました。体験としてスムーズ過ぎて楽しかったです。

私はNetlifyはよく知ってる状態で、Gatsby & Contentfulは初めて状態からスタートしたんだけどローカルでとりあえずブログが動くのが10分程度、デプロイが1時間未満。調べながらでもこれくらいだったよ。

実際にそれなりに動くようにするまでにサイトデザイン以外に

  • ページネート
  • OGP画像の自動生成
  • タグ

などを組み込んでみました。結果からするとJS、Reactがわかる人だとかなり良い速度で開発できる気がします。上記のような箇所は一回体験すれば今後は横展開容易(基本テンプレート的にpackage.jsonと初期ページ実装を用意すれば良さそうだと考えています)なのでコスト感としてとても軽いです。運用面では、コンテンツ内容はContentfulで修正すると裏で勝手にデプロイされて暫くすると反映。デザインはGitHubにpushすると裏で勝手に〜。みたいな感じで基本的に普通のことすれば勝手にデプロイまでされて楽チンです。今はローカルでも本番データで確認しながらにしていて「本番データがないと雰囲気わからん」みたいなことは今のところありません*2

おしまいに

今はGoogleさんに好かれようとしているのでデザインが多少おざなりではありますが、今後改善されていきます。 まだ始まったばかりの試みではありますが、現在かなり積極的に取り組んでいるので応援いただけたらとっても嬉しいです。

長々書きましたが引き続きご贔屓に。よろしくお願いいたします。

*1:これはスキルの話なので、検索して辿り着くスキルを鍛えるべきと考えています。ここが育っていない事の方が大きな問題です

*2:コンテンツが増えると変わるかもですが、今はこれで十分

仕事の評価は「他者のコストを減らせたか」も加味するとわかりやすい

f:id:ms2sato:20200824011713j:plain

はじめに

なんとなくふわーっと浮かんできた内容をメモがてら書いときます。

プログラマーの仕事の評価はコードだけでは測れないと思っています

私たちの仕事はコードを書いてシステムを提供する事がメインです。なのでまずコードを書けなければ話になりません。もちろん素晴らしいコードの書き手は評価が上がるべきだと思っています。ただ、単純にそれだけじゃ無いよね、というのが私がよく思う事です。

  • 素晴らしいコードを書く能力があったとしても、安定して能力を発揮してくれなければそのケアが必要なので周囲の人のコストを食っていきます。
  • 素晴らしいコードを書く能力があったとしても、チームのメンバーとうまく連携できなければトータルで見ると高い成果を出せない場合があります。
  • 素晴らしいコードを書く能力があったとしても、責任感が無いと顧客からの評価が大変下がります。

仕事でのシステム開発は、楽しいことばかりでは無いです。地味な作業も多いですし、どうしても複雑になる仕様も苦しいです。個人で楽しんでコード書いている時の高揚感が得られないこともしばしばです。ただ、システムを作り出して誰かに使っていただき、お金を得るというのはそういうことなのかもしれません。そうして純粋に高揚する楽しい部分は、各プロジェクトの中の一部や、顧客に依存せずに会社が提供する時間の一部などに含まれるのだと思います。

コードを書ける・書けないだけを純粋に見た時に一定のラインを越えている人がいたとしても、先述したような周辺事情も鑑みると評価を高めにくいことがよくあります。特に私が相対するのが完成された実力者よりも、発展途上のこれからの人という事が多い為に確率としては高くなるでしょう。「いびつな状態」になってしまう事が多いのですね。

もう少し掘り下げ

仕事である以上、コストというものを考えながら物事が進みます。そして評価を上げるのは「他者のコストを減らせた時」が最もわかりやすいタイミングであると私は考えています。「新しい事ができるようになった」時も評価が上がるはずですが、これだけだとなかなか見えにくい時もあるなと感じる為です。

心を安定させる

気に入らないことや、ちょっとした不安や失敗にいちいち動揺してしまう人は、なかなか仕事を手放しで任せる事ができません。仮に手がかかっていないように見えたとしても、上長はそっと見守ったり心の隅に置いていたりします。もしかしたら定期的に意識して何か働きかけているかもしれません。この「他人が心を配ってくれている時間やコストを減らすこと」は、その人の評価を上げます。

チームプレイができるようになる

言動や立ち居振る舞いによって他人の成果を落としてしまうと、他者のコストを増やします。もしも「その人がいない方が他者の心が安定するので成果が出る」レベルにまで達してしまえば、一人で閉じた仕事しか任せられないので大変評価しにくい状態になります。適材適所でうまくはまる場所を考えるのもコストです。その人に合った仕事を用意するのもコストがかかるでしょう。

責任感を持つ

仕事の正確性を上げるのは責任感が問われる事が多い気がします。面倒なことでもやり遂げられる人には安心して仕事が任せられる為、「チェックをする」という上長のコストを減らします。また、他人のやっている仕事を奪って自己の責任を増やそうとする行動は、わかりやすい他者コストの減少なので評価しやすいです。

おしまいに

ちょっと雑に書いたエントリですが、私だとこういう感じで評価というものについて考えますよってことで。

リモートワーク安定稼働までの弊社の工夫

f:id:ms2sato:20200416171155j:plain

はじめに

https://circlearound.co.jp/2020/04/10/covid19/

こんな感じで、弊社は2月から完全テレワークにシフトして、皆がリモートで仕事するようになりました。 もともと週に何日かは気まぐれにリモートしていた(私が率先してやっていたので、皆必要に応じてやっています)ので、導入自体はスムーズでした。 とは言え何の課題もなくうまくいってしまったわけでは無いので、その流れや対策を記しておくと参考になるかなと思い、書いておきます。

前提

  • 弊社の場合一人暮らし男性が大半で、嫁子持ちもいたりします。
  • 少人数チームです。たまたま開発の業務委託メンバーがいない時期だったので、社員3名+私で4名チームです。
  • 弊社事業にはシステム開発とプログラミングトレーニングがありますが、主にシステム開発文脈で記します。

情報まとめ的な対応

とりあえず、個々人の知識を寄せ集めて対策して行くのが良いと思ったので、知識共有の場所を作りました。

「快適リモートワークのための工夫」という文書

以下のような内容をメンバーが自由に編集しています。新しい体験や思ったことがあれば書いて大丈夫な場所です。主に以下のような幹でまとめています。

  • 机椅子のような「設備系」の話
  • リフレッシュ方法や食生活についての「行動系」の話
  • そもそもの物事の考え方や受け止め方についての「マインド系」の話

あまり堅苦しく考えていないので「ドアの前に置いて帰ってくれる宅配業者リスト」とか、「交代浴的な風呂の入り方」から、気晴らしのエロ系の話(これ書いてるの私だけですけど)まであります。もしも女子メンバーが関わるようになったら適切な情報が適切な方の目に触れるように、人知れず綺麗に整理される予定です。

Slack上の #remote チャンネル

特にコンテンツにまとめるレベルでもなく、何となくお得な情報があるよ、とかは #remote チャンネルに緩く書いています。例えば「新しい設備でこれ買ってみた」とか「弁当を作ると色々良い」とかコミュニケーションします。雑に貼ると以下みたいなやりとりしたりしてます(会話が飛んでたのと、メンバーのアイコン出ないように切り取りました)。未だに私は運動が定着しません。オラもリングフィットしたいぞ!

f:id:ms2sato:20200416155919p:plain f:id:ms2sato:20200416155957p:plain f:id:ms2sato:20200416160127p:plain

それでも起こる個別の問題

私のように15年くらい前からカフェで仕事したり家で仕事したり、一年くらい家でコードばかり書いた経験のある人間は色々と慣れもあります。でもメンバーの殆どはそういうやり方に慣れていないので、ただ文書を共有するだけで解消できない問題も出ました。結果的に工夫を相談してそれをさらに文書に落としたりしています。

「家だと集中できない」

とりあえず筆頭がこれになるのでは無いかと思うので、まずはこれを。雑談交えて会話して解決していきました。

私がたまに皆と話す内容に「脳は実は簡単に騙される」というような話があります。その応用でもう少し具体的に落としました。「仕事はデスク、くつろぐのはベッド」などと分けるだけでわざわざ書斎を持たなくてもできたりするのです。

ノートPCを持っているなら移動できるので、これを手軽に行えますし「くつろぐときはスマホしか使わない」と決めたりするのも手段の一つでしょう。以下は「快適リモートワークのための工夫」からの抜粋です。

家だと基本的に集中できないのは、家が休む場所だと脳に刷り込まれているため

  • 場所を変えるや視覚的に休憩スペース/作業スペースを分けるようにするなど工夫の余地はある
  • これは前話したかもしれないけど、場所と行動を結びつけるのが大事。ちゃんとしたデスクの前は仕事モード、そうでなければベッドの上でくつろぎモードとかメリハリつけると良い。脳は簡単に騙せる。 最初のお前を騙せ、世界を騙せ

この件はそれぞれ実践している様子ですし、少し長期で見ないと効果がわからないかもしれませんね。半年後くらいから大変になってくるので、まだまだ楽な時期です。

「なんだか体調が優れない。原因がよくわからない。手足が冷たい。眠りが浅い。」

慣れない人が家に引き篭もっていると陥りがちなのが「病気でも何でもないんだけど体調が悪くなる」というものかと。睡眠時間がメチャメチャになったり、いつも頭がボーッとしたりします。自律神経がうまく調整できなくなっている為だと推察されるので、本当はサウナ&水風呂を勧めたかったりするのですがこのご時世だと難しい。

なので、以下のような家のお風呂でやる簡単交代浴を勧めました。実際やってもらって随分体調が安定したそうです。よかった。文書には他にも運動とか、朝日を浴びる、みたいなことが記されています。

  • 風呂
    • 交代浴のススメ
      1. 十分湯船であったまったる(温度を最初から熱めにしておくのが良いです。ぬるいと水で死にますw)
      2. 水or水に近い温度のシャワーを手足、胴回り、肩など末端から順番にあてます。この時辛かったら手足だけとかでも十分です。水を止めた時に体温が一気に戻って来すぎるならもう少し当てると良いです。
      3. 体の水分を切ります。小さなタオルで拭くか、体の表面を手刀でビシッとするだけでもかなり良いです。
      4. しばらく洗い場でのんびり過ごします。私の場合には湯船のヘリに腰掛けてボーッとしてます。この時寒さを感じないのがうまく行っている。寒いなら水をかけすぎ。寒すぎなら風邪引くので湯船に入りましょう。
      5. 体が段々平常時の温度に近づいて来たら湯船に入ります。
      6. 2-5を3セットくらいやる。
      7. 最後は水をササっとかけるくらいで上がります。かけすぎると風邪ひきますw
      8. すぐに水分をタオルで吸い取って、暖かい部屋でだらだらしてください。ベッドに倒れ込んで良いです。多分そのまま眠れるので注意してください。

会話したーーーい!!

「テキスト中心の会話ではニュアンスが伝わりにくい」

「テキストではコストがかかるので会話したい」

「世間の不安感を孤独に受け止めるのは辛い」

みたいな、根本が「とにかく会話したいんだけど、どうにかならないものだろうか」という話。これについてはzoom 繋ぎっぱなしの社内もくもく会をやった時に「zoomなどだとあまりに顔が大写しになったり、部屋が見えたり、他にも突発的に映っちゃいけないものとか無いか心配になって緊張する」という学びがありました。

ここはツールを工夫しないとダメかなと思い、私の理想の「繋ぎっぱなしテレカンツール」を作成することにしました。主に以下のようなことを実現しています。

  • メンバーの顔は基本的にぼやけている「あ、いるな」とわかる程度
  • 音声はかなり小さめで繋がっていて「近づく」「離れる」という機能で音量調節できる(オフィスでデスクに近づいて「ねぇ、ちょっと...」と話せる感じ)
  • 部屋の全員が小さい音で会話を共有しているので、遠くで誰かが相談している内容が横耳に入ってくる為、「あ、それってさー」と、割り込むことができる

https://voffice.netlify.app/?room=sandbox

のような、簡単なURLを共有することで同じ部屋に入れる仕様です。この入るまでの手軽さも大事で、朝誰かがSlackに「今日の部屋」を共有しておけばあとは皆が適宜入ってきます。特に義務はないので、独りで集中したければ繋がなくて良いですし、休みの日でも「誰かと話したいなー」と思えば勝手に部屋作って繋いで良い運用にしています。zoomほど有名じゃ無いので、room名を総当たりしてくるような輩も今の所いないです。

テレカンツールを繋ぎっぱなしにすると監視されると思う人が世の中にいる様子ですが、弊社はリモート始める以前から

「監視するのなんて面倒だから放っておくので成果出して欲しいし、なんでも困りごとがある時には私に自分から相談して欲しい」

という形でコンセンサスを取っています。なので相談があればvofficeに私がいれば近づいて話しかけてくれるし、そうでもなければ繋ぎっぱなしで遠くで自分の仕事してくれています。入ってきても特に挨拶も無くても良いかなとさえ思ってます(ここは人それぞれのポリシーに任せていますが)。

このツールができたおかげで、対面で話したいという意見は出なくなりました。むしろこれでずっとリモートでもいけるような実感を得てくれたようです。ここは思い切ってコストをかける判断をしてよかった。HTML/CSS/JSしか使っていない為、httpdさえあればすぐに使えます。GitHubでソース公開されているので興味あればどうぞ(AGPLです)。うまく動かなかったらPullRequestください。

github.com

おしまいに

こういう時だからなんでも我慢しろ我慢しろと言ってもお互いツライだけです。様々な方法で工夫して、ストレス減らしながら乗り切っていきましょう。

郵便物を会社から代表宅へ送るのは結構難しいらしい

取り急ぎ残しておきます。 テレワーク中心になったのでしばらくオフィスへ出社することが無いのですが、郵便物がオフィスに届いてしまう為、私の自宅へ送りたいと思っていました。

弊社のある新宿区高田馬場だと新宿北郵便局さんが担当になる様子なのですが、会社から代表宅への転送などは行なっていないそうです。 だったらオフィスのポストに入れっぱなしでも良いかと思ったのですが、特に書留のような相手が直接受け取らないといけない郵便については、オフィスに人がいない場合だと最終的に送付元へ戻されてしまいます。そういうことを考えると、局の方で止めておくのが良さそうだと言うのが電話で対応された方の話でした。

その場合以下のようになります。

  1. 会社最寄りの郵便局などで紙面で手続きを行う
  2. 郵便物は郵便局で留めておいてくれる
  3. もしも必要になれば、留めている局(弊社の場合には新宿北郵便局)へ直接伺う
  4. 身分証明書を出して証明されれば郵便物を受け取ることができる

(2020/4/14 15:30 私の最寄りの郵便局に訪問して手続きしました。以下のように確認済み。)

  1. 会社最寄りの郵便局で不在届を提出します。名刺と免許証をセットで確認をお願いする形になりました。会社の印鑑無い場合には個人のものでも良さそうでしたが、私は持参していたので会社の印鑑で済ませました。
  2. 不在届を出すと、郵便物は郵便局で30日の間預かってくれます。30日経つと、元の住所へ郵送されます。
  3. 30日以内に留めている局(弊社の場合には新宿北郵便局)へ直接伺い、改めて不在届を出すと延長できます。
  4. 身分証明書を出して証明されれば郵便物を受け取ることができます。

原則テレワークになったので、この辺りにも今後メスが入るような気がしますが、一旦今はここまでなのかもしれません。 ちなみに、転居届が使えそうに思うかもしれませんが、こちらも書留などが転送されない仕組みなので難しいそうです。

現場からは以上になります。

(2020/4/14 15:30 追記。)

実際に郵便局に行って手続きを行おうとする際「不在届」という言葉を言えると早いです。私の場合電話口の方が「局留め」という言葉で伝えてきていたので、それをそのまま伝えたのですがなんのことかわからない様子でした。新宿諏訪町郵便局さんは丁寧に確認の電話をして私が望むことができる方法を改めてご提案くださり、大変感謝しています。

制度自体が今の私たちにあまり合わないかもしれませんが、一ヶ月分溜めると間に合わない郵便もありそうなので、結果的にこれでも運用次第と考えています。大事な連絡が届かないで返送されてしまうよりは余程良いかと。

不健康な私が健康を大改善した3つのポイント

f:id:ms2sato:20200301114941j:plain

はじめに

自慢じゃないですが、私は相当な不摂生を送ってきた自信があります。大病せずにここまで来られた幸運には感謝しかありません。 そんな私でも「かなり健康的になったんじゃないか?」と実感する生活を送れているので、その足跡を残しておこうと思います。

「何をしたかとっとと教えれ」という方へ

大したことをしていませんが、大したことないことをやれるかどうかの気がしています。

  • 断酒(基本的に飲みません。お祝い事とか特別な時には飲みます)
  • 交代浴(最近は週に3〜4日してます)
  • 睡眠時刻のほぼ固定化(上記がうまくいったら勝手になった)

健康レベルアップに到るまでの道

酒編

以前の私

学生くらいの頃は酒は会話の潤滑油だと思っていたし、そう言葉にも発していたと思うのですが、20代後半くらいからの私の飲み方は少し変わってしまったように感じています。激しい仕事の傷を癒す麻薬のような使い方になっていて「一人でも飲みたい」と思う日ができたのはこの頃だし、それ以後は夜に飲み歩くことも行なっていました。酒の席でしか顔を合わせない知り合いができたのもこの頃からです。それはそれで「自分も大人になったのではないか」と感じたりもしていました。

40前くらいになると、飲んだ酒が次の日にかなり残るようになっていました。最近では「飲むと以後36時間ほど全能力が半減する」くらいに感じています。まともに動き出すのが次の日の夕方くらいになることも多く、必要な時以外に飲んでしまうことは、私にとっても会社にとってもかなり問題だなと思っていました。

ある飲み会で、コーラばかりを飲んでいる人がいた

たまーに会って飲んでいる技術仲間の飲み会で、いつもなら軽く飲んでご機嫌になってしまっているKさんが、飲み端からコーラのみを連続注文しているところに出会いました。そのことをツッコンで話していると、「俺『酒が飲みたいわけじゃなかった』ってわかった」と話されていて、その後「私は本当に酒が飲みたいのだろうか」という問いを改めてするキッカケを得たのです。

以前を思い返してみると確かに酒単体を望んでいるわけではなかったはずなので、ならばと同じことを試しました。「一回飲み会を全部ノンアルコールで過ごしてみる」というのを試したんです。自社の飲み会なら私が飲まなくても別に大きな問題はないですから、社員連中が飲んでいる中、ほぼジンジャーエールだけで過ごしてみました。

確かに、そんなに悪くないです。一緒にワルノリできない時はあるものの「だから酒が必要なのか」と言えば、そうでもない。当然次の日もちゃんと仕事できました。なるほど、これは良い。以後自分はほとんどアルコールを飲むことをせずに過ごしています。確か自社イベントの懇親会の時に空気読んで飲んだ位でしょうか。

今ではほとんどアルコールが無くとも寂しくない体ができたと思います。

ちなみに時勢柄、今は自宅からリモートワークが多いのですが炭酸水とコーラを箱買いしていて、今も炭酸水を口にしながらこの文章を書いています。必要なのは炭酸だったということなのでしょうか。これはこれで中毒になるとあまり良くない気もしますが、アルコールよりは随分マシでしょう。

結果

定期的な36時間の能力低下は起こらなくなり、生活が乱れにくくなりました。素晴らしい!

交代浴編

以前の私

仕事が忙しいと、シャワーだけになりがちでした。お酒を飲み過ぎるととにかく寝たくて風呂に入らずに床に入ることもしょっちゅうですね。湯船に入ることをかなり長い間せずにいた時期があります。

同居中の素晴らしい風呂で

一時期、技術者の修行をしている若い2名と三人暮らしをしていたことがあるのですが、その家のお風呂は大変素晴らしいものでした。シャワーだけなんて勿体無いので、ちゃんと湯を張って入っていました。そうするとなんとなく体の調子が良いような気がしていて、お風呂は健康に効果がある様子だと感じていました。その時はそう思った程度で特に何かしようとは思わずにいました。ちょうど最初の社員を雇った直後で、自分の健康に気を回している余裕がなかった時期なんです。当時のことは下記のあたりに詳しいです。必死だった頃です。

ms2sato.circlearound.co.jp

風呂の入り方研究

弊社では「週報」という名目で一週間に一回KPTフォーマットの振り返りをSlackへ投稿します。業務の事を書いても良いですし、個人の自己研鑽で行なっていることやその中で感じている課題、プライベートな事でも、なんでも共有して良いことにしています。私はメンバーの振り返りにコメントしつつ、今目指すべきポイントやゴールのすり合わせをします。

プライベートの話題でも良いと、結構な頻度でどのメンバーからも「睡眠の質向上」「健康の維持」「集中力のアップ」のような、普遍的な生活レベルの向上が話題になります。私もこの手の話題はよく書いています。一時期は、入浴剤を使うと睡眠がとても深くなって良いと気づきました。FINEHEETスマートモデルはかなり良い効果だったと思います。

www.bathclin.co.jp

ただ、しばらく続けていると体が慣れてきて効果が薄くなってしまう様子です。少なくとも風呂を上手に使うと睡眠の質が向上してパッチリ目覚められるとわかりました。

交代浴との出会い

ここのところ「サウナ室 水風呂 外気浴」の組み合わせの交代浴をしている人が増えている様子ですね。知り合いの方にも結構サウナや銭湯が好きな方が多く、これをすると体がスッキリするそうです。「整う」という謎のスッキリ現象もあるらしいので、興味が湧いてきました。

実は私は水風呂がちょっと苦手で、熱いところから突然冷やすと心臓が止まるのではないかとビクビクしていたのです。とは言え健康には代え難く、少しずつ試してみることにしました。3セットくらいやる気持ちでいれば、1回目の水風呂は浸かり過ぎずに過ごして、2回目、3回目は体が熱を持つのでちゃんと浸かれるようになり、それっぽいことができるようになりました。

私はいわゆる「整う」というのが良くわかっていないのですが、単純に気持ち良いですし、血流が活発化しているのは鏡に映る自分の肌が赤いまだら模様になっていることでわかります。まだらになるのは「あまみ」と言うそうで、上手に交代浴できていると出るらしいです。

これをやった日の睡眠の深さが、入浴剤の比ではない程で、もう入浴剤を使うことはなくなってしまいました。

結果

睡眠がとても深くなり、睡眠時間自体が減りました。交代浴をした夜は適切に眠気に襲われますし、そうでない時でも床に入れば深い睡眠に入ることができます。おそらくですが、私は自律神経が少しおかしくなってしまっていたのでしょう。それが交代浴で調整された結果ではないかと推察しています。

睡眠サイクル編

以前の私

乱れに乱れていた、と言っても過言ではないでしょう。基本的に起きる時間も眠る時間も決めていませんでした。朝5時に床につくような生活も普通にしていましたし、たとえ眠っていても通知が飛べば確認してコードレビューしたりしていたので「佐藤さんはいつ寝ているのかわからない」と何人もの方に言われたことがあります。おそらく眠りは常に浅くて、寝ていようと思えば12時間睡眠、食事、からの12時間睡眠、みたいなことも平気でできました。逆にそうしないと蓄積した疲労を解消できなかったのではないかとも感じています。

一時期は目覚ましで同じ時刻に起きようと努力していたのですが、頭がスッキリせずに一日のパフォーマンスが落ちたのでやめてしまいました。

酒と風呂との改善

これまでに書いた、酒と風呂による改善は結果的に生活のリズムを意図せずに一定化することに役立ちました。酒のせいで夕方までゴロゴロしてしまうような事はなくなり、風呂のおかげで一度眠れば深い睡眠状態に入ってパッチリと目覚めることができます。

あまりに深く眠れるためか数時間で一度目覚めてしまうようになり、少し仕事してから二度寝して、普通の時間に起きるような生活になっています。深夜に2時間程度の可処分時間が突然できました。そんなに悪くない気がするのでしばらくこのサイクルにしようと思っています。

特にコントロールしなくても朝は6-8時の間で目覚めるので、これで良いと思っています。無理に時間を合わせる事は無かったんですね。

おしまいに

というような事を試した結果、以前よりも睡眠の長さ自体が短くなって可処分時間が増え、頭もスッキリしてパフォーマンスも上がったようです。良いことばかりです。 ちなみに、私は変身をあと2回ほど残しているような気がしていて、残りのキーは以下かなと考えています。

  • 運動(これが一番難しい。生活サイクルにどう組み込めば良いのか)
  • マッサージ(肩こりとか改善はしたけど完治はしないので)
  • 食事(もしかしたら最近魚食が増えてきたのであまり効果がないかも)

死ぬ前に「43歳の秋の自分が、人生史上最も不健康だった」と思えていたら良いですね。