Visual Studio Codeで改行をCRLFで保存してしまう。LFに変える方法。
Visual Studio Code(VS Code)で改行コードを LF で保存したのに、気づいたら CRLF になってることがあります。
理由は、デフォルトの改行設定が CRLF で、どこかの編集のタイミングで CRLF で保存してしまってるから。
プログラミングで CRLF はきつい。デフォルト設定を変更します。
続きを読む1024byte = 1kB は不正解って知ってますか? プログラマ・SEが使う単位について
1024byte=1KBは○。1024byte=1kBは✕。1000byte=1kBは○。1024byte=1KiBは○。
説明できるほど分かっていたのは1024byte=1KBと1024byte=1KiB の2つだけ。
1000byte=1kBは『その計算もある』程度の理解。
エンジニア目線では理解不能な単位の話。
続きを読む古代・中世…平安・鎌倉… 時代区分が誰でもわかるまとめ。教科書が絶対ではないという話。
日本の歴史では、時代区分のタイプがいくつかあります。
- 先史、古代、中世、近世、近代、現代
- 飛鳥・奈良、平安、鎌倉、室町、安土桃山、江戸、明治・大正・昭和・平成・令和
それから、土器や稲作の始まり、文化などの区分もあります。
これが結局よく分からないことになっているので、誰でもかんたんに分かる対応表・早見表をつくりました。
続きを読むLinux systemctl, サービスの自動起動 / 解除を行なう
Redhat系Linuxのsystemdはサービス(アプリケーション)の起動・停止・再起動をコントロールするものです。
systemdの管理コマンドsystemctlでサービス(アプリケーション)の自動起動 / 解除 設定を行ないます。
自動起動はOSが起動したときに連動して起動させること。
続きを読むPHP, パスワードのハッシュはpassword_hash()を使おう!
文字列のハッシュ化は、md5(), sha1()を使うのをやめてpassword_hash()を使いましょうという話です。
(ハッシュは文字列を解読しづらくする難読化のこと。)
公式ドキュメントもそう言っているのに気づきました。
(けっこう遅いけど。)
続きを読むMariaDB, インストール直後にやるべき作業。初期設定は常識です。
MariaDBには、インストール後にやっておくべき初期設定がふたつあります。設定ファイルの編集とmysql_secure_installationコマンドの実行。
rootパスワード設定や、だれでも使える匿名ユーザーの削除などのセキュリティ対策をします。
続きを読むusb80236.sys が DRIVER_IRQL_NOT_LESS_OR_EQUALって何?
パソコンを使ってるとブルースクリーン・エラーは一番出会いたくない。いきなり画面いっぱいが青くなり英語だけが表示されるやつ。
Windows 10 で出たエラーコードが DRIVER_IRQL_NOT_LESS_OR_EQUAL。usb80236.sys が原因らしい。
パッと見なんのこっちゃ分からない。
続きを読む第57代 陽成天皇。殺人を犯して天皇クビって本当? 歴代でもトップレベルの悪評。
第57代 陽成天皇(ようぜい)は9才で即位した幼帝です。そして、歴代天皇の中でもトップレベルのぶっ飛んだヤバイ奴とも言われます。
悪王と呼ばれた天皇は他にもいますが古すぎて事実か怪しいので、ちゃんと記録に残ってる中ではこの人がトップかもしれない。
続きを読むPHP8, エラー、警告、通知の変更のまとめ。レベル格上げが主な変更点。
PHP8では、それまで警告で済んでいたものがエラーになるものが多くあります。
(エラー例外をスローする。)
個々の変更点では説明されてたんですが、まとまったものがありませんでした。やっと見つけたので、エラー、警告、通知の変更点のレジュメをご紹介します。
続きを読むユーザーCPU時間とシステムCPU時間って何がちがう?(プログラムが独り占めするひととき)
プログラムはCPUを好きなタイミングで使うことはなく処理待ちしているのが普通です。
CPU時間はプログラムが処理するためにやっと掴んだCPUを占有する時間の累計。そのCPUを『だれが』使うかでユーザーCPU時間とシステムCPU時間に分かれます。
かんたんに分かりやすく、関係とちがいを説明します。
続きを読むUnity Hubでプロジェクトを開けない。原因はライセンスのMACアドレスにあり!
Unity Hubで作成したプロジェクトを開こうとすると、Editorの初期画面が出るだけで終了。
Unity Hubは『Unityは既にリストに含まれています。』が表示され再起動。
何度やっても負のループ。いや、そこで終わり?何もできないんだけど?
続きを読む補数(ほすう)って何?なんで使うの?実は小学校から使ってる。習わないけど。
コンピュータの基礎知識では補数(ほすう)が出てきます。ここでつまずいて嫌になる人もいるくらい。
『つまずくなら式を覚えてしまえ』でスルーしてもいいですが、メカニズムを分かってないとすぐに忘れます。
『試験以外で使ったことないからいい』という意見を否定しませんが。
続きを読むHTMLとCSSだけで簡単に作る。軽量な開く・閉じる切り替えボタン
HTMLとCSSだけで『開く・閉じる』の切り替えボタンをかんたんに作る方法をご紹介します。
画面を遷移しないでコンテンツを開閉します。JavaScriptは使いません。
これは、コンテンツをコントロールするときWebサーバーにリクエストを送信しないので、Webページのパフォーマンスを上げることができます。
続きを読むVirtualBox 6.1.28 は Windows 10 で仮想マシンが起動できない。
仮想環境で有名な Oracle VM VirtualBox ですが、バージョン6.1.28 は Windows10で起動できません。
Call to NEMR0InitVMPart2 failed らしい。ざっくりいうと、仮想マシンの起動で失敗する。
答えを先にいうと、バージョンを下げようという話です。
続きを読むPHP8, create_function()の廃止。無名関数を使おう!
非推奨になっていたcreate_function()がPHP8で廃止されました。無名関数を知っている人にはどうでもいいことですが、ソースコードに残っていると致命的なエラーになって動きません。
何を今さらな情報ですが、もしまだ使っているようなら辞めましょうという話です。
続きを読むLinux firewall-cmd, ファイアウォールのポートを開け閉めする
Redhat系Linuxにはfirewalldというファイアウォールのサービスが標準であります。それを細かく設定するコマンドがfirewall-cmdで、ポートを開けたり閉めたりします。
サービス名(アプリケーション名)とポート番号で設定する方法があります。
続きを読むCentOS7, スワップ領域の作成と削除。意外とOS管理で使う。
メモリが足りなくなったときに、HDD(SSD)の一部をメモリとして使うスワップがあります。
メモリを増設すればいいので不要だと思われがちですが、暫定措置として結構使う。
そのスワップ領域をCentOS7で作成します。いらなくなることもあるので、ついでに削除の方法も。
続きを読むPHP8, 数値と文字列の比較結果が変わる。データの厳密化を意識しよう!
PHP8では、数値と文字列の非厳密な比較の結果が変わります。
非厳密とは、データの型を合わせる必要がないゆるい比較で、内部で型を強制変換して比較してくれる機能のこと。
PHP8はデータの厳密化がポイントなので比較にも影響します。個人的には型ちがいの比較はおススメしません。
続きを読むWordPressのエスケープ関数。esc_html(), esc_attr() は必ず使おう!
プログラミングではエスケープ処理が必要です。Webでは、だれだか分からない不特定多数の人からのデータ入力が可能なので、特に重要。
WordPressも例外ではありません。そしてエスケープ専用の関数が用意されています。
この関数は必ず使うものです。
続きを読むHTMLとCSSだけで簡単に作る。軽量な閉じる・すべて表示ボタン
HTMLとCSSだけで『閉じる・すべて表示』ボタンをかんたんに作る方法をご紹介します。
このボタンは、画面を遷移しないでコンテンツを閉じたり追加表示します。JavaScriptは使いません。
これは、コンテンツを制御するときに、Webサーバーにリクエストを送信しないので、Webページのパフォーマンスを上げることができます。
続きを読むwebpack5, node-sassはNode.jsのバージョンに影響される
webpackのプラグインnode-sassは、Node.jsのバージョンに大きく影響されます。
node-sassのバージョンとNode.jsのバージョンは対応表があるほど。
でも、エラー内容からはそれが想像できません。これを解決するのに2時間かかった。
続きを読むPHP, urlencode() は rawurlencode() に変えるべき?
PHPには、URLのエンコード / デコードの関数が2種類あります。urlencode() / urldecode() と rawurlencode() / rawurldecode()。
使う目的は同じなんですが、じゃあどっちを使うの? という話です。
続きを読むWebサイト表示の流れをざっくりとまとめた。HTML,CSSからSPA,SSR,SSGまで。
SPA, SSR, プリレンダリング(SSG), React, Vue.js, Next.js, Nuxt.js。
正直、いまのWebの技術はいろんなことが多すぎて、すべてを理解できません。似てることも多いし。
こういうときは、しっかり基本に立ち返ります。そうすれば振り回されないし学習が速くなる。
続きを読む『ビューポートが設定されていません』を直す。モバイルユーザービリティの適正化。
Google Search Consoleのモバイルユーザービリティのエラー『ビューポートが設定されていません』を直します。
ビューポートはモバイル(スマホ)でサイトが表示されている実際の領域のこと。
かんたんです。HTMLにmetaタグを追加するだけです。
続きを読むPHP, JSONで日本語を使う方法。Unicodeのエスケープを辞めればOK。
json_encode()を使ってPHPの配列やオブジェクトをjsonに変換しますが、UTF-8などのUnicodeの場合、json結果の日本語がUnicodeのままになります。
それを、日本語で表示するようにします。
かんたんです。説明は3分もかかりません。
続きを読むCentOS ssh, rootユーザーをパスワードでログインする
セキュリティ上よくありませんが、rootユーザー・パスワードでリモートログインする方法です。
rootユーザーのパスワード認証なんて絶対にやるもんじゃありません。でも少ないながらも使う機会はあります。
忘れてもいいことだし、すぐ忘れることなので備忘録です。
続きを読むWordPress, セキュア処理で使うnonce関数のちがい(CSRF対策)
nonceはWordPressのセキュリティ機能のひとつで、ワンタイムパスワードみたいなものです。
そのnonceまわりの処理の関数で、ドキュメントと違う実装をしても正常に動くことがあるので、ソースコードから調べました。
よく分かってなかった関数の使い分けがはっきりしたのが一番の収穫です。
続きを読むnvm, Node.jsバージョンをユーザー・ディレクトリごとに管理する
Node.jsの環境を作るのにNode.jsのバージョン管理ツールは必須で、かんたんにNode.jsのバージョンを切り替えできないとキツイです。
nvmはユーザー、ディレクトリごとに切り替えできます。
direnvが使えるなら一番のオススメです。
続きを読むPHP composer, パッケージのインストールでバージョンを指定するいろいろな方法。
PHPのcomposerはパッケージを管理するコマンドツールです。
パッケージにはバージョンが付いており、インストールやアップデート時に特定のバージョンを指定することができます。
また、番号だけでなくGitHubなどのブランチを指定する方法もあり、安定版、開発版など開発フェーズも指定できます。
続きを読む第65代 花山天皇。文春砲でも打ち切れない女好きのアーティスト
第65代 花山天皇(かざん)は、歴代天皇のなかでもトップクラスの天才アーティストですが、なにせ女癖がワルい。ワルい。
アン○ャッ○ュ・渡○を最高の笑顔で許せるくらいの、とんでもエピソード満載の人です。
(もちろん女性がらみの。)
天皇としてはかわいそうで、だまされて退位させられます。
続きを読む