RSSAmplifier

Blog

Konstantinos Kallas

angelhof.github.ioRSS feed ↗8 posts

Latest posts

How to effectively read a systems paper

Reading a research paper takes time, and in order to get something out of it it is helpful to guide the process using a set of concrete questions about the paper and its thesis. Having a set of questions in mind can help the reader (1) better place the paper in the context of the literature, and (2) evaluate it in a more critical way. Of course there is no one universal best way of reading a…

Using try to make Copilot command suggestion a bit saner

Here is a cool usecase of our recently published tool, try that can help when using Github Copilot in the CLI. Thanks to Mayank who came up with it! TL;DR: Use try around commands suggested by LLMs to not accidentally destroy your system 😌 LLMs are here and developers use them increasingly often to suggest programs and commands to them by describing what they want in natural language. A…

A preliminary proposal on an explicit faculty mentoring role

The summary of this (preliminary) proposal is that we need to have two types of advisors for PhD students at universities. A mentor/advisor: the goal of whom is to offer general purpose advice and support (more on that later). A “classic” research advisor: the goal of whom is to help the student grow as a researcher.

Advice for prospective PhD students on deciding which program to join

I wanted to write this post for some time now since the longer I wait, the more my viewpoint diverges from the one I had when I was a prospective PhD student. At the moment, my memory of looking for PhD programs is still pretty fresh, but I have also seen the process from the other side, getting to know some other students and whether their decisions played out well or not. The goal of this post…

Discussing “An optimality theory of concurrency control for databases” by Kung & Papadimitriou

This blog post is an intro to a (potentially long) series of posts that revolve around correctness criteria of concurrent objects and systems, most notably linearizability, sequential consistency, serializability, etc. My objective is to write these blog posts to help me better understand the above concepts, because I have found out that writting helps me organize my thoughts on a topic, and as a…

ICFP Programming Contest 2018

In July, I participated together with a friend of mine, Achilles Benetopoulos, in the ICFP programming contest. Our team name was “no need for a type system” because we implemented our solution in Erlang (which has a type system, though not a static one) and at the time (after programming for “a couple” of hours straight) it seemed like a very entertaining name. On the lightning round we managed…

Solving Problems using Monads 1 - Reachability

This is part of a series of posts on solving simple programming problems using Monads. The intention of this series is to help me (and you) learn more about Monads by solving interesting (but simple) programming problems.

Thinking back on Google Summer of Code 2017

It has been one and a half month since GSoC 2017 ended and I would like to note how amazing the whole experience was. I learned a lot about the specific subjects that I dealt with (ACME protocol, X.509 certificates), as well as generally about software engineering and cooperating with other people. As enough time has passed from the completion of the project I think that I can now epitomize what I…