4,249 reputation
21535
bio website
location Montreal, Canada
age 42
visits member for 3 years, 11 months
seen Dec 19 at 20:42

Software engineer by formation I spent most of my career creating, maintaining, designing or integrating software for medical systems.

Immensely curious, what's life without something new to learn ?

Various bits of wisdom I gathered here and there that just felt right.

"This Exceed the boundaries of my Omniscience" - Uttered by the reviewer during a code review

"Tactics is knowing what to do when there is something to do. Strategy is knowing what to do when there is nothing to do" - Chess Master Savielly Tartakower

"Fools ignore complexity; pragmatists suffer it; experts avoid it; geniuses remove it." -- Alan Perlis

"Ignorance more frequently begets confidence than does knowledge" -- Charles Darwin

"It's what you learn after you know it all that counts." -- Harry S. Truman on Humility

"Any fool can write code that a computer can understand. Good programmers write code that humans can understand." --Martin Fowler

"Debuggers don't remove bugs. They only show them in slow motion." - yet unattributed

"Never answer an anonymous letter." --Yogi Berra

"Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it." --Brian Kernighan

"More computing sins are committed in the name of efficiency (without necessarily achieving it) than for any other single reason - including blind stupidity." -- W.A. Wulf

"It seems that perfection is reached not when there is nothing more to add, but when there is nothing left to take away" - Antoine de Saint Exupéry

"Process is an embedded reaction to prior stupidity." --Clay Shirky

"...Land Lover Newsman soon to become Landblubber newsman, for the blast blasted blubber beyond all believable bounds..." -- Paul Linnman, extract from a newscast from the `70s

"I was a Catholic until I reached the age of reason" - George Carlin

"The apparent perfection of the natural world is more a reflection of the poverty of our imagination than of reality." --Michael LePage NewScientist 19 April 2008

"Never before have so many people knew so little about so much" - James Burke

"Ever noticed that their stuff is shit and your shit is sfuff" -Goerge Carlin


Dec
15
comment Is it allowed to embed an LGPL command-line tool?
@gnp if you have not modified it technically the source code is already distributed elsewhere that said my response to your argument opens the door to nitpicking-land paved with flower painted carpets that we love tripping over so much :-)
Dec
12
comment Is it allowed to embed an LGPL command-line tool?
@BartvanIngenSchenau: Technically you can statically link a LGPL but you would have to provide openly the means for a customer to replace the LGPL lib and re-generate the exe. Could lie a tad bit outside the comfort zone of a closed source app though.
Dec
12
awarded  Nice Answer
Dec
11
comment Is it allowed to embed an LGPL command-line tool?
@AProgrammer: Linking actually does have an impact on LGPL. Dynamically linked libraries can be swapped in-situ while statically linked cannot. With statically linked libraries one would have to provide means for the customer to link again with a his own LGPL lib which implies distribution of more than just the final executable.
Dec
11
comment Is it allowed to embed an LGPL command-line tool?
I think it would yes, akin to a dynamically loaded DLL, just more loosely coupled (Thus easier to respect the LGPL's terms).
Dec
11
answered Is it allowed to embed an LGPL command-line tool?
Nov
25
comment What are the real life implications for an Apache 2 license?
true, we are not always in control... as such if you cannot include a notice that you are using a piece of code licensed under Apache because of company policy you are therefore in violation of said licence and should refrain from using the code.
Sep
24
awarded  Autobiographer
Jul
14
answered Automatically propagating changes
Jul
8
awarded  Civic Duty
Jul
2
awarded  Curious
Jun
26
comment What is the difference between waterfall model with iterations and evolutionary software development model?
generally the iterative waterfall will be planned ahead, each iteration already disected, resources planned and assigned. To allow modifications from one iteration to alter the course of events in future iterations is seen as a disruption and met with hostility. If, on the other hand, only the present iteration is designed and planned for and other iterations are merely place-holders then it is no longer a waterfall process but an agile process.
Jun
18
comment How to avoid downcasting?
Getting rid of the interface is not linked to being specific in the method signature you can get rid of the interface if and only if there is only Humans and will ever be only humans that "CanSpeak".
Jun
18
comment How to avoid downcasting?
in which case it should take as argument an instance of CanSpeak instead of Animal
Apr
6
awarded  Custodian
Apr
6
reviewed Approve Why do projects opt to stay on an older version of the .NET Framework?
Jan
21
awarded  Yearling
Dec
13
comment Graph traversal and filtering in indoor navigation and path finding
a Dictionary (or Map) could do nicely to associate graph entities to users. When running through the graph your path finding algorythm could look up the user using the node / link as key and determine what is the weight asociated with this segment. This way you keep your graph as-is and only need to seed the algorithm with the appropriate dictionary information. With an approach such as this you could potentially run multiple search concurently on the same graph (since it does not get altered) for different user.
Dec
13
answered How to do a clean refactoring of an If Else Code without leaving any free blocks?
Dec
13
comment Graph traversal and filtering in indoor navigation and path finding
my thoughts exactly, leave the Graph as-is but use an algorithm that is cost aware and use a very high cost value for the nodes / path that are not usable for a given user. Then you could integrated these costs as either one a preprocessing of the Graph to integrate costs as payload or through a look up table associating Graph entities with user / costs and have the algorithm fetch the info through there