タグ

ブックマーク / songmu.jp (16)

  • 同僚をどう呼ぶか ~ さん付けやあだ名など | おそらくはそれさえも平凡な日々

    数年前から業務上では同僚に通りの良いあだ名がない場合、極力「さん」付で呼ぶように意識している。新卒やインターンの大学生を無条件で君付けで呼ぶみたいなのをやめたいと思ったのだ。 呼称から暗黙の権威勾配が生まれることは少なくない。例えば、上司が部下を君付けで呼び、部下が上司をさん付けで呼ぶという光景はよく見られる。上下関係が前提にあり、逆転させると違和感を感じるはずだ。こういう暗黙の権威勾配は双方の心理に染み付いてしまい、構造を変えるのが難しくなる。 逆に、我々のIT業界では、新卒やインターン生が数年後に自分の上司になることも珍しくない。流動性が高くて素晴らしいことである。その時に呼び方を「君」から「さん」に変えるのもおかしな話である。そもそも上下関係によって呼び方が変わるのはナンセンスだと私は思っていて、仕事の上ではお互い一人前の大人でリスペクトしあいたいし、個人的にフラットさを志向している

    同僚をどう呼ぶか ~ さん付けやあだ名など | おそらくはそれさえも平凡な日々
    yogasa
    yogasa 2023/09/05
  • あなたは本当に文章を書くのが遅いのか | おそらくはそれさえも平凡な日々

    このエントリーは、Mackerel Advent Calendar 2020 5日目の記事です。 さて、多くの人が「自分は文章を書くのが遅い」と思っているのではないでしょうか。僕もそう思っていました。 ブログエントリーを書き出すと得てして思っていた以上の時間がかかります。書くことがだいたい決まっているちょいネタのつもりであっても書き出してみたら数時間かかってしまう、大作であれば丸一日潰れてしまったり、しばらく寝かして数日がかりになることも珍しくありません。そして「ああ、自分は文章を書くのがなんて遅いのだ」と嘆いてしまうのです。 そして、見事な大作ブログ記事をバンバン投稿している人を見ると「書くのが速い人は羨ましいなー」と羨望してしまいます。また故栗薫氏が、一時間に原稿用紙96枚分を書いたなどの伝説を聞くに、圧倒されて唖然としてしまい、やる気を失ってしまいそうになります。 しかし果たして

    yogasa
    yogasa 2020/12/06
  • Android7.1以前でLet's Encrypt証明書のサイトが見られなくなる | おそらくはそれさえも平凡な日々

    追記: その後の動きについて書きました → Let's Encryptの証明書切替周りその後 このサイトはLet's Encryptで証明書発行しているのでタイトルの件が気になったのだが、どうもあまり話題になっていない。恥ずかしながらSSL周り詳しいわけじゃないので、誤っているかも知れない。識者の意見を求む。 Let's Encryptが使われているサイトがAndroid7.1以前のバージョンで今年の9月29日以降見られなくなる可能性がある 延命策は用意されそうだが、それも来年の9月29日まで Let's Encryptのルート証明書切り替え計画に起因している Let's Encryptのルート証明書の変更 Let's Encryptはルート証明書を自身(ISRG)の認証局のルート証明書(ISRG Root X1)に切り替えようとしている。現在は、IdenTrustのルート証明書(DST

    Android7.1以前でLet's Encrypt証明書のサイトが見られなくなる | おそらくはそれさえも平凡な日々
    yogasa
    yogasa 2020/08/08
  • RDBの作成時刻や更新時刻用カラムに関するプラクティス | おそらくはそれさえも平凡な日々

    RDBのレコードに、作成日時や更新日時を自動で入れ込むコードを書いたりすることあると思いますが、それに対する個人的な設計指針です。ここでは、作成日時カラム名をcreated_at、更新日時をupdated_atとして説明します。 tl;dr レコード作成日時や更新日時をRDBのトリガーで埋めるのは便利なのでやると良い ただ、アプリケーションからそれらのカラムを参照することはせず別に定義した方が良い MySQLにおける時刻自動挿入 MySQL5.6.5以降であれば、以下のようにトリガーを設定すれば、レコード挿入時に作成日時と更新日時を、更新時に更新日時を、DATETIME型にも自動で埋めてくれます。いい時代になりました。(MySQLが遅すぎたという話もある) `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, `updated_

    RDBの作成時刻や更新時刻用カラムに関するプラクティス | おそらくはそれさえも平凡な日々
  • お知らせ | おそらくはそれさえも平凡な日々

    日頃お世話になっている皆様へのお知らせです。なるべく多くの方に直接お伝えしたかったのですが、この場でのお伝えになってしまった方には申し訳ありません。 はてな退職します。4/17(水)が最終出社でした。所属は5/31(金)までです。 ずっとはてなで働きたいと思っていましたし、この絶好のタイミングで辞めてしまうのは勿体無いという気持ちもあります。ただ、次の挑戦に関して時間的な制約もあったため退職させてもらうことになりました。この詳細はまた別途お知らせできればと思っています。 2014年に現在のはてな東京オフィスの一人目のエンジニアとして入社し、その後、チーフエンジニアと、Mackerelのプロダクトオーナー(マネージャー)を兼務してきました。 チーフエンジニアとして組織に、Mackerelではプロダクトとビジネスに関わりました。入社当時、私一人だけだった東京オフィスのエンジニアも今では二桁に

    お知らせ | おそらくはそれさえも平凡な日々
  • サブコマンドはUNIX哲学と相反していないのか | おそらくはそれさえも平凡な日々

    「UNIXという考え方」に書かれているUNIX哲学に「各プログラムが一つのことを上手くやる」というのがある。それとサブコマンドは矛盾するんじゃないかと感じていた。一つのプログラムが複数のことを実行できるじゃん、という。 最近は以下のように思うようにあった。 サブコマンドを持つようなツールの名前自体は「名前空間」である 「サブコマンドが一つのプログラム」だと考えればいい 汎用的なコマンドラインツールはグローバルな名前になるので、名前の衝突には気をつける必要がある。今や多くの開発者がコマンドラインツールを書くようになった。 また、コンテキストを同じくした複雑なツール群を提供する場合、名前空間的なものはあったほうが良いのは確かでしょう。例えば git のサブコマンドが全部バラバラのコマンド名だったら発狂してしまう。 最近、僕はGoでツールを書く事が多いが、サブコマンドを採用せずに各々のコマンドで

    yogasa
    yogasa 2017/08/27
  • はてなに入って2年くらい経ちました。CTOとかMackerelとか | おそらくはそれさえも平凡な日々

    この度はてなのCTOが id:stanaka から id:motemen に交代しました。僕はチーフエンジニアとして引き続き頑張っていく所存です。 stanakaとMackerel stanaka にはチーフエンジニアMackerelチームのディレクターを務める中で様々な指導をいただきました。 そのエンジニアリング能力、ビジネスも含めた視野の広さ、Mackerelに立ち上げたことに代表されるようなビジョンにはただただ圧倒される日々でした。 思い起こせば2年前、stanakaにMackerel事業の魅力やはてな東京オフィスでのエンジニアリングチームの立ち上げについて話をしていただきました。僕はそれらに魅力を感じはてなに入社しました。その後は、チーフエンジニアMackerelのディレクターなどの立場も与えてもらい、引き上げてもらったと感じています。 Mackerel事業にディレクターとして

    はてなに入って2年くらい経ちました。CTOとかMackerelとか | おそらくはそれさえも平凡な日々
    yogasa
    yogasa 2016/08/02
  • 「nginx実践入門」は紛うことなき「実践」の本だった | おそらくはそれさえも平凡な日々

    nginx実践入門 技術評論社様よりご恵贈頂きました。著者の1人である cubicdaiya さんより、いただけるというお話をもらった時は非常に光栄でした。ありがとうございます。 思っていたとおり非常に良いでしたが、特に良かった点としては、章立てを含めた構成の素晴らしさ、そしてまさに「実践」を意識したインフラアーキテクチャのになっている点だと思う。 Nginxのアーキテクチャ 静的ファイル配信 リバプロ構成 コンテンツ配信システム モニタリング LuaとかOpenRestyとかによる拡張 という章立てになっていて、流れが非常にわかりやすい。Nginxを軸にした、様々なインフラのデザインパターンの説明になっている。これは紛うことなき「実践」のであり、イマドキのインフラアーキテクチャについて学ぶ上でも良である。 静的ファイル配信、リバプロ構成、コンテンツ配信システム、それぞれの構成にお

    yogasa
    yogasa 2016/01/25
  • ルーク!MySQLではkamipo TRADITIONALを使え! | おそらくはそれさえも平凡な日々

    よくMySQLはゆるふわだから 値が勝手に切り詰められる エラーが起きずに変な値/日付が入る 不正なスキーマが入ってしまう など言われることがあります。ただそれは、そもそもの設定が悪いのです。(確かに昔デフォルトがゆるふわなのはいけなかったんですが) ということで、データベースには不正な値が入らないように設定はとにかく厳しくしておくのがオススメです。 じゃあどうするか。 MySQLSQL Modeによって、その辺りの制約をコントロールすることができます。以前、MySQLsql-modeで一番厳しいやつはTRADITIONAL、というのを書いたのですが、実はそれだけでは不十分で、TRADITIONAL,NO_AUTO_VALUE_ON_ZERO,ONLY_FULL_GROUP_BYとするのがより安心なようです。 これはkamipoさんに教えてもらいました。 @songmu TRADITI

    ルーク!MySQLではkamipo TRADITIONALを使え! | おそらくはそれさえも平凡な日々
  • 何故僕はエンジニアとして対外発表をするのか | おそらくはそれさえも平凡な日々

    僕は来、人前に出て積極的に話そうとは思わないし、目立たずにおとなしく引きこもっていたいみたいな気持ちがある。潔癖な部分もあるので、プレゼンスばかり高くて技術力がないような中身が無い人間になりたくないし、そうなったら死ぬしか無い、みたいな気持ちもある。それなのに何故、ものすごく技術力があるわけではない自分が対外発表をするのか。 それは元はと言えば対外発表をするような側に行かないとエンジニアとして生き残れないのではないかという危機感があったからです。 Shibuya.pmの衝撃 初めて参加したShibuya.pmは#10だった。その頃の僕は一企業のよくある何でも屋の1人システム担当であり、開発のメインは前担当者から引き継いだレガシーASPだった。そしてつぶしの効く技術を習得したいと思いPerlを学び始めた頃だった。そしてPerlがそこそこ書けると手応えを感じ始めているところだった。 ところが

    何故僕はエンジニアとして対外発表をするのか | おそらくはそれさえも平凡な日々
  • ソースコード以外もとにかくテストする。もしくはカバレッジだけではダメだという話 | おそらくはそれさえも平凡な日々

    あなたはプロジェクトのソースコードに対して適切にCIを回しているかもしれません。定期的にコードカバレッジの測定も行い、90%以上もしくは100%の数字を出しているかもしれません。 しかし果たしてそれで十分でしょうか?もしくはコードカバレッジだけにとらわれすぎていないでしょうか? 監視とは(システムに対する)継続的なテストである、というのは筆者の尊敬する奥一穂氏の言葉ですが、その逆もしかりで 「テストとはプロジェクトに対する継続的な監視である」 ということも言えます。 その観点に立ってみると、プロジェクトのソースコード以外にもテストが必要なものがたくさんあることに気づくでしょう。以下に実際に筆者が自分のプロジェクトの中でソースコード以外にテストを書き、CIを回していたものを挙げてみます。 アプリケーション設定ファイルのテスト 開発中に番用の設定ファイルを使うことはないため、番用の設定ファ

    ソースコード以外もとにかくテストする。もしくはカバレッジだけではダメだという話 | おそらくはそれさえも平凡な日々
  • クソコードに対する怒りとコードレビューにおける人格攻撃について | おそらくはそれさえも平凡な日々

    デキるプログラマだけが知っているコードレビュー7つの秘訣 7つの秘訣の1〜5は当にそのとおりだと思います。 「怒り」って言葉を使っているところはなかなか画期的だと感じた。というのも僕は前から「人格攻撃に思われて」しまうような、コードで人を殴るようなことをしてしまう人が出てきてしまうのは何故かということを考えた時に、そこには「コードに対する怒り」があるからだろうなと思っていたからである。怒りがあるからこそ強く指摘しすぎてしまうことが起こりうる。 「怒り」というのはつまり「感情」である。であれば、「その『怒り』はコードに向けられたものであり、書いた人に対してのものではないので、その人に対しての攻撃ではない」というのは、理屈ではかろうじて通るかもしれないが、書いた人の「感情」的には通らないこともあることは理解したほうが良いと思う。 じゃあ怒らなければ良い、という話にはしたくなくて、どうしても怒

    クソコードに対する怒りとコードレビューにおける人格攻撃について | おそらくはそれさえも平凡な日々
    yogasa
    yogasa 2014/08/20
  • 退職とFA宣言のお知らせ | おそらくはそれさえも平凡な日々

    所属的には5月いっぱいですが、5月12日(月)が最終出社で有給消化中です。理由はいろいろありますが、結婚離婚がそうであるように、結局のところはタイミングの問題です。 一番大きな理由は家庭の都合です。家庭の都合というとネガティブに聞こえてしまうかも知れませんが、実際にはポジティブな挑戦です。 ただ、そのために会社を辞める必要は必ずしもなく、会社も引き止めの時にその事情を鑑みてバックアップしてくれる事は伝えてくれました。CTOに 「会社は社員の夢を実現する場所だと思っていて、だからといって全員が別の方向を向いているわけにもいかないので、誰かの夢に乗っかる形で事業を作っている。なので『こいつの夢に乗っかりたい』とか思わせたり、逆にそう思えるようなイイヤツを採用している。ただ、松木くんくらい会社に貢献してくれた人間だったら、自分の個人的な夢や目的のために会社を利用してくれて構わないし、むしろそう

    退職とFA宣言のお知らせ | おそらくはそれさえも平凡な日々
    yogasa
    yogasa 2014/05/13
  • Perlでコマンドラインモジュールを書くときのクラス設計 | おそらくはそれさえも平凡な日々

    コマンドラインから引数が渡すようなモジュールでも以下のような要件があったりする。 コマンドラインからだけじゃなくて、コード内で直接オブジェクトをnewしたい場合もある 複数のコマンドラインツールを組み合わせて使うような場合に@ARGVを何度か渡すケースがある growthforecast.plみたいなサーバースクリプトだとよくあると思っていて、スクリプト単体で引数渡して起動できるけど、自分でGrowthForecast::Web->newしたくなることもある。これが前者。 growthforecast.plにPlackとGrowthForecastのオプションをコマンドラインから同時に渡したいみたいなのがある。これが後者。 GrowthForecastはあくまで例えです。念のため。 それに対しては以下のようにすればよいのかなーとなった。 parse_optionsというクラスメソッドで@A

    Perlでコマンドラインモジュールを書くときのクラス設計 | おそらくはそれさえも平凡な日々
    yogasa
    yogasa 2014/01/01
  • おそらくはそれさえも平凡な日々: CPANモジュールのパッケージングの歴史

    最近同僚が次々とCPAN Authorになってて良い流れだなーとか思っています。 ただ、CPANへのモジュールの上げ方がわからないとか、M::Iを使えばいいのか M::Bを使えばいいのか、それらがそもそも何やってるのか分からないという話も 聞くので、僕自身もその辺の知識を整理してアップデートしました。 とりあえず、今はModule::Buildを使っておけば良いんじゃないかと 思っていますが、そこに至る歴史的経緯をまとめてみます。 大体、以下に書いてあることに加えて、最近の動きを書いています。 Module::Build:MakeMakerの後継者を目指して PerlでCPAN形式のモジュールを配布する場合は、Makefile.PLなりBuild.PLなりを モジュール作者が用意して、それがインストールに必要なファイル類を自動生成 するという流れになっています。 既存の雛形を使うと色々ファ

  • おそらくはそれさえも平凡な日々: awkの代わりにperlを使おう

    perlのコマンドラインオプションには-aってのがあります。これはawkモードです。perl --help見るとautosplit modeとか書いてありますが。 perlは-pや-nオプションを渡す事によってファイルを一行づつ処理してくれますが、その時に-aオプションを渡すと@F配列にフィールドの情報を自動的に入れてくれます。 フィールドのセパレータはデフォルトではスペースですが、-Fオプションで指定可能です。 カンマ区切りのテキストの、最初のフィールドだけを表示したい場合は以下の様な感じ。 % cat test.txt server1,1343363124,30,/video.php server2,1343363110,20,/profile.php server3,1343363115,7,/login.php server1,1343363105,8,/profile.php %

  • 1