This Week in Dev

Java, HackerRank and PowerMock

Venture Prize Pitch Night at Brown was really fun. The $25,000 first place prize was awarded to Formally - a tech company that aims to streamline visa and asylum applications, which might save law firms thousands of man hours per year!

Here I am with some of my classmates, posing for a photo with Virgin Pulse CMO Rajiv Kumar, who is an exceptional entrepreneur that founded “Shape Up RI” and managed to grow it into something extraordinary, and get acquired by Richard Branson’s Virgin Group.

/2019.03.06-BrownVenturePrize.jpg
It might be surprising to some that there is such a wealth of entrepreneural talent right here in little Rhode Island!

For twitter, I created my first ever gif screenshot to illustrate one of my pet peeves with the google docs platform. I have always hated that they present a “copy” option on the menu, but when you attempt to use it, you’re confronted by an error message saying that functionality isn’t available. It seems like a fundamental problem that it’s possible to click on something that isn’t available. So, I was able to make a short and comical gif about it.

/2019-03-07_first-twitter-gif.gif

Thanks to linoxide.com for their helpful tutorial about creating gifs on Linux systems. Working with some of my favorite open source tools (FFmpeg and ImageMagick) I adapted their suggestions to work my preferred video sequencing tool ffmpeg (they suggested mencoder, which I don’t consider as versatile)

First, capture screenshot video with SimpleScreenRecorder

Use FFmpeg to convert the MPEG-4 x264 file into individual frames

ffmpeg -i simplescreenrecorder*.mp4 -r 10 thumb%04d.png -hide_banner

Use ImageMagick for these steps (swiss army knife of still images the way ffmpeg is of audio/video)
Compile the individual png frames to an animated gif

convert -limit memory 1 -limit map 1 *.png final.gif

The outputted gif will be quite large, so it is necessary to shrink it down thusly:

convert -limit memory 1 -limit map 1 final.gif -fuzz 10% -layers Optimize final_optimzed.gif