Questions tagged [maintenance]

The activities that occur after deployment of a software system. This includes making modifications to released systems, training, operating, and transitioning to support organizations.

207 questions
466
votes
19 answers

I've inherited 200K lines of spaghetti code -- what now?

I hope this isn't too general of a question; I could really use some seasoned advice. I am newly employed as the sole "SW Engineer" in a fairly small shop of scientists who have spent the last 10-20 years cobbling together a vast code base. (It was…
kmote
  • 3,322
  • 6
  • 24
  • 33
367
votes
28 answers

I'm doing 90% maintenance and 10% development, is this normal?

I have just recently started my career as a web developer for a medium sized company. As soon as I started I got the task of expanding an existing application (badly coded, developed by multiple programmers over the years, handles the same tasks in…
TiredProgrammer
  • 321
  • 3
  • 5
  • 7
247
votes
6 answers

Why do dynamic languages make it more difficult to maintain large codebases?

Large codebases are more difficult to maintain when they are written in dynamic languages. At least that's what Yevgeniy Brikman, lead developer bringing the Play Framework to LinkedIn says in a video presentation recorded at JaxConf 2013 (minute…
Jus12
  • 2,501
  • 4
  • 16
  • 8
144
votes
31 answers

How do you dive into large code bases?

What tools and techniques do you use for exploring and learning an unknown code base? I am thinking of tools like grep, ctags, unit-tests, functional test, class-diagram generators, call graphs, code metrics like sloccount, and so on. I'd be…
miku
  • 1,508
  • 4
  • 18
  • 26
124
votes
7 answers

What is the most effective way to add functionality to unfamiliar, structurally unsound code?

This is probably something everyone has to face during the development sooner or later. You have an existing code written by someone else, and you have to extend it to work under new requirements. Sometimes it's simple, but sometimes the modules…
Coder
  • 6,958
  • 5
  • 37
  • 49
88
votes
21 answers

How would you react if someone told you your code is a mess?

I am a good programmer, or so I thought before. I always love to program. And I want to learn many things about programming to make me a better programmer. I studied programming for 1 year and now I am working as a programmer for almost 2 years. So…
newbie
  • 791
  • 2
  • 8
  • 12
76
votes
12 answers

Is there a point to including a "change log" in every code file when you are using version control?

I was under the impression that a version control system eliminated the need to have "change logs" plastered everywhere in the code. I've often seen the continued use of change logs, including big long blocks at the start of stored procedures with…
Wayne Molina
  • 15,644
  • 10
  • 56
  • 87
76
votes
9 answers

How should you deal with a popular project that you no longer want to maintain?

I am the maintainer of a project which has a large non-technical userbase. I've been maintaining it for about 4 years now and adding new features as they've been requested. I'd like to move on to other projects now and stop developing for this…
Mendhak
  • 919
  • 1
  • 7
  • 9
75
votes
7 answers

Writing Tests for Existing Code

Suppose one had a relatively large program (say 900k SLOC in C#), all commented/documented thoroughly, well organized and working well. The entire code base was written by a single senior developer who no longer with the company. All the code is…
Paul
  • 1,025
  • 1
  • 10
  • 14
64
votes
11 answers

How do you stay productive when dealing with extremely badly written code?

I don't have much experience in working in software industry, being self-taught and having participated in open source before deciding to take a job. Now that I work for money, I also have to deal with some unpleasant stuff, which is normal of…
Dan
  • 2,902
  • 1
  • 25
  • 30
62
votes
16 answers

Is the creation of brand new software generally a major part of most programming jobs?

I have worked in software development for over 10 years now, and it's dawning on me that I rarely get to create anything "new". I realize that "new" is a vague term, but I would define it as anything from an obvious new large-scale project to a new…
Jer
  • 2,576
  • 1
  • 20
  • 17
60
votes
18 answers

Working on someone else's code

I have hardly a year's experience in coding. After I started working, most of the time I would be working on someone else's code, either adding new features over the existing ones or modifying the existing features. The guy who has written the…
55
votes
18 answers

How to manage a developer who has poor communication skills

I manage a small team of developers on an application which is in the mid-point of its lifecycle, within a big firm. This unfortunately means there is commonly a 30/70 split of Programming tasks to "other technical work". This work…
djcredo
  • 534
  • 1
  • 6
  • 10
52
votes
5 answers

Does dedicated maintenance work hamper a programmer's career?

The majority of my work over the last three years has largely been around maintaining legacy systems that needed patching up or the occasional revamp before being sold again. I understand the critical role dedicated maintenance programmers have to…
Gyurme
  • 450
  • 4
  • 7
51
votes
8 answers

Should we ever delete data in a database?

I am new to databases and trying to understand the basic concepts. I have learned how to delete data in a database. But one of my friends told me that you should never delete data in a database. Rather, when its no longer needed, it's better to…
user4124
1
2 3
13 14