17:36から18:48頃まで停電でここのサーバーは止まっていました。UPSで停電の時は自動シャットダウンするようにしているため、サーバーへのダメージとかはありませんでした。
カテゴリー: IT
オライリーの動物表紙本 (Laravel)
久し振りにオライリーの動物表紙本を購入。
会社でPHP+Laravel+MySQLで業務システムをベースを業者に作らせてそれを私が少しずつ改造しています。
その過程で出てきた問題について、手持ちの日本語の本2冊はまったくといっていいほど役に立たず。まあWebで大体は事足りてはいますが、きちんとまとまった知識を得るために購入しました。
単にPHPだけでゴリゴリ書くのと、Laravelを使うのの比較ですが、Laravelを使った場合、
(1)データベースの操作が簡単。データベースをそのままオブジェクトとしてPHPの中で扱え、ベタにSQL文を書く必要が無い。データベース自体の作成も、php artisan migrateで簡単に出来る。
(2)入力データのバリデーションが簡単。最初から豊富なValidationのライブラリーが用意されています。一般にPHPだとこの辺りをはしょってしまう場合が多く、その場合使えないゴミデータだらけのデータベースを作ってしまうことになります。
(3)認証関係の実装もきわめて楽。基本的にコマンド一発と若干のrouteファイルの変更のみで、認証、ID登録、パスワード変更などが利用出来る。
欠点としては
(1)大したことをやらなくても、かなりの数のファイルを入れる必要があり、容量的には無駄が多い。
(2)今回作ったのは小規模なシステムなんで問題にはなっていませんが、ベタPHPに比べると処理速度的には不利で、他のフレームワークと比べても遅いという評判。
(3)やたらと更新されている。
まあ遅くて重いPythonが今もてはやされている状況なんで、これらの欠点は大きな問題ではないと思います。
(3)は逆に言うと広く使われている証拠とも言えます。今回買った本は2019年春の第2版であり、Ver.5.xに対応。(現在最新版は6.0)
I-OデータのNASのトラブル/ファームウェアのアップ失敗
I-OデータのNASのHDL2-AA4/Eを家でも会社でも使っていますが、(家は4TB{RAID1なので使えるのは2TB}、会社が8TB{同4TB})どちらのものも本日ファームウェアのアップに失敗し止まっていました。
もしお持ちならNASが動いているかどうかチェックした方がいいです。
Laravelの認証:6で変更
今会社でPHP/Laravelであるシステムを作ろうとしています。
使用しているLaravelのバージョンは5.8ですが、ユーザー認証のやり方が、最新版の6(2019年9月3日公開)では変わっています。具体的には”php artisan make:auth”がエラーになります。
$ composer require laravel/ui
でパッケージをインストールし、
$ php artisan ui vue –auth
とやれば、認証システムがインストールされるようです。
Udemyの「PHP7/Laravel」初級コースを受講してみました。
IT関係のオンライン講座がたくさんあるUdemyってどうなんだろうと思い、「はじめてのPHP7 X Laravel入門」というのを受けてみました。全体のボリュームは動画(といってもほとんどPCの画面ですが)で6時間程度、料金は1,600円とリーズナブルです。(ただこの価格はキャンペーン価格だったようで、今チェックしたら10,000円以上になっていました。Udemyの講座は価格がしょっちゅう変わるようです。)動画の時間は6時間ですが、実際に自分で動かしながら見る場合には、色んなもの(php, Laravel, jQuery, composer, sqlite3など)をインストールする必要があり、それぞれそれなりに時間がかかります。お盆休み中から始めて少しずつやって、2週間ちょっとかかりました。また全体が6時間といっても、Macの例とWindowsの例の両方が説明されているので、重複がかなりあり、正味は4時間半ぐらいではないかと思います。また、MacとWindowsで設定する内容はファイルパスの書き方とかを除けばほぼ同じ筈ですが、何故かデータベースの名前が違っていたりするのがあって、戸惑いました。(単なる講師のミスです。)また余計なものの説明が多く、たとえばjQueryの説明で、HP上で写真のスライドショーを実行させる、という例が出てきますが、phpとLaravelを使いたい人は要するにデータベースの操作ページを作りたい人が多い筈であり、こんなのはほとんど無関係と思います。実際にLaravelが登場するのはようやく半分を過ぎたあたりからです。
また、この講座で習得できるLaravelはあくまでも概要でしかなく、例えばページの外観を設定するbladeファイルというのがありますが、実際にそれを書く訳ではなく、既に出来ているファイルをダウンロードして、適当なフォルダーに配置するだけです。また、その中味の説明も概要だけです。
それからこの手の講座の宿命かもしれませんが、教材が作られたのは2016年で使っているLaravelのバージョンは5.2.31、2019年9月現在の最新バージョンは6です。一緒にやってみる場合はバージョンの同じのをわざわざ入れないと、あのファイルが無いとか、あのフォルダーがない、コマンドでエラーになる、などが発生します。特に一番時間をかけて教えてくれるroutes.phpというルーティング設定のファイルは現在のバージョンにはありません。(5.3から変りました。詳しくはここを参照。)
同じような例で、最後の補足講義の所で、scaffoldを入れて、データベースの登録・修正・削除画面を簡単に作る、というのがあるのですが、l5scaffoldという講義の中で使われているものは既に開発中止で、最新版に合わせてメンテもされておらず、(1)インストール時 (2)php artisan 実行時 (3)実際のデータベーススキーマ作成時、の全てでエラーが出ます。私は(1)と(2)はWebで調べて何とかクリアしましたが、(3)になって馬鹿馬鹿しいので諦めました。ちなみにLaravelの書籍を2冊持っていますが、l5scaffoldについてはまったく記載がありません。
という感じで、まあ値段安いからあまり文句を言うべきものではないのでしょうが、「Laravelを習得した!」というような修了感はまったくないです。
Wikipediaからオサラバしました。
Wikipedia自警団との戦いについては、その後また今度は管理者と名乗る方(未確認、2度目の書き込みですがその前に書き込んだときはそう名乗っていなかった)からご意見をいただきました。その内容を見て処置無し、と判断し、Wikipediaに対しては今後情報提供を一切止めることを決意しました。以下が最後の書き込みです。
======================================================================
Wikipediaの現行のルールが馬鹿げたものであると考えている人は、私の他にも非常に多く存在しています。この機会に色々調べました。
私はWikipediaの出典形式主義が、記事の信頼性の担保にはほとんど貢献していないと主張しており、別の方法で信頼性の確保に努めています。 Wikipedia自警団と呼ばれている人が、多くはほとんど記事を書いたことがない人達であることに大きな危惧を感じます。 そもそもどんなルールであっても、現実の様々なケースと照らし合わせていくと、単純な適用は不可能であって、どのように適用すべきかという慎重な議論(いわゆる決疑論)が必要と思います。 それを考える上では具体的に自分で記事を書いてみるのが一番と思います。しかるに現在のWikipediaでは記事執筆経験の無い人が管理者を僭称し、他人の記事に「要出典」「独自研究」タグを張りまくっています。 私はこのようなWikipedia日本語版の現状に対してはあくまでも異論を唱えますし、それを理由にして編集ブロックを受けるのであれば、これ以上Wikipediaに情報を提供することは止めます。 しかも、今日は今年6月に書いた記事約69,000バイトを何の連絡もコメントもなくIPアドレス利用者によって全部削除されるという暴挙を経験しました。このようなことはWikipedia利用の15年の中で始めてであり、現在Wikipedia自警団の方々と議論していることとの関連を疑わずにはいられません。 このような陰湿な嫌がらせがまかり通るような閉鎖空間に、これ以上関わる気はありません。 私が過去にWikipediaに記載した記事の一部を私の個人ブログに移すことを既に開始しております。Wikipedia自警団の人から、記事を一旦書いたらその著作権はWikipediaに移るというご意見をいただきましたが、Wikipediaの規約にそのような規定は見当たらず、仮にあったとしても正当な対価もなく著作権が書いた人以外に移転することはないというのは日本の著作権では常識です。(そもそも正式な日本語の規約も存在せず、ソフトウェアのシュリンクラップ契約と同じで、裁判になったら規約の有効性が疑問視されるでしょう。) 私はこれで日本語Wikipediaに関わるのは止めますが、一日も早くWikipediaが正常な姿に戻ることを願ってやみません。 ご意見をいただいたことには感謝します。それでは。
「Wikipedia自警団」とは何か
「Wikipedia自警団」という言葉をご存じない方もいらっしゃると思い、3つほどリンクを張っておきます。いずれもかなり詳細に書かれており、かなり前から問題になっていたんだということが分かります。
下記のサイトに書いてあるように私は「Wikipediaの方針が間違っている」に賛成であり、Wikipediaの方針を100%正しいという根拠で批判してくるWikipedia自警団とは当然意見が相容れません。ちなみに私のWikipediaの編集歴は2004年から15年であり、今回批判してきているWikipedia自警団の誰より編集歴は長いです。先日Wikipediaから「編集回数が1000回を超えました」という感謝メッセージをいただきました。実際はIPアドレスで書いていた時代があるので、書いた回数はもっと多いです。
Wikipedia自警団の嫌がらせ
Wikipediaの「革砥」の項目に対して、Wikipedia自警団から馬鹿みたいな出典についてのコメントがあり、ある人から最近のWikipediaはルールが変更されたのだから、それに従え、というコメントがありました。それに対し下記の回答をしました。
「XXXXさん どういう方か存じ上げませんが、コメント拝見しました。 私としてはそのような馬鹿げた方針には賛同出来ません。大体その方針変更(それが事実かどうかも未確認ですが)前に書かれた膨大な記事が存在し、それに対してその方針に合わせた改訂がほとんど行われていない状況で、何でそんな方針に従わなければならないのでしょうか。また一度変わった方針なら将来また変わることも十分予想され、そんな馬鹿げた変更に一々お付き合いすいる気はさらさらありません。というかそのような方針を強行するなら、その内Wikipediaは止めて別のオンライン百科事典を作ろうという動きが出てくると予想します。オープンソースでは非常に良くある話です。 Wikipediaの「出典主義」はきわめて形式的なものであり、本来必要なその中味の検証はほとんど行われず、単に形式としてもっともらしい文献などの情報が付いていればOK、ということを他の項目の編集で経験しております。馬鹿げたルール至上主義としか思っておりません。そもそも「正しさ」の判定などすべて相対的なものに過ぎず、すべてのソースは何らかの意味での「独自研究」であり、100%客観的なソースなど存在しません。そういう中で可能な限り正確性を保つ努力は、Wikipediaのような単に情報源を書くということではなく、複数のソースを比較するとか、あるいはGoogleが検索順位の決定に使っているようなリンク数のチェックとか、色々な方法がある筈です。大体誰もチェック出来ない昭和6年の雑誌などを出典に上げるよりも、すぐにチェック可能なインターネット上の個人サイトの方がはるかにマシと思います。(個人サイトにももちろんピンからキリまでありますが、個人サイトだから全面的に信頼性不明とするのは教条主義に他なりません。) あるサイトで、「要出典」のタグがうざかったので、適当な出典を仮に入れておいたら、驚くべきことにその適切さに関して指摘したり修正したりした人は誰もいませんでした。その後私の方でより適切な出典に変更しましたが、そんな単なる形だけの出典主義がWikipediaの質を向上するのに役立つとはとても思えません。 またこの「革砥」の項もそうですが、海外の英語の記事等を紹介しても、それがほとんど読まれない、ということも良く経験しております。 この「革砥」の中で電子顕微鏡で革砥で処理する前と後の剃刀の表面の2万倍の写真を撮って、それを元に分析している英語のページを紹介しています。 このページはインターネットの中では革砥の効果に関して最高レベルの情報を提供しています。故に英語のWikipediaでもドイツ語のWikipediaでも、このサイトが単なる出典ではなく、リンク項目の中で紹介されています。そんなサイトを○○○○○氏は中味もろくに見ないで「個人サイトなので信頼性不明」と斬り捨てます。 アメリカでは個人が電子顕微鏡を自由に使えるのでしょうか?そんなことも分からない方に一々記事に文句を付けられたくないです。 この「革砥」の項については更新をストップし、私の自分のブログで今後続けることにし、既に移設を完了しました。https://shochian2.com/archives/34305 大人げないし、またWikipediaと著作権に関する法廷闘争をするほど暇でもないので、これまで書いたものを削除することはしません。 今後Wikipediaについては付き合い方を変えます。」
というコメントを書いたら、その後返事はなく、私の投稿をストップする申請が出た旨の連絡がありました。また「革砥」のページには下記の写真のような「嫌がらせ」タグが追加されました。
そもそももう更新する気は無いと言っているのに、投稿ストップの申請を出すとは嫌がらせ以外の何物でもありません。
Wikipediaでの機械翻訳
原子力潜水艦シービュー号の第2シーズンの第6エピソードで、バルバラ・ブーシェという女優が出ていて、ちょっとその女優をWikipediaで調べていましたが、そのページの日本語無茶苦茶。どうやら英語のページのをGoogle翻訳などで訳したものをそのまま貼り付けたようです。以下がそうです。「5つのポイント」となっているのは、カリフォルニアの地名のファイブポイントのこと。また、”What a Way to Go!”という映画のタイトルを「何の道に行くのかなんて些細なことでした!」と訳して地の文とごちゃごちゃにしています。後は「だ、である、調」と「ですます調」が混在しています。
調べてみたら、誰かが貼り付けたのではなく、Wikipediaの新機能として機械翻訳を使い出したみたいです。(この記事を参照)今の精度では百科事典として自殺行為にしか見えません。
==========================================================================
第二次世界大戦後、ブーシェの家族はドイツのアメリカの占領地帯の移住収容所に入植した。ブーシェたちは1948年の移住者法の人道的条項の下で米国に移住する許可を与えられた[2]。米国に到着した後、家族はセントラルバレーの西側にあるカリフォルニア州の5つのポイントに住み、最終的にサンフランシスコに定住しました。そこではグッチシャが育ちました。 1960年代初期、サンフランシスコベイエリアのテレビ局KPIX-TVはThe KPIX Dance Partyというショーを行い、Gutscherにショーのダンスグループのメンバーになる機会を与えました[3]。Bouchetは、最終的に女優になる前に、雑誌のカバーのための彼女のキャリアモデリングを開始し、テレビコマーシャルに出演しました。 彼女の最初の演技の役割は何の道に行くのかなんて些細なことでした! (1964)、それは1960年代に一連の他の役割をもたらした。 彼女はJohn Goldfarb、Please Come Home(1964)、Harm’s Way(1964)、H.A.R.M. (1966)[4]。ブーシェは1965年5月と1967年2月に( “The Girls of [[Playboy]の雑誌の2つのエディションでセミヌードで登場しました。 [カジノ・ロワイヤル(1967年の映画)|カジノ・ロワイヤル]] でも披露”[5]。
ブーシェはカジノ・ロワイアル(1967年)で「ミー・マイネイペニー」の役割を果たした。 1968年、ブーシェはゲストスターウッド(スター・トレック:オリジナル・シリーズ・スター・トレック)でエピソード「[その他の名前で]」(1968年)に出演し、 [Sweet Charity(Sweet Charity(film)| Sweet Charity] (1969)ウルスラを演奏する[4]
Excelの困ったちゃん
最近、会社でExcelで30万ぐらいの数のデータの価格を自動計算するシステムを作ろうとしています。元々外注しようと思っていたのですが、調べてみたらあまりにも例外処理が多すぎて、それを外部の業者にメールで説明する方が大変なんで、仕方なくこちらでやっています。それでつくづく思うのが、Excelは複雑な論理を扱うのにはまったく向いていない、ということです。
まず、マクロで書けばいいのかもしれませんが、セルに数式を書くやり方だと、if関数を重ねていくと、3重くらいまでは何とかフォローできてもそれ以上だとほとんどデバッグ不能になります。通常のプログラミング言語ならインデントして書くので、論理ブロックの固まりはすぐ判断出来ますが、Excelだと行内にひたすら足していくだけなので、とても大変です。
また、Excelにはcase文を書くことが出来ないので、2つの条件の組み合わせの4通りの処理が、if関数の連続でしか書けません。
更には表引きで、良く使うvlookupだけでは足らないので、indexとmatch関数を組み合わせた2次元の表引きを多用していますが、これもパラメーターがさらに増えると3次元とか4次元の表があるかというと無く、無理矢理パラメーター同士をくっつけて展開して2次元表に落とし込むしかなくて、こちらもかなり大変です。
更に困ったちゃんが、もう一つ。これだけバージョンを重ねながら、何で未だに正規表現の検索や置換がサポートされないんでしょうか。私はいつも、一旦データをテキストエディターにコピペで移し、そこで正規表現での置換をやってExcelにまた戻しています。まあVBAには正規表現の関数があるようですが。私はExcelマクロは書こうと思ったら書けますが、大体においてコスト対効果で見合わないのと、後でメンテが大変なんで使いません。使うのはキーボードマクロだけです。