language-agnostic

Should a class ever have static and non-static members

I'm trying to figure out when it would be appropriate for a class to have both static and non-static functions. AKA: $obj = new ClassA; $obj->doOOPStuff(); $something = ClassA::doStaticStuff(); Note: This example is done in PHP, however the question is language agnostic . It seems that if you have a class that is meant to be instant...

PHP/Python/C/C++ library/application to match/correct/give suggestions to input

I'd like to have a simple & lightweight library/application in PHP/Python/C/C++ library/application to match/correct/give suggestions to input. Example in/out: Input: Webdevelopment ==> Output: Web Development Input: Web developmen ==> Output: Web Development Input: Web develop ==> Output: Web Development Given there is database o...

Single thread to multi-threaded application

When we should use threads in our application. In other words, when should I convert a single threaded application to multi-threaded application. Being a developer, I think the task which is preventing to your application to run smoothly. That task can be handled by a thread. Like we are the getting GPS data Continuously. I think, there ...

GMail and POP3 RETR problem - switch to IMAP?

When I'm accessing GMail inbox using POP3 protocol, it seems that after fetching given email using RETR command, after QUIT-ting and reconnecting, previously RETR-ieved email is not listed anymore when calling LIST. Then, after going to: GMail settings//Forwarding and POP/IMAP and setting "Enable POP for all mail (even mail that's alrea...

What is a "serialized" object in programming?

I've seen the term "serialized" all over, but never explained. Please explain what that means. ...

Is Polyglot programming important?

Trying to learn more about Polyglot programming. What is it exactly and is it important? I found this article by Ted Neward (Thoughtworks) interesting. Article suggests that polyglot programming was first mentioned by Neil Ford. ...

Common term for the "value-based" OR operator

Just a quick question printf("%d", 99 || 44) prints "1" in C print 99 || 44 prints "99" in perl There are two different kinds of evaluation. Does each one have a name? edit: i'm interested to know how this Perl evaluation is commonly called when compared to C. When you say "C example is X, and perl example is not X, but Y" which w...

How can skills at software development be used as a Private Investigator?

I am a senior level .NET software developer in my mid 20s. However before I got into software development, I had always been interested in military or law enforcement. I could not join the military because of asthma. I could not join the police because of color blindness. However after an idea from a friend and looking it up, I could...

Sharing storage between servers

I have a PHP based web application which is currently only using one webserver but will shortly be scaling up to another. In most regards this is pretty straightforward, but the application also stores a lot of files on the filesystem. It seems that there are many approaches to sharing the files between the two servers, from the very s...

Algorithm for creating a school timetable.

Hello all. I've been wondering if there are known solutions for algorithm of creating a school timetable. Basically, it's about optimizing "hour-dispersion" (both in teachers and classes case) for given class-subject-teacher associations. We can assume that we have sets of classes, lesson subjects and teachers associated with each oth...

Preventing multiple browser sessions on the same server session

I'm sure we've all worked on, or are aware of web applications (especially in the enterprise) that have tightly bound themselves to the server session. In these cases, it's possible that the session will become corrupted if more than one browser session is open and using the same server session cookie. We've examined all of the options...

How much client support is reasonable for a developer?

I work for a small software firm, and I am one of two developers on staff. My coworker and I handle more than half of the support calls. Support calls are a given, there is no stopping them especially since one of the selling points of our flagship product is "free non-outsourced toll-free phone support". Usually, this gives us only a...

Finite State Machine : Bad design?

Are Finite State Machines generally considered as bad design in OOP ? I hear that a lot. And, after I had to work on a really old, undocumented piece of C++ making use of it, I tend to agree. It was a pain to debug. what about readability/maintainability concerns? ...

How do you create your Factories?

So, coming upon the subject of Factories, I'm wondering how they are set up. From where I stand, I can see 3 types of Factories: All In One A factory that basically contains all of the classes used in an application. It feels like it is just having a factory for the sake of having a factory, and doesn't really feel structured. Exampl...

Legitimate uses for a switch?

Switches seem so useless as they can be replaced with if-else statements, which can do much more than just match a char/int/enum etc. I can only think of one good use for a switch, and that would be for interpreting command line args. What are some realistic uses for a switch statement? ...

Why should recursion be preferred over iteration ?

Iteration is more performant than recursion, right? Then why do some people opine that recursion is better (more elegant, in their words) than iteration? I really don't see why some languages like Haskell do not allow iteration and encourage recursion? Isn't that absurd to encourage something that has bad performance (and that too when m...

Transforming an object implicitly

The following code illustrates a pattern I sometimes see, whereby an object is transformed implicitly as it is passed as a parameter across a number of method calls. var o = new MyReferenceType(); DoSomeWorkAndPossiblyModifyO(o); DoYetMoreWorkAndPossiblyFurtherModifyO(o); //now use o... This feels wrong to me (it hardly feels object...

XPath 2.0 : Open implementations

I find it very difficult to find an XPath 2.0 implementation outside of Saxon. What are the XPath 2.0 options in other languages ? Note : This blog post made an interesting summary of the situation in 2007. ...

Please recommend resources to learn design patterns.

There were some questions that got answers with books specifically, but I wonder if there are any other non-book good resources (pages, blogs, online tutorials) to learn design patterns. ...

3 dimensional bin packing algorithms

I'm faced with a 3 dimensional bin packing problem and am currently conducting some preliminary research as to which algorithms/heuristics are currently yielding the best results. Since the problem is NP hard I do not expect to find the optimal solution in every case, but I was wondering: 1) what are the best exact solvers? Branch and...