Question: My internship mission consists in recoding an entire software which was coded 8 years ago by a current senior developer of the company in another language.

The only trouble is that I changed the organization of the software from bottom to top. I switched to MVC instead of the "all in a file" pattern for example.

How do I show him my current work without sounding like "your previous work sucked so much, that's why mine is so different" ?

Answer: 
> 
> How do I show him my current work without sounding like "your previous work sucked so much, that's why mine is so different" ?
> 
> 
> 

**Call it version 2.0.** Or 3.0, or 4.0 or whatever. Just make sure that you've incremented the major version number, so that it's clear that this version is significantly different from its predecessor. That way, it's not so much like you're correcting flaws in the previous code as reworking the whole project to meet new goals.

**Make a list of improvements.** How is your version appreciably better than the previous version?

* Does it do the same job 3x faster?
* Does the code now include a suite of unit tests that ensure that it does the right thing?
* Does it have any major new features or capabilities?
* Have you made the code fully compliant with the company coding guidelines?
* Did you rewrite the code using the company's new favorite language?
* Is the code now modular, so that it's easier to test and easier to extend?

In short, focus on what's good about the new version, not what was not-so-good about the previous version. The longer you can make the list of substantial benefits, the harder it will be to argue that the changes aren't improvements. Avoid listing minor changes like bug fixes, though -- you could probably have made those in the existing code without a major rewrite, so minor things will undermine your argument.

**Be prepared for some criticism.** Even though the code was written 8 years ago, the original author is likely still one of the company's subject matter experts on this topic, and he/she may notice some details that others haven't. Accept the criticism in a positive spirit. Take notes so that you'll remember to address all the issues that are raised during the discussion.

**Be prepared for any reaction.** Chances are that the original author will be glad that this old project has been rewritten and will no longer be something they have to answer questions about. Or, they might feel somewhat attached to one of their early projects and sad to see it fall by the wayside. Just be open and honest, answer questions as best you can, listen to what they tell you, and don't take negative comments too personally.
If it was my 8 year old code that you rewrote in a new language, while changing the structure completely: First, I know for a fact that the code that I wrote in 2009 should be rewritten in a different language if the company wants to continue developing it in the long term. And I know that it needs significant changes, because I knew in 2009 that parts of it could be expected to stop working soon. 

My question would be: How much responsibility am I expected to have towards that code? If you changed the language *and* the structure at the same time, that's a brave move. And you are on your own. You want to show me your work? Actually, I'm not interested. It's your code. If it works well, be proud of it. If it doesn't work, your problem. I'm not going to help you. 

What I'm saying is that you are much too late. You might have come to me before you rewrote it. I could have told you what parts of the code are good, what parts are bad because I never had time to do them well, and which parts are ugly because they contain sometimes bizarre workarounds that will make the app stop working if you "fix" the ugly bits. 

You worry about sounding like "your previous work sucked so much, that's why mine is so different". I don't know if that senior developer was an intern eight years ago, or was experienced back then. In the former case, he might think "your code is different, and it sucks just as much or even more". If he was senior back then, he might come up with a list of things you've broken.