Reputation
10,178
Top tag
Next privilege 15,000 Rep.
Protect questions
Badges
1 23 44
Impact
~580k people reached

Jan
23
comment What performance topics should I be aware of?
That's my point. A lot of people think that, and they blissfully assume the other 99% is as optimal as it could possibly be. That's the issue.
Jan
23
comment What performance topics should I be aware of?
You mentioned caching, aliasing, branching, loop unrolling, etc. That's the last 1% of the job. The lion's share is not in things you know ahead of time, it's in things you discover as you work.
Jan
23
comment What performance topics should I be aware of?
There's what you do before you write it, and what you do after. What you do before is KEEP IT SIMPLE, especially in the class and data structure, so you avoid putting in performance problems. What you do after is TAKE OUT THE PROBLEMS YOU DID PUT IN, and be willing to do large re-writes. It's possible to reduce time by a factor of 10-100. gnat's link gives an example.
Dec
15
comment Is there any evidence that lisp actually is better than other languages at artificial intelligence?
@Giorgio: The ancestors and cousins of Prolog are mostly written in what? Lisp. Fischer Black's deduction program, Micro-Planner, etc. For me, a good book on this is Deductive Foundations of Computer Programming.
Dec
7
comment KISS principle applied to programming language design?
I would just compare C vs. PL/1
Nov
23
comment When does “proper” programming no longer matter?
Since performance is your concern, you should be asking the program what you should be looking at, not asking if your preconceived question makes a difference. Please click on this link, and do what it says. It will tell you what the program is really spending time at, and that will tell you how to make it faster.
Oct
2
comment What causes bad performance in consumer apps?
@Crash: If you're still interested, here's probably the most math-heavy explanation I've put together.
Oct
1
comment Good example of gprof, for iOS project
You sound like a fan of gprof.
Sep
15
comment Has “Not everyone can be a programmer” been studied?
@Sulthan: Not in my class they didn't. Some tried. Some tried copying from others on a test. It was obvious - the code was too much like someone else's, and at the same time contained obvious mistakes. For projects, no two were alike, and nothing raises a red flag like somebody who does mediocre work on quizzes and homework but turns in a beautiful project. I just make up another test and give it to them. If they clearly don't know which way is up, I'm under no obligation to give them a good grade. Alternatively, I can call in another professor.
Sep
5
comment Has “Not everyone can be a programmer” been studied?
+ I am so thankful that I have never (almost) had to go through HR.
Sep
5
comment Has “Not everyone can be a programmer” been studied?
@Den: Well, they had to do small programs for homework, they had quizzes and tests, and they each had to do a significant personal programming project, all of which I graded. The course was required.
Sep
5
comment Has “Not everyone can be a programmer” been studied?
@Jimmy: I tried to make it interesting by getting them going on personal projects about games, science, finance, music, whatever appealed to them. Programming is much more interesting when it's a means to an end.
Sep
3
comment Does it still make sense to think about effective code on micro scale in C++?
@Martin: Thanks for making my favorite point. People figure if the profiler can't find it, nobody can, which is silly, at best.
Aug
22
comment Is there any better approach to shortest path finding within a (vehicular) traffic network?
I'm not clear what N and V are. Is V the number of vertices (intersections) and N the number of arcs between vertices? Also, what is E?
Aug
16
comment How will quantum computing change programming?
@Philip: Suppose you have a 1024-entry table, so it takes 10 bits to index it. You have a 10-(qu)bit register, and it has 1024 possible states. OK, so you create a universe in which the register is 0, another in which it is 1, up to 1024 parallel universes. Then the quantum "instructions" operate on all of these in parallel. Each universe has an "amplitude vector", whose magnitude is its probability, but it also has a direction, and those are being manipulated. Since the collection of 1024 vectors has a non-zero average vector, the rotation makes one bigger, the rest smaller.
Aug
16
comment How will quantum computing change programming?
@Philip: I know the math is pretty off-putting, but the key idea is the rotation about the mean, which has the effect of transferring probability to the answer state. Then you run back to the beginning and run forward and do it again, a certain number of times. Then if you do the observation, you've maximized the probability of seeing the answer state.
Aug
10
comment If your algorithm is correct, does it matter how long it took you to write it?
@Jaydee: I think of performance in terms of percentages, as opposed to a teeny bit multiplied over jillions of runs. I've managed to ruffle feathers with this viewpoint, but often programs contain larger speedup opportunities than you might think, but you do have to be smart about how you look for them.
Aug
10
comment If your algorithm is correct, does it matter how long it took you to write it?
IMHO it's more important to be right than to be quick. Often I don't feel like I really believe in an algorithm/program/language design until the 3rd or 4th version. At the same time, I'm often told that I work fast, but I don't look at it that way. As I look around, people just tend to make things way too complicated.
Jul
5
comment Designing an email system to guarantee delivery
Just thinking out loud: Why not design an email system where the sender pays the recipient a certain amount for each message? The recipient would choose the amount, and it could be different for different senders. That would put a screeching halt to spam, and the worthwhile messages might actually get through.
Jun
30
comment if you were asked to answer to the question “ what is the difference between the English language and a programming language” how you will respond?
@DeadMG: Try reading Lacuna, The Death of Ivan Illych, Heart of Darkness, Mrs. Dalloway, or A Thousand Acres and show me a comparable program. Software does something for you. Literature does something to you.