🏠️Top Page

🖊️おもしろき こともなき世をおもしろく 住みなすものは 心なりけり.

⏩️AIの先の研究が面白い飛んでいる話だけども着々と進んでいる.

おはようございます.先日の休日に視聴したYOUTUBEの内容がぶっ飛んでいて面白かったー📺️.どういった話かと言うと脳のアップロードと意識の話です.東大准教授、渡邉正峰先生いわく脳のアップロード後、意識は生まれるという話でその研究がこれから進んでいく可能性があるということ.

また、この宇宙は超知的文明がシュミレーションした可能性が高いということも冒頭話されていました.シュミレーションした宇宙のなかに宇宙が存在している可能性があるということ.いやー久々に飛んでいる話を聞いてワクワクしました、これを語っているのが東大の先生だということで実に良かったです、自分が同じ話をしても馬鹿にされるだけだけども先生が話すと皆そうなんだ~みたいに流れになるのは不思議ですね.

人は権威に弱い生き物なんだなって思いますということで脳や仮想のお話が聞きたい方は是非視聴してみてください.

明日へ続く

⏩️クラシックAPIを使用してGitHub APIから草データを取得.

おはようございます.クラシックAPIを使用してGitHub APIから草データを取得するコードをAPI使用しつつ手直してモノの数分で完成しました.こういうのを思うと少人数の開発でも希望を持てるなって思います.ちなみに自分は未だに無料枠でコードを生成してもらっています.

正直なところ、無料枠で事が足りるという印象ですね.コードの改善や命名は生成AIにやってもらった方が優秀です、自分の無能がよくわかります.

草データの使用方法はタイトル通りなので特に問題ないかなって思います.コンフィグファイルは書かずしても変数に代入してあげれば良いわけですからね.一応、github上にソースコードを掲載しています.

https://github.com/taoka3/GitHubGrass

良かったらいいね👍️(⭐️)宜しくお願い致します.

<?php
class GitHubGrass
{
    private string $token;
    private string $username;
    private array $weeks = [];
    private int $cellSize = 12;
    private int $padding = 2;
    private array $colors = [];

    public function __construct(string $username, string $token)
    {
        $this->username = $username;
        $this->token = $token;

        // 色の設定(GitHub風)
        $this->colors = [
            'level0' => [235, 237, 240],
            'level1' => [155, 233, 168],
            'level2' => [64, 196, 99],
            'level3' => [48, 161, 78],
            'level4' => [33, 110, 57]
        ];
    }

    /**
     * GitHub APIから草データを取得
     */
    public function fetchContributions(): bool
    {
        $url = 'https://api.github.com/graphql';
        $query = <<<'JSON'
        {
          user(login: "USERNAME") {
            contributionsCollection {
              contributionCalendar {
                weeks {
                  contributionDays {
                    contributionCount
                  }
                }
              }
            }
          }
        }
        JSON;

        // ユーザー名を埋め込む
        $query = str_replace("USERNAME", $this->username, $query);

        $ch = curl_init($url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_HTTPHEADER, [
            'Content-Type: application/json',
            'Authorization: Bearer ' . $this->token,
            'User-Agent: ContributionsApp'
        ]);
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(['query' => $query]));

        $response = curl_exec($ch);
        curl_close($ch);
        $data = json_decode($response, true);
        if (!isset($data['data']['user']['contributionsCollection']['contributionCalendar']['weeks'])) {
            $this->weeks = []; // 空の配列を設定
            return false;
        }

        $this->weeks = $data['data']['user']['contributionsCollection']['contributionCalendar']['weeks'];
        return true;
    }

    /**
     * 草画像を生成
     */
    public function generateImage(): string
    {
        if (count($this->weeks)) {
            die('No data available.');
        }

        // 画像サイズ設定
        $width = (count($this->weeks) * ($this->cellSize + $this->padding)) + $this->padding;
        $height = (7 * ($this->cellSize + $this->padding)) + $this->padding;

        // 画像作成
        $image = imagecreatetruecolor($width, $height);
        $bgColor = imagecolorallocate($image, 255, 255, 255);
        imagefill($image, 0, 0, $bgColor);

        // 色の作成
        $colorPalette = [];
        foreach ($this->colors as $key => $rgb) {
            $colorPalette[$key] = imagecolorallocate($image, ...$rgb);
        }

        // セル描画
        foreach ($this->weeks as $x => $week) {
            foreach ($week['contributionDays'] as $y => $day) {
                $count = $day['contributionCount'];
                $color = $this->getColor($count, $colorPalette);

                // 四角形を描画
                imagefilledrectangle(
                    $image,
                    $x * ($this->cellSize + $this->padding) + $this->padding,
                    $y * ($this->cellSize + $this->padding) + $this->padding,
                    ($x + 1) * ($this->cellSize + $this->padding),
                    ($y + 1) * ($this->cellSize + $this->padding),
                    $color
                );
            }
        }

        // 出力
        ob_start();
        imagepng($image);
        $imageData = ob_get_contents();
        ob_end_clean();
        imagedestroy($image);

        $base64 = base64_encode($imageData);

        return $base64;
    }

    /**
     * コントリビューション数に応じた色を取得
     */
    private function getColor(int $count, array $colorPalette)
    {
        if ($count == 0) {
            return $colorPalette['level0'];
        } elseif ($count < 5) {
            return $colorPalette['level1'];
        } elseif ($count < 10) {
            return $colorPalette['level2'];
        } elseif ($count < 20) {
            return $colorPalette['level3'];
        } else {
            return $colorPalette['level4'];
        }
    }
}

明日へ続く

⏩️SNSは最早最早もはや化石かもしれない.🤬商売になりつつあるのかも?

おはようございます.最近思ったことを書いていきます、自分はSNSは基本的にXとYOUTUBEしかやっていないだけどXは何だかんだで、まだシェア率は日本では高いツールだと思います.特に自分たちの年代はそういう傾向があるのではないかな.若い世代はインスタグラムとからしいけど、もうそれも古い話だと思っています.

若い世代の方が違うアプリに鞍替えする傾向があるのではないかな、逆に年老いていくとそこら辺も面倒くさくなり固定のアプリしか使用しなくなるじゃないのかと.老いると化石のように同じアプリを頻繁に使うようになってくるだと思います.

そんな化石アプリを使っている人に訃報です、先日ポストしたように人間のように振る舞うボットが急速にXやインスタグラムに増えつつある.もう見分けがつかなくなっていて、このボットが世論や経済を動かしつつある気がしている.何が真実かが分からなくなり、人々は信じたいものを信じるようになってくるのではないかな.

情報の山に埋もれて本当の真実が見えなくなる時代なのかも.これからの世代はそういう事に気づき始めているのでSNSしないリアル重視になってくるかもしれないなって、ふとXを見ながら思ったので書き留めました.

明日へ続く

⏩️健康診断に行くのにバスを使ってみました.とさでんマイ時刻表も.

おはようございます.先日、健康診断に行くのにバスを使ってみました、そして、とさでんマイ時刻表も使ってみましたという話を書いていきます.

自分が健診にいった日はちょうど朝から雨がふりそうな予報が出ていたのだけども、バスが来るまで雨がふらないだろうと思っていたらバス停のりばまで、残り半分ぐらいの所で雨が降り出して慌ててパーカーを被りバス停のりばまで行ったんだけど、予定通りにバスは来ず2分遅れで乗車.

乗車して驚いたのは立って乗っている人はいなかったのだけど、座席はほぼ埋まっていたところです.こんな高知県でも一応通勤時間は乗っている人が結構いるだなって驚きでした.

40分ぐらいで健診場所に付いたのだけど、雨に打たれて...頭のヘア―がもじゃもじゃ頭になっていて明らかに不審人物ぽっい頭になっており最悪だなって思ったのですが、まったくもじゃもじゃヘア―がもとに戻らない.

それが気になって、内心、健診どころではなかったです、まぁそんなこんなで健診が終わった頃には外は晴れていましたけどね.

因みにとさでんマイ時刻表は使えるのだけど、UIをもっと改善してほしいなぁなどと思いました.自分はブラウザ板しか使ったことが無いけどアプリってあるですかね.

とさでんマイ時刻表の良い点はリアルタイムでバスが何分遅れとか分かるところですね.

明日へ続く

⏩️「so」は「shared object(シェアード・オブジェクト)」の略です.古い環境をWEB構築する方法.

おはようございます.以前の職場でPHPのソースコードをビルドしてPHPのバージョン何パターンか作っていましたが、今でもテスト環境というものはあるのでしょうか?アンサー無いでしょうね、きっと.今ではDockerという便利な物がありますから.

さて古い環境をWEB構築する手順を箇条書きに記載していきます.まず古いPHPを動かすには古いOpenSSLが必要になってきます.まずはOpenSSLのソースコードが必要になりそれをビルドします.OpenSSLがPHPで必要になってくると書きましたが、必要になるパターンはphp-opensslを使用する場合です.例えばphpのフレームワークなどを導入している環境では必ずと言って良いほど、php-opensslを使用しているので古いOpenSSLも必要になってきます.

sudo yum groupinstall -y "Development Tools"
sudo yum install -y perl gcc make
wget https://www.openssl.org/source/openssl-1.1.1.tar.gz
tar xvf openssl-1.1.1.tar.gz
cd openssl-1.1.1
./config --prefix=/usr/local/openssl1.1.1 --openssldir=/usr/local/openssl1.1.1 shared zlib
make
make install

上記のような感じでOpenSSLのソースコードをダウンロード=>解凍=>ビルドします.ここでミソなのがso(拡張子:shared object(シェアード・オブジェクト))を作って上げることです.ここで自分は躓きました.soを作らずにphp-opensslをビルドしていたのでビルド時にエラーが出力されました.

phpのビルドは下記のような感じです.他にも拡張モジュールが必要な場合はそれに合わして追記記載が必要になってきます.

sudo yum groupinstall -y "Development Tools"
sudo yum install -y autoconf bison re2c libxml2-devel sqlite-devel \
    libcurl-devel openssl-devel git gcc make
git clone https://github.com/php/php-src.git
cd php-src
git checkout PHP-7.0.0
./buildconf
./configure --prefix=/usr/local/php7.0 --with-openssl=/usr/local/openssl1.1.1
make
make install

こうするとPHPの古いフレームワークなどが使用できるようになります.尚、フレームワークなどを使用する場合は他の拡張モジュールがもう少し必要になってきますが原理原則を理解すると出来ると思います.Apacheで動かすには「--with-apxs2=/usr/sbin/apxs」の記載も必要になってきます.尚、php-fpmを使用したい場合は「--enable-fpm」を追記してFirstCGIで動かすということで良いと思います.両者ともApacheの設定は必要となります.

明日へ続く

⏩️ReactとVueだったらReactを選択すると思う.間違いないアレはキラキラだ.

おはようございます.この頃、米国市場がどんより傾向でここ数週間で一つの口座では10万ぐらいは減ったようです.減った時に株の買い回しをすると景気が回復したときに倍に増える可能性はありますが、何だかトランプ大統領は予測しにくいですね.トランプ大統領の発言で売買システムを構築している人達は大変そうです.AIの精度を上げないとかなり損をしそうです、早く辞めて頂きたい.

さてReactの話を書いています.ReactとVueだったらReactを選択すると思うけれどもVueも大事だという話.シェア率から言えばReactの方が多いと思います.React推しの人はReactで何でもしてしまいますが、実際適材適所で言語を選ぶ方が表示が早くなったりSEOに強くなったりします.

でも、ReactとTypeScriptが大事に成りつつあることは確かです.自分もさえないReactのコードを書いています.イマイチ、使いこなせていない部分があります.もっと洗練したコードを書きたいなって思いますが全然ダメでついついバニラで対応してしまいます.

先日、リリースした掲示板もReactに改修しようと思っていますが、今のところ誰も使用していないので当分バニラJSのまま置いときますが行く行くはReactに対応していきます.

明日へ続く

⏩️この頃、言語化や語彙などという言葉が書店に並んでいるのでポイントで購入してみた.

おはようございます.この頃、言語化や語彙などという言葉が書店に並んでいるのでポイントで購入してみた.ポイントで購入するので1時間ぐらいどの本を購入するか悩んだ挙げ句に、高知県、出身の方が書かれた「好き」を言語化する技術という本を購入しました.

因みにじっくり読んではいないので感想は書かないけど、何故、この本を読んでみようと思ったのは帯にも書かれている通り「すごく感動したのにおもしろかった」しか言葉がでてこないというキャッチコピーに「あぁまさにこれだ」と心で思ったので購入.

Xでも映画観終わった後にポストするのだけど「ついつい同じ言い回しを使ったり」、「良かった」などで終わらしている自分がいるのでもっと良さを伝えれたらなという思いもあるし少なからず承認欲求というものもある(これで少しは良いねを貰えるかなという思いも).

因みにこの本の感想は書かない可能性があります、理由は実践しようと思っているので(笑)

明日へ続く

⏩️これから観に行きたい観に行こうと思っている映画2025上期.

おはようございます.これから観に行きたい観に行こうと思っている映画2025上期を書いていきます.書いていく前に観に行こうと思っていたけど辞めた映画として「片思い世界」があります、理由は予告を見てどうなんだろう自分にあってなさそうな映画だと思ったのが理由です.

その代替えとしていまFlowが何だか関心を持っています.この映画、予告を観る限り音と音楽だけでセリフがなさそうでした、そして人が登場してなさそうな映画だったので関心を持っています.これで感情が入ってくるのか、見終わった後にどういう感情を自分が抱くのかに関心があったので見ようと思っています.

次にflow移行に観に行こうと思っている映画の一覧を列挙します.

  • 少年と犬
  • ミッキー17
  • 国宝
  • ミッション:インポッシブル/ファイナル・レコニング
  • スーパーマン
  • アバター:ファイヤー・アンド・アッシュ
  • 真相をお話しします
  • 果てしなきスカーレット
  • トロン:アレス
  • 爆弾
  • フロントライン

上期以外も含まれているかもですが観に行こうと思っている映画、観に行きたい映画です(※これ以外にも観に行く予定が増える可能性はあります).

明日へ続く

⏩️世界は理不尽と正義、正義の通じなくなると混沌の時代に突入する.

おはようございます.トランプ大統領とゼレンスキー大統領のやり取りを見て思ったことは世界は理不尽化しつつある.理不尽な世の中というのはよく分かるけど、あれほど正義が勝つという映画を作り続けてきた国の大統領がアレではちょっとダメなのかも知れないね.

過去を振り返っても独裁政権が上手く行ったという話は聞かない.必ずどこかでしっぺ返しが来るものだと思います.それがいつ来るか分からないけど半世紀後かもしれないけど必ず上手くいかなくなる.今、トランプ大統領がやっているのは自国優先で物事を進めているけど恐らく後から揺り戻しが来るものだと思います.それがトランプ大統領の任期中になるのか、任期後になるのかは分からない.

ゼレンスキー大統領は正義が勝つと思っている人だと思うけど中々それも難しいと思っている.あの映画「ウィンストン・チャーチル」のような結果が生まれれば良いのだけどもそれには今以上に欧州の力が必要になりそうだ.アメリカは欧州のこれからの出方次第で方針を決めていきそうです.トランプ大統領は当てにならないし何故こんな人が大統領になり得たのか分からない.

今でも戦場で戦っている人のことを思うと和平を結んだ方が良いと思っている.

明日へ続く

⏩️🦖絵文字BBS(掲示板広場)💎誰か使って楽しんでください😌

おはようございます.朝のニュース番組で子供は絵文字だけでやり取りするというのが流れていたので、これなら平和だしいちいち管理しなくても良いなということで作ったのが経緯になります.仕事前にちょこちょこと2日で作った形になります.掲示板広場㌁(仮)では他ではしていない特殊な掲示板を作り続けようと思っています.

そしてその次は点字掲示板です.また他にも暗号でやり取りする掲示板とかも考えています.どれか一つぐらい当たれば良いのになって思っています.ひとつ当たれば地つなぎに他の交流版も増えていくだろうと思っています.まぁでも特殊すぎて誰も使わないかも知れませんが諦めずにアイディア出していきたいですね.

では最後に絵文字掲示板のリンクを貼っときます.是非是非お越しください😌

https://bbs-station.start-line-system.com/emoji_bbs

明日へ続く