使っていないドメインだけど一番値が高いドメインに暇つぶしでコードを埋め込んでみました.

2025.02.02

Logging

おはようございます.使っていないドメインだけど一番値が高いドメインに暇つぶしでコードを埋め込んでみました.これでソースコードを読める人は少しは楽しめると思います.とくに駆け出しのエンジニアさんには響きそうです.ちなみにドメインは9up.meです、このドメイン更新費用結構お高いけどいま全く使っていなかったドメインです.

少しは活用できたのではと….因みに業者でもないのにドメイン代で年間、1万5千円飛んでいくので自分でも馬鹿だなと思いますが、もっていると何かのとき役に立つのではとか思い込んでいます.恐らくそんな事はないと思いますが心の底あたりにあるですあるです欲が…..w

あと、こちらのドメインに限らずですがSSLのCNが変なんですよねぇ.どうやって直せばよいでしょうか🤔.リニューでもしないといけないのかなぁ?そもそもSSLのCNがFQDN(ドメイン)が不一致でも良いらしいですよねぇなのでまぁ良いかと思っています.

あと続きでVueの読み方はヴューが正しいらしいのですがビューと日本人は読んでいるらしいですよ.そしてそちらが定着していますよね、やっぱ日本人にはヴューは読みづらいですよね.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

ヴュー, エンジニアさん, コード, ソースコード, ドメイン, ドメイン代, ドメイン更新費用, ビュー, リニュー, 一番値, 不一致, 少し, 年間, 底あたり, , , 業者, , 読み方, 高いドメイン,

仕事がお休みの日だけお休みと表示する機能はアレなので….

2025.01.19

Logging

おはようございます.仕事がお休みの日だけお休みと表示する機能は近日中につけると記載しましたが当分、このままの状態で運用します.いろいろと考えた結果、あまりメリットはないかなと思ったのとXのポストが多いときは大体休みだと気づくだろうという思いもあり、わざわざそれを可視化してもあまり意味がないじゃないかなと.

そういう思いからスケジュール反映は当分、保留とさせて頂きます.スケジュールのコードを観たいなと思う方はスケジュールと検索からググって頂けたら表示されると思います.グーグルカレンダーの一部スケジュールを表示させたいと思う方は恐らく、企業さんぐらいじゃないのかと思います.

因みにグーグルカレンダーのAPIを叩きすぎると費用が発生するらしいので、そこらへんの事を考慮してコードを書く必要があります.因みに自分はクロンを使用して定期的にデータベースに保存する形にしました.

ググってと書きましたが一応リンクを貼っときます.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

グーグルカレンダー, クロン, コード, スケジュール, スケジュール反映, そこらへん, データベース, メリット, リンク, わざわざそれ, 一部スケジュール, 休み, 保留, 可視化, 意味, 機能, 状態, 結果, 費用, 近日中,

EC管理サイトを作っています.外観デザインは生成AIに作ってもらったら平均.

2025.01.17

Logging

おはようございます.EC管理サイトを作っています.外観デザインは生成AIに作ってもらったら平均的なデザインが出てきました.因みに自分は無料会員の生成AIを使っているのだけど、もう無料で十分な気がします、とても便利です.内部処理は自分でコードを書いているわけです、今までデザインでなかなか前へ進まなかったEC管理システムがなんか作れそうな気がしています.

外観デザインは生成AIにしてもらって、後の処理部分を仕事が休みの日を使ってごとごとと作っていきたい.3ヶ月ルールを目標にして3ヶ月でリリースまで漕ぎ着けれると思いますが、会員登録してくれたりするのは別の話かと思います.自分の予想では使われないかもなって思っているけど、こういう予想ははずれる場合もあるので何ともですね😌.

今回は有料プランもあるので決済処理会社に申請を出さなくてはならないけど、申請が下りるかは未知数です.通らなかった場合はフリープランの商品登録数の上限を少し変えて運用していくつもりではいます.心が折れて途中で頓挫する可能性も少しはありますが今のところはたぶん出来るだろうと思っています.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

ヶ月ルール, コード, デザイン, フリープラン, リリース, 上限, 予想, 休み, 会員, 内部処理, 処理部分, 外観デザイン, 有料プラン, 未知数, 決済処理会社, 生成, 申請, 目標, 管理システム, 途中,

Photo by Pixabay on Pexels.com

あれもこれも終わっていないものばかり.そうあれもこれも終わっていない.

2025.01.16

Logging

おはようございます.あれもこれも終わっていないものばかり.そうあれもこれも終わっていないのです.何がといえばファイナルファンタジー16とファイナルファンタジー7リバースが未だにクリアしていない.どちらも中盤前でプレイしているのですが、なかなかクリアするまで云ってません.

FINAL FANTASY XVI “DELIVERANCE”

ファイナルファンタジー16もファイナルファンタジー7リバースも悪くないと思っています.なのに中々ゲームプレイ出来ないのには理由があります、休みの日も何だかんだでコードを触っている、コードを書かない日はない、やっぱコードを書くことがゲームプレイするより面白いと自分は感じている自分がいます.

『FINAL FANTASY VII REBIRTH』 PC版紹介トレーラー

WEBアプリやWEBサービスを作る過程が楽しいですね、作って終わると「運用」という物が始まります、これは自分にとってちょっと負担です.

WEBサービスをリリースしユーザーが付いてしまうと終わらすのが難しい.運営が赤字でも運営しているサービスなんかもあると思います.広告貼っているからガンガン収入が入ってくるわけでもないので難しいところです.

積みゲーは当分積みゲーなのかも知れないですねー.目標としては今年中にどちらかをクリアしたいです.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

アプリ, ゲー, コード, ファイナルファンタジー, ファイナルファンタジーリバース, ユーザー, 中盤前, 休み, 収入, 広告, 未だ, , 理由, 目標, 負担, 赤字, 運用, 過程, 難しいところ, 難しい運営,

グーグルカレンダーの予定を一部表示させたい時のPHPコード.

2025.01.08

Logging

おはようございます.グーグルカレンダーの予定を一部表示させたい時のPHPコードは下記になります、参考にしたサイトはこちらですが参考にしただけでコードは違うものになります.APIを毎日叩いていると課金しなくてはならないかもなのでデータベースに保存する形にしました.これも良い方法かと言えばどうだろうと言う思いもあります.

<?php
ini_set('display_errors', 0);
require_once './vendor/autoload.php';
require_once './config.php';

use Carbon\Carbon;
use Google\Client;
use Google\Service\Calendar;
use Illuminate\Database\Capsule\Manager as DB;

class openSchedule
{
    public $DB = null;
    public function __construct()
    {
        $database = new DB();
        $database->addConnection([
            'driver' => 'mysql',
            'host' => DB_HOST,
            'port' => PORT,
            'database' => DB_DATABASENAME,
            'username' =>  DB_USER,
            'password' => DB_PASSWORD,
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_general_ci',
        ]);

        $database->setAsGlobal();
        $database->bootEloquent();
        $this->DB = $database;
    }

    public function saveSchedule($dateTimeString):void
    {
        //$this->DB::table('schedules')->delete();
        try {
            $client = new Client();
            $client->useApplicationDefaultCredentials();
            $client->addScope(Calendar::CALENDAR_READONLY);
            $client->setAuthConfig(JSONPATH);
            $service = new Calendar($client);
           // カレンダーID
            $calendarId = GOOGLECALENDARID;

            // 取得時の詳細設定
            $optParams = [
                'maxResults' => 10,
                'orderBy' => 'startTime',
                'singleEvents' => TRUE,
                'timeMin' => (new \DateTime($dateTimeString))->format(DATE_RFC3339),
                'timeZone' => 'Asia/Tokyo',
            ];
            $results = $service->events->listEvents($calendarId, $optParams);
            if (empty($results->getItems())) {
                echo "イベントが見つかりませんでした。";
            } else {
                foreach ($results->getItems() as $event) {
                    $this->DB::table('schedules')->insert([
                        'start' => Carbon::parse($event->getStart()->dateTime)->format('Y-m-d H:i:s'),
                        'end' => Carbon::parse($event->getEnd()->dateTime)->format('Y-m-d H:i:s'),
                        'title' => $event->getSummary(),
                        'detail'=>$event->getDescription()
                    ]);
                }
            }

        } catch (Google\Service\Exception $e) {
            echo 'Google Service Exception: ' . $e->getMessage();
        } catch (Exception $e) {
            echo 'General Exception: ' . $e->getMessage();
        }
    }

    public function getWeekDays($dateTimeString):string
    {
        // Carbonインスタンスに変換してフォーマット
        $carbon = Carbon::parse($dateTimeString);

        // 日本語の曜日名配列
        $japaneseWeekdays = ['日', '月', '火', '水', '木', '金', '土'];

        // 曜日の数値を取得し、日本語の曜日名に変換
        $weekdayNum = $carbon->dayOfWeek;
        $japaneseWeekday = $japaneseWeekdays[$weekdayNum];
        return $japaneseWeekday;
    }

    public function getSchedule($dateTimeString):string
    {   
        $str = '';
        $events = $this->DB::table('schedules')->select(['*'])->where('start','>=',$dateTimeString)->limit(1)->get();
        foreach($events as $event){
            
            $str.= sprintf("%s <br>",$event->title);
            $str.= sprintf("%s %s曜日 <br>",Carbon::parse($event->start)->format('Y年m月d日 H時i分'),$this->getWeekDays($event->start));
            $str.= sprintf("%s<br>",Carbon::parse($event->end)->format('Y年m月d日 H時i分'));
        }
        return $str;
    }

    public function getLastDate():string|null
    {
        $lastRecord = $this->DB::table('schedules')
                   ->orderBy('id', 'desc')
                   ->first();
        return $lastRecord?$lastRecord->start:null;
    }
}

//print (new openSchedule)->getSchedule((new \DateTime())->format('Y-m-d 00:00:00'));

if(isset($argv) && $argv[0]){
    $openSchedule = new openSchedule();
    $dateTimeString = $openSchedule->getLastDate();
    if($dateTimeString){
        $date = new DateTime($dateTimeString);
        $date->modify('+1 day');
        $openSchedule->saveSchedule($date->format('Y-m-d 00:00:00'));
    }else{
        $openSchedule->saveSchedule((new \DateTime())->format('Y-m-d H:i:s'));
    }   
}

因みに近日中にブログに仕事の予定などを記載するようにします.近日中なのでいつになるかは未定です.

そうそうCalendarIDという物がグーグルデベロッパサイトにあると思い込んでいて馬鹿な事をしていました.皆さんは間違わないように(笑).CalendarIDはグーグルカレンダーの設定の中にあります.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

```, インスタンス, カレンダー, グーグルカレンダー, グーグルデベロッパサイト, コード, データベース, フォーマット, 参考, 変換, 年月日, 数値, 時分, 曜日, 曜日名, 曜日名配列, , 皆さん, 近日中,

blueskyAPIが処理されなくなったので、対応を行った話.

2025.01.06

Logging

おはようございます.今日から仕事始めの方も多いはず自分もそんな感じです.さてblueskyAPIが処理されなくなったので対応を行った話を書いていきます.ブルースカイの独自処理が上手く処理されなくなったのでその対応を行っていました.今まで公式に落ちているPHP言語のライブラリーを使用していたんだけど、レンタルサーバーの環境が変わった関係により処理がされなくなったので、自前のAPI処理を他のエンジニアが公開されているコードを参考にしてカード板自動投稿を作りました.

ソースコードは下記になります.

    public function cardPost($text, $imagePath = null, $link = null)
    {
        $imageUri = $imagePath ? $this->uploadImage($imagePath) : null;

        $record = [
            "\$type" => "app.bsky.feed.post",
            "text" => $text,
            "createdAt" => Carbon::now()->format('c'),
        ];

        if ($imageUri && $link) {
            $record['embed'] = [
                "\$type" => "app.bsky.embed.external",
                "external" => [
                    "uri" => $link,
                    "title" => $text,
                    "description" => $text,
                    "thumb" => $imageUri
                ]
            ];
        }

        $ch = curl_init("https://bsky.social/xrpc/com.atproto.repo.createRecord");
        curl_setopt_array($ch, [
            CURLOPT_CONNECTTIMEOUT => 10,
            CURLOPT_SSL_VERIFYPEER => false,
            CURLOPT_RETURNTRANSFER => true,
            CURLOPT_POST => true,
            CURLOPT_HTTPHEADER => [
                "Content-Type: application/json",
                "Authorization: Bearer {$this->jwt}",
            ],
            CURLOPT_POSTFIELDS => json_encode([
                "repo" => $this->handle,
                "collection" => "app.bsky.feed.post",
                "record" => $record,
            ]),
        ]);

        $response = curl_exec($ch);
        curl_close($ch);

        return json_decode($response, true);
    }

これでカード型のポストが出来ます.参考にしたサイトはこちらの@ma7ma7pipipiさんのソースコードになります.そのコードにカード型のコードを追加した形になります.

https://qiita.com/ma7ma7pipipi/items/bf7fda65ee71c873c70a

一からコードを書かないで良かったのでとても助かりました.感謝ですね😌、ありがとうございます.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

```, エンジニア, カード型, カード板自動投稿, コード, ソースコード, ライブラリー, レンタルサーバー, 下記, 仕事始め, 公式, 処理, 参考, 多いはず自分, , 感謝, 環境, 自前, 言語,

ブログ通知を付けました.4時間置きに通知が飛びます.#サービスワーカー

2025.01.05

Logging

おはようございます.去年の暮にブログ通知を付けました.4時間置きに通知が飛びます.ソースコードは以前に書いたコードをベースとして再構築した形になります.平たく言うとLaravelを使用しないでWEB通知を行うものになります.一度作ってしまえば使いましが出来るようにコードを今回は書いたので使いまわそうと考えています.

以前、Laravelで作っていたので考え方は苦労せずに出来たのですが…

今まで知らないことが出てきてしまってそこでロスしてしまいました.知らなかったこととはjavascriptのfetchです.使用する機会は結構多めなんだけど知らないことがありました.それはurlのパラムに/exampleと書くか/example/index.phpと書くかでphp言語のグローバル変数$_SERVER[‘REQUEST_METHOD’]の値がPOSTで送っているのにも関わらずGETになるのです.

fetchを書く場合は/example/index.phpと書くことでPOST送信と判断されます.これをデバックもせずに悩んでいました(笑).デバック大事.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

グローバル変数, コード, ソースコード, デバッグ, デバック大事, パラム, ブログ通知, ベース, 一度, , 去年, , 時間置き, , 機会, , 考え方, 言語, 送信, 通知,

LaravelのViteが使用できない環境でログイン画面などを表示させたい対処法.

2025.01.02

Logging

おはようございます.さて正月、2日目の記事はLaravelのViteが使用できない環境でログイン画面などを表示させたい対処法です.レンタルサーバーではnpmコマンドが使えないのでローカルでビルドしてサーバーにビルド後のファイルをUPしている方が殆どだと思いますが、npmをビルドするのも面倒、ビルドが出来ない方はソースコードを読んで何のコードが使われているかを判断して使用されているライブラリーのcdnを貼り付けるだけで大体の解決します.

LaravelのViteが使用できない環境でログイン画面などを表示させたい対処法.

尚、viteで参照しているところは削除してください(viteと差し替える形になります.).

viteでエラーが出る話はこれで終わりです.ここから余談です今年から無料になったGitHub Copilotを個人開発では使用するようにしました、この事によって今までより開発効率が上がるということならば有料プランも検討したいなと思っています.今のところ、無料プランで使っていくというスタンスです.

因みに自分は正月そうそうからコードを書いています.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

エラー, コード, コマンド, サーバー, さて正月, スタンス, ソースコード, ビルド, ビルド後, ファイル, ライブラリー, レンタルサーバー, ログイン画面, 余談, 対処法, , 有料プラン, 正月そうそう, 殆ど, 開発効率,

ビットフライヤーはビットコインのビットコインをリアルタイムで受信するphpコード

2024.12.30

Logging

おはようございます.ビットフライヤーはビットコインのビットコインをリアルタイムで受信するphpコードを書きましたのでお裾分けです.以前書いていたものとは違う感じになります.ビットフライヤーさんのAPIを参照するとルビやJSの例コードはあるものの、何故かPHP言語のコードが無いので書いてみた形になります.ベースは生成AIに出力してもらったの物になります.それを自分の方がクラス化して使いやすくした形になります.

<?php
require 'vendor/autoload.php';

use WebSocket\Client;

class bitflyer
{
    public $client = null;
    public $channelName = "lightning_board_snapshot_BTC_JPY";
    public $wsUrl = 'wss://ws.lightstream.bitflyer.com/json-rpc';

    public function connecting()
    {
        try {
            // WebSocketクライアントを初期化
            echo "Connecting to WebSocket server...\n";
            $this->client = new Client($this->wsUrl);

            echo "Connection established. Subscribing to channel...\n";

            // サブスクライブメッセージを送信
            $subscribeMessage = json_encode([
                'method' => 'subscribe',
                'params' => ['channel' => $this->channelName],
                'id' => null,
            ]);
            $this->client->send($subscribeMessage);
        } catch (\WebSocket\ConnectionException $e) {
            echo "WebSocket connection error: " . $e->getMessage() . "\n";
            sleep(1); // 1秒待機して再接続
            $this->client = null;
            $this->connecting()->receive();
        } catch (Exception $e) {
            echo "General error: " . $e->getMessage() . "\n";
            $this->client = null;
            $this->connecting()->receive();
        }
        return $this;
    }

    public function receive()
    {
        try {
            // メッセージ受信処理
            while (true) {
                $message = $this->client->receive();

                // 受信データが空でないか確認
                if (!empty($message)) {
                    $data = json_decode($message, true);

                    // デコードが成功したか確認
                    if (json_last_error() === JSON_ERROR_NONE) {
                        if (isset($data['method']) && $data['method'] === 'channelMessage') {
                            print_r($data['params']);
                        }
                    } else {
                        echo "JSON デコード エラー: " . json_last_error_msg() . "\n";
                    }
                } else {
                    echo "返却値 空.\n";
                }
            }
        } catch (Exception $e) {
            echo $e->getMessage();
            $this->client = null;
            $this->connecting()->receive();
        }

        echo "Ctrl+C にて終了\n";
        return $this;
    }
}

(new bitflyer)->connecting()->receive();

尚、レンタルサーバーなんかでこのコードを動かすのは禁止されていますので、必ずローカルマシンで動かしてください.もし何かトラブルになっても保証出来ないので注意してください.因みに自分はDocker内で動かしています.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

```, エラー, お裾分け, クライアント, コード, サブスクライブメッセージ, デコード, ビットコイン, ビットフライヤー, ビットフライヤーさん, ベース, リアルタイム, ルビやの例コード, レンタルサーバー, ローカルマシン, , 接続, 秒待機, 言語, 返却値,

ガチで知らなかった.もう何年もPHP言語使っているのに恥

2024.12.28

Logging

おはようございます.ガチで知らなかった.もう何年もPHP言語使っているのに恥…下記のコードで動くことを知らなかった.そもそもそんな返却の仕方が出来ないと思い込んでいたのでlist関数を使用していた.

function abc(){
    return ['a','b','c'];
}
[$a,$b,$c] = abc();
echo "a={$a} b={$b} c={$c}";

改修とか機能追加とか、新規開発で他の人のコードとかを見るけど、そういう使い方をしている人を見たことがなかったので、知る由もなく今の今まで来てしまった.これphpのサンドボックスでバージョンの違うものを実行してみたらphp7.4系でも動いたので絶句してしまった.因みに7.0系は動かない.

自分はphp5系のからPHP言語を主とした仕事をしてきたわけです.仕事で使用するコードってある程度似ているので同じような関数などを使う反面、バージョンアップで追加された機能を使うことはほぼ無い.非対応になった関数を置き換えることはあっても.そういう事もあり今の今まで知らずにいた.

知るきっかけになったのは、プルリクエストしマージ後に自動でコードの正規化が行われた時にコードが置き換わった事によることで知ることに…

知るは一時の恥、知らぬは一生の恥.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

```, ガチ, きっかけ, コード, サンドボックス, バージョン, バージョンアップ, プルリクエストしマージ後, 一生, , 仕方, 反面, , 恥下記, 改修, 正規化, , 言語, 返却, 関数,

Python初学者は無料のあのドキュメントを読めば良いと思った話.

2024.12.23

Logging

おはようございます.Python初学者は無料のあのドキュメントを読めば良いと思った話を書いていきます.Python言語は飛ぶ鳥を落とす勢いです、とても人気の言語でもありますが自分はクラスやメソッドが{}でしまっていないので読みづらさを感じます.

# コレクション作成
users = {'Hans': 'active', 'Éléonore': 'inactive', '景太郎': 'active'}
# 方針:  コピーを反復
for user, status in users.copy().items():
    if status == 'inactive':
        print(user)
        del users[user]

# 方針:  新コレクション作成
active_users = {}
for user, status in users.items():
    if status == 'active':
        active_users[user] = status
print(active_users[user]) 

さて、この上記のコードは何処のコードかといえばPython公式のドキュメントです.これを読むだけで初学者さんは勉強になると思います.それもこれ日本語で書いてくれています.

これを読むだけで高い参考書籍を買う必要はない気がします.それでも分からない方は参考書籍を買ってみてください.

Pythonの話ではないのですが、最近React公式のドキュメントが読みやすくなっているって界隈でちょっと騒ぎになっていました.

これも生成AIが恩恵なのかもしれません.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

クラス, コード, コピー, コレクション作成, ドキュメント, メソッド, 何処, 初学者, 初学者さん, 勉強, 勢い, 参考書籍, 反復, 恩恵, 方針, 景太郎, 生成, 界隈, 言語, ,

Qiitaをさよならした話.生成AIの時代に技術的な記事を書くこと.

2024.12.21

Logging

おはようございます.Qiitaをさよならした話.生成AIの時代に技術的な記事を書くことはデメリットに成りかねない.自分みたいな小童が記事を書いてもそれを生成AIが抽出し学習していく.それを技術的なことを知らないユーザーが使用し中小企業や零細企業に改善してほしいと厳しい単価で要求してくる世の中になるのではないかという懸念からQiitaに記事を記載するのを辞めました.

正確にいうとQiitaの技術的な記事をすべて削除しました.ブログでは今まで掲載した記事を探し出して削除するのは記事数が多いのでしませんが、今後の記事は初心者向けの記事や気づきのメモ的な記事を書いていく事にします.

具体的にはPHPの技術的な記事はこれから少なくなっていくと思います.また業務に支障のない範囲で初心者向けのPythonやReactなどの技術的な記事は書いていくと思います.

WEBサイト制作だけを生業としている企業は生成AIの登場で厳しい時代になってくると思います.もうテキスト指示だけで自分のサイトが作成できる時代になっていてそれをワンアクションで公開出来るようになっています(米国の企業がそんなサービスを提供しています).

これから先、WEBシステムやソフトウェアも一からコードを書かなくて良い時代になってくると思います.ただ既存のWEBシステムやソフトウェアのメンテナンスがあるので直ぐに置き換わるという事はないとは思いますが.それも時間の問題なんだと.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

コード, ソフトウェア, テキスト指示, メンテナンス, ユーザー, , 中小企業, 厳しい単価, 厳しい時代, 小童, 懸念からに記事, 支障, 既存, 業務, 生成, 生業, 範囲, 米国, 話生成, 零細企業,

Pythonの仮想環境で使おうの巻. python3 -m venv

2024.12.19

Logging

おはようございます.Pythonの仮想環境で使おうの巻です、この頃PHP言語の技術的なお話は避けようと思っていて代わりにpyの話を書こうと思っています.PHPのお話を避ける理由は業務で使用しているので、何処まで書いて良いのやらになっている事が理由です.

その代わりにPythonは業務で今のところ使用していないので書きやすい.そういう理由からPythonの事を書いていこうと思っています.この頃、Python記事が多いのもそういう経緯があります.

python -m venv 仮想環境名任意「英字」

今日、ご紹介するのはPythonを実行するのは仮想環境下で行おうという話です.上記のコマンドを打つと仮想環境が任意のディレクトリ配下に作成されます.仮想環境をアクティブにしたい場合は下記のコードでアクティブ化出来ます.アクティブ化した後、インストールやPythonを実行しましょうって話です.

Macやリナックス
. 仮想環境名任意/bin/activate
うぃんどーず
.\仮想環境名任意\Scripts\activate

こうすることで何が良いのかと言うことだけどもCドライブやドキュメント配下がライブラリに侵食されないという利点があります.あとDockerで立ち上げなくても良いというのもあるかな?

トイウコトデ、仮想環境のお話でした.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

インストール, コード, コマンド, ディレクトリ配下, トイウコトデ, ドキュメント配下, ドライブ, ライブラリ, リナックス, 下記, 仮想環境, 仮想環境下, 仮想環境名任意, 何処, 利点, , 業務, 経緯, 英字, 言語,

大晦日までカウントダウンしてまたカウントダウンするJSコード #永遠

2024.12.18

Logging

おはようございます.大晦日までカウントダウンしてまたカウントダウンするJSコードだけではツマラナイので全て漢字に変換して表示するコードを書きました.これでもツマラナイと思う人もいると思います.

そんなに難しいコードでもないのでコードを添付します💁.

        function updateCountdown() {
            const now = new Date();
            const nextNewYear = new Date(now.getFullYear() + 1, 0, 1, 0, 0, 0); // 次の年の1月1日0時0分0秒
            const diff = nextNewYear - now; // ミリ秒差

            if (diff > 0) {
                const days = Math.floor(diff / (1000 * 60 * 60 * 24));
                const hours = Math.floor((diff % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
                const minutes = Math.floor((diff % (1000 * 60 * 60)) / (1000 * 60));
                const seconds = Math.floor((diff % (1000 * 60)) / 1000);

                // 表示を更新
                document.getElementById("countdown").innerText =
                    kanji(`${days}日 ${hours}時間 ${minutes}分 ${seconds}秒`);
            } else {
                document.getElementById("countdown").innerText = "明けましておめでとうございます!";
            }
        }

        // 初回呼び出しと1秒ごとの更新
        updateCountdown();
        setInterval(updateCountdown, 1000);
        function kanji(str){
            let oo = [{'kanji':'零'},{'kanji':'壱'},{'kanji':'弐'},{'kanji':'参'},{'kanji':'肆'},{'kanji':'伍'},{'kanji':'陸'},{'kanji':'漆'},{'kanji':'捌'},{'kanji':'玖'}];
            oo.forEach((o,index)=>{
                str = str.replace(new RegExp(index, "g"),o.kanji);
            });
            return str;
        }

もっと芸のあるカウントダウンを作ろうとするとp5jsなどのライブラリが必要になると思います.WEBサイトでパーティカルなどを行っているサイトは大体こういうライブラリを使用しています.p5jsなどを使用して昔作ってみようかななどと思ったことが有りますが、実はp5jsは一度も触ったことがないです.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

```, カウント, カウントダウン, コード, ツマラナイ, パーティカル, ライブラリ, , 全て漢字, 初回呼び出し, , 大晦日, 月日時分秒, 漆#, 玖#, , 秒ごと, 肆#, , 陸#,

読めるのに書けないってプログラムコードでも有り得るようになるのかも.

2024.12.15

Logging

おはようございます.今後、生成AIが進化する中、読めるのに書けないってプログラムコードでも有り得るようになるのかもとふと思ってしまう.例えばPHP言語なら自分はある程度コードはかけるのだけど、Pythonになるとあまり慣れていないせいか、あまり思うように書けない.

ついつい生成AIに頼ってしまう.そうなると生成AIで記載されたコードを読んでカスタマイズすることになる.

そう、読めるのにコードが1から書けない状態に陥ってしまう.これを打開するには自分でコードを書くしかほかならない.これから先、生成AIが進化する中で自分みたいに読めるのに書けない人もエンジニアも仕事をしていくことになるだろうか.

ともあれ生成AIは進化している中でプログラムコードはエンジニアが書くという機会は減っていくのは必然なのかもしれない.

生成AIに頼ってしまうは検索サービスよりも依存してしまいそうだ.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

エンジニア, コード, プログラムコード, , 仕事, 必然, 検索サービス, 機会, 状態, 生成, 程度コード, 自分, 言語,

Pythonでノイズキャンセリングアプリ化するコードです😤デスクトップアプリ

2024.12.14

Logging

おはようございます.昨日の続きを記載します、Pythonでデスクトップアプリを作りました、デスクトップにPythonが入っている環境で下記のファイルを実行することでノイズキャンセリングが出来ます.

尚、前手順でライブラリを2つインストールください.

pip install scipy noisereduce
import tkinter as tk
from tkinter import filedialog, messagebox
from scipy.io import wavfile
import noisereduce as nr
import os

def select_file():
    file_path = filedialog.askopenfilename(
        filetypes=[("WAV files", "*.wav")]
    )
    if file_path:
        file_entry.delete(0, tk.END)
        file_entry.insert(0, file_path)

def reduce_noise():
    file_path = file_entry.get()
    if not os.path.isfile(file_path):
        messagebox.showerror("エラー", "Please select a valid WAV file.")
        return

    try:
        # Load data
        rate, data = wavfile.read(file_path)
        
        # Perform noise reduction
        reduced_noise = nr.reduce_noise(y=data, sr=rate)

        # Save reduced noise file
        output_path = os.path.splitext(file_path)[0] + "_reduced_noise.wav"
        wavfile.write(output_path, rate, reduced_noise,stationary=True,prop_decrease=0.7)
        
        messagebox.showinfo("成功", f"出力先:\n{output_path}")
    except Exception as e:
        messagebox.showerror("Error", f"An error occurred: {e}")

# Create the main application window
root = tk.Tk()
root.title("ノイズキャンセリングツール")

# Input file selection
frame = tk.Frame(root)
frame.pack(pady=10, padx=10)

tk.Label(frame, text="Select a WAV file:").grid(row=0, column=0, pady=5, padx=5)
file_entry = tk.Entry(frame, width=40)
file_entry.grid(row=0, column=1, pady=5, padx=5)
select_button = tk.Button(frame, text="Browse", command=select_file)
select_button.grid(row=0, column=2, pady=5, padx=5)

# Noise reduction button
process_button = tk.Button(root, text="ノイズ除去", command=reduce_noise, bg="lightblue")
process_button.pack(pady=10)

# Run the application
root.mainloop()

因みにこのコードをパッケージ化したい場合はPythonの下記のライブラリをインストールするとパッケージ化が出来ます.

pip install pyinstaller
pyinstaller noise-cut.py

自分でもノイズキャンセリングを試してみましたが精度はいまいちでした、noisereduceの微調整が必要になりそうです.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

エラー, コード, デスクトップ, デスクトップアプリ, ノイズキャンセリング, ノイズキャンセリングツール, ノイズ除去, パッケージ化, ファイル, ライブラリ, 下記, 出力先, 前手順, 微調整, 成功, 環境, 精度, 自分,

画像の軽量化.webpにしてみたら普通に軽いみたいですね.

2024.11.19

Logging

おはようございます.先日の休みの日に前から気になっていた画像の表示速度を改善したくてwebpという画像圧縮を採用しました.webpに関しては数年前に一度記事にはしていたのですが、その当時はブラウザの方が対応していなくて途中でもとに戻したような気がします.

今回はwebpを採用してこのまま運用していこうと思っています.過去の画像も一括でwebpにしました、それと同時に今までTopに配置していた動画も除けました.

ちょっと物足りない感じはしますが、表示速度を速くしてモバイルファーストに近づけていこうと思います.尚、webpにするためにewwwというプラグインを導入しています.

導入して上手く表示がwebpに変換されたかなと思ったら上手く変換されなかったので、自作のプラグインを作り力技でwebpに変換した形になります(画像はWebpに変換されましたがコードを見るとそのままだったので).

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

ewww, TOP, webp, コード, ブラウザ, プラグイン, もと, モバイルファースト, 一括, 休み, 作り力技, , , 物足りない感じ, 画像圧縮, 自作, 表示速度, 途中, 過去,

異音でPCのファンを交換した話.PCは自作PCなのですが?

2024.11.18

Logging

おはようございます.異音でPCのファンを交換した話を書いていきます.PC(パソコン)は自作PCなのですが業者さんに一万円払って作ってもらいました.自分でも作れるのですが面倒だなと思ったのが、きっかけで業者さんに作ってもらいましたが、買ってからすぐにCPUに冷却用のグリスが塗ってないなどの問題が発生していました.その後(5年間)、特に問題なく使用していたのですが昨日からファンから異音.

PCの中身を見てみると冷水に使用しているファンがホコリで白っぽくなっていました.そういえば全然お手入れをしていないなと.そう買ってから今までPCのお掃除をしていないまま使用していたので、結構ヤバい感じだったファンの交換後についでにお掃除をしました.

ファンに関しては回転しているモーターの軸がズレると異音の原因になるので、お掃除は避けました.

なお、ファンを交換した日は休みだったけど、朝から忙しい日でした....朝はこのブログの画像をwebpに変換作業を行い、ファンを買いにアプライドへファンとPCの掃除をしその後、npushの会員ユーザー各自にプッシュ通知機能を付与するコードを書いていました.

休みはゆっくりしたいものですがコードかブログを書き溜めたりしているので結局あまり休めていない😌.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

CPU, npush, webp, アプライド, きっかけ, グリス, コード, ズレ, プッシュ通知機能, ホコリ, モーター, 中身, 会員ユーザー各自, 冷却用, 冷水, 変換作業, 掃除, 異音, 自作PC, ,

webpushのLaravelを使用しないパターンを箇条書き、フロントエンド側は

2024.11.14

Logging

おはようございます.webpushのLaravelを使用しないパターンを箇条書き、フロントエンドは過去記事を参照ください.まずwebpushを使用するにはパブリックキーとシークレットキーが必要になります.下記のURLより発行してみてください.

https://web-push-codelab.glitch.me

フロントエンド側でサービスワーカーの登録された識別データをバックエンドに送信.

// db.php: データベース接続の設定
function getDbConnection() {
    $host = 'localhost';
    $dbname = 'your_database';
    $username = 'your_username';
    $password = 'your_password';

    try {
        $pdo = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);
        $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        return $pdo;
    } catch (PDOException $e) {
        die("DB接続エラー: " . $e->getMessage());
    }
}

// endpoint_register.php: エンドポイントをデータベースに登録
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $endpoint = $_POST['endpoint'];
    $auth = $_POST['auth'];
    $p256dh = $_POST['p256dh'];

    if ($endpoint && $auth && $p256dh) {
        $pdo = getDbConnection();
        $stmt = $pdo->prepare("INSERT INTO push_subscriptions (endpoint, auth, p256dh) VALUES (?, ?, ?)");
        $stmt->execute([$endpoint, $auth, $p256dh]);
        echo "登録成功";
    } else {
        echo "エンドポイントデータが不完全です";
    }
}

バックエンド側で下記のようなコードでデータを保存します.

次にminishlink/web-pushというライブラリを使用し登録されたデータを元に送信処理を行います.

composer require minishlink/web-push
// message_send.php: データベースからエンドポイントを取得し、プッシュ通知を送信
require 'db.php';
require 'vendor/autoload.php';

use Minishlink\WebPush\WebPush;
use Minishlink\WebPush\Subscription;

// VAPIDキーの設定
$auth = [
    'VAPID' => [
        'subject' => 'https://example.com',
        'publicKey' => 'YOUR_PUBLIC_VAPID_KEY',
        'privateKey' => 'YOUR_PRIVATE_VAPID_KEY',
    ],
];

$webPush = new WebPush($auth);

// データベースからサブスクリプション情報を取得
$pdo = getDbConnection();
$stmt = $pdo->query("SELECT endpoint, auth, p256dh FROM push_subscriptions");
$subscriptions = $stmt->fetchAll(PDO::FETCH_ASSOC);

foreach ($subscriptions as $sub) {
    $subscription = Subscription::create([
        'endpoint' => $sub['endpoint'],
        'publicKey' => $sub['p256dh'],
        'authToken' => $sub['auth'],
    ]);

    // 送信するメッセージ
    $message = json_encode(['title' => '通知タイトル', 'body' => 'メッセージ内容']);

    // プッシュ通知の送信
    $webPush->sendOneNotification($subscription, $message);
}

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

```, エンドポイント, キー, コード, サービスワーカー, サブスクリプション情報, シークレットキー, データベース, データベース接続, パターン, バックエンド, バックエンド側, パブリックキー, プッシュ通知, フロントエンド, フロントエンド側, ライブラリ, 接続エラー, 識別データ,

Photo by cottonbro studio on Pexels.com

あのYahoo!と同じ機能を追加しようか悩んでいる.選択した文字を

2024.11.01

Logging

おはようございます.あのYahoo!と同じ機能を追加しようか悩んでいる.選択した文字をサイト内検索する機能.やり方はこのサイトを参照すると導入できそうなんだけど、ちょっとウザいかもしれないと言う気持ちが自分の中にあるので悩んでいます.

もし追加するなら休みの日に機能追加をするつもりです.なので、直近の三連休中に追加していなかったら追加しなかったんだなと思って頂いて構わないです.

let paragraphElement = document.querySelector("p");

paragraphElement.addEventListener('selectstart', function() {
    paragraphElement.addEventListener('mouseup', function(event) {
        console.log(window.getSelection().toString());
    });
});

その場合でもこんな感じになります的なコードは公開しようと思っています.

明日へ続く

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

console.log, EVENT, function, let paragraphElement, mouseup&#39, paragraphElement.addEventListener, querySelector, quot;p&quot, selectstart&#39, toString, window.getSelection, Yahoo, ウザ, コード, 休み, 文字, 機能, 機能追加, 気持ち, 直近,

指定日に記事を削除するWPのプラグインの雛形.

2024.10.24

Logging

おはようございます.指定日に記事を削除するWPのプラグインの雛形を作りましたが記事の削除部分(article_del_R)はご自身で作ってください.削除部分をご自身で作り自分のサイト(WP)を定期的にcronで叩けば削除される仕組みです.
毎度のことですみませんがソースコードを解析してお使いいただければと思います.また、このコードは試作品になります.

WPプラグインの画面はこんな感じです.

ソースコードはQiitaで公開しています.

因みにワードプレスで非同期処理を行うのは少し面倒です、たまに間違った情報を掲載しているサイトがあるので注意が必要です.下記で非同期処理を設定しまうとログアウトした状態でも叩けるらしいので気おつけてください!.

“wp_ajax_nopriv_{$action}”

明日へ続く.

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

Action, article_del_R, cron, qiita, wp, wp_ajax_nopriv, WPプラグイン, コード, ソースコード, プラグイン, ワードプレス, 下記, 削除部分, 毎度, 注意, 状態, 画面, 試作品, 雛形, 非同期処理,

生成AI、正直、絵に関しては見分けがつかないレベルまで来ているパッと見分からないけど.

2024.09.24

Logging

おはようございます.生成AI、正直、絵に関しては見分けがつかないレベルまで来ているパッと見分からないけどよく見ると線が不自然な書き方があったり、微妙に歪みが絵にあるだけどそんなの多分、絵師さんしか分からない.

最近、自分の職業があと数十年で仕事を失うだろうという記事を読んで有り得るかもしれない?、でも実際そうならない気もする.理由は殆どの生成AIは有料じゃないと精度が良くないから、そして無料化して人々がコードを出力しだしても結局それを理解して使える人はあんまりいない.

コードを生成したりアプリを生成したりすることは出来るようになってきているけど、それは一から作られたアプリやホームページなど.そこからオリジナリティを出すためや自社製品としてカスタマイズするにはプログラマーが必要になる.これから一から製品を作ることが少なくなりAIが作ったものを手直しする事が増えそうな気がしてならない(当分はなさそうだけども).

あのノーコードアプリが登場したときも、これでプログラマーの職が消えると騒いでいたのに結局のところ、あまり変化がなかった.それに今の現状は酷似している😆.

因みにGさんが生成AIを浸透させるために無料化に舵を切ったけど使いこなせる人の割合は変わらないよね.たぶん.

明日へ続く.

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

AI, オリジナリティ, コード, ノーコードアプリ, プログラマー, 人々, 割合, 変化, 有料, 正直, 殆ど, 現状, 生成AI, 精度, , 絵師さん, , 職業, 自社製品, ,

2015年のコードと比べると2024年のコードはマシになっている.

2024.08.30

Logging

おはようございます.2015年のコードと比べると2024年のコードはマシになっている事が一目瞭然で分かるぐらい酷い...、あの頃から比べると自分のコードは成長している気がする.あー何であんなコードをオープンで公開したのか分からないぐらい無知でしたね.

これから先もコードを書き続けていくだろうけども、やっぱ師がいるといないとでは成長に差が出てくるのは間違いない.独学でも良いけど師がいると成長は速い.自分には師と言える師はいなくて殆ど独学でこの業界で生きてきた.

いまはリモートワークで働いているけども最近はコードレビューもあまりされずマージンされるので、どう思っているのだろうと不安になることもしばしば.

独学だと歯抜けにどうしてもなるので、そこの成長を後押ししてくれる師がいればなと思います.この頃は生成AIというものがあるので、ある程度知らない知見を見る機会が増えてきているのが救いですね.

トイウコトデ、話はつきませんがここらへんで〆とさせてもらいます.

明日へ続く.

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

コード, コードレビュー, ここらへん, トイウコトデ, まし, リモートワーク, , , , 成長, 業界, 機会, , 殆ど独学, , 独学, 生成AI, 知見, , 速い.自分,

ギャラリー(Gallery)とBBSを追加しました.前々から追加し...

2024.08.29

Logging

おはようございます.ギャラリー(Gallery)とBBSを追加しました.前々から追加しようと思っていた訳でもないです.突発的に作ってみようと思いになり土曜日と日曜日にそれぞれ機能を追加した形になります.

内部的なコードは差し控えるものの、Galleryにはデータベースを使用していません.BBSはDBを使用しています.そしてGalleryは全てオリジナルコードですが、BBSはLaravelのライブラリを局所的に取り入れています.例えば表示はBladeONEを使用しています.そんな感じなので工数的にはどちらも半日程度で組み立てました.

composer require eftec/bladeone

作っていて思ったのが、Laravelを使用する程でもない、だけどバニラで作ると面倒だと思うサービスは局所的にLaravelのライブラリを使用することで短時間で制作することが可能になるなってこと.それはちょっと小規模と中規模の間ぐらいのサービスを作りたいときに適していると思いました.

明日へ続く.

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

BBS, BladeONE, composer require, db, eftec, Gallery, Laravel, ギャラリー, コード, データベース, バニラ, ライブラリ, 前々, 半日程度, 土曜日, 日曜日, , 規模, ,

Photo by Brett Jordan on Pexels.com

この記事は何分で読めますを導入しました.何分で読めましたか?

2024.07.25

Logging

おはようございます.この記事は何分で読めますを導入しました.コードは下記のサイトコピペした後、少し自分のように手直しをしましたがほぼほぼコピペだと思っていただいて間違いないです.

https://fukuro-press.com/wordpress-display-reading-time

これにより購読してくれる人やリピーター様が増えるのを切に願っています.導入するまえに少し調べると購読者が増えるというような記事を見かけたので取り入れた感じです.読んでもらって何かの役に立てばこちらも嬉しいです.先日、書いた通り役に立ちたいという気持ちはありますが喜んでほしいとかいう気持ちはないです.

blue and purple color pencils
Photo by Pixabay on Pexels.com

「これ良いわ、良い話聞いたわ、こんな人がいるだ、自分だけじゃなかった」等などと思って頂けたら幸いです.基本的にこのブログは技術共有と雑記で成り立っています、これで一応、数ヶ月置きに収益も出ているので、一応、恩返してきな要素もあります🌝.皆さんありがとうございます🙇.

ちなみにまだ程遠いですが自分がブログだけで生活が出来るように慣れば、いろいろな人の励みにはなると思っています.自分にも出来そうという思いを持ってほしいですね.

明日へ続く.

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

Photo by Pixabay on Pexels.com, コード, コピペ, リピーター様, 下記, 収益, 少し, , 恩返してき, 慣れば, 手直し, 技術共有, 数ヶ月置き, 気持ち, 生活, 皆さん, 要素, 購読者, 通り役, 雑記,