Sorry for the late reply.... but I have been working on a website of my own - to escape and take a break from the insanity of correcting students code.
( btw, this is O.T. from the topic posted )
Well long ago, when I was learning Java ( before Sun Microsystems was bought by Oracle ) at a community college, I got a really bad impression of Java. I will explain that later, about the community college.
When I first learned Java at this community college, I thought it would be like C++, but I learned it wasn't. In Java, you have no choice but to program code as object oriented. In C++ you can use object oriented methods AND procedural methods, along with using C code as well.
In Java when you compile your program, you dont produce a stand alone executable, what you produce is a .jar file which requires the Java Runtime Environment ( Now , I think its called something else under a different acronym ). I wanted find a Java compiler that would produce a stand alone executable, just like C++ or C compilers produce a stand alone executable from a compiler. I never found one. In the time of this age, Java was a portable language to any computer that had a Java compiler - and that is what I was first sold on to try and learn it. To be specific, in comparison to C++ and C, you could not port anything that was platform specific, because C and C++ are a standardized language by ANSI and ISO. I know that C current standard is C11 ( I dont know what the current standard for C++ is ). But I am mystified , still to this day, why didnt James Gosling ( the inventor of Java ) design a compiler to produce platform specific stand alone executables, tailored to the platform its compiled on, like C or C++? That's the main reason I dropped the ball on Java.
The second problem with Java, is that you could not use Assembler with the code ( I dont know if this has been fixed by Oracle ). You can use Assembly with C and C++, as long as you know what your doing. Java has automatic garbage handling. C and C++ do not have automatic garbage handling. C and C++ have pointers. Java has something like pointers but you have to use a blank instantiation of a object to do this.
The third problem with Java, is that any one can easily reverse engineer your bytecode, back into the original source code. So to prevent that problem, someone wrote a second program which obfuscates it.
There is also the historical fact that long ago, Microsoft took Sun Microsystems to court around the issue of Java. I forget who won the case. Since then
Microsoft has been against any kind of Java implentations on their OS. When Microsoft purchased Mojang, the creators of Minecraft, that game was rewritten in another langauge ( C++? ) which ended the ability for players to use MODs ( via forge I believe ).
So when I read a brief description of UWP, I thought - this sounds better than Oracale's Java, even as a replacement.
The head of the computer science department ( at the time ) while I was at the community college, implemented a course layout that everyone who is
going to learn C++, first had to take a beginning Java class, followed by intermediate Java class, followed by an advanced class of C++. He believed that there was no difference between learning Java and C++. Well I posted this long ago on the newsgroup alt.comp.lang.learn.c-c++ and it raised hell between two groups of programmers who thought it was a good idea and a bad idea. When I went to a 4 year college ( not the one now ), and told a student who was helping me learn C++, his opinion of the program at the community college , was that it was a bad pedagogical plan. His words to me were, " Start with one programming language and finish it before learning another programming language. ". Because of this and all of the other issues that I had discovered with learning Java, kept me away from it. I never learned it. I tossed the text books long ago. "
There was only one other game other than Minecraft that impressed me with Java, for a short while, and that was Runescape by Jagex. Jagex ruined that game, and I stopped playing it.
So the idea of learning UWP intrigues me, but if I am reading posts on that its dead , while other posts say its alive, I am going to have to wait and see what happens.
-----
On another note, I just thought of how I am going to deal with students that hand over hard copy printouts of their code with no comments. I am going to borrow a paper shredder and let them watch in horror as they see their printout become confetti. I will share this idea with the other tutors in the lab.