びっくり髭剃りスムースが凄い! #ニベアメンシェービングフォームスムース

2022.12.06

Logging

おはようございます、高知県はどんより曇り空が続きますね🙄今日はどうかな?

今日は昨日、使用したシェービングフォームスムースの話を書きます。女性には全然関係ない話なのでスルーしてください。今までシェービングフォームスムースは外国製のスムースを使用していましたが、この度、日本製のシェービングフォームスムースを使用してみようかなって思って使ってみました。

使用してみてめちゃ驚きです😳、泡が今までと全然違うし本当に泡が分厚いです!!。髭を剃った感覚も今までよりも綺麗に剃れたような気がします。

そして、何だか理髪店のシェービングフォームスムースのような香りもするし、なんかすごいよコレ。因みに自分は一昔前までは電動髭剃りで剃ってたのだけど、この頃は自分で剃るようになりました、その理由は肌荒れがあるから仕方無く剃るようになったですが、今ではそれ程苦にならないぐらいになりました。

タグ

アメン, コレ, シェービング, スムーズ, スルー, ニベ, びっくり, フォーム, , , 今日, 使用, 外国, 女性, , 感覚, 日本, , 昨日, 曇り空, 本当, , , 理由, 理髪店, 綺麗, 肌荒れ, 自分, , , 電動, , 高知県, , 髭剃り,

映画、そして、バトンは渡されたを観ました。 #ネトフリ #映画 #Netflix

2022.11.23

Logging

おはようございます、水曜日の朝ですね、書いているのは月曜日の朝です。

今日は映画を一本観ましたのでその感想を書いていきます。本日、観た映画は「そして、バトンは渡された」です。劇場で観えなかったのでやっと観えたなって感じです、映画館に足を運ぼうと思っていたのだけども、ちょっと女性が多そうという理由で行かなかった映画ですが、この度、ネトフリで映画を観ました。

映画『そして、バトンは渡された』本予告 2021年10月29日(金)公開
そして、バトンは渡された 予告

この映画は小説「そして、バトンは渡された」を映画化したものです、原作の小説は読まずに映画を観ました。原作読んでしまうと完璧なネタバレを見たあとの映画という事になるので、小説よりも映画が自分は好きなので、そういう順番になりがちです。

さて、ネタバレ無しで映画の感想を一言で表すと「感動」ですね😭。いや、ホントこれに尽きるかなって思います。観て良かった映画ですし、一度は観て欲しい映画なのかもなって思います。今、ネトフリで観れるようになっています。因みにNetflixはある期間が過ぎると見えなくなったりするので、お早めに観たいと思う方は観といた方が良いですよ😗。

タグ

2, 4, 95, com, fKypJ, https, Netflix, watch, www, youtube, あと, これ, すね, ネタ, ネトフリ, バトン, バレ, ホント, もの, , 一言, 予告, , 今日, 劇場, 原作, 女性, 完璧, 小説, , , 感動, 感想, 映画, 映画館, 月曜日, , 本日, 水曜日, 理由, 自分, , 順番,

chart.jsでデモを試してみました。📈 #javascriptcode

2022.11.18

Logging

おはようございます、朝が早いですねと言われますが、夜が早いだけです😅。

さて、今日はchart.jsのデモを試してみました。売上のグラフとかコレで作るのが一番じゃないかなと思うライブラリですね。動画で編集してみせたのは二箇所ですが、実際、業務で使用する場合は3箇所ほど変更して使用しないといけないのかなって。

chart.jsでデモを試してみました。📈
chart.jsでデモを試してみました。📈

そういう訳で、こちらのブログにソース・コードを貼り付けておきます。

        const ctx = document.getElementById('myChart');
        let data = [12, 19, 3, 19, 2, 3];
        new Chart(ctx, {
            type: 'bar',
            data: {
                labels: ['demo1', 'demo2', 'demo3', 'demo4', 'demo5', 'demo6'],
                datasets: [{
                    label: '# of Votes',
                    data: data,
                    borderWidth: 1
                }]
            },
            options: {
                scales: {
                    x: {
                        beginAtZero: true
                    }
                }
            }
        });

業務で変更しないといけない最低限3箇所はこちらです~😆。

  • ラベル
  • データーセットの中のラベル
  • データーセットの中のデータ

上記の3箇所を売上のデータや何やらに使用することで活用できるかと思います。

タグ

12, 19, 2, , 39, bar, chart, const, ctx, data, document, getElementById, javascriptcode, JS, let, myChart, new, type, グラフ, コード, こちら, コレ, ソース, デモ, ブログ, ライブラリ, , , 今日, 使用, 動画, 場合, 変更, , 実際, , 業務, 編集, ,

The Peripheral:接続された未来。 #アマプラ

2022.11.08

Logging

おはようございます、昨日の朝はなんだか寒かったですね🫠。

ペリフェラル -接続された未来のシーズン1の一話だけ観ました、一話だけなのでココから面白くなるかも知れませんが、ちょっとグロいシーンが一話の最後あたりにあったりして自分はこれからもこういうシーンが出てくるのかなと思い一話観ただけでお腹いっぱいになり観るのが止まっています。

The Peripheral Season 1 – Teaser Trailer | Prime Video
The Peripheral:接続された未来

ストーリーは面白いけど、結末は現実か仮想なのかが分からなくなって主人公が潰れてしまう気がします。もし自分が現実と仮想世界か見分けがつかないゲームにハマったら多分、一話目で潰れて人格が崩壊してしまいそうです😨。

でも、その内、そういう世界になるという事だけは確かな事です。脳にダイレクトに信号を送り仮想ゲームを楽しめるようになると・・・(何故、言い切れるかといえばこういう事が出来だしたからです「脳波から言葉を生成するAI「Brain-to-Text」 “声道”への指令を解読、言葉に変換」)。

そういう事への警鐘を鳴らす作品だと思います。

トイウコトデ、二話以降は時間の合間、合間に見ていこおうと思っています。

タグ

, AI, Brain, Peripheral, The, アマ, ゲーム, ココ, これ, シーズン, シーン, ストーリー, ダイレクト, プラ, ペリフェラル, , 世界, 主人公, , 人格, 仮想, 信号, , 崩壊, 接続, 昨日, 最後, , 未来, , 現実, 生成, 結末, , 脳波, 腹いっぱい, 自分, 言葉,

FINAL FANTASY XVI #AMBITION #野心

2022.10.30

Logging

おはようございます。PS5の在庫はどうなっているのでしょうか?

今日はFINAL FANTASY XVIのお話というか新たな予告が出たので、それを観た感想ですね。

さて、もはや凄すぎてついていけない、特に戦闘システムが不安だなって感じがします。FF7Rは何とかなりましたが、FF16は自分でもプレイが可能なのかが正直なところ不安でしかない。

FINAL FANTASY XVI “AMBITION”

グラフィック面やビジュアルは申し分なく、ストーリー展開も良さそうな気がするのだけども戦闘システムだけが不安。不安だけどもRPGももうこういう戦闘システムが一般的になってきているので、仕方が無いと言えばそれだけの事なのかもしれないけれども…。

FF16発売までに一番の不安はPS5が購入できるのかどうかが不安でしか無いですね。因みにPS4の値段も高騰しているのだとか・・・大丈夫だろうかソニーさん。

タグ

16, 4, 5, 7, AMBITION, FANTASY, FF, FINAL, PS, RPG, XVI, お話, グラフィック, システム, ストーリー, ソニー, それ, それだけ, ところ, ビジュアル, プレイ, , 不安, 予告, , 今日, 値段, 可能, 在庫, 展開, 感想, 戦闘, 正直, , 申し分, 発売, 自分, 購入, 野心, 高騰,

有難う🎉一年と七ヶ月と二十九日😌で達成。

2022.09.30

Logging

おはようございます、御機嫌よう😋。

アイキャッチー画像とタイトルでお分かりかと思いますが、振り込み金額の上限を超えた為、振り込まれます。この振り込まれたお金の使い道はまだ決まっていませんが、大切に使います😌。

毎月、大体レンタルサーバー費用と相殺出来る金額を稼いでいるようです。先月からサービスを稼働させて3つのサービスで運用しています。これにより今月からまぁまぁな金額が発生してきましたが、それでもこれだけで生きてはいけません。

毎月、15万ぐらい稼いでいる人は強者ですね。やっぱりYOUTUBE始めた方が良いのかな🤔。昔、1000人の登録者でもYOUTUBEは小学生(高学年)のお年玉ぐらい入ると聞いた事があります。今は広告単価が下がっているようなので、もう少し低いかも知れませんが放っといても稼ぎがでるというのは、素晴らしい事ですね。

自分の今後の運営目標は、毎月、お金が振り込まれるようになる事です。これを達成出来れば何とかなりそうな気がします。今の現状、クラウドワークスの仕事が取れなかったら投資で何とか引き落としペイ出来る感じで生きているので・・・。ちゃんと収入が発生するシステムを構築したいなって切実に思います。

タグ

1000, 15, , youtube, あい, お分かり, お年玉, お金, キャッチー, これ, これだけ, サーバー, サービス, タイトル, レンタル, , , , 上限, , 二十九, , , 今後, 今月, 使い道, 先月, 単価, 大体, 大切, 学年, 小学生, 広告, 強者, , , 毎月, , 画像, 発生, 登録者, 目標, 相殺, 稼働, 自分, 費用, 運営, 運用, 達成, 金額,

WPのapply_filtersとadd_filterの説明が難解に書いているサイトが多い事に🤬。 #php #wordpress

2022.09.28

Logging

おはようございます、今月もそろそろ終わります🤔。

さて、来月から毎月一回しか投稿しなかったブログサイトを不定期更新に変更します。指針の変更にあたってブログデザインもデフォルトのテンプレートから無料のcocoonというテンプレートに変えました。

今までYOUTUBE動画URLを記載しているだけの投稿だったので、アイキャッチー画像等は無い状態でした。その為、テンプレートを変えるとノーイメージという画像が表示されるという事象が発生。これをプラグイン側で解決したかったのですが、独自の関数を多く使用しておりプラグイン側だけでは無理だということで、独自のアイキャッチー画像を処理しているコアの部分にapply_filtersを差し込み、プラグイン側でadd_filterで処理するという流れの対応を行いました。

apply_filtersというのはテンプレート側(他のプラグインでも可能)の関数の中に目印(付箋)を付けることが出来る機能(関数)です。
add_filterは目印(付箋)の部分の処理が走った時に、自分が作った処理を割り込ませることが出来る機能(関数)です。

※まずはカッコの中は読まずに理解してください😌。

巷では、これをややこしい例えで解説している所が多いのですが、それだけの話しです。今回、image-funcs.phpファイル(cocoon)の関数get_original_image_tagにapply_filtersを挿入し独自プラグインから呼び出して、ノーイメージの時にYOUTUBEのサムネイル画像を表示させるという事を行っていました。前、次ページのサムネイル画像は現在のページのサムネ画像が表示されるというバグはあるものの、ちゃんと跡のサムネ画像は変わっています。

サンプルコードを掲載します。ご参考程度に😌。

<?php
//オリジナルサムネイルタグの取得
if (!function_exists('get_original_image_tag')) :
  function get_original_image_tag($image_url, $width, $height, $class, $alt = null)
  {
    $html = '<img src="' . esc_url($image_url) . '" alt="' . esc_attr($alt) . '" class="' . esc_attr($class) . '" width="' . esc_attr($width) . '" height="' . esc_attr($height) . '" />';
    $html = convert_all_lazy_load_tag($html);
    $html = apply_filters("youtubeimage",$html);
    return $html;
  }
endif;
<?php
/*
Plugin Name: youtube image
Description: youtube image chg
Version: 1.0
*/
if (!defined('ABSPATH')) exit;
function youtubeimage_chg($imgurl){
    $url = null;
    if(preg_match("/(https:\/\/www\.youtube\.com\/watch\?v=[\-|_|a-zA-Z|0-9]{1,})/",get_the_content(),$matches)){
        $url = "https://img.youtube.com/vi/".preg_replace("/(https:\/\/www\.youtube\.com\/watch\?v=)/","",$matches[0])."/hqdefault.jpg";
        $url = preg_replace("/(src=\"https:\/\/.*no\-image\-[0-9]{2,3}\.png\")/","src=\"".$url."\"",$imgurl);
     }
     return $url?$url:$imgurl;
}

add_filter("youtubeimage","youtubeimage_chg");

余談:この対応はテンプレートが更新(アップデート)際にファイルが上書きされる可能性があります。その際にページが見えなくなるという問題を秘めています🙇。

タグ

Add, apply, cocoon, filter, filters, php, url, WordPress, wp, youtube, あい, イメージ, キャッチー, コア, こと, これ, サイト, デザイン, デフォルト, テンプレート, ノー, プラグイン, ブログ, , 不定期, , 事象, 今月, 使用, 処理, 動画, 変更, 多く, 対応, 投稿, 指針, 更新, 来月, 毎月, , 無料, 状態, 画像, 発生, 表示, 解決, 記載, 説明, 部分, 関数, 難解,

あのサイトをリニューアルしました。👏、やっとのことで。 #renew #site #よさこい祭り

2022.09.25

Logging

おはようございます、昼間は暑い日もありますが夜は涼しくなりましたね😄。

今日は昨日、一日かけてよさこい祭り動画検索サイトをリニューアルしました。ソースコード(プログラム)も1からやり直しています。表示するのに結構時間がかかっていた部分は瞬時に表示されるように調整しました。

https://yosakoi-video.com/

以前は検索結果が全て表示されるような仕様でしたが、ページに分割して表示されるように変更しました。また、検索ワードを入力すると検索結果(チーム名)が表示される様に変更しました。チーム名を押すとページへ遷移するようになっています。以前より直感的に操作出来る形になったかと思います。

尚、このサイトを作るにあってYOUTUBEのAPIを使用しているのですが、リアルタイムに動画を検索している訳では無くデータで押さえています。そのデータに関しては数ヶ月置きに更新するように致します。何故、データで押さえている理由はAPIの問い合わせに上限があり、その上限数を超える検索結果が返って来なくなる為です。この上限は申請を行えばある程度増やしてくれるそうですが、それでも上限数量を超えると表示されなくなるというデメリットがあるので、データで押さえています😌。

トイウコトデ、よさこい祭り動画検索サイトよろしくお願いします。

タグ

, API, com, https, renew, site, yosakoi-video, youtube, コード, サイト, ソース, チーム, データ, プログラム, ページ, よさこい祭り, リアルタイム, リニューアル, ワード, , 今日, 仕様, 以前, 使用, 入力, 全て, 分割, 動画, 変更, , , 操作, , , 昨日, 昼間, 時間, 検索, 瞬時, 結果, 表示, , 調整, 遷移, 部分,

一言感想、欲望の資本主義メタバースの衝撃デジタル経済!

2022.09.19

Logging

おはようございます。台風が何事もなく通り過ぎるのを祈りながら日曜日のお昼に書いています✍。

8月31日頃に「欲望の資本主義2022夏メタバースの衝撃デジタル経済のパラドックス」というNHK:BSで放送されていたものを昨日、オンデマンドで購入して視聴しました。尚、単品販売一本120円ぐらいだったと思います(NHKさん、ペイペイ支払いに対応してくださいませ🙇)。

一言で感想を述べるとするならば経済が迷走していて出口が見えていないなという事が分かったぐらいですかね。あと、自分の主観を述べるとするならばメタバースが浸透するのはまだ先の話になると思います。もしかしたら、あと5年、10年先の話になるのではという印象ですね。

なので、今の子供達が大人になる頃に流行るものだと思ったほうが良さそう。スマホが浸透するにもそれぐらい時間がかかったように最初は熱狂的なテクノロジーヲタクから浸透していき、その後、一般人も認知していく様な流れになるのだろうと。

これは前半に登場された佐藤航陽 氏が書かれた書籍、世界2.0にも書かれていることですが・・・、その様に欲望の資本主義を見て思いました。

まとめ、迷走していてこれと言って、答えを見いだせない世の中が後、数年は続きそうです。

タグ

10, 120, 2022, 31, 5, 8, bs, NHK, オンデマンド, お昼, スマホ, それぐらい, テクノロジー, デジタル, バース, パラドックス, ペイ, メタ, もの, ヲタク, , 一般, 一言, 主義, 主観, , , 何事, , 出口, 単品, 印象, 台風, , 大人, 子供, 対応, , 感想, 放送, 日曜日, 昨日, 時間, 最初, 欲望, 浸透, 経済, 自分, 衝撃, 視聴, , 販売, 資本, 購入, 迷走, ,

一週間の予約が出来るデモコードです。良かったらどうぞ😌。 #php #code

2022.09.17

Logging

おはようございます、今日から台風接近らしいですね。この投稿は昨日書きました。

さて、一週間の予約(時刻表から)が出来るデモコードを書きました。これを書いたキッカケは昔の職場の方がこんな感じのUIを作られていたのを見て、自分も書いてみようと思いDEMOコードを朝起きて調べながら書きました。調べたことは選択を解除する方法だけで、後はオリジナルコードです、設計書も何もなく組み立ていきましたので、欠陥があるかもです。また、Qiitaにも記載しましたが、コメントをほぼ書いていません。書かずともプログラマーなら分かるだろうという感覚です。

予約ー時刻表DEMO

肝心の確認部分は記載していないのにも訳があります。営業妨害になっては駄目だからです。そういう理由で確認部分以降は書いていません。

こちらにもソースコードを掲載しときますね。

<?php
ini_set("display_errors",0);
/**
 * @param array $holiday
 * @return string $str
 */
function fn_header($holiday = [])
{
    $str = "";
    $date = new DateTime();
    for ($i = 0; $i < 7; $i++) {
        !$i ? "" : $date->modify('+1 day');
        $w = $date->format("w");
        $tabindex = $i*7;
        $ho = (function ($days, $holiday = []) {
            return (array_search($days, $holiday) !== false) ? "holiday" : "";
        })($date->format("Y-m-d"), $holiday);
        $str .= "
        <th tabindex=$tabindex>
            <span class='header_no week_no_$w $ho'>" . $date->format("Y-m-d") . "</span>
        </th>";
    }
    return $str;
}
/**
 * @param int $h_min
 * @param int $h_max
 * @param int $m_interval
 * @param array $cnt
 * @param array $reserve
 * @param array $holiday
 * @return string $str
 */
function fn_time($h_min, $h_max, $m_interval,$cnt=[],$holiday = [], $reserve = [])
{
    $str= [];
    for ($h = $h_min; $h <= $h_max; $h++) {
        for ($m = 0; $m < 60; $m = $m + $m_interval) {
            print("<tr>\n");
            $date = new DateTime();
            for ($i = 0; $i < 7; $i++) {
                $cnt[$i]=!$cnt[$i]?(((($h_max - $h_min)+1)*(60/$m_interval))*($i))+7:(++$cnt[$i]);
                !$i ? "" : $date->modify('+1 day');
                $w = $date->format("w");
                $ho = (function ($days, $holiday = []) {
                    return (array_search($days, $holiday) !== false) ? "holiday" : "";
                })($date->format("Y-m-d"), $holiday);
                $time = sprintf("%02d:%02d",$h, $m);
                if ($ho) {
                    print("
                        <td class='' tabindex={$cnt[$i]}>
                            <span class='header_no week_no_$w $ho'>" . $time . "</span>
                        </td>");
                } else {
                    $r = (function ($days, $reserve = []) {
                        return (array_search($days, $reserve) !== false) ? "reserve" : "";
                    })($date->format("Y-m-d") . "_" . $time, $reserve);
                    if (!$r) {
                        print("
                            <td class='date_" . $date->format("Y-m-d") . "_{$time}' tabindex={$cnt[$i]} data-date='" . $date->format("Y-m-d") . "_{$time}'>
                                <a class='time_{$m}_" . $date->format("Y-m-d") . "_{$time}' data-sortno={$cnt[$i]}  href='#?data=" . $date->format("Y-m-d") . "_{$time}'><span class='header_no week_no_{$w} {$h}'>{$time}</span></a>
                            </td>");
                    } else {
                        print("
                            <td class='' tabindex={$cnt[$i]}>
                                <span class='header_no week_no_$w $r'>" . $time . "</span>
                            </td>");
                    }
                }
            }
            $date = null;
            print("</tr>\n");
        }
    }
    return "";
}
?>
<!DOCTYPE html>
<html lang="ja">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <meta name="Description" content="Enter your description here" />
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.1.0/css/bootstrap.min.css">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css">
    <title>予約-時刻表(デモ版)</title>
    <style>
        table,tr,td{
            user-select: none;
        }
    </style>
</head>
<body>
    <div class="container">
        <div class="row">
            <div class="col-12 text-center">
                <h1 class="display-1">予約-時刻表<br></h1>
                <h5>{予約:時刻をクリックするか、<br>
                    左クリック選択状態で複数選択可能です<br>
                    (日付またぎは禁止しています)}</h5>
                <h5>{ダブルクリックすると予約画面に遷移します。<br>
                    ※DEMO版ですので予約登録画面は御座いません}</h5>
            </div>
        </div>
    </div>
    <div class="container-fluid  text-center">
        <div class="row">
            <div class="col-12">
                <table class="shadow-lg table table-hover table-bordered">
                    <thead>
                        <tr>
                            <?= fn_header() ?>
                        </tr>
                    </thead>
                    <tbody>
                        <?=fn_time(10, 20, 10,[],["2022-09-18","2022-09-23"],["2022-09-19_10:40","2022-09-19_10:50"]) ?>
                    </tbody>
                </table>
            </div>
        </div>
    </div>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/2.9.2/umd/popper.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.1.0/js/bootstrap.min.js"></script>
    <script src="./assets/js/main.js?<?=time()?>"></script>
</body>
</html>
let date_obj = document.querySelectorAll("td");
let submit_url = "https://example.com";
let is_date_data = [];
let cnt = 0;

date_obj.forEach(function (elm, key) {
    elm.addEventListener("mouseout", select_in_value);
    elm.addEventListener("click", sp_select_in_value);
    elm.addEventListener("touchend", sp_select_in_value);
    elm.addEventListener("dblclick", select_out_value);
});
function check_value(o, e) {
    if (is_date_data.length === 0) {
        return true;
    }
    let d = o.getAttribute("data-date");
    return d ? ((d) => {
        let f = is_date_data.find(element => {
            let pattern = new RegExp(d.split("_")[0]);
            return !element.match(pattern);
        }) ? false : true;
        if (!f) {
            select_clear(o, e);
            is_date_data = [];
            cnt = 0;
        }
        return f;
    })(d) : false;
}
function select_in_value(e) {
    if (e.buttons === 1 && check_value(this, e)) {
        if (this.getAttribute("data-date")) {
            this.style.backgroundColor = "#555";
            this.children[0].style.color = "#fff";
            if (is_date_data.indexOf(this.getAttribute("data-date")) && is_date_data.indexOf(this.getAttribute("data-date"))) {
                is_date_data[cnt] = this.getAttribute("data-date");
                cnt++;
            }
        }
    }
}
function sp_select_in_value(e) {
    if (check_value(this, e)) {
        if (this.getAttribute("data-date")) {
            this.style.backgroundColor = "#555";
            this.children[0].style.color = "#fff";
            if (is_date_data.indexOf(this.getAttribute("data-date")) && is_date_data.indexOf(this.getAttribute("data-date"))) {
                is_date_data[cnt] = this.getAttribute("data-date");
                cnt++;
            }
        }
    }
}
function select_out_value(e) {
    if (is_date_data.length) {
        let is_data = is_date_data.map(function (elm, index) {
            return "date[" + index + "]=" + elm;
        });
        window.location.href = submit_url + "?" + is_data.join("&");
    }
}
function select_clear(o, e) {
    let is_ClassName = [];
    is_ClassName = is_date_data.map(function (d) {
        return "date_" + d;
    });
    is_ClassName.map(class_name => {
        document.getElementsByClassName(class_name)[0].style.backgroundColor = "#fff";
        document.getElementsByClassName(class_name)[0].children[0].style.color = "#0d6efd";
    })
}

タグ

0, Code, com, demo, https, ligaLgY-uZ, php, qiita, UI, watch, www, youtube, オリジナル, キッカケ, コード, こちら, こと, コメント, これ, ソース, デモ, プログラマー, , 予約, 今日, 台風, 営業, 妨害, , 感じ, 感覚, 投稿, 接近, 掲載, , 方法, , 昨日, 時刻表, , 欠陥, 理由, 確認, 職場, 肝心, 自分, 解除, 記載, 設計書, , 選択, 部分, 駄目,

人類の不都合な真実・こんなタイトルあったよね🤐

2022.09.14

Logging

おはようございます、この頃、朝に記事を書くようになりました😌。

お金💰はいらないのにお金は貯まる一方です、なんて言ってみたいですね。さて、自分の為に自分はあまり労力を使うことはありません、お金持ちでもないのにお金のために仕事をしているという感覚がないのです。多分これ感覚がヅレているだと思います、、、。

【世界的ベストセラー】サピエンス全史|人類は「ウソ」に生かされていた。

お金を株などに投資してから更にお金に興味がなくなりました。株や投資をすると分かると思うのですが、株価は変動します。安く買って高く売るとてもシンプルな法則で株式市場は成り立っています、株価は数時間や数分で一日の時給を稼ぐこともありますし、その逆もあります。そういう変動を見ていたら何なんだろうと思うわけです。そんな疑問が最近まであったのですが、あの「サピエンス全史」の本を読んでスッキリした感覚が強いです。分厚い本ですが読んでよかったと思います。人はどうして働くのかやお金って何なのかなど、疑問を持っている人は一度読むと良いと思います。

そんな訳で仕事に対する姿勢も人と少しだけヅレている気がします。自分は何方かと言えば役に立ちたいという気持ちが強いかも知れなくて、お金がなくても作り上げたいなどや手伝ってあげたいな等と思う気持ちがあります。あまり損得勘定は無く商売には向いていません。お金はいらない訳ではないですよ、ただお金持ちになりたいとかいう感情はないです。それよりか、生活に困らなければそれで良いという感覚が強いです。

好きなことでそれなりにお金を稼げたら良いですね😌。その為にも頑張ります。

タグ

お金, お金持ち, こと, これ, サピエンス, シンプル, タイトル, ため, つれ, よね, , 一方, 不都合, , 人類, 仕事, , 全史, 労力, 変動, 市場, 感覚, 投資, , 数分, 時給, 最近, , , , 株価, 株式, 法則, , 疑問, 真実, 自分, 興味, 記事, , ,

オニギリペイ🍙と歩む道。#闇の奥は深いぞ #笑えない話

2022.09.12

Logging

おはよう御座います🙇。脆弱性の動画(徳丸先生の動画を)をどんどん見ています。

昔、勤めていた会社にはイロイロと脆弱性があり、それが今でも残っている気がします。例えばこれは消えていると思いたいのですが、クレジット決済のログをサーバーに蓄積出来るようにしていました。

おしゃべりひろゆきメーカー 笑えない話をひろゆきAIに語ってもらった笑えない🤐。

これ本当はしたら駄目なんですけどね。やっちゃっているです、パーミッション対策や鍵かけているですけども元に返っていたら危ういですね、蓄積データは年々溜まっていきます。これを辞めたいと言ったのですが、また決済が失敗したら駄目だからという事で残った脆弱性です。これを辞めないと言ったのは社長ですから仕方がありません。

自分は社長に結構意見を言っていたので煙たい存在だったかも知れません。入社当時は役に立ちたいという思いがありましたが、段々と疑問を持ちはじめていきました。一番の信頼が薄れていったのは仕様を教えてくれなかった事にあります。どういう様に動作すれば正しいのか、それが分からない状態でリリースしてお客様からクレームが来たこともあります。

そういう日々の積み重ねが大きくなり、社長との関係が希薄になりシステムに影響していったように思えます、自分がもう少しニュアンスを変えて話していたら違っていたかもと猛省しています。

言葉遣いは大事ですよ。昔の職場に戻れるなら戻りたいですが、そうもいかないような分かれ方をしていますからね、無理ですね。システムからカート回りまで、今でも頭に入っているので自分なら1週間で全店舗のシステムを改修出来ますが、後任がどこまで出来るかは分からないです。

タグ

AI, いろいろ, おしゃべり, オニギリ, クレジット, これ, サーバー, それ, データ, パーミッション, ひろゆき, ペイ, メーカー, ログ, , , , 仕方, 会社, 信頼, , 先生, 入社, 動画, 失敗, , 存在, 対策, 当時, , 徳丸, 意見, , 本当, 段々, , 決済, 疑問, 社長, 脆弱性, 自分, 蓄積, , , , , 駄目,

1万件のCSVを読み込みテーブルに保存する雛形コード #PHPCode

2022.09.08

Logging

おはようございます、徐々に秋ぽっい日差しになってきましたね(まだ暑いけども😌)。

今日は、1万件のCSVを読み込みテーブルに保存する雛形コードを昨日、ちょちょっと書きましたので記載します。ファイルをダウンロードして使いたい方はGithubのリンクを下に貼っときますので、ご使用頂けたらと思います。尚、テーブルなどはCSVを参考にご自身で構えてください。

※動作環境はPHP8系です、なのでPHP7系では一部エラーが出ます。fgetcsv…nullを0へ変更。

Githubのリンクはこちら

Qiitaの方に記載しようかどうしようか、迷ったのですが第一弾目がアクセス数がそこそこ伸びたのでこれ以上、注目されるのは嫌なのでブログの方に記載しました。1万件のCSVを簡単に読み込ませる方法はPHPコードを書くのではなく、SQLのコマンドで実行した方が実は早いですけど・・・。

有言実行

早いですけど、その場合、CSVがちゃんとしたファイルではないと上手くテーブルに保存されない場合や、そもそもコマンドラインで操作出来ない場合もあったりしてPHPコードなどで制御しないと駄目な事もあります。そんな時に、このコードをサンプルとして使って頂ければ良いなと思い作りました。

1万件のCSVを読み込ませるPHPコード雛形。

そんなにコードを書かなくてもまぁ動くんですよ。ちなみにソースコードには、あまりコメントを書いていないですが、プログラマーなら大体の人が理解できるレベルかと思います。

<?php
//ini_set("display_errors","On");
session_start();
require "db_config.php";

//読み込みCSVファイル名セット
class csv
{
    /**
     * @param string $filename
     * @param int $cnt
     * @return Object
     */
    public function ini_csv($filename = "", $cnt = 0)
    {
        return new csv_read($filename, $cnt);
    }
}

//CSVデータを読み込ます
class csv_read
{
    var $max = 10000;
    var $cnt = 0;
    var $handle = null;
    /**
     * @param string $filename
     * @param int $cnt
     */
    public function __construct($filename = "", $cnt = 0)
    {
        $this->cnt = $cnt;
        $this->handle =  fopen($filename, "r");
        $_SESSION["offset"] ? fseek($this->handle, $_SESSION["offset"]) : $this->handle;
    }
    /**
     * @param int $header_skip
     * @return Object
     */
    public function reader($header_skip = 0)
    {
        if ($this->handle !== FALSE) {
            $response = null;
            $data = fgetcsv($this->handle, null, ",");
            if (!$header_skip || $_SESSION["offset"]) {
                if ($data !== FALSE) {
                    $_SESSION["offset"] = ftell($this->handle);
                    $response["data"] = $data;
                    $response["cnt"] = $this->cnt > $this->max ? 0 : ($this->cnt + 1);
                    $flag = true;
                } else {
                    $_SESSION["offset"] = null;
                    $flag = false;
                }
            } else {
                $_SESSION["offset"] = ftell($this->handle);
                $response["cnt"] = $this->cnt > $this->max ? 0 : ($this->cnt + 1);
                $flag = false;
            }
        } else {
            $_SESSION["offset"] = null;
            $flag = false;
        }
        return new table_save($flag, $response);
    }
}

//tableにCSVデータを保存
class table_save
{
    var $flag = false;
    var $result = null;
    /**
     * @param boolean $flag
     * @param array  $response
     * @return void
     */
    public function __construct($flag, $response)
    {
        $this->flag = $flag;
        $this->result = $response;
        $this->column_name = "name,,...";
    }
    /**
     * @param string  $column_name
     * @return void
     */
    public function tbl_save($column_name = "")
    {
        if ($this->flag) {
            $column = $column_name ? $column_name : $this->column_name;
            $is_column = explode(",", $column);
            foreach ($is_column as $key => $val) {
                $is_value[$val] = $this->result["data"][$key];
            }
            try {
                $pdo = new PDO(DSN, USERNAME, PASSWORD);
                $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
                $sql = (function ($is_column) {
                    $INSERTFIRST = null;
                    $INSERTLAST = null;
                    foreach ($is_column as $key => $val) {
                        $INSERTFIRST[] = "$val";
                        $INSERTLAST[] = ":$val";
                    }
                    $INSERTSQL = "(" . implode(",", $INSERTFIRST) . ")values(" . implode(",", $INSERTLAST) . ")";
                    $UPDATESQL = null;
                    foreach ($is_column as $key => $val) {
                        $UPDATESQL[] = "$val = :$val";
                    }
                    return "INSERT INTO " . TABLENAME . $INSERTSQL . " ON DUPLICATE KEY UPDATE " . implode(",", $UPDATESQL) . ";";
                })($is_column);

                $stmt = $pdo->prepare($sql);
                foreach ($is_value as $key => &$value) {
                    $is_type = ($key === "test3" || $key === "test13") ? PDO::PARAM_INT : PDO::PARAM_STR;
                    $stmt->bindValue(":$key", $value, $is_type);
                }
                $this->result["sql"] = $stmt->execute();
            } catch (\Throwable $th) {
                //throw $th;
                $this->result = null;
                print $th->getMessage();
            }
        }
        print json_encode($this->result);
    }
}

//RUN...POST DATA
if (isset($_POST["csrf_token"])  && d_xss($_POST["csrf_token"]) === $_SESSION['csrf_token']) {

    $_SESSION["offset"] = (int)d_xss($_POST["reset_flag"]) === 1 ? null : d_xss($_SESSION["offset"]);
    $filename = d_xss($_POST["filename"]);
    $cnt = (int)d_xss($_POST["cnt"]);

    $column_name = "test1,test2,test3,test4,test5,test6,test7,test8,test9,test10,test11,test12,test13,test14,test15";
    $header_skip = 1;

    $csv = new csv();
    $csv->ini_csv($filename, $cnt)->reader($header_skip)->tbl_save($column_name);
    $csv = null;
} else {
    print "";
}
function d_xss($data){
    $data = strip_tags($data);
    $data = htmlspecialchars($data,ENT_QUOTES);
    return $data;
}
<?php
 // ログインした状態と同等にするためセッションを開始します
 session_start();
 // 暗号学的的に安全なランダムなバイナリを生成し、それを16進数に変換することでASCII文字列に変換します
  $toke_byte = openssl_random_pseudo_bytes(16);
  $csrf_token = bin2hex($toke_byte);
  // 生成したトークンをセッションに保存します
  $_SESSION['csrf_token'] = $csrf_token;
?>
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<meta name="Description" content="Enter your description here"/>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/css/bootstrap.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css">
<title>CSV</title>
</head>
<body>
    <input type="hidden" name="csrf_token" value="<?=$csrf_token?>">
    <span class="h3" id="cnt"></span><br><br>
    <span class="h4" id="read_csv"></span><br><br>
    <span class="h4" id="debug"></span><br><br>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.1/umd/popper.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/js/bootstrap.min.js"></script>
<script>
    window.onload = function(){
        read_csv(0,1);
    };
    function read_csv(cnt,reset_flag){
        try{
            $.ajax({
            type: "post",
            url: "./assets/php/class_csv.php",
            async: false,
            data: {csrf_token:document.getElementsByName("csrf_token")[0].value,reset_flag:reset_flag,filename:"dummy.csv",cnt:cnt},
            dataType: "json",
            success: function (response) {
                    if(response){
                        cnt = response.cnt;
                        document.getElementById("cnt").innerText = cnt;
                        if(response.data){
                            document.getElementById("read_csv").innerText = response.data[0] + response.sql;
                            document.getElementById("debug").innerText = cnt ===21?response.data:document.getElementById("debug").innerText;
                        }
                        setTimeout(function(){read_csv(cnt)},0);
                    }
                }
            });
        }catch(e){
            console.warn(e);
            read_csv(cnt);
        }
    }
</script>
</body>
</html>

タグ

0, , 7, 8, CSV, fgetcsv, github, null, php, PHPCODE, qiita, SQL, アクセス, エラー, コード, こちら, コマンド, これ, ご使用, ご自身, ダウンロード, ちょ, テーブル, ファイル, ブログ, リンク, , 一部, , , 今日, 保存, 動作, 参考, 変更, 実行, , 方法, 日差し, 昨日, 有言実行, 注目, 環境, , 簡単, 記載, 雛形,

submit(サブミット):送信させない4つの方法です🙄。#javascript #サブミットキャンセル

2022.09.07

Logging

おはようございます、台風一過が去りましたね😌。

さて、今日はsubmit(サブミット):送信させない4つの方法を記載します、方法は大きく分けて2つの方法があり、それを細分化して4つの方法になります。まず、一番目は“送信する際(form側)”にてキャンセルする方法です。この場合、addEventListener(アッドイベントリスナー)でキャンセル処理する場合とonsubmitを使用してキャンセルする方法があります。

サンプルコード例1と例3にあたるコードが上記のコードになります。

次に”ボタンをクリック”した際にサブミット(送信)処理をキャンセルする方法です、この方法でも送信を阻止する事ができます。

サンプルコード例2と例4にあたります、自分としてはフォームで処理した方が良いかなと思いますが、こちらでも送信をキャンセルする事ができます。

尚、ソースコードは下記になります。また、参考にしたサイトのリンクを貼っときます。MDNのリンクです。

    <form id="frm" method="post" action="./example/">
        <input type="hidden" name="example" value="data">
        <button type="submit" class="btn btn-primary">Submit1</button>
    </form>
    <form method="post" action="./example/">
        <input type="hidden" name="example" value="data">
        <button id="btn" type="submit" class="btn btn-primary">Submit2</button>
    </form>    
    <form method="post" action="./example/" onsubmit="return func1()" >
        <input type="hidden" name="example" value="data">
        <button type="submit" class="btn btn-primary">Submit3</button>
    </form>
    <form method="post" action="./example/"  >
        <input type="hidden" name="example" value="data">
        <button type="submit" class="btn btn-primary" onclick="return func2()" >Submit4</button>
    </form>
//例1
document.getElementById("frm").addEventListener("submit",function(event){
    event.preventDefault();
});
//例2
document.getElementById("btn").addEventListener("click",function(event){
    event.preventDefault();
    event.stopPropagation();//インターフェイスのメソッドで、キャプチャおよびバブリング段階において現在のイベントのさらなる伝播を阻止します。 
});
//例3
function func1(){
    return false;
}
//例4
function func2(){
    return false;
}

タグ

, 2, , 4, addEventListener, Form, javascript, onsubmit, submit, アッド, イベント, キャンセル, クリック, コード, こちら, サブミット, サンプル, それ, フォーム, ボタン, リスナー, , 上記, , 今日, 使用, , , 処理, 台風一過, 場合, , 方法, , 細分化, 自分, 記載, 送信, 阻止, ,

千里の道も一歩からとはよく言ったものですね。毎日の?🤔

2022.09.04

Logging

おはようございます、台風が過ぎ去ったらまた暑い日なるのかな?

今日は動画を2本ほど朝視聴したので、その事を踏まえながらブログを記載していこうと思います。記事を読む前に動画を視聴してください、視聴したことを前提に記事は書いています。最初に見たのはウィリアム・マクレイブンさんの動画です。人々が笑っている所に何か大事なことが隠れているような気がします。毎日続けるという事は中々、出来ることではなくて大体の人が辞めてしまいます。おそらく9割の人は辞めてしまうのです。

変化は自分から起こす || ウィリアム・マクレイブン
変化は自分から起こす・ウィリアム・マクレイブン

次に茂木健一郎さんの”ネットで目立っている人にあこがれるなよ!”を見ました。これを見て日の目を見ない人にも凄い人はいるという事はよくわかりますし、何も得ることが出来ないという事も最もだと感じました。

ネットで目立っている人にあこがれるなよ!
ネットで目立っている人にあこがれるなよ!・茂木健一郎

自分のやりたいことがあるのならば、千里の道も一歩からという気持ちで毎日、担々とこなすことが大事になると思います。

タグ

0, 2, , com, gMcaNQ, https, NEO, watch, www, youtube, ウィリアム, こと, これ, ネット, ブログ, ふん, マク, マクレイ, もの, レイブン, , 中々, , , 人々, 今日, , , 前提, 動画, 千里, 台風, 変化, 大事, 大体, , , 日の目, 最初, , 毎日, , 自分, 茂木健一郎, 視聴, 記事, 記載, ,

いろいろ問題のあるテスラだけど凄いなと思う😶。

2022.08.28

Logging

こんにちは、秋模様ですね、今日は一日こんな天気だと良いですけど昼から気温が上がりそうですね。

さて、いろいろ問題のあるテスラだけども自動運転技術はほぼ完全自動運転になりつつある。

Flying Through Giga Berlin
ワンショット

またテスラの生産ラインもかなりオートメーション化が進んでいる模様です、このまま、自動化が進むと本当に人は何もしなくて良くなる時代が来るのかもしれない。それが良いことかどうかは分からないですけど、100年後に自発的に仕事をしたいと言うと変わってますね、なんて言われるかも知れません。

そんな感じで恐らく今世紀中には自動化により殆どの事がAIやロボットに取って変わることになると思います。

タグ

, 100, 4, 7, AI, CnXE, com, https, watch, www, youtube, yOx, いろいろ, オートメーション, かなり, こと, このまま, それ, テスラ, ライン, ロボット, ワンショット, , , , 今世, 今日, 仕事, , 問題, 天気, 完全, 感じ, 技術, , 時代, 本当, 模様, 殆ど, 気温, 生産, , 紀中, 自動, 運転,

キャンプや個展は気兼ねなく行けるものなのかも?

2022.08.22

Logging

おはようございます。月曜日の朝ですね、今日から一日のスケージュールを作って活動します。

さて、キャンプや個展などは、コロナ禍であっても気兼ねなく行ける場所なのかもしれないな。キャンプは外だし、個展は基本的に喋ることが無い空間ですからね。そういう意味で今、再過熱していそうです。秋には個展美術展示会など見に行きたいイベントがありますが、どれも県外なので難しいです😭。

話変わって、自分はいまWordPressの過去記事をブロック形式に一括変更できないのか、模索しています。一括変更できるプラグインは恐らく今の段階では作れそうにないです。何故なら公式が提供してくれている記事をブロック変換する物はJavaScriptで変換している。逆から言えば表示される前のデーターを変更するよりもJavaScriptで変換した方がベストと公式サイトのエンジニアが恐らく考えたという事なので、プラグインで作るのは至難の業なのかもしれない。

なので、今回考えたのはSeleniumを使用して解決する方法です。これならそれ程時間もかからず開発できるので、こちらで対応します。尚、出来上がったものを提供するかは今の段階では考えていません。

タグ

javascript, WordPress, イベント, いま, エンジニア, キャンプ, こと, コロナ, サイト, スケージュール, データー, どれ, プラグイン, ブロック, ベスト, もの, , 一括, , , 今日, 個展, 公式, , 場所, 変換, 変更, , 展示会, 形式, 意味, 提供, , 月曜日, , , 模索, 段階, 気兼ね, 活動, , 県外, , , 空間, 美術, 自分, 至難, 表示, 記事, , 過去, 過熱,

一億円の配当金が入るXさんの利回りを調べてみました。

2022.08.19

Logging

おはようございます、今日は偏頭痛もなく一日を過ごしたいです。

先日、株式デイトレーダーで生活している人、その界隈では有名なテスタさんが下記の呟きをしていたので、配当利回り率を調べてみました。

配当利回りを見ると殆どの銘柄で配当利回り5%超え。配当利回り率の高い銘柄では7%超えの物もありました、平均すると5%超えになります。データで見てみると意外に手堅いなと思う反面、結局、堅実派が勝つだなって印象を持ちました。

必勝法なんて無くて株が下がりだしたら売って、株が買値より高くなったら売る、その繰り返しで坦々と出来る人、そして復習と明日の策を考えられる人がトレーダーとして勝っていくだろうなって、そういう意味ではIT関係者はそういう素質を持っている人は結構多い気がします。

タグ

5, 7, IT, データ, デイトレーダー, テスタ, トレーダー, , 一億, 下記, , 今日, 偏頭痛, 先日, 利回り, 印象, 反面, 堅実, 平均, 復習, 必勝法, 意味, 明日, 有名, , 株式, 殆ど, , , 生活, 界隈, , 素質, 買値, 配当, 配当金, 銘柄, 関係者,

アディアの倉庫とアイディアの具現化の二本立て。

2022.08.17

Logging

おはようございます、お盆休み終わり今日から出社の人も多いかと思います。お疲れ様です😌。

AIはオープンソース化される流れが続いていますよね。これからの時代、アイディアとITリテラシー、そして自分でコードを書ける力が有る人は個人で何かしらサービスを作りだす事ができる様になってきている様に感じます🙄。

サービスを作るのに一番、必要なのは情熱。パッション無くして個人で開発は無理です。特に一年以上開発に時間をかけるサービスを開発する場合は情熱が大事になります。これは自分が体感した事なので分かるのですが、開発規模が大規模になれば成る程「本当に使ってくれる人がいるのだろうか」という不安な気持ちになり、その気持が増していくと開発が途中で止まってしまう事さえあります。

自分は作れる力はあるのに、その事で何度も開発を辞めた経緯があります。一つのサービスを個人で開発する場合、情熱がすごく大事になると痛感、折れない心(メンタル)大事です。なので、自分で自分に「大丈夫何とかなる」と暗示をかけるのも一つの手段なのかも知れません。

自分は3つのサービスのアイディアが浮かんでいます、1つ目のサービスは前から作ろうとして頓挫してしまったサービスです。後の2つは最近思い付いたサービスです。これらをLaravelを用いて開発を行います。出来れば今年中に一つのサービスはリリースしたい🔥🔥🔥。

タグ

AI, IT, アイディア, アディア, オープン, コード, これ, サービス, ソース, パッション, メンタル, リテラシー, , 一つ, 不安, , 二本立て, , 今日, 体感, 何度, 倉庫, 個人, 具現, 出社, , 場合, 大事, 大規模, , 必要, 情熱, 時代, 時間, 本当, 気持, 気持ち, 痛感, 盆休み, 経緯, 自分, 規模, 途中, 開発,

ドキュメンタリー・The Future Ofをネトフリで。

2022.08.03

Logging

こんばんは、今日は昨日の夕方に書いた記事をUPします。今頃、自分は寝ているはずです…😴。

昨日のウォーキングでThe Future Of(ざ・ふぃーちゃーおぶ)のシーズン1を全話Netflixで視聴しましたので、感想を残していきます。最初の一話目は犬だったのでどうだろうと思いつつ観て二話三話と観ていきました(一日一日と一時間ぐらい)。遠い未来と近い将来(未来)の話が一話事にあります。

The Future Of | Official Trailer | Netflix

近い未来、そうなるだろうなと言う所と「いやいやまだ早いでしょ」って言う話もありつつなんですが、最終話近くの話は現実に起こりそうだなと思えるものやそうなって欲しいなという話などもありましたね。ドキュメンタリーなので問題提起もしていたので其処ら辺も良いじゃないかなって。

まとめ、科学好きな青年あたりが観ると良いような話かなと思います。また少年などかな、大人が観ると少し物足りなさを感じます。もっとがっつり難しく作ってくれたほうが自分としては良かったかなと思いますが、知らない技術も知りましたからそういう面では良かったです。

タグ

, Future, Netflix, of, The, UP, ウォーキング, オブ, シーズン, ちゃー, ドキュメンタリー, ネトフリ, パス, ふい, もの, , , , , 今日, 今頃, , 全話, 其処ら, 問題, 夕方, 大人, 将来, 少し, 少年, 感想, , 提起, 昨日, 最初, 最終話, 未来, , 現実, 科学, 自分, 視聴, 記事, , , 青年,

簡単で難しい事、いや難しい事なのかもな。

2022.08.01

Logging

おはよう、8月です。収益化は難しいけれどもアクセス数は意外にもある中の人です。

さて最初にTシャツ作りが頓挫した話から書きます。何故(・・?、毎日Tシャツ作りをすると言いながら途中で辞めたのかを話します。理由はデザインに割く時間よりもコードを書く時間や就職活動などを優先しているからです。なので中々、デザインにまで手が回らない。もう一つはスランプ気味なので、手抜きなデザインしか出来ないのが現状です。だからTシャツづくりは頓挫しています。

いま、一番力を入れているのはWEB開発の方です、人にも公開できるし自分にも結果が帰ってくるので、そちらの方を優先しています。Tシャツは売れないけどWEB開発はトントンになる確率がTシャツよりあるので、そちらを優先しています。そういう理由からなんですね。

そしてWEB開発はいろいろとアイディアがあってそれを自分の手を動かしてコードを書いて結果が見えないものは改善したり削除したりして、良いものに作り変える事がデザインよりも自分は得意な感じです。そして何よりデータが取れるので改善しやすいのです。

まとめ、収益化はまだまだ道半ばですが頑張ります。尚、就職先が決まってもアクセス数のあるWEBサービスは停止する事はないと思います。人気の無いサービスは廃止しますけどね…😌。

追伸:Tシャツサイトはアクセス解析が未だに機能しないのは困りもの。いいねが付かなくてもどんな物に興味があるのか分れば求めているものは作りやすいですけどね。

タグ

8, web, アイディア, アクセス, いま, いろいろ, コード, シャツ, スランプ, そちら, それ, デザイン, もう一つ, もの, , , 中々, , , 優先, 公開, 削除, 収益, 就職, , 手抜き, 改善, , 時間, 最初, 毎日, 活動, 現状, 理由, 確率, 簡単, 結果, 自分, , 途中, 開発, 頓挫,

映画、ムーンフォールを観ましたので感想を残しときます。

2022.07.31

Logging

おはようございます。朝方にかけてどしゃ降りになりましたね。

さて昨日、ムーンフォールを観ましたので感想を残しときます。この映画、月の真実を知った時にその想定を受け止めれるかどうかで、大きく観た印象が異なると思っています。予告で大体のストーリー展開は予測できると思いますので、予告を観て観たいか観たくないか決めるのも一つの手だと思います。

日本初上陸!SFディザスターパニック映画『ムーンフォール』| ティザー予告編
ムーンフォール予告

一番、評価が分かれ道になっているのは、やはり最後のオチになる所だと思います、自分はこういうの好きですよ。最後の最後のオチもニヤって感じになりましたからね。パニックアクションSFとしてはかなり王道で最初から最後で一貫して目を離せない作りにもなっていて良かったです。こういう映画は倍速モードでみても何も面白くないと思いますし、VR等を使用してなるべく大画面で観ることをオススメします。

まとめ、自分はこういうSF映画好きです。尚、このムーンフォールは今のところAz独占だと思います。

タグ

SF, Vr, アクション, おすすめ, オチ, かなり, こと, ストーリー, どしゃ降り, ニヤ, パニック, フォール, ムーン, モード, , 一つ, 一貫, 予告, 予測, , 作り, 使用, 倍速, 分かれ道, 印象, 大体, 展開, 想定, 感想, , , 映画, 昨日, , 最初, 最後, , 朝方, 王道, 画面, , 真実, , 自分, 評価,

倉庫作業がロボットに仕事が奪われるまで、あと何年?

2022.07.22

Logging

おはようございます。退職してから一週間経過しましたが、まだ何ともです。

The Future of Robotics
The Future of Robotics

さて、倉庫作業がロボットに仕事が奪われるまで、あと何年か考えてみました。自分の予想はあと数十年先だと思っていますが、これは既存のシステム、今までの倉庫作業を置き換えるという意味であって今までとは考え方を変えてロボットに優しい倉庫システムを作ったのならばロボットは人型ロボットではならないなどの制約は受けないのです。そういう倉庫(物流センター)2.0は、もう導入されています。

ロボットが倉庫を縦横無尽に走る ニトリの通販商品、大量仕分け
ロボットが倉庫を縦横無尽に走る ニトリの通販商品、大量仕分け

なので、ゆくゆくは物流センター(物流倉庫)は上記の動画にもあるような、自動化へ置き換わると思います。それは時間の問題だと思います。因みに配送までも全てロボットに何れ置き換わると思いますよ。因みに自動化が行われるのは労働系よりもデスクワークのお仕事の方が早く置き換わると考えています。なので、実は職を失うのは労働者よりもデスクワーカーだったりしてそんな人々が労働へシフトしていくと可能性もあり労働者も大変な時代になる可能性はあると思います。

タグ

2.0, Future, of, Robotics, The, お仕事, これ, システム, センター, それ, デスク, ニトリ, ロボット, ワーク, , 上記, 予想, 人型, 仕事, , 何年, 作業, 倉庫, 全て, 制約, 労働, 動画, 商品, 問題, 大量, 導入, 意味, 数十, , 既存, 時間, 物流, 経過, 考え方, 自分, 自動, 退職, 通販, 配送,

2023年7月からGA4に変わるだってさ。桐島くん。

2022.07.20

Logging

おはようございます。下記の記事には桐島くんは関係ありません😌。

2023年7月からGA4に変わるそうです、一年前から告知している、Gさん。自分は2022年の7月から変わるだと思い込んでAnalyticsの対応を全て行いました。対応後、2023年じゃんって気づいて吐息…😩。

さてGA4になるとどのように変わるのか、例えばユーザーのカウントの仕方が変わったりするそうですね。今までのカウントの数え方よりもっと厳密になるそうです。そして今まで(GA3)はリアルタイムに反映されていた訪問者数が今のところ、翌日に反映されるように!!これはあまり有り難くない仕様変更です。リリースされる頃にはリアルタイムに変更されていることを願ってます。

【新登場 Google Analytics 4】を分かりやすく解説(基礎知識 編)

ともあれ、2023年7月から無料版GA3は廃止され、GA4に移行しなくてはならないです。アクセス解析のソースコードの入れ替えを行わないといけないので、WEB業界としてはちょっと美味しいメンテナンス作業ですね。費用が発生すればの話ですけど・・・。

詳しい仕様変更の違いを呟いている人やサイトがありますので、詳しい違いはそちらを参照ください。尚、自分としてはUI(ユーザーインターフェース)がガラリと変わって少し戸惑いました。

タグ

-GA, 2022, 2023, , 4, 7, Analytics, web, アクセス, あれ, カウント, コード, こと, これ, ソース, ところ, ユーザー, リアルタイム, リリース, , 下記, , 仕方, 仕様, 全て, 反映, 吐息, 告知, 変更, 対応, 廃止, 数え方, 桐島, 業界, 無料, 移行, 翌日, 自分, 解析, 記事, 訪問者, 関係, ,

よさこい祭り動画検索WEBアプリを運営しています。

2022.07.19

Logging

おはようございます。今日は自分が運営しているWEBアプリ第一弾であるよさこい動画検索アプリの紹介です。このアプリを使用すると過去のよさこい祭りのYOUTUBE動画が参照出来るようになっています。今年の8月10日~11日、開催されるよさこい祭りのスケジュールにも対応しました。まだ、アンドロイドアプリとWEBから閲覧しか出来ませんが、マネタイズ出来るようになったらMacを購入してiosアプリを作りたいと思っています。

😌Androidアプリはこちらから

🏠WEBサイトはこちらになります。

因みにその他、アプリも時間が有れば作ってみたいなって思っています。もう一つリリースしていないアプリとかもあるのですが、そちらはKotlin言語で動いています。基本的にWEBアプリをリリースしていきます、最初はWEBサービスを元にしたものが多いと思いますが、徐々にOSを意識したアプリなども展開していきたいです。全て自分が有れば良いのになを元にして作っていく予定です。

また、WEBサービスなどの知見などもgithubに公開していくつもりでいます。

タグ

10, 11, 8, Android, iOS, Kotlin, Mac, OS, web, youtube, アプリ, アンドロイド, こちら, サービス, サイト, スケジュール, そちら, その他, マネタイズ, もう一つ, もの, よさこい, よさこい祭り, リリース, , 今年, 今日, 使用, , 全て, 動画, 参照, 対応, 展開, 意識, 時間, 最初, 検索, 紹介, 自分, 言語, 購入, 運営, 過去, 開催, 閲覧,