ごく普通の会社で社内勉強会・社内研修みたいのを散々やってきたけど、あまり成果が出てこなかった話でもひとつ。

社内勉強会ネタがなんか盛り上がってますね。2004年ぐらいから散々やってきましたが、大きな成果を得られていないみたいな話でも書いとこうかと思います。 認識してる元ネタ 社内勉強会をやらない理由 - 勘と経験と読経 社内内弁慶を社外勉強会に参加させる…

【訂正エントリ】jsdoc3の使い方が間違ってると指摘を受けたので再評価した

以前、JavaScriptのAPIドキュメント生成ツールを調べてみたら、YUIDocが割とよかった - DenkiYagiというエントリで「jsdocゴミっぽい」と書いたのだが、「それアノテーションの使い方が間違ってる」とツッコミが入ったので、再評価してみた。 インストール j…

F# の非同期ワークフローがよくわかってない

F#

F# 3.0で以下のコードが期待通りに動かない理由がよくわかってない。Ctrl+Cを押してもプログラムが終了してくれない。Wait()したままになる。 open System [<EntryPoint>] let main argv = Async.StartAsTask(Async.AwaitEvent(Console.CancelKeyPress)).Wait() printfn </entrypoint>…

QyotoではQMLは使えないっぽい

QyotoにQMLをホストするためのQDeclarativeViewが存在しないのでどうしようもない。PySideやPyQtにはあるのになぁ。QyotoがQt5に対応した時にサポートしてくれるのを期待するしかないですね。

ローカルマシンのIPAddressを取得するのに Dns.GetHostEntry(Dns.GetHostName()) とか使えない

.NETでSocketをたたくコードをMSDNのサンプルをもとに書いてたのだけど、Socket#Bind()でエラーが出て少しハマった。よく考えればわかることなんだけど、Dns.GetHostEntry(Dns.GetHostName())だと、ipv6アドレスやHyper-Vの仮想NICとかのインターフェースも…

T4 Templateで.uiファイルをコンパイルするツール作った

このツールと同じディレクトリに存在するuiファイルすべてをコンパイルするだけのツールです。ソリューションファイル追加していない(Visual Studio上に表示されていない).uiファイルもコンパイル対象になります。ライセンスは一応MITライセンスにしてあり…

.uiファイルをC#のソースコードにコンパイルしてみる

QtにはQUiLoaderを使って動的に.uiファイルを読み込む他に、.uiファイルをコンパイルしてソースコードを生成する仕組み(uic)があるようだ。で、Qyotoにもないかと調べたら、uics.exeという怪しげなexeがあったので試してみたら動いた。ちなみにcsrcc.exeと…

.uiファイルから画面を表示してみる

Qt libraries 4.8.4 for WindowsをインストールしたらDesignerが同梱されていた*1。折角なのでQyotoからDesignerで作成した画面定義ファイル(.ui)からWindowが表示できないか試してみた。結果、以下のようなコードで表示できた。QUiLoaderを使ってるだけで…

QyotoでWindowを表示してみる

ここ数日、気まぐれでQyotoというQtの.NETバインディングを試している。とりあえず空のWindowを表示するまでで苦労したので、メモっておく。 インストールするもの Qt libraries 4.8.4 for Windows (minGW 4.4) Qyoto 4.0.6が依存しているのがMinGW版のQt4.8…

SilverlightでWebSocketのメモ

ちょっと調べたので備忘録。OutOfBrowser + WebSocket4Net で一応使えるのだけど、SilverlightにはSslStreamが存在しないので、SSL/wssでは通信できない。微妙。

Ext JS 4.1.xでComponentのルート要素をカスタマイズしたい

configのautoElを設定するだけでOK。てかアンドキュメントな事が多すぎるから、もっとマニュアルどうにかしてほしい。 new Ext.Component({ autoEl: { tag: "div", //spanとかにもできる tabindex: 1, onfocus: "console.log('focus')", "x-data-hoge": "hog…

keydownイベントでpreventDefault()した際のkeypressイベントの扱いがブラウザによって異なる

こんな感じのコードで検証。 window.onload = function () { var body = document.body; body.onkeydown = function (e) { if (window.event) { window.event.returnValue = false; } else { e.preventDefault(); } console.log('keydown'); } body.onkeyup …

IKVM.Reflectionを使って動的にMSIL/アセンブリを生成してみる

LL/MLほにゃららシリーズではMSILしか弄ってない者です、こんにちわ。最近仕事が忙しいので、軽めのネタとしてIKVM.Reflectionを利用して動的にMSIL/アセンブリを生成してみる例を紹介しておきます。 IKVM.Reflectionとは まず、IKVMとは、.NETとJavaを相互…

大なごやJS Vol.4 でHaxe/JavaScriptの発表してきました。

大規模なギョームシステムにHaxeを採用してみた話 from terurou NGK2012Bの準備やら仕事やらが忙しくて、当日になってから3時間ほどで一気に書き上げたのでクオリティが低い…。機会があればHaxeを使うと何が良いのかを改めて話したいですね。

Haxe使いから見たTypeScript雑感

TypeScript良いですね。世間の流れは完全に動的型付け言語から静的型付け言語+型推論に移ってきていますが、JavaScriptの上にうまくそれを導入してきた感じです。ヘルスバーグはやっぱすごいよね、と。今後実装される予定のジェネリクスが載ってきたら、bet…

SassでWindows-31J character "\xE3"とかエラーが出る件の対応

文字コードを未指定だと強制的にWindows-31Jとして扱われるらしいので、明示する。 /* sass */ @charset "UTF-8"

Ext.JSでButtonにtooltip設定したのに表示されない

Ext.tip.QuickTipManager.init();をコールしておかないとダメらしい。詳しくは Adding tooltips to an Ext.Button component using Ext JS | Sencha Examples 参照。

Ext.form.field.Numberの右端のクリックするところ(Spinner)を消す方法

hideTriggerをtrueにする。spinUpEnabled/spinDownEnabledをfalseにしても、表示が消えないどころかデフォルトのイベントすら殺せない。

WinRTでCoreDispacherを取得する

var dispatcher = Windows.UI.Core.CoreWindow.GetForCurrentThread().Dispatcher; UIスレッドでしか取得できないので注意。あと、Windows.UI.Xaml.Window.Current.Dispatcherでも取得できるけど、名前空間的に若干いやらしい感じがする。

Haxe/JavaScriptチュートリアル公開しました

現時点ではまだ書きかけですが。 Haxe/JavaScriptチュートリアル — Haxe/JavaScript tutorial 0.1 documentation

Windows 8 Enterpriseで0x8007007Bというプロダクトキーが通ってないぞエラーが出てアクティベーションできないケースの対策

Windows7だとコンピューターのプロパティからプロダクトキーを変更できたんですが、Windows 8からは設定できなくなったようで。管理者権限で以下のコマンドを入力すると、アクティベーションできる。やってることは、プロダクトキーを変更して、アクティベー…

Azure Storageで静的ページをホスティングしようと思ったけど、断念した件

Azure Blob ストレージを簡易 Web サイトとして利用する その2 (CloudBerry 編) « S/N Ratio (by SATO Naoki) を見ながら、Azureで静的ページをホスティングしてみようと思ったのだけど、断念。S3とかの対抗サービスと比較して、Index Documentが設定できな…

FlashDevelopで { を改行させないようにする

FlashDevelopのデフォルト設定だと、以下のようにC#っぽく { で改行してしまう。元々FlashDevelopがMonoDevelopからフォークしたものなので、仕方ないかなぁとも思いつつも、あまりHaxeっぽくない気がするので設定変更する。 class Foo { public static func…

大なごやJS #3で「大規模なJavaScript開発」という話をしてきた

スライドはこちら。 大規模なJavaScript開発の話ごくごく当たり前のことを小難しく書いただけな感じです。

JavaScriptのAPIドキュメント生成ツールを調べてみたら、YUIDocが割とよかった

JavaScriptのAPIドキュメント生成ツール(いわゆるjavadocみたいなもの)を使いたくなったので、色々調べてみた。 jsdoc3 使い方が間違ってると指摘されたので、訂正エントリ書きました → 【訂正エントリ】jsdoc3の使い方が間違ってると指摘を受けたので再評…

Windows 8 Release PreviewでまともにWebブラウジングしたりニコニコ動画を視聴できない件

なんか8月1週目にWindows 8 RTMが出るらしいですね。RTMになって解決しているといいんですが、Release PreviewでまともにWebブラウジングしたりニコニコ動画を視聴できない現象が発生してます。 環境について Windows 8 Relese Preview x64 VAIO Z21 Windows…

haXe + FlashDevelop on Windows 8でJavaScript開発メモ

Haxe/JavaScriptチュートリアル — Haxe/JavaScript tutorial 0.1 documentationに書き直したコンテンツを公開しました。Windows 8 RPでhaXe開発環境を構築したメモ。ここではWindows 8を使ってるけど、Vista以降のWindowsなら多分同じだと思う。 この記事の…

名古屋イベント、開催断念しました

今年の夏にやろうかと思っていた名古屋イベントですが、開催を断念しました。 理由としては大まかに2つあるのですが、 いろいろ忙しい 仕事が9月頃まで忙しくなる可能性が高そうで、旗振り役なんかしてられんのかな、という懸念があります。 また、昨年の5月…

WindowsでhaXe開発環境をいくつか試してみた

世間というか他の名古屋勢と比べると何周遅れなのかわからんですが、haXeを実プロジェクトに投入しようという気が起きてきたので、ちょくちょくhaXeを触り始めてます。ということで、いくつかIDEを触ってみました。 仕事で使うことを想定してるので、Windows…

Metro Style AppsでMSIL(Win8RP対応版)

Metro Style AppsでMSIL ver.2012/06/09 EXEを生成する部分のコード抜粋 var exeName = "text.exe"; //----------------------------------------------------------------- // アセンブリ保存先を選択 var picker = new FileSavePicker(); picker.Suggested…