And yes, I have to use Electrum as I need to use some of its features that Sparrow lacks.
Can you go into some more details about these Electrum features that are crucial to you but which Sparrow lacks? Perhaps the same thing can also be achieved with Sparrow and you are just not aware of it or you are not doing it right. It would save you some time and not require doing imports/exports of keys and json files. I am a fan of Electrum myself and I use it. Still, I wouldn't insist on sticking with it if it complicates my setup.
My circumstance is a bit more niche/specific to me. But here are the reasons:
1- I have my electrum server - btc core already setup, and that was a major pain to get working. I do not want to repeat that for Sparrow if I can avoid it. I don't know how the process is for Sparrow-core.
2- It is easier to execute various op codes directly in electrum transactions, which is helpful for certain manual testing of some concepts I am developing. Sparrow supports opcodes, but my understanding is I need to separately upload the script file. That is fine, and in long term will not matter much from a coding perspective, but it is one reason why I chose Electrum initially.
3- Electrum is more mature/widely accepted. This means it has had more eyes on its source code, and is more secure. Open source is only as secure as its thoroughness of code review.
Obsolete factors upon reconsideration:
- Both have lightning now, so this is no longer an issue. I believe Electrum was first though.
- Electrum is coded in python, Sparrow is in Java. This is just a factor as I will end up building an app/plugin that integrates with the base wallet. I originally thought it would be in python, but things are changing on that front, so this is less of a consideration.
Looks like I have to reanalyze this decision a bit.
... this can quickly descend into a wallet comparison which is probably handled better by others elsewhere but in brief:
Both are excellent wallets, I am just noticing the "winds shifting" to Sparrow slightly (pun intended) between their overall superior UI, taproot support, etc.. But it is still possibly too minor to jump to Sparrow for me. Electrum isn't even much worse, it just seems to have some unavoidable technical debt because it is very mature software by crypto standards. The question is the classic mature technical indebted software vs. newcomer starting from the ground up.
We will see which pulls forward, or its fine if both exist, a bit of competition doesn't hurt. Before Sparrow, to me at least, Electrum was the only solid robust yet lightweight, open source, etc. option for a decade. It is helpful to have them keep each other on their toes, as both must guess what issues are most important to users since both have limited dev resources. Ex. Electrum had lightning before Sparrow, Sparrow has taproot before electrum.
For my particular use case, if I had developed my app sooner, Electrum would have made the right call since my app needs lightning. This may be reverse for some other developer on another project. It is awesome the ecosystem has reached a point where it can support multiple robust open source wallet solutions working towards the same overall goal.
From a developer perspective, my plan is to revisit the decision pre development. That is a semi-major decision for the particular app as then the project will be locked in to a degree, unless I figure out how to make it wallet agnostic. But I have some time until then, will see if the dust in next few months, if not, it will be a tough call. That is an entirely other topic though lol.
Ok got sucked into a tangent, well if you read all that, you know my reasons.
