apt-get install時のHash Sum mismatch / File has unexpected size

《事象》docke-compose buildにおいて、Dockerfileの以下の箇所でエラーが出現。

FROM python:3
RUN apt-get install (各package)

《エラー内容》以下2通りのエラーあり。

E: Failed to fetch http://deb.debian.org/debian/(略)  File has unexpected size (13363 != 2596). Mirror sync in progress?
E: Failed to fetch http://deb.debian.org/debian/(略)  Hash Sum mismatch

《試したこと》

①1つ目のエラーは、ミスマッチとなったパッケージのダウンロードファイルサイズが同程度に小さい。これは、macOSにおいてスクリーンタイムの設定をしており、ブロックページを誤ってダウンロードしていることに起因。スクリーンタイムをオフとするだけでなく、Webサイトのホワイトリストも全て消す必要があった。
参考:https://stackoverflow.com/questions/66200219/running-apt-get-update-on-docker-ubuntu-image-on-mac-causes-file-has-unexpected

②2点目のエラーに対して、レポジトリーのミラーイメージ同士が競合を起こしていることがあり、以下コマンドで解消。
参考: https://stackoverflow.com/questions/48645936/docker-for-mac-hash-sum-mismatch#answer-48777773

RUN rm -rf /var/lib/apt/lists/*
RUN apt-get clean
RUN apt-get update -o Acquire::CompressionTypes::Order::=gz

③Dockerfileのコマンド1つずつ確認し、インストールバージョンに適合しないdebianパッケージをインストールしていたことが原因に。本パッケージが不要だったので削除して全て解消。

④その他、以下のような方法の記載もあり
・dockerコンテナーやイメージ、NW等の全削除
・macOSのプロキシーやNWまわりの確認
・ミラーの指定を変える方法
参考:https://stackoverflow.com/questions/36358354/hash-sum-mismatch-in-apt-get-update

Ankiのスケジューリングアルゴリズムについて

Ankiのソースコードはこちらに公開されているが、これをもとにアルゴリズムを読み解くのは一筋縄ではいかない。
別サイトにて、アルゴリズムを噛み砕いてシンプルなPythonコードに落としてくれたものがあったため、これをもとにスケジューリング規則の理解を深めた。

以下、コードそのままの説明ではあるが、Anki初心者にとっては各種設定値の理解に繋がると思い、コードの解釈を書き下ろしてみた。

続きを読む →

BootstrapのTooltipが正しく表示されない

Bootstrapのtooltipを導入し、スタイルを調整しようとしても反映されない。
tooltipのコードを見ると、クラス名が.tooltipでなく、.ui-tooltip。すなわちJquery-uiのtooltipが動いていた。

以下の記事をみて、jquery-uiとbootstrap.bundle.jsのロードの順序を変えるだけで解決。

https://stackoverflow.com/questions/56738842/bootstrap-4-3-0-tooltip-conflicts-with-jquery-ui-1-12-1

Ankiアプリのスピードを爆上げする方法

忘却曲線に則った反復学習による暗記(フラッシュカード)アプリ「Anki」が人気沸騰中である。USMLE(アメリカ医師国家試験)対策で必須として紹介されることから私も自身の勉強法に導入したが、最近では日本の医学生も多く利用している。

ただし、名とは異にする外国製であり、使い方や活用のノウハウについて、英語のリソースは数多く存在するものの、日本語の解説がまだまだ少ない。

私はUSMLEを受けるために、既成デッキ(いわば既成のフラッシュカード集)を利用しており、1日に500~800枚程度の復習、合計2万枚程度のカードを覚える必要があり、加えて問題演習の時間確保のため、いかにAnkiを効率化するかという観点で、試行錯誤を進めてきた。

そこで、私がこれまでに蓄積してきたAnkiのノウハウを共有させて頂く。

続きを読む →

レンタルサーバーからVPSへの移行

自身の管理するサーバーにおいて、これまでWordpressを含む複数のWebサイトをレンタルサーバー(ロリポップ)で稼働し、RailsアプリをHeroku、ドメインをYahooドメイン&ムームードメインの2箇所で取得、と謎の分散構成になっており、コストやリソースの無駄が生じていた。
この際、1つのプラットフォームにまとめてしまいたいと思い、自由度の高いVPS(ConoHa)に移行することにした。

続きを読む →

私がUSMLE step1(アメリカ医師国家試験)の勉強を始めた理由

医学部に編入してまる3年、ようやく医学部新5年生/Student Doctorになりました。CBT/OSCEが終わると、医学生は国試までの2年間余裕のある期間が再び訪れます。この期間に何をするか人によって大きく異なり、その過ごし方が後の医師人生を大きく左右するものと思われます。

私は、本期間の1つの目標として、在学中にUSMLE(アメリカの医師国家試験)のstep1~2を取り終えることを掲げ、本格的に勉強を開始しました。(USMLEの概要は、こちらの記事を参照

多くの医学生が、臨床留学やUSMLE受験を一度は考えます。しかし、様々な障壁から最終的に受験に踏み切る人はごくわずかです。

そこで将来、受験するかどうかの判断に迷った人の参考になればと思い、私が受験を目指す理由を整理してみました。

続きを読む →

USMLE(アメリカ医師国家試験)Step1 260点超えした人たちの勉強法

USMLEの勉強を本格的に始めるに当たって、高得点を獲得した人たちの勉強法が英語で数多く公開されているので、勉強の息抜きに整理していく。(随時更新中)
ちなみにUSMLEの概要について、このブログに記載したが、260点超えはUSMLEを受ける日本人の中でも、毎年一人二人いるかどうかのレベルである。
続きを読む →