Kengo's blog

Technical articles about original projects, JVM, Static Analysis and TypeScript.

Entries from 2012-01-01 to 1 year

log: 2012/Jul/23~29

log

Interests Sugar.js It's interesting approach for me to enhance JavaScript coding. I want to try it later. Thoughts on ECMAScript 6 and new syntax | NCZOnline Wmm... I think it's not good change. In my opinion, JavaScript should become "ass…

SLF4JのポカミスをPMDで自動検出する

※本記事は昨日世に出た個人プロダクトruleset-for-SLF4Jの宣伝と解説です。 SLF4Jをお使いの方はで有用でコントロールしやすいログを出すための工夫の一貫として、Logger生成時に生成元クラスを渡しているはずです。 private final Logger logger = LoggerFa…

ruleset-for-SLF4J is now on Maven central!

I am excited to announce the ruleset-for-SLF4J is now on Maven central! Many thanks for sonatype!So, you can use it easily with Maven like: <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-pmd-plugin</artifactId> <version>2.7.1</version> <dependencies> <dependency> <groupId>jp.…</groupid></dependency></dependencies></plugin>

enchant.jsはモジュール化するといいと思う

enchant.jsをもっと簡単に使えるようにしようという話が大変興味深かったので、1ユーザとして思うところを。 なお私は業務ではenchant.jsを使わないし、プライベートでもここ数カ月ほぼ触っていないので、最近の変更はあまり追えていないかもしれないです。…

log: 2012/Jul/16~22

Interests A survey of client MVC frameworks I like spine.js because it's easy to read and enough to use, but I have no product which fits this framework. I think backbone.js is the best choice for PARTAKE. technical events in Shanghai Fina…

requirejs reading

I found that RequireJS has became one of my favorite library, so I need to know it deeply to make it my strong point. This article is log of code reading for 2.0.4. require.js it has many helper like bind(), mixin() and each(). IE6 support…

8月上旬に帰国します

往復航空券代で8万円弱なくなって驚愕しているeller86です。 ということで来月の上旬に帰国します。6(月)〜10(金)はわりとヒマなので、いつもどおり技術イベントなどに顔を出そうかと思っています。よろしくお願いします。

PARTAKE開発に復帰します

中国への引越しなどがあって疎遠になっていたPARTAKE開発ですが、このたびPARTAKEのGitHubへの引越しを機に復帰します。今後はマイルストーンに従いつつ、テストの充実とCIの導入、いろんな実験ができればいいなと持っています。今まで迷惑をかけてしまって…

memo: How to generate code automatically for Java project

There are many way to generate code automatically. I think that the most common way is Annotation Processing Tool and Pluggable Annotation Processing API, but always I use PMD or ASM because I'm familiar with these libraries. Annotation Pr…

How to improve interface for JavaScript

Do you still use argument to give information for other components? It's the most simple way, but sometimes it's too long to read. We can use other approach like named parameter, chain and deferred. Named parameter function foo(param) { al…

pull requests at the first half of 2012

12 pull requests were sent at the first half of 2012. Its number is little increased, but target product is limited. I'm wondering that my code reading is little slow. https://github.com/wise9/enchant.js/pull/44 https://github.com/wise9/en…

RequireJS 2.0による依存関係の明示、フォールバック、複数バージョンの混在

旧ブログのRequireJSネタがひそかにブクマされつづけているので需要があるかなと思い、最近調査したバージョン2.0の機能についてまとめます。元ネタはこちらです。 Upgrading to RequireJS 2.0 · jrburke/requirejs Wiki · GitHub 依存関係の明示 従来のバー…

備忘・チームについて

考えがまとまらないので文書化。こういうメモを母語以外で書くのはまだハードルが高い(´・ω・`) 生産性・工数といった曖昧な表現が含まれるのはご愛嬌ということで……。 チームを語る上での前提条件 要求は外部から、動機は内部から 仕事は外から降ってくるが…

Why I dislike dislike

I think all of us has a original world, and visiting other world is valuable and interesting. Dislike other person is same to stop visiting other world, so I think it isn't productive and constructive. Disliking other culture and genre is …

Combinators in Guava libraries

Do you want to use combinators in Java code? Guava libraries provide them for you. Iterators.filter(unfiltered, predicate); Iterators.transform(fromIterator, function); Maps.filterKeys(unfiltered, keyPredicate); Maps.filterValues(unfiltere…

Is Maven3 in attic?

I found a tiny problem of latest Maven3 last week. I issued at official Jira, but currently there is no discussions. And I found that no issues are closed in the last 30 days. Maven 2 & 3 - jira.codehaus.org It looks strange because I know…

jenkins-regression-report-plugin is released at Jenkins plugin manager

Today jenkins-regression-report-plugin is released at Jenkins plugin manager. Thanks for jenkins folks! Wiki page is here. I'll release 1.1 ASAP. Regression Report Plugin - Jenkins - Jenkins Wiki

I've got Kindle touch

I bought Kindle touch at taobao, Chinese EC site. It's very useful for me to read books.I think that the Ebook is good way to get book about technology in China. My recommendation is Coffee Script book and G1GC book etc. The Pragmatic Book…

Maven tips in my repository

Currently my GitHub has 22 repositories. I think reading all of them is little hard. So I've picked up some tips from them, they'll be helpful for you. rejecting old maven To force user to use new Maven, you can use prerequisites property. <prerequisites></prerequisites>…

jenkins-regression-report-plugin released

Today I released jenkins-regression-report-plugin at GitHub. It helps you to import CI into running project. GitHubでjenkins-regression-report-pluginをリリースしました。主に既存プロジェクトにCIを導入するケースを想定したものです。 eller86/j…

我流・Jenkins実践 概論

日本の知人からJenkinsの使い方について相談したいというありがたいお話を頂いたので、具体的な話をはじめる前に自分が考えている総論についてまとめておきます。 なお私のJenkins歴は長くないですしコミュニティに対する貢献も残念ながら皆無です。ガキ大将…

ObjectWeb ASM 3.3 Tips

# This article is translated from my old blog.Coding with ASM is little difficult for me, because I cannot find tips at the internet especially Japanese one. This article is memo for me. It was written for ASM 3.3, and it may work well for…

jsr305-maven-plugin 1.1 released

Today I've released new version for jsr305-maven-plugin. eller86/jsr305-maven-plugin · GitHub This plugin injects precondition check into class file. It means that you don't have to code boring check logics like if (argument == null) {...}…

Creating tree walker for accessing parsed words

In the last article I generated a simple parser, but I cannot access parsed words. It means that I cannot know 'what is provided as S'. It's very big defect so I had to try to solve this problem. To access parsed words, dyn.js uses 'tree w…

How to generate simple parser with ANTLR3

I've found that dynjs depends on ANTLR3. I have to learn ANTLR3 to read dynjs, so I'm trying to use it with Maven3. pom.xml To use ANTLR3, we have to write 1 dependency and 1 plugin in pom.xml. Sample is here. <dependencies> <dependency> <groupId>org.antlr</groupId> <artifactId>antlr-runtime</artifactid></dependency></dependencies>

ソーシャルゲームもいいけどカタンも面白いですよ

【漫画つき】コンプガチャだけじゃない。ケータイSNSゲーム課金の仕組み解説 - しっぽのブログ このへん読んでいて思ったんですが、もしこういう「アイテムを取られるかもしれない」「もうちょっとで揃うのに急に出なくなった」という焦りや「他人のアイテム…

Simple timer for LT

I've released a simple timer for lightning talk. This tool creates small window at front of your screen. So it's useful to measure left time for talking. ライトニングトーク用のタイマーをリリースしました。残り時間を画面の手前側に表示するた…

新たに技術者となった知人におくるはなむけの言葉

やあ (´・ω・`) めんどくさがらずにメールのリンクを開いてくれてありがとう。今月から技術者として働き始めたそうだが、経過はどうだろうか。貴方が私と同じ職種になると聞いた時には驚いたものだが、こうして実際なってみると意外と違和感ないものだね。…

おすすめ本があったら教えてください

4月24日〜29日まで日本に出張する予定です。このタイミングで本を数冊調達しようと思っていますので、最近のおすすめがありましたら教えてください。ジャンルは問いませんが、最近は以下について関心を持っています。関数型言語については静観姿勢です。 チ…

Java SE Specifications for Java7

Today I found documents about Java SE Specifications for Java7. The Java™ Language Specification The Java™ Virtual Machine Specification I'm ashamed to say that I don't have read specs about dynamic invoke, try-with-resources and other fea…