Sunday, August 14, 2005

Where to Now?

Bloatware Rules OK! No! Not OK at all.

I am not a professional programer, I can write small applications in C, C++, Java, Assembler, Forth, Qbasic and Vbasic. I have always detested the huge overhead required to write Windows programs. The bit required to actually make the window interface for your program and the really crappy way needed to make the message queue function.

I have recently been playing with RapidQ and I quite like it. One of the things I like is that I don't have to play with the messaging queue or the window overhead, that has all been handled in the interpreter.

This version of basic is still interpreted but with a twist, when you compile your program it creates an executable including the interpreter so you can deliver the program as a normal executable program and it will run.

Not only that but the programs are 32 bit programs. It is a bit odd that the compiler is only a 16 bit program.

So what I hear you ask. Well, at my place of work the IT folk in their infinite wisdom have just recently migrated the whole workplace to Citrix and Windows XP on the few desktop machines.

What a load of crap. The security is so tight that we are unable to have our own screen savers, backgrounds or run 16 bit programs. Theoretically we can't FTP anything despite having broadband internet access. All internet access is through port 80 and no others. Most programs can't be installed without Administrator permissions and everything is logged.

However, some programs can be installed. Those that don't try to write to the registry can be installed happily (so much for Microsoft security) and they run fine.

Back to the RapidQ compiler question about why 16 bit is a problem. While my work computer will run the RapidQ programs, it won't run the compiler to make them. Doh! Not a real big problem but, I needed to make a program to help me do my job better so I made the program with the VBasic Macro in Word - Hah! Beat the system with their own software...

And it works great.

Took me weeks to work out how to circumvent their system but I don't give up on a challenge easily. But I managed to build my own program to run my system within their very tight constraints.

The other bits I have had to do to get stuff to work has been real fun. I set up an ftp program on my website so I could work on my stuff from work and I set up a cgi proxy program so I could get to my webmail (works with some kind of 4 digit number on the webmail URL that the security identified as being a port number other than port 80).

Hmmm... No, I don't work in the IT department. No, I don't have Admin access. No, I won't tell you where I work. I might get into trouble and right now I would like to keep this job.

Where was I going with all this? I dunno. Oh, yeah, I was making a point about bloatware, the marketing juggernaught that is Microsoft keep doing uncompetitive deals with large corporations to keep their smaller competitors out of the market and they are aided by the ignorance and inexperience of the IT professional.

One of the problems with the bloatware companies is that they are often big enought to be able to deliver rubbish to the market and never fix it purely because they can get away with it. By keeping out the smaller companies they kill off the competition despite the fact that their products are often better, faster and uses fewer resources.

By doing uncompetitive deals they are admitting that their own crap cannot stand the heat of real competition but they don't care because they have the bulk of the business. I believe that the tide is beginning to turn, it seems to me that Linux is making inroads into the market that actually counts - the developers.

When it turns, it will turn fast. Within a couple of years there will be a swing against Microsoft but they will fight back by releasing their own versions of their current Office suite and other programs to run on Linux. Frankly I hope that the community refuses to accept it but I would actually almost be prepared to bet that the business community will fall for the Microsoft line again.

Some such rubbish as "the industry standard" of software. I always thought that a standard was set by an entire industry and all of them strive to meet it, not one company telling everyone else what the standard is.

Wednesday, June 22, 2005

More Ravings

Well, I just re-read the first post and have no changes I want to make or retractions and I still agree with what I wrote. I gotta tell you that I often change my mind about stuff I write and want to be able to take it back - bit hard to do with an email you already sent.

I did decide that I should clarify one point. I am not against a University education, I think that there are a lot of people who can gain huge benfit from the knowledge but I am 100% against "everybody" getting a University education. I am 100% against Universities "dumbing down" their courses and entry levels so more people can get in and get a degree. What the hell is the point in that? Doesn't that prove the point that more and more people are getting degrees without any knowledge?

The problem seems to stem from the fact that Governments and Unions have decided that it is everbodys right to have a good education and the bean counters have determined that a degree means you get an extra $10,000 in annual starting salary.

I think that it is everybody's right to get an approriate education. This might mean that you do a trade, you might get a University degree or you might just start on the job training. When you can get a University degree by "studying" the Simpsons then clearly a degree means very little. This downgrading of the value of a degree means that more and more University graduates will experience the favourite TAFE joke.

What did the University Graduate say to the TAFE Graduate?

Do you want fries with that?

For our International readers, TAFE (Tertiary Adult Further Education) is an excellent third layer of education that has a significant "hands-on" component to the high level education they deliver but, you cannot get a degree, just an Advanced Diploma. They also are the source of training for apprentices. This means that they get sneered at as "not a real education" and "not to our level" which is a joke when you consider that the average plumber is making about $60,000 per year straight out of TAFE and much more if they have their own business. Most Unversity graduates start on mid $40,000 and then get progressively over paid.

But the bottom line has nothing to do with money, it has to do with job satisfaction. How many plumbers, carpenters, electricians, glaziers etc. leave their jobs to "find themselves" or for a "sea change"? Almost none. How many corporate dudes do that? Far more than we will ever know. If you sell your soul to the corporate god you lose. If you really want to retire wealthy, which seems to be the goal of most people who go to University, you don't need a high income. You only need a reasonable income and everybody can achieve that. I might go into that in later ravings but for now go here for more info. This is going to expand into the Automatic Millionaire training site later.

OK, leaving the money equation out of the decision for now, the best job/career path for you is to do whatever it is that you love to do. If you love it you will do it well, get great satisfaction doing it, enjoy every working day and have to be forced to go on leave. You will be more productive, have better relationships with your families, you wont be agitating for more money, taking sickies, going on strike or any of those other activities which cost our companies and countries so dearly. Find out what you love to do and what you are good at and go do that. If you need a University degree to get you into the field, go to Uni, you might need a TAFE Diploma or and apprenticeship. Whatever, go do whatever you need to be able to do what you love to do. Do not go to University just for a degree to get a higher income, you probably will learn to hate it, drop out and waste too much time and money.

Back to picking on the IT industry.

Here is a case to prove what I have just been raving over. Most of the staff in any IT department do not need a University degree to do what they do. Setting up networks, building computers, adding hardware, installing software, teaching people how to use their software, fixing user errors etc does not need a University degree, this is a job for a high school student. None of that stuff is hard, you just need a little (very little) on the job training and you can do it all day. It equates to the same level of expertise as the lube monkey in the local garage or the storeroom dudes at the supermarket. Now I am sorry if I have offended any of you but it is the truth.

Writing software doesn't need a University degree, it needs a pretty good level of creativity, some basic knowledge of the language and the target hardware and practice. There are plenty of cases to prove that one, lots of kids who have taught themselves how to program at home and churn out some prety good stuff. And then there is the uninspired (and uninspiring) crap that gets dumped on us by large, well funded, marketing machines.

I don't hate large organisations because they are large organisations, I hate them because they suck the soul out of everything they touch. I hate them because they get so fixated on being all things to all people (which is impossible). I hate them because they want to be the best at everything and end up being mediocre at everything. All because they lose their focus on delivering quality to their customer and try to deliver quantity. They forget that there are still quality products made to a standard and quantity products made to a price and that will never change no matter how much they charge. Quality isn't determined by price, cheap crap and expensive crap is still crap. Quality is care in production. It is thinking things through before beginning not patching afterwards. Quality in software is tight, optimised, fast code not fat ugly bloated code which only runs fast because it is on a fast computer.

Try this exercise, partition one of these huge hard drives into 4 partitions, install (in this order) any version of Windows 3 you can find, Linux, Win9x, WinXP. Set up your boot manager and put a large document (in .rtf format) on a floppy disk. Boot into each O/S in turn and then launch the document from the floppy disk. Time the delay to display. Don't know how to do that? Ask, I might even post a link for you.

Anyway, time's up for now. The dog wants to go out and I must go to work.

Sunday, June 12, 2005

Ravings of a Cyber loony

Seems anybody can put their stupidity online for the cyber world to see, read and discuss.

Can't see any good reason not to join in. After all, I too have thoughts and opinions that you are entitled to have access to even if you don't want them. You can just not visit.

Since there will probably only be the two of us reading this stuff I can feel free to write whatever I want and if you get offended, you can leave me to read what I have written until I can't stand the ravings anymore either.

I guess at that stage I will be writing the ravings and not reading them myself or perhaps just flaming myself in the comments section... Fair chance that would be a bit pointless.

So, here we all are, a blank (well nearly) page and nothing to write about... or is there?

Lets begin by attacking the Idiot Technologists who 'control' our computer systems at work. The biggest problem I have always had with any IT staff is that, in general, they have been University trained and have learned very little. The shame of it is that they are almost all pretty bright people but they have been trained to not think.

I began with computers by spending about 4 hours one Sunday afternoon back in July 1984 trying to get a home built computer to write a sentence of my choosing on the screen. Not just direct input from the keyboard but to ask a question, accept input and rewrite it to the screen.

And it all had to be in machine language because there was no Assembler, or any higher level language to use. I had to read a cryptic manual about what codes activated which pins on the CPU. The feeling of 'Yes!', that all programmers know, first came when I got the machine to put the letter 'a' on the screen. Of course, I had no idea of how to save the program to make it reusable so everytime I wanted to use it I had to write it back in again. That computer ended up controlling a full lighting system in a large theatre and the program which did that used every single available input or output pin it had. It still had spare capacity in ram and processing time but there was nothing that could be done to utilise that.

These days programmers and IT folk only want to work through a GUI and an IDE with a nice high level language like C++, Delphi, Java, VisualBasic and the like. They almost never get any where near the command line and never get close to the silicon. Of course this means that they really don't get close enough to the real guts of the computer to understand how they work, their strengths and limitations.

All they really get close to is the limitations of their programming language. The other really interesting thing is that, even with these limitations, I doubt that anyone has really written a program which used the full capabilities of even a 80286. Anytime they want more speed for their programs, they upgrade the computer rather than optimise their programs or algorithms.

Now this doesn't mean that I think all programmers and IT folk are like this, just the bulk of them. There are a few who I have found/read about who operate on a different level. I wouldn't know or know of any where near all of them but they will know who they are and probably would agree with me about what I call 'appliance programmers'. The shame of it is that most of the really good programmers don't have the best paid jobs or work in the most critical areas. They frighten their potential bosses who feel threatened by the massive skill levels.

I will add to this rave later... to be continued...