Archive for the ‘hope for the future’ Category

JOGL, JNI, Cocoa, other stuff too

Tuesday, January 3rd, 2006

As most people know, I am on one of my semi-annual (or rather annual as this year’s going to prove, one hopes) trips to Delhi, or have been rather seeing as I am closer to departing than to arriving, which is probably why inclement weather warnings from the Med/Downcity SafeRide do not bode well for me, and are mildly scary. Oh well so much for winteryness, blizzards and the like. So I realize I haven’t actually updated in a while, and I do not really wish to give too much background, I will entertain certain questions, will elaborate on “shit happened” statements if asked about it nicely by people who I wish to elaborate to. Hmm so the things so far, let’s see: shit happened, became CS166 TA, summer party, more shit happened, exams, flew back home, got bored in Delhi, went to strange place in the hills, shit happened, came back to Delhi sooner than expected, am sitting typing this out, will leave soon. There, that was short and concise, the details are unimportant at best.

Which brings us to the point of this blog entry, JOGL, JNI and Cocoa. Let’s not do this in order, since I know far more about the last than either of the first two, know more about the first than the second, don’t really like either of the first two, and have mixed feelings on the third. The important things is the first and the last ones are impacting my new programming strategy, which isn’t all that different from my old one, and are the first library/language feature type things I am learning in a while, and are thus proving to be more than a little amusing, we’ll see how this comes along, its been ages since I last wrote about computing stuff, and hence my reviews are bound to be more irrational. This is not unexpected, and hence works out pretty well.

Ook, let’s get started with JOGL, not because it is the first thing on the list, which it is, since I don’t really care about the list, but rather because I was trying to decipher JOGL more recently than everything else. History first, JOGL’s supposed to be a project aimed at creating Java bindings for the hitherto unbound OpenGL libraries. I lie, ever so slightly, JOGL does aim to create a Java binding for OpenGL and hardware-accelerated 3D graphics, but this is not new, it has been attempted by people before, has led to such things as GL4Java, and has generally been subsequently abandoned, for reasons unknown. Now I am forced to sympathize with people who abandon these projects, especially since I am not a big fan of Java and to an extent because Java is slow enough to make me more worried about running background processes fast enough than about actual rendering. This could in part be a result of not really understanding the complexities involved in rendering relatively complex 3D imagery. This however does not change the fact that I do not actually like Java, and perhaps the only reason I am working at figuring out JOGL is because the chances of me finding a rational set of likable individuals who’d actually chose to work with me, should I chose to fixate on C or C++, during the course of CS32, are slim to none. JOGL helps I am told, am not completely sure how. So that being said, there are good things about JOGL, things to be proud of, things like a newly implemented natively Java version of GLU which did break backward compatibility with everything written so far, a supposedly simplified interface into the OpenGL libraries, a JSR release which did more to outdate old JOGL applications than everything else combined and such things. JOGL’s documentation proudly states that not all functions within JOGL follow native OpenGL conventions, since Java is different. Java is indeed different, it claims to be fully, or almost fully object oriented, and whenever I have read books on Java or taken classes in said language, the object oriented nature of Java has always been stressed on. Calling JOGL object oriented is similar to calling a C struct an object, the beginnings are there, it sort of fails to completely fit in. Well whoever was creating the library sort of came up with this plan of packaging every GL function in existence into a class known as GL (what else), and every GLU function in existence into a class known as GLU. Using Swing is out, hardware acceleration does not quite work with Swing, AWT, old, dead, and forgotten as it is, is the way of the future according to the creators of JOGL, this depending on your perspective, can be a good or a bad thing. Clearly history in Java world does repeat itself, and hopefully most Java programmers will be working on learning Fotran compiled to their VM and some form of a weird VM assembly language soon enough, seeing as these are things that shall accelerate the future. Of course seeing as Java was originally intended to power toasters, and has in the recent past been used to power everything and including, very nearly including toasters, I am pretty sure all of Java will do a good job of living up to its originally intended use (I want a Java powered toaster, I want one for the cool factor). Somewhere down there, right after all the JOGL experts were done with writing JOGL tutorials, JOGL developers decided net.java.games was not a good place to put all the JOGL packages, and instead placed everything into javax.media.opengl. Sadly enough everything in the package that was formerly known as net.java.games.jogl, is now contained in javax.media.opengl leading to obvious questions about why the project’s still called JOGL. Now if this was all the JOGL developers decided to change we’d be safe, however life’s never that simple. JOGL implements its OGL functionalities by exposing a GLEvent interface which can be sent event messages by GLCanvas. Until recently GLEvent methods used to receive a GLDrawable argument giving them a GL object on which they could draw and do other OpenGL things, somewhere down the line someone subclassed GLDrawable (or rather subinterfaced seeing as GLDrawable and its children are interfaces), came up with an interface named GLAutoDrawable, and changed everything within GLEvent so they took GLAutoDrawable objects instead of taking GLDrawable objects. This is not a major change, not really anyways, it’s merely fact that it is annoying, auto typing and some of the cool features in Eclipse seem to rely on pulling out argument names from how interfaces are implemented, this really does not help. Also while we are on the topic of Eclipse, if there’s someone out there reading this entry, someone who writes libraries for Java, especially if this someone happens to use JNI, please do not name your arguments arg0, arg1, arg2, etc, I know it makes life simpler while writing libraries out, and it is the kind of thing I am more likely than not to do, it does bad things with Eclipse, it is annoying to be faced with method signatures who’s argument names make no sense, and give you no clue as to what you are supposed to supply. Eventually I will get so used to writing JOGL code that it wouldn’t really matter, argument order would be second nature, I hope it would anyways, but while I am still working on getting there, generically named arguments are sucky and do not help anyone. I am not going to go into the problems associated with installing JOGL thanks to the JNI interface, I am however going to speak/bitch about the entire GLU implementation. So let us see, there were a few bright developers working on JOGL, they worked hard, implemented a native version of GLU, implemented funky constructors which allowed GLU objects to figure out GL contexts and other such things by relying on the thread they were created in, fancy stuff, sounds good, is cool, etc. However let us go back to the day before this funky GLU implementation was released, people lived in a different world. GLU was still dependent upon JNI libraries, and was amongst other things, one of the objects you acquired by calling functions on GLDrawable. Most people would expect these functions would still be present in the new funky GLU world, be deprecated perhaps, but their mere existence hurts no one, there’s a GLU object lying around, GLDrawable could just return a new GLU, doesn’t take much, adds almost no computational complexity, and keeps old code running like new. Well the JOGL developers disagree, at the expense of much of the JOGL code that had been in existence before this new funky GLU implementation came into being, the getGLU method was removed from GLDrawable. Now I am not going to complain about how much of an issue this is when you are trying to use JOGL to simultaneously learn OpenGL, much like I am right now, because at the end of the day, reasonably good hackers are supposed to figure these issues out for themselves, a lack of migration documents being the ultimate sign of machoness in the twisted world of hacking geekiness. However JOGL was designed to promote game development in Java, it’s a project hosted by Sun, I am figuring somewhere down the line the powers that be at Sun will come up with this bright plan to integrate parts of JOGL with Java, perhaps the cellphone, toaster, car and whatever else they are putting Java into these days gaming market wants to exploit the power of 3D hardware rendering and use JOGL, I am figuring they would want some of those big evil corporations which make games to try and use their technology to leverage their fancy games into these markets, and I am figuring these big funky game companies won’t rewrite the code for their games every time a new JOGL release comes along, what happens then, if JOGLs to eventually start being backward compatible, what in the world is wrong with starting now. A year ago, my then advisor, who also happened to be my CS professor, preached in class on the evils of backward compatibility, told us about how backward compatibility was bogging parts of Java down (I believe part of this was for generics and Swing), and kept insisting how much cleaner it would be to just throw a lot of the java libraries away. Well, there’s a reason they don’t do that, use tje JSR release of JOGL and you’d rapidly figure out those reasons…

JNI, there’s little to say about it, there’s a reason most Java developers don’t use it, and don’t know much about it anyways. There are probably all of 200 reasons why anyone would ever want to use JNI, I am stuck with working on one of those reasons, and while I haven’t really started working on this thing, I spent some time going through the JNI documentation, preparing myself for when I do have to work on using JNI, and I don’t like it a bit, enough said.

Cocoa, I am back to a Cocoa fixation after I picked up a copy of Aaron Hillegass’s excellently written introduction to the library/language, and owing perhaps to a recent uninterestedness in both C/C++ and Java code (two of my traditional mediums of coding), I have come to appreciate some of the things Cocoa stands for. Cocoa however is scary in that it is VBishly simple in someways, while deceptively hard in others, and as a sufficiently lazy learner it seems to be a good way of missing out on stuff.

Bah I had grand plans to write more about Cocoa, and about Pattern Recognition which I do wholly recommend (I will warn you about weird thought processes generated by said book), about Symbian powered phones, and other stuff, but it’s late at night. I might convince myself to write tomorrow, I might not, read DrunkenBlog and the stuff about NTP in there, perhaps also about Glogg… It has its good points…

Ze Panda
PS: I believe I was supposed to spew out things about the New Year and the holidays which came before and stuff. Imagine generic greetings added onto previous entry.

The Weekend Before Thanksgiving

Saturday, November 19th, 2005

There are many computer languages I have never written anything in (Eiffel anyone, oh there are other too, though I dabbled in some languages in a glorious moment of being bored two years ago, and ended up just seeing what a lot of programming language code looked like, I remember none of what I saw, and the only thing I really remember is going through a weird Prolog tutorial, deciding it was a cool language, and then deciding it was umm weird/hard, I don’t know, I find my C legacy coming back to haunt me too often, C seems to do things a lot of languages seem to be unable to do, and as much as most people complain about it, as a languaage to hack code in, it is amazing. That being said I am not really looking forward to the large amounts of STLed C++ code I am going to be writing over the forthcoming Thanksgiving, like sure there are cool things I am doing over Thanksgiving, and with not too many people around, I plan on getting through some of my readings, write code for my research, turn in early, wake up at a reasonable time, things which this past month of stupidity have made me want to do. However this paragraph is waivering from my original topic, see the one language I have never really written any of, is Pascal, well OK that and COBOL, but not too many people use COBOL anymore, while pascal and the Pascal keyword seem to have much impact on the Windows API and the cult of we write reverse compatible code coders who seem to be controling the Windows API, and it is one of those languages people randomly like to bring up, and I kind of wish I had taken the time to learn more about it back when I was still into the learn new languages thing. So as a part of this CS project I have due soon we were supposed to write a compiler for a language named Blaise, which is simple (thankfully) and has no scoping rules. Now I am ok with not having scoping rules, it really does make the project significantly simpler, and seeing as I have been working on take home midterms through most of this week (I had one mid-term free day in between), I am not going to complain about having a simple project. But anyways, I waiver again, my roomate tells me the entire have declarations on the top of the program file thing is a very Pascallish thing to do, and I will believe him on this, he having written Pascall (and not in Hebrew as opposed to Prolog, of which he has used a Hebrew version), and I having not. Now for those out there who like putting obscure twos together, this would make sense, Blaise is a Pascal like language, and Pascal was named after the French mathematician Blaise Pascal. Me thinks that is cool, me knows most people don’t think it means much, but it’s cool…

I had my second serious concentration meeting with a concentration advisor this past week, different advisor, different concentration, this concentration thing was supposed to be simpler. I am looking at Math-CS now, and someday soon, perhaps over Thanksgiving I plan on penning my reasons for this shift, I promised at least one half of my parents that I would send out an e-mail explaining my current situation, and I guess this is a part of that current situation deal, but it seems like a hard thing to pen down now. During my meeting I was told that my advisor fears my education at Brown is not nearly as broad as it should be. This is an interesting accusation, it has some truth to it, I am not taking any non-concentration courses this semester, and I really enjoyed some of them, as much as I detest writing papers when I am writing them, I find the experience quite gratifying once I am done with this, and I have always spent time complaining about how living with people who do only Math and CS would be boring for a simple lack of discussions in other fields, and I guess figuring out other fields would be good. But I need to settle on a concentration first, and fill out those forms, I thought this was supposed to be easy enough for me, I though I already knew what I was doing, bah…

For those who don’t know about this, the O’Reilly Factor did a rather humorous piece on “debauchery” at Brown, covering SPG, and followed this up by doing an even worse job of covering it for over thirty minutes on his radio show the next day. Not only did he end up calling most students, Ruth Simons, most members of the Brown administration, and pretty much everyone else around a pinhead, but he managed to get large swaths of his facts wrong. If it wasn’t for the fact that the factual inconsistencies and stupid notions in the radio show make me angry, I think it’d be a fun thing to laugh about, and fortunately the debauchery issue is not doing much at Brown. I am still kind of unsure about what would happen if they had massive news reports about this back home, I have a feeling most people, including a lot of whom I was at school with would not be too happy about this “scandalous” revalation about Brown. Bah, it’s amusing, can’t help it, it is amusing… Also knowing like 3 of the people who were “sent” to the hospital, I am pretty sure no ecstacy was involved with them, or with most of the other people, it’s not cheap, people don’t use E, they were mostly too much alcohol, and while that’s not nice either, it does not inspire nearly as many woohooo looksie rich kids acting dumb comments as other things do.

Last year, a guy from Sun’s Solaris Kernel Group, a former Brown student, and a brother to one of our TAs paid us a visit in my CS class. CS classes are usually uninteresting events, but this was fun, he spoke of DTrace, a tool Sun was building into Solaris to help with debugging, and such things, and he spoke of the halting problem in the context of limited memory systems, and of kernels and operating systems in general. Somewhere in there he mentioned things about the IA-32 architecture which I did not completely agree with. We discussed this, he agreed to some of my changes, and I guess I made mistakes on the others, and then he called me a super-nerd. Now back hom this would have been bad, here it was just funny, and another addition to my stories. Well he’s coming back this year, and he’s interviewing for internships with Sun, and I have an urge to try out for this one, which brings me to my current dilemna. Do I remind him of the fact that this happened last year, sending him a funny e-mail with this incident, or umm should I be staid and umm just not tell him about this. I have a feeling both have their good points, and I don’t actually know which of these would be better…

This weekend has been very plaid, I have an exam to blame for this, but umm I had one last weekend too, I guess the relative difficulty of this class counts for something, that and an apparent inability to work for longer than 20 minutes at a stretch. I might try going to a place where I won’t have easy access to a computer later, try doing this there, fewer distractions. I am going to watch the new Harry Potter movie in an hour or so, I haven’t really watched any of the other ones, so this is like a new experience, though I quite liked the fourth book, so perhaps this would be nice, and fun. It seems funny how my weekends go, and how different the activities I engage in seem to be, I spent some time last night (and thus missed out on sleep) discussing economic policies, and other weird things, I spent some time before then, and sometime thereafter, discussing weird things of life, and umm the problem of being born into “academics”, which is how someone chose to describe mine and SCE’s state, and it was a somewhat weird depressing conversation, one of the many I seem to end up having about this topic, and yet I am going to watch this happy (one would hope) movie today, strange.

I might shift to sub-only status for the Help Desk next semester, I am yet to take a conclusive decission on this, but the more I think about this, it seems like a good thing to do. I am going to try and be a TA in the CS department, and shift to sub only status, so I can concentrate on things I like, and on having a weekend. I don’t know, on some days I really love the help desk, then there are these other days, usually dependent on who I am working with, and other factors, when I can’t wait to get out of there, and while it’s a nice way to earn money, it isn’t nearly what I want to do. TLD is going to head off to the warmer Californian climes next semester, he’ll be working for Google for a while, and this would effectively be the end of my current research project. It’s nice in some ways, none of the associated messiness of ending this anyother way, it however does shift my ship-by deadline up to the very near future, and is partially to blame for my spending Thanksgiving coding, but that is fun anyways. He offered me an Indipendent Study if I wish to engage in one, and I guess that’d be nice, I don’t know, I need to make a decission on this. I think it’d be fun to find other research to do, this was kind of fun… However I am still concerned about a perceived weirdness in the CS department when it comes to dealing with me, it’s like I am not really close to any of the “important” students at the CS department, and it’d be nice to be able to talk to them without being made to feel like an outsider, I know most of them well enough, and while not engaged in as many of the CS departments extracurricular activities as most people are, I know my way around, and I can code as well as most of them, perhaps better than some of them, but then again CS Departments aren’t exactly places for hackers to show off.

I watched the fourth Harry Potter movie, and am probably one of the few people who did not like it. As far as I am concerned, there are massive plot holes in there, things that the book covers, important things, not measley subplots which it was OK to avoid. Also the movie Dumbeldore does not do as many Dumbeldorish things as he should, bleh…

This has gotten much too long, more later…

Ze Panda

Weirdness

Sunday, October 23rd, 2005

Perhaps I should not be typing this, perhaps I should not be doing any of the things I have been spending time on this weekend, wait I didn’t actually spend time on much of anything, perhaps I should spend time on things which are not much of anything, perhaps I should stop saying perhaps… I am tired, I am truly and utterly tired, and I am annoyed about things too numerous to list, I seem to be one of the all time greatest sources of humor at this point of time, being laughed at for some of what annoys me, and umm charging penguins are kind of included in that list, me being weird and all. I have stuff on order from Amazon, and I really wish people stopped attributing attributes to me at this point in time. I need to work on my topology midterm, which though not hard is still doing a really good job of making me feel stupid. A lot of things have been doing a good job of that this semester, might have something or nothing to do with everything that is weird in the world. I turn 20 in two days, it’s no different from when I turned 18 or 19, or any of those other big numbers after school, well a little is different, last year I was at college for the first time, I was hoping exciting things would happen, this time I am sort of resigned to the fact that it will be another day, perhaps even a weird one like it was last year. I want to see Lion King, which is playing downtown, but I don’t want to go alone, since a) it is not fun to do so, b) it is safer to go with people, c) it is cheap enough that money is not an excuse for most, d) I do not know what most people’s excuse is, and e) because I am not sure I want to spend that much money on seeing an off-broadway broadway show alone. I also want it to snow, seeing as the days are short and it is chilly already, snow would at least make the world around white, sort of nice, I guess, I don’t know, perhaps also because it would give me an excuse to wear my winter coat, which at present seems like an overkill.

I had an interview with Apple last Thursday, funny how few people know about this, well I don’t know, at that time it just felt like another one of those things I should perhaps try to do, in hopes of being able to prove something, and now it seems like a good idea to hope that I actually get the job. Why would I want that, I am not sure, Caltech, which is where I have wanted to be in the summer seems to make more sense, but seeing that as of now I know absolutely no one in the math department that seems to be one of the plans which is going to fall by the wayside. We discussed parts of this at my interview, how so many of the things I seem to have started fall by the wayside, the OS of long ago featured prominently in my discussions. Interviewers are a funny set of people, most of them are polite, hard to decipher individuals, me and IAN both walked out of the interview feeling befuddled, and yet we cannot share the same fate in that interview, umm well perhaps we can, it just seems strangely improbable.

I need to do topology, I need to stop typing this, perhaps I am going to do that, minimize both this and the window I am writing a story in. Oh people should visit David Lanham, he seems to have really cool background images, or well it is my belief that he has really good desktop backgrounds, and seeing as I have taken to using his pictures as backgrounds I feel it is appropriate that I plug for him. Time to do some of that topology thing, though I am sure I will be back to writing more before I am done, perhaps even before I am done with one additional question…

So that came true, I write this before I am done with one question, perhaps because I received a call and was forced to take it, such being the requirements of calls from home, though I hardly mean to complain about them, they are rare enough, and are somewhat entertaining. Assumptions loom across the world, they are funny things, assumptions that is, everyone makes a few about everyone, I don’t think anyone quite realizes how many things people assume about them, this includes me, but then I think it is simpler to not assume what people assume about me. As TRB once mentioned on one of our walks, back when they still used to happen, assuming is bad, it makes an ass of you and me. Hmm talking about walks, this is perhaps one of the first weekends in a few weeks when I have not walked out and gone on a walk because of sheer inability to understand what exactly being social entails in that particular case. Funny thing being social is, what do you do when someone who hasn’t IMed you in like forever IMs you again, and you are engaged in some deep thought, pause thoughts and answer IM, or ignore the IM and be antisocial, instant messaging, computers, and cellphones have started to pervade my sense of what being social is. The other day, I was told by one of my coworkers that the next generation of computers was going to be on a cellphone, I am not quite sure about how I should react to this development, sure I love computers and can’t actually imagine surviving school or the lack thereof in the absence of one, and every time I tell someone that I don’t really know how to repair their computer, the sadness they show, and the sadness I feel assures me that they are probably the same way, and yet I don’t like the idea of cellphones as computers. My cellphone can already do a billion gazillion things I don’t need for it to, I am not sure I’d want to leave my Powerbook and shift to a cellphone. Perhaps I am no longer cool enough, a parent hinted at this last weekend. I had this person randomly call me at the help desk, and while I was trying to sort his problems out, he began to tell me about how he had programmed stuff for Statistics Canada in Fortran, “back in the day”, and how no one knew about Fortran these days, well someone clearly does, for I do, I have seen Fortran code, I know what made it good for things, and things it sucked at, I don’t like it, but I know of it, and perhaps that really is freakish, this despite the fact that I heard of it in early 1998 in my dad’s lab, while it was being used on what was perhaps state of the art in terms of machine capabilities back then…

I was just told that the fact that someone I know well’s understanding why I compare beds and hard drives is sad. I am still to figure out whether this is because the theory itself is weird, whether because it is geekish, or whether because such a statement automatically implies less than optimal roomkeeping on both of our parts, not sure… We have too much ice cream in this house, which is a good thing for ice cream is good, but bad because a lot of it is owned by people and no one cares to eat any of it, since it is labeled, and that in itself leads to limited amounts of space for keeping more ice cream, thus leading to a weird situation of wanting to buy ice cream so that I could eat it later, and not buying ice cream so the freezer would have space for more important things, ice trays for instance… I bought brie earlier this week, good cheese is good… I use a lot of ‘I’s in these entries, a recent conscious attempt at comparing these values with past conversations seems to indicate the incident rate of ‘I’s is much higher in these entries. This could of course be a result of skewed data dynamics because I kept track of the number of ‘I’s thus screwing up one of the sample spaces, it could also be because these are supposed to compensate for me screaming at certain people, myself for instance…

It is going to be National Novel Writing Month in another 8 days, as my source for such information recently assured me, the month is actually a lot more international than the name would imply. Funny, I have never heard of such a month while back home, though that could be because novel writing was not a big thing amongst my circle of friends. Speaking of circle of friends, what’s with those few people who were “keeping in touch” with me, like has everyone just decided to disappear, ‘coz honestly I couldn’t care less, I have too much work, and this suits me fine, but any cribbing about my disappearance over the winter shall not make me happy…

I just did stuff on my Topology test that made me sort of happy, though there’s lot more stuff to do, so I don’t know how happy I should be. Bah, happiness is weird, it prevents me from doing more work, no wait, it prevents me from doing some of the work I should be doing. Funny, I really haven’t done that much that has been enjoyable this weekend, and yet I have not gotten through too big a proportion of my work. And it’s been raining most of the weekend, cold uncomfortable rain that necessitates the wearing of fleeces and jackets, funny as that is… I wish I took some of the things that concern me more seriously, I wish less people thought I was more intelligent than them, and hence shied away from helping me, oh and I wish I had applied for the fiction writing deadline, I sort of wanted to take that class, bah, missing deadlines…

I might take a seminarish cognitive science class next semester, I am not quite sure why, but I feel like I should, it’s one of those things which I find interesting, and have yet to have taken, and it’s a seminar, so it could potentially be fun. Besides the instructor is another person from the land of the kangaroos, and the last person from the land of the kangaroos was awesomely fun. I am going to be around all of tomorrow, and I want to do work while I am around, and having this lying around is not conducive to sleep, and I should go sleep, soon… The clocks change over soon, which means one of these days I’ll have one less hour to do anything in, this is not fair, there is no reason why anyone, especially someone like Benjamin Franklin should conspire to steal an hour from my already over crowded day, I never conspired to steal things from him, or anyone else…

I need to go sleep, this needs to go online, these requirements are not analogous, but they need to happen…

Ze Panda
Dreaming about weirder things…

Penguins

Wednesday, October 12th, 2005

This was in response to a conversation about Tux and everything else I had yesterday, written late last night, long past when I should have gone to sleep, mostly because I was anoyed by people’s willingness to accept the idea of an angry penguin, it is incomplete and should be considered a work in progress as such.

I may or may not add more to this, I kind of liked the idea…

No penguins were hurt in the making of this entry.

Any resmeblance to any penguins, dead or alive is a figment of your imagination

This is not a good place to find factual information about penguins, might I suggest such things as wikipedia and H2G2. The world is far too naive to accept the reality about penguins

Being a penguin is strange, well somewhat strange anyways. No it is not the bad kind of strange, not the kind of strange which causes butterflies in people’s bellies, to paraphrase that weird human saying, nor the kind which makes you hope the fish did not all run away in search of greener pastures up north, though that is always something you have to fear. As that great penguin Empurus 1 had said many millenia ago, the fittest are the ones who survive. Oh how we wish no one had told that stupid human anything about our philosophies, would have prevented many strifes in certain countries, would have been far more entertaining to watch. No being a penguing is a strange kind of strange, perhaps what you humans, for whom after all this is intended, would call weirdly strange, or that could be a reflection about the kind of language a certain subkind of humans like to use. Sure you look at us, you see us waddling around, doing belly flops (whatever those are, I overheard the term being used in one of those big metal containers your species calls ships, which had come around with another huge group of people so they could gawk at us), “entertaining” you, and you are proud of all those penguins you have in London, Washington DC, Helsinki, and all those other zoos around the world, but like seriously, do you have any idea how expensive it is for one of us to actually find acomodations in those filthy, hot places you call “cities,” and cool such accomodation down to tempratures we can live in, like what’s up with all of you ape and your warm living climates, you are not filthy reptiles, our ancestors already made the leap away from cold bloodedness, cooler climes are so much easier to survive than warmer ones, and don’t even make the energy argument , like what’s up with that, can’t you Homo sapiens, people who think you are the greatest beings of them all generate enough energy to keep yourself alive in winters.

It is all quite funny… People watch us waddle, we watch people gawk, similar effects, the waddling is more fun for us, like what’s with all of those people walking in stiff calculated steps, we can do that, but it’s not nearly half as fun as say walking around our way, or sliding on our bellies, oooh sliding on bellies is fun, good thing we don’t let the young do it, like I can imagine some of those kids, inspired by punk fish, and those weird adults who never grew up, sliding on ice caps which are about to break off, and doing so at immense speeds. I have to admit, I have always been a big fan of speed, but like umm, it’s hard to explain, I know where to slow down, I don’t bump into the other penguins, though I do remember the embarassing accident me and Soink II had all those days ago, when we were both young, and lost in dreams of all those things we could do. Soink II’s in London now, living in that thing you call a zoo, and we call a “human observatory”, observing humans is really quite fun, though I doubt maintaining camouflage gives Soink II much of a chance to slide around, hmm we could pull them out of the observatory, we do that every few years, it’s not like most humans know much about how to recognize our kind, and their minds are so flooble, malleable, changed with the slightest ease, all we need to do is tap in, and woohoo they are changed.

Ooh the human communication device seems to show a picture of a nice penguin sitting on his hind, like what’s wrong with you people, don’t your metal containers observe enough of us we don’t sit on our tush, which is another one of those freakish words your species seems to have been using, no we waddle, we sit on our feet, and we slide on our bellies, like what’s wrong with you people, what the hell is wrong with you.

I guess we really can’t complain though, it would be kind of boring without all those people to entertain us, the strange colors (the bright ones are really cool, black and white, and people who dress like us are just plain old stupid… You cannot confuse us, we do actually know you look nothing like us, and umm your faces similar to ours, your ancestor’s gave up on the beak, bad idea, fish is good for you, eat more of that, and you might actually have better brains.

So yes coming back to the reasons for my communique, like earlier today I was at this thing you people probably call a dining place, awful food and all, no fish, smelt like it had never seen any fresh fish, and had weird food, not the kind of food supposedly intelligent things on two legs should be eating, but anyways, there were these people discussing penguin charges. Now before you fall flat on your face laughing, which was what most of those humans did, every now and then you mindless beings do manage to annoy us enough that we want to cause harm without resorting to technology, like sure zapping a few of your brain cells would be simple, but would require that we waddle down under the ice cap, find our ray gun, and only then zap you, but you know there are all those supposedly intelligent, actually dumb humans who just don’t get it, don’t understand that they are not wanted around, and there’s only so much any self-respecting penguin can take. Like honestly, those people who come trouble us on those warm islands, barely cold enough to survive, like what the hell are we supposed to do, we are trying to make the best of a bad situation and then some weird ape comes by and tries to take advantage of your attempts at being nice. And then there is the famous story which made some of your kind aware of how angry we can get, yes one of us did attack one of your self-important boneheads, what can we say, he was being a bonehead, invading our privacy and all, yes one of us did waddle and belly slide after him, pretending to attack him, it was mostly a warning, but it had to be done, we do not like wars, but it had to be done…

In the way of the world, there are dolphins, and there are us, and then there are the bloody mice. Now no matter what anyone, esecially those stupid cats you seem to own, tells you, mice are the things you should be scared by, they mean no good, they are not evil, but they are scientists, crazy multi-dimensional ones, as one of your great writers, man named Dooglas Adammm, or something to that order, did actually write about this (yes we have translators working on your books, we need to monitor sources of information, and spread disinformation to protect our secrets), but that might have been the result of one too many pan-galactic gargle blaster on a road trip through Europe, and a mice having a few of those, but like he did give you warning of such things.

It’s interesting how much humans laugh at danger, tell them about charging penguins, researching mice, scheming vogons, and all they do is laugh. Not like we do much of anything else, but we laugh at everything, we laugh at matters of importance, because there is little else we can do, we try and avoid them, but as a black and white waddly thing, it’s not like we can go up to one of you humans and ask you to stop doing things, and umm within ourselves, we can settle things, it is simple, don’t like someone, just put them on a break away ice-cap, and they’ll go away, never to trouble you away, that is fun, and it solves problems, and they get to find other fish to eat. Fish, as I stated earlier, is good.

So are all of this Adammses persons sayings true, no not really, he has heard of the Vogons, and he has heard of the mice, most of us, even humans, are multidimensional in one way or the other. See we are not flat, so we live in at least three dimensions, and the 11 or more curled up dimensions in the universe sort of force us to exist in all of them, it is fun, kind of anyways. Penguins do not try imagining the 8 dimensions we are intimately aware of, it is sort of mind bogling, and the few who have tried to in the past have gone completely and utterly insane, not inexplicably so, low dimensional topology is strange enough for most penguins (the kind called normal, they don’t consider me normal, I don’t think they consider most of the world normal), 8 dimensions is not fun. It is to an extent because of all those damn reptiles that we are stuck with this problem, well actually it is the mice, they were scared about people/creatures in the future realizing that the mice were upto no good, and thus not allowing them observation options. The vogons are not as bad as he makes them out to be, some vogon poetry is really good, most of it isn’t. But that I guess is true about all poetry, like Penguin poetry, such a large amount of it is about fish and terns, that you’d think anyone who could express a half sensible sentence about fishes or terns for that matter is a poet, but we all know this cannot be true.