カテゴリー別アーカイブ: opensource

オープンソース開発者になるには

Gate To Beach

オープンソース開発者というと、オープンソースソフトウェアを使って開発をする人と思ってしまうけど、ここでは、オープンソース開発プロジェクトに参加して貢献する人という意味。

クリアコードの須藤さんが中心になって、そんなオープンソース開発者を増やそうという「OSS Gate」というイベントを始めています。「紹介記事を書きなさい」と、心の奥底からメッセージが届いたので、こんな記事を書きました。

タイミングが良かったので、ThinkITにも転載して頂きました。ありがとう。

ご興味のある人は、まずはレポートを読んでみてください。結構簡単に、オープンソース開発プロジェクトに参加できるということが分かると思います。


2000年代のデスクトップOSS状況と、二宮町の海老原さん

my town

(書きかけの文章ですが、書きあげる時間が取れそうもないので、そのまま載せています)

私の記憶が確かなら・・・。

90年代後半、インターネットブームを支えるインフラとして、オープンソースソフトウェア(OSS)が広く活用され始めていました。LinuxにApache、SendmailといったOSSがその代表格でした。一方、デスクトップ分野で最も普及していたのは、マイクロソフト製品。OSならWindows、統合オフィスソフトならOffice、WebブラウザならInternet Explorerでした。インターネットを利用したりパソコンを利用したりする時、多くの人がこれらのマイクロソフト製品を使っていましたが、特定のベンダーに囲い込まれる弊害も目立ってきました。

2002年頃から、その状況が変わる可能性がでてきました。デスクトップ分野でもOSSが利用しやすくなってきたのです。

続きを読む


Firefoxの方向転換

野毛山動物園のレッサーパンダのキンタちゃん♀ (This Red Panda Name is Kinta. She is Female Red Panda of Nogeyama Zoo.)

うーむ。

12月に、FirefoxOSスマホの開発中止のアナウンスが出たときは、スマートフォンは撤退したら、Android版やiOS版Firefoxに軸足を移して、他のスマートフォンのUX改善というニッチを狙ったり、スマートフォン版はキャリアやオペレータが参加するコミュニティに任せたりするのかと思ったけれど。

Mozilla自体は、もっと徹底して方向転換するのね。Mozilla Marketplaceのサポートも終了するとは。

その代わり、こちらに注力する。

特に面白いと思ったのは、「コネクテッドデバイスに向けての次の一歩」に書いてあるコレ。

私たちは Mozilla の新しい IoT 製品プログラムを選別する製品イノベーションプロセスを進めています。このプロセスでは、早期段階のアイデアを技術系スタートアップのように扱います。プロジェクトの開発サイクルは解決すべき課題を確認する「検証」、市場の適合性を確認する「製品化」、そして「拡大」に分けられています。各プロジェクトに取り組むチームは消費者への明確な価値提案を示すことをあらゆる点で求められますが、特に「ゲート」を越え開発サイクルを次に進めるためには明確な価値提案が要求されます。

技術系スタートアップは、いきなり製品化するのではなく、技術的な課題を解決できるか「検証」して、それが利用者に受け入れられるか「製品化」してチェックして、それから市場拡大を狙うと。

パナソニックのスマートTVといっしょに検証フェーズを通過しているというVaaniは、デモ動画が公開されていますね。デモ動画の最後には「Speech IoT UI」と書いてある。

FirefoxOS Virtual Assistantという奴ですかね。以前にも、プライバシーを優先した音声認識という話がありましたけど、そんな感じでしょうか。

あとCHIRIMENとかも、このプロセスに乗るのが楽しみです。


エンジニアにとっての社会貢献を考える – ボランティア篇

Lego: The Engineer

paiza開発者ブログで「ITエンジニアが「社会貢献」できる働き方はどうすれば見つかるのか」という記事を書きましたが、ちょっと書き足らなかったので、こちらで番外編をお届けします。

社会貢献というと、災害時に被災地援助に関わるといった、無償の奉仕活動を思い浮かべる人もいると思います。じつは本来、英語のVolunteerという言葉は、無償奉仕ではなく、「自発的に申し出る」「進んで事に当たる」という意味があります(参考 – Wikipedia)。たとえば、義勇軍や志願兵は、Volunteerと呼ばれます。海外で飛行機に乗ったとき、航空会社がキャンセルを見越して定員より大目に予約を受け付けて、座席が足りなくなることがありますが、こういう時に「座席を譲っていただけるボランティアを募集します」なんてアナウンスが入ることもあります。
こうなると、よく耳にする無料奉仕のボランティアとは、かなり趣が違ってきますよね。

あちらでも書きましたが、転職や就活の際に「社会貢献度の高い仕事をしたい」と語るエンジニアが増えているんだそうです。もちろん、そのためには、自分の貢献できる能力と会社や組織についての理解を深める必要があるのですが、一方でエンジニアが社会貢献する方法は業務だけではありません。

続きを読む


p5.jsでプログラミングのハードルを下げるイロイロ

happy e-thanksgiving

これは、Processing Advent Calendar 2015の12日目の参加記事です。

さて、ごく普通の人が、プログラミングで身近な問題を解決できるようになればいいな、と個人的に思っていまして、そのために注目しているツールのひとつがProcessingです。

Processingは、電子アートとビジュアルデザインを主なターゲットとしたプログラミング言語+プログラミング環境です。キャセイ・レアスとベンジャミン・フラによって開発されました。デザイナやアーティストがデジタルなインタラクティブ作品などを作るときや、非エンジニアのプログラミング学習などに利用されています(Processing – Wikipedia)。

今回とりあげるp5.jsは、このProcessingのJavascript実装です。Webブラウザで、Processingの機能をJavascriptと連動させながら、Webブラウザで実現するのに最適なツールとなっています。

このp5.jsなら、ごく普通の人にとってプログラミング入門のとっかかりに良いんじゃないか思いまして、この1年くらい、いくつか簡単なツールを作ってみたのでご紹介します。どれもオープンソースですので、自由に使ってください。
続きを読む


FirefoxOSスマホの開発中止報道について、2・3の思うこと

fx_000

いや、いくら何でも「FirefoxOS開発打ち切り」は言い過ぎだと思うヨ。真相は、FirefoxOSスマートフォンを製品ごとに開発してきたという体制を変更する、ということだと私は思う。

追記:こんなのも出てました。

12月09日朝、たまたまTwitter経由で、TechCrunch(英語)の「Mozilla Will Stop Developing And Selling Firefox OS Smartphones」という記事を知りまして。タイトルをみて、たまげた訳です。

日本でも大量に朝から、こんなニュースが次々と上がってくるではありませんか。

実は、12月というのは、日本のITエンジニア界隈では日替わりで技術解説コラムを投稿していくITアドベントカレンダーというイベントがありまして、今年は、FirefoxOSのアドベントカレンダーに参加していて、ちょうど12月10日に自分の担当がやってきました。

そこで今回は、FirefoxOS 2015アドベントカレンダーの参加記事として、このFirefox OSスマートフォンの開発打ち切りというニュースの真相と影響について分析してみたいと思います。

続きを読む


Processingでタートル言語を作ってみた

screenshot_s

Scratchみたいなツールから、ビスケット塾みたいな勉強会まで、子供向けのプログラミング教育が、一種のブームになっていますが、その源流にあるのが、シーモア・パパートLOGOだったりします。

LOGOで特徴てきなのが、タートルグラフィックスと呼ばれる機能ですね。亀ロボットを操作することで、子供でも手軽にコンピュータでグラフィックを描いてみることができます。Scratchにも、同じような機能が搭載されています。

そんなタートルグラフィックスを実現するタートル言語「p5_turtle.js」を、Processingで作ってみました。ProcessingのJavascript実装である、p5.jsで作ってあるので、ブラウザだけでそのまま動作します。

これまでもProcessingに、タートル言語ライブラリはあったのですが、ライセンスが厳しかったりして、個人的にはイマイチ使いづらいと感じていました。そこで、そのあたりをゆるくして。さらに、がんばって、カメが絵を描く軌跡をアニメーションで表示する機能も盛り込みました。

ただし、まだエディタ機能を持たせていないので、jsファイルを直接編集する必要がありますし、コマンドもまだ4つくらいしかありません。

とはいえ、p5.jsとスプライトなどをサポートするp5.play.jsライブラリのおかげで、わりと簡単に機能拡張できそうなので、もう少し遊べるオモチャにしてみたいと思います。


CoffeeScriptをブロック型エディタで学習できる「Pencil Code」

pencil-code.net

Pencil Code」(ペンシルコード)は、ScratchやBlocklyのようなブロック型エディタを使って、プロフェッショナル向けの本格的なプログラミング言語を学習できるサイトです。ブラウザだけで、ブロック型エディタとテキストエディタを交互に切り換えて、気軽にプログラミングを体験したり、結果を共有することができます。

Pencil Codeは、GoogleのパートタイムプログラマーであるDavid Bauと、その息子のAnthony Bau、Code.orgのスタッフらによって提供されています。
かなり完成度が高いです。
また、サイトのリソースは、ほとんど全てがオープンソースで公開されているようです。
今回は、このPencil Codeについて簡単に紹介します。
続きを読む