Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have been working in a professional software development environment for a short while now. Over this short period of time I have heard some terminology I never knew existed.

For example, in a status call a few weeks ago one of our developers said that he had been "hand-jobbing" things left and right.

A few days ago, I heard a new one again, where someone in our company wants to "dog-food" some product of ours.

So what is a "strange" term with respective definition, or list of terms that you know, that can improve on a new developer's professional vocabulary to improve on their communication and understanding of processes in the workplace?

My list is as follows and I will add more as I come across them!

  • Hand-jobbing: When a programmer resorts to some primitive or less-than-best-practice method of getting the job done, for the sake of getting something working, usually temporarily.
  • Dog-fooding: When a company uses a product for internal use that they have or are currently selling to their customers, usually to save time and money, but also to show confidence in their own products.

Also as a side note, I guess they don't have to really be TRUE software terminology as I've never heard anyone ever "hand-job" something as much as he did. However it should be something you have heard used in a professional environment that you would like to share.

share|improve this question

closed as not constructive by Thomas Owens, JohnFx, ChrisF Oct 7 '11 at 21:44

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

I'd avoid "hand-jobbing". That isn't really a developer specific expression and it's colloquial meaning might not be appropriate for a professional environment. – JohnFx Oct 7 '11 at 21:30
I wish this thread would have lasted a little longer. I kinda liked Banana-Soft – Styler Oct 8 '11 at 3:17

Banana-Soft = The software ripens at the customer.

Seems I am using that a lot lately for vendor software...

Edit: Does not refer to "eternal Betas" such as Gmail, etc. It really is software that should have been tested at least once, before being rolled out at the customer.

share|improve this answer

Cruft is jargon for computer software or hardware that is of poor quality. The term originates from source code that is rewritten leaving irrelevant or unwanted data within the code.

(definition from linked wikipedia page)

share|improve this answer

This question's highly subjective as it depends on your own experience. I'm afraid it will probably be closed.

Moving on, I find some terms still strange even though they are commonly used. To name a few, scrum master, unit testing and SLDC. I know, I know. Don't laugh or downvote, please. I wanted to provide a different point of view, from someone who's not exactly a super newbie (4 years doing this), but from someone who worked in places that weren't really optimal to learn new stuff.

Everywhere I've worked at, the managers/production team associate development with the tools eg. Wordpress, PHP, Photoshop. They hardly talk about it in terms of tools-agnostic development processes or programming techniques. So those other words feel foreign to me even though I have some idea of what they mean. In a real world experience, never had to use 'em.

share|improve this answer
Why don't you go PHP something – Styler Oct 7 '11 at 21:58

Eating your own dog food

...also called dogfooding, is a slang term used to reference a scenario in which a company (usually, a computer software company) uses its own product to demonstrate the quality and capabilities of the product.

share|improve this answer
I'm not being dismissive of your question by providing a short answer. It's just that the answer is short. – S.Lott Oct 7 '11 at 21:40
Right I understand what eating your own dogfood implies ;) – Styler Oct 7 '11 at 21:46

Not the answer you're looking for? Browse other questions tagged or ask your own question.