Stack Exchange Network

Stack Exchange network consists of 174 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.

Visit Stack Exchange

Questions tagged [design]

Questions about problem solving and planning for a solution through software design.

1
vote
3answers
213 views

How do I handle two algorithms that seem the same but different?

I have two algorithms that share a lot of commonalities. One performs an iterative procedure, the other does just the first iteration. The results are, of course, different (one class provides results ...
7
votes
5answers
873 views

Separation of Concern/Single Responsibilty Principle

I've just been reading through the SOLID principles, and this is one I have real difficulty with when designing software. I am relatively new (4 months professionally) at coding. The idea is simply ...
39
votes
2answers
44k views

How would you implement Google Search? [closed]

Supposed you were asked in an interview "How would you implement Google Search?" How would you answer such a question? There might be resources out there that explain how some pieces in Google are ...
23
votes
12answers
11k views

What are the advantages of storing xml in a relational database?

I was poking around the AdventureWorks database today and I noticed that a number of tables (HumanResources.JobCandidate and Sales.Individual for example) have a column which is storing xml data. ...
10
votes
3answers
804 views

Recommendations on integrating DI/IoC container into an existing application

I am now faced with integrating an inversion of control (IoC) container into an existing application, and I'm looking for some recommendations on how that can most easily be accomplished with the ...
11
votes
2answers
500 views

How to organize repetitive code?

My team creates a lot of one-off web forms. Most of these forms just send an e-mail, and a few do a simple database write. Right now, each form lives in its own separate solution in Visual Studio ...
2
votes
1answer
515 views

Question about API and Web application code sharing

This is a design question. I have a multi part application with several user types. There is a user client for the patient that interacts with a web service. There is an API evolving behind the web ...
28
votes
12answers
2k views

What are developer's problems with helpful error messages? [closed]

It continue to astounds me that, in this day and age, products that have years of use under their belt, built by teams of professionals, still to this day - fail to provide helpful error messages to ...
0
votes
3answers
443 views

How can I keep directories in sync

Context: I'm developing software that reproduce the functionality of Windows Home Server Drive Extender, where users use multiple hard disks to prevent data loss. The software exists since Dec-2009, ...
24
votes
8answers
24k views

How do you deal with design in Scrum?

How do you deal with design in Scrum? Do you still have well written design documents for each scrum iteration? Do you just do design notes featuring UML diagrams? Or do you just have well commented ...
31
votes
15answers
2k views

What can programmers learn from the construction industry? [closed]

When talking with colleagues about software design and development principles, I've noticed one of the most common sources for analogies is the construction industry. We build software and we ...
6
votes
4answers
271 views

Good resources for web form design and usability [closed]

Can anyone suggest good resources about web form design and usability for web applications? Especially complex forms with 15+ fields etc.
1
vote
11answers
288 views

Consistency of an object

I tend to keep my objects consistent during their lifetime. In some cases, setting up an object requires multiple calls to different routines. For example, a connection object may operate in this way: ...
12
votes
7answers
2k views

Development Approach: User Interface In or Domain Model Out?

While I've never delivered anything using Smalltalk, my brief time playing with it has definitely left its mark. The only way to describe the experience is MVC the way it was meant to be. ...
3
votes
5answers
907 views

Pointer ownership tips

In some libraries I've seen, a lot of emphasis is put into change of ownership of pointers, like for example a class method that allocates and returns a pointer to an object while relinquishing its ...
38
votes
19answers
6k views

Overused or abused programming techniques [closed]

Are there any techniques in programming that you find to be overused (I.E. used way more excessively than what they should be) or abused, or used a bit for everything, while not being a really good ...
8
votes
4answers
6k views

Is nesting types considered bad practice?

As noted by the title, is nesting types (e.g. enumerated types or structures in a class) considered bad practice or not? When you run Code Analysis in Visual Studio it returns the following message ...
1
vote
4answers
419 views

Good design for a simple site that contains a blog [closed]

What is a good design for a simple web site with mostly static pages and a blog? I am helping a friend build this for their small business. We are looking for a simple approach that can be ...
6
votes
5answers
627 views

Object model design: collections on classes

Consider Train.Passengers, what type would you use for Passengers where passengers are not supposed to be added or removed by the consuming code? I'm using .NET Framework, so this discussion would ...
0
votes
2answers
168 views

Design of input files reading when it comes to defaults/transformations [closed]

Suppose you have an application that reads an input file, on a language that does not support the concept of None. The input is read, parsed, and the contents are stored on a structure for later use. ...
8
votes
8answers
2k views

Use a GUI designer or write it yourself for the desktop?

Writing a GUI for a program has always been a daunting, depressing, and frustrating task. It doesn't matter which language, its extremely hard to get what I want. Especially in compiled languages like ...
6
votes
1answer
343 views

Need to re-build an application - how?

For our main system, we have a small monitor application that sits outside our network and periodically tries to log in to verify the system still works. We have a problem with the monitor though in ...
10
votes
4answers
190 views

Information Spilling Across Object Boundaries

Many times my business objects tend to have situations where information needs to cross object boundaries too often. When doing OO, we want information to be in one object and as much as possible all ...
6
votes
2answers
1k views

How to program for constraints/rules

First the background, during interviews in the past, many times I have been asked to design some or other variation of card game as programming puzzle, and I have tried to design it in OO way, but I ...
2
votes
2answers
758 views

PyQt design issues

I've been working on a my first real project using PyQt lately. I've done just a little bit of work in Qt for C++ but nothing more than just messing around. I've found that the Qt python bindings are ...
14
votes
5answers
1k views

Why can't we capture the design of software more effectively? [closed]

As engineers, we all "design" artifacts (buildings, programs, circuits, molecules...). That's an activity (design-the-verb) that produces some kind of result (design-the-noun). I think we all agree ...
1
vote
3answers
338 views

Materials on structural languages design? [closed]

There is plenty of material about designing software for object oriented programming. Do you know of any good materials for pure structural programming? I am working purely in C and while I can use ...
44
votes
23answers
8k views

Why do good programmers have ugly websites? [closed]

Is this some kind of Murphy's law? Maybe if I want to hire a very good programming ninja I should check out his website as in "Show my your website and I will tell how good you are" EDIT: Go ...
41
votes
7answers
8k views

SOLID principles vs YAGNI

When do the SOLID principles become YAGNI? As programmers we make trade-offs all the time, between complexity, maintainability, time to build and so forth. Amongst others, two of the smartest ...
71
votes
12answers
116k views

SQL: empty string vs NULL value

I know this subject is a bit controversial and there are a lot of various articles/opinions floating around the internet. Unfortunatelly, most of them assume the person doesn't know what the ...
0
votes
2answers
417 views

Distance Education in Computer Science - HCI [closed]

I have been a software engineer / graphic designer for a few years and have recently been considering furthering my education in the field. (It was actually a very generous Christmas present) I would ...
8
votes
5answers
356 views

Is there a better strategy than relying on the compiler to catch errors?

I've been programming in C and C++ for some time, although I would say I'm far from being an expert. For some time, I've been using various strategies to develop my code such as unit tests, test ...
8
votes
1answer
304 views

What is the best wrapping strategy?

I'm planning to integrate an external tool (ffmpeg in my particular case, but it could be anything, in fact, as lolng as its tasks are long running ones). This tool has a lot of command-line ...
13
votes
5answers
892 views

What happened to Alan Cooper's Unified File Model?

For a long time Alan Cooper (in the 3 versions of his book "About Face") has been promoting a "unified file model" to, among other things, dispense with what he calls the most idiotic message box ever ...
6
votes
8answers
667 views

What are important things to remember when reengineering a legacy application?

About to embark on the initial phases of a project to rewrite a legacy application from the ground up (existing business rules will change somewhat, and be extended to incorporate a large number of ...
2
votes
5answers
334 views

how to evaluate own project

I am working on a open source project in pure C, that I have started some time ago, but only recently found time to add some features. I can clearly some weaknesses of my old design, so I am trying to ...
0
votes
4answers
3k views

What is the difference between WCF service and a simple Web service in developing using .NET Framework?

My questions are: What is the difference between WCF service and a simple Web service in .NET Framework? What a WCF Service can do which a .NET Web service cant? In other words, what are the ...
13
votes
0answers
638 views

How do you dive into a big ball of mud? [duplicate]

Possible Duplicate: How do you dive into large code bases? So there is a question about understanding code. Mine is a similar problem. It started when I joined my current org. and like I always ...
5
votes
11answers
776 views

White Boards — Who Uses Them? [closed]

So as both a full-time programmer and hobbyist as well (developing my own things for personal use and maybe to sell one day), I feel that me purchasing a big white board to hang in my room at home or ...
6
votes
2answers
4k views

Abstract classes in package structure

I have an abstract class that will have many implementors. There are, of course, many places to put abstract classes in a Java package structure. Should the abstract class be in the same package as ...
2
votes
10answers
1k views

How do I determine if customers have already received a newsletter?

The problem: When we were sending newsletters to customers, there was no way to confirm if the customer already received the mail. We have come up with two different approaches: (Boss's Idea) Each ...
4
votes
5answers
369 views

What are solutions and tradeoffs to maintain search result consistency in a web application

Consider a web application with a custom search function that must display the results in a paged manner (twenty per page with up to hundreds of thousands of total results) and the ability to drill ...
0
votes
3answers
218 views

Optimizing XML based protocol

We have recently replaced binary based communication protocol with XML one (between browser based client and server). The implementation is almost complete, however I am looking for ways to improve ...
15
votes
4answers
4k views

Where can I find design exercises to work on? [closed]

I feel it's important to continue practicing my problem-solving skills. Writing my own mini-projects is one way, but another is to try and solve problems posted online. It's easy to find interesting ...
0
votes
1answer
79 views

How to manage Inquiries of more than one products?

I can't guess the perfect title of this question, so please read my case and please help me. We have 4 different products. Each is having their own site and database, means they are totally ...
11
votes
2answers
771 views

What are your opinions on “Gamification”? [closed]

I watched an interesting Google Talk video (warning about an hour of your time) about Gamification of whatever you are doing. It's clear that the StackExchange set of sites employ quite a few of ...
11
votes
17answers
3k views

Is there still a need for writing SQL?

With so many ORM tools for most modern languages, is there still a use case for writing and executing SQL in a program, in a language/environment that supports them? If so why? For clarity: I'm not ...
6
votes
4answers
380 views

Freelance web development vs. design

Do web design freelancers (I'm thinking individuals, not companies) typically do all development and design work themselves? What are the options for those with a strong base in back-end web ...
10
votes
7answers
426 views

How common is prototyping as the first stage of development?

I've been taking some software design courses in the past few semesters, and while I see the benefit in a lot of the formalism, I feel like it doesn't tell me anything about the program itself: You ...
9
votes
3answers
3k views

Percentage or Pixel for layouts?

What will you use for a webpage layout? Percentage or pixels? When should one use one over the other?