新しいものを表示

「死人テスト」という考え方が子どもへ伝え方の参考になる「好ましい具体的な行動を示す」 - Togetter togetter.com/li/2166404

これ、有用性は知らんけど、この前の空のリストで条件でtrueを返すかどうかのやつ(?)と構造がそっくりかも><

突然赤いかき氷食べたくなった><

x 満足出来る用に
o 満足出来るように

><;

スレッドを表示

includeとかを隠す言語環境と、明示的に記述する環境の違いって、「ROM BASICなマイコン/パソコン」と、「クリーンコンピュータ」の違いと似てるかもって思った><

2018年1月29日
シャープのクリーンコンピュータ「MZ」シリーズと、アドベンチャーや移植作でヒットを飛ばした「システムソフト」 - AKIBA PC Hotline! akiba-pc.watch.impress.co.jp/d

orange さんがブースト

話はそれる気もするが、JSとかPythonとかでimportしてるコードにジャンプして書き換えたら本当にそれが適用されるの、地続き感は結構いいのかもしれない

スレッドを表示
orange さんがブースト

いやもっと浅い話で、意識的にリンクすることなくヘッダを読むだけで使える関数たちってずるいというか、自分で作ったものと同じ感は薄いなという…

設計するって立場になるのは、『漠然と神様がしてたと思ってた事』(比喩)をする立場になること、つまり、神様のようなものになることとも言えるかも><
色々なルールを自分で決められるし自分で決めないといけないし、そして(広義の)ユーザーが満足出来る用にそれを行わなければいけない><

でもその先にスタティックなライブラリがあったり、さらにその先にCPUの命令があったりするわけじゃん?><
そういう構造を思い浮かべられるようにする事も大切かも><
CPUだって、そりゃ現在のPCで使われてる水準の物はゼロから一人で作るのは不可能だけど、古典的なものは一人でも作れるし、ロジックゲートだってトランジスタとかで作れるし、なんだったらリレーを手作りしてもよい><

orange さんがブースト

なるほどなあ、と思いつつ、そういうincludeはヘッダだけじゃん…とか思ってしまった

メンタルモデルの話だから違うかも><
オレンジの「神様ではなく」の意図は、単に自分でも「追加できる」では無くて、「あなたはここまで部品を作ってきた人と同等の立場であり、その気になれば最初からすべてを作りなおす事が出来る」というメンタルモデルの形成><
神様でも超人でもないよって事><(超人並みの人が携わってる事は多いけど、少なくともオリンピックで金メダルをとる立場よりは容易に出来ること><)

orange さんがブースト

比較的変換前後のコードが離れないものになる気はするから、慣れてきたら変換後のコードを見て学ぶとかもいいかもしれない(どれぐらい可読性のあるコードが生成されるのかは知らない)

スレッドを表示
orange さんがブースト

神様が作ったんじゃなく誰かが作ったのだ、というのは組み込み関数でも同じで、その話をするならユーザー定義関数があれば十分だろう。ファイル分割はその後でもいいんじゃないかな。

orange さんがブースト

その話だと構文を変えてしまう(閉じ括弧の省略とか)のは、のちに普通のCをやるときに混乱しないかというのは思わんでもないが…まあ案外受け入れられるような気もする。なんとなく。人にはよりそう。

スレッドを表示

それは完全にそうなので、ごくごく初期にScratch使うとかもオレンジはいいかもって思ってるし、あくまで練習用と断った上でなら優しい入門向け言語(それこそBASICでも)を最初の1時間に使うのもいいと思ってる><

orange さんがブースト

さておきルールの多いゲームに挫折する人もいるわけなので、シンプルルールがあってもいい気はするけどな。慣れてきたらフルルールで遊ぶでもよかろう。シンプルルールでの知識や経験も無駄にはならないし。

「『includeの中身は神様が作ったわけじゃなく誰かが作ったんだよ><』って事を教えられずに理解というかメンタルモデルを形成するの大変だよね><」
って言いたい><

「なんで文字を表示する時にprintとかなの?」に対して、
「そういうもの」で通すか「文字を表示する部品を作った人がprintとかの名前で作ったからだよ><」って説明するか><
プログラミング経験がない人がプログラミングする時に「なんでもいい、自分で決めなさい。ただし、他の人にもわかりやすいように作りなさい」って事を理解するのってすごく大変だと思うし
「部品の仕様は部品を作った人がそう決めたからそうなった><」って知るのはプログラマになるために必要なメンタルモデル形成への有用な近道だと思うかも><

「部品を読み込んでる」って最初から教えるのが重要なのは、実際にどういう動作をしているかだけではなく
「あなたはこれから何らかの『ルール』に従ってコーディングする事になるが、その『ルール』は言語仕様のみではなく、誰かが作った部品の仕様でもあり、そしてあなたがこれからする事のひとつは『新たにルールを作り出すこと』でもある><」
って事、つまり「あなたはエンドユーザーでは無く設計する立場になる><」って事を教えるのに重要だと、オレンジは考えるかも><

古いものを表示
:realtek:

思考の /dev/null