ブックマーク / voluntas.medium.com (28)

  • 時雨堂創業 12 年目

    2013 年 3 月 8 日に時雨堂を創業し、2024 年 3 月 8 日で時雨堂創業 11 年、そして 12 年目にはいりました。あっという間です。 起業のきっかけは、ある経営者に「貴方がどんなに一生懸命に製品を作ってもそれは会社のものでしかないので、自分の会社を持って自分の製品を作って、売った方がいい」といわれた事なんですが、それから 11 年立ちました。 起業したときから状況も大きく変わりました。自社製品の売り上げだけで会社が回っています。今後の時雨堂について雑に書いて行きます。 少人数でスケールする製品を作り続ける時雨堂はパッケージソフトウェアのサブスクリプションで稼いでいる会社です。営業もいないため、買いたいといってくれる企業に売るだけです。 社員が社内にあるライセンス発行サーバーに Tailscale でリモートで繋いでライセンス (JSON ファイル) を発行し、ライセンスフ

    yug1224
    yug1224 2024/03/10
  • GitHub Copilot Enterprise のススメ

    GitHubGitHub Copilot Enterprise というサービスをはじめました。かなり革命的なのですが、とにかく高い。利用するには一人 60 ドル/月 (GitHub Enterprise Cloud 21 ドル/月 + GitHub Copilot Enterprise 39 ドル/月)かかります。なので、気になってる人向けに実際に使ってみて何が嬉しいのかを雑に書いてみます。 Pull-Request サマリーの自動生成GitHub の Pull-Request を出すとき、レビューして貰うためにこの Pull-Request の変更点を整理して書くと思うのですが、これを自動生成してくれます。 https://github.com/sile/pixcil/pull/2これは弊社の社員が個人のリポジトリで GitHub Copilot Enterprise の機能を利用

    GitHub Copilot Enterprise のススメ
    yug1224
    yug1224 2024/03/08
  • GitHub Enterprise Cloudと GitHub Copilot Enterprise に切り替えた

    GitHub Team と GitHub Copilot Business から切り替えました。切り替えた理由は GitHub Copilot Enterprise を利用したいという一点です。 雑にまとめを書いてみます。 GitHub の金額 (月契約)GitHub Team は 1 アカウント月 4 ドルGitHub Enterprise Cloud は 1 アカウント月 21 ドル約 5 倍のアップです。GitHub Actions の無料枠が 3000 分から 50000 分になるのは良いです。SSO もそのうち使ってみようと思います。 https://github.com/pricing#compare-featureshttps://docs.github.com/en/enterprise-cloud@latest/admin/overview/about-github-en

    yug1224
    yug1224 2024/03/04
  • Lua はオープンソフトウェアだが、オープン開発されたことは一度もない

    これは Lua のよくある質問からリンクされているメールの文章に書かれている文章で、 Lua のスタンスについて書いてある。 Lua is open software, but it has never been open developed.メールにはもう少し踏み込んで書かれているので興味ある人は読んでみてほしい。 この開発をオープンにしないという考えが自分にフィットしている、そのため自社で公開しているオープンソースは基的にこの考えを適用している。 理由としてはオープンな開発は負担が大きすぎると感じているのが一つある。小さな会社はリソースが少ないため、オープンな開発をやっていくのはとてもむずかしい。 もう一つの理由は、なにかあればパッチではなく、フォークして開発してもらうという方針を取りたいというのがある。自分たちでコントロールできる範囲で開発していきたいう考えが強いからだ。 開発をオ

    yug1224
    yug1224 2024/02/12
  • 中国圏で時雨堂が紹介された話

    X(旧Twitter) で突然フォロワーが恐ろしく増えた。それも中国圏の方々からのフォローでなんだなんだとドキドキしていた。正直スパムか?と思った。 ただ、フォローしてくる人たちのプロフィールには、 GitHub アカウントだったり、ソフトウェアエンジニアとか、プログラマーとか C++ とか Python とかの文字がやけに多かったので、ブロックしたりはせず、ドキドキしたままだった。 そして理由はこれ。有名なオープンソースプログラマーの方が、時雨堂を紹介してくれていた。 私は時雨堂という素晴らしい日の会社を発見しました。 日のインターネット企業とは違う。 彼らは新しいテクノロジー (zig) を追いかけているだけでなく、オープンソースを特に受け入れており、主に使用しているテクノロジーの開発者のほとんどをスポンサーしており、公式 Web サイトにもリストされています。 海外の方に OSS

    yug1224
    yug1224 2024/01/23
  • 零細企業が OSS スポンサーになる際に気をつけてること

    今期も充分な利益を出すことができましたので、普段お世話になっている OSS のスポンサーになったり、経済的な理由で修学に困難がある学生や子どもの貧困対策への寄付をしました。 スポンサーであり、寄付ではないあくまでスポンサーであり、スポンサーになる事で「宣伝になる」事を前提としています。そのため名前やロゴをウェブサイトやブログ、リリースノートに載せてくれる事はとても重要です。 惰性でスポンサーを続けない自分たちがその OSS を利用しなくなったり、スポンサーしている開発者がOSS から距離を置いた場合、スポンサーを停止するようにしています。 OSS スポンサーをするのが嫌だと思う人を採用しないそもそも、OSS スポンサーしているのは「OSS への貢献をよしとしない」人と勝手に距離が取れるというのもあります。 零細企業による OSS スポンサーは社員の理解があってこそだと思います。 業の売上

    yug1224
    yug1224 2023/11/29
  • 依存ライブラリを減らす

    自社主力製品(以下自社製品)の依存ライブラリを減らしたので、雑に書いていきます。 もともと、自社製品の依存ライブラリは多くありません。Erlang/OTP というマニアックな言語で書かれていることもあり、多くの依存ライブラリは自前で書いています。 自前ではない依存ライブラリは JSON、JSON スキーマ、HTTP サーバー、HTTP クライアント、Raft などです。 今回は HTTP クライアントをライブラリ依存が少ないライブラリに変更し、さらに JSON スキーマを Fork し、依存しているライブラリを減らしました。 HTTP/1.1 クライアント Hackney の削除

    yug1224
    yug1224 2023/10/10
  • Business Source License 1.1

    HashiCorp が OSI オープンソース・ライセンス のソフトウェア (以降 OSS) 製品を Mozilla Public License 2.0 (以降 MPL) から Business Source License 1.1 (以降 BUSL) にライセンス変更して話題になっています。 自社は主力製品はクローズドソース、それ以外は Apache License 2.0 で OSS として公開という戦略をとっていることもあり、 BUSL について自分の考えを雑に書いておこうと思います。 法律の専門家ではないので、間違いもあると思います。きっちり理解したい人は弁護士に相談しましょう。

    yug1224
    yug1224 2023/08/13
  • ChatGPT で何が変わったか

    2023 年 3 月時点で、自分の開発スタイルがどう変わったかを雑に書いておく。 どんなタイミングで何を聞いているか主に GoTypeScript や W3C や IETF の仕様について聞く場合はほぼ ChatGPT Plus を利用している。間違いとかはどうせ公式ドキュメントを読めばいいので、正しさは求めておらず、きっかけを求めている。 最近では Cloudflare Workers 上で動く WebAuthn サーバーを実装しているが W3C の WebAuthn を開きつつも、ほぼ ChatGPT相談しながら実装している。 TypeScriptUint8Array から ArrayBuffer に変換する方法を聞いたり、証明書について聞いたりと色々。参考までにどんなことを聞いているかを紹介しておきたい。 WebAuthn で送られてくる署名の r と s がたまに

    ChatGPT で何が変わったか
    yug1224
    yug1224 2023/03/29
  • 2022 年に学んで良かった技術

    雑に書いていきます。 バックグラウンド自分のバックグラウンドスキルは以下の通り。専門はリアルタイムな通信プロトコルを利用したサーバーの設計と開発とマーケティング。 Erlang/OTPWebRTCEnd to End Encryption細かいのはこちら。 SQLGosqlc を使うために学ぶことにした。sqlc を採用したのは複数人数で開発するときの共通言語としては SQL の方がいいだろうというのと、SQL はどんなデータを持たせたいのかを伝えるのに便利と判断したため。 今までずっと通信系ミドルウェアの開発をしてきたこともあって SQL を学ぶ必要が無かったが、今回いい機会なのでちゃんと学ぶことにした。 まずは利用データベースを完全にしぼって TimescaleDB (PostgreSQL ベース) で利用する SQL だけを学ぶことにした。 書籍は元 SIer のガチ SQL

    yug1224
    yug1224 2022/12/14
  • カスタマイズをしない

    自分の会社ではパッケージ製品、つまりお客様の環境で動かして頂く製品を販売している。 そのため、カスタマイズを希望される事もある。今の機能では簡単に実現するのが難しいというのがほとんどの希望理由だ。 カスタマイズの定義は製品に対して+アルファの何らかの特別な対応を機能を追加することという事にしておく。 結論から言うと自分の会社では一切のカスタマイズを受けないというスタンスだ。カスタマイズはメリットよりデメリットの方が多いという考え方からだ。 カスタマイズのメリットまちがいなく売り上げを上げやすい事だろう。カスタマイズが必須な場合の顧客はカスタマイズを受け付けない製品を購入しない。 さらにカスタマイズ対応ということで、追加の開発費やサポート費を手にすることができる。これは前職で十分実感できた。 ただメリットはこれしか無い。 カスタマイズのデメリット一番大きいのはコードのフォークが発生してしまう

    yug1224
    yug1224 2022/11/26
  • 時雨堂は何をしている会社なのか

    大変反省したので、何をやっていて、どんな会社なのか書いていきます。知ってもらうためにも定期的に更新していければ思っています。 まとめ零細企業リアルタイムな音声と映像を扱うミドルウェア製品を作って売ってるミドルウェアのクラウド版を作って売っているサブスクリプションモデルの積み上げ型OSS 重視何をやってるのか時雨堂はミドルウェアソフトウェアをパッケージとして開発、販売しています。最近は「リアルタイムな音声と映像、データの配信」に特化したミドルウェアがメインです。 現在の主力製品は WebRTC SFU Sora (以降 Sora)という来は P2P で利用する WebRTC を、クライアント・サーバー方式で利用するソフトウェアを1 から開発して、販売しています。売上のほとんどはこの製品関連になります。 製品はサブスクリプションを採用しており、 3 ヶ月、6 ヶ月、 12 ヶ月単位で Sor

    yug1224
    yug1224 2022/11/23
  • オンラインドキュメントと日本語全文検索

    自社では Sphinx というドキュメントツールを利用しているのですが、残念ながらこれに付属している検索機能の日語検索はかなり厳しいです。また残念ながら Sphinx 開発側も検索周りを改善するという予定は直近ではないようです。 そして検索というのはとても難しい技術なため自分のような素人では導入して「普通に期待する動作」をさせるまでの距離はとても遠いです。 ただ、なんとかして日語全文検索を実現したいという思いはここ10 年くらいずっと思っていました。これは自社の Sphinx テーマを作ってくれている社員ともよく話をしていたのですが、どうしてもリソースをつぎ込めずにいました。 まとめ日語検索に対応している Meilisearch を採用したドキュメントスクレイパーの実行は GItHub Actions (Self-hosted Runner) を採用した自社 Sphinx テーマの検

    オンラインドキュメントと日本語全文検索
    yug1224
    yug1224 2022/08/18
  • なぜ Zig の採用を検討しているのか

    かなり雑に書いてるので、雑に読んでください。 BunZig で開発されていることを知り、そこから Zig を調べてみています。 調べていくと自分が求めていた言語っぽいというのがあり、社外では学生に QUIC や TLS 1.3 を Zig で OSS を開発してもらうお仕事を出したり、社内では実際に採用に向けて調査を進めています。 そもそもの目的自分の会社では Erlang VM を利用した製品をメインに利用しています。ただ Erlang VM 遅いんです。少なくとも暗号処理であれば Rust の方が 2 倍ほど速いです。Erlang VM 自体 JIT を採用したり、いろいろ頑張ってくれているのですが劇的な高速化というのは今すぐには難しいのが現実です。 そこで NIFs (Native Implemented Functions) を使って頑張るという戦略があります。早い話が Er

    yug1224
    yug1224 2022/07/23
  • ニッチプログラマー

    Twitter で “The Nitche Programmer” という記事が流れてきたので、自分もおそらくニッチプログラマーのくくりには入ると思うので雑に何か書いておこうと思います。 思ったことを適当に書いていくので読みにくいと思います。適当に流し読みしてください。 まとめニッチかどうかはどうでもいい。 ニッチプログラマーはじめてのちゃんとしたプログラミングは Python 2.2 あたりから始まり、その後 Erlang/OTP へ切り替えて 10 年以上 Erlang/OTP を書いてご飯をべています。ここ数年は開発に注力はせず、ビジネス考える人になっています。 最近では WebRTC をメインでやっており、 Erlang/OTP + WebRTC という組み合わせであればおそらく日では社員を除けば自分だけというくらいニッチです。世界的に見ても Erlang/OTP + WebR

    yug1224
    yug1224 2022/05/04
  • E2EE を開発していて思うこと

    ここ数ヶ月は自社製品向けの End to End (Media) Encryption の設計と実装をしています。年内での提供を目標として開発を進めてい見ていますが、色々感じることがあったので雑に書いていこうと思います。 前提自分は暗号やセキュリティの専門家ではない自社製品向けの E2EE は Signal や Google Duo が利用している実績のある仕組みを採用しているE2EE や暗号の専門家を招聘し、相談しながら開発している自分の E2EE に対する考え悪意あるサービス管理者からユーザを守るために存在する機能と考えています。 Signal プロトコルはよく考えられすぎているSignal が考えた Curve25519 (x25519/ed25519) を利用した X3DH / Double Ratchet の仕組みは安全すぎると感じるくらいです。 相手からメッセージを受信するたび

    yug1224
    yug1224 2021/03/18
  • 企業 OSS を継続開発するためにやっていること

    時雨堂は企業か開発する OSS としていくつかのリポジトリを GitHub に公開しています。これらを継続的に開発するためになにをしているかを書いていきます。 まとめOSS に利益を期待しないコミュニティや社外の人と仲良くするOSS に理解のある人だけを社員として雇う前提オープンソースのライセンスは Apache License 2.0ソースコードはオープン、開発はクローズコミュニティは Discord のみOSS の定義“オープンソースの定義” を前提としています。 時雨堂が OSS 採用しているライセンスである Apache License 2.0 は OSI 承認オープンソースライセンスです。 そのため時雨堂が公開している OSS は Apache License 2.0 のもと、利用可能です。 ソースコードはオープン、開発はクローズド 時雨堂の OSS の開発方針は Lua の開発

    yug1224
    yug1224 2020/06/14
  • お手伝い先でやったこと、やってること

    2020 年 1 月から株式会社ZIZAI の IRIAM で「雑談するおっさん」をしています。なにをやったか、なにをやってるかを書いていこうと思います。ちなみに自分の業は開発者です。 まずお手伝いする上で条件を出しました。 サーバ/インフラに関する技術決定権採用判断権組織改善権評価改善権結果としては偉い人から「何やっても構いません、全部おまかせします」って返ってきました。 さて、やったこと、やってることを箇条書きで書いてみました。技術的な話の詳細は内緒なので書きません。 Twitter での定期的な採用告知自分への Slack DM の禁止自分への返信はスレッド禁止(好み問題)可能な限り即決断する自分だけでは決断できない場合はいつまでに判断する旨を伝えるSlack のパブリックで #shiguredo を作ってもらい、自分とはそこでのみ会話するエンジニアの上下関係の削除プライベートに対

    yug1224
    yug1224 2020/05/03
  • HTTP API の設計方向

    Twitter の TL に Dropbox が API v2 で REST をやめたという内容がかかれている記事が流れてきた。

    yug1224
    yug1224 2019/05/10
  • リアルタイム映像配信サーバ開発者からみた STADIA

    まず、この記事では、STADIA で快適にゲームができるかどうかという話はしません。技術的にどうなの?というのを想像込みで書いていきます。 誰だよお前、って言われそうなので … 自分は WebRTC の通信部分と QUIC スタックの実装をフルスクラッチでしており、日で多くの会社に採用されている WebRTC を利用したミドルウェア製品の開発者です。WebRTC を利用して 4K@30 をサーバ経由で配信というのを実現したりしています。 利用している技術STADIA が利用している通信技術は WebRTC (と QUIC)です。これは Project Stream という STADIA リリース前に公開された実験的プロジェクトがまさにそうでした。Project Stream の VP である Majd Bakar 氏がインタビューで回答しています。 Project Stream は 10

    yug1224
    yug1224 2019/03/21