移行中の丸め誤差

全体の平均成績\(2{,}33\)はバイエルン州の高校への適性を証明しますが、 \(2{,}34\)高校への適性を証明しなくなりました。この明確な境界により、2 ラウンドの順序によって子供がどちら側に着地するかが決まります。この丸め効果の考えられる結果については、 Günther Felbinger によるブログ投稿で説明されています。興味本位で、モデルで許可されているすべてのグレードの組み合わせでの効果を自分で計算してみました。

.­.­.

Facebookの2段階認証をリセットする

手違いで、 Google Authenticatorのエクスポート処理中にエクスポートされたコードがすべて削除されてしまいました。すべてのアカウントの復旧コードは保存していたのですが、 Facebookの復旧コードは保存していませんでした。何年もソーシャルネットワークを使っていなかったので、特に必要性も緊急性もなかったのですが、何とかしてアクセスを取り戻せるかどうか試してみたかったのです。こうして、冒険の旅が始まりました。

.­.­.

そんなことを誰が知っているだろうか?

時として、夕方の番組でたった1つの質問(この場合は、著名な司会者カイ・プフラウメ氏によるもの)が、無害なクイズ番組の最終回をちょっとした最適化問題に変えてしまうことがある。まさにそれが「Who Knows What?」で起こっていることだ。 主要な質問: カテゴリーは分かっているが、答えはまだ出ていない。しかし、その利害関係によって、どの結果が依然として良い結果と言えるかが既に決まっている。

.­.­.

正しく短縮するか、誤って短縮するか

分数の基本的な知識:同じ因数を簡約することは許されますが、同じ数字を簡約することは許されません。しかし、この禁じられた簡約がうまくいくように見える分数も存在します。分子の末尾と分母の先頭に同じ数字が現れる分数という、特に単純な分数のグループを詳しく調べてみる価値があります。

.­.­.

サイレントトレイン

面白いチェスの課題は人生を豊かにしてくれます。今日の課題:白の手、二人で組む。このポジションは 1926 年にErich Brunner が考案したもので、典型的な 2 手のポジションにはまったく見えないからこそ興味深いものです。チェスの直接入札を試し、ルークの動きをチェックし、クイーンの動きを探します。そして数分後に、それらは明白なアイデアではないことに気づきます。

.­.­.

Let's Encrypt DomainFactory

CPanel を使用した一部の共有ホスティング パッケージは、 AutoSSL を提供しないか、より高い料金でのみ提供します。結果: cPanel インターフェース経由で無料の Let's Encrypt 証明書を発行することはできず、すべてのドメインが自己署名証明書に依存したままになります。ブラウザにはページが「安全ではありません」と表示されます。解決策: acme.shを使用して証明書を自分で取得し、cPanel UAPI 経由でインストールします。AutoSSL を使用せずに自動的に更新されます。

.­.­.

可除性

Who Wants to Be a Millionaireでは、最近、ギュンター ヤウクが明確に考えなければならない素敵な小さな質問がありました。 「数値は、最後の 2 桁から形成された数値であれば、剰余なしで常に\(4\)で割り切れます...?」 – そして、まさにここで、気を散らすものに誘惑されるのではなく、少しの間数学的に考えなければなりません。なぜなら、「偶数である」、「 \(0\)を含む」、または「クロスサムは\(4\)に等しい」などの答えは一見もっともらしく聞こえますが、正しい答えは 10 進法の単純な特性に基づいているからです。

.­.­.

AI対エルデシュ

数学の問題の中には、子供にも説明できるほど単純に定式化されているにもかかわらず、何世代にもわたる数学者を悩ませるほど難しいものがある。そのような問題の一つが、いわゆる単位距離問題である。平面上に\(n\)個の点を配置したとき、距離がちょうど\(1\)となる点のペアはいくつ存在するか?この問題はポール・エルデシュに遡り、1946年から研究されてきた。OpenAI今回、この問題に関する長年の予想を覆す内部モデルを発表した。

.­.­.

素数でコード化する

1999年10月、当時16歳だったノルウェー人のジョン・レック・ヨハンセンが率いるグループが、DVD再生保護システムであるコンテンツスクランブルシステム(CSS)を回避するためのDeCSSプログラムをリリースした。CSSは40ビット暗号化を使用しており、その鍵はライセンスを受けた製造業者に配布され、DVDの再生を制限していた。このコードの配布は米国のDMCA(デジタルミレニアム著作権法)の対象となり、法的に禁止されていたため、活動家たちはコードを数学的な実体として偽装する方法を模索した。

.­.­.

ℚは完全ではありません

一見すると、有理数\(\mathbb{Q}\)はギャップのない連続体のように見えます。2 つの分数の間には常に別の分数が存在します。しかし、この印象は誤解を招きます。有界である有理数の集合は存在しますが、その上限または下限は単に\(\mathbb{Q}\)に存在しません。その理由は、 \(\sqrt{2}\)のような無理数の存在にあり、いわば、有理数直線に目に見えない穴をあけるものです。

.­.­.

マインクラフトのボスバー

PaperMCは、クライアントに何もインストールさせることなく、小さなプラグインでMinecraftのサーバーサイドを拡張するためのシンプルな基盤を提供します。プラグインを開発する際に、プレイヤーに動的な情報を表示する方法が問題となります。その答えは、見落とされがちなバニラの機能であるボスバーにあります。元々はエンドボス向けに設計されたボスバーは、ミニマルなHUDとして再利用できます。

.­.­.

IPv6

インターネットプロトコル(IP)は、すべてのインターネットアプリケーションの基盤です。TCPやUDPなどの他のプロトコルはIPを基盤として構築され、HTTP(S)、電子メール、電話、DNSといったサービスを提供しています。IPv4プロトコルは、約40億アドレスという比較的小さなアドレス空間が既に枯渇しているため、IPv6に置き換えられつつあります。IPv6は現在ほぼ普及しており、多くの人が想像する以上に有用です。

.­.­.

SSHなしのGit

誰もが経験したことがあるでしょうが、安価な共有ホスティング パッケージ (IONOS など) で何かをすぐにダウンロードする必要があります。 git pull プログラムを実行したりデータベースを使用したりしたいのに、ホスティングプロバイダーがSSHアクセスを許可していない、あるいは高額なプランでしか許可していないという状況もよくあります。多くの場合、残された唯一の選択肢はFTP経由でファイルを手動でアップロードするという面倒な作業であり、これによりデプロイメントが不必要に複雑になり、エラーが発生しやすくなります。

.­.­.

Amazonと消費税

Amazonはフリーランサーにとって最適なショッピングチャネルです。スピーディーで手頃な価格、そしてすべてが1か所に揃っています。Amazonは、タイムリーかつ簡単にダウンロードできる請求書を常に提供できるようになりました(マーケットプレイスでの購入でも同様です)。新しいノートパソコン、オフィスチェア、あるいはちょっとしたプリンター用紙の注文など、商品は数クリックで注文できます。通常は長年使っている個人アカウントから簡単に注文できます。

.­.­.

git ステータス 2.0

朝一番に来た人 git status タイピングしてからコーヒーを飲む人は、この小さなヘルパーを気に入るはずです。特に多くの Web プロジェクトが並行して開発されている場合、1 つだけ価値があります。 コンパクトな概要: 作業ツリーはどこにクリーンで、マージされていない変更がハングしているのはどこで、プル/プッシュが待機しているのはどこでしょうか?パス内のスペース/Unicode を確実に処理し、リモートのハング時に停止しない限り、小さなシェル ツールで十分です。

.­.­.

言語と論理

カリ・ローズの「It Is What It Is and It Ain't What Is Ain't」という美しい歌があります。これは「It is what it is and it isn't what it isn't」と簡略化できます。ほんの数語で、真実の広大な世界を探求できるのです。この二つの部分を変化させたり組み合わせたりすることで、論理の小さな遊び場が生まれます。さあ、この文章を題材に、他にも興味深い例を探してみてください。

.­.­.

Thunderbirdの自動化

Thunderbirdは2022年以降、目覚ましい復活を遂げました。長年の停滞を経て、Mozilla Foundationは再び積極的に開発に投資しています。Supernovaイニシアチブ(Thunderbird 115以降)では、パフォーマンスが重要なコンポーネントへのRust統合、Web Componentsに基づいた最新のUI、EWS/Microsoft Graph APIを介したネイティブExchangeサポートなど、根本的な近代化が実現しました。

.­.­.

PHPのWalrus演算子

2019年10月にPython 3.8でWalrus演算子(:=) 経由 ペップ572 プログラミング言語の歴史上最大の論争の一つを引き起こした。この論争は非常に激しく、Pythonの発明者は グイド・ヴァン・ロッサム 2018年7月、釈放前にもかかわらず、BDFL(終身の慈悲深い独裁者)。2019 年の初めから、Python は選出された運営委員会によって統治されるようになりました。

.­.­.

摂氏と華氏

凍えるような寒い冬の日、アメリカにいる友人と電話で話しています。「ここはマイナス\(40\)度だよ!」と二人で同時に叫びます。普通なら、どちらが摂氏でどちらが華氏なのかを明確にする問題ですが、この気温ではそうではありません。なぜでしょう?摂氏と華氏の目盛りが一致するのは、この温度だけなのです!

.­.­.

自然なソート順序の混乱

ほとんどのグラフィカル ファイル マネージャーは、厳密に辞書順に並べ替えるのではなく、「自然な並べ替え」を使用します。名前に含まれる数字のブロックは数字として解釈されます。たとえ純粋にアルファベット順で反対の値が得られたとしても、数字のブロックが大きい方が勝ちとなります。自然な並べ替えの背後にある考え方: 人々が最も望んでいるのは、先頭にゼロを追加する必要のない「10 の前に 9」、「第 2 章から第 10 章」です。

.­.­.

Windowsタスクスケジューラの優先度

Windows タスク スケジューラでジョブを実行する人は、遅かれ早かれ実行時に説明できない違いに遭遇するでしょう。コマンド ラインでは 5 分で実行される PHP スクリプトが、Windows タスク スケジューラ経由で実行すると、突然 20 分かかります。同じユーザー、同じ権限、同じコード – 実行時間は 4 倍。そこで何が起こっていたのでしょうか?

.­.­.

ARC-AGIベンチマーク

コンピューティング能力の価格が10年ごとに2桁ずつ低下し続けていることは、2010年以降、ディープラーニングモデルの開発を飛躍的に加速させてきました。ネットワークの大規模化とデータ量の増大により、一般的なベンチマークにおいて、これまで以上に高いスコアが確実に得られるようになり、スケーリングだけでAGIが実現できるという期待が高まりました。フランソワ・ショレは早くも2019年にARC-AGIベンチマークを発表しました。 知能を測定するため。

.­.­.

Outlookで送信者のメールアドレスを表示する

送信者のメールアドレスは、メールがスパムかどうかを判断する良い指標となります。Microsoft Outlook Desktopでは、デフォルトでは名前の代わりに実際のメールアドレスを表示する列を追加することは直感的ではありません。Microsoftは現在までこの機能を簡単なオプションとして実装していませんが、組み込みツールを使用すれば、従来のWindows版Outlookに追加することができます。

.­.­.

ローカル開発環境でのSSL

HTTPS 専用ブラウザ、SameSite Cookie、現実的な開発条件の時代では、実際の SSL 証明書を使用してローカルで作業することが重要です。 Let's Encrypt はここで先駆的な取り組みを行っており、 certbotCloudflareの支援により、ワイルドカード証明書の作成と更新が迅速かつ簡単に行えます。これにより、ローカル ネットワーク内または VPN 経由で、任意のデバイス (スマートフォン、VM など) で暗号化された Web プロジェクトにアクセスできるようになります。

.­.­.

独自の大規模言語モデルを構築する

「機械は大容量のメモリを持つことができますが、私たちが教えない限り、考えることはできません。」 – アラン・チューリング。 GPT-4Llamaなどの最新の AI モデルは、膨大なデータセットと複雑な数学的構造に基づいています。しかし、その背後には本当に何があるのでしょうか?この記事では、言語モデルをゼロから構築するために必要な主要なコンポーネントについて説明します。

.­.­.

OpenStreetMapを自分でホストする

OpenStreetMap (OSM) は、世界中の人々が協力して作成した、無料、オープン、独立した世界地図です。市場リーダーであるGoogle マップはデジタル マップの第一選択肢となることが多いですが、OSM はまったく異なる原則、つまり地理データを無料で収集、改善、提供するための共同コミュニティに基づいています。

.­.­.

Exchange/Office 365 への PHP によるアクセス

長い間発表されていましたが、現在の現実: Microsoft は、oAuth2 を優先して、2022 年 9 月から Exchange Online で特定のプロトコルのパスワードによる認証をオフにしました。 多くのライブラリバックアップ スクリプトの GitHub の問題は、切り替えが多くの管理者を驚かせたことを明らかにしています。 以下に、IMAP 経由で PHP 経由で oAuth2 を使用して、引き続き Exchange メールボックスのコンテンツにアクセスする方法を示します。

.­.­.

メールの送信が遅れる

時間が合わない?メールの送信が早すぎますか?メールの遅延は多くの状況で役立ちます。レビュー時間を与えるためでも、自分の作業負荷を効果的に管理するためでも、タイミングは非常に重要です。ここでは、メールの送信を遅らせてコミュニケーションを最適化する 3 つの方法を紹介します。

.­.­.

AIでブラウザを制御

ブラウザの自動化は、Web スクレイピング、自動テスト、Web アプリケーションの対話などの分野で大きな役割を果たします。これまでは、たとえばPuppeteer がこの目的に使用されてきました。 AI の出現により、ブラウザの自動化をより直観的にし、メンテナンスの負担を軽減する新たな機会が開かれ、 Stagehandのステージがクリアされます。

.­.­.

Xdebug を使用した PHP のデバッグ

Xdebugは、PHPアプリケーションの分析と最適化に役立つ強力なデバッグおよびプロファイリングツールです。ステップバイステップデバッグ、パフォーマンス測定、スタックトレースなどの機能をサポートしており、トラブルシューティングを大幅に簡素化し、コードに関するより深い洞察を提供します。以下は、VS Code内でXdebugを使用するための簡単なセットアップガイドです。

.­.­.

液体について

コーヒーとミルクが同じ高さに入っている2つの同じカップを想像してください。 コーヒーカップから小さじ1杯のコーヒーをミルクカップにすくい、かき混ぜます。 次にミルクカップから小さじ1杯の混合液をコーヒーカップに注ぎます。 そのとき、どちらのカップにより多くの異物が入っているでしょうか?

.­.­.

ChatGPT を使った Git のコミットメッセージ

Gitにおけるコミットメッセージはしばしば軽視されがちです。多くの人は、コミットメッセージを単に変更を保存するための必要悪と捉えています。しかし、意味のあるコミットメッセージはプロジェクトの成功に不可欠な要素です。変更履歴の追跡性を高め、チーム間の効率的なコラボレーションを促進し、バグ修正を迅速化します。AIを活用してコミットメッセージを自動生成するメリットは計り知れません。

.­.­.

長方形の2月

2月は時折、カレンダー上で非常に魅力的な形を呈することがあります。例えば、2021年2月には、まさに「完璧な長方形の2月」を体験できるかもしれません。この珍しい現象は、2月がちょうど\(28\)日間で、2月1日が月曜日に当たる場合に発生します。しかし、実際にこのような現象はどれくらいの頻度で起こるのでしょうか?そして、次に起こるまでどれくらい待たなければならないのでしょうか?

.­.­.

CSSにおける垂直方向のセンタリング

CSSはまだ私たちのほとんどを混乱させている。CSSには何百もの貧弱な名前のプロパティがあり、それぞれが直感的でない方法で結果に影響を与える可能性がある。 ウェブ開発における要素の垂直配置は厄介で、過去にはしばしば頭痛の種だったが、ありがたいことにその時代は終わった。

.­.­.

CSSでheight: 0をheight: autoにアニメートする。

CSSのトランジションは、インタラクティブ性を生み出す良い方法です。, transition のような要素の固有変数の遷移をアニメーション化します。 auto は、何十年もの間、ウェブ開発者にとっての問題であり、唯一の選択肢は、JavaScriptを使って動的に高さを計算することだった。

.­.­.

0と1の間に整数はない

ないので、(0<n<1)

.­.­.

リフトのパラドックス

1950年、物理学者のジョージ・ガモフとマーヴィン・スターンは興味深い現象に気づいた。6階建てのビルの1階にオフィスを構えていたガモフは、6回のうち5回は、上向きに進んでいるにもかかわらず、次のエレベーターが下向きに進んでいることに気づいた。 5階に勤務していたスターンは、その逆を観察した。

.­.­.

クワイン

クィーン・プログラムクィーン)とは、実行されるとそれ自身のソース・コードを出力するプログラムのことである。 クィーンは、例えば、それが含まれているファイルの内容を出力したり、内省的な機能を使ってそれ自身の表現を出力したりするなど、「それ自身の外側に踏み出す」ものであってはならない。 その代わりに、それ自身のソース・コードを計算しなければならない。

.­.­.

bashスクリプトによるファイルローテーション

logrotateのような強力なツールを使用すると、ログ ファイルやバックアップ ファイルのローテーション作業がはるかに簡単になります。そのため、ファイルは一定期間経過後、または一定のサイズに達したときにローテーションされます。リモート サーバーでこのツールを利用できず、リモート SSH コマンドしか実行できない場合は、古いファイルを削除し、リクエストを 1 つだけ行う小さな bash スクリプトを使用できます。

.­.­.

ベンフォードの法則

数字の世界では、しばしば驚くべきパターンに出くわすことがある。 ベンフォードの法則は、最初の桁の法則としても知られている。 この数学的現象は、多くの実世界のデータセットにおける最初の桁の頻度分布を記述しており、私たちの環境で発生する数字の性質について興味深い洞察を与えてくれる。

.­.­.

逆説的確率計算

私には2人の子供がいて、木曜日に生まれた息子がいます。娘が生まれる確率はどれくらいでしょうか?曜日を\(1, 2, … , 7\)という数字で表しましょう。ここで\(1\ =\)月曜日、 \(2 =\)火曜日、といった具合です。これで、「 \(n\)日目に男の子が生まれた」という事象を\(B_n\)と定義でき、同様に\(G_n\)についても定義できます。

.­.­.

終末論

今まで生まれてきた人、これから生まれてくる人の数(Y)が限られているとして、その先頭からの絶対位置を(x)とすると、(0 < ¬frac{x}{Y} ¬leq 1)となり、( 0.05 < ¬frac{x}{Y} ¬leq 1)となるので、(Y < ¬frac{x}{0.05} = ¬frac{100 ¬x}{5} = 20 ¬frac{x}{0.05} = ¬frac{100 ¬x}{5} = 20 ¬frac{100 ¬x}となる。

.­.­.

酒飲みのパラドックス

次の文は「酒飲みのパラドックス」として知られています。 「バーに誰かがいるから、その人が酒を飲めば、バーにいる全員が酒を飲むことになる。」後で説明するように、その人が他の人に飲酒を勧めるかどうか、または別の裏口が存在するかどうかは関係ありません。これは数学的述語論理の良い例です。

.­.­.

数字の推測

男の子は\(1\)\(2\) 、または\(3\)の数字を考え、女の子はその数字について1 つだけ質問することができます。少年は「はい」「いいえ」「わかりません」としか答えることができません。賢く質問することで、少年が答えた後、少女は少年が考えていた正しい数字の名前を言い当てることができました。質問は何ですか?

.­.­.

起源のない物体

ある日、差出人の住所が書かれていない謎の小包が届いたと想像してみてください。好奇心に駆られて開けてみると、中には指輪が入っていました。あなたはそれを娘に渡します。それから数十年後、娘はワームホールを使って過去に物を送ることができるようになります。そして、あなた宛ての小包に詰められた、かつてあなたから受け取った指輪を使って、彼女は過去に物を送ります。問題は、その指輪は一体どこから来たのかということです。

.­.­.

GitHub アクションを使用した CI

非常に価値のあるTravis CI の代替として、 GitHub Actions がしばらく前から利用可能になっています。継続的統合ツールとして、GitHub コード プラットフォームに非常によく統合されており、現在は非常に安定して実行されています。 GitHub Actions は、ワークフローが実行されるリポジトリに配置される YAML 構成ファイルに依存します。

.­.­.

スタインのパラドックス

1961 年に James と Steinは 2 次損失による推定という論文を発表しました。 未知の平均\(\mu\)と分散\(1\)をもつ正規分布データを取ります。 このデータからランダムな値\(x\)を選択し、これに基づいて平均\(\mu\)を推定する必要がある場合、直観的に\(x\)\(\mu\)の妥当な推定値です。 (正規分布が存在するため、ランダムに選択された\(x\)はおそらく\(\mu\)の近くにあります)。

.­.­.

データベース内の UUID

UUID (Universally Unique Identifiers) は、データベースなどでテーブル エントリを一意に識別するために使用される 128 ビット値です。これらは、ハイフンで区切られた 5 つのグループに分割された 16 進文字列として表されます (例: 09fe49b3-4d2b-471c-ac04-36c9e706b85f)。 がある 多数 ディスカッション データベースにおける UUID の長所と短所について - それらは分散システムに不可欠です。

.­.­.

Git 履歴のクリーンアップ パート 2

機密データまたは過剰なストレージ領域の消費: Git 履歴を変更することには十分な理由があります。このブログ投稿では、 BFGを使用して Git 履歴からファイルを削除する方法を説明しました。 BFG の弱点は、ダイレクト パスがサポートされていないことです。そのため、サブフォルダー内のファイルやフォルダーを履歴から明確に削除することができません。そこで、代替ソリューションを検討するときが来ました。

.­.­.

WordPressのメモリ制限

要約: 値を手動で設定するか、デフォルト値を使用します WP_MEMORY_LIMIT/WP_MAX_MEMORY_LIMIT 次の場合は効果がありません WP_MEMORY_LIMIT/WP_MAX_MEMORY_LIMIT PHPのメモリ制限以下(以下、 memory_limit と呼ばれる)です。 それらは、低すぎる値を設定するために使用されます memory_limit 推奨される最小値まで動的に。

.­.­.

クイックヒント:Iframeを変更する

サードパーティのiframe(ウィジェットなど)を埋め込んだ場合、CSSまたはJavaScriptのいずれかを使用してそのコンテンツにアクセスすることはできません(いわゆる同一生成元ポリシーのため)。 ただし、コードを変更するための非常に簡単な手順があります(iframe内で再ロードされる他のファイルでも)。 これを行うには、独自のPHPプロキシを介してURLをルーティングし、必要に応じてコンテンツを変更します。

.­.­.

ANTONアプリのコイン

ANTONは、1年生から10年生の生徒に最も人気のある学習アプリの1つです。 クラス。 一見、コイン(「コイン」)を取得するゲーミフィケーションの側面は、大人には奇妙に見えるかもしれませんが、それは私の子供だけでなく、モチベーションを著しく倍増させます。 それはあなたが触れないコインの小さな「クッション」さえも節約します。

.­.­.

IBANの堅牢性について

ドイツのIBANは、国コード(DE)、2桁のチェックデジット( ISO 7064に準拠)、銀行コード(8桁)、口座番号(サブ口座番号を含む10桁、欠落桁は先頭にゼロを追加)で構成され、22文字の長さになります。チェックデジットを計算するには、まず、いわゆるBBAN(銀行コードと口座番号)、ドイツの数値国コード\(1314\) 、およびチェックデジット\(00\)からシーケンスを作成します。

.­.­.

ゲームの数学Dobble

先日家族でゲームナイトをした際、子供たちはドブル(ハリー・ポッター版)を熱心に持ち出しました。私は5ラウンド負けた後(私の手札が相手のカードと全く一致しないまま)、どのプレイヤーも必ずどのラウンドでも一致するカードを見つけられると知って驚きました。しかし、その驚きはさらなる敗北へと繋がりました。子供たちの方が単純に速かったのです。

.­.­.

ビットコインのブロック時間

あなたが知っている:2つのビットコインブロック間の予想時間は平均\(10\)分です。 今、あなたは重要なビットコイン取引を行っており、それが次のブロックに表示されるかどうか、そしていつ表示されるかを熱心に待っています:

e50bfacc95975a4e7545d83d8954645f

.­.­.

コロナ数学

11.11.2021のRKI週報では、集中治療室の60歳以上のコロナ患者の\(36\%\)がすでに完全にワクチン接種されていることが22ページに記載されています。 この年齢層では、 \(87\%\)この時点で完全にワクチン接種されていました(18ページを参照)。

.­.­.

小数

有限の10進数は、分母が10の累乗である分数の表現が異なるため、小数と呼ばれます。 そうです:

$$\frac{z}{n} = \frac{q_1}{1} + \frac{q_2}{10} + \dots + \frac{q_k}{10^k}$$

\(k \in \mathbb{N}\)および\(q_k\)は、カンマの直後の\(k-1\)番目の場所です。

.­.­.

クイックヒント:ノードのバージョンを自動的に変更する

ノードバージョンの迅速なインストールと変更にnvmの使用をお勧めします。 あなたが明示的にプロジェクトに必要なノードのバージョンを指定したい場合は、package.jsonと同じフォルダに正確なバージョン番号(例えば「12.10.0」)と.nvmrcというファイルを置きます。 ここでフォルダーに変更すると、ファイルの次の拡張子〜/ .bash_profile for bash、コマンドnvm useを実行ます。これにより、このバージョンが自動的に設定されます。:

fe497e1c7f9f1547263eb3bffe15f9f6

.­.­.

今日コンテナクエリを使用する

レスポンシブウェブデザインが登場して以来、開発者はブラウザのビューポートサイズではなく、DOM要素の実際のサイズに基づいてスタイルを設定できる機能(メディアクエリを使用)を求めてきました。実際、コンテナクエリ(元々は要素クエリ)は、ブラウザにまだ実装されていないCSS機能の中で最も要望の多い機能と言えるでしょう。

.­.­.

Gitの履歴をクリーンアップする

パスワードなどの機密データは、可能であれば Git リポジトリではなく、.env ファイルに保存する必要があります。しかし、おそらく誰もが一度は誤って、Google Maps JS API スクリプトをGitHub Gistに (「public」として) 公開してしまい、自分のプライベート Maps API キーを隠蔽し忘れた経験があるでしょう。

.­.­.

クリップパスを使用して画像からSVGを切り取ります

SVG を使用して画像を切り抜く場合は、CSS プロパティ`clip-path`を使用することをお勧めします。以下のスクリプトは、いくつかの障害を取り除きます。Illustrator を使用して SVG を保存でき、SVG の (相対または絶対) URL を指定できます (Chrome は現在、インライン SVG のみをネイティブでサポートしています)。また、切り抜きは完全にレスポンシブです。

.­.­.

クイックヒント:WP_Queryと複数行フィールド

強力なWordPressクラス`WP_Query`の`meta_query`属性を使用するとメタフィールドに特定の値を持つ投稿をフィルタリングできます。複数行のメタフィールド(たとえば、 Advanced Custom Fieldsを使用)を作成し、この行区切りのフィールドに特定の値を含む投稿のみを検索したい場合は、MySQLの正規表現(REGEX )を使用することをお勧めします。

.­.­.

Adobe Animate アニメーションをネイティブに統合

前回の記事では、APNG エクスポートを使用して、 Adobe Animateのアニメーションを Web サイトに簡単に統合する方法について説明しました。 HTML5 Canvas Export を介したネイティブの方法もありますが、これを使用したことのある人なら誰でも、あらゆる場面で問題があることに気づくでしょう (応答性のサポートが不十分、既存の Web サイトへの統合が面倒、アニメーションごとにフレーム レートが異なるなど)。ここでは、ライブラリadobe-animate-embed が役に立ちます。

.­.­.

API キーのない Google マップ

通常、Google マップを統合する場合はMaps JavaScript API を使用します。これには API キーが必要であり、アクセス数が多いほどコストを過小評価してはなりません。 mapboxOpenStreetMapなどの優れた代替手段がありますが、Google が提供するさまざまな機能をまだ実現していません。 Google 自体も、目的に使用できる共有機能を介して API キーを使用しない方法を提供しています。

.­.­.

Adobe Animate APNG エクスポート

ブラウザのアニメーションPNGファイル対応は非常に進歩しており、 Animate CCで作成したアニメーションをAPNG形式で簡単にエクスポートし、シンプルな`<img>`タグを使ってWebページに埋め込むことができます。これは、JavaScriptを生成するAnimate CCの公開方法に代わる、シンプルで高品質な方法です。必要な手順は以下のとおりです。

.­.­.

WordPress検索を展開

例えば、WordPressのネイティブ検索を拡張してメタフィールドを含める場合は、ファイアードフィルターを確認することをお勧めします。ページネーションが引き続き機能し、将来の検索機能の改善が損なわれないようにするには、 `posts_search`フックの使用をお勧めします。以下のコードは、 REGEXP関数とExtractValue関数を使用して、この検索を拡張し、入力された検索語のいずれかがすべてのメタフィールドに含まれる投稿を含めるようにします。

.­.­.

SISTRIX可視性インデックスの計算

XoviとともにSISTRIXツールは、SEOの分野でドイツで最も広く使用されている分析プログラムです。 可視性インデックスは、Google検索でのページの可視性の準標準としての地位を確立しています。 その計算に含まれるパラメータは、例えばここここここここここで説明さていますが、正確な計算式は公式には公開されていません。 以下は私の6か月間の個人調査の結果であり、完全または正しいとは主張していません。

.­.­.

ゴデルの傑作

KurtGödelが1931年に彼の有名な不完全性定理を発表したとき、それは数学的論理の基礎を揺るがしました:彼は、可能な基礎として設定できるすべての公理は、数に関するすべてのステートメントを証明するために必然的に不完全であると反論しました-そしてそれを破壊しました数学理論の一貫性を証明するというヒルベルトの夢。

.­.­.

API経由でWhatsAppを使用する

データ保護に関するあらゆる懸念にもかかわらず、 WhatsAppは依然としてドイツ人のお気に入りのメッセンジャー アプリです。特別なWhatsApp Business アプリに加えて、 Facebook は企業にとってより興味深いものにするために、公式インターフェイスである WhatsApp Business API も作成しました。 Web アプリケーションからプログラムによって WhatsApp メッセージを送信したい場合は、他のオプションもあります。

.­.­.

CSSを使用してオーバーレイの背後にあるページをぼかします

たとえば、オーバーレイ(GDPRアクション主義の時代のルール)などの要素を使用していて、オーバーレイの背後の領域を柔らかくしたい場合、スタッキングコンテキストの問題に遭遇することがよくあります。 たとえば、要素が絶対位置または固定位置にある場合、フィルターが適用されていない場合とは異なる方法で突然表示されます。 しかし、救済策があります。

.­.­.

クイックヒント:Apacheを使用した分割テスト

シンプルなURL分割テストには、 Google Optimizeのような強力なツールは必要ありません。Apacheと.htaccessを使用して分割テストを実装することもできます。以下のコードスニペットは、https://vielhuber.de/test1.php(バリアント1)とhttps://vielhuber.de/test2.php(バリアント2)の2つのページからの訪問者を両方のバージョンに均等に分配します。ランダム化は現在のサーバー時刻に基づいています。

.­.­.

分岐関数の表記について

中括弧は、大文字と小文字を区別する関数定義の表記に使用されます。 この表現も削除でき、関数をそれなしの表記に縮小できるかどうかという単純な問題を追求します。 たとえば、関数

$$f: \mathbb{R} \to \mathbb{R}, f(x) = \left\{\begin{matrix} 42, & \text{falls } x = 0 \\ x, & \text{sonst} \end{matrix}\right.$$

基本的な四則演算を使用して 1 行の用語で表しますか?

.­.­.

GoogleSheetsの日付シリーズ

Google Sheetsでデータを視覚化すると、 \(x\)軸がテキスト値の欠落しているギャップを自動的に埋めることができないという問題が発生します\(x\)暦週など)。 この問題を解決するには、連続した一連の日付を生成し、発生したセルをカウントしてから、累積合計を視覚化します。

.­.­.

クイックヒント:PHP clearstatcache

間違いを見つけてください:

72aaa2dbd201d49fc2ee429ebf68f15b

.­.­.

Google TranslationAPIハッキング

Googleは、Google Cloudの一部として、使用量ベースのコスト構造を備えたGoogle TranslationAPIを提供しています。 キーなしで使用できるが、ほんの数回の要求の後で機能することを拒否する、文書化されていないAPIもあります。 Google Chromeのウェブサイト翻訳機能を使用すると、目立った制限なしにページを非常に高品質に翻訳できることがわかります。

.­.­.

クイックヒント:Gitの自動タグ付け

GitHubComposerを連携させる場合、 `git tag`コマンドでバージョン番号を割り当てることは必須です。以下のコマンドラインコマンドは、現在のタグを特定し、 SemVerに従ってバージョン番号を1つずつ増やします。例えば、バージョン1.1.0は1.0.9の後に続きます。タグが割り当てられていない場合は、自動的に1.0.0というタグが付けられます。flimsyや` git hooks`などのツール使用すると、この面倒なタグ付けプロセスを短縮できます。

8cd852c96ec1e60e8a5ac1f3614b2397

.­.­.

MySQLトリガーの編集

残念ながら、 MySQLにはALTER TRIGGER機能がありません。既存のトリガーを編集するには、まずトリガーを削除してから再生成する必要があります。CREATE TRIGGERステートメントはinformation_schemaを介して間接的にアクセスできます。これにより、トリガーを間接的に変更できます。これを行うには、次のSELECTコマンドの結果に変更を加え(データベース名とトリガー名を変更した後)、クエリを実行します。

.­.­.

VanillaJSで変更イベントをトリガーする

VanillaJSは、 ES6以降、ほぼすべての分野でベテランのjQueryと同等であり、現在でははるかに優れています。 したがって、レガシーコードをjQueryから徐々に移行することで成果が得られます。 ただし、手動変更イベントをトリガーする場合は注意が必要です。 たとえば、 document.addEventListenerjQuery.change()ではトリガーされません。 次の概要は、特別な機能をまとめたものです。

.­.­.

PHPとJSでCookieを制御する

独自またはサードパーティのスクリプトを使用した Cookie の設定は、PHP と JavaScript の両方を使用して細かく制御できます。これは、Planet49 に対する裁判所の判決後に Cookie ソリューションを実装するための十分な解決策ではありませんが (ここでは、Google Analytics などの追跡ツールがそもそも追跡しないため、Cookie を設定しないことが重要です)、一般的に Cookie をホワイト/ブラックリストに登録することは理にかなっています。

.­.­.

Windowsのスクリプトを介してデバイスを非アクティブ化する

電力を節約したり、自分の監視パラノイアを減らしたりするために、自分のコンピュータで使用されていないデバイスを完全に切断することをお勧めします。 サウンドボックスやWebサイトなどのデバイスは、デバイスマネージャーを介して従来の方法で非アクティブ化/アクティブ化できます。 すべてがスクリプトを介して機能します。 これを行う標準的な方法は、以前はdevconでした。 Windows 10は、 PowerShellを介してこれを行うためのより便利な方法を提供するようになりました。

.­.­.

Skypeの背景のぼかし

Skype には、ちょっと隠れた便利な機能があります。ビデオ送信中に、ビデオ ボタンをクリックして「背景をぼかす」機能を使用すると、簡単に背景を自動的にぼかすことができます。人工知能の助けを借りて、これは深度情報がなくても、あらゆるカメラで機能します。そうすれば、全体がよりプロフェッショナルに見え、プライベートなことや会話にとって重要ではないことは背景に隠れます。

.­.­.

OPcachePHPブートアップの最適化

たとえば、 WordPressJoomlaLaravelに基づいており、ユーザー固有のコンテンツを含まない Web サイトの場合は、すべてのページを静的 HTML キャッシュに保持し、バックエンドに変更があった場合にのみキャッシュを手動 (または自動) で再生成することをお勧めします。ただし、セッションと Cookie、または言語と場所に依存する動的コンテンツがページに含まれている場合は、 OPcacheの使用が適しています。

.­.­.

IllustratorからのSVGエクスポート

SVGは、今日のWebで中心的な役割を果たします。 アイコンフォントが置き換えられただけでなく、CSSまたはJavaScriptを介した操作の可能性も提供します。 Adobe IllustratorからWeb用のベクターグラフィックをSVGとして保存する場合は、落とし穴を回避し、読み込み時間を短縮するためにいくつかの設定を行う必要があります。これについては、次の記事で説明します。

.­.­.

プロジェクトオイラー:格子パス

Project Eulerは、数学的な背景を持つ、刺激的なプログラミング問題集です。これらの問題は、妥当な時間内に目標を達成するために、高度なアルゴリズムの開発を必要とするように設計されています。今回は、単純な組み合わせ的手法で解ける問題15「格子経路」を解いてみましょう。

.­.­.

WordPressの自動更新

WordPressはバージョン3.7以降、バックグラウンド更新機能を標準で実装し、マイナーリリースでは自動的に有効化しています。フィルターを使用することで、自動更新の対象をより細かく制御できます。マイナーアップデート、メジャーアップデート、プラグイン、テーマ、翻訳など、すべてのアップデートを永続的に完全に自動インストールする機能はサポートされていませんが、他の方法で容易に実現できます。

.­.­.

Google Sheets:式の拡張

Google スプレッドシート内の列全体に数式を拡張するには、便利なARRAYFORMULA関数を使用することをお勧めします。残念ながら、これはQUERYINDIRECTなどの他の重要な関数と組み合わせて機能しません。そのため、 Google Apps Script を使用してロジックを完全にカスタマイズするか、手動で数式を最後の行までコピーする必要があります。

.­.­.

シンプソンパラドックス

シンプソンのパラドックスは、簡単に理解できると同時に、統計における驚くべき現象の1つです。 データのグループが特定の傾向を示すたびに発生しますが、グループを組み合わせるとその傾向は逆転します。 簡単な例の助けを借りて、パラドックスはすぐに理解することができます。

.­.­.

クイックヒント:Googleタグマネージャー

Google Tag Managerは、追跡スクリプトを統合するための事実上の標準としての地位を確立しています。 これにより、責任(オンラインマーケティングとプログラミング)が明確に分離され、他方では、追加の展開チャネルを介して追跡をすばやく設定および変更できます。 トリガーを設定するための2つの小さなヒントを次に示します。

.­.­.

クイックヒント:FRITZ!ボックスWLANホットスポット

FRITZ!OS 07.10以降、インターネットに障害が発生した場合、FRITZ!Boxは一時的に携帯電話のワイヤレスホットスポットをフォールバックとして使用できます。 この機能は、 [インターネット]> [データへのアクセス]> [インターネットプロバイダー]> [WLANを介した既存のアクセス]の下に隠されています。 その後、FRITZ!ボックスはそれ自体がルーターとして機能し、ネットワークに独自のアドレス範囲を提供します。 インターネットが再び利用可能になったら、設定をリセットするだけです。 また、 [WLAN]> [ワイヤレスネットワーク]> [2.4GHz周波数帯域がアクティブ]および[インターネット]> [データへのアクセス] > [IPv6]> [IPv6サポートがアクティブ]のオプションにチェックマークを付ける必要がありました。

.­.­.

フラワーオブライフ

フラワー・オブ・ライフは、寺院や写本、そして近年では大衆文化にも数千年にわたり登場してきた、花のような幾何学模様としてよく知られています。この模様は秘教においても重要な役割を果たしています。ここではそれらのことは一旦置いておき、等間隔に配置された複数の円が重なり合う、この幾何学的形状のシンプルな構造に焦点を当てます。

.­.­.

Outlookでのメールの遅延

非同期通信媒体である電子メールは、 SlackDiscordを巡るあらゆる破滅の予言にもかかわらず、世界中のビジネスにおいて支配的な通信媒体です。 Merlin Mann の Inbox Zero 以外にも、いわゆる電子メールの遅延、つまり電子メールの配信の遅延など、毎日大量の電子メールに対処するための戦略が他にも数多くあります。

.­.­.

数字のスパイラル

過去数日間、私はStackExchangeで整数のスパイラルに関する次の質問を調査してきました。 次の整数スパイラルの\(n\)番目の要素の座標の閉じた式を探しています。これは、原点から外側に、さらに無限に伸びています。:

..  9 10 11 12
23  8  1  2 13
22  7  0  3 14
21  6  5  4 15
20 19 18 17 16
.­.­.

GoogleSheetsの読み取り権

Google スプレッドシートでは、ワークシート、列、行の編集に関して、ユーザーごとに詳細なルールを設定できます。しかし残念ながら、読み取りアクセスを制限する機能はありません。これは、例えば顧客には関連するチケットのみを表示したり、従業員には自分が担当しているプロジェクトのみを表示したりするなど、多くの場面で非常に役立ちます。

.­.­.

ヤーンプラグアンドプレイ

npmは、Node.js のデフォルトのパッケージ マネージャーです。 Facebook は長い間、 Yarnと呼ばれる代替パッケージ管理ソリューションを開発してきました。 Yarn はデフォルトのソリューションとして GitHub の Readme から徐々に消えつつあるようで、公式サイトの統計によると、パッケージのインストールの一部のみが Yarn で実行されています。それでも、枠にとらわれずに検討する価値はあります。

.­.­.

PDFをLaTeXに変換する


タイプ設定システム\(\TeX\)は、1977年に伝説的なDonald E.Knuthによって開発されました。 ソフトウェアパッケージ\(\LaTeX\)は、科学論文を作成する際の標準的なレパートリーの一部です。 次の2つのツールを使用すると、すでに生成されたPDFと手書きのメモを完全に自動的にTeXに変換できます。 結果は非常に有望です。

.­.­.

シミュレーションの議論

Nick Bostromのシミュレーションの議論は、驚くほどシンプルで明確です。 それは私たちがシミュレーションに生きていることを証明しようとはしませんが、代わりに3つの可能性をエレガントに定式化します。そのうちの1つは真実でなければなりません。 Elon Muskも同様の論文を提唱しており、この論文は広く一般に知られています。 公式は14年以上前のもので、同じくらい多くのページが短いです。 中心的なステートメントは、理解しやすくコンパクトです。

.­.­.

WPML + ACF使用時の重大なバグ

多言語対応用の強力なWPMLプラグインと、独自のフィールド用の高度なカスタムフィールドは、多くのインストールで標準装備されています。 誤動作とデータ損失が相まって発生すると煩わしいです。 この件に関するバグレポートは数年前のものであり、未回答です(ここここここここここ)。 問題を詳しく調べたところです。

.­.­.

Facebook In AppBrowserでのファイルのアップロード

一部の Android スマートフォンでは、プロモートされたランディング ページまたはリンクされたランディング ページ内のアップロード フィールドに accept 属性が指定されている場合、Facebook と Instagram の両方のアプリ内ブラウザーが (今日の時点で) 正しく動作しません。したがって、ボタンには機能がありませんでした。 Facebook アプリ以外の外部の通常のブラウザでページを開いた場合は、すべて問題ありません。これは迷惑ですが (特に長い間報告されているため)、回避策を講じれば解決できます。

.­.­.

Chrome Devtools:DOM要素を移動する

Google Chrome の開発者ツールは、ブラウザ市場で最も強力なツールの 1 つです。毎月新しい機能が追加され、Google はYouTubeでそれらを簡潔に紹介しています。しかし、人生で喜びをもたらすのは、しばしば小さなことです。Google Chrome で DOM 要素を削除したい場合は、Delete キーで削除できます。しかし、DOM 要素をドラッグ アンド ドロップで簡単に移動できることに、今日初めて気づきました。:

.­.­.

クイックヒント:git status --r

Gitユニバースの黄金のルールは、「早くそして頻繁にコミットする」です。 夜が少し長かった場合、または自分のコンピューターの現在の状況の概要が必要な場合は、コマンドを使用すると

d8a38f92d0baa14f9d4568826c13ad46

現在のフォルダーまたは任意のサブフォルダーにあるすべてのリポジトリの「gitstatus」で、値を概要に集約します:

.­.­.

Linux用WindowsサブシステムのLAMPスタック

最適な開発環境を探す際、Windows 10 は、 XAMPPWAMPMAMPのような完全なソリューションや手動によるネイティブインストールVagrant ( ScotchBox ) やDocker ( DevilBoxLaradock ) のような仮想化ソリューション以外にも、さまざまなオプションを提供しています。しかし、自由な設定、真のワイルドカード SSL 証明書、ローカル ネットワーク上のすべてのデバイスからのアクセス、高い安定性とパフォーマンスなど、私の要件を満たすソリューションは 1 つを除いてすべてありませんでした。

.­.­.

Laravelの雄弁な関係のための秘訣

Laravelの強みの 1 つは、そのエレガントな構文です。 Laravel に多数のモデルとリレーションシップがある場合 (データベース内に多数のテーブルがあるため)、走査は多くの場合、エレガントではないコードで終了する可能性があります。時間が経つにつれて、3 つの小さな拡張機能が私にとって成功していることが証明されました。以下に簡単に紹介したいと思います。これを行うには、いくつかの継承、魔法のメソッド、カスタム コレクションを使用するだけです。

.­.­.

.gitへのパブリックアクセスを防止する

Gitバージョン管理は、現在ではほぼすべての Web プロジェクトおよび環境 (本番環境を含む) で標準的な手法となっています。Git は常に`.git`というサブディレクトリを作成しますが、これが Web サイトの公開ディレクトリと同じ階層にある場合、機密ファイルが公開されてしまう可能性があります (例えば、 `/.git/logs /HEAD` にアクセスすると最新のコミットが表示されます)。このガイドでは、ディレクトリ一覧がなくても別の Git リポジトリをクローンする方法を詳しく説明します。

.­.­.

Node.js / npm /ルートのないComposer

以前のブログ投稿でHerokuを使用してNode.jsを無料でホストする方法について説明しました。 次に、数行のコードを使用して、ルート権限なしで他の共有ホストにNode.jsnpm 、およびComposerインストールする方法を示します。 これを使用すると、パッケージをインストールしたり、Vue.jsアプリケーションをデプロイしたり、Express.jsサーバーを起動したりできます。 私たちは常にユーザーディレクトリで作業し、 nvm (ノードパッケージマネージャー)を使用します。

.­.­.

PHP <7.2の連想配列のバグ

PHP <7.2では、正しくアクセスできなくなった配列を作成できます:

91367d1c4636fd753b381406024e303c

あなたはそれでいくつかのことをすることができます。

.­.­.

SSH接続の直後にコマンドを実行する

以下のコマンドは、サーバーへの SSH 接続を確立し、いくつかのコマンド (例えば、サブディレクトリに移動して`git status` を実行する) を実行し、シェルを開いたままにします。これにより、色付きサブシェルを有効にする `.bashrc` ファイルが読み込まれます。コツは、目的のコマンドを含む一時ファイル `/tmp/initfile` を保存し、`--init-file` コマンドを使用してサブシェル (この場合は `bash`) を起動することです。この `initfile` 内では、痕跡を残さないように同じファイルがすぐに削除されます。

.­.­.

管理者としてのネットワークドライブ

Windowsエクスプローラーでネットワークドライブをマッピングしても、これはシステム全体に適用されるのではなく、現在のユーザーアカウントにのみ適用されます。つまり、管理者権限で実行されているアプリケーションはこのネットワークドライブにアクセスできません。これを簡単に変更するには、レジストリキーHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Systemに EnableLinkedConnections という名前の新しい DWORD (32 ビット) 値を作成し、値を 1 に設定コンピューターを再起動してください。そうすれば、マッピングされたネットワークドライブがどこからでも表示されるようになります。

.­.­.

クイックヒント:ドライブとしてフォルダを含める

何度も使用するWindowsのローカルフォルダにすばやくアクセスしたい場合は、独自のドライブ文字を割り当てるだけです。 たとえば、パスC:\ Users \ David \ Downloadsを指定できないため、「Connectnetworkdrive」を介した迂回のみがあります。 解決策として、ドライブのいわゆる管理共有を入力します。これは、すべてのフォルダーにデフォルトで存在します。上記の例では、これは\\ localhost \ c $ \ Users \ David \ Downloadsになります。

.­.­.

カエルを捕まえる

カエルが数直線上を飛び跳ねており、目標はそれを捕まえることです。飛び跳ねることと捕まえることは交互に行われます。カエルは位置\(s \in \mathbb{Z}\)からスタートし、移動するたびに\(z \in \mathbb{Z}\)だけジャンプします ( \(z>0\)の場合は右にジャンプし、そうでない場合は左にジャンプします)。 \(z\)どのジャンプでも同じです。カエルを捕まえるには、整数の位置を指定する必要があります。 \(z\)\(s\)もわかりません。カエルを必ず捕まえることができる手順があることを示します。

.­.­.

Windows10の長いファイル名

フォルダやファイルへのパスを最大 255 文字に制限するという、ほぼ 30 年前から存在する制限に遭遇するのは、Windows でnpm を使用する場合だけではありません。ここで問題があるのは NTFS ではなく、 LFNです。これは、迷惑なバグやオペレーティング システム間の非互換性につながります。これはWSLの時代には残念な状況ですが、幸いなことに、しばらくの間、レジストリで自分で修正することができました。

.­.­.

LocalhostのLaravelキュー

PHPフレームワークのLaravelでは、本番環境において、スーパーバイザーなどのワーカーが、例えばRedisに保存されたジョブの実行を確実にします。ローカルホスト上でこれに完全に依存しないようにしたい場合は、同期ドライバを使用してジョブを即座に実行できます。ただし、この方法には、現在のPHPプロセスがブロックされ、ジョブが完了するまでリクエストがハングアップするという欠点があります。

.­.­.

クイックヒント:GoogleAnalyticsで目標をバンドルする

Google AnalyticsのJavaScriptライブラリであるanalytics.jsを使用すると、ウェブサイト上のあらゆるイベントを追跡できます。これらのイベントには、例えば、滞在時間の正確な測定、訪問者の最大スクロール深度、フォーム送信などの個々のアクションが含まれます。後で広告キャンペーンを評価したり、A/Bテストを実施したりする場合は、いわゆる目標を作成します。

.­.­.

実用的なキャッシュの無効化

サーバーサイドレンダリングは、ウェブサイトやアプリケーションにおいて標準的な手法となっています。Google Chromeなどのブラウザは、後続のリクエストの読み込み時間を最小限に抑えるため、可能な限り多くのデータをキャッシュする傾向があります。CSS、JS、画像ファイルのキャッシュ無効化は、 `mod_pagespeed``Expires` / `Cache`制御ヘッダー、キャッシュマニフェスト、またはより実用的かつ直接的な方法として、ファイル名にカスタムパラメータを追加することで実現できます。

.­.­.

ビットバケットキーとSSHキー

プロバイダーのBitbucketは、リポジトリレベルで書き込みアクセス権を持つSSHキーを保存する可能性を(有料の標準およびプレミアム料金でも)提供していません。 個人のSSHキーを本番サーバーに保存することはできません。そうしないと、現在作業中の他のすべてのプロジェクトにそこからアクセスできます。 いわゆるアクセスキーがありますが、これらは読み取り権限のみを許可します。

.­.­.

ネットワークドライブ経由のWindowsSysinternals

Mark Russinovich氏のSysinternalsツールは、Windowsコンピューターにとって不可欠です。常に最新バージョンをすぐに利用できるように、ネットワークドライブとしてマッピングしてください。コマンドプロンプトで(一般ユーザーとして) `net use s: \\live.sysinternals.com\DavWWWRoot`コマンドを実行するだけです。これにより、ドライブS上のPsList、PsKill、Process Explorerなどの便利なツールにポータブルにアクセスできます。

.­.­.

クイックヒント:Googleシートとカレンダーウィーク

特定の日付の暦週を出力するときは、Google Sheetsで注意する必要があります(Microsoft Excelの場合と同様)。 関数= CALENDAR WEEK(TODAY())は、年の最初の日が常に暦週1に割り当てられるアメリカの標準を使用して計算します。 ドイツでは、これは別の方法で定義されます。ここで、最初の暦週は、少なくとも4日が新年に入る週です。 Google Sheetsでは、問題を解決できます( = SHORTEN((TODAY()-DATE(YEAR(TODAY()-REST(TODAY()-2; 7)+3); 1; REST(TODAY(TODAY( )-2; 7)-9))/ 7)および変更された= CALENDAR WEEK(TODAY(); 21) )特別に設計された関数= ISOWEEKNUM(TODAY())で簡単に。

.­.­.

Chrome58の自己署名SSL証明書

Let's Encryptの登場以来、暗号化されたウェブサイトは標準的なものとなっています。SSL証明書はローカル開発においても事実上不可欠であり(例えば、 navigator.geolocationはローカルでのSSL暗号化を必要とします)、Chromeバージョン58以降、 CN(Common Name)のサポートは終了し、SAN(Subject Alternative Name)が必須となりました。そのため、Chromeは従来の方法で作成されたSSL証明書を受け付けなくなりました。

.­.­.

二人の年齢の二倍

同じ誕生日ではない 2 人の人\(A\)\(B\)について考えてみましょう。ここで\(A\)\(B\)よりも若いです。表示: 次の条件が適用される年齢星座\(a,b \in \mathbb{N}\)がちょうど 2 つあります: \(2\cdot a = b\) 。まず、 \(d \( d = d_0 + d_1 \) \) , \(A\) \(d \in \mathbb{R}^+\) \in \mathbb {R}, d_1 \in [0;1[\) を使用して、 \(A\) (A\) と\(B\)の年齢差\( d_0 \in \mathbb{N}_0, d_1 \in \mathbb{R}, d_1 \in [0;1[\) 。ここで、 \(A\)が誕生した後の任意の時刻\(x \in \mathbb{R}^+\)\(x = x_0 + x_1\)\(x_0 \in \mathbb{N}_0, x_1 \in \mathbb{R}, x_1 \in [0;1[\)

.­.­.

Gitと空のフォルダ

Git はフォルダーを認識せず、ファイルのみを認識するため、空のフォルダー構造がリポジトリに保存されることはありません。多くのフレームワークやプロジェクトはこれらを絶対に必要とするため、最終的にはそこに収まるはずです。一般的な方法は、フォルダー構造を暗黙的に指定する、いわゆるプレースホルダー ファイル (.gitkeep と呼ばれることが多い) を作成することです。これらのファイルは簡単に作成でき、必要に応じて、フォルダー内の他のファイルが無視されるようにすることもできます。

.­.­.

Herokuを使用した無料のNode.jsホスティング

Node.jsのホスティングは、特にドイツ語圏の国では、まだあまり普及していません。 アメリカのクラウド会社Herokuは、ここでソリューションを提供しています-さらには無料です。 「インフラストラクチャではなくアプリを構築する」というパラダイムに常に気づきますが、それでも制限はほとんどありません。 例として、 PhantomJSに基づく小さなcronジョブを実装しています。このジョブは、毎日Webサイトを廃棄し、ページタイトルを電子メールで送信します。

.­.­.

Cantorのペアリング機能

対角引数に加えて、Georg CantorはCantorペアリング関数\(\mathbb{N}^2 \to \mathbb{W}, \quad c(x,y) = \binom{x+y+1}{2}+x = z\)も開発しました\(\mathbb{N}^2 \to \mathbb{W}, \quad c(x,y) = \binom{x+y+1}{2}+x = z\) 、任意の2つの数値\(x,y \in \mathbb{N}\)を新しい数値\(z \in \mathbb{N}\)エンコードします。 たとえば、 \(c(3,4)=\binom{3+4+1}{2}+3 = \binom{8}{2}+3=\frac{8!}{6!\cdot 2!} +3 = 31 = z\)番号\(31\)内の番号\(3\)および\(4\)一意のコーディング。 表示:値のセット\(\mathbb{W} = \mathbb{N}\) 、つまり\(z\)はすべての自然数を想定しています。

.­.­.

地球とエンドウ豆

地球 ( \(r_1 = 6370km\)の球として) とエンドウ豆 ( \(r_2 = 2mm\)の球として) を考え、赤道を横切ってロープを張り、表面にしっかりと配置します。次に、両方のロープをそれぞれ 1 メートル延長します。両方のケーブルが赤道の上に完全に伸びているはずですが、完全に地表上にあるわけではなく、赤道の上に浮かんでいます。ロープは地表からどのくらいの高さ、エンドウ豆の上にどのくらいの高さで浮かびますか?

.­.­.

アナログクロックの確率

ダイヤルの右半分にあるアナログ時計の3つの手は、1日の何パーセントにありますか? まず、24時間のうち12時間(50%)ごとに右側にある時針を見てください。 この時点から、分針は12時間のうち6時間で右側(25%)になります。 この6時間のうち、秒針は右側に3時間費やしています(12.5%)。

.­.­.

Laravel:雄弁な関係を扱う

Laravel を使用すると、Eloquent を使用してデータベースとの通信がはるかに簡単になります。 Eloquent Relationships を使用する場合、動的変数を呼び出すとき (PHP のマジック メソッドを使用)、モデルのインスタンスは新しい変更を反映せず、最初に呼び出されたときに永続的にキャッシュされることに注意する必要があります。

.­.­.

Bitbucket:Git履歴からフォルダーを削除します

Bitbucketで Git をホストする場合、2 GB のハード制限があります。これを超えると、リポジトリへの読み取り専用アクセスのみが許可されます。これを防ぐには、たとえば、大きなフォルダーやファイルをコミットから遡及的に削除します。しかし、他のケースでも (アクセス データが履歴に紛れ込んだ場合や、node_modules が再びマスターになった場合)、その性質に反して、Git の履歴を遡及的に操作する必要があります。

.­.­.

DomainFactoryからのSSL証明書をIISに統合する

Let's Encryptの時代において、暗号化されたウェブサイトは標準となっています。しかしながら、特に信頼性の高い所有者検証機能を備えたワイルドカード証明書や拡張証明書も頻繁に必要とされています。DomainFactory、外部でも使用できる費用対効果の高いSSL証明書を提供しています。OpenSSL使用すれば、 CSRなしで最新のIISサーバーにセットアップすることが可能です。以下に、必要な手順を簡単に説明します。

.­.­.

数字を推測するときの逆説的な勝利戦略

Thomas M. Coverは、1987年の「コミュニケーションと計算における未解決の問題」で次の驚くべき質問をしました。プレーヤー\(X\)は、ランダムに選択された2つの異なる自然数\(A\)\(B\)を2つの異なるものに書き込みます。一枚の紙を下向きにしてテーブルに置きます。 プレーヤー\(Y\)は、これらの紙の1つをランダムに選択し、番号を確認して、この番号がまだテーブルに裏向きになっている他の番号よりも小さいか大きいかを判断する必要があります。

.­.­.

サッカー&線形代数

サッカーの試合が始まると、ボールはフィールドの中央に置かれ、シフトとターンによってフィールドの周りを45分間移動します。 後半の初めに、ボールは再びフィールドの中央にあります。 線形代数の簡単な方法で、サーフェス上の無限の数のポイントが常に元の状態とまったく同じ位置にあるか、正確に2つあることを示します。

.­.­.

Laravel:ブレードテンプレートのデバッグ

Laravel 5.* でブレード テンプレートをデバッグすると、キャッシュされたビューを示す意味のないエラー メッセージが表示されることがよくあります。以前はすべてが改善されていました。バージョン 4 のデバッグ ビューには、より便利な機能が含まれており、視覚的にも魅力的でした。数行のコードを書くだけで、おっと(「クールな子供のための PHP エラー」)の助けを借りてこの機能を取り戻すことができます。

.­.­.

JavaScriptによるロゴの調和のとれた表示

参照、パートナー、顧客のいずれであっても、複数のロゴを調和して並べて表示したい場合が多くあります。 ロゴの比率はほとんど一貫していません。 デザインのサイズ表現については、直感に従うことがよくありますが、ロゴの領域を等しくすることで、視覚的に魅力的な表現を正確に計算する方法もあります。 次の例では、数行のJavaScriptでこれを行うことができます。

.­.­.

PHP / JSの変数が存在するかどうかを確認します

PHPとJavaScriptの変数を日常的に操作する場合、変数が空であるかどうかというクエリに出くわすことがよくあります。 チェックの目的で、ネイティブ関数とその違いを知ることは価値があります。 迷惑なことに、変数が存在するかどうかを直感的に確認する簡単な方法はありません。 以下のマトリックスは、これが何を意味するかを示しています。 ただし、必要なものは小さなヘルパー関数で後付けすることができます。

.­.­.

Sipgate.ioによる大規模な電話

sipgate.ioを使用して SipgateはエキサイティングなクラウドAPIを作成しました。このAPIを使用して、インターネットテレフォニーの多数のオプションを利用できます。 アカウントは無料です。また、機能ストアで無料の送信者番号を設定するオプションもあります。 sipgate.ioのドキュメントはまだ拡張可能ですが、公式のSipgate APIを少し読むだけで、エキサイティングなことをすぐに実現できます

.­.­.

SQLでの再帰

SQL に基づくリレーショナルデータベース管理システムは、階層型クエリや再帰クエリには部分的にしか適していません。ArangoDBような他のシステムの方が適しています ( GOTO 2016でこの点について素晴らしい講演がありました)。しかし、共通テーブル式 (CTE)を使用すれば、SQL で再帰クエリを作成することも可能で、例えば、従来の親/子テーブルに対してすべての祖先と子孫をクエリすることができます。

.­.­.

WordPress:アーカイブページを非アクティブ化

w3techs.comによると、現在、世界中のすべてのWebサイトの約27.4%がWordPressの助けを借りて運営されています。 多くの場合、これらはブログではありません。 WordPressは、多くの場合未使用のURLを自動的に生成し、Googleによってインデックス付けされた非常に多くのリンクを生成するため、Webサイトの運営者は画面に表示することさえできませんでした。 これらはすべて、簡単なコマンドで非アクティブ化できます。

.­.­.

PDFフォームフィールドの名前を一括で変更

私のように、何千ものフォームフィールド名の名前を変更するのが面倒な場合は、Acrobatに含まれているJavaScriptコンソールが理想的です。 これでは、JavaScriptコードを実行できるだけでなく、PDF内のすべてのコンテンツ(フォームフィールドを含む)にアクセスすることもできます。 JS APIには名前を変更するためのネイティブ関数がないため、フォームフィールドはすべてのプロパティとともにコピーされ、新しい名前が付けられます。

.­.­.

ショップウェア:バリアントの変更を修復する

Shopware 5では、既知の問題はまだ解決されていません。相互に排他的な構成オプションを使用して相互に依存するバリアントを含む記事を作成すると、フロントエンドで一部の組み合わせを選択できないため、注文できない場合があります。 プラグインの助けを借りて、問題は現時点で簡単に修正することができます。

.­.­.

素数の無限大のための1行

素数の無限大の多くの証拠があります-要素の本からのよく知られているユークリッドの定理は、基本的な数理論のコースで欠落していません。 2015年のAmericanMathematical Monthly(issue 122)で、Sam Northshieldは、1行の形式で、それほどエレガントな矛盾の証拠を公開しました。

.­.­.

Windowsコマンドラインを明るくする

鈍いWindowsコマンドプロンプトは、いくつかの簡単な手順で視覚的にアップグレードできます。 そのため、コマンドラインの色とサイズを調整できるだけでなく、機能的に拡張することもできます(バッファーを増やし、多数のUNIXツールをインストールします)。 コマンドプロンプトはPowerShell6.0または新しいWindows10 Bash Shellに近づきませんが、日常のタスクのために非表示にする必要はありません。

.­.­.

Joomlaの動的URL

コンテンツ管理システムでは、URLは事前に決定されておらず、投稿やメニュー項目のように静的に作成されるのではなく、データベースからオブジェクトにアクセスします。WordPress(こちらで説明されているように)と同様に、Joomlaでも(内部エイリアスシステムとは独立して)動的なURL構造を作成できます。これは、 JRouterを使用するか、.htaccessファイルに1行のコードを追加するだけで実現できます。

.­.­.

JavaScript PasteJacking

最新のブラウザはJavaScriptを使用して、ユーザーのクリップボードにアクセスし、読み書き操作を行うことができます。この技術自体は目新しいものではありませんが、近年、この機能を悪用してユーザーに被害を与える「ペーストジャッキング」と呼ばれる攻撃がオンライン上で増加しています。JavaScriptでこれを実装するのは非常に簡単です。

.­.­.

PostgreSQLの列を入れ替える

SQLテーブル列の交換は、MySQLの標準レパートリーの一部です。これは(まだ)PostgreSQLではサポートされていません。 公式ウィキは独自の記事を問題に捧げていますが、ビュー、インデックス、トリガーもサポートする実用的なソリューションを示していません。 次のクラスは、コマンドラインで(またはLaravel 5で直接)このジョブを実行します(MySQLとPostgreSQLの両方)。

.­.­.

Windowsエクスプローラーのクイックヒント

Windows Explorerのフォルダでコマンドプロンプトをすばやく開きたい場合は、マウスの右ボタンで(1レベル上)クリックし、フォルダのShiftキーを押したまま、コンテキストメニューから[ここでコマンドプロンプトを開く]を選択します。 フォルダ内にいるときに、別のより高速な方法を見つけました。ここで、現在のフォルダパスをクリックし、「cmd」と入力して、Enterキーを押して確定します。

.­.­.

WordPressカテゴリ:ツリービュー/継承

WordPressで階層型カテゴリ(タクソノミー)を扱う場合、管理画面で選択したカテゴリの表示が分かりにくく、投稿を子カテゴリに移動しても親カテゴリに自動的に移動されないといった問題に直面することがあります。これらの問題は、強力なフックシステム(アクションとフィルターの形式)を使えば、わずか数行のコードで簡単に解決できます。

.­.­.

PHP7と宇宙船オペレーター

スカラーデータタイプのタイプヒント最適化されたパフォーマンスなどの新機能に加えて、PHP 7には、多くの新しい便利な言語拡張機能も備わっています。 「宇宙船オペレーター」はついにPHPの世界に入りました(RubyとPerlのプログラマーは長い間それを知っていました)。 \($a <=> $b\)は、両方のオペランドが等しい場合にのみ\(0\) \($a <=> $b\)返し、左側のオペランドが大きい場合は\(1\) \($a <=> $b\)返し、それ以外の場合は\(-1\)返します。

.­.­.

IIS 7.5 PHPFastCGIタイムアウト

IIS 7.5 上の FastCGI 経由で PHP を統合する場合、デフォルトでは、すべてのスクリプトは 600 秒 (つまり 10 分) 後に中止されます。 php.ini 内のよく知られた変数「max_execution_time」を変更しても、これには影響しません。 FastCGI 設定も調整する必要があります。この目的のために、IIS は関連する変数を管理するための便利なインターフェイスを提供します。

.­.­.

確率論のパラドックス

確率の条件付き理論は、直感に反する解決策を備えた美しいタスクをもたらします。 よく知られている兄弟の問題に加えて、別の例を簡単に説明します。「現在、2人の子供がいます。一方は男の子で、木曜日に生まれました。もう一方の子供も男の子である確率はどれくらいですか?」

.­.­.

Git、Shopware、および空のフォルダー

Gitファイルバージョン管理システムは、無駄がなく、高速で、移植性があります。 Gitは常にオブジェクト、つまりファイルを処理します。 フォルダは、ファイルが含まれている場合にのみ作成されます。それ以外の場合、Gitはそれらを記録しません。 これは、いくつかのプロジェクトで不快な副作用があります。 たとえば、Shopwareショップシステムは、機能するためにフォルダ構造を厳密に順守することに依存しています。

.­.­.

ショップウェア:個別の送料

Shopwareには、計算に具体的に介入できる強力な送料モジュールがあります。 この場合、次のシナリオを実装します。記事ごとの送料は、最初に記事の重量に応じて決定されます(重量制限が指定されています)。 特別な例外がある場合にのみ、各アイテムに固定送料を設定できるようにする必要があります。

.­.­.

WordPressの動的パーマリンク

WordPressパーマリンクシステムは、構造タグの助けを借りて、あなた自身のニーズに非常にうまく適合させることができます。 %postname%の設定は、おそらく最も一般的で実用的なソリューションです。 ただし、実際の動的リンクを実装する場合は、最初に独自のコードでシステムを拡張する必要があります。

.­.­.

WordおよびExcelの破損したハイパーリンク

WordやExcel文書内からハイパーリンクを開くと、デフォルトのブラウザで目的のURLが起動するはずだと誰もが思うだろう。しかし、不思議なことにそうはならず、望ましくない副作用が生じ、これらのOfficeプログラムではセッションやCookieでログイン保護されたページへのリンクを開くことができなくなる。

.­.­.

父の日のパラドックス

今日の父の日のために、娘は彼女の父が彼女の父が切望していた彼女自身を描いた絵を彼女の父に与えています。 娘は「あなたが望んでいた写真をあなたにあげます。私のプレゼントは驚きです」と言います。 父親は驚いて、この声明の真実を熟考します。

.­.­.

HTTPSを使用する場合と使用しない場合の動的スクリプトの統合

暗号化されていないスクリプトを<head>領域に含め、既存のSSL証明書が暗号化されたページを呼び出すと、これらのスクリプトはブロックされるため、実行されません。 プロトコルを単に省略した場合、Webサイトがhttps経由でアクセスされると、すべてのスクリプトが暗号化された形式で自動的に呼び出されます。//-それ以外の場合は暗号化されません。

.­.­.

ドロップダウンメニューの使いやすさ

多次元ドロップダウンメニューを操作する際、意図せず間違ったサブメニューを開いてしまったり、目的のサブメニューを誤って閉じてしまったりする問題に遭遇することがよくあります。これは、既に展開されているサブメニューに移動する際に、マウスカーソルが最上位レベルの該当メニューから離れてしまう場合に発生します。

.­.­.

ショップウェア:バリアントを自動的に非アクティブ化

Shopwareでは、すべてのバリアントの在庫レベルが0以下の場合、実際の注文に対して記事全体が非アクティブ化されます。 これをバリアントベースで実装するために、小さなプラグインをプログラムしました。Bootstrap.phpを以下に示します。

.­.­.

SSLを使用したダブルパスワードクエリ

以下のシナリオでは、必ず望ましくない副作用が発生します。htaccess/htpasswdでサイトを保護し、同時にSSL接続を強制する場合、常に同じパスワードを2回入力する必要があります(HTTP接続時とHTTPS接続時)。この問題は、Apache 2.4で導入された設定セクションを使用することで簡単に解決できます。

.­.­.

JavaScriptの複数行の文字列

JavaScriptを使用してプログラミングする場合、コードの数行に複数行の文字列を入力しても、複数行の文字列を実現できないことに気付くことがよくあります。 PHPやRubyなどの他の言語でのタスクは問題ではありませんが、JavaScriptを使用すると、最初は回避策を回避することしかできません。回避策の使用は、個人的な好みやブラウザーのサポートによって決定されます。

.­.­.

UTF-8とumlautsを使用したPHPのメール()

PHPを使用した電子メールの送信は、 PHPMailerなどの強力なクラスを使用して実装するのが最適です。 便利なラッパー機能により、UTF-8コンテンツの使用、画像の埋め込み、数行のコードで暗号化された添付ファイルの送信が可能になります。 オーバーヘッドを節約したい場合で、推奨事項に反して、PHP関数mail()を使用すると、遅くともumlautsとUTF-8を使用するときに問題が発生します。

.­.­.

GooglePageSpeedインサイトとグーグルアナリティクス

W3Cマークアップ検証サービスGoogle PageSpeed Insightsのような検証ツールは、ウェブサイトのコードとパフォーマンスを客観的に評価するのに役立ちます。特にGoogleは、 「ファーストビュー」といった概念で業界全体に影響を与え、画像圧縮やキャッシュに関する厳格ながらも有用なガイドラインも設定しています。しかし、そうすることで、Google自身がつまずくこともあります。

.­.­.

ようこそJavaScript2.0

JavaScriptはウェブを席巻しており、その中核を成すECMAScriptも成熟期を迎えています。今年半ばにリリース予定の新しい仕様(ES6またはJS2)には、既にテスト可能な数多くの革新的な機能が搭載されています。現在、Firefoxが最も優れたサポートを提供していますが、 Google Traceurなどのトランスパイラによるポリフィルも可能です。以下に、ES6の新機能の概要を簡単に説明します。

.­.­.

0,99999... = 1?

学校でも大学でも:次の方程式が正しいかどうかという質問が\( 0,99999... = 1 \)\( 0,99999... = 1 \)興味深い質問: \( 0,99999... = 1 \) 。 方程式の左側では無限大が\(0,99999... = A\) 、名前を付けます: \(0,99999... = A\) 。 係数\(10\)と単純な代数変換を掛けた後、最初の驚くべき洞察が得られます。

.­.­.

SQL:インデックスにもかかわらずパフォーマンスが低い

SQLデータベースの次のパフォーマンスの問題に直面しました。約1,000,000エントリの「users」と呼ばれるSQLテーブルで、今日の登録数の決定に許容できない28秒かかりました。 登録の時間は、「作成済み」列に「Ymd H:i:s」形式で保存されました。

.­.­.

小さなチェスの問題

よく知られている騎士の問題女王の問題に加えて、チェスの世界には他にも多くの刺激的な質問があります。 以前のブログエントリで2つの小さな好奇心に触れました。 チェスの問題を数学的に扱うと、数学が多くの質問に対して非常に単純でわかりやすい答えを提供することがすぐにわかります。

.­.­.

OneDriveでオンラインで利用可能なファイル

場合 OneDrive, ドロップボックス, グーグルドライブ, OwnCloud, Box.net: ファイルを保存するボックスに関係なく、サービスはほとんど同じです。 すべてのデスクトップおよびモバイルシステムで使用可能なクライアント、標準の暗号化されていないファイル、および共有オプションは、わずかに異なります。 ただし、Windows 8.1以降システムに永続的に統合されているOneDriveには、オンラインで利用できるファイルのみという特別な機能があります。

.­.­.

PHP:Windowsでのumlautsを使用したファイルアクセス

ウェブサーバー上のファイルは、常にスペースなし(「this is an image.jpg」など)、ウムラウトや特殊文字なし(「football.jpg」など)、バックスラッシュなし(「work\car.jpg」など)、小文字(「test.JPG」など)で保存する必要があります。しかし最近、クライアントのプロジェクトで、任意のファイル名を持つ多数の定義済みファイルにアクセスして処理する必要がありました。

.­.­.

ランキングリストを決定するためのSQLクエリ

今日、顧客プロジェクトで作業しているときに次のタスクに遭遇しました。列「id」と「score」を持つ SQL テーブル「user」を取得し、「score」に基づいて並べ替えられたすべてのユーザーのランキング リストを決定します。この中で、同じスコアを持つユーザーは同じランキングになります。ユーザー定義変数を使用すると、このタスクを直感的かつ簡単に解決できます。

.­.­.

Facebook SDK:サーバー側でトークンを確認する

Facebook SDKを使用する場合(より正確には、RESTインターフェイス内にFacebookログイン機能を実装する場合)、クライアントがFacebookから受け取ったトークンは、以降の操作を実行する前に、サーバーによって有効性を確認する必要があります。 。

.­.­.

Chrome DevTools:DOM要素に対処する

Chrome、Firefox、Opera、Safari、さらにはInternet Explorer:十分に設計された開発者ツールは、数年前までFirefoxと人気のFirebugプラグインのユニークなセールスポイントでしたが、強力な開発者ツールは現在、すべてのブラウザの標準スコープの一部であり、発見することがたくさんあります。与える。

.­.­.

SQLを使用したファイルシステムへのアクセス

最近、ファイルシステムにアクセスして、ファイルやフォルダの存在、あるいはその内容といった貴重な情報を取得する便利な方法を見つけました。これはPHPの` file_exists`関数に代わる非常に便利な方法となり得ます。なぜなら、ファイルの存在に関する情報は、クエリ内でソートや集計機能に利用できるからです。

.­.­.

キャンバスでアニメーション化された背景

アニメーション化されたベクターの背景は、フルスクリーンの写真やビデオを特徴とするWebランドスケープに多様性を加えることができます。 これがロード時間と幅広いハードウェアおよびソフトウェアのサポートと密接に関連していると便利です。 1つの解決策はキャンバスです。 JavaScriptによって制御されるHTML要素は、現在のすべてのブラウザーでサポートされており、モバイルデバイスで高性能に再現されます。

.­.­.

HTML要素のアスペクト比を修正

Web 開発者は、img 要素などとは異なり、サイズもアスペクト比も固定されていない HTML 要素を扱う際にジレンマに陥ることがよくあります。多くの場合、これらのオブジェクトが応答的に動作するようにしながら、幅と高さの比率が維持されるようにする必要があります。デフォルトでは、CSS はここで直感的なソリューションを提供しません。ただし、垂直パディング プロパティを利用すると、目的を達成できます。

.­.­.

ストック写真の使用に関する裁判所の判決

ケルン地方裁判所は先週、RedTubeスキャンダルで方針を転換し、問題のIPアドレスの公開を許可すべきではなかったが、今度は判決14 O 427/13で、非常に物議を醸し、疑わしい別の判決を下した。特定の画像エージェンシーのストックフォトの著作者は、その画像がURL経由で直接アクセスされる場合にも名前を明記しなければならない。

.­.­.

さようならブロック&インライン-ようこそHTML5

HTML5 仕様の革新は数多くあり、その多くはすでにブラウザの大部分でサポートされています。以下では、要素をネストするためのルールに対する興味深い変更を取り上げたいと思います。 HTML は常にブロック要素とインライン要素を区別してきました。たとえば、HTML4 のドキュメント タイプ定義では、 h1、p、および div がブロック要素としてリストされ、a、span、および img がインライン要素としてリストされます。

.­.­.

IISおよびApacheでのHTTPロギング

Unix 上の Apache と Windows システム上の IIS はどちらも、すぐに使用できる HTTP リクエストをファイル形式で記録します。ハッキング攻撃から保護するには、自分の Web サイトへのクエリを定期的に評価し、手動および自動で (たとえば、 AWStatsなどのログ ファイル アナライザーを使用して) 分析する必要があります。たとえば、広く使用されている構成では、関連するログ ファイルのパスは次のとおりです。:

  • /var/log/apache2/access.log (例:Ubuntu 12.04、Apache 2.2)
  • C:\inetpub\logs\LogFiles\W3SVC1\u_ex<YYMMDD>.log (例:Windows Server 2012 R2、IIS 8.5)
.­.­.

Joomla、IISおよびディレクトリ権限

Windows Server 2008R2上のJoomla3.2をIIS7.5と統合すると、ディレクトリ権限に関する問題が発生することがよくあります。これは、あまりにも寛大に選択された設定では不十分に解決されることがよくあります。 次のソリューションは安全で完全に機能します:

  • IIS_IUSRSグループには、C:\ inetpub \ wwwroot \:読み取りと実行、フォルダーの内容の表示、読み取り、書き込みの権限が必要です。
  • IIS_IUSRSグループには、C:\ Windows \ Temp \:読み取りと実行、フォルダーの内容の表示、読み取り、書き込みの権限が必要です。
  • ユーザーIUSRはIIS_IUSRSグループに属している必要があります([コンピューター管理]> [ローカルユーザーとグループ]> [グループ])

PHP 経由でアップロードされたすべてのファイルに対して追加の特別なディレクトリ権限 (SSH や FTP など) が必要な場合は、これらを C:\Windows\Temp\ フォルダにも設定する必要があります。 PHP 経由でファイルをアップロードする場合、PHP は最初にこのファイルを一時パスにコピーし、次に最終パスにコピーします。ファイルが一時ディレクトリに置かれた場合、その権利は継承され、最終ディレクトリに移動された後も保持されます。

.­.­.

匿名オンライン:不可能ですか?

NSAスキャンダルの時代に、当局や秘密サービスのデータ収集マニアから逃れるために、匿名でネットワークをナビゲートできるかどうか、そしてどのようにナビゲートできるかを考えているのは、ネットワークに精通したユーザーだけではありません。 ただし、これは多くの場合、エラーや誤った仮定につながります。 中心的な誤解は、IPアドレスの難読化に対する匿名性の低下です。

.­.­.

McFIT-新しいロゴ、新しい画像

ディスカウントフィットネスチェーン「McFIT」が新たな顔を見せている。以前はバナナの形をした明るい黄色のマスコットが青い文字を飾っていましたが、現在は無煙炭色の背景に黄色のリボンが巧みに絡み合って、抽象的な構造を形成しています。 FDP カラーの青と黄色はロゴだけでなく、McFIT ブランドの他のすべてのプリントアイテムにも使用されています。

.­.­.

Photoshop:時間を遡る

トーマスとジョンのノール兄弟が 1987 年に Adob​​e Photoshop の開発を始めたとき、私はまだ生まれていませんでした。 2013 年の現在、このソフトウェアは一般的に最も人気のあるプログラムの 1 つであり、画像編集分野では議論の余地のない市場リーダーとみなされています。 Adobe とコンピューター歴史博物館のおかげで、このソフトウェアは非常に特別な形式で後世に保存されることになりました。

.­.­.

王のゲームにおける好奇心

チェスは何世紀にもわたって人々を魅了してきました-そのルールは簡単に習得でき、その信じられないほどの深さは経験豊富なプレイヤーだけがアクセスできます(残念ながら私は彼らの一人ではありません)。 以下では、2つの簡単な質問に対処します。正しい一連の動きによって、黒の王が2人の白の女王に同時に攻撃される位置に到達することは可能ですか? これは2つの白い塔でも可能ですか?

.­.­.

大ヒットの代わりにDocu-soap:48fps

映画は通常、1 秒あたり 24 フル フレームで録画および再生されますが、ほぼ 100 年前の標準フォーマット「24p」はぐらついているようです。 24fps 投影の不快な副作用 (中速カメラのパンニング中の強いけいれんなど) を防ぐために、フレーム レートを 2 倍の 48 フレーム/秒以上に高める取り組みが長い間進められてきました。

.­.­.

ウェブサイトでスペルを確認する

自動スペルチェックと文法チェックは現在、単語処理プログラムの標準装備ですが、Webサイトのスペルチェックを自動的にチェックすることは、これまで比較的面倒でした。 Google Chromeは、複数行の入力フィールド(textarea)の統合チェックにより、この方向への第一歩を踏み出しました。 現在、これをWebサイト全体で可能にするサービスがあります。

.­.­.

リンク内の電話番号-セキュリティリスク?

数週間、訪問者が電話番号をタップしてモバイルデバイスで電話アプリを開くことができるようにする方法について報告しました。 現在、SIMカードを取り返しのつかないほどブロックしたり、ユーザーが何もしなくてもデバイスを工場出荷時の設定にリセットする可能性が出てきました。

.­.­.

興味深いメールの好奇心

目的地に確実にアクセスできるように、ドメイン名と電子メール アドレスは常に小文字にする必要がありますか?それともこれは全く関係ないのでしょうか?たとえば、Google のメール サーバーには、興味深い効果をもたらす奇妙な設定があります。これについては、以下で簡単に紹介します。

.­.­.

日常のトピックにおける証券取引所価格の設計

私はドイツのテレビのさまざまな番組のデザインを綿密にフォローしています。 企業の設計を永続的に保持するプログラムはほとんどありません。 午後10時15分にテレビ画面の前で行われるその日のトピックに関する会議の夜の儀式は、最近私に腹痛を引き起こしています。ここ数か月間、現在の証券取引所の価格の表示には、完全に紛らわしい配色が選択されています。

.­.­.

電話番号を正しくリンクする

独自の Web サイトをモバイル デバイス向けに最適化する場合は、さまざまな画面サイズ、最適化された読み込み時間、操作時の特殊機能 (ホバー効果など) に注意を払うだけでなく、デバイスの特殊機能も考慮する必要があります。これには(忘れている人もいるかもしれませんが)電話をかけることも含まれます。

.­.­.

ブログのコンテンツが重複している

Googleは、複数のウェブサイトに同じコンテンツが存在する場合、しばしばペナルティを課します。しかし、Googleのアルゴリズムは高度で、ヘッダーとフッターの要素が一貫しているか、あるいは同じテキストが異なるURLで2回アクセス可能になっているかを認識します。Googleがブログ記事の概要ページをどのように扱うかという問題は、特に興味深いものです。

.­.­.

WordPressのセキュリティを強化する

現在最も人気のあるコンテンツ管理システムであるWordPressのセキュリティは、2つの小さな設定を調整するだけで大幅に向上させることができます。必要なのはわずか5分と2行のコードだけです。この問題は様々なプラグインでも解決できますが、ここではプラグインを使わない解決策に絞って説明します。

.­.­.