language-agnostic

What are your criteria for choosing a framework or library?

In general, how do you choose a framework or library to use in your application? Does it have to be open source? Does it have to be commercial? Does it have to be actively developed, well-documented, or have a pretty home page? If your language has native support for some functionality, what would make you choose a third-party framew...

Automatically tracking development time

Hi all, I'm working on a personal project and I'd love to be able to say at the end:"I've spend X hours on this project". Now one way to solve this, is to use a manual time tracker (worked from: to:). I've ran into problems with this, because I only manage to use it consistently for the first week or two. So I'd like to track developme...

How to dynamically configure an application?

When I say "configure" I mean where to save those values that could change very often (constants values like taxes rates or something similar) and then when you need to change them you don't want to re-compile your application. Where to save those values? Database? XML File? Flat File? ...

Favorite (Clever) Defensive Programming Best Practices

If you had to choose your Favorite (clever) techniques for defensive coding, what would they be? Although my current languages are Java and Objective-C (with a background in C++), feel free to answer in any language. Emphasis here would be on clever defensive techniques other than those that 70%+ of us here already know about. So now ...

What type of development do you find most interesting?

My past experience has primarily been in the new media industry. My experiences were that while this industry seemed to be laid back, most places have next to no management protocols. This inevitably leads to disorganized chaos,a lot of firefighting and lots of late nights. I also find new media work to be mostly the same type of devel...

Modelling an elevator using Object-Oriented Analysis and Design

There are a set of questions that seem to be commonly-used in interviews and classes when it comes to object-oriented design and analysis. This is one of them; unfortunately, my OOP professor in college never actually gave an answer to it, and so I've been wondering. The problem is as follows: design a basic set of objects/methods to be...

Using an ORM or plain SQL?

For some of the apps I've developed (then proceeded to forget about), I've been writing plain SQL, primarily for MySQL. Though I have used ORMs in python like SQLAlchemy, I didn't stick with them for long. Usually it was either the documentation or complexity (from my point of view) holding me back. I see it like this: use an ORM for ...

Should C# and Java incorporate each others syntax?

I've been jumping from C# to Java an aweful lot and the "differences" between the two are a bit of an annoyance. Would it be possible to write a set of extentions/plugins that would merge the two languages syntaxs. I'm talking about adding either IDE support or using language constructs that would for example: treat these two lines e...

How do you explain the concept of "Programming" to someone who has no clue what it is?

I was recently put on the spot and I had to explain what "code" was. It was an older gentleman who really didn't know, and really didn't care, about computer science. I tried my best to dumb it down and explain it like this: "Code is instructions you write to the computer. The computer interprets the code and does something with...

What are all the ways to traverse directory trees?

How do you traverse a directory tree in your favorite language? What do you need to know to traverse a directory tree in different operating systems? On different filesystems? What's your favorite library/module for aiding in traversing a directory tree? ...

Open a new tab in firefox and keep ff in the background

Is the a way to programmatically open a URL in a new tab in firefox without firefox gaining focus? What I found out so far: firefox -new-window <URL> lets ff stay in the background, but opens a new window instead of a tab. firefox -new-tab <URL> opens <URL> in a new tab but gives focus to ff. EDIT: What I'm trying to accomplish is mak...

Self installing application or separate installer?

To get an application installed on a new computer there seems to be two major approaches in current use: Separate installer: Create a separate installer package that creates all directories, files, registry entries required by your application (ie an MSI, InstallSheild etc) and then finally copies your application to the target compute...

How managers choose programming languages

It's not a secret to anyone that managers can and often will impose the programming language that will be used for a project. Being a programmer myself, I have never been able to understand this. But now I think I do: I've just had a revelation when Joel Spolsky said on the podcast that they should use QuickBooks because 'every account...

How to detect and debug multi-threading problems?

This is a follow up to this question, where I didn't get any input on this point. Here the brief question: Is it possible to detect and debug problems coming from multi-threaded code? Often we have to tell our customers: "We can't reproduce the problem here, so we can't fix it. Please tell us the steps to reproduce the problem, then we...

Why does backtracking make an algorithm non-deterministic?

So I've had at least two professors mention that backtracking makes an algorithm non-deterministic without giving too much explanation into why that is. I think I understand how this happens, but I have trouble putting it into words. Could somebody give me a concise explanation of the reason for this? ...

What are the lesser known but cool data structures ?

There a some data structures around that are really cool but are unknown to most programmers. Which are they? Everybody knows linked lists, binary trees, and hashes, but what about Skip lists, Bloom filters for example. I would like to know more data structures that are not so common, but are worth knowing because they rely on great ide...

When should I add a GUI?

I write many scripts at home and on the job. Most of the time the scripts get used only a few times to accomplish their chosen task and then are never used again. However, sometimes I write a script to do something more complicated, something that requires user input. It is at this point that I usually agonize over whether to implemen...

Phone number format and validation library

This question asking for a phone number format API in Java got me wondering why such an API doesn't seem to exist. Given the number of validation classes available under Apache Commons, I would have thought such an API would be included. My question is, does anyone know of a phone number formatting/validation library available in any l...

Why is GUI code so computationally expensive?

All you Stackoverflowers, I was wondering why GUI code is responsible for sucking away many, many cpu cycles. In principle, the graphical rendering is far less complex than Doom (although most corporate GUIs will introduce lots of window dressing). The event handling layer is also seemingly a heavy cost, however, it seems that a well-...

Storing base64 data in XML?

How I can store base64 strings in XML? Do you use CDATA to store base64 strings in XML? Would it help as it allows use of < > within the strings? Is base64 configurable where you tell it not to use certain chars if they conflict with XML? ...