koogawa blog

iOS、Android、foursquareに関する話題

「おうちではじめるプログラミングの授業」を読んだ

クラスメソッドさんのこの記事を読んでさっそくポチりました。

そして、上記のツイートをしたところ、何人かの方から「読んだ感想を聞きたい(良さそうだったら買いたい)」と反応を頂いたので、自分なりの感想をメモします。

TL;DR

良い本でした。1日で読了できるボリュームです。

この本をおすすめしたい方

  • プログラミング教育を小学校でやる理由・目的が知りたい方
  • 子どもにプログラミングを教えてみたいけどプログラミングはまったく未経験の方
  • 幼稚園〜小学生のお子さんをお持ちの方

各章の内容

感想も交えて順に解説していきたいと思います。

第1章 どうしてプログラミング教育を小学校でやるの?――文科省の資料から読み解く実態

私が一番知りたい内容でした。

  • 2020年から始まるプログラミング教育では、プログラミング言語(例えばRuby等)を記述して、プログラムを動かすことは行わない
  • コンピュータに意図した処理を行わせるために必要な論理的思考力を身につけることが目的
  • 具体的な教育方法は不明確

といったことが書かれています。

目的は決まっているけど、具体的な方法は特に決まっていないのですね…。このあたりは各小学校がそれぞれ決めていくのでしょうね。

第2章 保護者は何もしなくてよい? 「プログラミング教育必修化」で変わること、変わらないこと

では、保護者はそれまでに何をするべきなのか?その答えとして

  • 特別に何かすべきことはない
  • 押し付けるのではなく、興味を持ってもらうこと

といった内容が書かれています。

そして、実際に子供がプログラミングに興味をもったときに使える教材も紹介されています。私は Scratch しか知らなかったので、色々と参考になりました。

第3章 プログラミングは意外と身近でシンプル! 日常にあふれているプログラムを理解しよう

この章で

コンピュータが動く仕組みは「順次」「分岐」「反復」の3つだけ

という、プログラマーにとってはおなじみの話が出てきます。私自身もプログラマーなのでここはサラッと流しました。章末では人工知能についても少しだけ触れられています。

第4章 親子でプログラミングをやってみよう! 子どもの好奇心をくすぐる進め方

この章から幼稚園児、小学生を対象とした実践的な内容になってきます。我が息子はまだ1歳なので、数年後の成長を楽しみにしながら読みました。

教育用コンピュータとして IchigoJamプログラミング言語は N88-BASICが登場します。思えば私が生まれて初めて目にしたプログラミング言語もこの言語でした。

ちなみに IchigoJam のセットアップ方法は読んでいてとてもワクワクしました。

第5章 お父さんが教えるプログラミング実践編

この章から実際にコードを書いていきます。

PRINT 123

のような基本的な内容から始まり、最終的には IF 文や GOTO 文を組み合わせて簡単なゲームを作成します。

変数の概念や「分岐」「反復」処理が出てくるので、プログラミングを経験したことがない方にとってはやや難しい内容かもしれません。

個人的にこの章で一番大事だと思ったのは「プログラムを少し改造するとプログラムの動きが変わる楽しさを体感する」ことでした。

第6章 子どもが「プログラミングをやりたい」と言い出したら?――中学校・高等学校でのプログラミング教育

この章から中高生向けのプログラミング教育の話になってきます。 ある日子供が「家でプログラミングをやってみたい」と言ってきたとき、親として準備できる環境にはどのようなものがあるのか、とても詳しく書かれています。

インターネットに接続されたパソコンを買い与えるのが最も理想的ですが、最近ではタブレットを使ったり、クラウド上でもプログラミング環境を用意できるみたいですね。ちなみに、Nintendo 3DSWii でもBASIC言語を実行できるのは知りませんでした。

第7章 「情報モラル教育」は避けて通れない――子どもたちとITの適切な関係性

インターネットを通じた詐欺や、SNSでの被害にあわないようにするためにはどうしたらよいのか?といったことが書かれています。この辺の内容はやはり親としてはとても気になるところです。本章では実際に利用できるフィルタリングサービスや、動画教材へのリンクも紹介されているので、とても参考になりました。

まとめ

冒頭にも書きましたが、結論としては「買ってよかった」と思える内容でした。 私の息子が幼稚園ぐらいの歳になったら、一緒に IchigoJam を買ってプログラミングを楽しむ、という夢ができました。

将来必修化されるプログラミング教育に不安を抱いている親御さんや、純粋に子どもにプログラミングを教えてみたい方にオススメの一冊です。

本当の意味で仲が良い人

数日前にこんなことをつぶやいたのだけど、なんとなく答えが出たのでメモしておく。

結論から言うと、それは本当の意味で仲が良いとは言えないと思う。適当な距離を置きながら付き合ってうまくやれたとしても、それは所詮、建前上の関係なんだと思う。

じゃあ、「本当の意味で仲が良い」とはどういうことなのか?

ひとつは仕事で長い間(少なくとも半年)一緒に働いてもうまくやれている人。人は一緒に働くと、だんだんその人の悪い部分が見えてくる。逆に言うと、しばらく一緒に働いてみないとその人の悪い所は見えないと思っている。(だから採用活動というのは難しいんだろうな)

もちろん悪いところがひとつもない人間なんて滅多にいないだろう。お互い悪いところを認めた上で、時には衝突しながらもうまくやれている人は仲が良い関係なんじゃないだろうか。

一方で、一緒に仕事をする前はすごく仲が良かったのに、同じチームで仕事をしてみたら本当にいろいろと合わなくて、最終的に仕事以外ではお互いを避けるようになってしまった人もいる。

「この人と一緒に働いてみたい」とずっと憧れの存在だったのに、いざ一緒の会社で働いてみたらずいぶん印象が違ってがっかりした、なんてこともあるかもしれない。この場合は最初から無理に近づこうとはせずに、ずっと憧れの存在のままでいられたほうがお互いにとって幸せだったのかもしれない。

なんか薄っぺらい記事になってしまったけど、今日書きたいことは以上です。

2018年の目標

f:id:koogawa:20180211233023p:plain

気が付けば2月になってしまいましたが、今年の目標を書いてみます。

基本的に仕事をしてる時以外と、帰宅後に子供が起きている時間は育児に集中したいので、その条件下でもできる範囲で目標を設定しました。

Stack Overflowで5000 reputationを目指す

以前から続けているスタックオーバーフロー活動を今後も続けていきます。そして、今年中に 5000 reputation を達成したいと思います。

profile for Kosuke Ogawa at Stack Overflow, Q&A for professional and enthusiast programmers

reputation が 5000 に達すると、"Approve Tag Wiki Edits" 権限が付与されるようですが、その解説はまた別の機会に。

ちなみに、https://stargzr.net/?service=stackoverflow によると、今現在、日本で 5000 reputationを超えているエンジニアは id:KishikawaKatsumi さんただ1人のようです。*1

日本語版スタックオーバーフローはやらないの?

たまに聞かれますが、以前もつぶやいた通り

日本語版の雰囲気にはあまり馴染めずにいます。(いきなりチャットルームに呼び出しとか本家ではやられたことない)

また、英語の勉強にもならないので、なるべく本家Stack Overflowのほうに貢献していきたいと思っています。

公開しているライブラリのメンテナンスを続けていく

ちょくちょくこのブログでも紹介しているのですが、foursquare API 向けのクライアントライブラリを公開しております。去年は念願だった公式デベロッパーサイトで紹介してもらう、という夢をかなえることができました。

github.com

だいぶニッチなライブラリですか、ちょっとでも使ってくれる人がいる限り、今後もメンテナンスは続けていきたいと思っています。今年は Swift 5 対応が待っていますね!

リモートでも参加できる勉強会に参加する

昨年、東京から宮崎に移住したこともあり、東京で開催される勉強会への参加は難しくなりました。しかし最近はリモートで参加できる勉強会も増えてきているので、今後もそういった勉強会には積極的に参加していきたいです。そして、隙あらば運営にも携わっていきたいと思っています。

ちょっと宣伝

早速ですが、私も運営として参加している Swift Tweets 2018 Spring が4月14日に開催されます!

swift-tweets.connpass.com

Twitter 上で開催されるイベントなので、気になる方はぜひチェックしてみて下さい。

若者のノリで「やっていき!」と叫ぶのはツラい年齢になってしまいましたが、今年もゆったりとやっていきます。

*1:もちろん全てのエンジニアがStargzrに登録しているわけではないですし、実際にはもっとたくさんいることはわかってます

jflute さんの日記が面白かったのでほぼ全記事読ませていただきました

私は面白いブログを見つけると、過去の記事まで遡って読む習慣があります。

最近、フィードに流れてきた

意外と忘れがちな優秀なプログラマーになるための10のコツ - jfluteの日記

の記事をきっかけに、id:jflute さんのブログ記事も全部読んでみることにしました。(1ヶ月以上かかりました)

今回は jflute さんの記事の中でも特に面白かった記事を僭越ながら紹介させて頂きたいと思います。

※ここで言う「面白い」とは「勉強になる」「気付きがある」という意味合いが強いです


何をやるかよりも誰とやるか これはなんかわかるんですよね。

会社は好きなのに去る人 これほど切ないことはないですね😢

レスポンスのない人にリクエストは送らない 確かにその通り。

わかります。

あるあるですね。つらい😩

良かったところは「良かった!」って言わないと知らない間に消えちゃったりするんですよね。

おおきなかぶ。とても良い例えだと思います。

「なんで」はすごく大事。多少ウザがられてでも聞いていきたいです。

自走できるディベロッパーでありたいものです。

勉強会に行かないと成長しないわけでもないです。ただ、"機会損失" になるかもしれないね、 って思うのです まさに点と線だと思いました。

ドキュメントだけで、オープンソースの比較はできないよ、というお話です。

両方だいじ、なんですね。

誰がダウンロードしたのかもわからない これわかるなぁ

破片プログラマーの最大の悲しみは、破片であることを自覚せずに成長してしまうこと 自分で脱出するしかない、と。

どちらを選ぶも自由です。

聴いてる音楽がそのままその時期のBGMに これすごくわかるんですよね。

「既存コードに合わせて終了」の姿勢は、 プロフェッショナルとして、どうでしょう? うーん耳が痛い😓

関係ないですが、私は本屋に行くと必ずトイレに行きたくなります。

そういう人が身近にいる環境を作るためにも、やっぱり行動するしかないんですね。

わたしもディズニーランドからアプリのリリースボタンを押したことならあります。

これがホントの DDD(ディズニー駆動開発)なんつって。

質問や相談をするときは「その問題領域の背景」も 添えましょう 違うところに問題があったりするんですよね。

「いわゆる "ハマっている" 人の多くは、 分析し切れてないのに、 必死に解決方法だけを探っている」

点と点をつなぐ、誰かの話と似ていますね。


技術の話題ではないのですが、次のエントリもすべて読みました。(その7まであります)

ディズニーシーで揺れた日 その一 - jfluteの日記


Jflute さんの記事は、最後に美しい写真で締めくくるのが特徴的ですね。(ディズニーの写真でしょうか)

今後も読ませていただきます。

【StackOverflow活動記】信頼度3,000に到達、クローズ票に投票する権限が与えられました

コツコツ続けております。

本日、reputation(信頼度)が 3,000 を突破しました🎉

このタイミングで「Cast Close And Reopen Votes」権限が付与されました。

Cast Close And Reopen Votes 権限とは

公式サイトに詳しく説明があります。

Privileges - cast close & reopen votes - Stack Overflow

いろいろ書いてありますが、要は

  • 不適切な質問をクローズ(誰も回答できない状態にする)する票を投じることができる
  • クローズされた質問を再オープンする票を投じることができる

権限です。

不適切な質問とは?

  • 過去に同様の質問が投稿されている
  • 不明瞭、範囲が広すぎる、またはその他の問題があり、回答が困難である
  • Help Center に書かれているような、Stack Overflow の趣旨から外れている質問

がそれに該当します。

クローズされた質問はどうなるのか?

クローズ票が5票に達すると、[on hold] という文字がタイトルに追加されます。新しい回答はもう受け付けられません。この間に質問者が質問内容を改善した場合、その質問は reopen されることがあります。reopen のフローは公式サイト に詳しく書かれています。質問内容が改善されずに5日が経過すると、[closed] という文字がタイトルに追加されます。

次の目標

次は 5,000 reputation で付与される approve tag wiki edits 権限を目指します💪

私の Stack Overflow 活動はまだまだ続きます。

【StackOverflow活動日記】Create Tag Synonyms 権限が付与されました

コツコツ続けております。(StackOverflow活動とは

本日、reputation が 2,500 を突破しました🎉

同時に「Create Tag Synonyms」権限を付与して頂きました。

Create Tag Synonyms 権限とは

タグの別名を作成できる権限です。

例えば iOS に関する質問をする際、ほとんどのユーザーは ios というタグを付けると思います。しかし、人によっては ios-sdkapple-ios といったタグを付けることもあります。これだと、iOS関連の質問を見つけるのが難しくなってしまいますね。そこで、Stack Overflow にはタグに別名(Synonym)を付ける機能が用意されています。

例えば、ios には ios-sdk, apple-ios, iphone-os という Synonym が登録されています。

Synonym を使用して質問するとどうなるか?

Synonym を使用すると、Master(本当の名前)に自動的に変更されます。例えば、ios-sdk というタグを使おうとした場合、タグは自動的に ios に変換されます。この時、ユーザーには変更があった旨は通知されません。

また、Synonym から Master への自動変更回数はカウントされています。これらは /tags/synonyms から確認できます。それぞれの Synonym がどれだけ役に立っているか評価できるわけですね。

いやー Stack Overflow ってホントに良く出来てますねー