language-agnostic

How to compute similarity of images with small color differences for font-recognition?

I'm trying to do some simple and fast image comparison of similarity. All of the images are of the same size. The color differences are quite delicate. Currently, I calculate a difference measure by calculating the sum of difference in the R,G and B values between the images, sort of a Hamming distance. That is, Abs(P1.R - P2.R) + Ab...

Which concept from mathematics has helped you the most in development?

It is well known there is a strong link between computer science and mathematics. In looking to improve my own software engineering skill set I'm interested to know what concept from mathematics has helped you to gain deeper understanding of software development as a whole? What would be the biggest bang-for-your-buck concept to learn fr...

Image processing libraries

I recently came back to image processing. Most of what I used previously was Matlab. I'd like to switch to a more convenient and open language. After having used Python library PIL and bitterly understood it had, built-in, only 3x3 and 5x5 filter kernels, I decided to ask here if someone knows of good image processing libraries. What a...

High scalability technology stack

I'm building a webservice that is going to be under ridiculous load (thousands to ten-thousands of queries per second). My normal stack of apache, PHP, memcache and some DB will be able to handle it with a nice load balancer infront and lots of machines, but I'm wondering if there are better solutions. The endpoint will be hit by a beac...

Cross-platform and language (de)serialization

I'm looking for a way to serialize a bunch of C++ structs in the most convenient way so that the serialization is portable across C++ and Java (at a minimum) and across 32bit/64bit, big/little endian platforms. The structures to be serialized just contain data, i.e. they're pure data objects with no state or behavior. The idea being th...

Online games/quizes/contests for programmers/developers

I know some on-line contest for programmers: Top Coder Python Challange : to get to the next level you have to write small program in Python which gives you the solution. In each level you have to use different Python library. You proceed to the next level by manipulating the URL in the browser. Project Euler : write simple program to ...

Non-repeating pseudo random number stream with 'clumping'

I'm looking for a method to generate a pseudorandom stream with a somewhat odd property - I want clumps of nearby numbers. The tricky part is, I can only keep a limited amount of state no matter how large the range is. There are algorithms that give a sequence of results with minimal state (linear congruence?) Clumping means that ...

Defining a runtime environment

I need to define a runtime environment for my development. The first idea is of course not to reinvent the wheel. I downloaded macports, used easy_install, tried fink. I always had problems. Right now, for example, I am not able to compile scipy because the MacPorts installer wants to download and install gcc43, but this does not compile...

Scalable Database System, Critique requested.

I'm looking to build a scalable database solution for the back end of my website. I've been reading about database design lately, and I seem to have developed an idea on my own that might work. I think this is a novel way of maintaining n databases with synchronized data, but I could be wrong. So I'm asking SO to evaluate the idea and te...

MVC Views: Display Logic?

I've been reading this paper: Enforcing Strict Model-View Separation in Template Engines (PDF). It contends that you only need four constructs within the views: attribute reference conditional template inclusion based upon presence/absence of an attribute recursive template references template application to a multi-valued attribute s...

Real World MVC - Dealing with Forms

I'm still somewhat confused by how MVC is supposed to work. Lets say I have a website selling widgets. I have a listing page, /widgets/list and a product page /widgets/product/123. Both of these can use the widget controller and call the list and product methods - simple enough so far. Lets say I also have several other controllers f...

Code Golf: Decision Tree

In Google Code Jam 2009, Round 1B, there is a problem called Decision Tree that lent itself to rather creative solutions. Post your shortest solution; I'll update the Accepted Answer to the current shortest entry on a semi-frequent basis, assuming you didn't just create a new language just to solve this problem. :-P Current rankings: ...

How can we teach managers how Software Development works?

In my current company the management does not understand how software development works. You may have heard the quote: "But why can't we develop this from a external company? Ferrari does not produce their screws themselves!" Which is somewhat correct, but does not apply to Software development. I am getting tired to explain ...

Other uses of weak references?

I know that weak references are a good candidate for memoizing potentially large sets of data, and Wikipedia's article on weak references only lists "keeping track of the current variables being referenced in the application" and the statement "Another use of weak references is in writing a cache". What are some other situations (more s...

Why can you only prepend to lists in functional languages?

I have only used 3 functional languages -- scala, erlang, and haskell, but in all 3 of these, the correct way to build lists is to prepend the new data to the front and then reversing it instead of just appending to the end. Of course, you could append to the lists, but that results in an entirely new list being constructed. Why is this...

What tools do you use for outlining projects?

Whenever I start working on projects that are complex enough that I can't keep it all in my head at once I like to outline how the app should work... I usually hack something like this out in a text editor: # Program is run # check to see if database exists # create database # complain on error, exit # ensure...

What are the top three most important skills new software development graduates tend to be missing?

I am trying to get a handle on the skills gap between software development graduates and the requirements of real world software development companies. What are the top three skills that you have found graduates tend to lack and need to be taught or acquire in your experience? ...

Top three most important skills companies tend to ignore?

Inspired by "What are the top three most important skills new software development graduates tend to be missing?, here's a similar question but with a twist. What are the top three most important skills companies tend to ignore? As in, what qualities and skills, related to software development mind you, that you've noticed some companie...

OOP Design Question - Linking to precursors

I'm writing a program to do a search and export the output. I have three primary objects: Request SearchResults ExportOutput Each of these objects links to its precursor. Ie: ExportOutput -> SearchResults -> Request Is this ok? Should they somehow be more loosely coupled? Clarification: Processes later on do use properties a...

Bare minimum you need to work for an open source project

I have recently started working on some open source project which I found relevant to my interests. During this initiation period I came across some terminologies/stuff that I am not acquainted with, like configure, tool chain, binutils, etc. which I agree depends upon the type of project you are working on. Now my question is, are...