As the other answers have stated, the best way to learn is by doing—in this case, diving in and designing a device from start to finish to get a feel for the processes and steps involved in IoT development.
It's a very similar problem to one which you come across in software engineering/programming—a lot of University courses teach their students computer science, i.e. the theory and concepts behind software development. But, after 3 or 4 years of learning, they're tossed out into the world to find a programming job, and they lack the actual practical skills you need to be a successful developer.
In India, there are claims that only 7% of graduates are actually employable as a software engineer, because:
While the vast numbers of engineering students in the country study their textbooks, give their exams and collect their degrees, it is only when they encounter the real world problems do they realise their shortfall. By then, they have to take extra time in order to skill themselves or suffer unemployment.
I'm sure you can see the parallel here—if you want to enter the field of IoT, you need to be able to understand how to develop a device and the infrastructure it needs.
A few things to consider, though, when you do start making your prototype:
It doesn't need to be revolutionary—as a learning project, there's nothing wrong with doing something simple. The key bit here is to have an achievable, specific goal.
Once you have your goal, break the task into steps. It will be hard; if it's your first project, you're bound to feel a bit lost. The important thing here is to...
- Have a group of people who can help you. If you're at an educational institution, you're in luck—there will be loads of passionate, knowledgeable people. It's almost certain that they'll be interested and wanting to help you; after all, everyone should be their because Computer Science is their passion!
If you can't find anyone who can help, there are always sites for enthusiasts, experts and power users who can give you some suggestions!