学校のパソコンでScratchが使えなくなってキレたので使えるようにした話

# 初めに

### ① 免責事項
:::note alert
当記事の目的は、プログラミングをしたいのに学校のフィルタでブロックされてしまい、学習面・ユーザーから見て好ましくない体験をしている人たちに向けたものです。

**決して教育委員会や学校に対して、本気で喧嘩を売ろうと思っているわけではありません。**
**また、学習のための端末の不適切・違法な使い方を推奨するものではありません。**

当記事による直接的・間接的なトラブルや被害に対して筆者は一切の責任を取りません。利用するときは自己責任でお願いします。

**尚、当記事を読んだ時点で、上記の免責事項に同意したもの**とみなします。
:::
# さっそく使ってみる

### ② 実行環境
このツールは、HTMLが実行できる環境ならほぼどこでも使えます。私の実行環境(Lenovo端末・Windows10・Microsoft edge)での動作確認・また、別端末で、GoogleChrome・Safariでの動作確認ができています。
また、今回突破するフィルタは、ロイロウェブフィルタです。(ちなみにwifiがなくても実行できます)私のパソコンでは少し読み込みに時間がかかってしまいましたが、少ししたら読み込めました。

### ③ このツールでできること・できないこと
このツールはサーバーとの通信を必要としません。勘のいい人はお気づきでしょうが、他の人が作ったプロジェクトの利用はできません。(すでにsb3ファイルが手元にある場合を除きます)クラウド変数の利用もできません。
しかし、エディタとしては十分過ぎるほどです。(私の場合)

このツールでは、スクラッチの既存のブロックを全て利用できます。(クラウド変数・一部環境による拡張機能を除く)作った作品の、コンピューターへの保存、sb3ファイルの読み込み、スプライト・背景・音の読み込み・書き出しなどができます。

![スクリーンショット 2024-02-12 21.55.20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3690869/962042d6-c365-3e96-3c42-c366b9b5630d.png)
いつもの画面です(^^)

### ④使用方法
今回のプログラムは、index.htmlだけでも8000行程度になり、とてもここに記載できるようなものではないので、google大先生の力を借りたいと思います。下記URLにアクセスしていただき、zipファイルをダウンロードしてください。

https://drive.google.com/file/d/1bDtvTHZ3qaseYVaGPYiXvktMIwOnVXOb/view?usp=sharing

ダウンロードが完了しましたら、展開してください。
展開できましたら、開いていただき、Xcratch.htmlを開いてください。するとエディターが立ち上がり、利用できるようになります。お疲れ様です。利用するだけの人はここまで読んだだけで充分です。クレジット・バグ報告・作ろうと思った経緯や、教育委員会の方向けの記述などを読みたいと思う方は下へどうぞ。

# 作ろうと思った経緯

※ここからは私の考察です。
前までは学校のPCでもスクラッチが使えたため、プログラミングに使っていたのですが、ある日突然アップデートがあり、もしやと思ってスクラッチを開いてみると...『ブロックされました。(個別URL指定)』という文字と共にブロックの旨を伝える、何千回と見たページに飛ばされ、いろいろ試しましたが、「<https://scratch.mit.edu>」以降のURLがブロックされているではありませんか！これは困ったと思い、なんでブロックされるようになったのか...と考えていると、よく考えるとスクラッチとブラウザゲームのサイトってそんなに変わらなくないか？という結論に至りました。というのも、最近のスクラッチはオンライン対戦ができる2Dスプラトゥーンや、3Dのアスレチックゲームなどが利用でき、学校側もこれはまずいと思ったのでしょう。(しかし、ゲームができるからと言ってエディターまでブロックするのはあんまりじゃないですかねぇ...)そう思い、『学習のための端末なのに学習に必要なものまでブロックリストに入れてしまうのはおかしい』と思い、スクラッチのソースコードを探していました。すると見つけてしまったんですよ...(githubってすげー)

しかし、実際にダウンロードしてみると、随分と古いもののようで、画像のファイルパスがとっていなかったり、エラーの嵐だったり...なかなかまともに使える代物ではありませんでした。よって、私はそのまま2週間くらい放置していました。でも、一向にブロックが解除されることはなく...そして、珍しくやる気を出してファイルパスの通っていないSVG画像や、scriptのエラー・コンソールエラーを一つずつ解決していきました。そして全て終わったので、zipにして配布しようと思い、この記事を書きました。(始めはindex.htmlだけで30000行あったというのは内緒)。
# 利用規約
特にないよ:)

# バグ・不具合の報告について
XのDMで受け付けております。

# クレジット
スクラッチが使用しているライセンス↓

>You are free to:
Share — copy and redistribute the material in any medium or format for any purpose, even commercially.
Adapt — remix, transform, and build upon the material for any purpose, even commercially.
The licensor cannot revoke these freedoms as long as you follow the license terms.
Under the following terms:
Attribution — You must give appropriate credit , provide a link to the license, and indicate if changes were made . You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
ShareAlike — If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original.
No additional restrictions — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.
Notices:
You do not have to comply with the license for elements of the material in the public domain or where your use is permitted by an applicable exception or limitation .
No warranties are given. The license may not give you all of the permissions necessary for your intended use. For example, other rights such as publicity, privacy, or moral rights may limit how you use the material.


# 教育委員会・学校関係者・このような行動に反対の方へ
あくまでもタブレット端末は学習のために導入されたものです。(一部の人にはこのことが伝わっていませんが。)そして、学校がゲームをして欲しくない理由もわかります。しかし、この先プログラミングが必要になってくる時代です。教育のためにプログラミングを学習する機会が少ないと私は感じています。『なら家でやればいいじゃないか』という意見が出るのも承知です。しかし、全員が同じ環境にあるわけではありません。端末を所持していない方や、スペックの不足などによって思うように利用できない方など、様々な人・環境があります。しかし、学習用タブレット端末は、この環境の差を少なくできると私は考えます。もちろん、学習用の端末を不正利用することを推奨するつもりは全くありません。ただ、少しでもプログラミングに興味を持って、深めて欲しい。その一歩として、Visual Programmingはとても有効だと私は考えます。特に、スクラッチのような、自由度が高く、初心者の方でもはじめやすく、インストールや環境構築が必要ない素晴らしいサイトをブロックしてしまうのはユーザーにとって好ましくないと考えたため、この記事を書きました。