期間限定

キャンペーン中

体験授業申込

BS11「どっぷりアプリ」にて弊社アプリ『あなたは大丈夫?知らないと恥ずかしいビジネスマナー』を取り上げていただきました。

BS11「どっぷりアプリ」(2021年1月26日(火)23:00-23:30)にて弊社iOS・androidアプリ『あなたは大丈夫?知らないと恥ずかしいビジネスマナー』を取り上げていただきました。

※2021/2/9まで見逃し配信で全編無料でみれますので是非ご覧になってください。(11:07~) https://vod.bs11.jp/video/doppuri-apuri/U6lDOm/

番組で紹介していただいたバージョンから、続編として『あなたは大丈夫? 知らないと恥ずかしい ビジネスマナー plus』をリリースしました。 続編は大きなスマホ画面にも対応し、問題を追加してます。 是非ダウンロードして遊んでみてください♪

【iOS】
https://apple.co/3acPKhR

【android】
https://play.google.com/store/apps/details?id=jp.co.knocknote.BusinessMannerPlus

こちらのアプリは教室でも学べるUnityで開発してます。今度は生徒さんが作ったアプリがメディアで特集される日が今から楽しみです。

期間限定で、無料体験教室のキャンペーンも行っておりますので是非一度ご参加してみてください。

【Unityコース】
https://education.knocknote.jp/unity.php

【キャンペーンページ】※ご応募はこちら
https://education.knocknote.jp/programming…/campaign.php

オンラインでのプログラミング体験教室も開催しておりますので、お気軽にご参加ください♪

ーーーーーーー
【番組概要】
BS11『どっぷりアプリ』
毎週火曜日 11時00分〜11時30分
出演者:木本武宏(TKO)、前田希美、山田麻莉奈
番組URL:https://www.bs11.jp/entertainment/doppuri-apuri/

失敗しない!初めてのアジャイル開発①〜アジャイル 開発について知ろう〜

プロダクト開発のご依頼をいただいたり、自社開発で新プロジェクトを立ち上げることになったあなた。

アジャイル 開発という開発手法を聞いたことはあるけれど、実際どうすればいいの?何から始めればいいの?と困ってませんでしょうか。

このシリーズではそんな初心者エンジニアの方やPMになりたての方に向けて、アジャイル開発での経験や失敗を繰り返してきた筆者が、アジャイル開発について説明していきます。

読み終わる頃には、上記がある程度理解できて、早速アジャイル 開発に取り掛かれる状態を目標とします。※ものすごくざっくりと簡潔に書くので詳細はこちらの本などから勉強をおすすめします。

アジャイル開発とは?

アジャイル 開発について知るためには古くからあるもう一つの開発手法について触れておく必要があります。大きく分けて二つある開発手法のうちのもうひとつ、ウォーターフォールモデルです。

ウォータフォール開発工程
ウォータフォール開発工程

要件定義>設計>実装>テスト>運用

このように滝のように工程が決まっている開発手法となります。要件定義で、クライアントの要求に対して、ソフトウェアで実現することを決めます。

そして基本設計で機能やどう実現するかを決め、実装で開発に入ります。

開発が終わると単体テスト(単体機能)と結合テスト(機能間)、総合(システム)テストを行った後、ようやくリリースとなります。ローンチともいったりしますね。その後運用フェーズに入っていきます。

いかがでしょうか。とても納得感のある開発手法に思いませんか?要件定義や設計から順番になされ、スケジュール通りにピシッと進めていく。抜け漏れなく工程を管理し、レベルの高いスケジュール及び品質管理が要求されます。

開発において最も重要なQCD(Quality:品質、Cost:コスト、Delivery:納期)の見通しや精度も高くクライアント側も安心して任せられそうですね。

その反面、あることが絶対にできなくなっています。

それは、工程の後戻り、仕様変更です。

そして工程にあわせた分業化により、予算があり最適な人材配置ができる大規模開発にはむいていますが、仕様変更や予期せぬトラブルなどの不確実性には弱いです。つまり小規模のWEB開発やアプリ開発、頻繁な仕様変更が予測されるゲーム開発などはウォーターフォールは向いていないと言えます。

では、アジャイル 開発をみてみましょう。

アジャイル 開発のメリット・デメリット

アジャイル 開発のメリット

ウォーターフォールでは、要件定義>設計>実装>テスト>運用の工程の一つ一つの成果物が完成品となり、例えば設計段階で「そもそもこの機能いらなくない?」となっても要件定義には戻れないのです。

その点アジャイル 開発では以下の図のように開発工程が進んでいきます。1〜4週間のイテレーション(反復)と呼ばれるサイクルを繰り返します。

アジャイル 開発工程
アジャイル 開発工程

1.柔軟な軌道修正が可能

もともとAgileとは「機敏な、回転の速い」という意味です。

アジャイル 開発では、小さくスプリント という一定の期間を繰り返し進んでいくので、PDCAサイクルを回しながら柔軟に進めていくことができます。

早い段階でシステムに触れ、フィードバックを得ることができ、柔軟かつ機敏な軌道修正が可能です。

2.素早くスピーディに開発ができる

ウォーターフォールに比べ、がっちがちにスケジュールを組んだりする必要がありません。設計から開発に移行する早さが、とても早くスムーズです。後述しますが、ドキュメントの量も最小限であるため、その分開発の速度もスピーディです。

3.ドキュメントが最小限

ウォーターフォールと比べ途中で仕様変更などある前提でプロジェクトが進みます。なので、予め文書作成を細かくやる必要がありません。そして分業もウォーターフォールほどしていないため、「あのドキュメントはどうだ」「この実装はどうだ」など、チーム内での不毛な評論が発生しにくいともいえます。

さらにドキュメントが少ないので工数が削減され、低コストで短納期の実現にもつながります。中小企業ですと低コストでスピーディな開発を要求されることも多いので、アジャイル 開発はむいていると感じます。

アジャイル 開発のデメリット

1.納期遅れが多い

柔軟な分、かっちりと決まっていないため、スクラムマスターはじめチームが自律し主体的に動いていないとすぐにスケジュールがぶれます。日本の企業では上が設計した作業をこなすという工程が多いので、言葉を選ばずにいうと思考停止でも仕事がもらえ、なんとなくこなしていればどうにかなるという一面がありますよね。

アジャイルの場合、毎日のスクラムなど始め、チーム全員で決めることも多いので、プロダクトに対してある程度前のめりな姿勢が要求されます。その分チーム自体のレベルが低いと納期遅れが頻発するのも事実です。柔軟な分、無駄な贅肉(価値を生まない機能)を開発してしまったり、迷走した結果納期に遅れてしまうことも多いのです。

2.ブレやすい

スプリント毎に振り返り、見直します。その際陥りがちなのが機能のブレです。これも必要じゃない?これ本当にいる?など様々な意見が飛び交うのは悪いことではありません。しかし、そもそもなんのために作るのかというところをしっかりチームで共有していないと余計な機能を開発することになったりと、ブレがちなのも事実です。

3.難易度が高い

正直これが一番ネックではないでしょうか。チーム全体でストーリーポイントをフィボナッチ数列で見積もったりと議論する場が多くなります。そのため、チーム全体のレベルがモロに見積もりやスケジュールに反映されます。

また、プロダクトの管理も柔軟だからこそ難易度が相当高いです。会議に当てる時間もある程度割かなくてはいけないため、マネージャーは予算管理や工数管理も、バッファをもった計画を立てる必要があります。

まとめ

いかがでしたでしょうか。今回はアジャイル 開発が初めての人に向けて、ざっくりとアジャイル開発の全体像について説明しました。ウォーターフォールとの違い、アジャイル 開発のメリット・デメリットについて理解していただけたかと思います。次回「失敗しない!初めてのアジャイル開発②〜アジャイル 開発について知ろう〜」はアジャイル 開発で出てくる用語を知り、より実戦に向けた詳細を学んでいきましょう。

[MVCモデル]とは?Laravelにも使われる概念を初心者に向けて解説

今回はLaravelにも使われている「MVCモデル」と呼ばれるアーキテクチャ(構造)について解説します。

「そもそもMVCとはなんのこと?」

「MVCとは何を行っているの?」

という方に向けて、MVCモデルの概要とそれぞれの役割について、主に下記の2点について解説します。

  • MVCとは?
  • MVCのそれぞれの役割

前回はルーティングについて解説しました。ルーティングについては前回の記事Laravelのルーティングの書き方とパラメータの使い方にて解説しています。

1.MVCとは?

MVCとは(Model-View-Controller)の略で、処理をモデル(Model)、ビュー(View)、コントローラ(Controller)の3つに分けて記述する考え方です。機能ごとにファイルを分けることによって処理を見やすくしています。

3つそれぞれの役割は、おおまかに以下のようになっています。

  • モデル(Model):データベース系の処理を行う
  • ビュー(View):画面表示を行う
  • コントローラ(Controller):モデルとビューの橋渡しなど、全体の制御を行う

では、「Model」、「View」、「Controller」それぞれの役割について解説します。

2.MVCのそれぞれの役割

2-1.モデル(Model)

モデル(Model)とは、「データベースとのアクセスの処理」を担当しています。

モデルイメージ

Controllerからデータを受け取る命令が出され、命令に合うデータをデータベースから探します。そして受け取ったデータをControllerに送ります。

2-2.ビュー(View)

ビュー(View)とは、「Webブラウザに表示する見た目の生成」を担当しています。

ビューイメージ

まずルーティングで、アドレスとControllerのアクションメソッドを紐付けます。ルーティングに関してはLaravelのルーティングの書き方とパラメータの使い方にて解説しています。

ユーザーがリクエスト(アドレスにアクセス)するとControllerのアクションメソッドの処理が実行されます。

Controllerがリクエストに合うデータをViewに渡します。

ViewがControllerから受け取ったデータをレンダリング(見た目を整えて表示)してユーザーに渡します。

2-3.コントローラ(Controller)

コントローラ(Controller)とは、「ユーザーからリクエストを受け取り、ModelとViewの橋渡し」を担当しています。

コントローライメージ

ユーザーからのリクエストを受け取り、リクエストに合うデータをモデル経由で受け取ります。その後モデル経由で受けとったデータをViewに渡します。

まとめ

いかがでしたでしょうか?今回はMVCの概要とそれぞれの役割を解説しました。まとめると下記の4点です。

  • MVCとは、処理を3つに分けて記述する考え方
  • Modelとは、「データベースとのアクセスの処理」を担当
  • Viewとは、「Webブラウザに表示する見た目を生成」を担当
  • Controllerとは、ユーザーからリクエストを受け取り、ModelとViewの橋渡し」を担当

Laravelで開発を行うにはMVCの知識が必要になってきます。MVCそれぞれの役割をしっかり理解し、効率的にアプリケーションの開発をしましょう!

Laravelのルーティングの書き方とパラメータの使い方

Laravelの勉強を始めて「ルーティング」という言葉が出てくると思いますが

「正直、ルーティングについてよく理解できていない」

「ルーティングの書き方がわからない」

という方に向けて、Laravelの勉強を始めたばかりでもルーティングの基本を理解し、パラメータを使用してルーティングを記述する方法をまとめました。下記の3点について解説します。

  • ルーティングの基本について理解する
  • ルーティングを記述してアクセスする
  • パラメータを受け取って使用する

前回の記事ではLaravelをMacにインストールする方法について解説しました。まだインストールされていない方はPHPフレームワークLaravelをMacにインストールしてブラウザに表示させる方法にて解説しています。

1.ルーティングとは?

特定のアドレスにアクセスしたとき、どの処理を呼び出して実行するかを管理するのが「ルーティング」です。

「https://~/◯◯というアドレスにアクセスしたら□□という処理を呼び出す」というアドレスと処理の紐付けを行っているのが「ルーティング」です。

デフォルトで用意されているトップページのルート情報を見てみましょう。作成したプロジェクトの「routes」フォルダの中にあるweb.phpを開くと下記のコードが記述されています。

web.phpデフォルトコード

この場合、「’/’というアドレスにアクセスしたらfunction内の処理を実行する」となります。

function内の「return view(‘welcome’)」については後で解説しますが、ここでは「トップページをブラウザに表示させている」と思っていてください。

2.「routes」フォルダとは

ルーティングの情報が入っているフォルダが「routes」フォルダです。この中にはいくつかのファイルがありますが、基本的にWebページとして公開するものは全て「web.php」にルート情報を記述します。

3.ルーティングを記述する

3-1.ルート情報(GETアクセス)

Route::get(アドレス , 関数や「コントローラ、コントローラのアクションメソッド」など);

GETアクセスのルート情報は、Routeクラスの「get」というメソッドを使って設定します。第1引数に割り当てるアドレスを、第2引数にアドレスにアクセスした時に呼び出される処理を用意します。第2引数には関数を指定する他に、「コントローラとコントローラのアクションメソッド」と呼ばれるものを指定する場合もあります。

  • Routeクラスの「get」というメソッドを使って設定
  • 第1引数、割り当てるアドレス
  • 第2引数、それによって呼び出される処理(関数を指定する場合と「コントローラとコントローラのアクションメソッド」を指定する場合がある)

gerメソッドでアドレスと処理を割り当てる、ということがルート情報設定の基本になります。

3-2.トップページのルート情報

デフォルトで用意されているトップページのルート情報がどのように設定されているか確認しましょう。

web.phpデフォルトコード

第1引数に’/’というトップページのアドレス、第2引数に関数を指定しています。この関数の中で「return」を使用して戻り値を指定しています。この「return」で返される値が、そのアドレス(今回の場合は’/’)にアクセスした際に送られます。

viewという関数はファイルをロードし、そのファイルをブラウザに表示するという関数です。

この場合は「welcome.blade.php」というファイルを表示しています。

「welcome.blade.php」というファイルは「resources」フォルダの中にある「views」フォルダに用意されています。

welcome.blade.php

3-3.ルート情報を追加する

実際にルート情報を追加します。routesフォルダの中にあるweb.phpを開き、コードを追加します。

sampleルーティングコード

http://localhost:8000/sample にアクセスします。

sampleページ

上記のような画面が表示されます。この画面が追加したルート情報によって表示された画面です。

ここでは、第2引数のreturnでHTMLのコードを直接返してWebブラウザに表示されています。

3-4.ヒアドキュメントを使用して表示する

ヒアドキュメントとは、<<<EOF~EOF;の間に書いたコードをひとつにまとめて変数などに代入できます。

web.phpに下記のコードを追加します。

ヒアドキュメントコード

http://localhost:8000/sample にアクセスします。

ヒアドキュメントページ

上記のような画面が表示されます。このように<<<EOF~EOF;の間に書いたコードを「$heredoc」に代入し、returnで「$heredoc」を返してブラウザに表示させることができます。

4.ルートパラメータを使用する

Route::getは、アクセスする時にパラメータを設定し値を直接渡すことができます。第1引数のアドレス部分に{パラメータ}という形で値を用意し、第2引数の関数では、パラメータの値を受け取る変数を引数として用意します。

web.phpに下記のコードを追加します。

ルートパラメータコード

http://localhost:8000/sample/HELLO!!にアクセスします

ルートパラメータページ

上記のような画面が表示されます。この第1引数{cmt}、第2引数$cmtがパラメータとなります。sample/{cmt}の{cmt}の値が、$cmtに代入され、受け取った値を表示させる事ができます

5.任意パラメータに変更する

先ほど書いたルートパラメータは「必須パラメータ」と呼ばれ、パラメータを設定しないとエラーになります。

先ほどのコードでhttp://localhost:8000/sample/とアクセスするとエラーになります。

パラメーターエラーページ

第1引数{cmt}、第2引数$cmtが必須パラメータとなっているので、アドレスにパラメータを入力しないとエラーになります。

パラメータを入力しないでもアクセスできる方法が「任意パラメータ」になります。

先ほどのコードのルーティングの引数を下記のように変更します。

  • {cmt} → {cmt?}
  • ($cmt) → ($cmt = ‘パラメータを受け取っていません!’)
任意パラメータコード

http://localhost:8000/sample/にもう1度アクセスします。

任意パラメータページ

cmtパラメータは、「任意パラメータ」となり、アドレスにパラメータを入力せずにアクセスすると「’パラメータを受け取っていません!’」が表示されます。アドレスにパラメータが入力されている場合は、パラメータの値が引数に代入されます。

まとめ

いかがでしたでしょうか。今回はLaravelのルーティングの基本とパラメータについて解説しました。まとめると下記の3点です。

  • ルーティングとは、アドレスと処理の紐付けを行い管理する
  • ルート情報の基本は、メソッドでアドレスと処理を割り当てる
  • ルートパラメータを使用して、アドレスに値を設定できる

今回は「Route::get」メソッドのみで解説しましたが、他にも「Route::post」や「Route::resouce」などのRouteクラスも存在します。また、同じPHPフレームワークの「CakePHP」でもルーティングを使用していますので、ルーティングの基本をしっかり覚えてLaravel以外のフレームワークでも活かせる知識を身につけましょう

PHPフレームワークLaravelをMacにインストールしてブラウザに表示させる方法

プログラミングの勉強を始めて

「Laravelを使用して開発したい!!」

「でもLaravelのインストール方法がわからない」

という方に向けて、プログラミング初心者でもLaravelをインストールできる手順をまとめました。MacにLaravelをインストールし、ブラウザにLaravelのスタート画面を表示させます。

  • Laravelをインストールする準備をする
  • Laravelをインストールしてプロジェクトを作成する
  • プロジェクトを実行しLaravelのスタート画面をブラウザに表示する

1.Laravelをインストールする準備をする

1-1.Homebrewをインストール

Homebrew公式サイト

Homebrew公式サイトにてコマンドをコピーし、ターミナルで実行します。

Homebrew公式サイト:https://brew.sh/index_ja

実行後、brew -v コマンドを実行し、バージョンが表示されるとインストール完了です。

1-2.Composerをインストール

ターミナルにて brew install composer を実行します。

composer -v を実行し、バージョンが表示されるとインストール完了です。

Composerバージョン

1-3.Laravelインストーラをインストール

ターミナルにて composer global require “laravel/installer” を実行します。

cd ~/.composer/vendor/bin を実行し、 lsを実行します。laravalと表示されるとインストール完了です。

1-4.Laravelインストーラを呼び出す

export PATH=$HOME/.composer/vendor/bin:$PATH を実行します。

laravel -v を実行し、バージョンが表示されるとインストール完了です。

2.Laravelをインストールする

2-1.プロジェクトを作成

プロジェクトを作成するディレクトリに移動します。

laravel new プロジェクト名 を実行しプロジェクトを作成します。

「laravelapp」という名前でプロジェクトを作る場合

laravel new laravelapp と実行します。

laravelのバージョンを指定したい場合は

composer create-project “laravel/laravel=バージョン” プロジェクト名

と実行しバージョンを指定してプロジェクトを作成出来ます。

Laravelのバージョンが「6.0」系、プロジェクト名が「laravelapp」というプロジェクトを作成する場合

composer create-project “laravel/laravel=6.*” laravelapp

と実行します。

3.プロジェクトを実行しブラウザに表示させる

作成したプロジェクトにディレクトリを移動します。

php artisan serve と実行しサーバーを起動します。

Webブラウザから以下のアドレスにアクセスします。

http:localhost:8000/

Laravelトップページ

上記のようにページが表示されると完了です。動作を確認したらCtrlキー+「C」キーを押すとサーバーが停止します。

まとめ

いかがでしたでしょうか。今回はプログラミング初心者向けに、phpのフレームワーク人気No.1のLaravelのインストールとブラウザに表示する方法をまとめました。

次回から新しくLaravelのプロジェクトを作成する場合は、Laravelをインストールする準備が終了しているので、「2.ララベルをインストールする」からの手順でプロジェクトを作成することが出来るので、快適にPHP開発を進めましょう!

Laravelをインストールされた方は、次の記事のLaravelのルーティングの書き方とパラメータの使い方にてルーティングについて解説していますので是非見てみてくださいね。

秋のプログラミング発表会を開催しました

株式会社Knocknoteが運営している子ども向けプログラミング教室で、自作ゲームの発表会を開催しました。
新型コロナウイルス感染症の影響を受け、11月14日〜11月29日で6回に分け、それぞれの日程に別れて少人数で行いました。

発表会までに、何を作るか・どんな人に遊んでもらいたいか計画を立て、試行錯誤を繰り返しながら作品を完成させ、作ったゲームの内容をスライドに表し、発表の練習を行い、本番に挑みました。


発表方法


発表はスクラッチコース、Unityコースの生徒は分けず行いました。

それぞれの発表後に作ったゲームを遊ぶ時間を設け、お互いの作品の理解を深めることができました。

スクラッチコースの生徒はUnityで出来ることや、可能性の大きさに興奮し、Unityコースの生徒はスクラッチの意外な使い方や、柔軟な思考に驚き、今後の参考や刺激に大いになったと思います。


プログラミング発表会の様子


それでは、発表会の様子を一部ご紹介します。

当日はみんな緊張した様子を見せながらも、準備した成果をしっかりと発表できていたと思います。

お互いのゲームで遊ぶ際も遊び方をレクチャーしたり、コツを教えたりとそれぞれコミュニケーションを取り理解が深まった発表会となりました。


受賞者


小学生部門受賞者


三科亮太さん

小学生に大人気!プログラミングの基礎が学べるスクラッチの教室での体験談。初心者でも学べる授業内容や作品例を紹介

スクラッチで全都道府県が出てくる脱出ゲームを作った三科さん。各都道府県の名産や特色もわかる作品でした。発表はスライドを見やすくきれいにまとめ、聞き取りやすいスピードと声の大きさで発表していました。


下津龍人さん

スクラッチで電車ゲームを作った下津さん。電車の動きや速さ、デザインにこだわりを感じる作品でした。発表はハキハキと大きな声で発表し、質問にもしっかりと答えていました。


中学生部門受賞者


寺内悠樹さん

スクラッチで戦闘機対戦ゲームを作った寺内さん。戦闘機やフレアのモーションその他の見た目など、細かい部分のこだわりが光る作品でした。発表後のそれぞれの作品をプレイする時間では、低学年の生徒にも丁寧に遊び方を教えていました。


神垣匡伸さん

Unityでジャンプアクションゲームを作った神垣さん。見た目やジャンプの動きなど、販売されているゲームさながらの完成度の高い作品でした。発表はスライドの様々な機能を使い、惹きつける見せ方をしていました。


発表会を終えて


受賞の皆さんおめでとうございます。個性が光る作品をそれぞれの工夫がされた発表をできたことが受賞に繋がったと思います。

受賞者以外の作品も素敵なものばかりで、素晴らしい発表会となりました。

今後も発表会は開催予定です。次回の発表会もお楽しみに。



【ただいま期間限定お得なキャンペーンを実施中】

ただいまTETRA UPでは体験授業や入会金などが無料になる、プログラング春得キャンペーンを実施しています。
この機会に体験教室に是非ご参加ください。

>>プログラング春得キャンペーン特設ページはコチラ


【重要】新型コロナウィルス感染拡大に伴う「緊急事態宣言」の対応について(5月30日12:00更新)

平素よりKnocknoteEducationをご利用いただき誠にありがとうございます。

6月3日(水)より、新型コロナウイルス感染拡大防止策を行い教室にて授業を再開いたします。
つきましては、下記感染拡大防止策にご協力いただきますようお願いします。
・入室される際は、生徒様・保護者様ともに、マスクをご着用ください。
・入室される際は、アルコール消毒をお願いします。
・体調がすぐれない場合及び、新型コロナウイルスに感染した疑いがある方が周囲にいらっしゃる場合は授業をお受けいただけません。

また、当教室におきましても以下感染拡大防止策を徹底します。
・スタッフの出勤時に手洗い及び消毒を行います。
・スタッフの体温測定、健康状態チェックを行い、異常がないスタッフのみ対応します。
・スタッフはマスクの着用をし授業を行います。
・毎授業前後のパソコン周辺機器および教室の消毒を行います。
・定期的な窓の開放による教室の換気を行います。

上記事項について、ご不明な点等ございましたら下記番号または、LINEにてお問い合わせください。お電話がつながりにくくなる場合や、ご返信にお時間をいただく場合がございます。

TEL 03-6709-8725
受付時間:水曜日~日曜日 10:00~18:30
また、内容や期間は政府の方針により変更となる場合がございます。
弊社の営業方針は引き続きホームページまたは、SNSでお知らせいたします。
公式ホームページ https://education.knocknote.jp/
LINE https://lin.ee/q7XqbM4
Facebook https://www.facebook.com/KnocknoteEducation/
Twitter https://twitter.com/KnocknoteE

■当教室では、生徒様及びスタッフの安全を第一に考え運営方針を定めてまいります。
皆様には、ご不便をお掛けいたしますが、何卒ご理解・ご了承賜りますよう、お願い申し上げます。

【重要】新型コロナウィルス感染拡大に伴う「緊急事態宣言」の対応について(5月6日12:00更新)

平素よりKnocknoteEducationをご愛顧賜りまして誠にありがとうございます。
新型コロナウイルス感染症に伴う弊社の対応方針について、お知らせいたします。
まず、この度の新型コロナウイルス感染症の拡大により、影響を受けている方々にお見舞い申し上げます。

■緊急事態宣言を受けた今後のサービス方針のご案内について

緊急事態宣言の延期のため、教室の再開は当初、5月7日からの予定でしたが、
6月3日(水)に延長させていただきます。

つきまして、先日お知らせいたしました内容の変更をいたします。

(1)  3月~5月の授業のお振替について
こちらは変更はございません。8月末までお振替可能とさせていただきます。

(2) 4月8日(水)~5月6日(水)までの期間のオンラインレッスンについて
通常授業と同じ料金でマンツーマンのオンラインレッスンの受講可能期間を5月31日(日)まで延長いたします。

(3) 4月8日(水)~5月6日(水)の期間、教室での普通授業の休校について
休校期間を5月31日まで延長いたします。
教室での普通授業の再開日は6月3日(水)を予定とさせていただきます。上記事項について、ご不明な点等ございましたら下記番号または、LINEにてお問い合わせください。お電話がつながりにくくなる場合や、ご返信にお時間をいただく場合がございます。

TEL:03-6709-8725
受付時間:水曜日〜日曜日 10:00~18:30

また、内容や期間は政府の方針により変更となる場合がございます。
弊社の営業方針は引き続きホームページまたは、SNSでお知らせいたします。

公式ホームページ  https://education.knocknote.jp/
LINE https://lin.ee/q7XqbM4
Facebook  https://www.facebook.com/KnocknoteEducation/
Twitter  https://twitter.com/KnocknoteE

■当教室では、生徒様及びスタッフの安全を第一に考え運営方針を定めてまいります。

皆様には、ご不便をお掛けいたしますが、何卒ご理解・ご了承賜りますよう、お願い申し上げます。

【重要】新型コロナウィルス感染拡大に伴う「緊急事態宣言」の対応について

平素よりKnocknoteEducationをご愛顧賜りまして誠にありがとうございます。
新型コロナウイルス感染症に伴う弊社の対応方針について、お知らせいたします。
まず、この度の新型コロナウイルス感染症の拡大により、影響を受けている方々にお見舞い申し上げます。

■緊急事態宣言を受けた今後のサービス方針のご案内について

(1) 3月〜5月の授業は現時点で8月末までお振替可能とさせていただきます。

(2) 4月8日(水)〜5月6日(水)までの期間、ご希望の方はオンラインマンツーマンレッスンを受け付けます。上記期間でのオンラインレッスンでの受け付け時間は10:00〜13:00 14:00〜18:00となります。また、今回は通常のお月謝で対応致しますので、追加料金などは必要ございません。

※最初のオンラインレッスン前に、設定マニュアルをお送りします。5分前になりましたらお電話をかけさせていただきます。
※ご予約状況により、複数名でレッスンとなる可能性がございます。予めご了承ください。

(3) 4月8日(水)〜5月6日(水)までの期間の教室での通常授業を全て休講といたします。
授業再開日につきましては、改めてホームページまたは各種SNSにてお知らせいたします。

(4) お問い合わせ
上記事項について、ご不明な点等ございましたら下記番号または、LINEにてお問い合わせください。
お電話がつながりにくくなる場合や、ご返信にお時間をいただく場合がございます。

TEL:03-6709-8725
受付時間:水曜日〜日曜日 10:00~18:30

なお、内容や期間は変更させていただく場合がございます。変更となる場合には随時ホームページまたは各種SNSでお知らせいたします。

公式ホームページ: https://education.knocknote.jp/
LINE:https://lin.ee/q7XqbM4
Facebook:https://www.facebook.com/KnocknoteEducation/
Twitter:https://twitter.com/KnocknoteE

■当教室では、生徒様及びスタッフの安全を第一に考え運営方針を定めてまいります。

皆様には、ご不便をお掛けいたしますが、何卒ご理解・ご了承賜りますよう、お願い申し上げます。

【簡単】小学生にオススメな無料プログラミング教材3選

【簡単】小学生にオススメな無料プログラミング教材3選

最近、「自宅でも小学生の子供にプログラミング教育を始めた方が良い」なんて事を聞く様になりました。

とはいっても、

  • プログラミングってよく分からないし、小学生の子供には難しいんじゃないの?
  • 家でプログラミングを教えるといっても、お金がかかるんじゃちょっと…

という方も多いと思います。

そこでこの記事ではそんな方のプログラミングに関する疑問をプログラミング教室の講師目線で解決します。

具体的には

  • そもそもどうして小学生からプログラミングを習う必要があるのか
  • 小学生に簡単で、自宅でできる無料のプログラミング教材3選

の順番に徹底的に解説していきます。

3分程度で読めますし、小学生の子供にプログラミングを教えるのに絶対役立つ記事ですから、是非最後までご覧下さい。

なぜ小学生からプログラミング?

論理的思考能力を身につける

プログラミング 教育を通して育成する論理的思考能力とは、プログラミング自体を行う能力ではなく、言葉の通り物事を論理的に考える事ができ、国語や算数、科学などの科目、日常生活のあらゆる場面などで役立つ汎用的な能力です。

論理的思考能力を身につける事は、将来子供がどんな仕事に就こうとも役立つ事ですし、生きていく中で必ず子供自身を救ってくれます。

例えば、子供がパン屋さんで働いているとします。ここで、論理的思考能力が身についていると、パンをもっと売るにはどうしたら良いのかを徹底的に細かく、論理的に考える事が出来ます。

しっかり論理付けられた考えで行動することによって、その後の改善にもつながりますし、仕事仲間に協力を仰いだ時にすんなりと受け入れてくれるといった利点もあります。

一見プログラミング教育は子供の将来と関係なさそうに見えるかもしれませんが、このように論理的思考能力を身につける事につながり、その論理的思考能力は子供の将来へとつながっているのです。

プログラミングが論理的思考能力に繋がる理由

なんとなくプログラミング教育が論理的思考能力に繋がるのはわかったけれど、具体的に何をするからどう論理的思考能力に繋がるのかまだ分からない方も多いと思うので、説明します。

プログラミングを行うということは、コンピューターに自分が想像している通りの動きを命令するということです。ここでポイントなのが、人対人ではなく、人対コンピューターということです。

これのどこがポイントなのか具体例を用いて、簡単に説明します。

人に「歩く」という動作を教える時、自分が実際に歩いている姿を見せて少しコツを教えてあげればできる様になるでしょう。

しかし、コンピューターに「歩く」という動作を教える時、歩いている姿を見せることは出来ませんし、少しのコツを教えるだけでは出来る様になりません。事細かく「歩く」といった動作について教えなくてはなりません。

要するに、「歩く」というのは「右足をあげて少し前に出し、そのまま右足を降ろす。次に、左足をあげて、今度は左足を右足より前に出し、そのまま左足を降ろす。次の時は右足は左足より前に出す様になる。これを繰り返す」といったように論理的かつ明快に教えなくてはなりません。

このようにプログラミング教育を通して、子供は論理的思考能力を育む事ができ、将来に役立てる事ができるのです。

オススメ無料教材①【Minecraft Hour of code】

(出典 : https://hourofcode.com/jp/learn)

Hour of codeとは

Hour of codeとは、 Code.orgというアメリカの非営利団体が運営するプログラミング 学習サイトです。このHour of codeには世界で1億人以上の人が参加しています。

Hour of codeの中には、小学生年代に特に人気なマインクラフトの世界でプログラミング学習を進めていく事が出来るコースもあります。それが、Minecraft Hour of codeです。

Minecraft Hour of codeではどんな事をするの?

Minecraft Hour of code では命令が記載されたブロックを組み合わせてプログラムを作り、Minecraft (マインクラフト) の世界やキャラクターを動かしてプログラミングを学びます。英語圏生まれですが、日本語にも対応しています。

難しそうに思われるかもしれませんが、ブロック型のプログラミングは、ブロックを組み合わせて思い通りの動きを実現させる事が重要で、パズルゲームに近いものです。

オススメ無料教材②【スクラッチ】

スクラッチ

スクラッチ (SCRATCH)とは

スクラッチ (SCRATCH)とは、かの有名なマサチューセッツ工科大学 (MIT) で開発された「ビジュアルプログラミング 」の一つです。ビジュアルプログラミングとはMinecraft Hour of codeと同様にブロック型のプログラミング のことを指します。難しそうに思われるかもしれませんが、スクラッチは子供から大人まで楽しむ事が出来ます。スクラッチも英語圏生まれですが、もちろん日本語対応しています。

スクラッチの特徴

スクラッチは、8歳〜16歳向けに設計されていますが、教育現場では小学生から大人まで、様々な教科の学習に利用されています。また、5歳〜7歳向けのスクラッチJrというのもあります。このように、小さな子供から大人まで楽しむ事ができるのが大きな特徴です。

スクラッチは教育者からも多くの支持を集めています。教育者向けのガイドやサンプルの作品が多く用意されている上に、教育者同士が情報共有できるコミュニティの充実もしています。

オススメ無料教材③【unity】

(出典 : unity.com)

Unity(ユニティ)とは

Unity (ユニティ) とは、ユニティ・テクノロジーズ社が開発しているゲームエンジンです。ゲームエンジンとは、ゲームを開発するために使用する事が多い機能を簡単に使えるようにまとめたものです。Unityの中には有料のコースもありますが、無料のコースでも十分素晴らしいゲームを作る事が出来ます

Unityのすごいところ

Unityは、iPhoneやAndroid, Mac, Windows, PlayStation4, Xboxなど様々なプラットフォームでゲームを制作する事が出来ます。また、2Dのゲームも3Dのゲームも作る事が出来ます。伝わりにくいかもしれませんが、これはとてもすごい事です。最近では「ポケモンGO」がUnityで作られたことが話題になり、Unityの知名度が上がりました。

【スクラッチが学べる!】プログラミング教室紹介

スクラッチの操作画面

現在日本では子どもの習い事としてプログラミングの人気が上昇しています。

プログラミングというと、難しいイメージがあると思いますが、子どもから始められるプログラミングの習い事があります。スクラッチ(Scratch)というビジュアルプログラミング言語を用いて本格的なプログラミングへの入門を学びます。

弊社ではプログラミングスクールを運営しています。人気沸騰中のプログラミングの習い事を是非一度体験しに来てください。もちろんスクラッチ(Scratch)を体験することが出来ます!

まとめ

小学生がプログラミングを学んだ方が良い理由は、論理的思考能力を身に付けるためであり、その能力が将来どのように役立つのか分かったことと思います。また、オススメのプログラミング教育教材である、「Minecraft Hour of code」「スクラッチ(Scratch)」「Unity(ユニティ)」の特徴が分かったことと思います。お子様にぴったりなプログラミング教材が見つかれば嬉しいです。