#25 - Link Roundup, 22 May 2020

Hi!

I asked last week about your team’s productivity and how it is holding up. Here and on twitter you sent me the full range of answers; it was a rough 33% split between up/the same, down, and it’s complicated. Two factors out of our control caused much of the variation: personal circumstances of team members and the type of work done. But there are some things readers have done that have helped. Scoping work tighter than before, communicating explicit expectations ahead of time, and more frequent status reporting all seem to have worked.

My organization, probably much like yours, is beginning plans for staged return of staff. One guiding principle: for now, those who can work effectively work from home will continue to do so. So more of the same for the time being.

Still, planning for the future brings thoughts of what will change in research computing. There are at least three big and well-commented on lasting changes that the pandemic will have on our organizations – remote work, budget cuts, and a prioritization of health research. It’s pretty clear that the combination of those changes is going to accelerate trends in how we organize research computing. Remote work plus budget cuts will drive us towards further consolidation of research computing staff under a smaller number of organizations. Budget cuts except for in health research likely accelerates the shift from few large simulations to lots of data analysis workflows. Increasing importance of health research plus remote work likely means hiring specialized domain expertise wherever they may be.

I’ll write about this more, but what factors am I missing? What are going to be the drivers in research computing in “the after times” that will be different from “the before times”?

Anyway, on to the link roundup!

Managing Teams

Google Spent Years Studying Effective Bosses. Now They Teach New Managers These 6 Things - Michael Schneider, Inc
Google’s New Manager Training - re:Work, Google
Effective Management for New Managers - Angela Riggs

I’ve written about Google’s Project Oxygen before in this newsletter — an effort that launched half-expecting to find that technical management didn’t matter ended up discovering that it very much did. Project Oxygen was the effort to better understand which management behaviours improved team performance, and their re:Work effort is their (largely public) management training material.
The Inc. article describes their new-manager training effort. Training focusses on six areas:

  1. Growth mindset (people can develop new skills) and values
  2. Emotional intelligence (paying attention to one’s and other’s emotions)
  3. The uncomfortable transition from individual contributor to manager
  4. Coaching teammates to improve
  5. Giving effective feedback, and
  6. Decision making.

The training material is worth going through. Sections 1-3 likely really require a facilitator, but the material on 4-6 is less hands-on and pretty solid.

None of the material is very unique, because the skills it takes to manage well aren’t specific to one company. Rigg’s series of articles covers much of the same ideas in blog-post form, but the workbook and slides are very nice for a classroom session.

The need for frequent, prompt, and behaviour-focussed feedback is nicely called out in both sets of materials. Google’s Situation-Behaviour-Impact model (“At this afternoon’s staff meeting, you arrived 15 minutes late, which broke the flow of Bob’s presentation and require extra time while we caught you up”) is very similar to seen elsewhere but well described. Rigg’s (correctly, I think) goes farther and integrates requesting change into the model.

Would re:Work or similar training courses being offered be something of interest to you, for yourself or people in your organization who are on their way to becoming new managers? Have you seen this done elsewhere? One of our readers has had training done for their team, but I think most of us are mostly left to our own devices.


This twitter thread by Rein Henrichs (@ReinH) is a nice inditement of the (likely well intentioned!) management approach of “come to me with solutions, not problems”.

Restraining ourselves as technical managers from solving our team members’ problems is hard, but their growth requires them to solve those problems. On the other hand, swerving to the other extreme of simply expecting them to solve all problems without us isn’t the right approach either.

Supporting team members with the right amount of coaching and input for each takes practice but it’s the only sustainable approach. The alternative is our team members either stressed out and not telling you about problems you should know about on one hand, or stagnating in their skills on the other.


A nice twitter thread on the why’s and how’s of Goal setting. I particularly like:

2/ Goals have three primary benefits:

  • Clarity: You know what success looks like
  • Alignment: All team members know what success looks like
  • Motivation: A push to achieve more than you would have otherwise

Managing Your Own Career

Time management when everything’s a priority - Elizabeth Harrin, Girl’s Guide to PM

Most of these items are things you will have seen before, but even pros routinely practice the basics:

  1. Schedule Your Time
  2. Know the Difference Between Urgent and Important
  3. Understand Your Priorities
  4. Delegate and Help
  5. Plan at Different Levels
  6. Know When You are Most Productive
  7. Deal With Email
  8. Integrate Your Schedules
  9. Deal With Conflicts
  10. Stay Positive

I recently tackled two things on this list. I started blocking off my schedule for tasks that require a period of focussed time; I’ve always been skeptical but it’s great. Harder for me was getting firmer with my email — setting my devices to only poll for new email hourly, and cc:s get forwarded to a different folder which I check at the end of the day. It’s been awesome.


Product Management and Working with Research Communities

State of the Field: Digital History - Romein, Kemman, Birkholz et al., Journal of the Historical Association

A nice overview of the state of digital history, covering how materials are digitized (OCR, computer vision, …) then made more accessible with text and network analyses, and then concluding with some of the changes happening or needed in the field to take advantage of this work.


Research Computing Systems

Hacking Streak Forces European Supercomputers Offline in Midst of COVID-19 Research Effort - Oliver Peckham, HPCWire
Supercomputers hacked across Europe to mine cryptocurrency - Catalin Cimpanu, ZDnet
High Performance Hackers - Robert, AtNode
Academic data centers abused for crypto currency mining - CSIRT
Recent Attacks Against Supercomputers- Cado Security

This is the continuation of news stories coming out after last week’s public announcement by ARCHER. The later links have more technical details.

I don’t have much to add except… what a mess. If admins at sites suffering earlier breaches (including ones in Canada and the US that haven’t been made public yet) had been as professional as ARCHER’s team and made public statements, how many of these attacks would have been stopped in their tracks?

Parts of research computing — HPC stands out — need much stronger security practices. I’m not talking about deep cybersecurity expertise and red teams and pen testing: just simple monitoring, breach response playbooks, and basic hygiene go a long way. This situation damages trust in research computing, and will make it much harder for HPC centres to play active roles in health research or other areas with sensitive data. In some cases deservedly so, but in other cases, not.


Research Software Development

Fast high-level programming languages - Heng Li

Heng Li has built a number of high-performance tools that are used every day in genomics by tens of thousands of people worldwide. This article describes his comparison of C and Python to new languages that aim to be relatively fast: Crystal, Nim, Julia, Go, Javascript, and LuaJIT.

If that’s of interest, it’s worth a read. The tl;dr is that he thought Crystal held promise, but would wait for 1.0, but wasn’t deeply impressed by any of the others.

Heng builds highly-optimized tools and libraries, and reflecting that, his two test cases were a parser for FASTQ (a simple text file format used in genomics) and calculating interval overlap queries, the sort of operations which would be implemented in tuned libraries with multiple but still a modest number of contributors.
While good languages for writing such libraries definitely matter, my own interest is in the much broader research computing audience. A lot of researchers and staff have to write code that calls those libraries, but also implement nontrivial computational and data operations. A high-level and high productivity language for those developers strikes me as even more important, because that code won’t be optimized as thoroughly or frequently.

Fields differ, but in bioinformatics, I really like the Rosalind problems as a set of examples for such work. The Rosalind problems are a set of pedagogical algorithmic exercises, and later problems better reflect the sort of complex manipulations a grad student or postdoc or staff would implement frequently. Years ago I tried to do a Python vs Chapel comparison along those lines but never finished or wrote it up… Perhaps it’s worth revisiting.


Emerging Data & Infrastructure Tools

Cost Engineering Example: File Hosting - Jeremy Campbell

A first in a series of cost minimization demonstrations for commercial cloud (Google’s here). The worked example in this initial case is the simplest, and a pretty common use case for us — static file hosting.

We see a lot of “don’t use specialized services in the cloud” articles for research computing; the worry is there is more lock-in and the “fancier” services are more expensive. The first is arguable, but as this article shows, the second just usually isn’t true. Taking advantage of the highly specialized offering (here the content distribution network) can actually be significantly cheaper, because you’re buying only the very specific capabilities you need. It’s also much simpler to administer!


Microsoft announces new supercomputer, lays out vision for future AI work - Jennifer Langston, Azure

Azure announces it’s hosting a custom cluster, with 285,000 CPU cores, 10,000 GPUs and 400 GBps connectivity, for client OpenAI. “Compared with other machines listed on the TOP500 supercomputers in the world, it ranks in the top five, Microsoft says.”

I’m really interested to see what Azure learns from building and hosting this cluster and if any of those lessons get applied more broadly.


Random

I was today years old when I learned there are code-specific command line tools for search and replace.

A nice explainer on ssh-agent

We often have to put together visualizations and explainers in our work, so I keep an eye open for good examples. This is a very cute set of visualizations (with audio) of how distortion works in music.

Google’s on-premises hybrid solution Anthos now has a bare metal offering to support bare-metal resources you’re already using.

For those of us of a certain age or older, Microsoft has just open-sourced its GW-BASIC interpreter.


That’s it…

And that’s it for another week.

Have a great weekend, and enjoy the long weekend if you have one! And when you get back, good luck in the coming week with your research computing team,

Jonathan


Jobs Leading Research Computing Teams

Senior Data Architect, Translational Science - Fate Therapeutics, San DIego CA USA
Fate Therapeutics is seeking an experienced Data and Systems Architect with biotechnology domain experience to develop and oversee implementation of an innovative and flexible data strategy / architecture to enable the storage, organization, analysis and reporting of data in alignment with the scientific objectives across various business units supporting Fate’s growing pipeline of clinical programs.

Chief Executive Officer - New Digital Research Infrastructor Organization, Ottawa ON CA
The new CEO’s role will be to launch and drive the early development of NDRIO, shaping the NFP as a high-performing, service-orientated organization that is driven by a culture of excellence and collaboration, and will enable Canada’s researchers and post-secondary institutions to remain competitive on the international stage. The CEO will work in partnership with the Governing Board and Members to create and operationalize the strategic plan that will provide a foundation for significant multi-year digital research infrastructure investment.

Manager, Engineering Computing Services - Memorial University, St John’s NL CA
Duties include team management; developing, implementing, reviewing and evaluation computer and IT systems and procedures in support of programs, faculty research, and administration; working closely with the Associate Deans, Department Heads and the Senior Administrative Officer in the Faculty to develop computing policy, objectives and long-term plans; managing help-desk, education technology and web development functions; HR development and supervision of assigned professional support staff; development and managing computer and IT systems annual budgets; preparing and presenting annual operational plans to the Faculty Management Group

Professional Specialist, Project Manager - Princeton University, Princeton NJ USA
The Department of Operations Research & Financial Engineering at Princeton University seeks applicants for a professional specialist to serve as research manager for the project “Stochastic Models, Indices & Optimization Algorithms for Pricing & Hedging Reliability Risks in Modern Power Grids”, that is funded by ARPA-E. The Project Manager will work with the co-PIs at Princeton, Professors Rene Carmona and Ronnie Sircar, and co-ordinate the research activities with various other team members and industry partners.

Senior Data Manager, Oncology - SEC, Swizerland
Manage end-to-end delivery of data management services for single/multi-service projects, ensuring quality deliverables on time and within budget, to customer satisfaction. Direct the team in areas of project planning, execution and close-out, financial management, communications and milestone deliverables.

Manager, Research Computing - Boston College, Boston MA USA
Boston College seeks a Manager, Research Computing to provide statistical consultation and analysis to faculty in all areas of Boston College. Provide statistical expertise in research projects, including grant applications, grants, papers, dissertations. Guide researchers who need statistical expertise. Supervise the work of full-time equivalent employees and graduate students as part of general oversight of a center for statistics and advanced analysis.