HM Fly can be acquired by:
☀From Celadon city, head west until you reach either a snorlax blocking your path or the bike path entrance and cut the tree before snorlax or the bike path. Head up then to the left. Enter the house and talk to the girl there. She will give you HM Fly.
Fly has no effect outside of battle.