45,794 reputation
8117200
bio website tech.turbu-rpg.com
location Seattle, WA
age 32
visits member for 3 years, 10 months
seen 2 hours ago
A lifelong programmer who's been coding in Delphi since its initial release and currently makes a living at it.

Aug
30
comment Does macros support make Scala a Lisp dialect?
@Giorgio: There's a huge difference between what he says is good in programming and what he actually shows as good programming. For example, he loves to talk about how Lisp's dynamic features and especially macros make your code better and hardware advances have made efficiency less of a concern, and what you should really focus on is writing intuitive code. But have a look at his book "On Lisp" sometime. (cont)
Aug
30
comment Does macros support make Scala a Lisp dialect?
It's best to take anything Paul Graham writes--particularly on the subject of programming--with a grain of salt, if not an entire shaker. A lot of the ideas he pushes are wrong, and some of them are harmfully so.
Aug
29
comment Example(s) of “A subscript ([ ]) expression that does not evaluate to an array” in C
@AnubhavSaini: A quick Google search turns up msdn.microsoft.com/en-us/library/200xfxh6.aspx which explains it better than I could.
Aug
29
comment What are CPU registers?
@Vatine: Yes, there's a very deep rabbit hole when you start peeling away the layers of abstraction and looking at real implementation. But when dealing with someone asking a beginner-level question, I prefer to give more basic answers that will enlighten, rather than confuse further.
Aug
28
comment What are CPU registers?
@Binero: Edited my answer to clarify, with an example.
Aug
28
comment What are CPU registers?
@Binero: I'm not sure exactly what you're asking.
Aug
28
comment Must OpenCL code be compiled for a specific GPU?
...assuming that your users are all using a GPU you happened to pre-compile for.
Aug
24
comment Is Perl outdated for CGI and FCGI?
Because since the 90s, the discipline of computer programming has matured a bit, and people have gained a better understanding of the importance of readability. This has led to messy languages like Perl and C++ falling into disfavor.
Aug
13
comment “Everything is a Map”, am I doing this right?
Anyone who's going to tell you that OO-style information hiding (with properties and accessor functions) is a bad thing because of the (usually negligible) performance hit, and then tell you to turn all of your parameters into a map, which gives you the (much greater) overhead of a hash lookup every time you try to retrieve a value, can be safely ignored.
Aug
12
comment Does having more classes necessarily increase the memory requirements of the app?
@P.Brian.Mackey: Yeah, databases. The key there is data. That's not the same thing as code, Lisp notwithstanding.
Jul
28
comment Preventing password hashing algorithm from overloading CPU
Option B.1: Instead of locking the account after X number of failed login attempts, implement a delay. After X number of failed login attempts, the account is locked for 1 minute. Then, with the next fail, 2 minutes. Keep increasing it (up to a reasonable maximum) and you make brute force attacks like this infeasible without making them too much of a burden on the legitimate user.
Jul
25
comment Find out whose turn it is to buy the croissants, accounting for possible absences
@Bobson: The question specifically says that the size of the team is relatively small. If I was dealing with a large data set, I'd do something more sophisticated.
Jul
17
comment Conceptually, how does one make a rules/constraints (not graphics/physics) engine for a game
@RobertHarvey: They've made a lot of progress in the last few years, but I think they're still missing some very important features that need to be present if they're going to present themselves as a viable alternative to Delphi. Most notably, after all these years, they still don't have a real Packages (BPL) system. Packages are quite useful for many situations beyond simply IDE plugins, and it's a bit silly that they don't seem to consider them an important feature.
Jul
16
comment When does SOAP make more sense than REST?
The S stands for Simple...
Jul
16
comment Conceptually, how does one make a rules/constraints (not graphics/physics) engine for a game
@veggen: Nope, sorry. Not a Java developer.
Jul
10
comment Tools that can catch “fake coverage”?
@KeithS: Code review and pair programming are orthogonal. Whether the code was written by one person or two, whether or not stupid crap like you describe here happens frequently, code should be reviewed by an external pair of eyeballs before it gets committed. The grief you save by catching mistakes early that the developer just plain overlooked--and then not deploying them, not getting bug reports about them and having to come back and fix them when it's no longer fresh in someone's mind--outweighs the time it takes to perform the review. Thus, it's penny wise and pound foolish to skip them.
Jul
10
comment Tools that can catch “fake coverage”?
Wait... why would it be detrimental to productivity to perform reviews prior to every commit? That sounds like a "penny wise and pound foolish" evaluation to me...
Jul
9
comment Is there value denoting a key as “Primary”?
While a autoinc number primary key is generally useful for most tables, I've found one case where I don't see any need to use them, and that's for "glue tables" that define a many-to-many relationship. In that case, the primary key is the combination of the FK to the first table and the FK to the second table.
Jul
8
comment Encryption Cannot Be Reversed?
@user1477388: Yeah, that's a much more technical and in-depth explanation of why hash functions aren't easily reversible, mathematically. I was explaining more about why hash functions are designed to not be easily reversible.
Jul
8
comment Encryption Cannot Be Reversed?
@user1477388: Yes, that's exactly why websites suggest that. That's a well-known way of attacking hashed passwords: it's called a "dictionary attack," for obvious reasons, and using words that aren't in the dictionary is an important step for being secure against them..