Varnish master-class at VUG9 ?

Poul-Henning Kamp phk at
Thu Jul 10 10:52:22 CEST 2014

If you develop on the Varnish source code or write your own VMODs,
this may interest you.

I'm thinking about doing a "master class" the day before VUG9 (which
Ruben says will probably somewhere in the middle of Europe).

I don't think regular courses works very well at this level of
coding, it would just mean that N-1 students would be bored out
of their skulls at any one time.

But I feel there is a need for some kind of teaching, and have been
thinking about how we could do it in a way that works best.

The idea of a master-class is lifted from classical music: once you
get to a particular level on your instrument, you start participating
in master-classes, because what you need help to learn is specific
to you, your instrument and your music.

The main feature of a musical master-class is that students bring
their own instrument and their own music, and gets the teachers
undivided attention in turn the secondary feature being that you
also get to listen on on everybody else, and pick up ideas, tricks
and wisdom from their interaction with the teacher.

The format I'm thinking of is something like this:

Interested participants send me an email with the source code they
want to bring.  It can be a VMOD or it can be some feature or
extension of one of the varnish programs.  Please also tell me
what areas/issues/problems you want us to focus on.

You must be willing to show this code to the other participants,
but for copyright purposes it will count as "a performance" and
they do not get to steal your idea or your code without you (and
your companys!) permission.  Please make sure your boss is OK with
this.  We don't want any trouble.

If there is enough interest, we will meet on the day before VUG9
and we will do something like:

	15 min - student presents his code.  (No interruptions)
		 Short:  What it does and why
		 Longer:  How it does it, (choice of algorithms etc)
		 Most:  Actual implementation, (problems, solutions)
	15 min - Dialogue and discussion between student and me
		 Focus:  How to improve the students code and coding.
		 Less so:  Is this the right problem or right way to solve it.
	10 min - Round-table, everybody gets to chime in
		 All helpfull observations and suggestions welcome
	 5 min - Summary by me and student.
	15 min - Break + next student gets projector working etc.
	(da capo al fine)

I will warn you that this is a very scary experience first time you
try it.  Programmers, unlike musicians, are not used to having
teachers and other students involved in our learning this way.  You
will feel your stomach knot once you and your code takes the floor.

And you should realize that you and your code will get the undivided
attention of a bunch of good programmers, and they will find mistakes,
faults, errors flaws and misunderstandings in it -- no matter how
good you think you are.

You really want to polish your code and train for this, so you show
us your very best -- show us that you are a master.

It is important that you do not get defensive about the feedback,
but apparoach this as a chance to learn from some very smart people
who are trying to help you, and likewise, it is important that you
try to help any of the other students when it becomes their turn.

Since it can be a bit overwhelming to absorb so much so fast, you
are welcome to audio/video record your own timeslot, so you can
review it later, but you must arrange the recording yourself (ask
a fellow student ?).  You are not be allowed to record any other
students, without their prior permission.

Realistically we can go through 6-8 students on a single day before
our brains are full.  If there are more interested students than
this, I get to pick who gets to participate.

There will be a participation fee to cover expenses, probably
less than 1000 EUR.

Drop me an email if you are interested...


Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.

More information about the varnish-dev mailing list