10,200 reputation
2451
bio website dmitry.cheryasov.in
location
age
visits member for 4 years, 1 month
seen 1 hour ago

I constantly try to expand the little I know about programming.

google profile


Dec
12
awarded  Nice Answer
Dec
11
comment Is it allowed to embed an LGPL command-line tool?
@RobertHarvey: The question is basically whether the closed-source program is a 'derived work'. If the tool is covered with LGPL (not plain GPL), it looks like it is specifically designed to be included as a part of a non-GPL derived work. At least, so it works for LGPL libraries that you can link to a non-GPL binaries.
Dec
11
answered Is it allowed to embed an LGPL command-line tool?
Dec
11
comment Best approach for storing huge data
In short: create a single logical table, partition it by whatever you see fit. Usually dates are a better fit than names: old partitions are rarely touched.
Dec
9
revised Why using string[] args in all main methods?
added 45 characters in body
Dec
9
awarded  Nice Answer
Dec
8
answered Why using string[] args in all main methods?
Dec
8
comment Caching build results
I suspect that the build system is clever enough to only rebuild files that need rebuilding. It still could touch a number of class files to make sure that the changed sources are still correct with the regard of them. I'd rather throw some hardware on it: build on SSD + more RAM; it would probably cost 2-3 developer-weeks in money equivalent.
Dec
3
comment Is automatic conversion to collection types from non-collection variable a good idea?
If you might ever need to pass collections of collections, the idea will bite you.
Dec
2
comment Open-source licenses and modifications
Affero license (AGPL) is even more restricitive. If you're using a modified version to provide a public / commercial service (as opposed to running it in-house), you must share the modifications. Among others, MongoDB uses it.
Dec
1
comment What preconditions should be checked while adding/removing a listener?
^ the link: hg.openjdk.java.net/jdk7/jdk7/jdk/file/0b1c7f982cc0/src/share/…
Dec
1
comment What preconditions should be checked while adding/removing a listener?
Take a look how listener adding and removal is handled in AWT. It is far from straightforward; you might get a few ideas. Checking for nulls is pretty cheap, though.
Nov
29
comment Is there an alternative to instanceof when filtering a Java stream by class?
Do the objects in the stream implement some common interface that would let you to discriminate between classes? Some .getKind() or .isSpecific()?
Nov
27
comment How to track temporal changes in a database?
You can even create a separate historic table with dates and copy records there as you change your 'current' table. This way you can still look up historic utilization, etc without the need to change anything in current production tables and code.
Nov
17
comment REST and RPC in multi-tier API
RPC for some cases might be much faster, in exchange to losing some or all of the advantages. E.g. a connection to an SQL database, when used for multiple related requests, is an example of RPC that sheds the requirement of stateelessness but saves a lot of time on re-authentication. OTOH, an SSL certificate-based authentication with connection: keep might save reconnection costs for a REST interface: the caller will only re-auth (transparently) if the server it used to talk to closes the connection.
Nov
12
revised Architecture for a mobile (Android) chat application
list format
Nov
11
comment Decreasing MongoDB Load
How exactly do the aggregation queries work? How efficient is the use of indexes? Can previous aggregation results be stored and re-used?
Nov
11
revised Where does authorisation fit in a layered architecture?
typo: archive → achieve
Nov
8
answered Smart fallback for line endings in code files?
Nov
7
reviewed Edit Why is SQL's BETWEEN inclusive rather than half-open?