Apple公式iPadアプリPlaygroundsが日本語対応しました。

今週のiPad発表は教育機関向けの側面がありそうな印象でしたが、アプリについても関連していると思われるアップデートがありました。

iPadでプログラミングの基本やSwiftについて学習できるアプリ「Swift Playgrounds」が日本語対応しました。scratchもいいけどswiftはiOSアプリの開発で使われる言語なのでこれからiOSアプリを作ろうと目指している人にもお勧めです。

アプリは以下のボタンからダウンロードできます。

 

追伸:メニューに「最新iOS対応機種一覧」をのせました。このページは新製品の発表があり次第更新していきます。

IOSデベロッパプログラム更新 2016年版

本日、デベロッパープログラムを更新したので報告。

1. Apple ID で Member Center にサインイン

下記URLに更新の概要とMember Center へのリンクが貼ってあります。

プログラムの更新 – サポート – Apple Developer
https://developer.apple.com/support/renewal/jp/

2. 「renew your membership」をクリック

「renew your membership」のメッセージは更新期限が近くないと出ないと思います。
2016/3/3 時点での更新料金は 11,800円(税込12,744円)。
そのまま進んで行けばお支払いのページまで行けます。

3. 支払い
クレジットカード払いならセキュリティコードを入れて決済完了。

4. Apple Developerからメールが届く

件名が「Thank you for purchasing an Apple Developer Program」のメールがすぐに届きます。
メールの内容にはアクティベート日と更新後の期限が書かれています。
更新なのでアクティベート日は現在の更新期限と同じ日になります。

アプリを作ってないから(いつ作るんだ?)というのもあって忘れがちな更新ですが、今年はギリギリ更新に間に合いました。
これまでの履歴としては

  • 2013年登録
  • 2014年更新
  • 2015年失効後に更新
  • 2016年更新

通知の比較としては2014年更新と比較になるのですが毎年フォーマットが変わっているので来年はまだ若干かわっているかも。

記憶の範囲ですが、2014年は全て英語ページ。2015年以降は概要ページ・決済画面以降が日本語ページになっていました。

今回は決済時に登録情報の修正が不要だったので比較的に楽でした。今時は開発用と個人用のApple IDは分けなくても不便はなくなったのかな?(昔はデベロッパープログラムの決済情報は英語で登録する必要があって、逆にiOSやOS Xを日本語で使用する場合は決済情報を日本語でしか登録できなくて面倒でした。)

ブラウザ上でSwiftの実行結果を確認

iOS 8やYosemiteのアプリ開発に使用できる新言語Swiftですが、Xcodeを使わずブラウザ上でコードを実行して結果を確認できるサイトが登場しています。

ちょっとした文法の確認や学習の為にXcodeを起動しプロジェクト作成がちょっと面倒だなっといったシーンに活用できそうです。

ちなみにiPadでも問題なく使用できたので、Macが無い時でも使えるのがいいですね。

RunSwift – Try Swift in the Browser

Pythonドキュメントの日本語版がボリューム大きすぎ

Pythonで開発している最中なので、この話題は現場でもありましたが3000ページ超ってラクダ本以上じゃないですか1ライブラリだけで1800ページとか鬼!これのEPUB版をiPod touchにいれてiBooksで再生しようとしたらほぼ固まってるし、PDFにしても辛かった。。。いつかは読むぞw

http://sourceforge.jp/projects/pythonjp/releases/

今日からPython触る

まさかPythonで開発することになるとは、去年は全く想像もしてなかった。そういう意味で、今年の抱負は予想外にしておいたのだが・・・。また素のPythonだけでなくDjango付き、とは言え仕事なのでしばらくはフレームワークバカ(とりあえずその場凌ぎで使い方だけ覚えて応用が利かないレベル)を続けて余裕がある時に深追いすることになります。

 ちなみにPythonは蛇の事だと思っていましたがモンティ・パイソンが由来だったのですか、いやぁ知らなかった。Djangoはジャズギタリストのジャンゴ・ラインハルトからだそうです。
Python – Wikipedia
Django – Wikipedia

PHPをC++に変換して高速化する「HipHop for PHP」

PHPもC++も使うプログラマーにとっては凄い興味が沸きます。確かにPHPはスクリプト言語という宿命がある限り、キャッシュしようが限界がありますよね。だからといってC++で再コーディングするにも時間的なコストを考えると手段から外される事も多い。

FacebookがPHPをC++に変換し高速化する「HipHop for PHP」を公開したようです | ke-tai.org

http://ke-tai.org/blog/2010/02/05/hiphopphp/

PHPをC++に変換して高速化する「HipHop for PHP」をFacebookが公開 : candycane development blog
 PHPがウェブアプリ作る言語としてオリジナルで便利な関数が揃っている為プログラマーを教育しやすい初心者にも敷居が低いのは良く分かりますが、元々HTMLにSSIの代わりに埋め込んで使うような言語でJavaScriptとの違いはサーバーで動作させるか、クライアントで動作させるかといったものなのに、Smartyのようなテンプレートエンジンやその他多機能なフレームワークなど、折角Apacheモジュールとして高速動作させているのにパフォーマンスに対して本末転倒なライブラリを実装する開発のほうが標準的になっている事がとても嘆かわしいですね。
 そういったPHPを遅くするライブラリどもを全てエクステンションに追い出せるならサーバーコスト(特にCPU周り)の節約に貢献できそうです。あとバッチ処理とか単体で変換できるとバッチ付き抜け防止に役立ちそうですね。(そもそもPHPでバッチ組むなというのもありますがシェルプログラミングスキルがあまり無いのでほんのちょっとでも複雑になると他のスクリプト言語に逃げてしまいます。。。Perl使ってもOKならPHP選ぶ前に使ってます。)
 RubyはPerlの文字化けに苦しんでいた10年前は興味ありましたが未だに手を出してないなぁ。。。Pythonはあまり興味なし。(多分仕事で使うことがなさそうだから)。Javaはどうなんでしょう?アプレットは遊びで作ってましたが、サーブレットはコンパイル済みプログラムをシステムに反映するのにApache、tomcatを再起動なんて仕様がデバッグコストを上げる原因にもなるし、無停止サービスを目指すシステムから見れば「ナンセンス」なのでまずサービス稼動したままリロードできるようにしないと大変ですよね。

 

各言語のtrue/false

これは興味深いです。C言語は単純なので分かりやすいですが、PHPでは微妙に独自ルールがあるなぁ~と思っていたのでこういう表があるとわかりやすいですね。この結果から言えることは「真偽の判定式は面倒でも明示的にtrue/falseに収束するように書くように」ってところかな。今までもPHP等でif($obj)みたいなコードがバグの原因となっていたケースをよく発見していたので、変数が定義済かどうか真偽の二値に収束しているかしっかり書くように勧めたいと思います。

特にPHPは変数宣言を用意してない癖に値の型はC言語以上に細かいので条件に利用するときは面倒なこともあります。0(数値)とfalse(偽)とNULLとEMPTY(空文字列)とUndefined(未定義)のどれがやってくるかわからない場合の判別とか。

各言語におけるtrue/falseまとめ – 床のトルストイ、ゲイとするとのこと
http://d.hatena.ne.jp/mirakui/20090604/truefalse

QRコード生成スクリプト

PC用サイトから携帯サイトに誘導する手段として昔はメール送信が多かったのですが今ではGRコードで読み取ってもらってアクセスという方法も一般化してきました。そこで携帯トップだけではなく毎ページごとやキャンペーンサイトに誘導したいと思ったときQRコードが動的に生成できたらいいなっと探したらこんな記事がありました。

第3回 PHPでQRバーコードを作成する(その1):ITpro
http://itpro.nikkeibp.co.jp/article/COLUMN/20061110/253264/

簡単過ぎて鼻水でそうになったwこれはとても便利なので機会があるごとに使っていこうと思います。ちなみに動的生成でサーバー負荷が心配になる場合はコマンドで使用してファイル書き出しですね。

QRコード CGI & PHP scripts – QRcode generator for perl & php
http://www.swetake.com/qr/qr_cgi.html

swetake.com
http://www.swetake.com/

 

PHPで数式画像が作れるライブラリ

これは綺麗な数式ですね。学生なら使い道あるかな?論文はLaTeXでそれ以外ならWordの数式エディタで作っていましたがウェブ公開用というのは今までなかったかも。多分現状の数式が載っている学校系のサイトはWordの数式エディタで作った数式を画像として出力してアップロードしているのような気がします。使い方もLaTeXで数式書いていた人には難なく使えそうですね。(細かいところは忘れますたが同じような書き方だったような気がします)。これの一番嬉しいことは数式をソースコードで定義できるから左記のWordで画像作ってアップロードみたいな面倒がなくなる事ですね。

PHPで複雑な数学式の画像が作れる「PhpMathPublisher」:phpspot開発日誌
http://phpspot.org/blog/archives/2009/01/phpphpmathpubli.html

PhpMathPublisher
http://www.xm1math.net/phpmathpublisher/

C#ってシーシャープって読むんだぜ?

何を当たり前のことをと思われた方、何を今更と思われた方いらっしゃると思いますが、私は今頃になって「何でシーシャープって読むんだ?」と疑問になりググってみました。C/C++を使うのでC#を使うことは殆どないので今頃なのかも。

何を言ってるんだ?と思われた方はよくタイトルを見てください。C#ですC#。C♯じゃないんですよ。私も日本人だから「RとLの発音の区別できないくせに!」と提督に言われるのと同じように「#と♯の区別」が出来てなかったんです。

キーボードの「#」はシャープではない件について – ♪8th Note♪
http://blog.c-production.com/archives/2008/02/post-446.html

そこで、皆さんC#をシーシャープと読むから、その記号シャープじゃないってばーと思っているうちに、海外ではなんと読まれているのだろうと気になってしまった。

そしたら・・・。

C# – Wikipedia (日本語)
http://ja.wikipedia.org/wiki/C_Sharp

C# (programming language) – Wikipedia, the free encyclopedia
http://en.wikipedia.org/wiki/C_Sharp_(programming_language)

普通にシーシャープって読んでるぞ?
さらに調べると日本人なら疑問にすら思わない読み方も海外ではやはり疑問になるようです。

[NMLUG] Trivial persuits: how to pronounce C#?
http://nmlug.org/maillist/2000-October/msg00060.html

結局のところ正式な呼び名は何だ!とMicrosoftサイトを見てみました。

Visual C# (日本語)
http://msdn.microsoft.com/ja-jp/library/kx37x362.aspx
「C# (“C シャープ” と読みます) は~プログラミング言語です。」とあり、

Visual C# (英語)
http://msdn.microsoft.com/en-us/library/kx37x362.aspx
「C# (pronounced “C sharp”) is a programming language~」とあります。

MS自らC#と書きC sharpと呼べと書いているので、定義みたいなものですね。これは日本で言うと「ギャル文字」と呼ばれている本来の読みと違う読みをする記号みたいな状態かも。あースッキリ。