2018年12月31日月曜日

餅搗きゲーム

あまプロでは尼崎市内でプログラミング教室を開催しています。
アドベントカレンダーという企画が有りまして、日本で言う「もう幾つ寝るとお正月〜」のクリスマス版みたいな感じのカレンダーです。
日毎に記事を載せてクリスマスを迎えるのを楽しむ風習だそうです。
そのこどもプログラミング版が有りましたので、載せてもらいました。

あまプロでは一回90分で授業を行っております。
基本的に一回完結形式の授業になります。
今回は年末年始ということで、Scratchで餅搗きゲームを作ってみます。
ちなみにScratch2.0では日本語入力の関係でChromium+pepperflashplugin-nonfreeで行います。
Scratch3.0はFlashを未使用なのでFirefoxで動くと思います。

 スプライトを作る

スクラッチには予めスプライトが幾つか用意されていますが、餅搗きに使えそうなスプライトは含まれていません…。
なので、自作する必要が有ります。
餅搗きに必要なスプライトは「杵」「臼」「餅」です。
初期表示される猫を削除して、左下の筆アイコンをクリックして、杵のスプライトを描きましょう。
簡単に茶色の長方形で描きます。
こちらを左杵とし、複製して左右反転さして右杵にします。
次に臼。
臼は長方形を消しゴムで削って臼にしました。
最後に餅。
餅は形が変わるので、コスチュームを三枚描きます。
こちらも白い楕円を描いたり削ったりして簡単に描きます。
平らな餅と、凹んだ餅と、伸びた餅の三枚を描きます。

スクリプトを組む

スプライトを描いたら次はスクリプトを書きます。

先ずは左杵から

キーボードのqで振り上げ、sで振り下ろします。
振り上げ振り下ろしはスプライトを回転さす事で実現しています。
せっかちなスクラッチャの為に↑↓でスピード調整が行える様にしました。
それと、振り上げ過ぎ振り下ろし過ぎの防止の機能を追加してみました。
これで杵が臼にめり込む事がなくなります。
次に左杵のスクリプトを右杵へドラッグアンドドロップして写します。
右杵はpで振り上げて、lで振り下ろします。

次に餅のスクリプト

杵の振り下ろし中に餅に触れると凹んだ餅に、杵の振り上げ中に餅に触れると伸びた餅に、それ以外は平らな餅にします。

臼のスクリプトは無いです

こんな感じで餅搗きゲームの出来上がりです。
必須では無いですが、ゲームとして盛り上げる為に

おまけとして

  • 餅を撞く時に音を出す機能と
  • 撞いた数を数えておき、数を超えると出来上がりにする演出を加えても良ぇでしょう。
  • それと杵同士がぶつかった時に演出すると、選りゲーム性が高まります。
  • あと、背景は白のままやと餅と同化してまうので、何か色を変えといた方が良ぇです。
この辺りは時間が有ればお好みで。
作成したゲームはこちらになります。

それでは〜

2018年12月13日木曜日

バリューサーバでワードプレス構築

あまプロではウェブサイトの構築をお受けする事が有ります。

小規模なサイトではバリュードメインを使う事が多いです。
バリュードメインのマニュアルに個別の説明は載ってるのですが、ドメイン購入からワードプレスインストールまでの流れが揃ってなかったのであメログ。

手順としてはこんな感じになります。
  1. ドメインの購入
  2. WHOIS情報の確認
  3. サーバの購入
  4. DNSの設定
  5. ドメインウェブの設定
  6. SSLの設定
  7. PHPのバージョン設定
  8. データベースの構築
  9. ワードプレスの設置

2018年12月1日土曜日

GASでPDF出力

あまプロではGoogleAppsScriptで社内システムを構築する事が有ります。
フリーエディションには6分を超えるスクリプトの処理は出来なかったり、一日に作成するファイル数は500迄制限が有ったりすんねんけど、グーグルアカウントさえあればGASで簡単な社内システムなら構築可能です。

その中でも良く使うPDFエクスポートをあメログ。

 簡単に説明すると、IDでファイルを開いて、getAsで変換して、createFileで保存すんだけ。
  DriveApp.getFolderById( 'フォルダID').createFile(
    DriveApp.getFileById( 'スライドID').getAs( MimeType.PDF)
  )
  .setName( 'スライド.pdf')//デフォルト名(ファイル名.pdf)で良ければこの行は不要
  ;
  DriveApp.getFolderById( 'フォルダID').createFile(
    DriveApp.getFileById( 'スプレッドシートID').getAs( MimeType.PDF)
  )
  .setName( 'スプレッドシート.pdf')
  ;
  DriveApp.getFolderById( 'フォルダID').createFile(
    DriveApp.getFileById( 'ドキュメントID').getAs( MimeType.PDF)
  )
  .setName( 'ドキュメント.pdf')
  ;
IDやファイル名は各々変えます。
ご覧の通り、GoogleドキュメントでもGoogleスプレッドシートでもGoogleスライドでも手順は同じです。

グーグルドライブに変換前と変換後のサンプルを置いておきます。
サンプルスプレッドシートスプレッドシートPDF
サンプルスライドスライドPDF
サンプルドキュメントドキュメントPDF

例えば、スプレッドシートをデータベース代わりにして、データを抽出して、データを帳票に埋め込んでPDF出力する
なんて事もGASで可能。

ちなみにドキュメント(ワープロ)ファイルをGASで操作すると(今の所)テキストボックスの操作が出来へん様なので、スライド(プレゼンテーション)をGASで操作してPDFファイルを出力するのが良ぇみたいです。
2018/11/30現在。

2018年11月7日水曜日

Re: Ubuntu18.10について

あまプロではUbuntuを使っています。

先程、エラー続きだったアップグレードがやっとこさ開始しました。


Ubuntu18.11になってもうたけど…。

2018年11月3日土曜日

wi-fiルータ置き忘れ防止アプリについて

あまプロでは尼崎市内の教室で授業する際にベイコムさんのwi-fiルータを活用しています。
利用エリアは尼崎市と西宮市と伊丹市と大阪市北部…と狭いのですが、何選り安い。
しかも定額制!
なもんで、あまプロでは大助かりなんですが…コンパクト過ぎて度々置き忘れてましたorz
アプリで防止出来へんか探してみたんですが、探し方が悪かった所為か良いのが見付かりませんでした。
「無きゃ作れば良ぇやんが」 あまプロの理念なので、作ってみました。
 wi-fiの鈴
野良アプリですので、インストールするにはAndroidの設定で開発元不明のアプリのインストールの許可をする必要が有ります。
私のAndroid4.4.4でのみ動作確認済みで、悪い事は仕込んでませんが保証は出来ませんので自己責任でお使い下さい。
不具合報告等頂けると直すかもしれません。
ソースはgithubで公開する予定です。
ゆくゆくはGooglePlayにも…出すかもしれません。

 使い方は
 置き忘れたくないwi-fiルータに接続してから
 アプリ(wi-fiの鈴)を起動して
 スイッチオン
 うっかりwi-fiルータの圏外に出るとアラームが鳴ります

 これで忘れ物が一つ減る…筈だ。

2018年10月29日月曜日

Ubuntu 18.10について

あまプロではUbuntuを使っています。

Ubuntuは4月と10月にアップグレードが実施されます。
先日Ubuntu18.10の通知が表示されましたので、アップグレードしよかいなと思って、
アップグレードをクリックしたら…何も起きません。

アップグレードが開始されまへん。
これ、慣れてへん人ならビビると思うわぁ。

調べたらアップグレードソフトのバグらしいです。
まぁLTSやないし、困る事もないので、バグが改修されるまで放置します。

2018年10月7日日曜日

オープンストリートマップで任意の範囲と縮尺の画像を取得する方法

あまプロでは地域の催しに参加する事が有ります。
尼では10月8日(月)に市民まつりが開催されまして、そこでCodeforAmagasakiの仲間と共にブースを出展します。

その中で尼の地図をミウラ折りにする体験講座をする予定です。
ミウラ折りは登録商標ですが、非営利ならば使っても良いとの事ですので、ワークショップに活用させてもらいます。
ちなみに昔、就実大学で三浦先生の講座に参加した事が有ります。

今回はA2サイズ(420mm×594mm)に白黒で尼崎市全域の地図を印刷します。
白黒印刷(グレイスケール)では600dpiが良いらしいので、ピクセルにすると9925×14033pixcelになります…結構でかいです。
今回はちょっと品質を下げて400dpiにしたので6617×9355ピクセルになります。

OSM本家でも画像エクスポートは行えるのですが、範囲と尺度を同時には設定出来ません。
なので、今回は範囲と尺度を同時指定出来るBigMapというサービスを使いました。
こちらのサービスで、例えば尼崎市全域が収まって上記サイズに近いのはズームレベル16の様です。
50MB近くのサイズになりますのでご注意を。

このBigMapは範囲や尺度を自在に変更出来るので、かなり便利です。
ただ、あまり範囲を広げ過ぎたりズームレベルを上げ過ぎる(max19)とサーバに負荷が掛かり応答が返って来なくなりますのでご注意を…。

BigMapの操作方法を簡単に説明すると
  1. 画像を取得したい地図の緯度経度を指定して送信して
  2. 次画面で範囲を微調整して
    主な操作はEXPAND(広げる)SHIFT(移動)SHRINK(狭める)です
  3. Perlのリンクをクリックしてmkmap.plファイルをダウンロードして
  4. ローカルでperl mkmap.pl > map.pngを実行するだけです。
perl環境が無い場合はsudo apt install perlでインストールして下さい。
こちらはPerl v5.26.1です。
更にこちらの環境ではGDライブラリが無い旨のエラーが出ましたので
sudo apt install libgd-perl
でGDライブラリを追加して解決しました。

画像の生成に少し時間が掛かるのですが

無事に尼崎市全域でZoomLevel16の画像を取得出来ました。
後はGIMP等でA2サイズに微調整して完成です。
50MB近く有りますのでダウンロードにはご注意を。

注意点
BigMapはOSMのクレジットが入らないので、手動で入れる必要が有ります。
邪魔にならない地図の端でも良いので「© OpenStreetMap contributors」を書き込んどきましょう。

是非お住いの地域の一枚画像をゲットして、悦に浸って下さい。

2018年10月3日水曜日

WordpressのRSSが404NotFoundになる

あまプロではワードプレスを用いてウェブサイトの構築を行う場合が有ります。

皆さんRSSは使てはりますか?サイトの更新情報を取得出来る便利なツールです。
ワードプレスでも標準のウィジェットで使えます。 テーマに選ってはフッタやサイドバーに表示してます。
ちなみに、あメログですとこちらです。
先日、ワードプレスのRSSが404 Not Foundになる現象が発生しましたので、その原因の調査と改修をあメログ。

色々と調査した所、原因はパーマリンクの設定を「基本」にしていた為でした。
permalinkを「日付と投稿名」とか「数字ベース」にしてたら正常に表示されるんですけど…
「基本」にしたら何故かRSSが404になるんですわ…基本が出来てませんね。

ワードプレスのバージョンは現時点の最新版4.9.8-jaです。

2018年9月23日日曜日

ワードプレスのテーマ編集時にファイルが空になる現象について

あまプロでは、ワードプレスの授業も行っております。
先日、生徒さんのwordpressを授業してたら、急にサイトが真っ白で何も表示されなくなる現象に遭遇しました。

その顛末をあメログ。

先ず、サイトが真っ白で何も表示されない原因は管理画面の 外観 -> テーマの編集 で使うfunctions.phpが空(0バイト)になっている為でした。
functions.phpが空になる原因ですが、functions.phpの更新時に
致命的なエラーをチェックするためにサイトと通信できないため、PHP の変更は取り消されました。
というエラーが発生して、その際に変更が取り消されただけでなく、ファイルの中身も消されてしまった様です…。
えぇ、ファイルと一緒に頭の中も真っ白になった次第です。

現象が発生したサイトはfunctions.phpのバックアップが有った為、バックアップから復旧する事にしました。
ですが、wordpressの管理画面からでは何度遣っても上記のエラーが発生し、ファイルを更新できませんでした…。

仕方ないので、FilezillaでFTPアップロードして何とか解決しました。
やれやれ、こんな事も起きるんですね…勉強になりました。

2018年8月24日金曜日

リブレオフィスのグラフについて

あまプロではプレゼンテーション用資料としてデータからグラフを生成する事が有ります。
データ(数値の羅列)だけだと解り難い事も、グラフで可視化すると解り易くなります。

あまプロではリブレオフィスを使用してますので、リブレオフィスでグラフを作成する方法をあメログ。
今回は環境省の大気汚染物質広域監視システム(そらまめ君)のデータを使ってみます。
窒素酸化物とか光化学オキシダントとか色々な物質を調査してはるんですが、今回はPM2.5の濃度をグラフにしてみます。

先ずはそらまめ君から尼崎市のデータと、比較の為に大阪市のデータを取ってきます。
HTMLの表をコピーして、Calcへ貼り付けます。
貼り付け時に取り込み方法を聞いてきますが、そのまま「OK」します。
貼り付けましたら、グラフ化したいセルを選択します。
次にメニューの挿入 -> グラフ...を押下します。グラフウィザード゛が表示されるので、色々設定して行きます。
環境省サイトには折れ線グラフ表示機能が有るんですが、リブレやと棒グラフや円グラフ等々様々なグラフ形式を選ぶ事が出来ます。
今回は棒グラフで進めます。
次にデータ範囲
ここでは特に変更せず「次へ」ボタンを押下。次はデータ系列
名前をPM2.5にしたかったんですが、何故かPM2としか設定できません….5があかん様です。
今回はPM2.5のみですが、他の列を追加したい場合は追加ボタン押下で追加可能です。
逆に不要な列の削除も可能です。
この名前は凡例に表示されます。
「次へ」を押下
タイトルやサブタイトルやX軸やY軸を設定します。
ここは省略しても構いませんが、出典明記義務の有るデータを使っている場合や解り易さを求めるなら、設定しておいた方が無難でしょう。
今回はPM2.5のみですので凡例を表示チェックは外しておきます。
最後に「OK」ボタン押下でグラフが表示されます。
取り敢えずグラフは表示されましたが、何箇所か変な部分が有るので修正します。
グラフをダブルクリックすると、グラフ編集モードに移行します。
比較対象である大阪のグラフはY軸の最大値が20になってます。尼崎の最大値は30…。
グラフとして比較する際には合わせといた方が良いので、尼崎のY軸の最大値を20に修正します。
次に、日時が日時になってないですが、これは日時の列が無い為です。
年と月と日と時がそれぞれ別の列に分かれてます…なので、新たに列を挿入し、そこに数式で「月/日 時」となる列を作ります。数式は
=B1 & "/" & C1 & " " & D1
で、数式をオートフィルすれば良いです。
 データ範囲で日時の列を指定します。
この場合E列をドラッグ・アンド・ドロップで選択すると
範囲の数式が入ります。ここでOKすると
X軸の目盛りに日時が表示されます。
あともう少し、X軸の日時が降順になってるので
X軸の目盛りで逆方向にして、
目盛りを逆方向にするとY軸のラベルが右側に表示されてしまうので、Y軸ラベルの配置を「右端/上端」に変更します。
完成!

こんな感じで、皆さんも是非リブレのグラフを活用してみて下さい。

2018年8月20日月曜日

リブレオフィスについて

あまプロではオフィスソフトはLibreOfficeを使ってます。

最近、立て続けにバグを見付けたのであメログ。

  1. Impressで複数行(二行以上)を入力し、全選択して日本語を入力するとハングする
    スライドを作ってたら偶々見付けたんですが、日本語入力時にフリーズします
    CPUが100%になってまいます
    Ubuntu( Linux)環境でのみ起きるみたいでWindows環境では起きない様です
    バグ票はこちら
  2. Calcで時間のオートフィルが出来ない
    01:00をautofillで加算したら、見た目は加算されへんのに、実際は24:00加算されます
    勤務シフトの表計算を作ってたら偶々見付けました
    セルの見た目と値が異なるという気付き難いバグ
    これはOS関係無く発生している様です
    バグ票はこちら
長い事使ってると色々バグが潜り込みますね。
先日LibreOffice6.1がリリースされたばかりなので、早ければ6.2では改修される…筈。

2018年8月11日土曜日

松竹マルチプレックスシアターズメンバーズのシステムについて

あまプロでは夏休みを迎えております。
先日、子供達と近所の映画館へ行ったのですが、その時に困った事が会ったのであメログ。

Movixあまがさき では会員になって、六回鑑賞すると一回無料鑑賞クーポンが貰えます。
先日、ネットで 仮面ライダービルドとルパンレンジャーVSパトレンジャー の映画親子ペアチケットで2席購入して、更に無料クーポンでもう1席(計3席)購入しようとしました。
しかし、 SMTmenbers のシステムでは、同じ回で親子ペアチケットを購入した後に無料クーポンは使えません…。
困るので、取り敢えずメールで改善要望を出しときました📧

回避策としては、先に無料クーポンで1席購入した後に、親子ペアチケットで2席購入するか
先に親子ペアチケットで2席購入してしまった場合には(ネットでは購入出来なくなるので)諦めて窓口で無料クーポンで1席購入するしかないです。
窓口では無料クーポンが利用出来たので、システム上では親子ペアチケットと無料クーポンを同時回で利用するのは可能ですが、SMTmenbers経由だとそれが出来へん様です。

ひょっとしたら直ぐに改修されるかもしれませんけど、親子三人で映画を観られる方はご注意を。

ちなみに映画はおもろかったです。
次の仮面ライダージオウがちらっとお披露目されてました。
最後の平成ライダーはどんなんかな〜。

2018年7月30日月曜日

Google Apps Scriptのfor in文について

あまプロではグーグルスプレッドシートスクリプトを組む事が有ります。

グーグルのスクリプトはApps Scriptという名前で、JavaScriptに似た仕様になっています。
利用にはGoogleのアカウントを作成する必要が有るのですが、無料でアカウントさえ作れば、グーグルサービス同士の連携が出来るので、とても便利です。
例えば、グーグルフォームでアンケートを収集して、アンケート受付をGmailで送信するとかが可能になります。

今回はみんなのサマーセミナーで当日シフトを作成するにあたり、
 グーグルフォームでシフト可能日を選択してもらい
 グーグルスプレッドシートへシフトを割り当てる
というスクリプトを作成しました。

嵌まりポイントが有りましたのであメログ。
例えば配列を繰り返し処理する場合、以下の様なスクリプトを組んだとします。
function myFunction() {
  var abc = [ 'a', 'b', 'c'];
  for( var i in abc) {
    if( i + 1 == 2) { //ここね
      console.log( abc[ i]);
    }
  }
}
とした時、意図した結果になりません…。
デバッグで追跡したみたところ、iにはStringが入っている事が判明しました。
良く解らないのですが、インクリメントして文字列に変換してくれてるんかな?
仕方ないので
function myFunction() {
  var abc = [ 'a', 'b', 'c'];
  for( var i in abc) {
    if( parseInt( i) + 1 == 2) {
      console.log( abc[ i]);
    }
  }
}
として数値に変換して回避しました…。

どうもGASのfor in文では反復子(i)を文字列で扱っている様です…。
反復子の操作はバグの元という意見も有るので、わざと扱い難くしてはるんかな?
一層の事この場合は
function myFunction() {
  var abc = [ 'a', 'b', 'c'];
  for( var i = 0; i < abc.length; i++) {
    if( i + 1 == 2) {
      console.log( abc[ i]);
    }
  }
}
にした方が良ぇんかな?

2018年7月25日水曜日

3Dモデルについて

あまプロでは3Dモデルを作成する案件が有ります。
今回はBlenderthree.jsを用いて、ウェブサイトにスリッパの3Dモデルを表示してみました。
手順が少しややこしかったので、あメログ。

インストール

あまプロではUbuntuを使いますので、Ubuntuソフトウェアから簡単にBlenderをインストール出来ます。

日本語化

デフォルトではUIが英語表記になっているので、File -> User Preferences -> System -> International Fontsをオンにします。
これだけでは文字化けするので、Interface fontに適当な(/usr/share/fonts/truetype/fonts-japanese-gothic.ttf等)日本語フォントを指定します。

アドオンのインストール

Blenderで作成したオブジェクトをthree.jsで表示するにはglTF(またはそのバイナリ形式のglb)形式に変換する必要が有ります。
glTFはWebGLを用いて3D表示する為に策定されたファイル形式です。
Blenderの標準機能ではオブジェクトをglTF形式へエクスポートする機能が有りませんので、アドオンを別途追加します。
こちらからアドオンをダウンロードし、解凍して
Ubuntu(の18.04)の場合アドオンのパスは/usr/share/blender/scripts/addons/なので、
sudo cp -r glTF-Blender-Exporter-master/scripts/addons/io_scene_gltf2/ /usr/share/blender/scripts/addons/
でコピーします。
ディストリビューションによってはパスが異なると思いますので、調べてみて下さい。
これでエクスポートにglTFが追加されます。もし、追加されへん場合はファイル -> ユーザ設定 -> アドオンで、glTFエクスポートにチェックが付いてないか確認して下さい。

オブジェクトの作成

サイトに表示したいオブジェクトを作成します。
デフォルトでは立方体が表示されているので、これを編集したり、新たにオブジェクトを増やすと良いでしょう。
今回は押し出しや細分割曲面を利用してスリッパのオブジェクトを作りしまた。

UVマッピング

オブジェクトだけではちと寂しいですが、表面に画像を貼り付けてそれらしく見せる事が出来ます。
対話モードを編集モードにして、スクリーンレイアウトをUV/Editingにします。
シェーディング/UVタブのUVマッピングをスマートUV投影にしてOKを押下します。
リンク(表面に貼り付ける)する画像を下で選択すると、左画面に展開図が表示されます。
次にスクリーンレイアウトをDefaultに戻して、 プロパティのテクスチャの画像で先程の展開図を選択します。
プレビュー上ではテクスチャが反映されませんが、これで表面に画像が貼り付けられてます。
何かこちょこちょやってたら偶に反映されます。方法は有るのでしょうが、判りませんでしたm( _ _)m。

エクスポート

作成したオブジェクトをエクスポートします。
glTF形式でもglb形式でも構いませんが、今回はglb形式にしました。
ファイル -> エクスポート -> glTF 2.0(*.glb)をクリックします。
色々オプションが有りますが、取り敢えず何も変えずに保存します。

サイト組み込み

three.jsのサイトにサンプルが上がってますので、ここを参考に組み込む側のスクリプトを作成します。
ローカルで動作さす場合はダウンロードしたライブラリを参照するだけで動きます。
ウェブで公開する場合は、glbファイルとライブラリファイルもアップする必要が有ります。
ライブラリの配置が難しい場合はライブラリのCDNを使うと良いでしょう。

別ドメインにglb(またはglTFファイル)を置く場合

3Dモデルを表示したいjimdoにはglbファイルをアップ出来ませんでしたので、別途GCPのバケットに置く事にしました。
その場合、リソースのドメインが異なりますので、クロスオリジン リソース シェアリング(CORS)の制約に引っ掛かります。
なので、ここを参考にバケット側の設定を変更する必要が有ります。
レンタルサーバに選ってはglbファイルもアップ出来ますので、CORS対応は不要です。

Facebookの3D投稿

glb形式でエクスポートすると、facebookに3Dモデルを投稿出来ます。
2018年7月現在glb形式のみで、glTF形式には対応してない様です。
ファイルサイズの制限等、詳しい方法はこちらをご覧下さい。
PCからの投稿方法は簡単で、投稿欄へglbファイルをドラッグ・アンド・ドロップするだけです。
画像や動画のファイル選択からglbファイルを指定しても表示されませんのでご注意を。
こんな感じでfacebookにスリッパを投稿出来ました。
ライブラリの配置もCORSの設定も不要なので、(表示するだけなら)めちゃ楽です〜。

まとめ

ざっとこんなもんで、サイトに3Dモデルを表示する事が出来また。
みんなのサマーセミナーのサイトをWebGLに対応したブラウザで表示するとスリッパが表示されますので、楽しんでみて下さい。

2018年7月7日土曜日

vimの設定について

あまプロではubuntuを使って開発を行う事が多いです。

エディタはvimを使っています。
大抵の環境には入っている(又はインストールする事が出来る)のでこれを選んでます。

vimは標準設定では使い難く、ちょっと設定を変える必要が有ります。

例えばこんな感じ
:set ambiwidth=double
:set cursorline
:set display=lastline
:set hls
:set list
:set listchars=tab:»\ ,eol:↲,extends:»,precedes:«
:set laststatus=2
:set noswapfile
:set nu
:set nowrap
:set paste
:set statusline=%F%m%r%=[%{&fenc}][%l/%L]
:set sidescroll=1
:set showmatch
:set smartindent
:set showtabline=2
:set ts=4 sw=4 sts=4 et
:set title
:set virtualedit=block
:set whichwrap=b,s,<,>,[,]
:set wrapscan
:hi CursorLineNr cterm=bold
:hi CursorLine ctermbg=black
:hi StatusLine ctermfg=darkgreen ctermbg=lightgreen

これは出来るだけ毎回入力してます。
どんな環境でもいつでもだいたい同じ様にvimを使う為です。

これを設定するとvimがちょっと便利に使えます。

2018年6月24日日曜日

地図について

あまプロでは地図サービスでOpenStreetMapを使う事が多いです。
乗り換え検索ではGoogleMapを使いますが、チラシ作成やスクリーンショットやデザイン等ではオープンストリートマップを使います。

OSMは15年程前にイギリスで始まった、オープンデータの地図情報プロジェクトです。
簡単に言うと、ウィキペディアの地図版です。

このプロジェクトのおもろい所は、自由に地図が描けますので地図好きには最高のプロジェクトになります。
地図データはODbLのライセンスで使えます。
簡単に説明すると、営利非営利を問わず自由に変更出来ますし、データベースから著作物(地図等)を作れます。但し、データベースはODbLを引き継がなければなりません。

いきなりデータを使うなんて無理やわぁと言う方もご安心!
データベースから生成された地図画像もCCBYSAのライセンスで提供されてます。
簡単に説明すると、営利非営利を問わず自由に変更や使用が出来ます。但し、変更後の地図画像もCCBYSAになります。

縛りが全く無いとは言いませんが、かなり自由度の高い物になります。
例えば、データの方はそのまま地図サービスを提供出来ますし、俗に言う位置ゲーのマップやカーナビやサイコン等にも使えます。
有名所で言えばポケモンGOもOSMを使ってます。facebookの地図もOSMです。ヤフー地図もデフォルトでは有りませんが、地図の種類でOSMの選択が可能です。

地図画像の方も例えば印刷物やスクリーンショットに用いる事が出来ます。
地図画像はCCBYSAに加えて"© OpenStreetMap contributors"というクレジットを地図の何処かに記載する必要が有るのですが、それさえ守れば無料で無断で使えます。
OSMのサイトではこのクレジットは右下に表示されてるので、スクショを撮ると自動的にクレジットが入ります。

自由って言うても何だかんだで縛りが多い…かもしれませんが、一般的な商用のウェブ地図サービスですと更に縛りが多いです。
ウェブ地図サービスの殆どが無料で使えますが、自由に使えるウェブ地図サービスは少ないです。
それは地図サービスのデータが地図会社から提供されている為なのですが、
例えば、日本の無料地図サービスの殆どにダウンロード版(オフライン版)は有りません。
最近は携帯各社のエリアも拡大されていますが、それでも人の少ない場所や人の居ない場所はエリア外になります。
そういう場所で使えるのは当然ダウンロード版のみになります。
OSMにはOsmAndというアプリが有ります。但し、当然ですが地図データをダウンロードするにはそれなりの容量が要ります。

また、ウェブ地図サービスはウェブの外に出ると途端に縛りがきつくなります。
ほぼ使えないと言っても過言ではないです。
詳しくは各サービスの利用規約を読むしか無いのですが、基本は著作権が有りますので、無断使用は著作権侵害になります。
使用には地図会社へ使用料を支払って許諾を得る必要が有ります。

SNSを見てると週一ペースで、無断使用した地図が流れてきます。
こんな感じで。
残念ながら役所の印刷物にも多いです。先日、役所の面接の案内にウェブ地図を無断印刷して有りました…。
個人で使うには問題無いですが、ウェブ地図サービスのスクショや印刷物を無断で外部へ配るのは著作権侵害になります。

良く、地図をそのまま使うのが駄目なら自分で描きます、といって地図をトレース(下書きに使う)して自作したと言う方が居ます。
それは自作ではなく盗作です。

参考にするだけなら問題無いでしょ、と言って略地図を描く人も居ます。
例えば、良識の有る人がピカチュウを参考(パクった)にしたペカチュウを堂々とパンフレットに載せるでしょうか?
まともな団体なら載せないと思います。載せた所は倫理を疑われます。
ですが、それが地図の場合皆さん疑わずに受け入れてしまうねんな…これほんま不思議。
地図もキャラクタも記事もロゴマークもテレビ動画も同じ著作物でやで。

地図会社の地図は莫大な予算を掛けて、様々な調査をして高精度な地図を作成しています。
その成果を利用したいのであれば、使用料を支払うべきです。
高精度の地図でなくても構わなければ無料のOSMを使えば良ぇと考えます。
それが嫌なら何も見ずに地図を描きましょう。するとあなたはきっと自分の描いた地図の出来の悪さに驚き、ついつい他所の地図をチラ見してしまう事でしょう(¬_¬)
それも嫌なら地図を載せるのは控えましょう。

偶に、著作権侵害は親告罪なので、著作者でない人が声を上げるのはおかしいという意見が有ります。
親告罪には違いないです。単独の強姦や名誉毀損も親告罪です。
言われなければ罪にならなのは確かにそうですが、そこから先は個人の倫理観にお任せします。

OSMは自由度の高い地図データを提供してますので、そのデータを利用した様々なプロジェクトが派生しています。
  • Wheelmap   道路や施設が車椅子対応しているかの登録表示に特化したサービス
  • F4map    3D表示に特化したサービス(但し端末に3D表示機能が要ります)
  • uMap     地図に道案内線や吹き出し等の書き込みに特化したサービス
  • OpenLevelUp! 施設内の階表示に特化したサービス
  • OpenPoiMap 標準のタイルに表示されないPOI(地物)の選択表示に特化したサービス
           例えばAEDマップとか消火栓マップとかを作れます
  • OSMjp    標準のタイルには載らないけど、日本で要望の多い表示に特化したサービス
どれも尼の同じ場所を表示したリンクを貼り付けてますので、違いをお楽しみ下さい。

OSMを色々と紹介しましたが、もし興味を持たれた方は是非参加してマッパー(地図職人)になってみて下さい。
メールアドレス一つ有ればマッパー登録が可能です。
地元や旅行先の地図等、色々描いてみて下さい。ハマる人はハマる…筈。
注意点としては他所の地図を写さない事。これは厳禁です。
詳しくはまた次回の投稿で紹介しようと思います。

また尼限定ですが、あまプロではCodeforAmagasakiと連携して、毎年インターナショナルオープンデータデイみんなのサマーセミナーに参加して、OSMの紹介や講習を行ってます。
ご近所の方は参加してみて下さいね〜。

2018年6月10日日曜日

コマンドプロンプトで再帰的にファイルの行数を調べる方法

あまプロでは、時々Windowsの案件を受ける事が有ります。

先日、 C#(拡張子が.cs)の行数を調べる事が有りましたのであメログ。

コマンドプロンプトで
dir *.cs /b /s > ..\csList.txt

for /f %i in ( ..\csList.txt ) do type "%i" | find /c /v "" >> ..\csline.txt
を実行します。
バッチファイルで実行する場合は%を%%に置換する必要が有ります。

カレントディレクトリ配下のC#ファイルの一覧がcsList.txtへ出力され
各ファイルの行数がline.txtへ出力されます。

Linuxのシェルスクリプトとはだいぶちゃいますが、ちゃんと出来ました。

2018年5月25日金曜日

エクセルのマクロについて

あまプロではエクセルのマクロ作成授業も行っています。

先日、簡単なマクロの授業依頼が有りましたので、デバッグの方法を教えつつVBAについて教えていました。
するとある日、生徒のエクセルで文字が入力出来なくなる問題が発生しました。
問題を切り分けてみると、他のソフトでは日本語が入力出来て、どうやらMSOfficeのみ文字が入力出来ない様です。

良く良く聞いてみると、どうやら何処かで入手したエンタープライズ版を個人のパソコンにインストールされてました。
百均のCDに手書きのプロダクトコードでした…。
エクセル起動後のメッセージを見ると、プロダクトコード入力画面が表示され、プロダクトコードを入力すると、入力したプロダクトコードが無効な為に機能を制限していますと出ています。
オフィスの入手の経緯は知りませんが、サポートに電話してみたら如何でしょう?と伝えておきました。

ちなみに、エクセルの基本はそれ程変わってませんので、自宅のマクロ作成用でしたら10年前のバージョンのエクセルでも問題有りません。そして、10年前のバージョンでしたらネットで正規品を千円程度で購入出来ます。

Ubuntuで画面を録画する

あまプロではOSにUbuntuを使てます。
Linuxにはディスプレイサーバという機能が有りまして、Xorgが長い事使われてきました。
そのディスプレイサーバ上でGNOMEKDE等のデスクトップ環境が動作して、良く見るパソコンのデスクトップが使える様になります。
最近、新たにUnityというディスプレイサーバ(とデスクトップ環境)が登場し、Xorgに置き換わりそうでした。
しかし、利用者に不評で、置き換わりには至らず、再びXorgへ戻っています。で、今回Ubuntu18.04から新たにwaylandというディスプレイサーバが選択肢に加わりました。
初期選択されるディスプレイサーバはXorgですが、ログイン時にwaylandへ切り替える事が出来ます。
今後はwaylandに置き換わって行くんちゃうか、と言われています…。

(新しい物好きなんで)試しにwaylandに切り替えて使ってみました。
普段使いでは問題無さそうですが、未だSimpleScreenRecoderkazam等の録画ソフトが対応してへん様です。
あまプロでは授業で作成したゲームの動画をアップしているんですが、waylandで録画しても黒しか映らず録画出来ませんでした。音は録れるんですけどね。
なので、録画する時はXorgのSimpleScreenRecorderで録画してます。
暫くはXorgを使う事になりそうです。

waylandに対応したGreenRecorderというソフトも有るらしいですが、未だUbuntuのリポジトリには載っておらず、他のリポジトリを追加してインストールする必要が有り、ちょっと面倒です。

過渡期はどうしてもこういう不具合や手間が発生してしまいます。
この先どうなるんでしょうね〜

2018年5月24日木曜日

パスワード管理ツールについて

あまプロでは、色々な外部サービスを活用して日々の業務を行っております。

メールにブログにSNSにレンタルサーバに地図にプログラミング…有り難う御座います。
そこで、各サービスに必要なのがアカウント(ユーザ名)とパスワード。
ユーザ名は使い回しても構いませんが、パスワードはそれぞれ個別に生成しないといけません。パスワードの使い回しはとても危険です。
かと言って、それぞれのサービス毎にパスワードを覚えるのも大変です。
テキストファイルにメモっとくのも一つの手ですが、それでも件数が増えると大変です。

そういう時に、あまプロではパスワード管理ツールを用いています。
ツールは何でも良いのですが、KeeXassXというのを使ってます。
画像は英語表記になってますが、日本語表記も使えます。
他のツールでも大体同じやと思うんですが、使い方は
  1. マスターパスワードの登録
  2. アカウントとパスワードの組を作成
  3. 各サービスの登録時やログイン/サインイン時に使う
以上です。

マスターパスワードの登録

マスターパスワードは自力で生成して登録する必要が有ります。
恐らく、これが一番大変な工程で、長め(出来れば10文字以上)のパスワードを作って登録して下さい。
毎回KeePassXを起動する度に入力するパスワードになります。
面倒ですが、これさえ出来れば、後はKeePassXが手伝ってくれるので楽です。
OSのログインパスワードとは変えた方が良いです。

アカウントとパスワードの組を作成

パスワード生成時はこの画像の様に、パスワードの文字数や使用可能文字を選択出来ますので便利です。

パスワードは各サービスの最大桁を生成すると良いです。
パスワードは長ければ長い程良いです。
どんなに長くしても、コピペで使いますので、手間は掛かりません。 覚える必要も有りません。
そして、長ければ定期的に更新する必要は無いです。
ちなみにKeePassXでは最大9999桁まで生成出来ます。

殆どのサービスではユーザ名(ログインID)は一意でなければなりません。
先取りされているメールアドレスは取得出来ないのと同じです。
使える文字を駆使してユニークなアカウントを作りましょう。
アカウントは他の方に知られても大丈夫ですし、知らせなくても構いません。そこはお好みで。

各サービスの登録時やログイン/サインイン時に使う

後はサインアップ(登録)/サインイン(入室)の際に作ったパスワードを使うだけです。
パスワードはCtrl+cで、ユーザ名はCtrl+bでコピーできます。
そして、各サービスの入力欄にカーソルを合わせてペーストCtrl+vするだけです。

ちなみに初期設定ではコピーした内容は10秒後にクリップボードから消去されてしまいます。
つまりコピーしてから11秒後にペーストしても、何も貼り付けられないという事です。
この秒数を変えたい場合は設定のセキュリティから変更可能ですので、お好みで変更して下さい。
勿論、この機能を無効にも出来ますが…無効はお薦めしません。
他にも登録パスワードの分類分けや、パソコン買い替え時等に使うエクスポート/インポート機能等も付いてますので、是非ご利用下さい。
終了時はCtrl+sでパスワードの保存をお忘れなく〜

2018年5月21日月曜日

Ubuntuにプリンタドライバをインストール

あまプロではOSにUbuntuを使っています。

先日、プリンタの設定を行いましたのであメログ。
プリンタはエプソンのEP-705Aです。ジモティで3000円で譲って頂きました。
スキャナー機能も付いてまっせぇ。

Ubuntuの標準ドライバでは印刷出来ないので、ダウンロードセンタからドライバをダウンロードします。
今回はepson-inkjet-printer-201205j_1.0.0-1lsb3.2_amd64.debというdebファイルになります。

debファイルをインストールする場合はsudo dpkg -i *.debなんですが、一つ問題が有って
dpkgコマンドはパッケージの依存関係を解決してくれないです。
プリンタドライバの場合、lsb等色々なパッケージに依存して作られてます。
パッケージの依存関係とはプリンタドライバの場合、ドライバを動作される為に必要な物、パッケージを実行される為に要るパッケージです。
依存するパッケージを一つ一つインストールして行っても良いんですが、面倒なので依存関係を解決してくれるgdebiコマンドをインストールします。
sudo apt install gdebi
で、その後

sudo gdebi epson-inkjet-printer-201205j_1.0.0-1lsb3.2_amd64.deb
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Reading state information... Done
以下のパッケージのインストールが必要です: alien at debhelper debugedit dh-autoreconf dh-strip-nondeterminism libarchive-cpio-perl libfile-stripnondeterminism-perl libjpeg62 libmail-sendmail-perl librpmbuild8 librpmsign8 libsys-hostname-long-perl lsb lsb-core lsb-printing lsb-security ncurses-term pax po-debconf rpm

EPSON EP-705A Series - Epson Inkjet Printer Driver
 This software is a filter program used with Common UNIX Printing
 System (CUPS) from the Linux. This can supply the high quality print
 with Seiko Epson Color Ink Jet Printers.
 .
 This printer driver is supporting the following printers.
 .
 EP-705A
 .
 For detail list of supported printer, please refer to below site:
 http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX
 .
 (Converted from a rpm package by alien version 8.79ubuntu0.1.)
ソフトウェアパッケージをインストールしますか? [y/N]:y
Fetched 0 B in 0s (0 B/s)                                                     
以前に未選択のパッケージ dh-autoreconf を選択しています。
(データベースを読み込んでいます ... 現在 163837 個のファイルとディレクトリがインストールされています。)
.../00-dh-autoreconf_17_all.deb を展開する準備をしています ...
dh-autoreconf (17) を展開しています...
以前に未選択のパッケージ libfile-stripnondeterminism-perl を選択しています。
.../01-libfile-stripnondeterminism-perl_0.040-1.1~build1_all.deb を展開する準備をしています ...
libfile-stripnondeterminism-perl (0.040-1.1~build1) を展開しています...
以前に未選択のパッケージ dh-strip-nondeterminism を選択しています。
.../02-dh-strip-nondeterminism_0.040-1.1~build1_all.deb を展開する準備をしています ...
dh-strip-nondeterminism (0.040-1.1~build1) を展開しています...
以前に未選択のパッケージ po-debconf を選択しています。
.../03-po-debconf_1.0.20_all.deb を展開する準備をしています ...
po-debconf (1.0.20) を展開しています...
以前に未選択のパッケージ debhelper を選択しています。
.../04-debhelper_11.1.6ubuntu1_all.deb を展開する準備をしています ...
debhelper (11.1.6ubuntu1) を展開しています...
以前に未選択のパッケージ librpmbuild8 を選択しています。
.../05-librpmbuild8_4.14.1+dfsg1-2_amd64.deb を展開する準備をしています ...
librpmbuild8 (4.14.1+dfsg1-2) を展開しています...
以前に未選択のパッケージ librpmsign8 を選択しています。
.../06-librpmsign8_4.14.1+dfsg1-2_amd64.deb を展開する準備をしています ...
librpmsign8 (4.14.1+dfsg1-2) を展開しています...
以前に未選択のパッケージ debugedit を選択しています。
.../07-debugedit_4.14.1+dfsg1-2_amd64.deb を展開する準備をしています ...
debugedit (4.14.1+dfsg1-2) を展開しています...
以前に未選択のパッケージ rpm を選択しています。
.../08-rpm_4.14.1+dfsg1-2_amd64.deb を展開する準備をしています ...
rpm (4.14.1+dfsg1-2) を展開しています...
以前に未選択のパッケージ alien を選択しています。
.../09-alien_8.95_all.deb を展開する準備をしています ...
alien (8.95) を展開しています...
以前に未選択のパッケージ at を選択しています。
.../10-at_3.1.20-3.1ubuntu2_amd64.deb を展開する準備をしています ...
at (3.1.20-3.1ubuntu2) を展開しています...
以前に未選択のパッケージ libarchive-cpio-perl を選択しています。
.../11-libarchive-cpio-perl_0.10-1_all.deb を展開する準備をしています ...
libarchive-cpio-perl (0.10-1) を展開しています...
以前に未選択のパッケージ libjpeg62:amd64 を選択しています。
.../12-libjpeg62_1%3a6b2-3_amd64.deb を展開する準備をしています ...
libjpeg62:amd64 (1:6b2-3) を展開しています...
以前に未選択のパッケージ libsys-hostname-long-perl を選択しています。
.../13-libsys-hostname-long-perl_1.5-1_all.deb を展開する準備をしています ...
libsys-hostname-long-perl (1.5-1) を展開しています...
以前に未選択のパッケージ libmail-sendmail-perl を選択しています。
.../14-libmail-sendmail-perl_0.80-1_all.deb を展開する準備をしています ...
libmail-sendmail-perl (0.80-1) を展開しています...
以前に未選択のパッケージ ncurses-term を選択しています。
.../15-ncurses-term_6.1-1ubuntu1_all.deb を展開する準備をしています ...
ncurses-term (6.1-1ubuntu1) を展開しています...
以前に未選択のパッケージ pax を選択しています。
.../16-pax_1%3a20171021-2_amd64.deb を展開する準備をしています ...
pax (1:20171021-2) を展開しています...
以前に未選択のパッケージ lsb-security を選択しています。
.../17-lsb-security_9.20170808ubuntu1_amd64.deb を展開する準備をしています ...
lsb-security (9.20170808ubuntu1) を展開しています...
以前に未選択のパッケージ lsb-core を選択しています。
.../18-lsb-core_9.20170808ubuntu1_amd64.deb を展開する準備をしています ...
lsb-core (9.20170808ubuntu1) を展開しています...
以前に未選択のパッケージ lsb-printing を選択しています。
.../19-lsb-printing_9.20170808ubuntu1_amd64.deb を展開する準備をしています ...
lsb-printing (9.20170808ubuntu1) を展開しています...
以前に未選択のパッケージ lsb を選択しています。
.../20-lsb_9.20170808ubuntu1_all.deb を展開する準備をしています ...
lsb (9.20170808ubuntu1) を展開しています...
ncurses-term (6.1-1ubuntu1) を設定しています ...
libjpeg62:amd64 (1:6b2-3) を設定しています ...
po-debconf (1.0.20) を設定しています ...
ureadahead (0.100.0-20) のトリガを処理しています ...
ureadahead will be reprofiled on next reboot
debugedit (4.14.1+dfsg1-2) を設定しています ...
librpmsign8 (4.14.1+dfsg1-2) を設定しています ...
libarchive-cpio-perl (0.10-1) を設定しています ...
at (3.1.20-3.1ubuntu2) を設定しています ...
lsb-security (9.20170808ubuntu1) を設定しています ...
pax (1:20171021-2) を設定しています ...
libsys-hostname-long-perl (1.5-1) を設定しています ...
librpmbuild8 (4.14.1+dfsg1-2) を設定しています ...
libmail-sendmail-perl (0.80-1) を設定しています ...
libc-bin (2.27-3ubuntu1) のトリガを処理しています ...
doc-base (0.10.8) のトリガを処理しています ...
doc-base ファイルを 1 個追加 を処理中...
systemd (237-3ubuntu10) のトリガを処理しています ...
man-db (2.8.3-2) のトリガを処理しています ...
libfile-stripnondeterminism-perl (0.040-1.1~build1) を設定しています ...
rpm (4.14.1+dfsg1-2) を設定しています ...
dh-autoreconf (17) を設定しています ...
dh-strip-nondeterminism (0.040-1.1~build1) を設定しています ...
debhelper (11.1.6ubuntu1) を設定しています ...
alien (8.95) を設定しています ...
lsb-core (9.20170808ubuntu1) を設定しています ...
lsb-printing (9.20170808ubuntu1) を設定しています ...
lsb (9.20170808ubuntu1) を設定しています ...
以前に未選択のパッケージ epson-inkjet-printer-201205j を選択しています。
(データベースを読み込んでいます ... 現在 167414 個のファイルとディレクトリがインストールされています。)
epson-inkjet-printer-201205j_1.0.0-1lsb3.2_amd64.deb を展開する準備をしています ...
epson-inkjet-printer-201205j (1.0.0-1lsb3.2) を展開しています...
epson-inkjet-printer-201205j (1.0.0-1lsb3.2) を設定しています ...
libc-bin (2.27-3ubuntu1) のトリガを処理しています ...


こんな感じでプリンタで印刷出来る様になります〜。

契約書の袋綴について

あまプロでは、お客さんとの取引で契約書を交わす場合が有ります。

先日、複数枚の契約書を交わす機会が有りました。
一般的に、複数枚の契約書の場合、袋綴じにして割印します。
契約書をA4に複数枚印刷して、留めて、帯で糊付けして、割印するだけなんですけど。
百均で売ってへんかなぁ…と思って探してみたら
百均に売ってました、しかも10枚セットで!
袋綴テープにした方が探し易い様な気がしますが、製本テープという商品名なんですね。
契約書も製本っちゃ製本なんでしょう。

ホワイトボードセットとか領収書とかちょっとしたお菓子とか虫除けリングとか…ほんま色々売ってはりますね。
個人事業主には大助かりです。

Re: LibreOfficeが改修されてました

あまプロではオフィスソフトにLibreOfficeを使っています。

以前の記事でLibreOffice6.0で不具合が改修されてると書きましたが、
他にも黒色のQRコードの画像を挿入すると、印刷時(やPDFエクスポート時)に■で表示されるという不具合も改修されてました。
めでたしめでたし(^-^)

2018年5月19日土曜日

ワードプレスでホームページを作りたいです

あまプロではサイト製作も承ってますが、サイトの製作方法も教えています。
対象はプロ未満です。

先日、ワードプレスを習いたいという方がいらしたんですが
言葉通り単純にワードプレスの使い方を教えただけでは、生徒の身に付きませんし、何選り教えてておもろないです。
なので、受注の場合と似た様な感じで生徒の要求分析から行ってます。

簡単なブラウザ⇔ウェブサーバの仕組みを説明してHTMLCSSJavaScriptの三点セットの話をします。理解出来なくても説明はします。
場合によっては画像、音楽、動画、オフィス等のファイル形式の話もします。
次にワードプレスは.comと.orgで二種類有る事を伝えます。
 .comの方はユーザ登録のみで無料で使える分、広告が入ります。カスタマイズに制限が有りますが、メンテナンスが不要です。SSL標準装備です。
 .orgの方は別途サーバを借りてインストールする必要が有る分、広告も入らず、カスタマイズ制限も無いです。メンテナンスは自分で行う必要が有ります。メンテナンスを怠ると攻撃されめ場合が有ります。借りるサーバにはPHPmysqlが要ります。SSL証明書は自前で用意する必要が有ります。


他に確認事項は
  • プロバイダでは何のプランを使っているか
    プランによっては無料でサイトを設置出来る場合が有ります
    ちなみにうちのベイコムでは無料で100MBの容量が付いてきます
  • サーバは何処で借りるのか
  • ドメインの希望は有るのか
  • サイトのページ数は決まっているのか
  • サイトに載せる内容と機能は決まっているのか
  • 誰が製作するのか
  • 誰が更新するのか
  • 広告が入っても良いか
等を聞き出します。
世間話を交えながら、脱線しながら、回り道をしながら、急がず焦らず…
大事な事をぽろっと言うたりしますので、根気が要ります。
効率的ではないですけど、大事な工程です。

あまプロあるあるですが、既に自分や前任者がサーバ契約やサイト作成をある程度行ってしまっており、選択の余地が無い場合が多いです…。
小規模なサイトに高額なプランなんて勿体無いので、安いプランに移行して、浮いた額をあまプロに頂ければ、とても嬉しいです( ̄ー ̄)
特に非営利団体の場合は予算が少ない(ていうか無い)場合が殆どなので、開発費も運用費も無料に近付ける程喜ばれます(それが助けになります)。

先日の生徒さんは、自分で管理したい契約したいけど、遣り方が解らへんから教えて欲しいとの事でしたので、 デスクトップ共有でニフティのホームページ申し込みを説明しました。
個人情報を入力する際にはデスクトップ共有を止めて、説明してます。
カード番号登録の画面ではアメックスのカード番号と画面のカード番号の桁数が違う事が判明して、結構迷いました…カード番号って全部16桁やないんですね。
あ、勿論カード番号とか有効期限とかセキュリティコードは見ずに説明します。
この辺りは生徒との信頼関係が大事です。

良く良く話を伺うと、ワードプレス使う必要は無く、ホームページビルダブルーグリフォン等のオーサリングツールで事足りる場合が多々有ります。
 Wordpressは普及数が多い分、攻撃対象になる事も多く、多機能故に習得が大変という点が挙げられます。なので必要でなければ使わずにサイトを構築します。

最近ではweebly,jimdo,wix等の無料で簡単にサイトを構築出来るサービスも有るので、拘りがなければ最初はこれらをお薦めしてます。
上記のサイトで機能不足が出て来たら、データベースやプログラムを実行できるサーバを契約すれば良いです。

現在は特定の機能に特化したサービスが色々出てます。
動画サービスや登録フォームや決済サービス等々…自前で開発する事も不可能では無いですが、
既存のサービスを応用して要件が満たせるのであれば、早く使えて安いサービスを使った方が良いです。
どうしても譲れない場合やサービスが終了のみ、自前で開発すれば良いと考えてます。

最後に、簡単にウェブサイトが構築出来る様になりましたが、良いサイトを作るには今も昔も技術が要ります。
文章一つ画像一つ取っても良ぇのを作るのは大変です。
良ぇ文章や画像等のサイトの内容はそのまま探し易さ検索され易さ(SEO対策)になります。
色々と奥が深いです…。

リモート授業始めました

あまプロでは、リモートの授業も行っております。
昔はskype一択だったんですが、最近はmessengerhangoutlinezoom等々通話アプリも豊富で、デスクトップ共有も出来るので便利になってきてます。

リモートの授業は面会の授業と違い、
例えば、面会では直接「このアイコンをクリックして下さい」と指差せば良いだけですが👉
画面越しでは「画面左上の旗のアイコンが有りますよね?その1センチ上のハサミのアイコンの2つ右の矢印が内側に向いてるアイコンをクリックして下さい。」
アイコン一つクリックしてもらうにも一苦労です。

ですが、リモートで授業して欲しいという状況は有ります。
それは生徒の事情に依るのですが、時間的距離的金銭的身体的…様々な理由でリモートの需要は有ります。
 あまプロは面会の授業が基本なのですが、
 パソコンの基本操作が出来て
 面会した時に授業料をまとめて払って頂ける
のであれば、面会の授業と同じ90分千円で授業を行っています。

回線の混雑時には接続が切れる事が有るので、若干面倒なんですが…
移動して部屋を確保する手間を考えると楽です。

2018年5月17日木曜日

LibreOfficeが改修されてました

あまプロではパソコンのOSにUbuntuを使っています。

先日、Ubuntu18.04がリリースされました。
普段から業務で使用してまして、Firefoxでページをスクロールすると稀にフリーズする場合が有るけど、それ以外は普通に使えてます。

前バージョンの17.10に同梱されていたLibreOfficeは5.4やってんけど、今回6.0にバージョンアップしました。
バグ報告してへんかったけど、LibreOffice5.4でギャラリーを挿入して、プロパティの画像の回転角度を変更して回転さすと、画像が真っ白になって表示されへん…という不具合が有りました。
ちと忙しくてメーリングリストにも投稿出来ず、放置しててんけど、LibreOffice6.0では改修されてました😆アザマッス
GIMPも最近2.10がリリースされてんけど、Ubuntu18.04のGIMPは2.8です。ちと間に合わへんかったみたいです。

2018年5月11日金曜日

Ubuntu18.04出ました

あまプロでは教室で使うパソコンのOSにEdubuntuを使ってます。

EdubuntuはUbuntuの一種で、Ubuntuは毎年4月と10月にアップグレードが行われます。
先日、Ubuntu18.04がリリースされましたので、早速アップグレードしてみました。
今の所、大きな問題はなく動作しています。

Ubuntu18.04は二年に一度リリースされるLTS長期サポート版です。
同じバージョンのOSを長いこと使いたい場合に適しています。
新しもの好きの人は半年後の18.10をお楽しみに。

近々日本語リミックスもリリースされるそうですので、興味の有る方は是非インスールしてみて下さい。

みん放に出演しました

あまプロでは尼崎で毎年夏に開催しているみんなのサマーセミナーへ登壇しています。

サマセミでは色々と広報活動に挑戦していて、SNSやチラシも当然行っているのですが、今回は何と地元ラジオパーソナリティの方とラジオ配信を行いました。

8月のサマセミまで放送回数は限られてるのですが、パンフレット等では語り尽くせない魅力的なセンセイや講座内容をお伝えして行くそうです。
で、そのゲストにあまプロ(とCode for AMAとサマセミ実行委員)として出演させて頂きました。

プログラミングの話とかオープンストリートマップの話とかをさせて頂きましたので、良かったらお聴き下さい。

保存された放送はこちら→ みん放 第二回放送

ツイキャスのアプリやサイトにログインして、サポータになると、生放送時に通知が届いて便利です。
毎月第二火曜日19時〜配信予定です。
ツッコミも可能になりますので、皆様の愛有るツッコミをお待ちしております。
勿論、喋りたがりのセンセイも募集中です〜

Mapillary for Androidでカメラの向きについて

あまプロでは地域貢献でOpenStreetMapの地図データ作りに参加しています。

尼崎市内の移動中に郵便ポストや公園や喫茶店や自転車屋…等々を記載してます。
撮影にはMapillaryOpenStreetCamを使ってます。
Mapillaryのアプリではカメラの向き(東西南北)が検出出来ないと思ってたんですが、どうやら勘違いだった様です。
デフォルトの北方向にしとくと、内蔵ジャイロでカメラの向きを検出している様です…。
ややこしい( -"-)

2018年4月16日月曜日

LibreOfficeで数式からマクロを呼び出す方法

あまプロではオフィスソフトにリブレオフィスを使てます。

リブレオフィスではLibreOfficeBasicという言語でマクロが組めます。
他にもJavaScriptやBeanShellやPythonでもマクロを組む事が出来るそうです(…使った事は無いです)。
LibreOfficeBasicではSub(戻り値無し)とFunction(戻り値有り)の二種類を定義できます。

リブレオフィスで出来る事はマクロを組んで自動化する事が出来ます。
言い換えるとリブレオフィスで出来へん事はマクロで自動化する事が出来ません。

マクロを一から組むのは大変ですが、そんな方の為にリブレオフィスには操作の記録機能が有ります。
これはリブレオフィス上での操作を自動的にマクロ化して、保存してくれる機能です。

デフォルトでは何故か無効になっており
メニューのツール>オプション

LibreOffice>詳細>オプションの機能>マクロの記録を有効にする(限定的)
にチェックする事で有効化出来ます。

マクロを組む前に、普段の操作をマクロに置き換えるとどうなるのかを確認できます。

リブレオフィスのマクロ機能と似た機能で数式というのが有ります。
ちょっとややこしいのですが、リブレオフィスで数式と言いますと、2つ有りまして
一つがLibreOfficeMathという微積分等の複雑な数学式を記述する為の数式です。
もう一つがカルク等でセルの合計を出したりする簡単な処理の為の数式です。
ここで言うてるのは後者の方です。
カルクのセルで=から入力して始める数式です。

マクロと数式は出来る事が少し被ってまして、これまたややこしいのですが、違いを挙げてみると
数式は俗に言うワンライナー(一行で書く式です)。
セル内に改行無し(セル幅で折り返し)で書きますので、複数行になればとても見難いです。
マクロは複数行書けます。

数式はセル内に記述するのみですが、マクロはIDEという専用のソフトで記述します。
数式はデバッグ出来ませんが、マクロはデバッグ出来ます。

数式は各種イベント(ボタンクリックやショートカット等)に割り当てる事が出来ませんが、マクロは割り当てる事が出来ます。

なので、複雑な計算はマクロの方が組み易く読み易いです。
数式は範囲の合計や平均等の簡単な計算式の場合に便利です。

ここで一つ数式とマクロを組み合わせる方法を紹介します。
業務の中で、複雑な処理はマクロで組んで、その処理結果のみを数式で使いたい場合が有ります。
リブレオフィスのwikiには載ってませんので、公式な方法やないのかもしれません…ひょっとしたらバージョンアップに伴い使えなくなる方法かもしれませんが、取り敢えずあメログ。

先ずFunctionを作成します。
Function checkStr( param0 As String) As String
    If isEmpty( param) Then
        checkStr = "無"
    Else
        checkStr = "有"
    EndIf
End Function
戻り値が有るFunctionで有れば何でも良いです。
例では引数を判定して有無を返すFunctionにしてます。

コンパイルしてエラーが無い事を確認したら、
カルクの数式でFunctionを呼び出しするだけです。
=CHECKSTR( "ほげほげ")
以上、簡単ですね。
仕様でFunction名が大文字に変えられてしまいますが、これはどないもならん様です…。

LibreOfficeBasicのみでしか確認しておらず、他マクロ言語でも通じるかは判りませんが、
この方法を使うと、マクロに複雑な処理を記述して、それを呼び出す数式では簡潔にする事が出来ます。

勿論、条件付き書式でも使う事が出来ます。
マクロでも書式を変更する事が出来るのですが、条件付き書式ではGUIで書式を変更できます。

参考までに、作成したサンプルを置いておきます。

2018年4月12日木曜日

Scratch Day 2018 in AMA

あまプロではScratchを使ってプログラミングを教えています。

スクラッチは5月にリリースされましたので、毎年5月にはスクラッチデーという世界イベントが開催されます。
尼崎でも小規模ながら5月13日()に地元の団体と合同でクラッチデイを開催します。
https://day.scratch.mit.edu/events/5968/
お隣の伊丹でも6月に開催されるそうですよ。
参加費は無料で、パソコンをお持ちでない方にはお貸ししますので、興味の有る方は是非お申込み下さい。
設備の用意が有りますので、必ず事前申し込みをお願いします。
みんなでおもろいゲームを作りましょう〜。

2018年3月7日水曜日

ワードプレスでポートフォリオが表示されない

あまプロではワードプレスを使ってサイトを構築する場合が有ります。

先日、お客さんからサイトポートフォリオが表示されなくなったので、表示する様に直して欲しいと依頼が有りました。
色々と調査して解った事をあメログ。

  • ポートフォリオを表示するには固定ページのテンプレートをフロントページに設定する必要が有る
  • ポートフォリオを表示するには固定ページのフロントページを一つだけ設定して、他のテンプレートはデフォルトページにする必要が有る
  • テーマのカスタマイズでポートフォリオを表示する設定にする必要が有る
 この三つを守る必要が有る様です。