v2209 beta

Discussion & Support for xplorer² professional

Moderators: fgagnon, nikos, Site Mods

Kilmatead
Platinum Member
Platinum Member
Posts: 4580
Joined: 2008 Sep 30, 06:52
Location: Dublin

Post by Kilmatead »

In a previous blog Nikos offered this somewhat bizarre explanation of the name ZabaraKatranemia:
The roots of this moniker lie in the previous millenium deep in 1999, where we all had long hair and enjoyed heavy drinking over here at the headquarters. ZabaraKatranemia is the title of a traditional greek song, whose lyrics make as much sense to greek as to non-greek speakers, that is no sense whatsoever! It is all about Zabarakatranemia though, and whatever it is, it has animated the soul of the singer, resulting in a passionate, patriotic rendition. How many other companies do you know having their own hymn?
(The original blog contains a link which is no longer active, and Googling just made it worse [musically] so face value is face value. :wink:)
drac condescendingly wrote:As someone who has been programming for longer than some of you have been alive (started coding using octal - no compilers, no high level language - paper tape was the preferred means of loading software) I think I have experienced almost everything you have in the area of program errors.
Just out of interest, and don't take this the wrong way, if the above statement is true (you realise it's hard to take people with teenybopper avatars seriously), why did you just betray a rather serious misunderstanding of what the windows shell is, how it works and how (all) file-managers must play the game by doing the exact opposite of what you just suggested in order to provide extensibility?
drac wrote:A programmer must anticipate anything and everything a user might do and program a response - often a response that will protect the software from the user - and from other software on the same computer.  The world inside a multitasking computer is like a post apocalyptic scenario with bands of evildoers roaming the landscape, plundering and pillaging.
I'm referring to the shell, not to people running MS Office at the same time as crashing their computer by watching a video. :?

On a historical note, (raping) plundering and pillaging is how western civilisation was born and has continued to survive once you sweep aside the dross of fable that Hobbes was so fond of.  If you remove the socially offensive from life, you effectively remove life itself of its purpose.  In a weird sort of way, the same is true of how the Windows shell paradigm operates: a balanced civil war of shared catastrophe which allows the user the freedom to survive (and, crucially, to suffer) and thus accomplish his own ends of file management.

Interestingly, this early musing of Nikos' pertaining to shell namespace exploring and COM interfacing might illuminate the issue on a more suitably technical level, and better explain why a file manager is not the same kind of application as, say, Notepad, and thus not subject to the same programming approach.
User avatar
drac
Bronze Member
Bronze Member
Posts: 145
Joined: 2013 Jan 08, 00:14

Post by drac »

Kilmatead,

Thank you for the explanation of the ZabKat name.  It is much more interesting than just appending two peoples names.

My Avatar is Dracula - though from a more modern movie than those that starred Bela Lugosi - which is not what I would call "teeny bopper".  Now if it was a vampire from the "Twilight" series I might agree.

I am not offended by your question regarding the Windows Shell.  As I said, I did the bulk of my "nitty gritty" program before Windows existed.  The programming I did afterwards was using a higher level language (FoxPro, VB, TransSQL, etc.) so I did not have to deal with the shell.  I DO know that one should NOT trust the shell to "play nice" and that one should program defensively. I had to do that back in the days before Windows.  When working on large projects with dozens of other programmers, one could not trust that a call to a subprogram or another module would return logical results.

Pillaging and plundering may have been a part of western civilization.  However I like to think that the orderly and LOGICAL world inside a computer has no place for modules which detract from the purpose of that world.  The name we use for such pillagers is "virus", "root kit" or “malware”.  We employ "police" or "armies" to detect and destroy these interlopers.

I think a file manager IS the same, at its basic level, as any other program.  It needs to provide a service, strive for ease of use, be reliable, stable, fast, orderly, affordable, flexible and be able to adapt and evolve as the environment of the computer (OS version) and the needs of its users, change.
Kilmatead
Platinum Member
Platinum Member
Posts: 4580
Joined: 2008 Sep 30, 06:52
Location: Dublin

Post by Kilmatead »

The shell is not an inherently evil milieu filled with little beasties that are out to get us (that's what real-life is for) - it's a multi-layered programmable space (which x2 has no direct control over), wherein a defensive posture only improves the illusion of stability by removing flexibility, and more importantly, functionality - and it can't really be done selectively.  It does not interface in the same manner conceived of back in the procedural day of call-and-return, it's more like a swarm of blind TSR's (to use language you might be more familiar with :wink:) which are application agnostic, but extremely context-acute (if that makes sense) but not intrinsically malicious.

One of Nikos' better blogs (before he started dumbing himself down for the great unwashed) on the subject may be found here, and makes for interesting reading - though it will do little to change your rather stubborn insistence upon a defensive theatricality, which, I'm trying to stress, is not even possible in the traditional manner without doing irreparable damage to the fundamental value of why the shell exists in the first place.

The blog itself is defensive in nature (as its concerns are inherently selfish), but for better objectivity the links provided inside give a broader picture thankfully, and one can twirl away hours delving through the labyrinthine MSDN base.  (Of course, you come out the other side wanting to punch the lad who invented the nonsense term 'namespace' in the gob to set him straight - but unfortunately the internet has not progressed that far just yet. :D)

And unrelated, yet threadful (:wink:): For the record I consider anything related to vampirism, zombies, etc. as a whole to be teenybopperesque, as it's merely adolescent psychological fears wrapped in a veneer of pseudo-historical lore, and the older one gets, the more obvious it becomes.  Now, of course, one could say that about almost everything these days - but those two entities alone are reserved for a special ire due to popularity.  On the other hand, digging up Richard the 3rd and 600 year old resignations of the Antipopes at least go some way to re-legitimising popular culture references these days.  A pity they won't last, though.

And (again, for the record), Raping, Pillaging and Plundering still are fundamental to western civilisation (not 'may have been') - the same physiocultural imperatives are still at play in the so-called modern human soul just as they were in the Byzantine-soul and the Classical-soul before that, and no amount of mental-doping of the populace can change that, and nor should it.  It simply takes a different form on the current page of the social contract is all - the leopard doesn't change its spots, just its tracks - but it's still celebrating the same dance. :shrug: :wink:
User avatar
drac
Bronze Member
Bronze Member
Posts: 145
Joined: 2013 Jan 08, 00:14

Post by drac »

Kilmatead,

You may certainly associate vampires with teenyboppers if you wish, but that is a much more modern linking.  Thinking back to the mid 20th century (which I can, but I do not know if you are old enough) Dracula was a horror movie and there was no such thing as teenyboppers.  So while the current Twilight movie series and the mentality of early pubescent girls are clearly linked today, 50 years ago (which is how long I have been programming) no such link existed.  I got my nickname from my proclivity to stay up into the wee hours of the morning doing programming.  I am still up at those times today, but am not doing any work.  It took a while, but I was able to separate my life from my job  - even though my job was my life back then.

I agree with your comments about the concept of Namespace.  I would also add my personal ultimate evil: the registry.  Thanks to it, gone are the days when one could easily move a program from one computer to another just by copying all the files in that program’s folder tree.  Now, because of the registry, one must reinstall most software when migrating from one computer to another. For a “normal” user with a dozen programs, that is no biggie.  But for techy types (I have over 70 programs currently installed on my computer) that is a nightmare.

There is no loss of flexibility or functionality by programming defensively.  One should, of course ALWAYS program defensively when interfacing with a human. And the same goes for interfacing with another program.  There would be no such thing as SQL injection if programmers acted defensively.  In my web apps I always truncated input to the maximum length I set for a field (I did not trust the browser to do that - and in fact a hacker would not even use a browser to send malicious code), I would check for invalid characters (<, >, etc.) illogical characters (numeric’s in a name) and other reasonableness testing.  That in no way limits flexibility OR functionality.  Allowing someone the ability to destroy data on my employers system is not what I would call improved functionality.  I am not able to speak intelligently about the Shell, so I will not address that topic.  However I would be very surprised if defensive programming of Shell interfaces would have any negative effect (other than a slightly larger program and unnoticeable slowdowns in the program).  I may be violating what I just said, but I cannot imagine that the Shell is much different than those subprograms and modules I worked with.  I pass data to it and it gives me data back.  Sometimes there is no data passed (like when I am requesting input from a user) and sometimes there is no data back (other than a status) like when I am printing.  I will stop now since I may already be too far into (admittedly) unknown territory.

I do agree with Nikos in his blog that If a shell extension (which he correctly names a subroutine) crashes there is nothing the caller can do about it.  My defensive approach is more in looking at data returned to be sure it is logical and appropriate and looks like something I was expecting.  There is nothing I can do about a poorly written subroutine that someone unknown created which crashes the computer.  In my day, I only had to walk to another cubical and hit someone upside the head (figuratively) for their poor coding.  It made me feel better after the hours of testing and debugging it took to find his error - and the issue got corrected forthwith.  

I do not see much raping, pillaging and plundering going on in our current civilization - at least not by roaming hordes of invaders,  These days those acts are perpetrated by individuals and small gangs - especially in large urban areas - but I do not classify them in the same category as Mongols, Huns and Visigoths.  As to the reality that violence is in our soul, I will use a quote from a favorite movie: “The Krell forgot one deadly danger...their own subconscious hate and lust for destruction. The beast. The mindless primitive. Even the Krell must have evolved from that beginning.  And so those mindless beasts of the subconscious...had access to a machine that could never be shut down. The secret devil of every soul on the planet...all set free at once to loot and maim...and take revenge and kill. My poor Krell! After a million years of shining sanity... they could hardly have understood what power was destroying them.”  

As to poorly written modules that are NOT defensive: the news these days is not just about the bones of Richard III.  We see stories of how cyber terrorism can destroy our society and cripple our infrastructure.  I cannot fathom how critical software can be allowed to exist on public networks without proper defensive coding.  If someday soon our society collapses from successful attacks against poorly written code, perhaps you will read, by candlelight, some book about defensive programming.  It will, of course, be too late.  But unlike the Krell, at least YOU will know what destroyed us.
:wink:
Kilmatead
Platinum Member
Platinum Member
Posts: 4580
Joined: 2008 Sep 30, 06:52
Location: Dublin

Post by Kilmatead »

drac wrote:You may certainly associate vampires with teenyboppers if you wish, but that is a much more modern linking.  Thinking back to the mid 20th century Dracula was a horror movie and there was no such thing as teenyboppers.
If you look into it, I think you'll find that the etymology of the word teenybopper itself dates to the mid-20th-century, which (at least in artistic terms) would be considered rather late-modern - so what you see today is not even worth considering on a pseudo-cultural level.  Hence the reason I used the term - one cannot help but enjoy derogatory connotation or two.  :D  My locale educates me towards Bram Stoker, his predictably Victorian interest in mixing occult with a belief in scientific "progress" was shoved down my literate throat when I was young, and this somehow never caught my imagination. :shrug:  One glance into Rabelais' dark light of the cruel wit, and everything else paled by comparison, including the pallor of the vampires themselves.
drac wrote:There is no loss of flexibility or functionality by programming defensively.
Are you, by any chance, what the Americans would call a "Republican"?  I think you nicked their conservative byline. :wink:  But seriously, Nikos referred to DLL's as subroutines, which they are, but how these extensions integrate with the shell is not quite on par with (as I said before) the traditional call-and-return structures inherited from the procedural paradigm.  So while everything in your past cries out for you to envision it as a walled-garden (or, more broadly, the Visigoths at the walls of Rome) - where informational flow can be easily identified, segregated, and thus controlled is where the idea breaks down.  While these DLL's end up in x2 address-space, they're there because a file manager interfaces with the shell on a level far more intimate than, say, Notepad, and while the file manager may pretend to be the suitor in the relationship, it's the feminine wiles of the shell which actually dictate the terms of the relationship ('twas ever thus).  To be properly defensive, x2 would basically have to reject the shell, which by any definition would be a complete loss of flexibility and functionality, there's not really a lot of middle-ground.  Before scoffing at that, try to rise above the "traditional call-and-return structures inherited from the procedural paradigm" which you were taught, and think laterally (as the postmodernists would put it).  Unfortunately understanding how this works also involves the much maligned Registry which most people never really get around to appreciating the beauty of, for all the muck flung in its direction over the years.  Prejudice is learned, as they say, when Experience itself is misunderstood (every now and then the Medieval mind actually conceives of something the Renaissance fails to grasp - thankfully).

However - obviously trying to explain all of that nonsense on a more technical level would perhaps be better suited to a different discussion - or a different century - or at least a different thread. :D  In all fairness, (when I wear my "best-practice" coding beanie) I do agree with you - obviously a defensive stance is preferable and largely necessary in today's ecosystem, but what I'm trying to explain (in a more colourful way than most technocrats tend to appreciate) is that the walls of Rome were breached not simply by the bluntness of Alaric the Goth's antics, but by the sown seeds of the state's more intrinsic decline which happened centuries earlier (intrinsic to its identity) - and that sort of thing (much like urban warfare) defies the stock traditions and logic of defensive programming when they are plastered on like a band-aid against either cancer or religious enlightenment - both will beat the best defences in the end simply because they don't play by the same rules.  So it is with the dark beauty of the Shell matched with the Registry's penchant for freedom - a relationship which is even more crazy than the number of metaphors I'm trying (and failing!) to juggle successfully here. :D  (As Warren Zevon once warbled, "Send lawyers, guns and money / Dad, get me out of this.")
drac wrote:I do not see much raping, pillaging and plundering going on in our current civilization - at least not by roaming hordes of invaders,  These days those acts are perpetrated by individuals and small gangs - especially in large urban areas - but I do not classify them in the same category as Mongols, Huns and Visigoths.
Again, stretch the metaphor laterally - you took it too literally (or not literally enough, depending on who you see wearing the animal skin cloaks of the Goths).  For the sake of the "lateral", I'll suggest it's not urban individuals and small gangs, if you get my meaning - they are but a symptom of the greater-society's inevitable acquiescence to decline, not the cause of it.
drac wrote:But unlike the Krell, at least YOU will know what destroyed us.
I'm afraid the seeds of that were sown a very long time ago - we are but actors playing out the true events (with rather little imagination) which even the Muses on Helicon shed dry tears for.  I am by temperament inclined to see the "contemporary" world as unsympathetically medieval - but Romantic enough to understand that the map is not the territory.  (One must ask one's self, what would the Krell have made of the Matrix generation?  Nietzsche has sneaky habit of becoming a quixotic ghost in the machines of other cultures.)

(On an observational note, I never particularly enjoyed balancing chemical equations in university... I always saw it as being mathematically akin to the radically unmathematical geometric Proofs we were forced to regurgitate and take on faith [especially the unproven ones] - and now 25 years later I find myself doing the same damn thing in an attempt at turning metaphors to mnemonics!  Oi, those self-destructive seeds doth root deep!  And you want me to embrace Defensivism?  Not a hope... wild abandon or bust, baby, ride on 'til morning comes. :D)
User avatar
drac
Bronze Member
Bronze Member
Posts: 145
Joined: 2013 Jan 08, 00:14

Post by drac »

Kilmatead,

Well, alrighty then.

First, I am not a Republican.  Never was.  I am currently what is classified as an Independent - more middle ground - not aligned with either major party.  I understand that conservative views are often associated with more mature citizens, and I have become more conservative in some areas than I used to be.  But that still keeps me solidly in the middle.

The following is not meant to be an excuse for my lack of a well rounded education or a justification for my tech leaning training.  However, as always, you are free to interpret it any way you choose.

Prior to your post above I thought I was doing a pretty good job keeping up with you in the non-technical aspects of our posts.  I consider myself to have a well rounded education - for someone who is skewed sharply to the technical disciplines.  I do fairly well in conversations with people I know.  However, I have the advantage of those people also having been educated in the USA.  I do not pretend to be able to keep up with someone who was educated in a European school system.  Most of my high school and college (university, to you  :D ) training has been technical to the extent it could be while meeting the requirements for graduation.  My degree is in electrical engineering (there was no computer science department back then).  I have had little need (and little use for) knowledge outside of the technical arena other than current events, some history and some knowledge gained through my extreme curiosity on selected subjects.  So I admit to not being able to relate to some of the references you made in your most recent post.  Of course I could get on the internet and look them up, but I do not have the motivation to do that - for most of them.

Having already acknowledged my lack of understanding of the details of the Windows shell, I will not embarrass myself by engaging further on that topic.  I do appreciate all your input and insight on the subject.  As you suggest, my tendency is to reframe your input into a model I am familiar with and understand.  And as you also suggest, I appreciate that those concepts do not fit nicely into my existing frameworks.  However your reference to the Goths and the walls of Rome being breached DID make sense to me.  I also agree with you that the actions of individuals and gangs are a symptom of society - and they have been for many centuries.  It is not JUST a symptom of OUR time.  I liked your reference to the Krell and Matrix.  I was thinking about that when I was writing my post with the Krell references.  I could have also used a Matrix related reference and was thinking about which was most appropriate.  I thought it would have been a bit much to have tried to include both.

Regarding the term “teenybopper”.  You are correct that it was coined in the mid 20th century but it did not come into wide use until several decades later.  And its original meaning evolved over time.  Its original meaning would not have include being a fan of Twilight movies (if they had existed then).  A teenybopper would have no interest in and might be totally against seeing a real vampire movie like “Nosferatu” or “Dracula”.  Those films were far too scary for a sensitive teen girl of the 50’s era.  Anyway, since my nickname was derived from my inclination to stay up late into the night and sleep late into the morning, not because of my interest in or adoration of vampires or movies about them, I am thinking that this issue is well off topic.

As an interesting (to me) footnote regarding our differences - I LOVED doing chemical equations and balancing the chemicals before and after a reaction.  I was good at it (probably because it was logical and mathematical  - two subjects that are dear to my heart) and found it fascinating.  So, while we are opposites in some areas, the world is probably a more complete place having both of us in it.  On the other hand, literature is a topic on which I am relatively ignorant, so your frequent (and I am sure eloquent and witty) literary references are not getting through to me (unless they also relate to movies I have seen).  Hopefully, others who were educated in a system that allows them to fully appreciate your literary knowledge (something, alas, I am not able to claim), have read this thread and were able to keep up with you better than I did.

I have ABSOLUTELY enjoyed participating in this thread - I would not have spent so much time on these posts if I did not.  I have had fun with and have been challenged by your input, intellect, knowledge and sense of humor.  I hope you enjoyed these exchanges as much as I did.
Kilmatead
Platinum Member
Platinum Member
Posts: 4580
Joined: 2008 Sep 30, 06:52
Location: Dublin

Post by Kilmatead »

drac wrote:I am thinking that this issue is well off topic.
If you stick around these tech-slums long enough, you'll learn to adopt the glazed-eyes of "oh Jaysus, there he goes again..." when it comes to my posts.  (Witness this recent observation from an old hand. :D)  I consider any thread that has not gone well "off topic" to be effectively unfinished.  As you might imagine, this (intentionally) upsets some users who only have time for the "clear and the technical", and anything outside of that is just noise.  One wonders what kind of disciplinarian parents they might make when the time comes?  Unsurprisingly, they would find that, too, to be an irrelevant speculation - completely missing the jest.

Thankfully, to the utter dismay of those users, the "powers that be" tolerate my antics since (as Nikos would put it) I can easily slip schizophrenically into a god-awful pedantic personality when necessary in the interests of helping users.  However, once a topic has been answered, I consider anything fair game - so in my cosmology there technically is no such thing as off-topic.  Free-association may not always lead to a clear result, but it is an honest pastime. :wink:  (There is only one regular user here whom I can be fairly sure would have read this entire exchange - the rest would have tuned out a couple of pages ago once the word "beta" stopped being used.)

And, just for the record (and for my sins), I spent more than a few years pretending to be a philosophy major at the University of Texas at Austin.  In reality, of course, we seemed to spend an inordinate amount of time across the border in Nuevo Laredo in search of ridiculously cheap rum and the craziest Virgin Mary church candles known to humanity.  Somewhere between learning to swear by using colourful remarks pertaining to flat-chested señoritas, I must have read a book or two, and some of it stuck.  :shrug:  And, like any self-respecting (and at that age: drunk) deviant, I'd be the first to whip up a 5,000 word lyrical essay as to which influence was the better one to waste one's youth pursuing despite their shared pejorative impact upon the individual's future.

Curiously, I've yet to find the answer to that one - except to say that the corollary to a flat-chested señorita is inevitably a "nice arse".  God works in mysterious ways.  :D
User avatar
drac
Bronze Member
Bronze Member
Posts: 145
Joined: 2013 Jan 08, 00:14

Post by drac »

I wish I knew about your reputation and inclination for the off-topic digression before I started this dialog.  I would not have been so restrained.  I should have known you were a philosophy major - that would have also changed my responses.  You sound more like a literature major - but philosophy also fits well.  I am surprised that you received at least part of your education in Texas (and apparently much more in Mexico).  

Technical discussion is great, and helping users or exchanging technical philosophy and ideas is certainly the main purpose of forums such as this.  However, If that is all we are, then we are missing a fuller life.  I AM a techie - but that is not ALL I am.  I appreciate a challenge that forces me to use my imagination, creativity and powers of communication.  I seldom find someone who is willing to spend so much time and, frankly, who is able to challenge and stimulate me, talking about non-technical topics.  So I appreciate you and  I appreciate “the powers that be” on this forum who have tolerated, if not read, our posts.

I am not sure that I was a great parent in the area of discipline.  Being logical does not leave a lot of room for flexibility. While there may be many good ways to do something, ultimately there is usually a single best way.  Sometimes the “best” way is dependent on ones priorities.  Is the “best” program the one that executes the quickest, the one with the smallest memory footprint or the one that is easiest to maintain?   Back in the day, memory was precious.  4K of core memory (and I do mean magnetic cores) was considered a lot of memory.  So small was as important - or more important - than fast - sometimes.  But I digress I had a clear vision of what was right and what was not when it came to how I expected my children to behave.  Fortunately I was much more tolerant of what they thought or believed - allowing them much leeway in their philosophies and belief systems. Fortunately (again) for my children I have a wife that is the opposite of me in so many ways. My narrow focus in some areas was countered by her tolerance. The children quickly learned that my word was not always the final word.
Post Reply