775 reputation
412
bio website
location Israel
age 28
visits member for 3 years, 11 months
seen Jul 25 at 20:22

Since I don't like the restrictive copyleft nature of the Stack Exchange contribution license:

I hereby release all my contribution on the Stack Exchange network into the public domain. This applies worldwide.

In case this is not legally possible:

I hereby grant any entity the right to use my contributions on the Stack Exchange network for any purpose, without any conditions, unless such conditions are required by law.


Mar
5
comment Coding Guideline : Methods shouldn't contain more than 7 statements?
+1: Arbitrary limits are only arbitrarily useful. A method should contain a single coherent operation at a single abstraction level. Breaking such an atomic unit makes the code more complex, making it harder to comprehend the code.
Jan
19
comment Are there good techniques or tests for naming types?
I also dislike the elaborate Hungarian notation you've added to variable names. I shouldn't need to care if a collection of person IDs is a List, array, IEnumerable or ConcurrentQueue. It's a bunch of IDs I need to enumerate over, and the implementation detail of how they're stored is unnecessary mental baggage. Though I do generally agree that if a longer name is considerably more descriptive, it should be favored over a shorter, less clear name.
Jan
14
comment Software Engineer VS “Harder” Jobs
@Ryan: All I'm saying is that if you're going to give a non-programmer a programming task, have it be a task for which programming is actually an essential part. Otherwise they won't be very impressed by a task to solve a problem that can be easily accomplished by opening OneNote rather than spending hours developing an application.
Jan
13
comment Software Engineer VS “Harder” Jobs
@Ryan: No, but by that logic, if they wrote it in Java you could say that they didn't build the JRE, and if they wrote it in C++ you could say that they didn't build Windows, etc. You always use some underlying platform that you didn't build yourself. My point is that your task isn't challenging because it doesn't require programming to complete. If your definition of completing the task is performing some kind of programming, then I'd save that word document and create a batch file that starts up Word with that document. In that way, I've 'built' an application using Word's API.
Jan
12
comment Software Engineer VS “Harder” Jobs
This challenge is too easy. They can just open up Word, write "To-do List" at 24 pt, and press the Bullets button. Challenge complete, and meets all requirement.
Jan
5
comment Why the Select is before the From in a SQL Query?
@JeffO: Okay. SELECT FROM Customers COLUMNS FirstName, LastName, PhoneNumber.
Nov
3
comment What is the best retort to “premature optimization is the root of all evil”
Another retort, which is from the same article appears just before the above quote: The conventional wisdom shared by many of today's software engineers calls for ignoring efficiency in the small; but I believe this is simply an overreaction to the abuses they see being practiced by pennywise-and-pound-foolish programmers, who can't debug or maintain their "optimized" program.
Oct
21
comment Which comments instantly ring alarm bells when a programmer says them?
@BinaryWorrier: The more commonly used term is Cargo cult programming.
Oct
13
comment Do you have your own 'misc utils' library? What part are you most proud of?
ForEach() is useful, but be careful with it: items.Where(i => i < 0).ForEach(items.Remove).
Oct
13
comment Why do game developers prefer Windows?
People who write code are programmers. You don't have to be an expert - if you've written a program that someone else finds useful, you're a programmer as far as I'm concerned. Also, DotA (for Warcraft III), is neither a mod nor game-changing. It's simply a map, with the same graphics, gameplay mechanics, controls and rules as the original game. It simply introduced certain constraints, narrowed the scope by removing some mechanics, changed the configuration of some elements and repurposed others, which happened to be appealing to many and became a popular sub-sub-genre (like Tower Defense).
Oct
13
comment Trying to learn how to use WCF services in a WPF app, using MVVM
I think this belongs on StackOverflow. In any case, WCF clients created using Add Service Reference implement INotifyPropertyChanged by default for all data contracts.
Oct
13
comment Why do game developers prefer Windows?
Do you have a specific example of a reasonably notable game that was created without writing a single line of code?
Oct
13
comment Why do game developers prefer Windows?
"So you might be able to do the whole thing without any actual programmers." You forgot the sarcasm.
Sep
30
comment My customer wants me to record a video of how I develop his software product
@AnonymousType: Yeah, I guess that could work.
Sep
29
comment My customer wants me to record a video of how I develop his software product
@AnonymousType: In this age of incoming email alerts, instant messaging popups, appointment reminders, voice and video call requests, OS/application update reminders, and other such push-notifications, it is very hard to separate personal from work activities, especially since all of the notification I mentioned may be either work or personal related. You'd have to use two separate machines with two separate email account and two separate IM/Skype accounts, etc - i.e hell.
Feb
8
comment What does Clean Code mean to you?
+1: Quotes thumbtacked.
Feb
7
comment Is there a Windows philosophy of programming?
@Tom: It's a philosophy; it need not apply to anything. Nevertheless, I believe it applies very well to most things in the Windows world.
Jan
20
comment What popular “best practices” are not always best, and why?
I'm guessing you've never heard of TypeMock? It allows mocking classes, privates, statics (factory), anything.
Jan
19
comment What arguments are there in favor of weak typing?
Java's .toString() (or .NET's .ToString()) is actually a good example of how you can solve that problem without using dynamic typing, but by using a good inheritance hierarchy. But still, dynamic typing is a tool which is sometimes better at solving certain problems. It's all about choosing the right tool – sometimes it's static typing, and sometimes dynamic.
Dec
23
comment Under what circumstances should error messages be presented to the user?
@Alison: Think of the "Details >>" or "(+) Details" button on many error message dialog boxes. The technical details are hidden by default, and can be revealed when needed.