3 ms·
Depends on your definition of "large" and "migrated", but yes, a number of times. In one case it was a straight rewrite, maintaining the same functionality (fro
by wizofaus 4y ago
Depends on your definition of "large" and "migrated", but yes, a number of times. In one case it was a straight rewrite, maintaining the same functionality (from JS into C#). I'd been anticipating it would take at least 2 or 3 weeks initially (based on how long it took the original JS code to be written, and the level of functionality), but it ended up taking less than a week. It was done wholesale, because it was basically a microservice where all the APIs depended on the same DB backend, and the DB conversion (from dynamo DB to SQL server) was the first bit I did.
I had been planning for long time to do the same for a much larger Java backend project. I'd been going through in my head how to do it piecemeal but the problem was it wasn't just the use of Java I was trying to get away from (though that was the primary motivator - too many things about the tomcat+spring+hibernate stack annoyed me and were a serious drag on productivity) but some bad architectural decisions as well, including the amount of business logic spread throughout various layers etc. Still, if I'd been given the greenlight (I left that role before I had the chance) I reckon I could've knocked it off in a few months. The main challenge was that I would essentially have to maintain the same API for existing mobile clients, and there was a lot wrong with that API (very inconsistent use of IDs for a start, including integer DB identity field IDs that I'd hoped to get rid of). I'd even seriously thought about fixing the API first within the Java version before converting to C#/.NET.
- xwowsersx 4y agoWow, that sounds like fun. In my case, there's no way we'd be able to port over the existing functionality to a different language in any less than a few months - and that would be all the API developers working full time. We're not going to do this because it wouldn't be a wise decision, but still useful to hear other people's experiences. I think we're more likely to switch to a different language/ecosystem for any major new functionality. At this point, we have a massive Python application and Python is quite, well...slow :(