DMM(現FANZA) API・Twitter Botによる自動広告を半年続けた結果、「得た収益」と「二度とやらないと誓った理由」

DMM(現FANZA) API・Twitter Botによる自動広告を半年続けた結果、「得た収益」と「二度とやらないと誓った理由」

前書き:何故、DMM APIでTwitter Botを始めたか 2018年2月頃、私は職場環境が変わり、定時退社できるようになっていました。毎日17時ぐらいに家に着くと、暇です。そんな中で、Qiita経由である記事が目に入りました。 ...

April 20, 2019 · 4 min
Review: PIXAR <ピクサー> 世界一のアニメーション企業の今まで語られなかったお金の話

Review: PIXAR <ピクサー> 世界一のアニメーション企業の今まで語られなかったお金の話

事業としてのPIXARに着目した書籍 PIXARの事業的(収益的)な面に踏み込んだ書籍は、本書が初です。著者であるLawrence Levyは、1995年にPIXARへ就任し、2006年にディズニーがPIXARを完全子会社として買収するまで、PIXARの経営面を支えます。スティーブ・ジョブズ、PIXARの社員、ディズニーとの間で、板挟みになりながらもPIXARを世界的に成功した会社まで押し上げた功労者です。 PIXARのスタートアップ期では、ジョブズが自費で金銭的なサポートをしていた話は、有名です。しかし、ジョブズが早期IPO(新規公開株)を期待していた事、ディズニーと契約面で争う際の経過や、最終的にディズニーにPIXARを売るまでの判断に至る背景は、今まで書籍で語られる事がありませんでした。 ...

April 20, 2019 · 4 min
Linux Kernel: List構造を操作するためのAPI(Listの使い方)

Linux Kernel: List構造を操作するためのAPI(Listの使い方)

前書き C言語は、言語としてList構造およびList操作APIをサポートしていません。ここでのList構造とは、「次のデータ(前のデータ)へのポインタ」を意味します。本記事では、データとList構造(nextポインタ、prevポインタ)をセットにした状態をノードと呼びます。 ...

April 7, 2019 · 13 min
Linux Kernel: 構造体メンバポインタから構造体の先頭ポインタを得るcontainer_ofマクロ

Linux Kernel: 構造体メンバポインタから構造体の先頭ポインタを得るcontainer_ofマクロ

container_ofマクロとは container_ofマクロは、Linux Kernelで用いられ、「構造体メンバポインタ」から「そのメンバを含む構造体の先頭ポインタ」を得られるマクロです。C言語では、offsetofマクロによって構造体メンバアドレスのオフセット(構造体先頭アドレスからメンバ変数までのオフセット)を算出できます。container_ofマクロは、このオフセットを利用し、構造体の先頭アドレスを算出しています。 ...

April 6, 2019 · 5 min
【Desktop entry】Linux環境でデスクトップアイコン(ショートカット)をfreedesktop.org仕様で作成する方法

【Desktop entry】Linux環境でデスクトップアイコン(ショートカット)をfreedesktop.org仕様で作成する方法

前書き 本記事では、既存アプリや自作アプリのショートカットを作成したい場合、デスクトップアイコン(ショートカット)を用意する方法を示します。Linuxは、複数のデスクトップ環境(GNOME、MATE、KDEなど)が存在しますが、手順はX Window System環境であれば同一です。その理由は、デスクトップアイコン(ショートカット)仕様がfreedesktop.orgによって(半標準として)定められているためです。 ...

March 30, 2019 · 8 min
Raspberry Pi3向けのセキュアSSH接続設定(公開鍵認証、rootアクセス禁止、ログインユーザ設定など)

Raspberry Pi3向けのセキュアSSH接続設定(公開鍵認証、rootアクセス禁止、ログインユーザ設定など)

前書き:SSHをよりセキュアに SSH(Secure SHell)は、通信を暗号化した状態でリモートPCに接続するソフトウェアです。SSHは便利な反面、外部PCからの接続を許可するため、セキュリティ対策が必要です。本記事では、SSHのセキュリティ対策設定を記載します。Raspberry Pi3前提で記載しますが、他の環境でも同じ内容が(ほぼ)実施可能です。 ...

March 26, 2019 · 6 min
Raspberry Pi3をsambaファイルサーバ化し、Linux/Mac/Winでファイル共有(外付けSSDを使用)

Raspberry Pi3をsambaファイルサーバ化し、Linux/Mac/Winでファイル共有(外付けSSDを使用)

前書き 家庭内にLinux/Mac/Windows環境が存在する場合、各PCから写真などを閲覧する事が手間な場合があります。クラウドが一つの解決策ですが、写真はサイズが大きいため、クラウドを無料使用できる範囲を超えます(あと、クラウドは同期が遅い)。そこで、各PCでファイルを共有するため、Rapsberry Pi3をsambaファイルサーバ化します。sambaはUNIX系OS上でWindows互換のファイルサーバ・プリントサーバを立ち上げるOSSです。 ...

March 24, 2019 · 7 min
Raspberry Piに固定IPを割り当てる方法

Raspberry Piに固定IPを割り当てる方法

前書き Raspberry Piに他PCからSSHなどでアクセスする場合、IPアドレスが必要です。IPアドレスがDHCPで動的に割り当てられる場合、都度Raspberry Pi3のIPアドレスを調べなければなりません。その手間を無くすため、IPアドレスを固定化します。 ...

March 24, 2019 · 5 min
UserLAnd

AndroidにLinux環境を構築する"UserLAnd"がソースリーディング環境(スマホ用)として最適

前書き AndroidにLinuxを導入する試みは、以前からありました。この試みは、AndroidのKernel部分が“Linux Kernel”(Linuxと共通)ですから、自然な発想と考えられます。過去の例で言えば、「Ubuntu(Debian)をAndroid端末に導入」したケースがあります。しかし、これまでのAndroidのLinux化は、煩雑な手順が必要、かつ失敗した場合に端末が文鎮化してしまうリスクがありました。 ...

March 16, 2019 · 6 min
mmdebstrapによるarmhf向けrootfsの作成方法(公式最小サイズ27MB)

mmdebstrapによるarmhf向けrootfsの作成方法(公式最小サイズ27MB)

mmdebstrapとは mmdebstrapとは、最小構成rootfsを作成するためのdebootstrapを代替するコマンドです。debootstrapと同様に、Debianサポートアーキテクチャ向けのrootfsを作成できます。mm(Multi-Mirror)が意味するように、複数のミラーサーバを使用する事により、debootstrapより3〜6倍ほど高速に動作します。 2019年3月現在(Debian9, stretch環境)では、mmdebstrapはtesting/unstableに存在します。stableに存在しないmmdebstrapを知ったキッカケは、debian-embeddedのメーリスです。128MB以下のrootfsを作成する方法がメーリス内で質問され、mmdebstrapの開発者(Johannes Schauer)がその方法の一つとして紹介していました。質問自体は、最終的にmmdebstrapが作成するrootfsのサイズがネックになり、他の方法(Yocto)が採用されていました。 ...

March 10, 2019 · 12 min
Debian: 任意のtesting/unstableパッケージのみをinstallする方法(システム全体はstableを維持)

Debian: 任意のtesting/unstableパッケージのみをinstallする方法(システム全体はstableを維持)

前書き Debianパッケージは、基本的な使い方をしていれば、安定版(stable)がシステムにinstallされます。しかし、「使用したいパッケージがstableにない場合」や「より新しいパッケージを使いたい場合」、システムにtesting/unstableパッケージを導入する必要性がでてきます。 ...

March 9, 2019 · 8 min
語学学習:ハロー先生は割安。でも、英語以外ができる良い先生と巡り会いにくかった

語学学習:ハロー先生は割安。でも、英語以外ができる良い先生と巡り会いにくかった

外国人と対面で話す機会 = ハロー先生 仕事や趣味のため、語学学習する人は多いと思います。勉強中の悩みの一つとして、「外国語が読める(聞き取れる)ようになったけど、話せない(書けない)」という状態に陥る事があります。例えば、TOEICスコアが700〜900ぐらいなのに、英語で話したり、メール連絡ができない状態です。 ...

March 3, 2019 · 6 min
Linux Kernel: NULLポインタエラーハンドリング(ERR_PTR, IS_ERR, PTR_ERR)

Linux Kernel: NULLポインタエラーハンドリング(ERR_PTR, IS_ERR, PTR_ERR)

“返り値がNULL” = “情報量がない” C言語には、返り値としてポインタを返す関数があります。 User空間の関数で例を挙げれば、メモリを確保するmalloc()、ファイルを開くfopen()などです。これらの関数は、エラー時にNULLを返します。 ...

March 2, 2019 · 6 min
振り返り:Google AdSenseがサイト開設4日で承認された話(およびサイト開設2ヶ月目の収益)

振り返り:Google AdSenseがサイト開設4日で承認された話(およびサイト開設2ヶ月目の収益)

厳しいと有名なGoogle AdSense審査 サイトやブログを持っている方は、「独自ドメインを取得して、広告収入を得る事」に興味があると思われます。私もその中の一人です。会社の合併によって収入面が不安になり、この考えに辿り着きました。思い立ったら、後は行動するだけです。私はサーバレンタル・ドメイン取得・WordPressによる記事作成まで、一日で済ませました(2018年12月31日の事)。 ...

February 28, 2019 · 4 min
Linux Kernel: エラー番号の一覧

Linux Kernel: エラー番号の一覧

前書き 本記事では、Linux Kernelが用いるエラー番号を説明します。 Linux Kernelがエラー番号(errno)を正しく返す意義 Linux Kernelでは、エラーの種類に応じて、返すべきエラー番号が定められています。例えば、ファイルが存在しない場合は、“ENOENT(No such file or directory、 エラー番号2)“を返します。Linux Kernel内のエラー内容は、変数errnoを通してUser空間にも伝わります。 ...

February 24, 2019 · 10 min
Ой!(オイ):ロシア人が日本人をビビらせる一言

Ой!(オイ):ロシア人が日本人をビビらせる一言

ロシア人「“Ой!” (オイ!)」私「(´;ω;`)何?」 ロシアの街を歩くと、「Ой!」という言葉が聞こえてきます。老いも若きも「Ой!」、男性も女性も「Ой!」と話しています。何も知らずに歩いて、それなりの声の大きさで「Ой!」と聞こえれば、大抵の日本人はビビると思います。想像してみてください。こんな薄暗い町中で、後ろで「Ой!」と聞こえた時の事を。ほぼ全ての日本人は、「何だ?」と思って、後ろを振り向いてしまうと思います。 ...

February 24, 2019 · 2 min
Linux Command Optionの慣習(一般的なOption一覧)

Linux Command Optionの慣習(一般的なOption一覧)

前書き 本記事は、Linux環境で実行するCommand Optionの慣習について、調査結果を記載します。調査動機は、「Option規格」や「一般的に用いられるOption」を知る事によって、よりよいInterfaceを持つCommandが作成できると考えたからです。特に、Option文字列(例:–version)は、他のCommandに可能な限り一致させた方が、ユーザが混乱しないと考えています。 ...

February 23, 2019 · 6 min
後編:16年ぶりにディズニーシーへ(12歳⇒28歳)

後編:16年ぶりにディズニーシーへ(12歳⇒28歳)

まずは前編から 前編:16年ぶりにディズニーシーへ(12歳⇒28歳) 実は怖くないらしいレイジング・スピリッツ 子供向けのアトラクションで時間を潰した後、ファストパス時刻が迫ったレイジング・スピリッツへ移動。私は、人生初の360度回転するコースターに乗る恐怖から、待ち時間の間、急にお腹が痛くなってきました。「もし、宙吊りの状態でコースターが緊急停止したら……」など、余計な事を考えつつ、どのポイントが最も怖いかを目視確認していました。 どの程度怖いかを乗車寸前までグーグル先生で調べたら、浮遊感が少ないため怖くないとの記載を見つけました。確かに乗ってしまえば、一番怖いのは、コースターが高所へ移動する際のガタンッギギ……ガタガタンという軋んだ音だったかなと。 しかし、レイジング・スピリッツに関する写真が一枚も残っていないため、乗る前は本当にビビっていたのが、この振り返りで分かりました。 ...

February 14, 2019 · 6 min
前編:16年ぶりにディズニーシーへ(12歳⇒28歳)

前編:16年ぶりにディズニーシーへ(12歳⇒28歳)

思い出のディズニーシーは楽しくなかった 私が最後にディズニーシーで遊んだ年齢は、12歳(2002年)。家族旅行で遊びに行きました。当時はディズニーシーの開園1年後(シーの開園は2001年)ぐらいで、両親としては「ディズニーシー新しくが出来たから、行ってみようか」と考えたのでしょう。 ...

February 12, 2019 · 7 min
Bash(Shell Script)内メッセージの国際化方法

Bash(Shell Script)内メッセージの国際化方法

前書き BashによるShell Scriptを国際化(メッセージ翻訳)する方法は、C言語/Python/Rubyなどと同様です。つまり、gettextライブラリを使用し、翻訳対象メッセージの対訳を保存したカタログファイル(.moバイナリ、言語毎に必要)を用意する方法です。本記事では、その使い方を説明します。 ...

February 3, 2019 · 9 min
Linux Kernel: prink(print kernel)によるメッセージ出力

Linux Kernel: prink(print kernel)によるメッセージ出力

printk()とは printk(print kernel)は、ユーザ空間のprintf( print formatted )に相当します。注意すべき点として、printf()と以下の点が異なります。本記事では、この差異を説明します。 ...

February 2, 2019 · 6 min
環境構築: Linux Kernelモジュールの作成準備

環境構築: Linux Kernelモジュールの作成準備

前書き 本記事は、「Linux Kernel Device Driverの雛形作成」や「Linux Kernel内APIを試すためのモジュール作成」を目的として、最低限必要な環境構築手順を記載しています。 ...

January 27, 2019 · 10 min
ccache(compiler cache)によるビルド高速化

ccache(compiler cache)によるビルド高速化

前書き 大規模なプログラムをビルドする場合、数十分〜数時間かかる事があります。ビルド時間が長いと、それだけ開発者の待ち時間が増えるわけですから、短いに越したことはありません。そんなビルド時間を短縮するツールとして、ccacheがあります。 ...

January 26, 2019 · 4 min
Raspberry Pi3にAndroid7.1.1 + Google Play Storeをインストールする方法

Raspberry Pi3にAndroid7.1.1 + Google Play Storeをインストールする方法

前書き 本記事は、Install Android on his Raspberry Piを実践した結果を示します。具体的には、Raspberry Pi3に対して、Android7.1.1とGoogle Play Storeをインストールします。Androidの最新バージョンは、2018年にリリースされた9.x系ですので、やや古いバージョン(2016年時点の最新版)のインストール方法になります。 ...

January 26, 2019 · 7 min
Review: Live Philadelphia '84 King Biscuit Flower Hour(DIO)

Review: Live Philadelphia '84 King Biscuit Flower Hour(DIO)

収録曲 収録曲 1. Stand Up And Shout 2. One Night In The City 3. Don’t Talk To Strangers 4. Mystery 5. Egypt (The Chains Are On) 6. Heaven And Hell 7. The Last In Line 8. Heaven And Hell (Reprise) 9. Rainbow In The Dark 10. Man On The Silver Mountain > Long Live Rock N Roll 11. The Mob Rules 12. We Rock Ronnie James Dioのキャリア絶頂期Live音源 Ronnie James Dioは、日本国内に限って言えば、Rainbowのボーカリストとして知名度があるかもしれません。しかし、そのキャリアの絶頂期は、自身のソロ活動でHoly Diver(1983)、The Last in Line(1984)をリリースした頃ではないでしょうか。この時期は、セットリストにRainbow、Black Sabbath、DIO(ソロ)の楽曲が並び、選曲面でオールタイムベストと言えます。さらに、DIOの歌唱は90年代と比較して力強く(本作時点で42歳)、ギタリストもアグレッシブなソロを華やかに弾きこなすVivian Campbellであったため、80年代のLive盤はとても聴き応えがありました。 ...

January 26, 2019 · 4 min
fetcher

コードリーディング(Bash):システム情報表示ツール"neofetch"

前書き 本記事は、システム情報表示ツール"neofetch“のコードリーディング結果を記載しています。 リーディング動機は、**「neofetchは、システム情報をどこから集めているか」**が気になったからです。neofetchは約2600Step程度の小規模なBash scriptであるため、関数レベルで解説します。 ...

January 22, 2019 · 15 min
コードリーディング(C言語):chroot / ischroot

コードリーディング(C言語):chroot / ischroot

前書き 本記事は、以下のコマンドのコードリーディング結果を記載しています。 プロセスおよび子プロセスの(見かけ上の)ルートディレクトリを変更するchroot プロセスがchroot環境(jail環境)で動作しているかを検出するischroot ...

January 20, 2019 · 22 min
Review: Boston 1981(Rainbow)

Review: Boston 1981(Rainbow)

収録曲 収録曲 1. Spotlight Kid 2. Love’s No Friend 3. I Surrender 4. Man On The Silver Mountain 5. Catch The Rainbow 6. Can’t Happen Here 7. Lost In Hollywood 8. Difficult To Cure 9. Long Live Rock ’n’ Roll 10. Smoke On The Water ( Lazy, Women from Tokyo, Smoke On The Water) Difficult To Cureツアーの良音質な音源 本作は、Joe Lynn Turner加入後にリリースされた"Difficult To Cure“公演(1981年5月7日)を収録しています。下地となった音源は、過去に販売されていたBootlegですが、その音質は良い。収録年代およびBootlegという点を踏まえれば、「音の分離感」「アルバムを通した音量バランス」「ノイズ」の全てが、問題ないレベル。しかし、他の方のレビューでは、ギター・キーボードの音量バランスに関して指摘がありました。私も感じたことですが、ギターの音がやや小さめです。 ...

January 4, 2019 · 4 min
Review: Seattle '89(Metallica)

Review: Seattle '89(Metallica)

収録曲 収録曲 1-1. The Ecstasy Of Gold 1-2. Blackened 1-3. For Whom The Bell Tolls 1-4. Welcome Home (Sanitarium) 1-5. Harvester Of Sorrow 1-6. The Four Horsemen 1-7. The Thing That Should Not Be 1-8. Bass Solo 1-9. To Live Is To Die 1-10. Master Of Puppets 1-11. Fade To Black 2-1. Seek And Destroy 2-2. …And Justice For All 2-3. One 2-4. Creeping Death 2-5. Guitar Solo 2-6. Battery 2-7. The Frayed Ends Of Sanity 2-8. Last Caress 2-9. Am I Evil 2-10. Whiplash 2-11. Breadfan ...

January 2, 2019 · 3 min
ロシア旅行:観光ビザを簡単に取得する方法(ビザ申請代行業者を利用)

ロシア旅行:観光ビザを簡単に取得する方法(ビザ申請代行業者を利用)

写真は、2018年の夏に撮影した「ペテルゴフ 夏の宮殿(サンクトペテルブルク)」です。ペテルゴフは、ピョートル大帝(1世)のもとで建設された庭園で、150個を超える噴水がある綺麗な観光地です。過去の私のように、 ...

January 2, 2019 · 5 min
Raspberry Pi3: 公式ツールおよびHW仕様

Raspberry Pi3: 公式ツールおよびHW仕様

Raspberry Piとは Raspberry Piは、ラズベリーパイ財団(イギリス)より提供されているARMプロセッサボード。初期は、教育用を念頭に開発されてきました。現在は、RPi1からRPi3までの間で、HW性能が大幅に向上し、産業用途で使われる事例も増えてきました。 対応OSは、DebianベースのRaspbianの他に、Ubuntu、CentOS(非公式)、Windows IoT Core、Android(非公式)などに対応しています。安定性および情報量の面では、Raspbianの一択でしょう。 ...

January 1, 2019 · 2 min
Review: Игра с огнём(АРИЯ)

Review: Игра с огнём(АРИЯ)

収録曲 収録曲 1. Что Вы Сделали с Вашей Мечтой? (★) 2. Раскачаем этот мир(★) 3. Раб страха 4. Искушение 5. Игра с огнём 6. Бой продолжается 7. Дай жару! ★: 人気曲 ...

January 1, 2019 · 3 min
Raspberry Pi3(Linux Kernel)のBoot Sequence Step1:アーキテクチャ依存部

Raspberry Pi3(Linux Kernel)のBoot Sequence Step1:アーキテクチャ依存部

前書き シングルボードコンピュータのRaspberry Pi3を用いて、Linux KernelのBoot Sequenceを調査します。その調査結果を複数回に分けて、記事にします。対象のLinux Kernelは、Raspberry Pi(OS)のソースコード rpi-4.1.yとします。 ...

December 31, 2018 · 3 min