Questions about legacy languages, code, or applications.

learn more… | top users | synonyms

56
votes
14answers
3k views

Forbidding or controlling “Hidden IT…” Who should write and maintain ad-hoc software applications?

Bigger companies usually have the problem, that it is not possible to write all programs employees want (to save time and to optimize processes) due to a lack of staff and money. Then hidden programs ...
56
votes
11answers
2k views

Best Practices for Handing over Legacy Code

In a couple of months a colleague will be moving on to a new project and I will be inheriting one of his projects. To prepare, I have already ordered Michael Feathers' Working Effectively with Legacy ...
45
votes
16answers
4k views

When is code “legacy”?

We've all done it, we've labelled some code (often stuff we've inherited) as "legacy"? But it's still used in the production systems - so is it really legacy? And what makes it legacy? Should we shy ...
41
votes
24answers
4k views

Most common “Y2K-style” bugs today? [closed]

I don't specifically mean date-related issues like 2038, but more generally, bugs that fit the pattern: A generation ago, programmers tended to write code that ass-u-me-d X, which was reasonable at ...
32
votes
2answers
3k views

What is an Anti-Corruption layer, and how is it used?

I'm trying to figure out what the Anti-Corruption layer really means. I know that it's a way to transition/work around legacy code or bad APIs. What I don't understand is how it works and what makes ...
18
votes
6answers
645 views

Is there any hope for writing good code atop a horribly designed database?

Here's my predicament. One of several programs I've recently inherited is built with a horrible database on the backend. The esteemed creators of it apparently did not appreciate relational concepts. ...
17
votes
5answers
584 views

How-to convince company to start documenting for legacy software

It has been less than a year since I joined my current company. Their majority of sales have come from a single product that has been alive since the last 10 years. However, there is minimal (if at ...
17
votes
7answers
702 views

How can a large, Fortran-based number crunching codebase be modernized?

A friend in academia asked me for advice (I'm a C# business application developer). He has a legacy codebase which he wrote in Fortran in the medical imaging field. It does a huge amount of number ...
15
votes
5answers
2k views

What are the key points of Working Effectively with Legacy Code?

I've seen the book Working Effectively with Legacy Code recommended a few times. What are the key points of this book? Is there much more to dealing with legacy code than adding unit/integration ...
15
votes
6answers
552 views

Does adding unit tests make sense for well-known legacy code?

I'm talking about unit tests in the TDD sense. (Not automated "integration", or what you like to call it tests.) Legacy code as in: (C++) code without tests. (see: Michael Feathers' Working ...
15
votes
4answers
1k views

Best practices for retrofitting legacy code with automated tests

I'm about to take on the task of reimplementing an already defined interface (a set of C++ header files) in a relatively large and old code base. Before doing this, I would like to have as complete ...
14
votes
3answers
465 views

How to deal with “software end-of-life” situations?

When a vendor declares that they no longer intend to provide any support or services to a piece of software (and stated the intent to exit the business - offering no upgrade paths), what kind of ...
13
votes
8answers
749 views

How to handle management pushing legacy systems?

I am currently on a paid internship, and have been tasked with maintaining an obsolete system that has been developed by multiple developers (at different times) over the course of the past 5 years. ...
13
votes
4answers
643 views

What issues lead people to use Japanese-specific encodings rather than Unicode?

At work I come across a lot of Japanese text files in Shift-JIS and other encodings. It causes many mojibake (unreadable character) problems for all computer users. Unicode was intended to solve this ...
12
votes
5answers
303 views

Resolving merge conflicts due to refactoring

I got involved in a discussion recently on how to handle refactoring in general (which is an interesting topic in itself). Eventually the following question was brought up: How does one handle merge ...
12
votes
4answers
3k views

Classic ASP to ASP.net or ASP.net MVC

We have a web application which is developed in classic ASP and it evolved over 5 years to its current form which has 100's of pages, huge database and more than 10000 active users going through at ...
11
votes
10answers
1k views

What type of interview questions should you ask for “legacy” programmers?

We have recently been receiving lots of applicants for our open developer positions from people who I like to refer to as "legacy" programmers. I don't like the term "old" because it seems a little ...
11
votes
6answers
907 views

Other than for legacy software, are there reasons for using COBOL?

COBOL is still (heavily?) used for financial computing. It is an old language, and AFAIK most programmers hate, or at least dislike, COBOL. This brings a question: is the only reason COBOL is still ...
11
votes
7answers
1k views

What are the advantages of mainframes? [closed]

The downsides of Mainframes is well trodden ground; expensive, legacy, dwindling community, etc. I'm not particularly interested in the downsides, but I am curious if there are any benefits to ...
10
votes
5answers
372 views

Starting a coherent architecture in a legacy application

I have responsibility for a large Asp.Net based website. It is currently a website (not web application), some windows services and a number of class libraries. The data layer uses a mixture of ...
10
votes
4answers
635 views

How can I update a large legacy codebase to meet specific quality standards?

There is a lot of information about tools and techniques for improving legacy codebases, but I haven't come across any successful real world case studies. Most advice is on the micro level, and while ...
10
votes
2answers
451 views

Adding unit tests to a legacy, plain C project

The title says it all. My company is reusing a legacy firmware project for a microcontroller device, written completely in plain C. There are parts which are obviously wrong and need changing, and ...
10
votes
1answer
414 views

Have unit test generators helped you when working with legacy code?

I am looking at a small (~70kLOC including generated) C# (.NET 4.0, some Silverlight) code-base that has very low test coverage. The code itself works in that it has passed user acceptance testing, ...
8
votes
3answers
209 views

Migration strategies for deprecating in-house scripting language

We have a scripting language that we use internally for many things. It began as a simple evaluation statements for dynamic labels to become a Turing complete language used pervasively throughout our ...
8
votes
3answers
522 views

Ramping Up On Legacy Code

When starting to work on a project with an existing code base, the first thing that needs to be done is usually to understand the application & existing code. Let's assume that the existing code ...
7
votes
5answers
284 views

How to understand and debug legacy software? [duplicate]

Possible Duplicate: I’ve inherited 200K lines of spaghetti code — what now? Not long ago my company placed me in a team that deals with some of the most complex bugs that are in production. ...
6
votes
8answers
439 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 ...
6
votes
4answers
322 views

What would help when refactoring a large method to ensure that I don't break anything?

I'm currently refactoring a part of a large codebase with no unit tests whatsoever. I tried to refactor code the brute way, i.e. by trying to guess what the code is doing and what changes wouldn't ...
6
votes
5answers
353 views

How to deal with warnings in a legacy project

I work on a C++ project that generates bajillions of warnings. Most of the warnings appeared after the code was written: Initially the project used Visual C++ 8, soon switching to 9, but there is ...
6
votes
2answers
485 views

“Guiding” a Domain Expert to Retire from Programming [closed]

I've got a friend who does IT at a local non-profit where they're using a custom web application which is no longer supported by the company who built it. (out of business, support was too expensive, ...
5
votes
5answers
1k views

is Ada really gone?

Do people still use Ada -- (it was mostly used in the Defense Department) Are all applications written in Ada "Legacy"? Does Ada knowledge still sell
4
votes
11answers
470 views

Is it better to spend resources on a skilled team or good process practice?

Which one of these is of more importance? Skilled team or good process practice? When I say skilled, I mean logical, creative members with good coding and testing skills. Good process would be the ...
4
votes
10answers
578 views

What to do when a project is too difficult to continue developing?

As a developer, can you tell your project manager that an application is unworkable? Or, if you're a project manager, how would you need this presented to you in order to be compelled? This isn't ...
4
votes
4answers
300 views

What is the best way to deal with legacy code not in version control?

What is the best way to develop and maintain legacy code not in version control? Adding it to version control is of course the obvious answer, but if you can't, for some reason, what would you do? A ...
4
votes
3answers
266 views

Functional testing before code checkin

I am working on a project with legacy code where it does not have much code coverage. One of the idea to improve that is to enforce a rule that each code check-in must have test, not only test but ...
4
votes
3answers
199 views

How should I go about “overhauling” a large legacy application? [duplicate]

Possible Duplicate: I’ve inherited 200K lines of spaghetti code — what now? For my next project, I've been tasked with "overhauling" a large legacy web application with many parts. It is a ...
4
votes
3answers
199 views

Small refactorings on a poor codebase?

In the last two years I have worked with a poorly written codebase of nearly 40K lines of code. Over that time I have made many small refactorings to improve it and made some bigger, as time permits. ...
4
votes
3answers
126 views

Creating a Performance Model for a Legacy product

I've been given the task for creating a performance model for a legacy product. The product is about 10 years old and has never had any performance requirements or performance models before. Generally ...
3
votes
3answers
183 views

Tips on develop further on a legacy system? [closed]

I was assigned to extend (and eventually maintain) a legacy system (mostly procedural, semi-ball of mud) without MVC. Any tips or suggestions for me going forward? :S
3
votes
2answers
129 views

Deprecated Methods in Code Base

A lot of the code I've been working on recently, both professionally (read: at work) and in other spheres (read: at home, for friends/family/etc, or NOT FOR WORK), has been worked on, redesigned and ...
3
votes
5answers
159 views

New Customer Project - Use Legacy Application or Design Something New

We are starting a new project with a new customer. We have a legacy application circa 1997 that we are planning on using to satisfy the customer's business requirements. I have been on the fence as ...
3
votes
2answers
249 views

Methods to rewrite a program [duplicate]

Possible Duplicates: How to approach refactoring an existing web application? Starting a coherent architecture in a legacy application We have a fidelity system running on the company I ...
3
votes
3answers
115 views

System evolution approach: gradual or cataclysmic?

When working on established systems, I've often found ways to improve a user interface to maximize user efficiency (example: legacy app maintenance screen doesn't allow multi-line operations where ...
3
votes
2answers
214 views

What are the three main technologies for a redesign of a COBOL legacy system

There exists an application that reports financial data of a bank to a national bank (all located in Europe). It is a legacy system that is written mainly in COBOL. Only the user interface is written ...
3
votes
2answers
189 views

How do you approach a new project where the code has already been written? [duplicate]

Possible Duplicate: How do you dive into large code bases? I'm about to take on maintenance and enhancements of a fairly large and complex Java EE project with a Javascript front end. I'm ...
2
votes
5answers
445 views

Why should you document code? [duplicate]

Possible Duplicate: “Comments are a code smell” I am a graduate software developer for an insurance company that uses an old COBOL-like language/flat-file record storage system. ...
2
votes
1answer
181 views

What does it mean to drop support for Internet Explorer 6? [closed]

When Facebook, Youtube, and even Microsoft themselves say that they've "dropped support for IE6", what do they really mean? Youtube still functionally works fine in IE6. If they mean that they've ...
2
votes
2answers
123 views

Starting a recurring project from scratch [duplicate]

We have a project that keeps recurring. The client expects us to run a website twice a year and this is happened for the last year and a half. I took the last working copy and based our latest website ...
2
votes
2answers
528 views

How to unit test Visual Basic 6 legacy code?

I am doing legacy software programming in Visual Basic 6.0. How do I unit test it?
2
votes
2answers
320 views

How do you deal with the details when reading code? [closed]

After reading some projects, I find that it is not the architecture of the software that is really hard to know. It is not hard to figure out the architecture immediately if the project is clearly ...

1 2