Mapping API Responses to JavaScript Models

One design goal I’ve been having in mind with frontend code for airavata-django-portal is to keep the “business logic” separate from the UI code, especially to keep it separate from any UI framework code. I got this idea from another blog post that I can’t quite find at the moment but the idea is to …

Two-factor Authentication for write-enabled Apache GitHub repos

Some Apache projects, such as Apache Airavata just recently, have made their GitHub repos writeable. However, to actually push to an Apache GitHub repo you need to enable two-factor authentication (2FA) in GitHub. With 2FA some additional work is needed to authenticate with GitHub from a Git client. First Steps First thing you need to …

Reflections on the SGCI Bootcamp

From October 2nd to the 6th I attended the SGCI (Science Gateways Community Institute) Bootcamp, which is a workshop to help science gateway developers and project leaders to develop a sustainability plan for their gateways. The Bootcamp took place at the Purdue Research Park, just a short distance from the Indianapolis Airport. I went there …

Matrix similarity and eigenvalues

Introduction Recently I was reading Data Science from Scratch by Joel Grus. One of Grus’ prerequisites for doing data science is linear algebra. I took a linear algebra course as a freshman but I didn’t do particularly well in it and what little I learned I’ve long since forgotten. So I’ve decided to brush up …

ECSS Symposium – CILogon and Keycloak

Note: I originally wrote this back in April but forgot to publish it. The presentation below was given on April 18, 2017. At work, the beginning of this week was busy for me as I prepared for the ECSS Symposium. ECSS stands for Extended Collaborative Support Services and it is a way for XSEDE users …

The Philosopher’s Handbook

Bought the book The Philosopher’s Handbook by Stanley Rosen (editor) today at Barnes & Noble. It is a kind of introduction to philosophy organized in 6 sections corresponding to the following 6 divisions of philosophy: social and political philosophy philosophy of religion aesthetics metaphysics epistemology philosophy of science Each section starts with an introduction by …

Facebook’s BSD+PATENTS license no longer Apache compatible

So Apache has decided that the PATENTS grant in the ReactJS license is incompatible with the Apache license. The ReactJS PATENTS grant is mutually exclusive: you are granted use of patents that may be used by ReactJS but the moment you sue Facebook for any patent infringement your grant to the ReactJS patents is revoked. …