Why are you wasting your time learning how to double spend. At this time double spending can no longer occur due to the protection being made by the network. The reason why transactions are taking too long to confirm are due to spam attacks on the network and making a double spending will not make your transactions faster. In the end it is just a waste of time and a waste of bitcoin.
OP is on about double spending with services that accept ZERO confirms..
EG
TX A
send out a TX with a crap fee that you know will delay the Tx for an hour..
direct that TX toward the zero confirm service you want to scam..
then
TX B
when you get the instant service you were hoping for.
send the same unspent input(because its not confirmed) again.. but direct the output back to your wallet with a great fee.. (this is called RBF)
also prep the next tx(TX C) spending the (TXB)(still unconfirmed) to again go back to your wallet again with a great fee.. (this is called CPFP)
to really amp up the pressure for pools to accept txB and reject and never confirm TX A..
then you just wait for TX B to confirm and then TX C to confirm..
while the zero confirm service you want to scam.. gets scammed
yep even segwit does not solve this.
funny part is. core pretended removing malleability would fix double spending zero confirms... yet core then added RBF and CPFP.. making double spending still a big issue that remains unsolved