一度入れたJavaScriptライブラリは二度とアップデートされることはない
以下はCloudflareによるレポート、JavaScript Libraries Are Almost Never Updated Once Installedの日本語訳です。JavaScript Libraries Are Almost Never Updated Once...
View ArticlePHPでFizzbuzz最短43バイト
今回は解決できてませんし、解決の糸口すら掴めていません。PHPのFizzBuzz最短は長らく56バイトでした。<?while($i++<100)echo$i%3?!$$i=$i:Fizz,$i%5?$$i:Buzz,~;<?for(;$i++<100;)echo$i%3?!$$i=$i:Fizz,$i%5?$$i:Buzz,~;ところで先日なんとなくshinh.orgを見てみ...
View ArticleC#でMySQLからSELECTした結果を取り出したい
C#は素人なのと、あとコードは再現なので不適切なコードになっている可能性が高いです。おそらくもっといい解法があるはずですが、調べた限りではよくわかりませんでした。課題テーブルAからSELECTする、テーブルBからSELECTする、その後ふたつのデータを色々やって最後にテーブルCにインサートする、みたいなことがやりたかったわけですよ。コード側で色々と処理を行う必要があるため、一度コード側にデータを引き...
View ArticleCNAMEトラッキングってなあに?
先日、というにはだいぶ前ですが、ChromeがサードパーティCookieを禁止すると発表しました。そこらへんを見ていたところCNAMEトラッキングとかいう楽しいワードを発見したので、自分の理解のためにまとめたものです。従って正確性を欠いている部分が多々あります。正しい解説は既に色々別なところが出しているので、そこらへんを見た方がいいと思います。Cookieの概要CookieはFQDN単位で発行されま...
View Article【PHP8】もう`strpos($haystack, $needle)!==false`って書かなくていいんだ
ある文字列中に特定の文字列が存在するかを調べる方法としてstrposが存在します。しかし、そもそもstrposは『ある文字列中で特定の文字列が何文字目に出てくるか』を調べる関数であり、第一に使用目的が異なる関数です。そしてこちらも有名な話ですが、先頭が一致すると0が返ってくるので、緩やかな比較ではfalseと区別されません。...
View Article【MDN】非同期JavaScriptの紹介
MDNに非同期 JavaScriptという学習項目があるのですが、目次以外は日本語がありません。ということで以下はIntroducing asynchronous JavaScript項目の日本語訳です。Introducing asynchronous...
View Article【PHP8.0】gettypeとget_classの悪魔合体
ワレハget_debug_type、コンゴトモヨロシク…PHPにはプリミティブ型名を取得するgettypeと、オブジェクトのクラス名を返すget_classという関数が存在します。_があったりなかったりと命名の不統一も気になりますが、それよりgettypeはオブジェクトに使うとobjectしか返さず、get_classをプリミティブ型に使うとE_WARNINGが発生します。いや、プリミティブ型であれ...
View ArticleLGTMについて思うこと
文字と数値がくっついていて、大きさが似ていて、色合いも同じで、著者名やタグの長さによって配置される位置が異なります。結果として、ぱっと見で数値が全く読み取れません。前は色つきの記号だったので自然にそこで分割することができていたのですが、意味のある文字にしたせいで文字と数値が脳内でくっついてしまい、パースに詰まります。もっと文字と数値を無意識に分てるようにUIを考えてほしいところです。これがタグページ...
View Article個人ページの情報量が激減した
この記事を書いた瞬間個人ページのLGTMを左側に持っていきやがった。あえて視認性を悪くする工夫を盛り込む。さらに、個人ページのレイアウトが格段に劣化した。・1ページあたり僅か5件しか記事を表示しなくなった。・コメント数を潰す。・自分のLGTM履歴やコメント履歴を確認することができなくなっている。...
View Articleタグページの動作がまたおかしくなってる
地味に、タグページのブラウザバック動作がまたおかしくなっている。・タグページを表示・>を選んで2ページ、3ページ、4ページと進む・ブラウザバックすると、URLは変わるのに表示内容が変わらずにそのまま。マイページは正常にブラウザバックする。Contributionやコメントページ、新着一覧などは元よりページ遷移型なので正常にブラウザバックする。一応日本最大の技術サイトでありながら、この有様はいったい何...
View Article2000円のガラケーで快適にWebを表示する技術
PWA?SPA?WebAssembly?うん、そうだね、よかったね。それで、そのページは携帯で見れるのかい?以下はAddy Osmani( Twitter / GitHub / Facebook / HP )による記事、Loading web pages fast on a $20 feature...
View Article【PHP8.0】throw文がthrow式になる
throw expressionというRFCが投票中です。最初のアイデアは2019/12/06のSebastiaan Andewegによるツイート。Really liking the arrow functions in PHP 7.4 so far! Unfortunately already found one missing feature: you can't throw...
View Article【PHP8.0?】PHPに名前付き引数が実装されるかもしれない
PHPのソースを眺めていたら、先日2020/04/07にNikitaがなんか面白そうなプルリクを出していました。Named Parametersという2013年に提出されたまま忘れ去られたRFCがあるのですが、その機能を実装したものです。どういう機能ってこういうのです。functionhoge($foo,$bar){echo"foo=$foo,...
View Article【PHP7.4.5】バグレポ出したらPHP本体に取り込まれた
2020/03/10 23:38先日なんとなく、bugs.php.netにバグレポを提出しました。中身は前書いた配列要素を削除するとインデックスが残ったり残らなかったりするの記事、というかそこに付いた @crhgさんのコメントそのまんまです。DescriptionCopy array.When arrays next index=2 and max key=2, next key is both...
View Article【PHP8.0】PHPでアトリビュート/アノテーション/デコレータが書けるようになる
Attributes v2というRFCが投票中です。投票期間は2020/05/04まで、投票者の2/3の賛成で受理されます。 2020/04/27時点では賛成48反対1で、ほぼ間違いなく可決されます。Attributes...
View Article【PHP8.0】StartsWith/EndsWithがPHP本体に実装される
先日PHP8でstr_containsが導入されることが決まったばかりですが、さらにもっと直接的な『〇〇で始まる』『〇〇で終わる』関数までも導入されることになりました。Add str_starts_with() and str_ends_with() functionsというRFCが投票中です。 2020/05/04時点では賛成50反対4で、ほぼ導入確定です。PHP RFC: Add...
View Article【PHP8.0】なんでもあり型が書けるようになる
ジェネリクスではない…ジェネリクスではないのだよ………ざっくり言うとvar_dump()の型引数です。 var_dumpにはプリミティブ値にオブジェクトにリソース型にと、どんな値でも渡すことができるのですが、PHP7.4時点の型システムではvar_dumpの引数の型を表すことができません。...
View Articleこれがなくては生きていけないVS Codeエクステンション10選
VisualStudioCodeは大人気なだけあって、有能なエクステンションが次から次へと出てきますね。色々とっかえひっかえ試して遊んでいる人も多いのではないでしょうか。なんかMinecraftのMOD環境構築と同じ空気を感じますね。 (環境ができたところで飽きて遊ばなくなる)まあ一番手っ取り早いのは、既に評価の固まっている手堅いエクステンションを導入することです。ということで以下はSahil...
View ArticleJavaScriptのアロー関数が好きではない
JavaScriptのアロー関数が好きではない。constf=()=>{a++;};leta=1;f();console.log(a);// 2...
View Article【PHP8.0】例外をcatchしたいけど何もしたくない
例外をcatchしたいけど何もしたくない。try{foo();}catch(Throwable$e){// 何もしない}何もしないのにわざわざ変数に受け取るのって無駄じゃありませんか?というわけでnon-capturing catchesというRFCが提出されました。PHP RFC: non-capturing...
View Article