ブックマーク / golden-lucky.hatenablog.com (28)

  • 大型書店が好きな自分にとって理想的なアプリだったhonto withのこと - golden-luckyの日記

    ほぼすべての個人が専用の情報端末を持ち歩く社会でありながら、印刷製された「紙書籍」というパッケージの形で知識や物語に接することを好む人がまだまだ十分に多く、その小売りに特化した店舗が「書店」として成立できていた2024年、それでも年々縮小する需要の前に小規模な書店はすでに次々と姿を消し、紙書籍を求める人たちの受け皿として役割を果たしていたのは都市部に残された大型書店だった。それら大型書店の広大な店頭には無数の紙書籍が並び、しかもそれは毎日のように増大していく。なぜなら紙書籍は、それを生み出すことを生業とする出版社にとって、たとえ読者の手に渡ることがなくても流通に載せさえすれば収益になる商材でもあったからだ。産業の末路である。 紙書籍を好む人の多くは大型書店が好きだったと思う。コンセプトが明確でエッジを効かせた小規模書店への憧れはあるけれど、必ずしも選書や店主が個人のバイブスに合うとは限ら

    大型書店が好きな自分にとって理想的なアプリだったhonto withのこと - golden-luckyの日記
    golden-lucky
    golden-lucky 2024/04/19
    追悼文みたいになってしまったけれど、いいアプリだったので、丸善ジュンク堂の次回作に期待しています
  • 『RubyでつくるRuby』の読み方(私論) - golden-luckyの日記

    記事は、ラムダノートで発売している『RubyでつくるRuby』を買っていただいた方に「読んで」とお願いするための「私家版、読み方のおすすめ」です。また、このは当社ののなかでも過小評価されているところがあると思うので、「気になるけど買ってない」という方に興味を持ってもらうことも目的としています。 書『RubyでつくるRuby』を買った人にも、まだ買っていない人にも、とにかくまず意識してほしいのですが、このRubyの解説書ではありません。 じゃあなんのかっていうと、これは「そもそもプログラミング言語でプログラムを書くって、なに?」という根的な問いへの取り組み方を教えてくれるです。 もう一度言いますが、このRubyの解説書ではありません。なので、「Rubyを使うつもりはなくて、PythonとかJavaScriptが好き」っていう人や、「それらのプログラミング言語をいままさに

    『RubyでつくるRuby』の読み方(私論) - golden-luckyの日記
    golden-lucky
    golden-lucky 2023/01/10
    書きました!
  • ラムダノート第8期を迎えました - golden-luckyの日記

    2015年12月に自分で出版社を立ち上げたとき、うっすらと決めていた覚悟は、「ひとまず10年は続ける」でした。 それまで15年くらい、技術系版元として歴史も規模もそこそこある出版社で企画編集をやっていたので、「だいたい何部くらい売れれば一人ならっていける」といった程度の雑な算段はあったものの、かっちりした事業計画があったわけでもなく、「まあ、しばらくは前職の退職金をいつぶしながら最初の何冊かを作ればいいかな」などと気軽に考えながら、むかし作ったの読者だったり有識者レビュアーだったりでお世話になっていた時雨堂という会社に遊びにいき、そんな浮ついた起業計画を雑談のつもりでしたら、社長の @voluntus に「お金出すよ」と言われ、「えっ」って戸惑っているうちに税理士さんを紹介してもらい、定款ができて、気づいたら ラムダノートという出版社 ができていました。 あれから満7年。2022年1

    ラムダノート第8期を迎えました - golden-luckyの日記
    golden-lucky
    golden-lucky 2022/12/12
    8年めなので書きました
  • プログラミングにおける「納得」と『Goならわかるシステムプログラミング 第2版』 - golden-luckyの日記

    「納得」欲 パソコンやブラウザ、あるいはスマホで使うアプリケーションを作っているとき、自分がやっている「プログラミング」という行為にどこまで「納得」できているでしょうか? 「プログラミングという行為への納得」、ちょっと耳慣れない概念ですよね。実をいうと、さっきこの記事を書き始めたときに思いつきました。プログラムを書いていると、エラーみたいな露骨な躓きがない場合でも、なんかもやもやすることがあります。このもやもや、少なくとも自分は、以下のような側面で一定の「納得」に至っていないことが原因であるような気がしています。 アプリケーションの仕組みをデータ構造やアルゴリズムの言葉で説明しきれるぞ、という側面での「納得」 意図通りの挙動になることに設計レビューやユニットテストや動作検証を通じて確信が持てるぞ、という側面での「納得」 コードがコンピュータやネットワークという物理的な装置の上でどう処理され

    プログラミングにおける「納得」と『Goならわかるシステムプログラミング 第2版』 - golden-luckyの日記
    golden-lucky
    golden-lucky 2022/03/23
    改訂にあたって個人的にぐっときているところです
  • リンゴの話 - golden-luckyの日記

    (pyspa Advent Calendar 2021 17日めの記事です。昨日は@aodagによる「swayでwayland」でした。swayよさそうと思ってapt installしたらbusterにはなかったので、bullseyeに上げている間に書いています) 大学を出てニートをしていた時分には、リンゴ1個で昼ご飯を済ませることがあった。 そこだけ切り取るとアメリカの小学生っぽいけど、父方の実家である弘前の叔母がリンゴを箱で送ってくれて、でもすでに家族の団欒でリンゴをべるような機会もなく、悪くなる前にがんばって毎日1個ずつでもべていた、というのが実態に近い。 バイト先で昼休みにリンゴを丸かじりするのは、片手で済ませられるし、一人で過ごしたい自分の性にも合っていた。 就職して自分の家族をもってからは、わざわざ自分でリンゴを買ってべることもあまりなくなった。 20代までに一生分のリン

    リンゴの話 - golden-luckyの日記
  • 『Engineers in VOYAGE』の「ITエンジニア本大賞」受賞に寄せて - golden-luckyの日記

    って「紙に情報を印字して束ねたもの」っていう点ではどれも見た目が似ていて、そのため「」という単一の群が存在するかのように扱われがちな傾向があると思う。 でも、とくに商品として見ると、はジャンルごとにぜんぜん別物だ。 ジャンルごとに「購入しよう」という意思をもってを見る人、つまり「潜在読者」が違うから、作り方も売り方もまったく変わってくる。 それでも「紙に情報を印字して束ねたもの」が一つの市場で扱われているのは、やはり「流通させやすいから」っていう側面が大きいんだろうな。 というか、流通のために「紙に情報を印字して束ねる」という形に情報を押し込めているといっても過言ではない。 まあ、もちろんこれは過言であって、情報を人間が扱いやすい形にしたものを基準にして流通を考えた結果が現在だから、現在はそういうものに適した流通になっているだけなんだろうけれど。 自分たちが「紙に情報を印字して束ね

    『Engineers in VOYAGE』の「ITエンジニア本大賞」受賞に寄せて - golden-luckyの日記
    golden-lucky
    golden-lucky 2021/03/03
    なにがうれしいのかを前提から書いてたら長くなってしまったけど、「うれしいありがとうございます!」ということが書いてあります。
  • ラムダノート第5期の出版活動の個人的ふりかえり - golden-luckyの日記

    設立からあっという間に5年が経過し、さらに出版で収益が出るようになってから4年が経とうとしている(最初の1年間ちょっとは何もを出していなかったので)。 既刊の点数も10を超えた。 なんとなく、この第5期は、気づいたら出版社としてのトンネルを1つ抜けた一年だったように思う。 第5期は、2の新刊単行と、1の『n月刊ラムダノート』を発行した。 『徹底解説 v6プラス』 『Engineers in VOYAGE ― 事業をエンジニアリングする技術者たち』 『n月刊ラムダノート Vol.2, No.1(2020)』 新刊2冊は、思いがけず企業さんとのタイアップという形で実現した企画だった。 といっても、どちらも著者を見ればわかるように、技術を解説するという点で妥協はない。 むしろ「第三者視点では外に出ることがあまりなかった情報」を書籍という形で世に出せたことが個人的には大きいお仕事だった。

    ラムダノート第5期の出版活動の個人的ふりかえり - golden-luckyの日記
    golden-lucky
    golden-lucky 2021/01/19
    新刊活動のふりかえり(増刷で『Goならわかるシステムプログラミング』を大規模アプデとか、ほかにもいろいろお仕事してます)
  • 30キー左右分離キーボードfoobarをPro Micro Cで作った - golden-luckyの日記

    はやりの自作キーボードの記録です。 きっかけは、2年前のpyspa忘年会でこちらのキーボードの基盤を手にしたことでした。 foobar 1.1 with plates https://www.40percent.club/2017/09/foobar-11-with-plates.html リンク先の写真からわかるとおり、キーが30個しかありません。HHKBのおよそ半分です。さらに分割式。 もともとフットプリントが小さいキーボードが好きで長年にわたりHHKBを使用、しかし1台を両手で使うには肩と背中に限界を感じて2台でスプリット、しかし2台だと入力できるファンクションキーが限られてしまうので最初から左右分割で設計されたキーボードとしてErgoDoxを導入、しかしErgoDoxはデカくて机が狭い…、という遍歴の自分にとって、この「foobar」という雑な名前の自作キーボードはかなり魅力的な存

    30キー左右分離キーボードfoobarをPro Micro Cで作った - golden-luckyの日記
    golden-lucky
    golden-lucky 2020/12/13
    foobarで書いた
  • 2010年代に日本のインターネットでいろんな事業をいい感じにやってきた会社から2020年代へのヒントをもらえる本を作った - golden-luckyの日記

    半年ぶりの新刊です。『Engineers in VOYAGE ― 事業をエンジニアリングする技術者たち』です。紙とPDFがセットになった直販サイトはこちら。 Engineers in VOYAGE ― 事業をエンジニアリングする技術者たち(紙書籍+電子書籍) https://www.lambdanote.com/products/engineers-in-voyage さて、今回の新刊、いろいろ疑問を呼ぶタイトルかもしれません。 「なぜ VOYAGE GROUP?」 「なぜ t_wada?」 「なぜ宇宙船?」 「答えは書で!」と言って済ませることもできるのですが、ここで少し「個人的」なふりかえりをして何となく答えた気分になっておこうと思います。 なぜ VOYAGE GROUP? なぜ t_wada? なぜ宇宙船? で、結局のところどういうなの? 気合い入ってます なぜ VOYAGE G

    2010年代に日本のインターネットでいろんな事業をいい感じにやってきた会社から2020年代へのヒントをもらえる本を作った - golden-luckyの日記
    golden-lucky
    golden-lucky 2020/08/07
    ちょっと暑苦しいふりかえり記事を書きました。
  • gitで2つのリポジトリを混ぜる戦略を考える - golden-luckyの日記

    「2つのgitリポジトリがあって、その片方をもう一方に取り込みたい」という状況を考えます。依存ライブラリのソースを自分のプロジェクトで保持したい、といった状況が典型的でしょう。 この場合、通常は git submodule を使うと思います。 git submodule であれば、他のプロジェクトを履歴ごと自分のソースの一部として管理できて、かつ双方の履歴をきれいに分離できます。 Git - Submodules ただ、双方の履歴が分離できるということは、双方の履歴を混ぜられないということでもあります。そのため、 git submodule は、他のプロジェクトのソースに自プロジェクト独自の変更を加えて管理するといった用途には向かないように思います。ではどうすればいいだろうか、という試行錯誤の記録です。 git submodule で取り込む 「Aのcloneにおけるsubmoruleへの

    gitで2つのリポジトリを混ぜる戦略を考える - golden-luckyの日記
    golden-lucky
    golden-lucky 2020/05/04
    「何をどうバージョン管理し、何を共有して何を共有しないか」をgitのフローにするのが難しい。
  • 出版社を作って4年が経ちました - golden-luckyの日記

    ラムダノートという出版社を作って4年が経ちました。 www.lambdanote.com 去年に引き続き、今年もちょっとふりかえりをしてみます。 この記事はラムダノートの技術 Advent Calendar 2019の25日めのエントリーです。 第4期(2018年12月~2019年11月)のふりかえり 『n月刊ラムダノート』はじめました 今年は『n月刊ラムダノート』という不定期刊行誌を3月に発行し始めました。 去年のふりかえりで第4期の目標として掲げていた「単発のじゃない形で濃い技術情報をお届けする新企画」は、これのことです。 ぶっちゃけ、技術書、読むの大変じゃないですか? 正直なところ、作るほうもかなり大変です。 技術書に限らず、いま出版社が次々に新刊を出しているのは、半ば商売を維持するためという構造的な側面があります(それだけが理由ではないです)。 読む人も作る人もさまざまな無理感を

    golden-lucky
    golden-lucky 2019/12/25
    第5期もすでに大きなお仕事がいくつか走り始めています!
  • TeXの脚注をなんとかする - golden-luckyの日記

    この記事はTeX & LaTeX Advent Calendar 2019の24日目の記事です。23日めはwtsnさんの記事でした。25日めは☃さんの記事です。 TeXの脚注は出力されない場合がありますね TeXはなぜ脚注を期待どおりに扱えないのだろう 脚注をMVL上で可視にすればよい ページ分割する箱にも脚注を入れたい yafootnoteの実装について(読まなくてもよい) まとめ 今年は3年ぶりにTUGに参加してきました。 TUGというのはTeX User Groupのことであり、TeX界隈の開発者とアドバンストな利用者からなる世界的なコミュニティです。 年に1回、地球のどこかで集まっていて、それもまたTUGと呼ばれています。 2013年には東京でも開かれました。 なお、今年はKnuthも参加しています。前回の参加は10年くらい前のことで、そのときはiTeXというネタ発表をしたことでも

    TeXの脚注をなんとかする - golden-luckyの日記
    golden-lucky
    golden-lucky 2019/12/24
    脚注大好き
  • XMLからEPUBを作る - golden-luckyの日記

    昨日までの話をふりかえってみます。 構造化文書というと、どうしてもXMLタグの書式で構造を示すあの世界観が想起されやすい しかし、書式はあくまでも記法にすぎないと思うことにして、構造のほうだけ抽象データ型でかっちり用意するという世界観もありうる。これはPandocやDocutilsでいちおう成功を見ている このアドベントカレンダーでは、後者の世界観を「ライトウェイト構造化文書」と呼んでみました。 特にPandocの成功については、代数的データ型、パーサコンビネータ、パターンマッチを兼ね備えたHaskellに依拠する部分が大きかったのではないかなと個人的には思っています。 今日は、そんなHaskellでEPUBを作ろう、という話です。 PandocにはEPUB Writerもありますが、痒い所に手が届く感じではなかったので、自分で生成器を作ることにしました。 HaskellでXMLを扱う E

    XMLからEPUBを作る - golden-luckyの日記
    golden-lucky
    golden-lucky 2019/12/23
    当社では販売していないEPUBの話です
  • 抽象データ型を自作する - golden-luckyの日記

    昨日の記事では「書籍のマクロな構造」について話しました。 このマクロ構造はPandoc構造には組み込まれていません。 そのため、Pandocで書籍を作ろうと思うと、どうしたってPandoc構造にない部分を扱う別の仕組みが必要になります。 素のPandocでは、「書籍のマクロな構造を扱える外部の仕組み」を託す先として、主にLaTeXを利用しています。 裏を返すと、LaTeXは、書籍のマクロな構造を扱える仕組みです。 それなら最初からPandocではなく、LaTeXを作ればいいのではないでしょうか? この反論はもっともです。 実際、を作るプロは黙ってLaTeXであったり、あるいはInDesignであったり、あるいはFrameMakerであったりを使います。 組版のプロの要求を実現するためには、これらのツールが持つ表現への自由度が必要だからです。 しかし原稿をもらう立場からすると、この高い

    抽象データ型を自作する - golden-luckyの日記
    golden-lucky
    golden-lucky 2019/12/22
    ライトウェイト構造化文書の実例です
  • Markdownで書籍を作るとは - golden-luckyの日記

    昨日まで何回かにわたり、多様なドキュメント形式の変換アプリケーションであるPandocのコアとなる仕組みを説明してきました。 特に、Pandoc構造とそれを生成するReader、生成されたPandoc構造を変換するPandocフィルターについて、少し時間をかけて紹介しました。 では、PandocのReaderとフィルターについて理解したところで、Pandocを使っては作れるでしょうか? いままでの説明には登場しませんでしたが、Pandocの出力側を担うWriterには、「PDF生成のためのLaTeX Writer」や「EPUB Writer」など、「」を作るのに使えそうなものがあります。 それらWriterを制御するためのコマンドラインオプションはいろいろ用意されており、独自のテンプレートを指定することも可能です。 ただ正直なところ、これらのWriterは、吊るしの状態では売り物の

    Markdownで書籍を作るとは - golden-luckyの日記
    golden-lucky
    golden-lucky 2019/12/21
    Pandoc編の最終回です
  • Pandocをコマンドでなくライブラリとして使う - golden-luckyの日記

    昨日までの記事では、Pandocフィルターの基と少しだけ実用味がありそうな例を紹介しました。 Pandocフィルターは、Pandoc体の開発言語と同じくHaskellで書けますが、Pandocの内部動作を変えられるわけではなく、pandocコマンドによってJSONとして出力したデータを操作する仕組みです。 内部に組み込まれたLua処理系で実行できる新しいフィルターの仕組みもありますが、いずれにしてもpandocというコマンドに対する補助的な機構です。 一方で、Haskellというプログラミング言語から見ると、Pandocはライブラリでもあります。 つまりpandocコマンドとしてでなく、自分が書くHaskellのプログラムで読み込んでそのMarkdownのパーサだけを使う、といったことも可能です。 今日はそのような事例を紹介します。 XML原稿にあるMarkdownの島 先週、このアド

    Pandocをコマンドでなくライブラリとして使う - golden-luckyの日記
    golden-lucky
    golden-lucky 2019/12/20
    自分のプログラムでMarkdownパーサを書かなくて済むのは地味によいことだとおもう
  • PandocをreSTのリストテーブルに対応させる - golden-luckyの日記

    Python界隈でよく見かける構造化文書のための記法として、reStructuredText(以降はreSTと書きます)があります。 reStructuredText https://docutils.sourceforge.io/rst.html 軽量マークアップ言語などと呼ばれることもありますが、reSTはかなり高度な表現力がある記法です。 その記法をパースするために標準で使われているのはDocutilsという仕組みです。ただ、DocutilsはreST専用ではなく、他の記法のパーサを実装することもできるらしいです。 その意味でDocutilsは、Pandocと同じく、内部の抽象的なデータ構造へと記法を押し込めるツールだといえる気がします。 Docutilsについては『マスタリングDocutils』に詳しいので興味がある方は購入しましょう。 『マスタリングDocutils』 マスタリン

    PandocをreSTのリストテーブルに対応させる - golden-luckyの日記
    golden-lucky
    golden-lucky 2019/12/16
    ようやく宣伝までたどりつきました
  • ライトウェイト構造化文書 - golden-luckyの日記

    このアドベントカレンダーでは、先週まで、主にページメディアにおける「PDF」と「XML」の話をしてきました。 この2つ、それぞれ「Webブラウザでのレンダリング」と「HTML」に言い換えると、ウェブメディアの世界観と似ている気がしてこないでしょうか。 実際のところ、ウェブメディアとページメディアって互いに遠い存在ではなく、「平面に文字などを配置することを目的とした構造化文書」という視点に立てば、むしろ兄弟みたいなものです。 「Webブラウザへの表示がHTMLだけで済むわけないだろ、CSSJavaScriptの役割を知らないのか」という指摘が聞こえてきそうですが、ページメディアにもそれらに相当するものは存在します。 というか、いろいろありすぎて、もはや収拾がついていません。 ページメディアでわりと標準っぽいのは、CSSの役割がXSL-FO、JavaScriptの役割がXSLTという、いわゆ

    ライトウェイト構造化文書 - golden-luckyの日記
    golden-lucky
    golden-lucky 2019/12/14
    独自研究です
  • XMLをつぶす機械を作る機械を作る - golden-luckyの日記

    昨日は、ドキュメントの構造をプログラムのように実行できるというアイデアの話をしました。 具体的には、「ドキュメントの構造をS式で表現し(SXML)、そのタグをLispの関数と見立て、それを要素に関数適用する」というアプローチです。 たとえば、XMLで表したときに段落を意味する<para>のようなタグに対する変換処理は、こんな感じのLispの関数として定義できます。 (define (para arg) (print arg "\n\n")) 今日は、これをもうちょっと真面目に定義する部分と、これを評価する部分、それに実用的に使うためのフレームワークについて書きます。 以降、Lispの処理系としては、GaucheというSchemeの実装を使います。 Gauche https://practical-scheme.net/gauche/index-j.html ドキュメントをS式で書くの? ま

    XMLをつぶす機械を作る機械を作る - golden-luckyの日記
    golden-lucky
    golden-lucky 2019/12/10
    Lispマクロのパワーです
  • PDFから「使える」テキストを取り出す(第6回) - golden-luckyの日記

    今日まで延々と「PDFからテキストデータを取り出すのは大変」という話を続けてきましたが、その構造を見るにあたっては、 hpdft という自作のツールを使ってきました。 大変とはいっても、まあ実現困難な話ではなく、この程度のPDFパーザであれば趣味プログラミングで自作できる範囲です。 しかし、べつにわざわざ自作しなくても、「PDFからテキストデータを取り出す」ためのツールなら世の中にはすでにいくつもあります。 特に有名で昔からよく使われているのは、Xpdf由来のpdftotextでしょう。 pdftotext http://www.xpdfreader.com/ XpdfからはPopplerが分派しているので、Poppler版のpdftotextもあります。 また、pdfminerというツールもあります。 pdfminer https://www.unixuser.org/~euske/py

    PDFから「使える」テキストを取り出す(第6回) - golden-luckyの日記
    golden-lucky
    golden-lucky 2019/12/06
    PDFパース編の最終回です