はてなキーワード: HTTPとは
それは、
のどれかにゃーん。
9600bpsのモデムが100万円をきって、購入の稟議書が常務決裁で良くなったころから。 https://t.co/JtHatCYbrn— 河野太郎 (@konotarogomame) October 7, 2019
いや別に「政治家という公人がSNSアカウントから情報発信するなら国民をブロックするな」という主張には一定の理があるとは評価している。
もちろん国民には代議士を評価する権利があるわけだし、どのような言葉で評価しても良いとは思う。
代議士としての資質、大臣としての資質を問うのも良いと思う。国民の権利であり当然だ。
でも流石に河野太郎へブロック担当相という揶揄は一定以上のITリテラシーがあれば出来ない揶揄だ。
何故ならブロック担当相という揶揄はどう評価しても揶揄した本人のITリテラシーは低いですと宣言しているようなものだからである。
恥ずかしすぎて普通はできない。
往年のインターネットには「パソコンの大先生」というミームがあったけれど、河野太郎へブロック担当相という揶揄する連中のITリテラシーを表現するなら「Twitterの大先生」だろう。
スマホが使えて、ググって調べものが出来、Youtubeを楽しみ、タッチ決済して、SNSを炎上しないように運用し、COCOAでコロナ対策していますみたいなITリテラシーレベルの連中が、河野太郎へブロック担当相と揶揄しているわけだから、そんな連中には「Twitterの大先生」という称号を贈呈したくなる。
河野太郎は勘ではなく正しい知識でこれへ対して回答してくるという信用があるけれど、Twitterの大先生たちは2が何かわかるだろうか?なんなら3や4や5も河野太郎は答えてくるだろう。
河野太郎へはネットワークという言葉も、プロトコルという言葉も、キャラクターという言葉も、入出力という言葉も、様々なITの基礎的な言葉も説明しなくたって伝わる人である。
もちろんITであっても触れてこなかった言葉や新語は知らないだろう。しかし近似した知識や概念、理論を既に知っているので「○○みたいな感じかな?」と直ぐに理解してくれるだろうなという安心感がある。
やっと日本国のデジタル担当相にそんな安心感がある人が就いたのである。
ちなみにこの問題は本当に初歩的なものであり、一定以上のITリテラシーがある人であれば「は?バカにしてんのか?」とか怒り始めたり「いや可能性としては・・・」などと曲解をはじめたくなるような初歩中の初歩の問題である。答えはシンプルで良い。
この問題を即答できなければお前のITリテラシーは河野太郎以下だ。
多くのIT有識者は「そんなことはわかっている」と言うだろうが待って欲しい。極ひと握りの河野太郎以下のITリテラシーしか持っていない連中へ説明してあげないといけないだろう。我慢してくれ。
まずIT分野には3種の人材が居る。それは「実務者」「研究者」「利用者」だ。
実務者とはいわゆるプログラマーのことだと思っておけば良い。
プログラミングを通してシステムなどを開発する人である。
オードリー・タンはここに属する人材。実績から言ってもオードリー・タンはハッカーだと評価しても差し支えない。
研究者とは新しいシステムや開発手法などを考え提唱する人。
わかりやすい例を挙げればビットコインなどのブロックチェーンを提唱した謎の人物サトシ・ナカモトもこの枠組みで良いだろう。
URLやHTTP、HTMLを開発したティム・バーナーズ=リーもここの枠組み。
そして最後の利用者は上記の2つを利用する人だ。
消費者もここの枠組みへ入れても間違いはないが、IT分野で何かを駆動させようとするときの利用者とは消費者というよりも、わかりやすく例を出せばスティーブ・ジョブズのように実務者や研究者と共に何かを始めたり維持したりする人のことだ。
そして河野太郎はここの枠組みの人なのである。
流石に河野太郎とスティーブ・ジョブズを比較するのはアレだが、枠組みとしては同種のポジションであり、実務者のオードリー・タンと比較するよりかはかなりマシな比較だと多くのIT有識者は賛同してくれることだろう。
まったく別分野で例えると変な誤解が生まれるかも知れないのでしたくはないが、理解が追いつかない人に例え話をするとオードリー・タンと河野太郎は寿司職人と寿司を食いに来た客くらい違う。
そもそものポジション、役割がまったく違う。
ITリテラシーの低いTwitterの大先生からするとIT分野に居る人材はITに関することなら何でも出来る知っていると誤解しやすい。
そして、そう誤解するのも無理はないなと個人的にも思う。
何故ならIT分野に居る人材は一定レベルを超えると3種の能力を相互に持ちがちだからである。
つまり、実務者であっても理論を提唱し、研究者であってもシステムを構築し、利用者であってもプログラミングしたり理論を知っていたりするからだ。
例えばイーロン・マスクなどは良い例だろう。彼は実務者から利用者へ転向した代表例と言って良い。
そして河野太郎もまた一定レベルを超えたITリテラシーを持った人物であり、河野太郎を利用者として評価するならば昔懐かしい「パワーユーザー」と表現するのが最も実像的であると考えている。
河野太郎はパワーユーザーだ。そしてパワーユーザーが日本のデジタル担当相になったのだ。
ブロック担当相などという揶揄はITリテラシーの低いTwitterの大先生が、自身の理解が及ぶ、自身が得意分野だと考えるSNSの使い方という枠組みまで矮小化してやっと出てくる言葉なんだよ。
「ITは小難しくてわかんないけどぉTwitterならわかるからTwitterで批判しよwww」と批判対象の能力を考慮しないバカとしか言いようがない思考を伴わないとできない発想。
真っ当に河野太郎デジタル担当相を批判するなら「河野太郎は利用者であるからオードリー・タンのような実務者的言動を取ったときに批判する」べきなんだよ。
オードリー・タンは凄い人だよハッカーだよ、だからこそ河野太郎も真似したくなるだろう。
それを防げ!河野太郎がオードリー・タンのモノマネを始めた時に必死で止めろ!!!!!
河野太郎がオードリー・タンのモノマネを始めた行く末は間違いなくメテオフォール型開発であり日本の将来へ最悪の禍根を残すことになる。
パワーユーザーたる河野太郎デジタル担当相だけが今のところできることは旗振り役だろう。
「旗振り役なんて誰でも出来るじゃん?」なんて思うかも知れないが、やはり時代が進んでいく方向という概念はあり、せめてマシな方向へ進んで行って欲しいというのが人情であり、IT分野であればITを知る人がマシな方向を選んで欲しいではないか。
ITのことを全く知らんのであれば置き物であって欲しいが、大臣が何も言わないのもそれはそれで問題であり、だからこそ何か言わなきゃならないのだがITのことを全く知らんヤツが口走ったことに付き合わされる省庁やIT業界のことを考えてみろ、可哀想だろうが。
最後にオマケとして河野太郎およびデジタル庁の動きへ対して取るべきリアクション一覧を置いておくので参考にして欲しい。
オードリー・タンのモノマネをした | 徹底的に非難する |
非IT系人材を登用した | 非難気味に注視する |
IT系人材からレクチャーを受けた | 肯定気味に注視する |
金融系のWeb3を推進し始めた | 徹底的に非難する |
学術系のWeb 3.0を検討し始めた | 注視する |
マイナンバーの改良を検討した | 注視する |
マイナンバーと金融情報の紐付けを検討した | 非難気味に注視する |
マイナンバーに分散型ID(DIDs)の応用を検討した | 肯定気味に注視する |
国家行政発行資格証の統合を検討した | 肯定気味に注視する |
中央・地方の行政システムの統合を検討した | 非難気味に注視する |
オープンデータを拡大した | 肯定する |
議会システムの更新を検討し始めた | 肯定気味に注視する |
某話題の書籍を買って読みました。ひととおり読んだのですが、話題の1章を読みつつ取ったメモを、本が回収される前に置いておこうと思います。
ちなみに最初は電子書籍で読んだのですが、回収かもって話を聞いて紙も買いました。
以下にメモをそのままのっけるので、たぶん書籍と照らさないと意味不明だと思います。
・Web1は「1970年代から1980年代」というのが若干謎ではあるが、この本ではそういう定義だとおもって受け入れる余地はあるか。実際、列挙されているTCP/IP・SMTP・HTTPの最初のRFCは70~80年代
・HTTPはWebサイトの「構築」をするものではない(Webサイトのデータを取ってくるためのプロトコルである)
・TCP/IPの4層モデルとかOSI参照モデルとかを意識しているんだろうけれど、いまひとつWeb2とWeb3の対比ができていない。また、後段で「ブロックチェーンもプロトコル」と主張する割に、このLayersにも「Protocol Layer」が存在しており、いまいち言いたいことが伝わってこない
・Web2 Layersの雑さは見ての通り。「中間のレイヤー」としてなにを想定しているのかが気になるところ。「プラットフォーマーの上に載っている」という結論ありきで作られた図のように思える
・Web1の例としてHTML/CSSのWebサイトのことを提示しており、それはそれで正しいのだが、冒頭のWeb1は1980年代のプロトコル云々というところと整合しない。
・JavaやRubyはわかる C++もそりゃあたくさん使われてるわけだが、この並びで出てくるのはちょっと違和感。PHPとかは?
あとP2PはべつにWeb3独自ではない SkypeとかWinnyとか、クライアント・サーバではない仕組みは2000年代からいくらでもある
・このへんはあんま詳しくないのでよくわかんなかった そういえばログインIDにメールアドレスを使わせるようになったのってなんでなんでしょうね
・この書き方だとSNSログインすると情報収集できそうに読めるけど、SNSログインを介したからって即ログイン先の情報をプラットフォーマーが集められるわけではない
・ブラウザのとこはそうだね~っていう感じだったが、Firefoxがハブられてるのがかなしかった オープン云々のはなしをしたいならMozilla財団の果たした役割は相当に大きいと思うのだが、(この本に限らず)無視されてることが多い
・OSの部分は突っ込みどころがいっぱいあるしスクショがバズったのですでに突っ込まれている
・あくまで例示で出てきてるだけなので本質的なところではないし、よくあるまちがいではあるのだが、POPはどちらかというと「受信したメールを取ってくるため」のプロトコルと呼んだほうがいいと思う じぶんが使っているメールサーバ(というかMTA)までメールが届くのはあくまでSMTPが使われている 「プロトコルが一緒じゃないと~」という文脈で考えると、いったん向こうのMTAに到達しさえすれば、読み手がPOP3で受信しようがIMAP4で受信しようがどうでもいいわけで、例示としてあんまりうまくない
・唐突にICMPが出てきてびっくりした 重要であることはまちがいないのだが、あんまり「プロトコルの例」として出てくるとこはみないので
・後段で「Web3ではいろんなプロトコルがあるんですよ~」という話をするんだったら、ここでWeb3のプロトコルとしてBitcoinとEthereumしか出さないのはなんか話が通りにくいのではないか
はてブのホットエントリ(総合)で月内に数多く[あとで読む]タグを集めたエントリ
315あとで/2672users 零細企業買収して売却した話|reisaikigyou_ma|note
294あとで/2057users テクニカルライティングの基本 | Naohiro Nakata | SpeakerDeck
277あとで/2169users プログラマの心の健康 | 結城浩
257あとで/1306users GitHubの使い方を学ぶ「GitHub Skills」が無料公開。GitHubを実際に操作してMarkdown、Pages、Pull Requests、マージのコンフリクト解消などを体験 | Publickey
210あとで/1421users 総務省、きょうから「社会人のためのデータサイエンス入門」を無料開講 | Ledge.ai
206あとで/1271users 商用利用OKの音素材、600種以上無料公開 バトルの攻撃音も……「Springin’ Sound Stock」 | ITMedia
204あとで/1565users 「自分を愛するってどうしたらいいの?」──宇多田ヒカルの思考を辿るインタビュー、全文公開。 | VOGUE
189あとで/1536users 商用利用無料、国内のフリーイラスト素材の総まとめ | coliss
165あとで/1222users 著作権フリー素材がスゴすぎ…広重や夢二も全部無料 国立国会図書館の試みに「工作心がムズムズ」「活用しない手はない」|まいどなニュース
163あとで/1070users わずか数年で400億円も売り上げを伸ばしたカインズ ホームセンターのDXで、まず「顧客戦略」に着手した理由 | 株式会社メンバーズ | logmi
161あとで/1092users わかりやすいシステム構成図の書き方 - Qiita
158あとで/952users 大人の学びパターン・ランゲージ(略称まなパタ):IPA 独立行政法人 情報処理推進機構
152あとで/974users Webデザインの有料学習サイトが無料化 IllustratorやPhotoshop入門などが見放題 | ITMedia
145あとで/1638users 最近Amazonプライムで観た面白かったけど胸糞悪くて二度と観たくない邦画5選 - kansou
144あとで/704users 書籍「達人が教えるWebパフォーマンスチューニング」はチューニングの考え方を教えてくれる良本 - Gマイナー志向
144あとで/1072users ジョナサン・ハイトが解き明かす「アメリカ社会がこの10年で桁外れにバカになった理由」 | 「現代のバベルの塔」はいかにして建設され、崩されたのか | COURRiER
138あとで/1513users 【ウマすぎ注意報】料理研究家・リュウジさん考案「無限冷やしそうめん」がガチでラーメンより美味かった! | マイナビニュース
133あとで/673users 東京大学深層学習(Deep Learning基礎講座2022)深層学習と自然言語処理 | Hitomi Yanaka | SpeakerDeck
129あとで/980users ドキュメントに固執せよ - gfnweb
128あとで/846users 世界中のITエンジニアが悩まされている原因不明でテストが失敗する「フレイキーテスト」問題。対策の最新動向をJenkins作者の川口氏が解説(前編)。DevOps Days Tokyo 2022 | Publickey
127あとで/1632users 結城浩 on Twitter: "質問(簡単に教えてもらおうとする相手にイライラするようになった) あなたのおっしゃる「質問されるとイライラする感じ」はよく理解できますし、同じように感じる人はたいへん多いと思います。(続く) #結城浩に聞いてみよう… https://t.co/CKZMzVzHPN"
126あとで/622users コードを書いていてマネジメントもやるようになっちゃった人へ 背中で語っていた僕が、プロダクトとピープルに向き合うまで | 海老原昂輔 | logmi
124あとで/1032users 「女性同士のマウンティング」に関する研究論文が興味深くView数が少ないのがもったいないレベル 具体的なエピソードもなかなかすごい | Togetter
123あとで/1046users 戦略系コンサルタントがオススメする本(不定期更新)|とあるコンサルタント|note
122あとで/885users たった256文字のJavaScriptコードで描かれた街の風景アニメがスゴ過ぎて訳がわからない/解説ページを見てもわからないorz【やじうまの杜】 | 窓の杜
117あとで/924users 私は数学がなぜ苦手なのか?高校生が分析してあみ出した勉強法が効果抜群だった|高校生新聞オンライン|高校生活と進路選択を応援するお役立ちメディア
115あとで/701users 「ゲーム制作するなら、これだけは覚えておいたほうがいい」 プログラミングする上で重要な「対数」の考え方 | 安原祐二 | logmi
112あとで/879users 【初心者向け】iPhone3Dスキャンパーフェクトガイド|iwama|note
111あとで/524users 次世代Web通信プロトコル「HTTP/3」がついに標準化 ~有志による無償解説本が話題に/PDF形式の電子書籍がGitHubで公開中! 今後も更新される模様【やじうまの杜】 | 窓の杜
はっきり言って全くのデタラメなので信用しない方がいい
ぶっちゃけその手の育成は自分の会社のルールを押し付けてるだけであって社会通念上の育成とはほど遠い
外部の研修メニューを選んできているように見えても結局はグループ会社とか退職再雇用とかそういう人ばかり
おまけに選んでるのはその会社の人事部だから如実に企業文化が反映される
まぁそれでもまだ外部の研修を入れているのはマシな方で
「2年前まで営業やってました」「去年製造部から異動してきました」とかの育成素人が研修を作ってる
それなりに本でも読んだのか、それっぽい感じにはしてるんだけど
良くあるのが「我が社の改革案をブレストして資料にまとめて発表」とかいうゴミ研修
参加させられてる社員はクソどうでも良い部長レベルの話を聞かされるし
部長も忙しいのにアホみたいな研修に参加させられて「我が社の改革案」みたいなのを聞かされる
「そうか!社内教育頑張ってるな!」
「日本企業は社内で育成してる!」
みたいなノリも多い
そもそもPCの中身がなんなのか分かってないしOSの役割がなんなのかも分からんしHTTPがどういう思想で通信してるか分かってないのに
とりあえずAWSの研修だけ受けさせてポチポチしたらそれっぽいのができるような人材だけ作って育成した気になってる
結局は表面的にAWSを使えるようになってるだけなのでAWS側の仕様が変わったり新しいのが出てきたら全然使えない
じゃぁそういう高度な育成をやってくれるのはどこか?っていうと、そりゃ大学ですよ
それなりの大学で計算機科学でも勉強したらそれなりに教えてくれる
企業側は大学でこういう専門性をちゃんと教えているってことを無視して「地頭の良さ」「やる気や熱意」「人当たりの良さ」とかを採用基準にしてる
凄いことに育成やってるのも採用やってるのも同じ人事部っていうね
自分たちが育成出来てないということに目を瞑って採用は素材の良さを求めるとかとち狂ってる
結局刺身に出来ないから丸ごと焼いて食べてる、みたいなことを平気でやってる
まぁそんな感じで日本の企業は主に人事部がゴミだから社員を育てているようで全く育たないので
dockerでubuntu:20.04でchromeDriverにchromium-browserとか入れればいいんだろ?
誰か「chromium-browser? それなら apt-get install lsb-release libappindicator3-1 の次に
wget https://dl.goo略/_amd64.deb して dpkg でインスコや」
ってか、これじゃchromeDriverが動かない。chromium-browser も無いし、インスコ出来てなくない?
別の誰か「ちゃうちゃう、apt-get install chromium-browser がシンプルでええやん」
まあ、そうやろな。インスコしとくれ。
ターミナル「色々DLしとるが、どっかの https://archve.略/foobar で Bad Request が返ってきたでw」
何やそれ・・1回くらい自動でリトライしてくれていいんやない?自分でリトライしたら通ったで。
しかしこれも動かない。
別の誰か「apt-get install default-jre いるみたいやで。ドキュメントどこにも書かれてないけど」
何やそれ?なんでJREが出てくるの。
まあJRE入れれば、確かにchromedriverの出すエラーは変わった。
「chromium-browserのプロセスが居なくなったし、クラッシュしたんじゃね?」と。
何やそれ。。。
chromium-browser --version をやってみると
ターミナル「snap install chromium でsnap版入れてくれw」
まあよく知らんが、やったるか。snap install chromium っと
ターミナル「あかん、http://localhost/v2/snaps/chromium に繋げられんのやがw」
なんでlocalhostに繋げようとしてんの。
いまだにLinuxくんと仲良くできない。
追記。
なるほど、Ubuntu 20.04 からはsnappyに移行しとるんだと。しかしWSL2ではsystemdが動いてないんでsnapdも動いてない。だからアカン。
わいが仲良くできていないのは、LinuxくんではなくWSL2くんと言うべきなのか?
次のツイートにブクマが集まっていたが、論点が整理されていないようなので、主にCookieの出自について記述する。
cookieは命名で失敗し「魔術的な」技術と勘違いされてる。実際はすごくシンプル。①サーバがSet-CookieヘッダでIDを通知する、②クライアントは以降CookieヘッダにそのIDを設定する、③それによりサーバはクライアントを区別できるようになる。ただそれだけ。もったいぶってる説明はほぼ間違ってる。
Cookieという単語に「魔術的な」意味など元々なかったし、本来単なるデータストアである(ゆえにセッションIDも格納できる)。元ツイートの主張はおかしいし、元ツイートが腐しているspeakerdeckの内容はそんなに間違っていない。
結論として、元ツイが「現在のCookie」の話しかしていないから論点がずれている。歴史的なCookieの在り方はデータストアだった。また、現在でも一部でデータストア的に使用されている
なるほどね。それでは1つずつ見ていこう。
現在にフォーカスを当てれば、Cookieは「基本的にセッションIDを格納する場所」と説明すれば良いが(Slideもそう書いてるよ?)、元々はデータストアである。元ツイは歴史的ファクトと現代的実装のスタンダードを混同しているように感じる。2022年に「Cookieっていうのはー、ユーザ名とか個人情報を保存しておける便利なデータストアだよ」っていうと単なるやべー奴だが、1997年から2000年ごろまでは普通にそういった実装がなされていた。性善説の時代だったのである。
「嘘だろ」と言われそうなので、1997年のRFC2109を引用する
https://datatracker.ietf.org/doc/html/rfc2109
POST /acme/shipping HTTP/1.1 Cookie: $Version="1"; Customer="WILE_E_COYOTE"; $Path="/acme"; Part_Number="Rocket_Launcher_0001"; $Path="/acme" [form data]
普通にユーザー名とか買い物かごの中身をCookieに保存している。今この実装をする奴はヤベーが、1997年はそういう時代だったのである。
Cookie: $Version="1"; session_id="1234"; session_id="1111"; $Domain=".cracker.edu"
セッションIDの例もあるが、なんと数字4桁である。今こんなことをしたら確実に徳丸本の角で頭を殴られる。当時のインターネットがいかに性善説の上に成り立っていたか分かるだろう。
この主張も誤りである。例えばja.wikipedia.orgでは、アカウント名や利用者のおおよその住所などをCookieに仕込んでいる。セキュリティ的にザルだと思うなら、ぜひ直接殴り合って欲しい。
元ツイではMagic Cookieを「魔術的なクッキー」と解釈している(なんでも魔法のようにできる多機能な……って感じ?)ようだが、ここでいうMagicとは魔術のことではないだろう。Magic NumberとかMagic WordのMagic(利用者が理解していなくても有効なもの)と考えた方が意味が通る。これはMagic Cookieの語源となったfotune cookieの語義に通じるところもある。
fortune cookieとは。文字が書かれた紙片を封入した焼き菓子である。HTTP Cookieはクライアント・サーバとも内容について問わない(紙片に何を書いてもいい)し、捨てても無視しても構わない(食べなくても割らなくても良い)ためにこの名前がついたのだろう。任意の情報をラップしたものというメタファーとして適切に思えるし、Magicという形容詞も適切であると考える。
1つあたり容量が4kBしかないのも可愛らしい。クッキーでいいんじゃないか。逆に何だったら良かったのか。
そんなに間違ったことは書いていない気がするが……。現在ほとんど使われない技術が書いてあったとして、それが何……?とはなる。Slideはaxiosの使い方を示してるだけだし、2年前の記事に対して「情報が古い」ってツッコミも微妙ではある。
結局何に怒って何を否定しているのかよく分からなかった。SunのX端末を使っていたということなので、最近の事情しか知らないというわけでもなさそうなのだが。
ツリーを眺めているとあまり期待はできなさそうだが、元ツイの人はもう少し丁寧な議論をして欲しいところだ。
ライトなコンピュータユーザを一切合切無視してギークがギークのため情報共有するためのエントリ。
感想ははてブへ、質問はトラバに投げれば誰かが答えるんじゃないか?(他力本願)
セキュリティの懸念があるけれど通常モードはセキュアを維持するため機能制限があるので制限開放のため開発者は初手でデベロッパーモードにするしかない。
利用途中でデベロッパーモードにするとストレージがファクトリーリセットされるので注意。
Webでエンタメを楽しんだりWebツールを中心に利用するのであれば、5万円未満の低性能機で必要十分。
この用途では実質的にタブレットPCのような運用へなりやすいのでフリップする2 in 1機やタブレット機がオススメ。
ただし、Webベースのゲームは楽しめるがAndroid Appレイヤーを用いたゲームは非常に厳しいので諦めたほうが良く、そこそこの負荷の掛かるAndroid Appツールも鈍足でストレスになるのでWeb版があるならそっちを使ったほうが良い。
Core i7クラスのCPUや16GB以上のワーキングメモリ、SSDストレージなど高性能機でChromeOSを使うとその分だけ快適になる。
Android Appレイヤーを用いたゲームも快適に動き、ウマ娘クラスの3DCGなAndroid Appゲームも高速に動く。
しかし、高性能機は空冷ファンを搭載していることが多く、高負荷を掛ければファンは唸るしウルサイ。
Google Play StoreにてAABパッケージがほぼ強制になったとは言え、開発段階でx86_64を意識しないと処理が非効率になりがちのようなので、Android Appレイヤーを中心に運用したいと思っているのであれば素直にARM機を探してきたほうが良い。
1つのIDEで開発をしクロスプラットフォーム対応することが流行っている昨今、自動でガベコレに頼っていてリソース管理経験に乏しい開発者はマジで底辺にしか漂流できないので覚えたほうが良いぞ。
それがWeb系のフロントエンドでもバックエンドでもそうだから底辺から脱したいのであれば覚えろ。
しっかりリソース管理できているChromebook向けビルドはアーキテクチャによらずサクサクなのでクロスプラットフォームなビルドはマジで開発チームの腕が如実に反映される。
ちなみにSnapdragon 8 Gen1なChromebookの公式発表は今のとこ無いのでAndroid Appレイヤーをブンブン回すのは難しい。
メーカーはもうちょっと頑張れ。
Chromebookの大半はタッチスクリーンディスプレイを搭載しているし、Android StudioでAndroidManifest.xmlを何も考えずに生成すると勝手にChromeOSをサポートするので結果的にChromeOSで動くAndroid App数が多くなるという現象が起きている。
Android Studioが雑なのかXcodeが厳密なのかは意見が分かれると思うけど、タッチパッドでiOS App操作というセンスがクソなのは万人が納得するところだと思う。
ARM系のSoCであればワンチャンいける可能性はあるものの、市場に出ているChromebookの大半はx86_64でGPSモジュールを積んでいないのでGPSを使おうと思うとBluetoothあたりでGPSレシーバを接続するしか無い。
当然A-GPSは使えないので精度がそこまでではないから期待し過ぎに注意。
Android AppレイヤーではUSB over MIDIが使えるのでDTMあたりに活用することは可能なものの、iOSと比較してレイテンシがそこそこ大きくDTMに活用しようと思うユーザは不満を持ってしまうかも知れない(ハードにもよるけど0.5msecくらいズレる)。
そもそも既存のAndroid AppなDAWはVSTやLV2などの外部プラグインに対応していないのでAUプラグインが使えるiOSのほうがDTMへ向くんじゃないだろうか?
ただし、DAW単体でDTMを完結するとレイテンシはほとんど気にならなくなるので絶対にAndroid AppでDTMが不可能というわけでもない。
Linuxレイヤー側でDTMをするのはレイテンシが大きすぎるしJackも上手く動作しないのでオススメできない。
ChromeOS向けマルチタスクへ対応していないとAndroid Appはフロントエンド(プライマリ)からフォーカスが外れてバックエンドへ行くとスリープする。
Android Appがスリープされることを考慮しておらず例外処理がされていないとAndroid Appはそのまま落ちる。
まぁAndroid Appがスリープされることを考慮しておらず例外処理がされていないとAndroid Appはそのまま落ちるっていう部分はAndroidスマホで実行しても同じなので正直に言ってスリープされることを考慮しないデバックってAndroid App開発者は何やってんの?とは思う。
ICT教育で日本中の学生がChromeOSを使うようになっているので、ゲームであれツールであれ何であれChromeOS向けのマルチタスクは考慮しておくとスリープしたり落ちたりするAndroid Appよりも支持されるのは間違いないのではないか。
LXC/LXDなのでDockerに慣れ親しんでる人にはわかりやすいかも?
デフォルトのイメージはChromeOS向けにカスタムされたDebian。
別のLinuxディストリビューションへ置き換えることも出来るが一部機能が制限される可能性がある。
ChromeOSで動作するGoogle日本語入力とは別にLinuxレイヤー側で日本語入力を用意する必要がある。
選択できるIMは幅広いのでMozcだろうがSKKだろうが漢直だろうが何でもイケる。
ただ特殊なものを選ぶとChromeOS側と齟齬が発生するのでfcitx-mozcあたりが無難っちゃ無難。
ChromeOSへマウントされたUSB機器、というかシリアル接続された機器はLinuxレイヤー上から認識しない。
見掛け上で接続されているハードのすべてはソフトで仮想接続されているだけなので、一部経路から上手く認識しなかったりする。
つまりLinuxレイヤーではUSB Pass Throughが使えないが、Android AppレイヤーではUSB Pass Throughが使えるということ。
Linuxレイヤーでゲームやろうと思ってもUSBゲームパッド動かないのでマウスとキーボードで完結できるFPSみたいなゲームしか上手くプレイできないぞ。
言うなればAndroid Appレイヤーでスクリーンキャプチャ系のアプリによってLinuxレイヤーで動くGUIアプリをキャプチャしようと思ってもキャプチャできず撮像は暗転している。
ChromeOSがホストでLinuxレイヤーとAndroid Appレイヤーはゲストなのでそりゃそうなんだけど気付かないとハマる。
LXC/LXD on LXC/LXDになるので面倒くさくなること請け合いだ。
どうしても仮想環境がChromebookに欲しいのであればKVMとかのほうが安定している。
ただしゲストOS上へ仮想環境を構築しているという前提は認識しておくべき。
つまりゲストOSの制限はKVMも引き継ぐ。
ただしこれはDockerが導入できないという意味ではない。
自分で解決する気概があるのならばDockerは便利に使える。
CLIツール系は普通に動くのでWeb開発であれば何も意識しないで普通にできる。
ただ、PSD形式みたいなもんは扱いにくいのでWebデザイナーは悲しい思いをするかも知れない。
GIMPやInkscapeなども動くけれどデザイナーはAdobe使いたいんじゃなかろうか?
Android App向けIDEのAndroid StudioはChromeOS向けが存在するのでAndorid App開発が可能。
しかしデベロッパーモードでなければエミュレータや実機デバックに制限が発生するので注意。
UnityやUEを使いたいところだけれど、Linux版のUnityやUEは不安定なのでゲーム向けIDEが欲しいのであればGodotがオススメだ。
ライセンスはMITなので商用利用だってイケる。
3Dのほか2Dゲームもいける上に、最近のIDEよろしくマウスでポチポチとUIを作れるし、軽量動作、物理演算、日本語ドキュメントまで揃っているので中高生もガンガン使える素晴らしいIDEだ。
浅い部分を触っているうちはYoutubeを観たり、プリインストールされているGoogle Play StoreからAndoird Appをインストールして使うみたいな気軽な運用ができる。
言ってしまえばライトユーザの視点ではノートパソコンの形をしたAndorid機がChromebookだと言える。
しかし一度Linuxレイヤーへ手を出すとUbuntuという何でもできるようになったLinuxディストリビューションが存在する中で、昔懐かしい複雑怪奇なLinuxディストリビューションを体験することとなってしまう。
ただ、Chromebookで何でもやろうとするからそうなるだけで、APTからIDEをインストールしてちょっとした開発をするなんて使い方であるならば業務利用でも意外となんとかなる・・・というか何も意識しないで使える。
そもそもHTTP使えるなら今どきの開発は何とかなるので、Chromebookへ対してギークがゴチャゴチャ言うのはほぼ間違いなく不満を言いつつDIYを楽しんでる。
Ubuhtuならばアレができるコレができると言うならば最初からUbuntu使えよって話。
ギークとは不便を見つけてゴチャゴチャ言う、そういう鳴き声の動物なのだ。
少なくともGoogle系エコシステムとしてのChromeOSは非常に完成度が高くなりつつある。
Googleアシスタントは元よりAndoridスマホとの連携もよく、ハードウェアへもそこそこの投資ができるのであれば多くのChromebookではUSIペンが使えるし、USBポートはUSB-Cだ。
そこそこのChromebookは多くの場合HiDPIなIPS液晶でありグレアなのは気に食わないが美しい。
デベロッパーモードにするとセキュアさは下がるが普通に使えばローリングリリースのアップデートを無償で得られ、Gentoo LinuxベースなChromeOSは潜在的なマルウェアの絶対数がそもそもWindowsやMacよりも少ないという利点がある。
Bluetoothイヤホン・ヘッドフォン・ヘッドセットも使えるし、NestスピーカーやNest Hub、Nest Camを持っているのであればGoogleアシスタントからのコントロールが容易なのは想像が付くだろう。Android AppレイヤーはGoogleのホームマネジメントアプリであるGoogle Homeも動く。
大胆にも憎きCapsLockキーをデフォルトで殺し、Everything Buttonキーとして独自キーバインドを与えたのも面白い。
もちろんこれは選択するハードによるものの指紋認証でロックを解除することまでできる。
Googleエコシステムへ浸かっていてGoogleへ個人情報を捧げられるのであればChromebookはアリな選択肢だと断言できる。
敢えて欠点を挙げるのならば、たった一言で欠点を表現することが可能だ。
「Chromebookじゃなくても別に良くね?」
そう、ギークがLinuxを使いたいのであれば別にChromebookじゃなくても良い。
というかギークは別にLinuxじゃなくともHaikuであろうが超漢字Ⅴだろうが喜ぶ生き物だ。OSは別になんだって良い。
このエントリは単にChromebookという新しい沼へギークの皆さんをご案内しているに過ぎないのだ。
RStudioがPC内から気がついたら消滅していたので何回もやり直すのが面倒で書いた
コメントアウトをいじればFedoraやmacOSでも動くと思う
https://pastebin.com/HiPqLVq7 (6/4 shコマンドでも動くように修正 以前はbash hogehoge起動していたので動作確認していなかった)
エラーでここに貼れなかった
util-linux(rev) libxml2-utils(xmllint) gpg curl coreutils(sha256sum)とR関連
echo "$HTML" | xmllint --nowarning --xpath hogehoge --html - | hogehoge
こうしないとxmllintがエラーでhtlmなどをうまく読み取らない
sed 's/href="//g;s/"//g;s/\s/\n/g;s/^.?$//g;s/^\n//g'
href="hogehoge"の形で出てxmllint内で除去出来なかったのでsedで妥協
hrefが1回しか出ないのでひとまとめにできそうだが面倒なので分けた
この書き方なら複数回出ても除去できるはず
先頭の謎のスペースの除去が面倒だった
echo "$HASH" "$FIELNAME" | sha256sum --status -c ;echo $?
スペースが2つないと書式で怒れられてハッシュ値が合っていてもsha256sumが終了ステータス0で正常終了を返してくれない
VScodium
ShellCheck
https://open-vsx.org/vscode/item?itemName=timonwong.shellcheck
XPath Helper
https://chrome.google.com/webstore/detail/xpath-helper/hgimnogjllphhhkhlmebbmlgjoejdpjl
zenn.devに書こうか迷ったがどちらの方が良かったのだろうか…
ダウンロードしたサーバーがやられてるならハッシュ値も改ざんするだろうgpgで確認しないと意味ないでしょとかsudoでやったらディレクトリがとか色々ガバあるから誰かいい感じに改良して
https://cran.rstudio.com/bin/linux/debian/
https://twitter.com/kakedashi_chan/status/1495050350629322752
私はエンジニアちゃんの立場なのだが、同じような経験をしたことがあったので悲しいなあと思った。
以前ともだちと旅行した際にプログラミングの話題になった。わたしは当時から自分でウェブアプリを開発したり、ネイティブアプリを開発したりするのが趣味だったので、プログラミングスクール (Zeroplusというところだった)に通っている友達の話を興味深く聞いた。
そこで教えていたのは、たとえばJSであればもう誰も使っていないgulpであったりとかscssであったりといった時代遅れの技術で、とにかく顧客を捕まえて案件をゲットしようという内容だった。
わたしはネイティブアプリの開発者なのでウェブは門外漢だが、それでもウェブ開発という観点からはあまりに頓珍漢で時代遅れなことを教えていて面食らった。
わたしはともだちに「営業をやりたいのだったら良いスタートアップがあるから紹介するよ」といったが、ともだちはフリーランスエンジニアになりたいの一点張りだった。
「ウェブアプリ開発をやりたいのだったら、無料で良いチュートリアルがあるよ。お金を払うんだったらudemyとかの動画にしなよ。」
「HTMLとJavaScriptの関係はわかっている?今はReactやVueといった仮想DOMでの開発が主流だよ」
「HTTPサーバーというのが何を指しているのかわかっている?」
嫌味にならないように遠回しに「メガベンチャーに入れる」レベルの開発経験の積み方を話した。ともだちは残念なことにGoogle・Indeedなどに入れるような地頭の良さはないので、アルゴリズムよりも開発経験を積むように勧めた。
フリーランスエンジニアになるにしたって、誰がまともな開発をできない人に頼むのだろう。少なくともわたしの知り合いに業界経験が全くなくて、フリーランスエンジニアとして活躍できている人は一人もいないと伝えた。
ココナラやクラウドソーシングサイトで請け負う低単価の案件はいくらやっても、そもそも全く稼げないし、キャリアとして意味がないことも伝えた。
今ではWFHはどの会社でも当たり前だし、週4日勤務のような自由度の高い働き方がしたいのならマイクロソフトなんかがそういう取り組みをしていることも伝えた。
とにかく、エンジニアになると決めたのならちゃんと開発経験を積んで一般就職をいちど目指そうと伝えた。
1年後。
ともだちはその場では「ありがとう教えてくれて!やってみるね!」と話していたが、その後Twitterでは「らくして稼ごうウェブ制作!」といった標語を抱えている詐欺師のツイートを積極的にRTし、初心者コミュニティで自己啓発めいたことを1年間言い続けていた。
ともだちはその後事務員としてどこかの会社に就職したらしいが、音信不通になってしまってなにもれんらくがとれない状態になった。