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

learn more… | top users | synonyms (1)

0
votes
7answers
319 views

Vector operations: vec1.dot(vec2) vs vec1 * vec2 vs dot(vec1, vec2)

What's your preferred way to implement/use vector operations? vec1.dot(vec2) allows to reuse vec1 but is hard to read for longer equations dot(vec1, vec2) A friend of mine prefers this as "dot" ...
0
votes
1answer
300 views

Evolution of my MVC design with new UI complexity

I have a desktop instrumentation application in MVC. Currently I had 2 versions of the application, thus 2 views and 2 controllers, each having common code in a base class. The views react directly to ...
19
votes
18answers
1k views

What order do you develop program layers?

I liked the question about favorite program layer: What is your favorite program layer to work on? What order do you build them in or do different team members develop corresponding parts ...
6
votes
3answers
693 views

Avoid having an initialization method

I have this existing code where they have a class and an initialization method in that class. It is expected that once the object of the class is created, they need to call initialize on it. Reason ...
16
votes
18answers
995 views

What do you look at first: the code or the design?

If you've just been introduced to a new project, what's the first thing you look for to get an idea of how it works? Do you look for the design first? If there is a design, what do you look for in ...
1
vote
4answers
2k views

When designing an application around Model-View-Controller (MVC), what is in your toolbox?

There are a lot of great explanations for what the Model-View-Controller design pattern is, but I am having trouble finding good resources showing how to use it in practice. So, when you are starting ...
6
votes
11answers
699 views

Designing the perfect range literal

I've been thinking on how I would go about designing the "perfect" range literal if I were to do design a language. For you that don't know know a range literal in a statement that represents a range ...
5
votes
3answers
462 views

How to learn/become capable of providing quality app design?

I'm interested in things a programmer should learn/know to provide extremely good application architecture design. As known any design can be regarded as good one for certain circumstances but when ...
4
votes
2answers
6k views

ASP.NET MVC 3 (C#) Software Architecture

I am starting on a relatively large and ambitious ASP.NET MVC 3 project and just thinking about the best way to organize my code. The project is basically going to be a general management system that ...
6
votes
2answers
248 views

Should the provider of an interface also provide a mock implementation for testing?

We wasted a lot of time on our last integration test on a bug that I think should have been found in unit testing. The problem was that an interface / service we called behaved different than we ...
6
votes
2answers
706 views

What does “abstractions should not depend on details” actually mean?

Most readers will be familiar with Bob Martin's famous dependency inversion principle, which states - High-level modules should not depend on low-level modules. Both should depend on abstractions ...
1
vote
3answers
286 views

How do you organize a large data layer in a project?

I have a data layer that strictly interacts with the database and returns the result into a model. I have an asynchronous connection with the DB so sometimes I have to chain results where I have to ...
6
votes
8answers
295 views

What tools do you as [web] programmers use to help your design skills?

As a programmer, I enjoy embarking on small personal projects and I have a load of open source scripts that I host on github. I am very much a programmer and not a designer. However, it is ...
1
vote
6answers
163 views

Best opinion to give a potential client

I have a friend that works for a company. They use a software product that is aged, and written in Delphi. There are concerns at this company about the life of the software company that provides the ...
1
vote
2answers
260 views

Is there such a thing these days as programming in the small?

With all the programming languages that are out there, what exactly does it mean to program in the small and is it still possible, without the possibility of re-purposing to the large. The original ...
4
votes
7answers
277 views

Once and only once - with more lines of code

I have an ugly bit of code - essentially iteration over some data structures where the meat of the action was changing, but the iteration code stayed same. The iteration constituted the bulk of code, ...
3
votes
2answers
732 views

Designing tool for C#

I have seen few developers use a tool for designing their application where they simply dragged needed elements (classes, variables, objects) and just did magic work. Then there was a button to ...
2
votes
1answer
149 views

Application internal design VS Web application design

I come from the web application development and I try to make a small desktop application. I am looking for a good way to build the skeleton of my desktop application. From the web design, the ...
8
votes
8answers
9k views

Constructor should generally not call methods

I described to a colleague why a constructor calling a method can be an antipattern. example (in my rusty C++) class C { public : C(int foo); void setFoo(int foo); private: int foo; } ...
8
votes
1answer
436 views

When is a glue or management class doing too much?

I'm prone to building centralized classes that manage the other classes in my designs. It doesn't store everything itself, but most data requests would go to the "manager" first. While looking at an ...
1
vote
3answers
192 views
1
vote
1answer
83 views

Result class dependency

I have an object containing the results of a computation. This computation is performed in a function which accepts an input object and returns the result object. The result object has a print ...
6
votes
8answers
1k 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 ...
1
vote
3answers
282 views

What is the general definition of something that can be included or excluded?

When an application presents a user with a list of items, it's pretty common that it permits the user to filter the items. Often a 'filter' feature is implemented as a set of include or exclude rules. ...
12
votes
6answers
656 views

I know how to program, and how to learn how to program, but how/where do you learn how to make systems properly?

There are many things that need to be considered when making a system, let's take for example a web based system where users log in and interact with each other, creating and editing content. Now I ...
5
votes
2answers
96 views

Resources on how to relate structured and semi- / un-structured information

I don't have a great background in information organisation / retrieval, but I know of a few ways of dealing with the problem. For structured information, it's possible to go OOish - everything ...
2
votes
3answers
185 views

Using regular Java classes in Java web apps

I'm work on a simple blogging web application using Java and MySQL as the database backend. I'm implementing the whole application using plain HTML and servlets. I'm using a Java class with static ...
9
votes
6answers
947 views

Ever taught yourself drawing/art skills? [closed]

I often see programmers advise non-tech people that they should 'just learn to code' if they want to execute their big idea, saying it's not that hard to get the ball rolling. However, while as ...
2
votes
3answers
548 views

Embedded Web Server Vs External Web Server

So I've thought of creating a web application in either Lisp or another functional language and was thinking of embedding the web server into the application (have my application handle the HTTP ...
7
votes
4answers
238 views

Learning graphical design as a developer [closed]

I'm mostly a developer and have been offered a job as webmaster. It's likely that I'll be asked to make some cosmetic changes to a website every now and then. Has anyone made this transition? If so, ...
6
votes
10answers
351 views

What is the term that means “keeping the arguments for different API calls as similar as possible”?

There is a word which I can never remember... it expresses a design goal that API calls (or functions or methods or whatever) should be as similar as reasonably possible in their argument patterns. ...
8
votes
9answers
982 views

Removing hard-coded values and defensive design vs YAGNI

First a bit of background. I'm coding a lookup from Age -> Rate. There are 7 age brackets so the lookup table is 3 columns (From|To|Rate) with 7 rows. The values rarely change - they are legislated ...
3
votes
3answers
583 views

How to make an app more intuitive? [closed]

In the industry, there are few standard checklists on how to make a web application more : Scalable Easy to understand/maintain Perform better Robust etc. etc. Are there any standard checklists ...
3
votes
4answers
146 views

to what level should the drawn design match the real web site

I am working on a web site. The client has drawn it in Microsoft Publisher, and I am using this drawing as a working graphical design. The problem is that there are a lot of places on the web site ...
12
votes
8answers
1k views

How to explain bad software to non-technical people? [closed]

In discussing software development with non-technical people (customers, business owners, project sponsors, etc.), I often resort to analogies and metaphors. It's relatively easy and effective to use ...
6
votes
3answers
393 views

Are two database trips reasonable for a login system?

I am designing a login system for a project, and have an issue about it requiring two trips to the database when a user logs in. User types in username and password Database is polled and password ...
5
votes
4answers
882 views

Is it a good idea to dynamically position and size controls on a form or statically set them?

I've worked mostly with interface building tools such as xCode's Interface Builder and Visual Studio's environment to place forms and position them on screens. But I'm finding that with my latest ...
2
votes
4answers
195 views

Models, controllers, and code reuse

I have a blog where users can post comments. When creating a comment, various things happen: creating the comment object, associations, persisting sending notification emails to post's author ...
6
votes
7answers
137 views

responsibility for storage

A colleague and I were brainstorming about where to put the responsibility of an object to store itself on the disk in our own file format. There are basically two choices: object.store(file) ...
6
votes
3answers
535 views

Why it is not recommended to have set-only property?

Today at work one of my colleague reviewed my code, and suggested me to remove set-only property and use method insted. As we both were busy with other stuffs, he told me to look at Property Design ...
4
votes
2answers
660 views

What are the best patterns/designs for stateful API development?

I am about to implement a API for my TCP/IP server written in Java. Right now I have a temporary method that takes a String, executes a command based on the String and returns a String basically like ...
10
votes
6answers
3k views

Are Java's public fields just a tragic historical design flaw at this point?

It seems to be Java orthodoxy at this point that one should basically never use public fields for object state. (I don't necessarily agree, but that's not relevant to my question.) Given that, would ...
2
votes
1answer
153 views

Why does F. Wagner consider “NOT (AI_LARGER_THAN_8.1)” to be ambiguous?

In his article on Virtual Environments (a part of his VFSM specification method) Ferdinand Wagner describes some new ways of thinking about Boolean Algebra as a software design tool. On page 4 of ...
8
votes
7answers
1k views

HTML/CSS plagiarism

I'm facing an issue here. A customer asked me to copy an exact site, and even though I'm trying to convince him of going for a new design he does not accept it. He loves this design so much (on a side ...
0
votes
1answer
162 views

How to …set up new Java environment - largely interfaces

Looks like I need to setup a new Java environment for some interfaces we need to build. Say our system is X and we need to interfaces to systems A, B and C. Then we will be writing interfaces X-A, ...
1
vote
1answer
99 views

Declarative input language strategies

I need to develop a simple declarative language to drive an application. I have various computational modules, some of them depending on other modules which also need setup. The problem is that I ...
0
votes
3answers
133 views

designing classes with similar goal but widely different decisional core

I am puzzled on how to model this situation. Suppose you have an algorithm operating in a loop. At every loop, a procedure P must take place, whose role is to modify an input data I into an output ...
6
votes
2answers
860 views

How would you TDD the functionality of getting the corresponding process of a running windows service?

Purpose Over the last year or more I've been learning unit testing via books I've read recently like The Art of Unit Testing, Working Effectively with Legacy Code, and others. I've also been using ...
6
votes
2answers
313 views

How can a programmer work effectively with a remote web designer

I'm a programmer who understand html & css, but got no taste. My company decided to redesign our e-commerce website with new UI and move to ASP.Net MVC. They want a really good design, so they ...
10
votes
3answers
356 views

How do you conquer the challenge of designing for large screen real-estate?

This question is a bit more subjective, but I'm hoping to get some new perspective. I'm so used to designing for a certain screen size (typically 1024x768) that I find that size to not be a problem. ...