Qais is a programmer studying Computer Science at The University of Edinburgh, specialising in back-end web development. He spends his academic year writing cool services for his fellow students, and is spending his summer working on MyEd as part of the Web Interfaces Team.
Slackalysis: A short analysis of #interns-2018
I’m Qais, and I’m one of the two interns working hard to make your Ed better. We work on MyEd!
Our daily routine consists of various meetings, crazy lunches with our fellow interns, and tapping away at keyboards writing code.
Writing code is my life’s work, and so I thought it’d be fun to analyse our usage of Slack — a messaging platform for teams. I’ve decided to take this opportunity to learn matplotlib and write this blog post in markdown, all in Jupyter Notebooks! If you know what all that is, click here now!
So lets go discover all the secrets of Information Services’ summer intern cohort.
Oh, and I’m not a statistician. I apologise if some of these graphs are just plain wrong. You have been warned.
Exhibit A: Who are our interns?
Lets load our
metadata.json, include some terrible XSS prevention, and print out our lovely interns…
These are our beautiful (slack-using) interns!
Exhibit B: Chatty Interns
I wonder who the most chatty intern is…
Lets load up all our messages and find the chattiest intern:
Here are the top 4 noisiest interns!
Phew! That was a lot of work!
Lets pause the stats for a second and now I’ll talk about my journey through writing this blog post.
[warning: technical content ahead].
I use my self-managed machine at work and on Thursday afternoon last week I decided to give in my laptop for servicing. These past couple of days I’ve been using my managed Windows 7 machine and I can clearly see that my efficiency at work has been fairly stunted.
I don’t have Python on my home machine (Windows 10, so I can play beautiful games like Batman: Arkham City, which, by the way, I snuck in an hour of before work today. Fab game, and the combat is so much better than Arkham Asylum).
I can get by fairly well with just an SSH connection – I’ll just connect to Informatics’ DICE machines and run things over the network there. The thing is, these machines don’t have MinGW or putty pre-installed (I was later reminded that Putty can just be downloaded…) — time to explore other options!
Informatics is trialling their fantastic new RDP service, and it works… well. Browsers over RDP are still a little bit too slow, and there’s no hope making it my primary desktop, especially with the way that Windows handles keyboard shortcuts.
I tried Virtual DICE. It took a while to download, even over EdLAN. I guess I’ve been spoiled with the Appleton Tower MSR and TARDIS being in the same building.
It took even longer to get Virtualisation enabled in the system BIOS. Whenever I booted up my Windows university-managed PC I never saw the BIOS screen. Pressing a function key on boot would always just result in a clear blank screen — no display output. It was clear that it was going into some sort of BIOS, I just couldn’t see it!
Fastboot, you say? Nope! After a bit of shuffling about with my partner in crime (Ben, who you’ll hear more from in four weeks time) we discovered there’s an external GPU connected (to the motherboard, not connected to a monitor) and we figured the BIOS was showing up on there. I didn’t want to unseat the graphics card, so I put things back to the way it was and called over our fabulous computer rep, Callum. We were right, he unseated the exGPU, we enabled virtualization, and now I could finally start a virtual machine.
So my discovery of having an (unused) exGPU let me to go and try PCI passthrough. TL;DR: it didn’t work.
I allocated 6 gigs out of 8 of my system memory to VirtualBox and it turns out that breaks your host machine, especially if it’s running Chrome! I always defend Chrome when people say it’s a memory hog (memory is meant to be used!), but darn, it does not function well in a low memory environment. But it’s kind of OK if I’m trying to use this VM as a “primary machine”…
So I installed VirtualBox Guest Tools and enabled “auto keyboard capture”. Now the interface is fast, the hardware cursor is in use and it’s all silky smooth; and that makes me a happy man! I use xmonad on DICE, and that uses the Super key (Windows key). I’m not remapping my entire
But the Windows key is obviously being captured by my host machine. So I go and disable “auto keyboard capture” and yay, I can now use xmonad properly…
Oh no… the mouse is slow now…
We’ve all been moved to the hot desks now (..) so I’ve cheekily made use of the “testing machines” — one with macOS — so I can enjoy having real SSH.
And now I have jupyter working!
Now, to return to my 12 hour attempt at statistics.
What about each person’s most fav react?
Booooring! What about the top mentioned people?
All this code was basically written in a 12 hour span. You can find the code published on GitHub, and you can also find a HTML version of this. There’s no personal data (or documentation), but you can run the right scripts to pull it from Slack yourself.
Some cool things to add would be some inter-relational statistics (I made up that term). Which interns mention each other the most?
Anyway — I hope you’ve enjoyed this little insight into life as an intern at Information Services. We sure do make the best use of Slack.