1
vote
1answer
81 views

Next steps for developing new product [duplicate]

I was hired about a year ago as the lead (well, really the only) developer on a new project/product we will call product "B". Product B was designed to pursue a new market for the company. This ...
2
votes
1answer
284 views

When not to move a “C style” code to “C++ or Object Oriented” code?

Context I am (part of team A) developing a piece of functionality which depends on new APIs provided by team B. Old APIs (also provided by Team B) are there and this is how they are being used in our ...
50
votes
6answers
4k views

How to manage accidental complexity in software projects

When Murray Gell-Mann was asked how Richard Feynman managed to solve so many hard problems Gell-Mann responded that Feynman had an algorithm: Write down the problem. Think real hard. Write down the ...
6
votes
1answer
795 views

Extreme Programming for a single developer

I've been working with some basic extreme programming concepts for the last two weeks, for a small scale, for-profit, multiplayer, arcade game. I've spent a week developing user stories and ...
0
votes
2answers
188 views

How to design (just the outline) an enterprise class PHP application

For the last year or so, I have been working on a very large application. I am currently on version 17 of it, and every time, I start over with some of the code from before. But now, this is starting ...
-5
votes
4answers
227 views

How can I prepare for the next software paradigm? [duplicate]

Throughout the history of programming whenever a new technology was made a application for it had to be made. E.g. When Android came out Android Apps came out ~ giving millions of dollars in revenue ...
2
votes
2answers
289 views

Graph to show decreasing desirability when taking shortcuts

I'm responsible for creating a presentation to management that details how a system should be refactored or rewritten. We have an existing system that has had production failures and the code base is ...
3
votes
1answer
157 views

When to fracture a web application design into multiple products

Have you had this problem? You are building a complex web application for a target market, and after a while you reach a point in complexity where you can't decide if you are building more than one ...
0
votes
2answers
308 views

What's a good way to share assets between designers and developers? [closed]

Preferably something with project management and version control, and as easy to use as possible. I'm talking mainly about graphic assets, but it can be any output from a designer that needs to be ...
3
votes
4answers
372 views

Should the design take longer than code development? [duplicate]

I once heard that if you spend 90% of your time developing the design of your program the coding part will only take a trivial 10% of the time. I have found a lot more success in spending about 30% ...
7
votes
2answers
296 views

What is the preferred method for an application to get settings which should not be stored in version control?

Let's say an application I'm writing requires a password for something but I don't want that password to be saved in version control (so no hard-coding the password). What I've been doing is creating ...
2
votes
2answers
131 views

Architecting related products for different markets: MEF?

Hopefully, this question is not too open-ended... I have been tasked with taking a 3 year old application (.NET 4.0, WPF, WCF, EF 4, SQL 2008) that was designed for a very specific market X and ...
12
votes
2answers
539 views

Build one to throw away vs Second-system effect

On one hand there is an advice that says "Build one to throw away". Only after finishing a software system and seeing the end product we realize what went wrong in the design phase and understand how ...
2
votes
1answer
227 views

Steps to manage a large project [closed]

Software development is an area where parallel development to its fullest form is very difficult to achieve, although you could get reasonably close with the right design. This is especially true for ...
2
votes
6answers
361 views

How to visualize the design of a program in order to communicate it to others

I am (re-)designing some packages for R, and I am currently working out the necessary functions, objects, both internal and for the interface with the user. I have documented the individual functions ...
6
votes
3answers
481 views

How can I get better at explaining complex software processes to developers?

I'm really struggling with my software specs. I am not a professional programmer but enjoy doing it for fun and made some software that I want to sell later but I'm not happy with the code quality. ...
5
votes
3answers
485 views

What should be the minimal design/scope documentation before development begins?

I am a junior developer working on my own in the programming aspect of projects. I am given a png file with 5-6 of the pages designed, most times in specific detail. From this I'm asked to develop ...
1
vote
1answer
156 views

What are some general guidelines for setting up an iOS project I will want to personally publish but sell in the future?

I have an idea for a personal iOS project that I would like to write and release to the iOS store. I'm the type of developer who enjoys developing and publishing. I want to write quality software ...
6
votes
1answer
178 views

What is the best way to approach visualization projects?

I work on several areas related to information visualization, linked data, computer vision and other stuff, so mainly front-end. I am not really happy with the fact that visualizations take lots of ...
4
votes
2answers
127 views

Maintaining Organization When Designing Software

I've been trying for years to come up with a good way to organize the massive amounts of notes and material I generate when designing, coding, and testing software. My desk is usually overflowing with ...
14
votes
7answers
500 views

Are there general rules or best practices for building a new framework?

I need to start the design and development of a new framework to interact with an open source ECM. This inludes a customized data model to help web site developers interacting with this ECM, so they ...
11
votes
2answers
360 views

Intelligence as a vector quantity

I am reading this wonderful book called "Coders at Work: Reflections on the Craft of Programming" by Peter Seibel and I am at part wherein the conversation is with Joshua Bloch and I found this answer ...
11
votes
5answers
535 views

Is it reasonable to expect knowing the whole stack bottom up?

I am an Sr. developer/architect/Product Manager for embedded systems. The systems that I have had experience with have typically been small to medium size codebases - typically close to 25-30K LOC in ...
0
votes
2answers
254 views

What should I do when my project manager does not care about implementation details?

My project manager, when providing requirements for specific tasks, does not care about the implementation details. Although he has a programming background and has some knowledge of the MVC ...
2
votes
3answers
265 views

Steps to take to create the Product Backlog for starting our project with Scrum

A small team (3 or 4) are working on a fairly big project that might take 1 year to complete. We are basically re-designing an existing software (that had been developer over 5-6 years while being ...
9
votes
5answers
3k views

What to plan before starting development on a project?

Say I've received the specs for a project from a client, and now its time to start developing it. Normally, I just start with the first module (usually user registration) and then go from one module ...
1
vote
6answers
145 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
1answer
104 views

How do you coordinate with interaction designers during implementation? [closed]

Programmers are largely responsible for helping move a product from design to implementation. This process is always full of snags: implementation details rear their ugly head and make parts of the ...
12
votes
8answers
963 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 ...
19
votes
12answers
3k views

Dealing with bad/incomplete/unclear specifications? [duplicate]

I'm working on a project where our dev team gets the specifications from the business part of the company. Both the business management and the IT management require estimates and deadline ...