About Dave Navarro, Jr. -aka- The Basic Guru BasicGuru.Com


Features
My Blog
My Code Collection
My Image Collection
My Resume

About Dave Navarro, Jr.

I could lie and say that I was born a poor boy into a mean world with cruel parents and fought a bitter hard battle to make it to the heights of which I live now. Although some of it is true, you wouldn't likely believe me anyway.

So, let me just say that despite the low points in my life (mostly self-inflicted), I consider myself to be luckier than most. I have a wonderful loving family, a great job and more computing power than most third-world countries.

I am in my mid-thirties (although most times I feel as though I'm nearing fifty). I know absolutely everything (that hasn't changed since high school).

How I got started

I started programming in late 1976. My family lived in Dallas, Texas at the time where my parents owned and operated a couple of Sambo's Restaurants (you remember Sambo's, don't you?). Being a fine upstanding person in the business community, my father was given a TSR-80 Model I Level I computer (serial number ) by Tandy as part of a marketing test. They wanted to see if a 'personal computer' would be useful in business. They gave him a rudimentary accounting package and a payroll package. All he had to do was fill out some report forms they gave him and when the market test was over, he could keep the computer.

The rest is history, Tandy got enough positive feedback that they started selling "Trash 80's" (as they were affectionately called) in 1977. My father's report was positive as well, although the software they gave him screwed up his books and it took too long to load and save data to cassette tape. (What's a floppy?)

The result was that he brought the computer home, where I found it. One day in I was playing a game on it (even though my brother and I were expressly forbidden to touch it) when I accidentally pressed the [BREAK] key. Of course the game stopped and the computer sat there at the:

    READY
    >_

prompt. Suffice it to say that I panicked! I had broken my father's expensive computer (I didn't know he had gotten it for free). Why the heck do they put a key on computers?!? Isn't that like putting a sticker on a T.V. that says "Kick Me Hard"? After a half-hour of sheer panic, it dawned on me to call Radio Shack and see if they could help me fix it over the phone. The salesperson I talked to told me he only knew two things. Type "RUN" and hit or type "LIST" and hit .

So I typed "RUN" and hit the key. And voila! It was working again. But what did this other word, "LIST", do? So, feeling confident, I pressed the key again. This time I typed "LIST" and hit . Suddenly all these words and numbers kept scrolling accross the screen. Too fast for me to read. When they stopped, I saw a whole bunch of other words... PRINT, GOTO, INPUT, and CLS. What did they do?

And thus my destiny was born. There were no books available at the time for learning Basic programming. No schools taught it. If you wanted to be a personal computer programmer you had to figure it all out yourself. And I've spent the last twenty years of my life trying to figure out how it all works. When I do, I'll be certain to let you know.

While attending Middle School in Bethel, Oklahoma I was allowed to spend one class period a day at the high school working on TRS-80 computers to learn BASIC programming. The math teacher in whose class the machines were located had a high-school trig class at the time, so myself and a few other lucky nerds were left to ourselves to work on the machines.

Switching to a "city school" for my high school years (nearby Tecumseh High School had a football team and Bethel did not), I found that I knew more about programming and computers than did my computer teacher. So once again, I was left to myself during class to work on my own projects. By sophomore year the school had installed its first network and I was asked to create database software for enrolling all of the students and making sure that classes weren't overfilled and students got into the necessary classes as well as their electives.

My best friends and I also started the Tecumseh Computer Club, a loose group of students with computers who met once a week to discuss various geeky things. I was elected as the first president of the club and helped to create Tecumseh's first "Computer Faire". We had a less than stellar turnout, but it was pretty exciting anyway.

Eventually I moved back to California (the place of my birth) and during my first year at Santa Barbara City College (to establish residency in the state) I took my first non-BASIC programming class, UCSD Pascal. It was a great class and I learned a lot. Not the least of which that I didn't like programming in Pascal. Seriously, I learned top-down design and structured programming which were absolutely critical.

After establishing residency in California, I transferred to UC Santa Barbara where I mostly wasted a couple of years partying, drinking and skipping classes. Eventually, all of that got old and I decided to actually learn something. I took programming classes in Pascal, C, Ada and Cobol. I even spent a summer doing some Ada programming at a local Air Force base.

Truth be told, the computer classes at UCSB did little to prepare me for being a programmer in the real world. They bore little resemblence to the type of programming I later did at Symantec, Software Publishing Corp, and Everex. What were invaluable were my classes in Philosophy, Drama, Science, advanced Math and Marine Biology.

What I really learned was that taking many different types of classes and trying lots of different things meant that my decision to be a computer geek was right on target. I don't have any regrets and I don't wonder about "what-if's".

My hobbies include reading (science fiction and computer books mostly), writing (I have written articles for a few computer magazines), bowling (don't laugh, I have a 173 average and I'm not even taking it seriously), computer programming (duh, who'da thunk it?), scuba diving, and annoying my bride.

Yup, that's right ladies, I'm taken. Ann Zachman and I met through CompuServe (I was desperate and she was feeling gracious) and after one date I was hooked. She has the most beautiful smile I have ever seen. She worked as a police dispatcher when I first met her, but my "nerdiness" infected her and she's now an author of several Internet related computer books and one of the principal architects of XHTML at the W3C. She has a "blog" page where she says things about me behind my back.

I have a daughter from a previous marriage. Linda Ann Navarro is my absolute pride and joy. She's now in her "terrible teens", but I still manage to get along with her. She's not a nerd like me, preferring to spend her time playing soccer (she's scholarship material), roller-skating and breaking the hearts of all the boys at her school. She does have her own computer though, and like all children, knows more about some computer things than her old man.

Like everyone else, I am relatively new to the Internet. Having only 'discovered' it a few years ago. And while I find most of it to be frivolous (like this site), I do so enjoy visiting other sites and participating in the various Usenet newsgroups.

Working at PowerBASIC

Growing up, learning to program in BASIC, I always had this dream that I would go to work for some big computer company writing programs in BASIC. Making lots of money, becoming famous like Steve Wozniak (yeah right!) and marrying some supermodel who only wanted me for my money.

Well, two out of three aint bad. For six years, I worked for a great company that let me program in BASIC, and I got my supermodel (although she wants me for my brain since I don't have any money).

Working for PowerBASIC was really a dream come true in many ways. Not just that I got to program in BASIC and they paid me for it, but also because I've was able to influence the direction of the BASIC language itself (at least from the point of view of the PowerBASIC implementation). And I've come to understand why many things are the way they are in the language. It's very enlightening.

Over the past few years, since PowerBASIC introduced its first Windows compiler, I've finally started to appreciate Windows from a programmer's point of view (I still hate GUI interfaces and I'll still be using a DOS/Console prompt until the day I die). Many parts of the 32-bit Windows API are fascinating, and in their own way... truly elegant. And the more I work with Linux, I see what DOS should have been (a true 32-bit operating system with Rolls-Royce engine for Power and a command prompt! ).

I created this web site because I believe, after years of experience (and yes, I can program in C/C++, Pascal, and Assembler very well) that BASIC is not what it once was. Indeed, no computer language is truly best (although some can be considered best at certain tasks). I can write in BASIC, anything that can be written in C or C++. And in many cases, with the right tools, it will take me less time to create my version and it will be faster and ship on fewer disks (or take less space if on a CDROM). The efficiency of the code generated by a compiler, any compiler, is in the hands of the compiler designer. No matter what the language being compiled, it's up to the compiler designer to create fast and efficient code on the other end.

No matter what your flavor of BASIC, whether it's the QBASIC interpreter, QuickBASIC compiler, any of the PowerBASIC compilers, or even Visual Basic, there is no task that can not, somehow, be accomplished. You don't have to move to another language to get the job done.

What am I doing now?

In January of 1996, I helped my wife to start an internet consulting company called WebGeek Communications. Her first client was PowerBASIC, Inc. and she created the "PowerBASIC on the Net" web site. Since then, she has been profiled in Woman's Day magazine, been interviewed in Wired and other internet related magazines, and authored/co-authored several internet books.

In 1999, we moved from sunny Northern California to sunny Southwest Florida. As an "Invited Expert" to the World Wide Web Consortium (W3C), Ann spends a lot of time travelling all over the world as an architect of the XHTML web language and writing more books.

Because her schedule is so full, she and I decided that I would take over the day-to-day operation of WebGeek. So, in April of 2000 I quit my job at PowerBASIC, Inc. to run WebGeek, Inc. (we incorporated in 2000 and changed the company name).

Besides creating web sites, WebGeek will offer internet related software and services. BasicGuru is now an official subsidiary of WebGeek, Inc, and will be expanded to offer BASIC programming related software, newsletters, and information.

I'm very excited about things to come!

In Conclusion...

I am a complete nutcase. I admit it. But I am almost always in a great mood and I always have lots of fun. Now if I can just get Ann to stop throwing away all of my underwear with holes in them (underwear just isn't comfortable until you've worn a hole or two in them), life would be perfect.

I can be reached at if you have any comments.


A note about the Basic Guru site. Several other 'gurus' have been contacted, and more pages will be going up. Although things will be a bit slow for a little while.