Computer programming is becoming an increasingly desirable skill. It is popular with the older as well as younger generations. Some countries have introduced courses aimed at developing algorithmic thinking as a regular part of the curriculum. In Slovenia the pupils are able to attend an elective course about computing, which has a similar purpose. Therefore it is necessary to research, what the important didactic characteristics of development tools and programming languages are. Java programming language is because of its diverse usage, vast support and didactical flexibility of development tools, a great fundamental for teaching programming. One possible use is the development of applications for the Android operating system, which is among the most widely installed operating systems on mobile devices. Because of its simplicity and versatility it is attractive to the younger population, and it operates on the basis of Java technology. Teaching programming through alternative environments, customized software, and the latest technology enables students to obtain practical knowledge and skills, encourages and motivates them to learn, and simultaneously enriches their lessons.