top of page
Search
amilkh5

Zen Programming - Private Class


今日は鍋山真一郎君と禅プログラミング授業をやりました。彼は15歳だけど、ある程度英語ができて、前も開発の経験があって、かなり複雑な開発できました。

Today, I gave a Zen programming private lesson to Shinichiro Nabeyama, a 15-year-old Japanese high school student who knows a little bit of English and had some prior experience with programming.

方語の英語と日本語で喋って、Windows上にDockerを使って、CentOSのContainerを立ち上げて、gccで僕たちがviで書いたCコードをCompileして実行しました。

While communicating with simple English and Japanese, we used Docker on Windows to spin up CentOS containers, upon which we used vi to write C code that we compiled and ran with gcc.


















しん君はCの言語にそんな経験がなかったから、多くの時間はC言語の構文を説明するために使っちゃったから、コード自体はそんな複雑ではなかったけど、少しTDDができました。

Shinichiro didn’t have much experience with C, so a lot of our time was spent on explaining the fundamentals of C, but the actual code was not so complicated and we could do some TDD.

#include "assert.h"

#include "stdio.h"

#include "string.h"

char* artist(char* song)

{

if (0 == strcmp(song, "levels"))

return "avicii";

else if (0 == strcmp(song, "faded"))

return "alan walker";

else if (0 == strcmp(song,"lose"))

return "shinzex";

return "unknown";

}

int addBack_old(int x)

{

if (x == 0)

return 0;

if (x == 1)

return 1;

if (x == 2)

return 1 + 2;

if (x == 3)

return 1 + 2 + 3;

if (x == 4)

return 1 + 2 + 3 + 4;

return -1;

}

//recursive

int addBack(int x)

{

if (x == 0)

return 0;

return x + addBack(x-1);

}

void test()

{

assert(addBack(0) == 0);

assert(addBack(1) == 1);

assert(addBack(2) == 3);

assert(addBack(3) == 6);

assert(addBack(4) == 10);

printf("pass\n");

}

int main()

{

//printf(artist("levels")); printf("\n");

//printf(artist("faded")); printf("\n");

//printf(artist("lose")); printf("\n");

test();

//for (int i = 0; i <= 4; i++)

//{

// printf("%d", addBack(i));

// printf("\n");

//}

}

Recursive functionの作り方も教えました。

I also taught a bit about recursive functions.








もちろん、禅プログラミングのワークショップだったから、坐禅もやりました。自分が13年前からやってるヨガも少し一緒にできました。

Of course, being a Zen programming workshop, we did Zazen. Also, I showed Shinichiro some of the Yoga I had been practicing for 13 years.

Extreme Programmingというなシリコンバレースタイルのペアプログラミングもやってて、2つのモニター、2つのキーボード、2つのマウスでした。あいにく、しん君のキーボードは日本語版だったからかなり苦労しました。

Using the “Silicon Valley style” Extreme programming, we used 2 monitors, 2 keyboards, 2 mice. Unfortunately, Shinichiro’s keyboard was Japanese so we had some difficulties there!



傘松閣の電気の付け方にも間違ってかなり時間使っちゃいました。扇風機もなくて、暑くてしん君が苦労してました。

We also had some trouble turning on the lights in the Zazen room, as well as no fan, so Shinichiro was bearing the heat!

短い3時間でしたが、いろんなことができて、成功のもとである失敗もできて、いい体験でした!

It was a short 3 hours, but we were able to do many things, and make some mistakes to help make next time even better!

6 views0 comments

Recent Posts

See All

Comments


bottom of page