Support API freedom

I was reading this article from Steve and Sacha about the API copyrightability, and found myself in a violent agreement. If you haven’t read it, I highly recommend it. For those of you who haven’t been following the tech news, the issue at hand is Android — Google neatly side-stepped Java’s compatibility requirements by introducing…

Jenkins commit activities in 2012

Stephen is having fun with Git and R, and I saw another person creating a similar comparison (although I’m not sure where the credit should go on that one.) Both charts are great, but I also noticed that their Y-axis aren’t consistent. So if people aren’t careful they might not see Jenkins as favorably as…

JavaFX needs to be a new edition of Java

Lately, there has been a number of security vulnerabilities reported in Java. The latest one is reported just after a few days of JavaSE 7u11, which by itself a response to another vulnerability. It’s so bad to the point that people are being asked to uninstall Java (yes, just in the browser, but let’s face…

On the road for the rest of the month

I’m really excited to kick off my 2013 with a tour around the world for Jenkins. The first stop will be in Tel Aviv, where I’ll be doing training with AlphaCSP. This has sold out, but AlphaCSP will be delivering this training again in the future. I’ll then head to London for the Jenkins User…

The other side of forking and pull requests

Charles Nutter of JRuby fame had this tweet yesterday: The “open commit” policy is a relic of a time before @github brought us forking and pull requests. Want to commit? Send me a PR. — Charles Nutter (@headius) January 4, 2013 And this touches on something I’ve been thinking for a long time. My experience…

POTD: StopForumSpam API for Java

There’s an on-going spam problem in Jenkins wiki. We have capture, but either that was broken, or more likely, spamming is done manually. One of the suggestions was to integrate StopForumSpam service. To that end, I wrote a simple Java client library for their API. The usage would be something like this: for (Answer a…

In São Paulo from this weekend

I’ll be flying to Sao Paulo this week to attend Jenkins meet-up (Saturday) and JavaOne Latin America (next Tuesday and onward). The last time I visited Brazil was a few years ago, but thanks to Mauricio Leal, whom I tagged around with for a JUG tour around Brazil, it was really a blast. This time…

POTD: submit a patch to Jenkins, and let him test it for you

Here’s my 2nd after-JavaOne “project of the day” Jenkins plugin. This has been in the back of my mind for quite some time, but it took this gentleman to grill me on this feature during JavaOne for me to finally put it together — so thank YOU for doing that. although I didn’t catch your…

POTD: iOS device connector plugin (cont’d)

Today, I wrapped up the project I started Friday and released iOS device connector plugin. In addition to listing all iOS devices, this plugin lets you deploy IPA files from anywhere (in Jenkins build via a build step or outside via CLI) to any of the connected iOS devices. There are still some loose-ends that…

POTD: iOS device detection in Jenkins

I was talking to my colleague Mark Prichard about mobile development with Jenkins, and I came up with this idea. If you are doing iOS app testing with real devices, you need to tether the device with a computer so that you can push the app-to-be-tested to the device. In a local development environment, you’d…

Internet Explorer only takes string in HTML5 postMessage

Today I learned the hard way that our beloved Internet Explorer doesn’t handle HTML5 cross-domain messaging functionality (AKA postMessage) correctly. I have done a reasonable amount of research before I invested a significant time into this, and so I knew it doesn’t postMessage across tabs and windows beforehand. This limitation was not a problem for…

Jenkins Git Server Plugin

Jenkins Git Server plugin is a so-called “library plugin”, which doesn’t offer any user-visible feature by itself, but instead enables other plugins to do something easily inside Jenkins. In case of Git server plugin, it allows other plugins to easily embed Git server functionality (via JGit) — create/manipulate Git repositories in the Jenkins server, expose…