まあまあ元気になる話:ITmediaオルタナティブ・ブログ (RSS)

まあまあ元気になる話

IT業界での少し気分がアップする出来事、心持ち役立つこと、ややイイ話

先日、IT系の会社で新人研修を任され、悩んでいる人の話を聞きました。
「プログラミング言語を教えているけれど、変数や引数、単語などの言葉が通じない新人がいて、説明しても、なかなか理解してもらえない」
とのこと。
進むペースも他の新人たちより遅れ気味なので、どうフォローするか、困っているそうです。

わたしが、今、法人向け研修サービスSVラーニングで、教えている新人は、逆に、優秀で進みが速く、次々と、課題を用意して与えないと、やることが無くなってしまいます。

IT系の新人研修では、同じ新人、といっても、プログラミング能力やコンピュータの知識には、かなり差があり、同じ課題をやらせても、2倍、3倍どころか、10倍以上進みが違うことが、よくあります。
集合研修であれば、どう進めれば良いか、一番悩ましいところであり、講師の腕の見せ所だと思います。

情報系の大学や専門学校等でプログラミングを経験したことがある人と、初めてプログラミングに接する人とでは、差があって当然です。
以前、「IT業界でやっていくのに必要な能力」というエントリで、
「プログラミングを、学生時代にやってきた人、やっていない人とでは、新人研修の間は、差があったとしても、1年もすれば、その差は、ほとんどなくなり、2年もすれば、社会人になってからの学習量や経験の違いによる差の方が大きくなる」
というようなことを書きました。
研修時代に苦労していた人でも、優秀なSEになった人は、たくさんいます。
プログラミングを学生時代にやってきたか、やっていないかで、入社してからの活躍する、しないが決まる訳ではありません。

でも、新人の間は、そんなことは、分かりません。
出来る人、出来ない人、その差は、とてつもなく大きく感じると思います。
10倍もペースが違う人間がいたら、
遅い人は、
「オレには向いていないのかな・・」
と挫折してしまうかも知れませんし、
早い人は、
「なんだか、学生のときより簡単だな」
と仕事そのものを甘く考えてしまうかも知れません。

わたしは、プログラミングの研修では、なるべくコードを書かせる課題を多く出すようにしています。大切なのは、用語を覚えることではなく、プログラムを自力で組めるようになることだからです。
それに、変数や引数を概念的な言葉で説明するより、何倍も効果があります。
言葉は、人によって、ニュアンスやイメージが違うので、微妙に伝わり難いのです。ましてや、相手がそれを初めて見るような場合は、尚更です。
「コタツ」とか「ざるそば」とかを海外の人に紹介するときに、口で説明するよりも、実際に使っているところや食べているところを見せた方が理解してもらいやすいですよね。
課題を通して、コーディング、実行結果の確認、デバッグを繰り返すことで、口頭の説明ではぼんやりしか分からなかったことでも、理解を深めることができるのです。

コードを書かせると、遅い人と早い人の差が出るので、講義中心で行われる集合研修も多いと思います。
でも、それでは芸が無いですし、本当に意味のある研修と言えるかどうか。
コードを書かせる研修であっても、やり方次第で、個人のペースの差を吸収することができるはずです。

例えば、遅い人には、本人が困っていること、悩んでいることを、うまく把握し、効果的なヒントを出すようにします。
答えではなく、ヒントを出す、というところがポイントです。本人が気付くことが大事だからです。
自力で解決して、プログラムが動くようになったとき、苦労すればするほど、喜びも大きいと思います。そうやって、成功体験を積み重ねることで、少しずつ、自信を持てる様になります。
進みを後押しするだけでなく、挫折させずに、学習に意欲的に取り組んでもらう効果があります。

早い人には、応用で、追加の問題を与えるようにします。別の実装方法を考えさせたり、不正入力のときにメッセージを出す例外処理を入れさせたり、機能の追加をしてもらったり。
追加の問題をやってもらうことで、他の人のペースに合うようにします。
また、簡単に出来上がって、研修や仕事を甘く考えてしまうことの無いように、成果物に対して、突っ込みを入れることで、さらに勉強が必要だと感じてもらうのです。

研修期間中のペースの差だけでなく、新人一人一人が、研修後も継続して学習を続けていけるような意識付けまで考えなくてはならないので、新人研修の講師は難しい、大変な仕事なのです。

でも、だからこそ、楽しくって、とても、やりがいを感じることができるのだと思います。

yoji

一昨日(5/20)、日本App Inventorユーザー会初のオフラインミーティングが、麹町のKDDIウェブコミュニケーションズで開催されました。
KDDIウェブコミュニケーションズには、このようなコミュニティにサーバーや会場を提供する支援制度があるのですね。

 
会場には、20名弱のApp Inventorユーザーが集まりました。
中には、遠く北陸からいらした方や、お母さんと一緒にいらした高校生の方も。
さすが、プログラマで無くてもAndroidアプリが簡単に作れるApp Inventor、幅広い層に受け入れられているようです。

さて、オフラインミーティングの最初は、代表の多田丈晃さんからの挨拶と、基調講演。

Meeting01

ユーザー会の立ち上げから今までの活動についてのお話がありました。
発足は昨年の4月。大きな活動実績は、昨年12月から今年の4月にかけて行われた「ノアの箱舟作戦」とのこと。
昨年12月末のGoogleのサービス終了から今年2012年3月のMIT(マサチューセッツ工科大学)でのサービス開始までの間、日本App
Inventorユーザー会でサーバーを用意し、公式サービスがない空白期間もApp Inventorを使えるようにしてくれていたのです。
この「ノアの箱舟作戦」、なんと1,000人以上もの利用があったそうです。
また、講演の最後には、App Inventorサーバーの仮想マシン公開についての発表がありました。
OSSとして公開されているApp
Inventorのソースをダウンロードして一からサーバーを構築するのは大変なので、すぐに起動できるサーバーの仮想マシンを提供する、というものです。
セキュリティ上インターネットにアクセス出来ない環境等で、内部でサーバーを立ち上げる必要がある人にとって、朗報ですね。
詳しくは、日本App Inventorユーザー会の公式ブログをご覧ください。

 

続いての講演は、日本Androidの会 横浜支部の大和田健一さん。

Meeting02

App Inventorでのアプリ作りと、通常のJavaによるAndroidアプリの開発とを比較して、良いところと悪いところのお話や、App
InventorのBluetoothのコンポーネントを使って、ロボットを動かす(LEGO MINDSTORMS)デモがありました。

Meeting04

写真は、傾きセンサーを使ったアプリで、ロボットを操作しているところ。

Meeting05

このアプリも、App Inventorで作られているのです。すごいですね。

そして再び、多田さんの登場。「App Inventorのはじめ方」と題して、App Inventorのインストール方法から、最初の第一歩のアプリ作りまでを実演。
テキストボックスに文字を入力して、ボタンを押すと画像(日本App
Inventorユーザー会のロゴ)の下にその文字が表示される、というアプリがその場で作られました。

Meeting06

写真は、エミュレータで動作が確認されているところ。

その後のQ&Aコーナーでは、みなさんが普段、App Inventorを使っていて疑問に思っていることや困っていること等、たくさんの質問が出ました。
いくつかご紹介すると・・・。

Q. ChromeでBlocks Editorを起動するとき、毎回、ダウンロード、実行が必要か?
A. 毎回、必要。

Q. エミュレータを軌道したとき、コマンドプロンプトにWarningが出るのだが。
A. Warningが出ても問題は無い。Warningが出たからとコマンドプロンプトを閉じてしまうと、エミュレータが開かない。

Q. ボタンの文字サイズを大きくすると、Designerでは問題無いが、エミュレータで文字が欠けたりする。
A. ボタンのサイズを自動調整ではなく文字サイズに合わせて、幅、高さを指定する。Designerでの表示はブラウザによるので、エミュレータできちんと表示されるようにした方が良い。

Q. ボタンの色を変えると、ボタンぽく無くなる(立体感が無くなる)。
A. ボタンのイメージを用意するしかない!?

等など。こうして見ると、気にはなっているけれど、そのまま誰にも聞けずにいること、結構、みなさん、あるみたいですね。
普段は、Googleグループを利用してQ&Aが行われていますが、そこで質問するのはちょっと敷居が高い、と感じてしまう人も多いのかも知れません。生で多田さんのお顔を見たり、他のユーザーの質問を聞いた後の方が、ずっと聞きやすそうです。
なるほど。オフラインミーティングに参加するメリットを改めて感じました。

初心者の方でも楽しめて、わたしにとっても有意義な会でした。

yoji

昨日、テレビ(NHKあさイチ)を見ると、「ダイエットからがん治療まで!時計遺伝子活用術」というタイトルで、「時計遺伝子」の活用法が紹介されていました。
その中で真っ先に取り上げられていたのが、「時計遺伝子ダイエット」。

時計遺伝子は、全身の細胞ひとつひとつにあり、時計のように時を刻みながら、その活動をコントロールしているそうです。
いくつか種類があるのですが、そのうち、BMAL1という遺伝子は、細胞が脂肪を貯め込む働きを制御していて、午後3時ごろに弱まり、そこから深夜に向けて高まる、とのこと。
グラフにすると、こんなイメージ。(※放送を見た個人の印象です)

Bmal1

「夜中に食べると太る!」と、昔から良く言われていますが、このBMAL1のせいなんですね。

私事ですが、昨年の2月にフリーの身になってから、食事の量は変わらないのに、体重が減り始め、半年後には、3年前に尻が入らなくなってしまったものの気に入って捨てられなかったLevi'sのジーンズがはけるようになりました。

それまでの生活を振り返ってみると、エンジニアとしてプロジェクトに参加していたときは、定時に帰れることはまずありませんでしたし、会社の経営に携わるようになってからも、平日は、夜の10時、11時まで会社にいることが多く、帰宅する頃には、時計の針が12時を回り、日付が変わってから夕飯、ということも、良くありました。
つまり、BMAL1絶好調の時間に夕食を取っていた訳です。

それでも、太る体質ではなかったせいか、ダイエットなどは考えたことはありませんでした。
ところが、40代後半になると、徐々に体重が増え始めました。
見た目はあまり変わらないのですが、ズボンが軒並み、はけなくなり、総取っ替えに近い状態になってしまったのです。これは、マズイと、Wii Fitでダイエットを試みましたが、目立った効果は無く、お気に入りのLevi'sのジーンズも、はけなくなったままでした。

フリーになったり、パソコンスクールを開校したりと、バタバタし出してからは、Wii Fitも、体重計に乗るのも、忘れてしまいました。

わたしのパソコンスクールは、ビジネスマン対象では無いので、スーツではなく、カジュアルな服装で出勤しているのですが、それまでずっと会社勤めだったわたしのワードローブはスーツを除くと、ほんの少ししかありません。特にズボンは、どうせ、はけないと捨ててしまったので、さらに少ないのです。そう、そこで登場するのが、お気に入りのLevi'sです。試しにはいてみると、なんと、いつの間にか、はけるようになっていたのでした。
体重を測ってみると、びっくりするほど、減っていました。元の体重の1割減。

バタバタしていた、と言っても、日付が変わってから食事、ということは無くなり、特に、パソコンスクールを始めてからは、毎日が規則正しく、食事も、時間割で決まっています。
先ほどのグラフに書き込んでみると、こんな感じ。

Mealtime

こうして見ると、体重が減った理由は、無意識のうちにやっていた、時計遺伝子ダイエットの効果と言えそうです。15時に昼食、というのもダイエット効果があるのかも知れません。
恐るべし、BMAL1。

これ以上、減り続ければ、病気ではないかと不安になるところですが、新婚当時の体重でこう着状態。現在は、「痩せてると貧相」と奥さんが言うので、もう少し太ってもいいかな、と食事の量を増やそうと考えています。

yoji

日本App Inventorユーザ会 Official Blog で、
ComponentとListの使い方
という記事をみました。

これは、コンポーネントをリストにして使う方法です。

App Inventorは、Button(ボタン)やSound(音)といったコンポーネントという部品を用意して、コンポーネント毎に用意される[Button.Click]とか[Sound.Play]とかのブロックを組み合わせてアプリを作っていくのですが、そのコンポーネントそのものを指すブロックが[component]で、それを上手く使えば、ブロックをすっきりと組み立てることができるのです。

と言われても、ピンと来ない方も多いと思いますので、具体的に、以前(1年前)、ご紹介した「神経衰弱のゲーム」を使って、説明しますね。

このときには、まだ、コンポーネントをリストとして取り扱うことは出来ませんでした。
なので、Buttonコンポーネントで作ったカードの絵の表示を変えるときなど、こんな感じでブロックをButtonコンポーネントの数だけ、並べる必要がありました。

Blockeditor01

上記は、12枚のカードをすべて裏にする処理です。
さすがに、12個も同じようなブロックが並ぶと、圧迫感がありますね。
でも、これは、まだマシな方。
ひっくり返したカードを元に戻す(裏にする)ために、カードの番号を渡して、そのカードだけ、Buttonコンポーネントの絵を変える処理では、こんな感じになります。

Blockeditor02

これを組み立てるのは、ちょっと・・と気後れしてしまいそうです。
頑張って、やる気になって作っても、組み立てミスが起きるかも知れません。
ひとつ、ふたつブロックを抜かして作ってしまいそうです。

では、コンポーネントをリストとして使うとどうなるか、やってみましょう。

まず、Buttonコンポーネントを入れるリストを用意します。
これは、普通のリストの作り方と同じです。

Blockeditor03

次に、リストButtonListの中に、Buttonコンポーネントを入れていきます。
具体的には、各コンポーネントのブロック一覧の中に、Button1なら、[component Button1]というように、ブロックが用意されているので、それをドラッグして、値をセットするときのように、はめ込みます。

Blockeditor04

Blockeditor05

神経衰弱のゲームでは、アプリ起動時の処理[Screen1.Initialize]から呼び出しているプロシージャ(procedure)[setCard]で、最初に絵などをセットしているので、そこに、12個のButtonコンポーネントをリストButtonListにセットする処理を追加します。

Blockeditor06

ボタンに絵をセットする[set Button.Image]ブロックは、Advanced タブのAny Button の中にあります。

Blockeditor07

componentというプラグ(差込み口)に、ボタンのコンポーネントをはめ込んで、そのボタンの絵をセットします。

コンポーネントのリストButtonListと[set Button.Image]ブロックを使って、カードの絵を裏にする処理を作ってみると、こんな感じになります。

Blockeditor08

だいぶ、スッキリしましたね。
[foreach]は、リストの中身の数だけ処理を繰り返すブロック。これで、リストの中身(ボタンのcomponent)を順に取り出しながら、カードの裏の絵をセットできます。
[select list item]は、リストの中から選ぶためのブロック。指定されたボタンを取り出して、絵をセットできます。

スッキリとしたといっても、アプリの動きは前と同じです。
リストを使っても、使わなくても、動作は変わりませんが、たくさんのコンポーネントを使うアプリでは、リストを使った方が、スッキリと、そして楽に、ブロックを組み立てることが出来ますよ。

============

以前、ご紹介した神経衰弱のゲームの作り方はこちら↓。
※このときには、まだ、コンポーネントをリストとして取り扱うことは出来ませんでした。

  1. 1日目--Vegetarian_start:カードを12枚並べてシャッフルする
  2. 2日目--Vegetarian_open:裏返したカードを開く
  3. 3日目--Vegetarian_reverse:2枚開いて、次のカードを開くときには、開いた2枚は元に戻す
  4. 4日目--Vegetarian_final:2枚のカードの絵が一致していたら、開いたままにする

↓こちらにも、神経衰弱のゲームの作り方が載っています。
※このときには、まだ、コンポーネントをリストとして取り扱うことは出来ませんでした。

yoji

「春はスクールの季節」と情報誌の営業の方に言われ、パソコン教室の広告を、3月、4月に、ど~んと出しました。
春は、新年度。新年を迎えた1月の時のように「新しいことを始めよう」とスクールに通おうと考える人は多いかも知れません。

さて、その気になる反応は・・・う~ん。とても、効果があるとは言えない数字。

もともと、わたしのパソコン教室の場合、問い合わせて来る方は、教室の看板を見て、という人がほとんどです。
なので、
「情報誌での問い合わせが少ない」=「スクールの季節ではない」
ということではないのですが、問い合わせ全体の数も、普段の月と比べて、多いとは言えません。
むしろ、春休みの間は、問い合わせも少なく、それどころか、生徒さんも来れない方が多く、席も空き気味でした。
わたしのパソコン教室の生徒さんは、主婦や、年配の方々が多く、また女性の割合が大きいのですが、お子さんが休みだと、何かと忙しかったり、お孫さんが遊びに来るので教室に来れない、ということがあるようです。

それにしても、これでは、「春はスクールの季節」とは真逆の状態です。

でも、問い合わせの内容はいつもと少し違います。
「会社で部署が変わって、パソコンを使うことになったので」とか、「就職するのでワードとエクセルを使えるようになりたい」という方の割合が増えているように思います。
確かに、「新しいことを始めよう」とスクールに通うことを考える人は多かった、のです。
でも、新年のときのように、前から考えていて新年をきっかけに「始めよう」というよりは、新年度になっての突然の変化でやむにやまれず「始めなきゃいけない」という感じ。
春は変化の季節。
環境が変わる方が多い季節なんですね。
だから、逆に、普段、お問い合わせを頂く主婦や、年配の方々は、お子さんやご家族の変化の対応に忙しく、ご自身のことを考える余裕がないのかも知れません。

そうそう、パソコン教室とは別に、IT企業向けに、プログラミング研修を行ったりもしているのですが、こちらは、4月に入って、新入社員の研修を開始しました。
自社で講師を立てられず、かといって、外部講師を頼むほど人数もいない、ということで依頼があり、メールベースの通信教育ですが、JavaやJavaScriptなど、Webプログラミングを中心に教えています。
新人受け入れ、という春の環境の変化で、「新人教育を始めなきゃいけない」の依頼ですね。

通信教育も、スクールの一つ。
やはり、「春はスクールの季節」と言えそうです。

************
と、いうことで、ここからは宣伝です。
IT企業向けにやっているサービスのホームページを作ってみました。

SVラーニング
http://svlearning.net/

売りは、
・通信教育なので受講者側のペースで実施可能
・少人数研修ならではの個別指導
・資格取得を目的としないプログラミング重視のカリキュラム
・それに、挫折させない丁寧なサポート
です。

yoji

待ってました!!

昨年末、「Google Labs」終了に伴って、MIT(マサチューセッツ工科大学)のメディアラボのモバイル教育センターに引き継がれた「App Inventor」ですが、ようやく、公開ベータ版が利用できるようになりました。

http://beta.appinventor.mit.edu/
Mit_app_inventor

[Use MIT App Inventor]をクリックすると、Googleのログインページに遷移、Googleアカウントでログインできます。

Google

メールアドレスの共有を[許可する]を選択すると、MITの「App Inventor」のオープンβ版のページが表示されます。

App_inventor_for_android_beta

最初は、プロジェクト一覧画面ですね。
まだ、何もプロジェクトが無い状態です。寂しいですね。

以前、作成したアプリをアップして、そのまま使えるかどうか、試してみましょう。

[More Action]から、[Upload Source]を選び、[ファイルを選択]で、昨年、ダウンロードしておいたプロジェクトをアップロードします。
Upload_01_2

Upload_02

アップロードが出来ると、部品をドラッグ&ドロップで配置できる「Designer」の画面に遷移します。

Designer_01

これは、スケボーに乗っているDroidくんのアニメーションのアプリです。

[Open the Blocks Editor]をクリックして、パズルのようにブロックを組み合わせて動きを定義する「Blocks Editor」を起動します。

Blockseditor_01

Blockseditor_02

ブロックは、プロジェクトを保存したときのままの状態です。ちょっと感動的。

[New emulator]をクリックして、エミュレータを動かします。

Emulator_01

少し時間がかかりますが、それは以前と同じ。

Emulator_02_03

エミュレータの[MENU]ボタンを押すと、ちゃんと画面が変わります。

「Blocks Editor」の画面上の[Connect to Device...]をクリックして、起動したエミュレータを指定します。

Emulator_04_05

無事、Droidくんが動き出しました!
久しぶりの再会。懐かしい、動き!

実際に、Android端末で動かしてみましょう。
Android端末の[設定][アプリケーション]メニューで、動かすための準備をしてから、パソコンとAndroid端末を接続します。

Device_01_02_3

「Blocks Editor」の[Connect to Device...]で、つないだAndroid端末を選択します。

Device_03_04_2

おっ、Android端末でも、昔と変わらぬ動き。
タップでの操作にも、ちゃんと応えてくれます。

最後に、「Designer」の画面に戻って、インストール。
「Designer」の画面右上にある[Package for Phone]をクリックして、[Download to Connected Phone]を選ぶと、つないだAndroid端末にダウンロードが始まります。

Download_01

Download_02_2

Download_03_2

ちゃんとダウンロードも出来ました!!
「App Inventor」Droidくんアニメ復活です。

注:
もし、Android端末にダウンロードしようとして、
Error_01
INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES
のエラーが出たら、同一のアプリが既にインストールされていないか、確認してみて下さい。
以前のアプリがインストールされたままだと、証明書の署名が一致しない、という上記のエラーになります。
その場合は、既存のアプリをアンインストールしてから、もう一度、ダウンロードしてみて下さい。

宣伝:
「App Inventor」でのDroidくんアニメの作り方は、こちら ↓


yoji

先日、福岡市のNPO法人「子どもとメディア」が2月に発表した記事を見ました。子供が携帯電話やパソコン、電子ゲームなどに長時間、向かうことで心身に悪影響が及ぶ「メディア依存(中毒)」が問題化しているそうです。

福岡市内の小中高生を調査した結果、1割以上に「メディア依存」の疑いが確認され、全国的に広がっている可能性がある、とのこと。
睡眠不足で集中力が低下したり心理的に不安定になったりする恐れが指摘されています。

このようなことは、前々から言われていたと思いますが、今回の調査は、国を挙げて対策を進めている韓国の方法を使って実施した、とのこと。小学生の8.39%、中高生の10.20%にメディア依存の疑いがあったそうで、こうやって数字として突きつけられると、うーむ、と唸ってしまいます。中高生の子供を持つ親としては、身近で深刻な問題です。

我が家には、娘が二人います。中学生と高校生。まったく使わせないのもいかがなものか、とリビングで家のパソコンを使わせることがありますが、下の娘(中学生)も、上の娘(高校生)も、放って置けば、延々とネットを見続けています。

また、少し前ですが、電通PR(株式会社電通パブリックリレーションズ)が、「大学向けソーシャルメディアリスク対策プログラム」なるサービスを開始した、という話を聞きました。
TwitterやFacebook等で、モラルやリテラシーの欠如による不適切発言により、結果として大学のレピュテーションを著しく毀損する、いわゆる「炎上事例」を防ぐため、大学関係者および学生を対象に、ソーシャルメディア利用における危機管理に焦点を当てたプログラムを提供する、というものだそうです。

このようなサービスのニーズが大学にあるという背景には、中高生に対して、家庭で、インターネット、ソーシャルメディアの教育がきちんと出来ていない、という問題があるように思います。

中高生の親であるわたし達の世代は、学生時代にSNSはもちろん、携帯電話もありませんでした。
なので、「パパたちとは、時代が違うから」と言われると、ムッとしながらも、言葉に詰まってしまうことも多々あります。
IT業界でずっと仕事をしてきて、TwitterやFacebookを利用しているわたしでも、そうなのですから、「エスエヌエス」、「ツイッター」と子供が発する言葉を、大人の思考を停止させるための呪文のように感じてしまう親御さんも多いと思います。
良く分からないので、「子供を信じて任せる」とか、あるいは、それとは逆に、「すべて禁止してしまう」とか、教育を放棄してしまうのではないでしょうか。

子供を取り巻く環境やコミュニケーションの仕方が変化しているのは確かですが、新しいものが出てきて、それを子共が使いたがり、大人が眉をひそめる、というのは、いつの時代でも同じです。
携帯電話、インターネットの普及で「変化したこと」に目を奪われることなく、大人はどっしりと、モラルやコミュニケーションの本質など、「不変なもの」をしっかりと教えていきたいものです。

我が家では、下の娘は、まだSNSは許されていません。携帯電話でのWeb閲覧も禁止。携帯メールも許されたのは、中学に上がってから、小学生の頃は制限付きでした。知識を身に付け、判断力、自制心がある程度育つまでは仕方ありません。わたしだって、子供の頃は、テレビを観る時間を決められていたし、奥さんは子供の頃、ドリフを禁止されていました。

上の娘は、一応、携帯電話でのWeb利用は許されています。ただし、パケ放題ではないので、かかったパケット料金はお小遣い負担です。彼女も工夫して、料金のかからない携帯メールを利用して、Twitterをやったりしています。そんな彼女も、夜、自分の部屋に携帯電話を持っていくのは禁止されています。「メディア依存」と診断されなくても、布団に携帯電話を持ち込んでのTwitterで、睡眠不足になってしまうのが明らかだからです。

ところが、先日、上の娘の布団の中から、携帯電話が出てきました。
当然、携帯電話は没収、当面、使用禁止です。
「えーっ、困るんだけど。(携帯)メールで、テスト範囲をもらうことになってるから」
上の娘は、何とか返してもらおうと、携帯電話の必要性を訴えます。
「そんなの、家の電話で、聞きなさい」
「テスト範囲、××ちゃんが、写真で撮ったのをもらうの。わたしは撮り忘れちゃって」
携帯のカメラでテスト範囲を写すなんて・・・、何ということでしょう。
「そんなことして、先生、何も言わないのか!?」
「うん。みんなやってるよ。どこの学校でも」
こっそりと、バレないようにやっているのかと思ったら、そうではないのです。
なんでも、テスト範囲のプリントを先生が一定期間貼り出し、それを生徒がパチパチと携帯のカメラで撮るそうです。
「何だそりゃ・・・」
「パパたちの頃とは、時代が違うんだよ」
頭がクラクラしてきます。
「そんなのメールじゃなくって、ノートに書き写させてもらえ」
と、そのときは、携帯電話を渡しませんでした。

その翌日、ある提案を胸に、上の娘がやってきました。
「あのさー、パパ。携帯電話、いつ返してくれる?」
「当分ダメ」
「あのー、ツイキンにするから。いいでしょ?」
「ツイキ・・・追試?」
テスト前から追試って、どういうこと?
「ツイキンだよ」
上の娘は呪文のような言葉を繰り返します。
「何だ、ツイキンって?」
「Twiter禁止するってこと。どうせテスト前だし」
おっ、と思いましたが、その日は、「考えておく」と返答を保留しました。

でも、答えは決まっています。
わたしは、娘に、インターネット、ソーシャルメディアを使わせたくないのではなく、TPOを考えたきちんとした使い方を覚えて欲しいのです。例え、携帯電話を返して欲しいから考え付いたことであっても、「試験前だから、Twiterをやってる場合じゃない」と娘自身が判断したことは、大切なことです。

次の日、携帯電話を上の娘に返しました。

まだ、試験中。「ツイキン」の効果が試験の結果に出れば、一石二鳥なのですが。

yoji

確定申告の季節になりました。
わたしは、昨年7月に個人事業主として開業したので、今回が初めての申告です。
確定申告は、住宅購入時に、「住宅借入金等特別控除」のための申告等、今までに何度かやったことがありますが、青色申告は初挑戦です。

青色申告には、最高65万円の控除がある「複式簿記」と10万円までの控除の「簡易簿記」があります。
わたしは、開業時に参考にした書籍「これならできる!個人事業の“超簡単”経理」(ぱる出版)に従って、「簡易簿記」を選択しました。

簡易簿記でも、奥さんの給与(専従者給与)を全額経費に出来たり、赤字(純損失)が出たら、3年間繰り越して控除ができる等、青色申告による特典は受けられます。

簡易簿記での帳簿は、「現金出納帳」、「売掛帳」、「買掛帳」、「経費帳」、「固定資産台帳」など。これらは、開業時に、「開業届」とともに、税務署に出した「青色申告の承認申請書」で、「備付帳簿名」の欄に並んでいる帳簿の名称の中から、選択して○で囲んだものです。どれが必要かは事業によって違うと思いますが、開業届を出すときに、税務署で相談にのってくれます。
わたしは、入金伝票、出金伝票も使いました。帳簿は、Excelで付けていたのですが、この2つの伝票は100円ショップで買った紙のものです。お金の出入りがあったときに、メモ代わりに書いておき、それを、毎日、帰宅前に、入力していました。
また、簡易簿記では、義務ではありませんが、預金出納帳も記帳しました。公共料金の引き落としだけなら通帳を見れば、日付、金額が分かりますが、広告や、パソコンの備品などの購入で、普通預金から業者に振り込むことも多いので、いつ、どれくらい使ったか、預金出納帳が無いと、把握できなくなってしまうので。

記帳は面倒ですが、帳簿は、税務署のためだけではありません。
前述の書籍にも、

そもそも、あなたが商売する上で、いくら儲かったか、それすら、帳簿がなければ分からないはずです。
いわゆるどんぶり勘定では、このきびしいご時勢で商売を続けていくことはかなり難しいでしょう。

と書いてあります。

とはいえ、仕訳や、処理の仕方など、分からないことばかり。
「これって、勘定科目は何になるんだろう」
「この支払いは、いつ計上すればいいのかな」

領収書の束を税理士に渡して、「あとはよろしく」と言えれば、どんなに楽でしょう。
そういえば、パソコンスクールのフランチャイズを検討していたとき、「月額1万円の顧問料(ロイヤリティとは別)で、毎月、経理報告業務の実作業等、経営をサポートします」というサービスを用意しているフランチャイザーもありました。
わたしも、銀行の方から、ご紹介された会計事務所と連絡を取ったりしましたが、決算報告作成で、年間売上高の2%程度が見積りの相場だそうです。
見積り金額は、わたしがどこまで帳簿を付けるか(その出来具合)によって、変わって来る、とのこと。
どこまで自力で付けられるのか、「とりあえず、やってみよう」とやっているうちに、ズルズルと申告の時期まで、来てしまいました。

さて、分からないことばかり、と言っても、ネットで検索すれば、結構調べられます。
それに、年末になると、税務署主催で実施される無料の「記帳説明会」や「青色申告決算説明会」で、質問や若干の個別相談も可能です。
それでも、不明な点や不安なところは青色申告会で確認しました。青色申告会は、個人で事業を行っている納税者が集まった団体で、記帳指導・決算指導や法律相談などのサービスを受けることができます。
青色申告会への入会は有料ですが、入会金2,000円、会費1,500円/月とリーズナブル。確定申告の相談は、その対象期間分の会費が必要となりますが、わたしの場合、7月開業なので、半年分で9,000円。税理士さんに「決算をお願いします」とやっていたら、この金額では済まなかったでしょう。
自分でやってみるもんですね。
開業費や営業譲渡の費用の償却、棚卸しなどの決算調整も、青色申告会で確認し、無事、青色申告決算書に数字を記入できるところまで出来ました。

税務署主催の説明会では、e-Taxを薦められましたが、電子証明書の取得や、ICカードリーダライタの購入など、面倒だし、お金もかかります。それで、得られるメリット(5,000円控除、還付金がスピーディー等)も、今のところ、それほど魅力に感じません。
でも、混んでいる税務署に行くのはウンザリなので、国税庁のホームページ「確定申告書等作成コーナー」で、やることにしました。こちらのホームページ、e-Taxの申告も出来ますが、作成後、プリントして、郵送で提出することも出来るのです。

最初は、「決算書・収支内訳書の作成」から、該当する売上、経費などの項目名をクリックして、各フォームに数字を入力していきます。
それが終われば、所得金額が計算され、最後に住所・氏名等を入力すれば、「青色申告決算書(一般用)」が印刷できます。
続いて、「所得税の確定申告書の作成」です。
収入金額や所得金額の「事業 営業等」の項目には、先ほどの決算書での数字が既に入っています。わたしの場合、前職の給与や書籍の原稿料などもあるので、源泉徴収票等を元に、収入欄の項目名をクリックして入力し、さらに、社会保険料(国民健康保険、国民年金)や生命保険料、扶養控除と、控除に関する項目に入力します。
入力が終われば、納税額が計算され、「申告書B第一表」、「申告書B第二表」と一緒に「添付書類台紙」、「提出書類等のチェックシート」が印刷できるので、「チェックシート」で書類を確認しながら、「添付書類台紙」に、源泉徴収票や控除関係の書類を貼り付ければ、完成です。

こうして書いてみれば、簡単なのですが、実際は、「この数字は、どこで、どう入力すればいいのだろう」と結構、悩みました。また、他にも、住宅控除、株の譲渡損失などもあり、ここ何日かの日曜・祭日は、ずっと、この「確定申告書作成コーナー」で、奮闘していました。

「15分あればインターネットで確定申告が出来る」とテレビで見た奥さんに、何でそんなに時間かかるの、と言われながらも、何とか完成にたどり着き、先日、ついに、郵送で確定申告書を提出したのでした。

yoji

教室のホームページを作りました。
こちらです。


無料のホームページスペース「FC2ホームページ」というサービスを使っています。
同様のサービスでは、ヤフージオシティーズなどもありますが、広告が入らず、商用利用もOK、メールフォーム等のサービスも無料で用意されているので、お金をかけずに、手軽に始める第一歩として、FC2はお勧めだと思います。

教室のホームページ作りで、特に心がけたのが、「シンプルに分かりやすく」です。
わたしは、Webデザイナーでは無いので、あまり凝ったことは出来ない、ということもありますが、わたしの教室の対象者は、「パソコンの初心者」です。凝ったものだと、うまく操作してもらえない、ことも考えられます。

特に、次の5つのユーザビリティに注意して作成しました。

1.横幅を900ピクセル以内に収める
2,3年前のディスプレイの解像度は、1,024×768ピクセルが主流でした。最近では、ワイド化された1,280×800ピクセル、1,366×768ピクセルが多いようです。なので、横幅が広いサイズのサイトが増えているようです。とはいっても、ブラウザを画面いっぱいに広げない人も多いので、750~900ピクセルぐらいに収めるのが良い、と言われています。画面を3列に分けるレイアウトを採用しているサイトでは、3列目は「表示されない可能性がある」ことを前提に、重要な情報は、置かないようにしたりします。
わたしは、最初、このブログのような3列のレイアウトを考えていましたが、表示されないかも知れない情報を置いておくよりは、シンプルに2列のフォーマットにして、830くらいに収めました。
教室の生徒さんの使い方を見ていると、画面いっぱいに広げる人が多いのですが、「お気に入り」を左に表示していたりしています。また、年配の方は、文字などの表示サイズを大きくするために、解像度を下げて使用している場合もあります。
わたしが対象に考えているユーザにとって、900ピクセルを超える部分は、「無いも同然」と思った方が良さそうだったのです。

2.階層を深くしない
情報をカテゴリ毎にタブで切り替え、タブ毎に、用意されたナビゲーションで、さらに情報を切り替えて、詳しい内容は、また、そこからリンクを辿って・・・、というサイトは多いと思います。決めたスペースに入りきらない程のたくさんの情報がある場合は、「スペースの有効利用」、「コンテンツの整理」、という意味で、タブはとても便利です。パソコン教室のホームページを見ても、そのような作りになっているところは少なくありません。
でも、パソコン教室で掲載する情報量、特に、わたしが作成した「はじめの一歩」のホームページの情報量に、そこまでの区分けが必要だとは思えません。
ユーザは、最初に表示されたページから、次のページへ、制作者の意図通り、リンクを辿ってくれるとは限りません。パソコン初心者なら、尚更です。タブの切り替え、というナビゲーションを知らない可能性もあります。最初に見えていない情報は、そのまま見てもらえないかも知れません。
逆に、1ページに膨大な情報が詰め込まれているのを、楽天市場のショップでよく見かけますが、これは、ページを移ることでユーザが離脱してしまうのを防ぐ効果だけでなく、活気や勢いを演出する狙いもあると思います。
そこまでは、やりませんでしたが、トップページに、「最低限、これだけは伝えたい」ということを盛り込みました。また、情報は、メニューの項目毎に分け、それぞれの内容の見出しを、メニューに書きました。トップページから、1回のクリックですべての情報に辿り着けるようにしたのです。

3.ナビゲーションを統一させる
ぺージによって、画面の上にメニューがあったり、左側にあったり、位置が変わってしまっては、ユーザーは混乱してしまいます。また、画像は、リンクなのか、装飾なのか、はたまた広告(バナー)なのか、クリックしてみないと分からない、というのも、パソコン初心者にとってはツライと思います。せっかく、画像ボタンを用意しても、他の装飾用画像と見分けがつかず、リンクだと理解してもらえなければ、意味がありません。
そこで、すべてのページで、同じヘッダー、同じメニューを用意しました。また、リンクのある画像は、ロールオーバーで、マウスを合わせると、明るくなるようにし、その他の画像と区別がつくようにしました。
ユーザーは、過去の経験を手がかりに、そのWebサイトの操作を覚えます。学習のしやすさがユーザビリティを考える上での基本でもあります。サイト内のナビゲーションを統一しなければ、その学習効果は期待できません。

4.新しくウィンドウを開かない
よく、リンクをクリックすると、新規ウィンドウが開くことがあります。特に、リンク先が、他サイトの場合、新しいウィンドウを開くことが多いようです。
「そのままのウィンドウで他ページに移動すると、ユーザーが戻ってこないから、元のページも表示しておく」という想いからなのでしょうけれど、これは結構、厄介なのです。
1.で、ブラウザを画面いっぱいに広げない人も多い、と書きましたが、教室の生徒さんを見ると、そうでもありません。結構、みなさん、画面いっぱいにしています。そこで、新しいウィンドウが開くと、例え、元のページが後ろのウィンドウに残っていても、見えないので、消えてしまったのと同じです。パソコン初心者にとって、マルチウィンドウというのは、ちょっと難しいのです。
しかも、新しいブラウザの「戻る」ボタンも押せないので、元のページに戻りたくても戻れません。何が何だか分からず、もう、パニック状態です。
「元のページに戻ってきて欲しい」という想いとは、逆の効果になってしまうのです。
今回、作成したホームページには、「教室ブログ」や「フランチャイズ本部のサイト」など、外部リンクも用意してありますが、同じウィンドウに表示するようにしました。

5.カテゴリ分け、メニューの順番に気をつける
情報の整理、コンテンツのカテゴリ分けは、サイトのメニューやページ構成を考える上で、非常に大切な作業です。また、ユーザーに、何をしてもらいたいのか、Webサイトでの目的を明確にして、それに向けた「タスク」を基に、ユーザーを迷わせずに目的達成まで誘導するようなページ構成、ナビゲーションを考えることも重要です。
まずは、様々なパソコン教室のホームページを拝見しながら、思いつくだけ、コンテンツをリストアップしてみました。そこから、「これは、ここに含まれる」「これは、ユーザーにとって重要度が低いのでは?」とランク付けしながら、まとめていきました。
わたしが、作成するホームぺージの目的は、大きく2つあります。
一つは、わたしの教室を知らない人に、興味を持ってもらい、お問い合わせや入会に結びつけることです。
これには、教室のサービス案内や教室の雰囲気を伝えることや、お問い合わせのフォームを用意することが必要です。
もう一つは、教室の生徒さんたちに、ちょっとした仲間意識をもってもらうことです。
教室からのお知らせや、作品を発表する場、そういったものを用意して、「教室と繋がっている感」を、高めるのに役立てられないか、と考えました。一つ目の目的で用意する教室の雰囲気を伝えるためのコンテンツも、生徒さんに協力してもらいながら作れば、一石二鳥です。
メニューは、上から順に、一般向け(サービス案内)から教室内(教室雰囲気)の度合いが高くなるような感じで、並べました。
一般的に、ページの下部に行くほど、ユーザーに見てもらい難くなるのですが、何らかの情報を求めているユーザーはメニューの下部でもクリックします。
まずは、サービス内容で興味を持ってもらい、そこから、教室の雰囲気を見せて、安心して、さらに興味を持ってもらう、という考えです。
また、教室の生徒さんたちは、見たいコンテンツが最初から決まっている(「○○さんが載っているページ」など)ので、メニューの下部にあっても、問題ありません。
ただ、二つ目の目的のコンテンツはまだまだ十分ではありません。今後も継続して、生徒さんとコミュニケーションを取りながら、充実させていこうと思っています。

yoji

先日、App Inventorユーザー会のアドベントカレンダーに参加させてもらうことになったことを書きました。


App Inventorユーザー会のアドベントカレンダーは、今月の初めから始まり、App Inventorについての想いが詰まった記事や、ここまで作れるのか!、と驚くようなアプリの紹介などで、盛り上がっています。

で、いよいよ、わたしにも、順番が回ってきました。
このエントリーは、日本App Inventorユーザー会 Advent Calendar 2011 25日の記事になります。

そう、今日は、クリスマス。
そこで、クリスマスにぴったりな簡単アプリの作り方をご紹介したいと思います。

Device_3

ピカピカとクリスマスツリーが光って、そのツリーに触ると、そり鈴の音がします。

App Inventorの環境があれば、こんなアプリが10分程度で作れます。
では、早速やってみましょう。

まずは、クリスマスツリーの絵を用意しましょう。
自分で描いてもよいですが、わたしは、フリーの素材サイトからダウンロードしました。

明るいツリーと、暗いツリーを1つずつ。
Xmastree01001
Xmastree01002

パッパッと電灯が付いたり消えたりしたり見えるように、この明るいツリーと暗いツリーを交互に入れ替えながら表示します。

次は、音です。これも、フリーのサイトからもって来ました。

 

ここから、そりの鈴の音をダウンロードしました。ファイル名「Sleigh Bells Ringing-SoundBible.com-1890102065.mp3」です。

新しいプロジェクトを「XmasCard」という名前で作ります。
Designer01

Designerの画面が開いたら、画面(Screen)のコンポーネントであるScreen1にも、同じ名前をつけます。
Screen1の背景色、BackgroundColorプロパティは、赤(Red)にしておきます。
Designer02

次に、PalleteのBasicから、ラベル(Labelコンポーネント)をドラッグ&ドロップでScreen1に持ってきます。このLabelコンポーネント(Label1)のTextプロパティに「Merry Christmas !!」と書きます。FontSizeは、少し大きめに、28、TextColorは、白(White)にします。
Designer03

今度は、PalleteのScreen Arrangementから、HorizontalArrangementコンポーネントを持ってきます。
これは、コンポーネントを水平に並べるためのものです。

Designer04

HorizontalArrangementコンポーネント(HorizontalArrangement1)の中に、PalleteのBasicから、ボタン(Buttonコンポーネント)を入れます。Textプロパティの「Text for Button1」という文字を消し、Imageに、クリスマスツリーの絵「xmastree01-001.gif」をアップロードしてセットします。

Designer05

PalleteのBasicから、ラベルをまた持ってきて、これも、HorizontalArrangement1の中、Button1の横に並べて入れます。このラベル(Label2)のTextには、「I wish you and your family greet happiness.」という感じで、伝えたいメッセージを書きましょう。これも、TextColorは、白(White)です。
Designer06

画面に並べる部品はこれだけですが、明るいツリーと暗いツリーの絵をパッ、パッと自動的に切り替えるために、ClockコンポーネントをPaletteのBasicから持ってきます。
そして、ツリーに触ったときに、音を出すために、SoundコンポーネントをPaletteのMediaのところから持ってきます。Soundコンポーネント(Sound1)のソースには、そりの鈴の音をアップロードしてセットします。
Designer07

あと、ツリーのもう一つの絵をMediaのAddボタンからアップロードしたら、Designerでの作業は終わりです。
Designer08

こんどは、Blocks Editorでの作業です。

My BlocksタブのClock1から、[when Clock1.Timer]ブロックを選択します。
Blocks_editor01

同じく、Clock1から、[set Clock1.TimerInterval]ブロックを持ってきて、[when Clock1.Timer]ブロックにはめ込みます。これは、アニメーションの間隔をセットするブロックです。
Blocks_editor02

絵の入れ替えの時間を短くしたり、ちょっと長くしたりしたいので、この間隔TimerIntervalには、乱数を発生させる[call random Integer]をBuilt-InタブのMathから持ってきて、下のnumber「100」を「5」に変えます。乱数は、コンピュータがふるサイコロのようなものです。これで、1から5の数字がランダムに発生します。同じく、Mathから、[×]のブロックを持ってきて、左に、[call random Integer]ブロック、右には、Mathから持ってきた[number]ブロックをはめ込み、[number]の数字「123」を「100」に変更します。TimerIntervalの単位は、msなので、100倍して、0.1秒(100ms)~0.5秒(500ms)の数字になるようにします。
このブロックを先ほどの[set Clock1.TimerInterval]にはめ込みます。これで、間隔が100msだったり、500msだったりするようになります。

Blocks_editor03

絵を入れ替えるために、絵のファイル名を、変数(variable)という入れ物にセットします。Built-InタブのDefinitionから、[def variable]ブロックを持ってきて、名前を「ImageFileName」に変え、Textから[text]ブロックを持ってきて、文字を1つ目のツリー絵のファイル名「xmastree01-001.gif」にします。
Blocks_editor04

絵の入れ替えには、[ifelse]ブロックを使います。これは、「何々のときには、○○する、その他のときは、××する」というように、することを分けるときに使います。[ifelse]は、Built-InタブのContorolにあります。
「何々のとき」の判定のために、Built-InタブのLogicから、[=]ブロックを持っきて、右には、My BlocksタブのMy Definitionsから、[global ImageFileName]ブロックを、左には、1つ目の絵「xmastree01-001.gif」の名前を[Text]ブロックで入れます。
Blocks_editor05

[ifelse]ブロックのthen-doのところには、My BlocksタブのMy Definitionsから、[set global ImageFileName]ブロックをはめ込みます。ここに、[Text]ブロックを用意して、2つ目の絵のファイル名「xmastree01-002.gif」を書きます。これで、ファイル名を入れ替えます。
同様に、else-doのところに、[set global ImageFileName]ブロックと「xmastree01-001.gif」と書いた[Text]ブロックをはめ込みます。これで、ファイル名を元に戻します。
Blocks_editor06

そして、My BlocksタブのButton1から、Button1の絵をセットするための[set Button1.Image]ブロックを持ってきて、[ifelse]ブロックの下にはめ込み、ここに、[global ImageFileName]ブロックを入れれば、ツリーの入れ替えは、おしまいです。
Blocks_editor07

ツリーに触ると、そりの音が鳴る処理はもっと簡単です。

My BlocksタブのButton1から、[when Button1.Click]ブロックを持ってきます。
ここに、My BlocksタブのSound1から、[call Sound1.play]ブロックを持ってきて、はめ込むだけです。
Blocks_editor08

これで、クリスマス用簡単アプリ「XmasCard」は完成です。
Blocks_editor09

Designerに戻って、Package for Phoneから、Show Barcodeを選べば、アプリ配布用のバーコードも作成できます。
Barcode

これで、友だちに、送ることもできますね!!

さて、App Inventorは、今月末でGoogleの運営が終わり、来年からは、OSS化、MIT(マサチューセッツ工科大学)のメディアラボに引き継がれます。
なので、自分の作ったApp Inventorのプロジェクトは、忘れずに、今月末までに、ダウンロードして保存しておきましょう!

yoji

プロフィール

村山 要司

村山 要司

メディアックパソコンスクール鶴ヶ峰教室オーナー。
著書に「楽しく学べるAndroidプログラミング」など。

詳しいプロフィール

カレンダー
2012年5月
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    
カテゴリー

オルタナティブ・ブログは、専門スタッフにより、企画・構成されています。入力頂いた内容は、アイティメディアの他、オルタナティブ・ブログ、及び本記事執筆会社に提供されます。


最近のトラックバック
エンタープライズ・ピックアップ

news094.gif ストレス社会との付き合い方
政府がメンタルヘルス検査の義務化を検討しています。しかしうつになった後だけではなく、なる前の予防も大切なのではないでしょうか。(5/24)

news094.gif 「思いやり経営」のススメ
産学・NPO連携の民間団体が先頃、「思いやり経営」という観点で評価した指標や企業ランキングを発表した。企業のマネジメント力を知る手立てとして注目されそうだ。(5/24)

news094.gif テレワークが労働者のマインドを変える
テレワークが普及すると、労働者の評価は従来の「時間×生産性」から「成果」へと変化する。時間や場所を自分の裁量でコントロールできる変わりに、成果を最大化するために労働をマネジメントする能力とマインドが労働者には必要になる。(5/23)

news094.gif 求む、クックパッド男子
高身長も高学歴も高収入もいらない。私が男性に求めるのは「料理の腕」だけです。(5/18)

news094.gif 37歳の常識――我々は一生学び続ける
学び続けなければ衰退するのみだ。(5/18)

Special

- PR -

サイトマップ | 利用規約 | プライバシーポリシー | 広告案内 | お問い合わせ