Hacker News new | ask | show | jobs
by bighi 1310 days ago
I think number 1 could be done, but not like Evernote did.

It's been what? 3 years since they released their javascript app, and they still didn't rewrite some important old features. Just last week we got back the option to start writing a note in the title instead of the body.

3 years!

I could write an entire Evernote competitor from scratch in 3 years, as a single developer (as a javascript app, not as multiple native apps).

And they STILL don't have reliable note-synching.

It took them too long, and their app is too crappy. But a GOOD rewrite would have worked just fine.

3 comments

It is much harder to rewrite an existing product since you have to retain compatibility. If the old version of the app was crap then presumably the persistent data structures are also crap, but you can't discard them. So you end up building a compatibility layer or migration process, but in the end you have to support the same general data model as the old version.
A rewrite is not the same as a writing a similar app from scratch.

You need to worry about deciding what functionality to preserve, what to change, and what to throw away. Most rebuilds either fail because they skip this step and the result is inadequate for the job, or they do this step and get bogged down in the minutiae of locking down requirements, digging into edge cases, and stakeholder management.

Why is it so hard to implement apparently simple features? This is surprising to me.