686 reputation
411
bio website paul-ebermann.tumblr.com
location Berlin, Germany
age
visits member for 4 years, 2 months
seen yesterday

Don't fear to edit my posts: even if I have more reputation than you, I do make mistakes.

I'm now also a Moderator Pro Tempore (= until the first elections) at Cryptography Stack Exchange: feel free to come around and ask some cryptography questions.


My personal name is spoken as /ˈpawlo/ (IPA), in English this would be written similar to Powlo, I think (i.e. the vowels are ow and o), with an accent on the before-last syllable (which is the first in this case). It's the Esperanto form of my given name.

The photo shows my shadow, taken at night. My camera sometimes seems to forget all the other frequencies and only stores the green ones.

My current main private programming project is the game of fencing, an online abstract turn based strategy game. Implemented as a Java applet, using git as a version control system.


Some more links:


Apr
2
comment Is it a bad practice to separate the unit tests for a class?
Actually, you might want to look at a test even if no requirements change – just to understand how the tested class is meant to be used, for example.
Mar
31
comment Does path coverage guarantee finding all bugs?
@MSalters I'm talking about code which (by specification) should not throw any exception, regardless of input. If it throws any, that would be a bug. Of course, if you have code which is specified to throw an exception, that should be tested. (And of course, as Jörg said, just checking that the code doesn't throw an exception is usually not enough to make sure it does the right thing, even for non-throwing code.) And some exceptions can be thrown by a non-visible code path, like for null pointer dereference or division by zero. Does your path coverage tool catch those?
Mar
30
comment Does path coverage guarantee finding all bugs?
It could make sure that there is no exception when calling the tested code (with the parameters in the test). This is slightly more than nothing.
Mar
19
comment When is it a good idea to force garbage collection?
For the latency control case, I guess instead of doing this periodically, you could also do it by need (i.e. when the memory usage grows over a certain threshold).
Mar
11
comment How to monitor code review efficiently?
Yes, it helped a bit by allowing the merge only for a limited set of people, who had the task to check if the actual review was done right.
Mar
10
comment How to monitor code review efficiently?
Even with such a process (which I supposed actually happens from the description in the question), you sometimes have developers thinking "ah, I trust my colleague enough and have too much to do myself, so I'll just merge it without actually reading the details, or even commenting on it". (We have a similar process in our team, with two approvals needed (from people other than the PR author), before it can be merged. Still sometimes changes go through without a thorough review.)
Feb
27
revised What makes a hashing algorithm “secure”?
update about SHA-3
Feb
27
comment Is it premature optimization to add database indices?
@ThomasStringer Of course, this only works if your test cases before going to production are somehow related to what is done by real users in production.
Feb
27
comment Is it premature optimization to add database indices?
Hopefully you know beforehand which 10 queries belong to the 98%, and which ones don't.
Feb
13
comment Is throwing an exception an anti-pattern here?
I guess a new optional-like type with three options "not configured", "configured as null" and "configured as non-null with value x" might be clearer than Optional<Optional<T>>. (Though the question is: What is the meaning of "configured as null"?)
Feb
1
comment Should Latin-1 be used over UTF-8 when it comes to database configuration?
@cimmanon A blob contains binary data, not characters, right?
Dec
25
comment Is every language written in C?
@nnnnnn: I would consider this "bunch of students" an interpreter, not a compiler.
Oct
10
comment Algorithms: How do I sum O(n) and O(nlog(n)) together?
@LieRyan Originally, it is not set union, but set sum: A + B = { a + b | a in A, b in B }. It happens that for sets of the form O(g(n)) this is the same as set union, as one of the sets is always a subset of the other, and they both are invariant to sums (i.e. A + A = A). (Oops, Nate did write essentially the same).
Sep
24
awarded  Autobiographer
Sep
2
awarded  Good Answer
Jul
14
awarded  Critic
Jun
24
awarded  Yearling
Jun
2
awarded  Nice Answer
Jun
2
comment Is this simple XOR encrypted communication absolutely secure?
@PlasmaHH Often attackers have other means of guessing the plaintext (or sections thereof) by out-of-channel information – e.g. you might now it is one of 100 specific files, and you can guess which one by looking at the file size. (A guess doesn't need to be always correct to be an acceptable attack.) Then you can replace one part of the file by something else, and the user either gets your malicious executable, or non-working stuff.
Jun
2
revised Is this simple XOR encrypted communication absolutely secure?
update due to my misunderstanding of the protocol