9,483 reputation
11840
bio website en.wikipedia.org/wiki/…
location United States
age 70
visits member for 3 years, 10 months
seen 27 mins ago

BS Mechanical Engr.
PhD CS(AI)
CS Prof (4yr)
Numerous consulting jobs.
15 yr at http://www.pharsight.com
Published book on CS & several articles
4 kids, 2 grand
Pilot(student)

P.S. The picture is a Beta-prime distribution. It shows the program speedup factors you can get if you see a problem twice in 2, 3, 4, and 5 samples.


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
18
comment understanding computers
+ Petzold is an awesome author!
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
6
comment Are there studies on what programming does to the brain?
IMHO, people make too big a deal out of how "abstract" programming is. Other temporarily impressive buzzwords come and go, like "virtual" and "logical" and "intrinsic" and "what-have-you-centric" and "XYZ-oriented". I think it's simply a matter of not obfuscating the rules. I taught programming to hundreds of students, and I found it was mainly a matter of learning the rules and just doing programming. If people can learn to play Bridge, or Poker, or Chess or (you name it) they can learn programming. Whether they want to is another matter.
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.
Jun
24
comment Teaching logical/analytical thinking
@mcwise: Not every teacher teaches the same way, but for me, nothing gets students fired up like the first time they write a program that asks them their name and then replies with a random insult like HI THERE BILLY, YOU ARE A BIG SMELLY SLOB :)
Jun
24
comment Teaching logical/analytical thinking
@Joshua: The problem with the idea "logical thinking" is it's way too vague. When they start making little programs they will be thinking logically, like it or not, so I never made that a separate goal. That said, you need to find your own way forward, so whatever works for you, go for it.
Jun
24
comment Teaching logical/analytical thinking
Bubble Sort is way too advanced for beginners. For that, you first have to learn variables, loops, conditionals, and the really big one - arrays.