Ben McCann

Co-founder at Connectifier.
ex-Googler. CMU alum.

AngelList Twitter LinkedIn Google+


How to take over the computer of a Jenkins user


I recently began using Jenkins and found quite a bit of security indifference. This is unfortunate because Jenkins is the world’s leading continuous integration server used for testing, building, and deploying code. According to RebelLabs, Jenkins has 70% market share, with the next closest competitor having only 9%. I’ve raised these issues with the Jenkins Read More

Shared GMail account with SAML


SAML is a protocol which securely provides an identity. Using an identity provider which supports SAML, you can setup Single Sign On. However, if you have multiple people sharing a GMail account, things get a little tricky. Here’s how you can set that up for Okta, which is one such identity provider. General: Post Back Read More

OpenSAML: Single Sign On using SAML 2.0


Lately I’ve been playing around with Single Sign On (SSO) using the SAML 2.0 protocol. OneLogin, an online Identity Provider, has a sample project which is a great way to see how SAML works. There’s also an OpenSAML library which is quite helpful in forming SAML requests and handling SAML responses. Here’s an example of Read More

Sound Insulation for Noisy Offices


I’m a founder at Connectifier, a fast growing tech startup in Newport Beach, CA. We have a great office with many amenities to make it more comfortable such as a kitchen, ping pong table, and sofas. We also have an open floor plan, which is great for keeping everyone in the loop, but less awesome Read More

Debugging tools for java.lang.OutOfMemoryError: Java heap space


If you have a Java app that’s crashing due to out-of-memory errors then you can create a heap dump by utilizing the following flags: -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp/mydump.hprof To read the head dump, you’ll need to: Install eclipse memory analyzer Open eclipse with lots of memory: eclipse -vmargs -Xmx6G Open memory analysis perspective: Window > Open Perspective Read More

TodoMVC: An Angular vs React Comparison


Two of the more talked about frameworks today are Google’s AngularJS and Facebook/Instagram’s React, but there are limited comparisons between them. TodoMVC is a project which aims to provide a comparison of JavaScript frameworks by implementing a todo list in the most popular frameworks. I have a little experience with Angular and none with React. Read More

Automated Play Framework Testing with Jenkins


Jenkins automates builds and tests. This post describes setting up Jenkins for the Play 2 Framework. First off, you need a machine with a good amount of resources. I tried first on a small cloud machine with 2GB of RAM and it was not sufficient, so get a machine with 4GB of RAM. Next you Read More

Running ElasticSearch in Production


ElasticSearch is a very awesome tool with very awful documentation. One thing you’ll need to be sure to do is update the ES_HEAP_SIZE in your /etc/init.d/elasticsearch to use half your system’s memory in production. The default will give you awful performance. TOTAL_MEM_K=`grep MemTotal /proc/meminfo | awk ‘{print $2}’ ` HALF_MEM_K=$((TOTAL_MEM_K / 2)) ES_HEAP_SIZE=”${HALF_MEM_K}k”

tmux tutorial


tmux is a cool tool that allows you to have multiple screens within a single terminal and to have persistent SSH sessions. The documentation and most tutorials are horribly complex, but it’s actually not that hard to use the basic functionality. Start a new session with: tmux new Detach your session with: tmux detach Reattach Read More

Setting up NX


I wanted a remote graphical environment on a machine in the cloud. It’s very easy to download No Machine’s NX and install it. You’ll also have to run sudo apt-get install ubuntu-desktop unity-2d gdm if you’re on a server, since the server install doesn’t come with a graphical environment by default. NX 4 Note that Read More

Older Posts