One to listen to: “Software Engineering Radio Episode 275: Josh Doody on Salary Negotiation for Software Engineers”

Today we have a podcast about negotiating salary from the IEEE Software Engineering Magazine. The episode is “Software Engineering Radio Episode 275: Josh Doody on Salary Negotiation for Software Engineers” and mentions that you don’t need to offer your current salary to prospective employers, nor do you need to tell them what salary you want – let them offer you a figure, which gives you the power to negotiate.

Clearly, these are some things I should have learned from when I was applying for my earlier jobs! If you’re looking for a new job, or just looking to maximise your next pay rise, take a listen to this show!

One to listen to: “Magic: The Gathering – Drive to Work Podcast #375 – 20 Lessons: Details Matter”

In something of a new concept for me, if I come across a link to a podcast episode that I think has useful content, I’ll link to it here.

In this case, this is the “Magic: The Gathering – Drive to Work podcast“, episode 375 (audio link).

Mark Rosewater, one of the designers of the popular game, explains a little something about the game, whether it’s the design of a card, or a set, or a mechanic, or …. well, any feature of the game really, and he does it twice a week, in the car, on his way to (or from) work.

In this episode, he details about why “Details Matter”, and basically it comes down to a sense of ownership that each little detail on a tiny piece of card, and how that can connect with a player and encourage them to keep playing.

Even if you don’t play Magic, this podcast (like many that I listen to) covers a facet of life that is generally under considered, and in this case, it has turned up something new to include in each design I bring forward from here on out.

Podcast Summary – Ubuntu Podcase S09E37 and S09E38

I was very fortunate to have been invited to guest present on the Ubuntu Podcast, for the episodes S09E37 and S09E38.

I recorded the show on my normal laptop, with a specially built Ubuntu Mate 16.10 image, which just included the show’s recording tools (Mumble, Voice Recorded, Gobby)

Due to some issues with my local recording, the audio used in the podcast was from the Mumble recording, rather than the local recording I made.

I’m generally happy with the recording, although I could have done with reading the content in more depth before the show, but, as it happened on a work night, I didn’t really make the time to research properly.

It was an absolute pleasure to record the show, and I’ve offered to guest present again in the future, if they’ll have me!

Using Expect to SFTP a file

Because of technical limitations on a pair of platforms I’m using at work, I am unable to set-up key-based SFTP or SCP to transfer files between the pair of them, so I knocked together this short script using the TCL based Expect language.


#!/usr/bin/expect
set arg1 [lindex $argv 0]
set arg2 [lindex $argv 1]
set arg3 [lindex $argv 2]
set timeout 1000
spawn sftp "$arg2"
expect {
yes {
send "yes\r"
exp_continue
}
ass {
send "$arg3\r"
exp_continue
}
sftp {
send "put $arg1\r"
expect {
100% {
send "quit\r"
exp_continue
}
}
}
}

view raw

upload.exp

hosted with ❤ by GitHub

There’s no error checking here, which isn’t great, but as a quick-and-dirty script to SFTP files to a box which needs the password each run… it works! :)

Talk Summary – Sandstorm: The Future Of Self-Hosting?

Format: Website tabs. An ad-hoc walkthrough of installation documentation and using Sandstorm. (Partial repeat of a previous talk at OggCamp ’15). Beanbags and a small number of chairs. 20 attendees.

Slides: None

Video: None

Slot: Day 1 (Saturday), Slot 1 (10:30-11:00)

Notes: Covered installing from curl | bash and mentioned PGP signing of installer. Covered installing apps and creating your own (might have confused people on this point). Demonstrated using apps with my own server, and installing apps too. Several follow-ups about why sandstorm and constraints in what to install it on, also about updates.

GPG Encrypting files using a keyserver

Another “at work” post!

I’ve been generating files which need to be distributed via a file server, but need to be encrypted using GPG (the open source PGP application). Rather than managing keys for a large number of users, instead, I have a text file with the user names in, and a batch file. Please see the below gist for details :)

Installing Symantec Endpoint Protection (SEP) on Ubuntu 14.04

At work we use Symantec Endpoint Protection, and in a lab, I was asked to confirm whether we could install it on our Ubuntu 14.04 servers. This took a few hops to get it installed, so I figured, I’d publish how I got it working, to save some other poor soul the trouble :)

Firstly, add the webupd8team’s Java PPA and update the repository cache: sudo add-apt-repository ppa:webupd8team/java && sudo apt-get update

This gives you the ability to install the Java 8 installer: sudo apt-get install oracle-java8-installer

This should download the install files, but for some reason, I was struggling to download it (the install script seems to struggle with downloading the actual .tar.gz file from Oracle), so I manually followed the link to http://download.oracle.com/otn-pub/java/jdk/8u77-b03/jdk-8u77-linux-x64.tar.gz, accepted the license, and placed the file in /var/cache/oracle-jdk8-installer/ and then re-ran the above apt-get install line.

— Note: This above issue was because I was running a caching proxy, which somehow doesn’t play nicely with this script. Turn off your proxy – should be all good :)

Next I had to install the Java Cryptography Extension which I got from the Java SE page. I placed this file in /tmp/jce_policy-8.zip (the filename is the one Oracle use) and replaced the files in /usr/lib/jvm/java-8-oracle/jre/lib/security with the ones from the extracted archive with this line: cp -b /tmp/UnlimitedJCEPolicyJDK8/*.jar /usr/lib/jvm/java-8-oracle/jre/lib/security.

The SEP client also has a dependency on the 32bit version of GLibc. I installed this with sudo apt-get install libc6-i386

I was then, finally, able to install the SEP client by unpacking the installer zip file, and running sudo bash install.sh -i from the path I’d unpacked the zip file in.

Not very complicated, I guess!

— Sources:

  • https://ubuntuincident.wordpress.com/2011/04/14/install-the-java-cryptography-extension-jce/
  • http://www.linuxquestions.org/questions/linux-newbie-8/how-to-install-32-bit-glibc-2-9-or-later-on-64-bit-ubuntu-12-04-a-4175413667/
  • http://www.webupd8.org/2012/09/install-oracle-java-8-in-ubuntu-via-ppa.html