2,588 reputation
11023
bio website andreaferretti.it
location Bonn, Germany
age
visits member for 3 years, 2 months
seen 2 hours ago

Mar
10
comment How to avoid duplicating the domain model in a multi-language distributed application?
If you only need to share data classes and not application logic, you may want ti have a look at avro or protobuf
Oct
17
comment What will be correct answer to “why is NoSQL faster than SQL” on interview?
As I have said in the answer, one can do the same in SQL; it is just that when this becomes the rule instead of the exception, NoSQL databases are usually faster and more natural to use. In theory, SQL is the best model one can use, but when data grows over a certain size, it just cannot accomodate some models, and data duplication becomes faster and easier to reason about.
Oct
15
comment Is there a need for garbage collection in a stack-based language?
Actually factor is garbage collected
Sep
13
comment Are there any advantages of SASS over LESS?
Well, they are different beasts. Bootstrap is a set of conventions and widgets, while Compass os a collection of reusable mixins
Jun
28
comment How do people get rid of conditional branches in Functional Programming?
It depends on the language. Scala, for instance, is a functional language that also has object-oriented capabilities, so you just do the same. Cloure has multimethods. In Haskell you may have a function that are defined on a certain typeclass and different datatype may give different implementations of the function.
Apr
12
comment Why do some of object oriented languages let programmer use primitive types?
@ratchetfreak There is no reason why one could not have primitive types appear as objects at the language level and be converted during code generation, without losing speed. This is, for instance, the approach of Scala.
Mar
25
comment Dynamically generating HTML and CSS
I understand that, but this question is more than one year old. The point anyway, was that Opa is a language with native datatypes for Html and Css that maybe would make it easier to write the design logic the OP was looking for.
Feb
12
comment Is using '{}' within format strings considered Pythonic?
As the Zen of Python goes, "Explicit is better than implicit". So in my view this does not look very pythonic
Feb
7
comment Error checking in actor-based paradigm
Yes, I think that some sort of queue, possibly with a durable mailbox, is needed in front of the actors that are most prone to crashing - think actors connected to db, web services and so on. In your design, you would have a single actor who has the role of saving entities. Have you tried that? Does it become a bottle neck?
Feb
6
comment What's the point of those technique detailed interview question for Senior dev?
I am sorry if I misundesrtood your question. There are lots of people that ask similar questions here, essentially to get support if they performed poorly on interviews. If your point is that you know how to answer those questions, but you'd rather been asked more sophisticated questions about software design, I can only say that these questions are not as bad and mnemonical as may others asked in interviews. It is certainly possible to do better, but they are reasonable.
Feb
6
comment What's the point of those technique detailed interview question for Senior dev?
Those are not memory questions. I can recognize a person talking about, say, garbage collection from memory from one that knows what he is talking about. Now, I may agree that one could want to ask also some questions about design (but isn't the one on event delegation going in that direction?), but this is not an excuse to perform poorly on the questions listed here.
Feb
6
comment What's the worst question you were ever asked at interview?
It actually seems a nice question!
Feb
6
comment NoSQL use cases
I am a little tired of hearing that relational databases are based on set theory, as if that automatically improved their status. Actually, finite set theory is trivial and the first subtleties of set theory start with infinite sets, which of course are not used at all in databases.
Jan
31
comment Error checking in actor-based paradigm
Well, this is enough to prevent the whole system from crashing, but it is not enough to handle errors, as far as I understand. Say I receive some external input: this generates various messages, each of which at the end is sent to an actor that will save it into a database. If the database connection goes down, some of these actors will crash. Supervising is enough to bring back the actor in a working state, but if I understand correctly the message will be lost. This may lead to a situation where some messages are saved and some are not, and thus to inconsistent data.
Jan
31
comment Error checking in actor-based paradigm
Moreover, one has to send back the failure explicitly, as the docs say: "To complete the future with an exception you need send a Failure message to the sender. This is not done automatically when an actor throws an exception while processing a message."
Jan
31
comment Error checking in actor-based paradigm
Yes, this is what I added parenthetically "One can have a return value using Futures, but it certainly not customary to ask for futures on every message.". But this requires generating a Future for every call, which basically means doing away with ! and getting a fixed overhead. I do not think this is the customary way to build an actor-based application.
Jan
25
comment Is Groovy going away?
I beg to disagree about Scala being academic. It is actually very productive and helpful, and currently in use in many financial institutions, on Linkedin, Twitter and so on. I actually tried both Scala and Groovy here where I work, and I would never choose Groovy for projects over a mild threshold of complexity.
Jan
11
comment Is Neo4j graph database sufficient to itself for all query types?
Given that the only operations in SQL are essentially join and filters, and that filters are trivial in Neo4j, while joins can be simulated by following a relation with a given name, I would say yes. I am not sure that it would be a very efficient way to query, though.
Jan
8
comment How will the new development of Java influence its interoperability with languages like Scala and Clojure?
@maple_shaft Yes, a Scala String is a Java String. As with any other class, the mechanism of implicits can be used to add new methods to the existing class at compile time, but these are translated by the compiler in calls to methohds on a wrapper class.
Jan
4
comment Are immutable/stateless singletons bad?
It is not bad, to the point that Scala has a keyword for it (object) and that these objects are the basis of Scala's module system