KISS

Be Among the 20% of the Best!

Sync Time in VirtualBox OS X Guest

| comments

Virtualization is great! It allows me to mess up with my Jenkins setup trying to figure out how to configure iOS jobs with tests (jumping through a number of hoops on the way, hi Apple!). One point though is that the guest OS X in VirtualBox has terribly slow graphics, and also freezes after some time. Only restart helps. Hopefully, I usually need ssh and jenkins web interface only. Read about how to set that up here: Jenkins in OSX guest in VirtualBox for iOS jobs – full setup guide.

Anyway, due to missing VBox additions on OSX guest, time doesn’t update when the machine is suspended and then resumed. Plus, there is a constant time drift. Explanations here: https://forums.virtualbox.org/viewtopic.php?f=22&t=48233.

Jenkins in OSX Guest in VirtualBox for iOS Jobs – Full Setup Guide

| comments

Hello there!

In this post, I will describe how to setup a sandboxed Jenkins server in a virtual machine where you can play and try your iOS (and not only) jobs. I’m using the latest OS X Yosemite 10.10.2 for the host and the guest on a MacBook Pro. Nota Bene: according to the Apple’s EULA for OS X, you are allowed to run the OS on the Apple hardware only.

This how-to assumes you know what a command-line is, how to run commands, and related stuff.

Source Code License Check in Jenkins Job

| comments

When you’re working on an open source project, it’s pretty important for your project to be licensed under an open-source license. I know, picking one is not easy, so here are a couple of sites to help: http://choosealicense.com and https://tldrlegal.com/licenses/tags/Open%20Source.

So, you’ve picked a license, now you need to make sure every source file includes a mention of it. (I don’t know if that’s strictly necessary, but it is highly recommended). You can setup your editor/IDE to include it in a file template, and Jenkins is going to verify every single file has it. Following is my way to set it up (for Objective-C iOS projects, and you can easily tweak it to other languages).

iOS: Testing No Space Left Situation

| comments

How do you test that your app handles “no space left on device” errors properly? There is a (boring) way to stuff up your device until it’s full and test that way. It’s not the most convenient way though, especially if you want to test faster on the iOS Simulator. Here’s my solution: mount a small RAM disk for the Applications directory in the simulator.

Xcode and AppleScript

| comments

A few pieces of AppleScript automating project’s destination selection in Xcode. AFAIK, unfortunately there is no other way of controlling Xcode from outside, so we have to depend on the actual menu items of the interface.

Sending HTTP POST Request With Netcat

| comments

I have a D-Link Wi-Fi router that sometimes loses the PPPoE connection and thus requires reconnect. The standard way is to go to the web interface, login, and press the button. But it’s a long way, especially on an android device. Wouldn’t it be much nicer and faster to simply run a script?

Neurobics

| comments

I’ve recently discovered a new term: neurobics. Which is formed from of neurone (the basic cell in a human’s mind) and aerobics (physical exercises), and suggests mental exercises to keep your brain thinking and processing new information. This will keep it healthy in the long run.

Hiding CVV Code on a Bank Card

| comments

I bet you have a plastic card or two from a bank. I mean, debit or credit cards like Visa or MasterCard. The vast majority of them (maybe, all?) have this CVV (aka CVC) code on the back side:

(Source: https://en.wikipedia.org/wiki/Card_security_code)

It’s very important for internet payments. Knowing it proves you’re the owner of the card (in theory). In practice, you need to remember or store it in a secure place, and then conceal it from the card.

One way is to scratch it away. But here is a less damaging way that works pretty well from my experience: first, apply some white correction fluid; then, sketch it with a black permanent marker.

Whichever way you choose, make sure other people can’t detect it, at least with a quick look.