Constructed languages such as Ido are easy but is there anyway it is helpful. Do they have any purpose in real life other than being an experiment?
Ido still has a small speech community, so by learning Ido you join that community and you can communicate with fellow samideanoj. Note that the community is small, probably eurocentric, and aging. You are engaging in a very special and rare hobby, I'd say.
Second, Ido is to a high degree mutually intelligible with Esperanto, so learning Ido will give you access to Esperanto, too. However, if you want to become an Esperantist, you should of course learn the original Esperanto instead.
Note: the formulation of the question has changed after I submitted my response: originally it was about conlangs with Ido as a specific example. Hence my answer is not so much about Ido in particular, but conlangs in general.
Esperanto is widely spoken all over the world, and is thus practically useful for communication; less widely used languages either have their own enthusiasts' communities (eg toki pona). Other, more obscure languages won't have that.
But they can still be useful in a variety of ways:
- expanding your horizon: learning a new language gets you to think in a different way (see the Sapir-Whorf hypothesis) from your native one. This is one reason toki pona was designed the way it was: the limited vocabulary forces you to shed aspects of meaning that are not essential for what you want to say. Klingon has a very lop-sided vocabulary, which again makes it easy to express some aspects, but hard to reason about others. This applies both to natural languages (through attached cultures) and constructed languages.
- easier language learning: this is especially valid for Esperanto. A conlang is often more regular, so learners can learn about concepts of linguistics without worrying too much about exceptions to myriad rules. There is an actual programme (whose name escapes me) where Esperanto is taught as the first foreign language to school kids. This makes it easier for them to learn subsequent languages and they progress faster (even taking into account the additional time of learning Esperanto)
- in-group communication: if you and your friends share an obscure conlang, you can use it to communicate in secret in public. Or you might find it easier to talk about a shared hobby (eg going to the extreme of jargon use by turning it into a language). Or you could write a secret diary in it.
- more concise expression: in computing you have the concept of DSLs (domain specific languages). You can design a conlang which is suited specifically for a particular purpose (expressing emotions, describing inter-personal relationships, mathematics, etc). Natural languages are general purpose languages, but with a conlang you can hone in on areas that you are interested in, and ignore others. This again relates to linguistic relativity in a way.
- game/recreational use: you can use a conlang as an 'exotic' language for NPC in games to make them more realistic. The player can then pick up the language (or learn it, if it is a more well-known conlang) and communicate with the NPCs. Or you could write songs in a conlang (who understands song lyrics anyway!) Or write poetry.
I personally found Esperanto easy to learn, and when learning other European languages you notice a cross-over in vocabulary. As I learned other languages before, it didn't really give me a better understanding of languages per se (I'd actually studied linguistics by that time already), but I can imagine that it makes it easier to acquire natural languages. I'm not familiar with Ido, so I cannot say anything specifically to that.