Why meta-X?
Hello colleagues, friends, foes..
I intend to maintain this blog as much as I can and sort of share my feelings and thoughts, and hopefully facts too. I do want to keep the blog scoped to my work, which involves research and teaching computer networking.
I started with the blog name "meta-networking" but I/we may change it as time goes by. I did partially copycat the name from Prof. Demirbas's blog: http://muratbuffalo.blogspot.com. Meta-X generally refers to something that helps X be X. Sometimes "meta" might be beyond just help, it might be necessary to make X. Meta-networking, in that sense, means the stuff you do to keep the network up and running. Protocols, money, labor, human behavior and other stuff I may be forgetting now all count into meta-networking.
Meta-X also has this other meaning that meta is the residual or sort of like a dual of X. You maintain the meta along with X and use it for "helping" X be X. So, this meaning of meta is more recessive rather than being necessary for X. For that, meta-networking means everything you do for managing the network better. You simulate the network in parallel to the online running network -- a concept we have been exploring in our recent NSF project: http://www.cse.unr.edu/~yuksem/omega.htm. The real thing is already running, but you do this meta stuff to *help* it run better. I admit it is somewhat hard to explain the difference between the former meta and latter here. But, I feel the difference, trust me. :)
Perhaps the earliest and most-known meta-X was meta-programming. Back in 1990s (gosh I am getting old), we were trying to get the C++ compiler do weird stuff while compiling the code. The compiler would print warning/error messages that had some (funny) meaning! Why in the world would you do that, right? But, it was a major "concept" for the advanced programming course in the graduate studies at CS@RPI. I remember using templates and their specializations to make the compiler embark a recursive instantiation of a class and print funny/exciting messages by placing some type-mismatch in an assignment statement in each instantiation. The compiler would go into infinite recursion while trying to instantiate a class! Thankfully, prog languages people got better use of meta-programming and came up with some real application of the concept of doing some meta stuff that does consider your program code as "data": http://en.wikipedia.org/wiki/Metaprogramming. I am glad to see that all those compiler hacks are put in past. I really don't want to deal with any meta-IF or meta-WHILE statements after the age of 40.
Well, I guess this is enough for the first post. I made enough of a fuss about "meta".
I intend to maintain this blog as much as I can and sort of share my feelings and thoughts, and hopefully facts too. I do want to keep the blog scoped to my work, which involves research and teaching computer networking.
I started with the blog name "meta-networking" but I/we may change it as time goes by. I did partially copycat the name from Prof. Demirbas's blog: http://muratbuffalo.blogspot.com. Meta-X generally refers to something that helps X be X. Sometimes "meta" might be beyond just help, it might be necessary to make X. Meta-networking, in that sense, means the stuff you do to keep the network up and running. Protocols, money, labor, human behavior and other stuff I may be forgetting now all count into meta-networking.
Meta-X also has this other meaning that meta is the residual or sort of like a dual of X. You maintain the meta along with X and use it for "helping" X be X. So, this meaning of meta is more recessive rather than being necessary for X. For that, meta-networking means everything you do for managing the network better. You simulate the network in parallel to the online running network -- a concept we have been exploring in our recent NSF project: http://www.cse.unr.edu/~yuksem/omega.htm. The real thing is already running, but you do this meta stuff to *help* it run better. I admit it is somewhat hard to explain the difference between the former meta and latter here. But, I feel the difference, trust me. :)
Perhaps the earliest and most-known meta-X was meta-programming. Back in 1990s (gosh I am getting old), we were trying to get the C++ compiler do weird stuff while compiling the code. The compiler would print warning/error messages that had some (funny) meaning! Why in the world would you do that, right? But, it was a major "concept" for the advanced programming course in the graduate studies at CS@RPI. I remember using templates and their specializations to make the compiler embark a recursive instantiation of a class and print funny/exciting messages by placing some type-mismatch in an assignment statement in each instantiation. The compiler would go into infinite recursion while trying to instantiate a class! Thankfully, prog languages people got better use of meta-programming and came up with some real application of the concept of doing some meta stuff that does consider your program code as "data": http://en.wikipedia.org/wiki/Metaprogramming. I am glad to see that all those compiler hacks are put in past. I really don't want to deal with any meta-IF or meta-WHILE statements after the age of 40.
Well, I guess this is enough for the first post. I made enough of a fuss about "meta".
Comments
Post a Comment