Charles v3.9 released

Charles v3.9 has been released today, it includes a number of new features and bug fixes. You can read the release notes, and I’ll talk about a few of my favourite changes here.

For a long time I’ve wondered how to improve the signal to noise ratio in Charles: you’re generally interested in a couple of hosts, but your browser (and system) connects to lots of them. Overtime the signal to noise ratio has become worse and worse. I should note at this point that you should add things like Dropbox and iCloud to the ignore list in Recording Settings because they’re always popping in when they’re not welcome, but generally I wanted to have a way to tell Charles the hosts I’m interested in, but without hiding the others – sometimes part of the issue you’re trying to debug is that an unexpected new host is involved, I don’t want to hide that or fail to capture it…

We’ve solved this in Charles v3.9 with two new features. The first is Focus. You can right-click on any host in the Structure view and choose to focus it. This will keep that host on the top level of the tree, and tuck all the other hosts into a folder. You can focus multiple hosts – just open the folder and choose as many hosts to focus as you’d like. You can see a list of all focussed hosts in the Focussed Hosts option from the View menu. There, you can add and remove hosts, including wildcards using the familiar Charles format, so you can easily focus all of the subdomains for your project.

Combined with focussing is highlighting. Charles now highlights hosts (or path folders) where a new request has been added. This helps you see where things are being recorded. This can get a little noisy, but it helps to identify where requests are going. If the highlighting drives you crazy you can always turn it off in the Preferences.

I’ve found these two new features a pretty significant improvement to the way I use Charles. I hope you do too!

Another thing that people want to do with Charles is to share traces. Charles supports a few different export formats, but often the easiest way to share is to show someone what you can see. So we’ve added a Publish Gist option. You can publish Gists anonymously, or to your GitHub account; we recommend the later, as anonymous Gists can’t be deleted. You can publish one or more requests & responses to the same Gist. We think it’s going to be a pretty useful feature!

Finally, there have been a few improvements on the Mac. We’ve got more retina icons, and fullscreen support. I’m sorry I haven’t got the app completely retina, that’s a work in progress. The Apple Java version is still our preferred version on the Mac; we’ve found OpenJDK to be not quite as stable, but I’m keeping a close eye on it. If you have problems with SSL, such as TLS issues or SNI, then please switch to the OpenJDK version. We’ll get there!

There are a bunch of other changes too. I’m really excited about this update to Charles. We’re continuing to work on improving the app and adding new features. Congratulations to the team on 3.9 and stay tuned!

Download Charles v3.9

This was posted 5 months ago. It has 1 note.
This is Stuff: Running JNDI and JPA Without J2EE Container

I often want to have myself a standalone JNDI context.

This was posted 8 months ago. It has 0 notes.


Run ssh-agent when you login, and kill it when you logout. Put the following into your ~/.bash_profile:

eval `/usr/bin/ssh-agent -s`
trap "kill $SSH_AGENT_PID" 0
This was posted 8 months ago. It has 0 notes.
Security/Server Side TLS - MozillaWiki

via @nzkoz

This was posted 9 months ago. It has 1 note.

PostgreSQL streaming replication status

There is a handy view which shows the state of streaming replication:


You can add an “application_name” parameter in your database connection string to identify your application. This is also the name that PostgreSQL uses for “synchronous_standby_names”.

Note that you can set “synchronous_standby_names” to “*” to let PostgreSQL choose any slave to be the synchronous one.

This was posted 9 months ago. It has 0 notes.

Pretty print JSON from the command-line

This simple Python tool will pretty print the JSON it receives on stdin.

python -mjson.tool
This was posted 9 months ago. It has 0 notes.

Uses native OS file change notifications so you don’t need to refresh projects in Eclipse anymore.

This was posted 9 months ago. It has 0 notes.
Linux Commando: Log watching using tail or less

You can start less in tailing mode:

less +F <file>

This was posted 9 months ago. It has 0 notes.
PostgreSQL: Tuning shared_buffers and wal_buffers
This was posted 10 months ago. It has 0 notes.
New kernels for Ubuntu 12.04 LTS

This is quite fun. You aren’t stuck with the kernel that the LTS build came with; these are official new kernels.

This was posted 10 months ago. It has 1 note.