3ICE and JASS and Programming in general.
Posted: Tue Jun 23, 2009 7:03 am
I learned basic JASS in one hour. It is not hard. It was my first programming language too, so you can't say I had any advantage. (Previous experience helps when learning new languages.) (Actually HTML was my first, but I only knew <i>, <b>, <u> and some more basic tags back then, so it doesn't count. And HTML is not a real programming language, its just markup.)
Knowing JASS so well helped me learn over 20 additional programming languages very quickly. I am still learning new ones, and one day I will switch to Assembly (or ASM for short). I believe every programming language is different, and each and every one has it's own purpose, something they are the best at. It is a generally accepted fact that every task has a best suited programming language for it's solution.
One of the first languages I learned after JASS is vJASS, which I don't use, but can read. It is useful to know vJASS when so many people develop spells and systems in it. Lots of hard-to-do tasks in JASS are simplified in vJASS. Many programming concepts missing from JASS were added through vJASS. And I use tools developed for vJASS when writing JASS code, so that alone is enough reason to know vJASS.
My dream is programming directly in machine code by creating exe files in a hex editor, but I would be alone then, as even the most brave programmers need to use compilers. People say it is a waste of time to use low level programming languages, but I am willing to pay that price for two things: total control over the computer and perfectly optimized code.
Another dream of mine is merging every programming language into one superprogramming language. Many people have tried this, and nobody succeeded so far. I am not going to try it until much later. I don't think I have enough experience now. I will keep learning.
A third dream is writing programs that can run outside of Windows and even DOS, directly at Operating System level. The main problem here is that one CPU brand doesn't understand code written for an other CPU brand. Instruction Set Architectures differ greatly.
Knowing JASS so well helped me learn over 20 additional programming languages very quickly. I am still learning new ones, and one day I will switch to Assembly (or ASM for short). I believe every programming language is different, and each and every one has it's own purpose, something they are the best at. It is a generally accepted fact that every task has a best suited programming language for it's solution.
One of the first languages I learned after JASS is vJASS, which I don't use, but can read. It is useful to know vJASS when so many people develop spells and systems in it. Lots of hard-to-do tasks in JASS are simplified in vJASS. Many programming concepts missing from JASS were added through vJASS. And I use tools developed for vJASS when writing JASS code, so that alone is enough reason to know vJASS.
My dream is programming directly in machine code by creating exe files in a hex editor, but I would be alone then, as even the most brave programmers need to use compilers. People say it is a waste of time to use low level programming languages, but I am willing to pay that price for two things: total control over the computer and perfectly optimized code.
Another dream of mine is merging every programming language into one superprogramming language. Many people have tried this, and nobody succeeded so far. I am not going to try it until much later. I don't think I have enough experience now. I will keep learning.
A third dream is writing programs that can run outside of Windows and even DOS, directly at Operating System level. The main problem here is that one CPU brand doesn't understand code written for an other CPU brand. Instruction Set Architectures differ greatly.