terminology

Terminology/naming convention for queue operations/APIs?

The "queue", or FIFO, is one of the most common data structures, and have native implementations in many languages and frameworks. However, there seems to be little consensus as to how fundamental queue operations should be named. A survey of several popular languages show: Python: put / get C#, Qt : enqueue /dequeue Ruby, C++ STD: p...

Dependency Injection and Inversion of Control - terminology

In functional programming, functions are regarded as entities, and can be passed around as objects are in an OO context. At some level, the function may be 'called' with some arguments. And I was wondering: is this, too, called Dependency Injection? And further: does this usage of DI result in Inversion of Control? ...

Protocol Terminology: Message versus Packet

In practice, what is the most appropriate term for the communications transmitted over a network in higher level protocols (those above TCP/IP, for example)? Specifically, I am referring to small, binary units of data. I have seen both "message" and "packet" referred to in various client/server libraries, but I was interested in the com...

Why do the terms API and an SDK seem to be used interchangeably?

What is the accepted definition of an API compared to the definition of an SDK? Both seem to be used interchangeably, so I'd imagine that some libraries dubbed APIs are in reality SDKs, and vice versa. Also, is there a reason for this distinction? Thanks! ...

C#: Do you raise or throw an exception?

I know that this probably doesn't really matter, but I would like to know what is correct. If a piece of code contains some version of throw new SomeKindOfException(). Do we say that this piece of code can potentially raise an exception? Or throw an exception? The keyword is throw, so I am kind of leaning towards that, but to raise an ...

Why do programmers confuse the term "assembler" with "assembly"?

As programmers we need to be precise with our verbal and written communication. Why do so many programmers confuse the term "assembler" (the object code generator) with "assembly" (the language you program in)? The distinction is unambiguous. Could there be historical explanation? ...

Terminology for the opposite of commented out

When a piece of code is commented we say just that, it's "commented out". But when it's not commented out, what is that? Uncommented isn't quite the same. Active? It's definitely not commented in. ...

What is sharding and why is it important?

I think I understand sharding to be putting back your sliced up data (the shards) into an easy to deal with aggregate that makes sense in the context. Is this correct? Update: I guess I am struggling here. In my opinion the application tier should have no business determining where data should be stored. At best it should be shard c...

What is "over-engineering" as applied to software?

I wonder what would be a good definition of term "over-engineering" as applied to software development. The expression seems to be used a lot during software design discussions often in conjunction with "excessive future-proofing" and it would be nice to nail down a more precise definition. ...

Scopes of the system in system analysis

Maybe someone knows, what does it mean "scopes of the system" (or something like that) in system analysis? ...

What does DIM stand for in Visual Basic and BASIC?

What does DIM stand for in Visual Basic? ...

java.nio channels buffers streams terminology

Does anybody have a good analogy (or, failing that, a good resource) for describing the relationships between buffers, streams, readers, channels, selectors etc. in java.io and java.nio? Thanks ...

What does void mean in C, C++, and C#?

Looking to get the fundamentals on where the term VOID comes from and why it would be called void. The intention of the question is to assist someone who has no C experience and is suddenly looking at a C-based codebase. ...

What different terms mean the same thing (or don't, but people think they do)?

One of the pitfalls I run into on a daily basis is customers saying one thing while meaning another. Usually, this is just due to a miscommunication somewhere, but occasionally they are, in fact, saying the same thing I am just using a different term. For example, one of my customers the other day mentioned a feature he called, "find a...

What is a "Live IP Address"?

What is a "Live IP Address"? For example, what does it mean when someone says "I transferred my project from place A to B through a Live IP"? ...

How does the industry refer to storing mulitple boolean value state in one integer?

Here is an easy question. How does the industry refer to storing mulitple boolean value state in one integer? The SetWindowPos api is an example. SWP_NOSIZE DEFINE 1 SWP_NOMOVE DEFINE 2 SWP_NOZORDER DEFINE 4 SWP_NOREDRAW DEFINE 8 SWP_NOACTIVATE DEFINE 16 If the integer is 11 then 1, 2 and 8 (SWP_NOSI...

Non-repudiation is duplicated?

When we talk about security we have the following requirements: authentication integrity Non-repudiation Isn't the third requirement included in the first two? If we know A sent the message (authentication) and it has not been changed since A sent it (integrity) then how can A repudiate sending it? Please don't talk about dig-sig as...

Help me put Oracle terminology into SQL Server terminology

My company is now supporting Oracle for the first time, and most of my colleagues are SQL Server developers who haven't really worked with Oracle. I'm a little bit familiar with Oracle, but far from a genius on the subject. Unfortunately, that is enough to mean that I know more about Oracle than most of my co-workers, so I find myself ...

What is this particular type of revelation called?

After struggling with a particular problem or bug in some part of my code for hours, without getting anywhere, I often get a sudden revelation as soon as I try to explain the problem to one of my coworkers, or while formulating it in writing for posting to some forum. Does this kind of experience have a name? Where can I read more abou...

What do you call the punctuation marks { and } ?

What do you call the punctuation marks { and } ? Braces? Curly brackets? Something else? ...