TechRich

Filed Under (GFX, Random.scribbles, work.BLOG) by WildFire on 09-10-2006

Technology and the products of innovation should not only be for the rich.

Rich financially and… well, intellectually.

It should be for everyone.

Including my pet.

And my pet’s friend’s imaginary pets.

The most successful tech companies… and innovators know this. Understand this. Breathe this mindset.

It’s in their blood streams.

(I started this last September 1. It is already the 9th of October and I can’t seem to locate the continuation of those buffered thoughts. There must be something wrong with the swapping mechanisms installed in my brain.)

FireFox

Filed Under (GFX, Random.scribbles, work.BLOG) by WildFire on 14-09-2006

Thanks arazodnem for pointing to me that weird stretchin’ that can only be seen if you’re using FireFox.

Meticulous FireFox reminds me of that who-shall-remain-nameless client of ours who really really checks even the most minor that’s-out-of-this-world-already but could-possibly-happen-parts of our systems.

They’re a pain in the arse sometimes… but we need them to GROW… to IMPROVE.

Don’t get me wrong, FireFox-zealot.

I do like FireFox. In more ways than one, it is in fact better than IE.

Fsck the standards though. And the standards-matic individuals.

So what if an application can automatically correct the negligence of some humans who are so lazy enough to even check out the ‘standards’.

I like that better than obsessive compulsive applications.

The stretching error occured because of my extensive-usage-of-dashes-in one of the posts.

IE auto-parsed that one. FireFox… did not.

So who do you think gets my vote in this department.

Oh wait. Let me check the ports and exploits TheLEGION are attacking while I’m scribbling this inside IE.

AM: BindEvent

Filed Under (Visual FoxPro, work.BLOG) by WildFire on 07-09-2006

A BindEvent tip for Grids from Andrew.

If you’re like one of us who creates/sets grid objects and properties programmatically during run time, don’t forget to set the ColumnCount during design time.

It has been a very busy series of weeks for us here. Normal blogging and updates in TheLair will resume once we have regained momentum and normalized some activities.

The droneMatrix

Filed Under (Visual FoxPro, work.BLOG) by WildFire on 16-08-2006

Bill Coupe dissects the droneMatrix term I made up in my previous post.

Well at least I think I made that up (GOOGLE considered) while I was scribbling that blog, unless of course (here we go again), aliens subliminally implanted that term in my mind while I was recharging my psi-defenses.

He follows it up with a why the model is collapsing… discussion.

One of these days I’ll sit down and scribble a developing country point of view of these matters.

… along with why freelancers like me opted to choose Visual FoxPro over other tools.

I wanted to delve into the droneMatrix, but I’m still thinking of how to put my sentiments into words without offending some friends of mine, who are possibly reading this, and who happen to be working in the ‘corporate world’… as drones… : ]

Funny thing is… you replace atc(‘alien’, cPreviousPost) with ‘human’ and the result/situation is still the same.

The only difference is… it’s more cruel.

Man of Steel, Women of Kleenex

Filed Under (comics, Visual FoxPro, work.BLOG) by WildFire on 10-08-2006

Larry Niven’s Man of Steel, Woman of Kleenex is a 12 YEAR old article which details the ‘facts’ why Superman can’t have babies.

I remember discussing that with a classmate during high school days. Paging comic-guru Richie Santiago… paging.

Found that link when a certain spoof-related site posted a similar but semi-pornographic version of that article. (No I won’t link to that site.)

Guy Kawasaki: The Art of Innovation.

7. Think digital, act analog. Thinking digital means that companies should use all the digital tools at its disposal–computers, web sites, instruments, whatever–to create great products. But companies should act analog–that is, they must remember that the purpose of innovation is not cool products and cool technologies but happy people. Happy people is a decidedly analog goal. (Source)

I remember adding GK’s blog when he started blogging in my RSS feeder/reader. I stopped using a feeder a couple of months ago though.

Found the link to his site when Andrew posted a link to the Trademark Tips for Your Web App post.

Really informative and inspiring blog.

Also via Akselsoft, Bill Coupe posted these issues and factors developers outside the ‘droneMatrix’ are facing.

What’s a ‘droneMatrix’ you ask..?

‘It is a world pulled into your eyes to blind you from the truth.’

In other words, in your peaceful corporate world powered cubicles, up a notch by ten positions, located in sublevel 47 below, there exists an alien manipulating your companies, assets, and everything beyond and in between towards an alien invasion.

Ah… here we go again.

Think book not diary‘, WildFire. Think books.

School matters, EH..?

Filed Under (Random.links, science/TECH, work.BLOG) by WildFire on 03-08-2006

So here I am still bummed out because of the events I scribbled earlier, listening to ColdPlay’s Pour Me (though it is beginning to sound like Poor Me already)… reading about that Microsoft demo glitch (again..?), about a study that women these days would prefer a new plasma TV over a diamond necklace (sweet!)…

… about news on Israel and Hezbollah, about Rumsfield

… about The 25 Most Important Questions in the History of the Universe, about wikipedia critiques, blobs, how to write things on water

… and yes about smart eggs.

Reading… and surfing around instead of getting into the usual protocols that put me into a coding zone.

And then I stumbled upon this Why your school matters in getting a job post from Greg Moreno (via Pinoy TechScene).

I can only count 7 of my neurons working so I’m not sure whether to agree or not. But I do agree on some parts.

And disagree on others.

I’ve been what… working in the academe’s IT department for 8 years. Tortured college CS and IT students for five years, been free lancing, doing database systems, consultations (and even referee-ing admin/personnel-related fights) for 10 more schools and colleges here in Manila after I have transferred from Davao.

I have seen how things work from a student’s point of view. In a first person point of view as a teacher/staff/employee… in the diffferent admins’ bird-eye-views (with an s), in a different insider’s and outsider’s points of views… and compared notes with other academe dwelling entities as well.

All I can say is what matters is what the school does to you… to her students.

If she pampers you like a spoiled brat so afraid that their school population would decrease if the idealist teacher decides to flank you… then their graduates would speak for themselves, or not.

If they punish you, torture you… readies you for the real world, develops attitude instead of employing mere lectures and depending on non-existent listening skills… then… they’re probably doing something good.

That is if you survive the ordeal.

Bottom line… what matters is how they mold you.

… and how you handled things when you were in their folds.

Did you spend more time complaining..? Playing Ragnie… visiting Friendster instead of doing the ‘school stuff.’

Were you able to surpass the trickier part.

That is…

How to fight the existing educational system from preventing you from really, really learning.

The three universities that were mentioned, objectively, have proven to have done their part for the past years. (Well at least 2 of those mentioned. I’m not sure why the other one was even included. Flame gear on.)

That is something their students are gaining from.

Reputations don’t just pop out.

They’re built. Through years. Not days. Not through commercials. Through extensive processes. Not through luxurious buildings named after recent enrollees with huge ‘donations’.

But that doesn’t really mean that their students are the only best there is.

One of the most hardcore coders I have met doesn’t even come from these schools but I would bet my three month old keyboard that he can kick the collective arses of probably 3 out of 5 graduates from those exclusives.

I’ll include my USB thumbdrive if you would allow him to code with two hands.

But then again the only one who was able to survive working with me did graduate from one of those schools. She codes and is even by far better (and has more real coding experience) than some comsci graduates.

Ah… I’m getting scrambled thoughts already. Allow me to re-organize and defrag my mind and I’ll go back to this topic later.

Before I’ll end let me CP this first.

If you are a smart programmer in college, you will forever be a smart programmer. If you are a lousy programmer in college, you will never become a good programmer. (Source Link )

On that part… I definitely do not agree… : ]

LIGHTNING+FLUCtuations 1 WildFire 0

Filed Under (Random.scribbles, work.BLOG) by WildFire on 03-08-2006

MY working mojo’s hampered by two consecutive hardware-related problems that are currently resting on my shoulders.

The first deals with a hard disk crash which I have scribbled about somewhere but decided not to post online since I have just recently blogged about a similar crash last April.

I was able to salvage everything last April. This time, of the three partitions that crashed, I was only able to save 2.

LIGHTNING+FLUCtuations = 1 | WildFire = 0.

So after backing up files like crazy for days… leaving the PC to winrar stuff overnight, writing and re-writing everything on DVD-Rs and some spare hard disks and countless re-organizations and sleeping around 4 in the morning (rising around 7AM to check the compression process and sleeping once again), I am beginning to see the light.

TheLIGHT!

That’s when another hardware-related work-mojo-crashing event came in.

Now our 1 year and 7 months old Canon A95 digital camera started puking purple stuff in its LCD.

I did my homework for 6 months, deciding what I really need and reading tons of reviews, samples and comparisons online and offline before acquiring this cam.

The feedback then was good. And it is still good even now.

Plus it did perform well. In fact I filled one CD-R in a month with pictures while it took me two years to fill that same quantity with my previous digital cam.

It performed well… very well until it decided to ‘hey-Canon-released-a-list- of-camera-models-with-CCD-issues– and-we’re-not-included- and-we’re-out-of-warranty-s o-let’s-just-kick-WildFire’s-arse- while-he’s-down-and-create-a-problem’.

Canon service center can fix this I know but the charge is just a pain in the pocket. Especially since this one’s still that ‘young’ and hasn’t even matured enough to test some gravity-defying stunts.

It never fell.

The anti-GRAV belt my pet tiger made for this was never activated.

It’s always taken care of. Always in its Canon case when not in use, inside a secure cabinet guarded by imaginary tech-wasps protecting it from dust and insects and all harmful factors.

Why..?

To compensate for this… I’ll give you a tip. When canvassing things online of the things you want to purchase, don’t just google reviews and specs. Be sure to check out the complaints as well.

aIndex

Filed Under (Visual FoxPro, work.BLOG) by WildFire on 01-08-2006

Old old code. I’ll post the tweak later and the general overview of why it is used.

It gets the index tags from a given table and stores them inside a combo box.

with thisform
�select &cDATABASE
�nTagCount = tagcount()
�if nTagCount > 0
��dimension aIndex(nTagCount)
��for nCount = 1 to tagcount()
���if !empty(tag(nCount))
����store tag(nCount) to aIndex(nCount)
���else
����exit
���endif
��endfor

��.cmbIndex.rowsourcetype = 5
��.cmbIndex.rowsource = ‘aIndex’
��.cmbIndex.value = aIndex(1)
�endif
endwith

Somewhere above this code exists this line:

cDATABASE = ‘FILECOUR’

Goodness that exists… in humans.

Filed Under (Random.scribbles, work.BLOG) by WildFire on 18-07-2006

Yesterday was one tiring client visit. (Buffered blog. So ‘yesterday’ here means some time last week.)

Productive, I might say, but still… tiring.

Most client visits we can finish in less than five hours. Updates are already planned, logged and ready to be executed and implemented on site.

We have 9 database systems running on approximately 20+ computers in this client, used by 6 different offices distributed in three different buildings.

Add the President’s office that we oftentimes visit, their server/IT room which we sometimes raid, and another administrative staff office, all in all we visit 9 offices in a lucky day.

Yesterday’s mission involves re-orienting the new batch of staff, and the old ones as well.

Funny how we end up discussing in the span of for four and a half hours, problems that are, in a way, not directly related to the flow of the systems, but which lie more in the manner by which the systems are implemented and are mostly outside the ‘direct scope’ of the programs.

(You can’t program a program that will convince the Admin about the effects of issueR that involve staffL and her fascination about alien life forms and databases, which if you look closely, might indeed help staffC and headstaffQ in the usage of the system.)

Out of respect to the client, we will refrain from delving into that… for now.

All in all we were able to address, give recommendations and point out the advantages and disadvantages of the things they want to happen.

Tiring but smooth. A couple of hours on the bus and we’re home. Five hours travel time to and fro and seven and a half hours of presence in the client’s site.

Smooth… yeah… until I discovered the next day that I had left a CD in the client’s CD-ROM drive containing all the files, source codes, and proposals we have been working on for the past three and a half years.

I’m sure I did freak out for 10 minutes or so… called the gods of thunder and wind… wanted to find a picture of myself, pin it on the wall emblazoned with ‘stupid programmer’ as its label in a 192-point bold formatted Impact font.

I sms-ed one of the admin staff of that site, but she was not in the workplace.

Another 10 minutes went by with me blaming myself and thinking of how I will design the frames of that stupid-picture frame.

When I calmed down, I knew I had two choices.

One is to brave the storm, tomorrow or the next day, if not today, travel for around five hours and ‘rescue’ the CD. Transportation expenses, time spent, and probably extra medicines (in case the storm melts my external shields) is of course justified considering the contents of that CD.

The second option is… well… trust in the goodness that exists in humanity, however dormant it may seem these days. That human integrity is still there.

I chose the latter option. I’ll take the risk.

Risky indeed it is… but some things are worth believing in.

If in the future, this sort of test fails… I have always kept a cybernetically enhanced pterodactyl who inspite of being a pesco-vegetarian for the last 17 years of its 10012 years of existence has been wanting to break out of that way of life since that past 7 years but has not found enough reason to do so… : )

control.EXE

Filed Under (Visual FoxPro, work.BLOG) by WildFire on 20-06-2006

DECLARE INTEGER ShellExecute IN shell32.dll ;
INTEGER hndWin, STRING cAction, STRING cFileName, ;
STRING cParams, STRING cDir, INTEGER nShowWin

ShellExecute(0, ‘open’, ‘control.exe’, ‘timedate.cpl’, ”, 1)

MY qs… is so cool. She’s dissecting WinAPI related stuff these days. Screams and grumbles are reaching a new level though. But that’s normal when you handle these kinds of areas.

The last few days have been very busy for us. We have a data entry module due this Saturday afternoon. But before that we have to hurdle three more client visits.

And we already had 7 client visits in the past 8 days.

The second leg of my sleep is even interrupted by client calls. They’re my alarm clocks these days. And I don’t even dare to whack their heads when they do the ringing. (The first leg stops when I have to randomly poke (and annoy) my kid to go to school. (Hopefully, education will not hinder his learning.))

Ah well… one of those days in the lives of us freelancers… : ]

PrintWARS

Filed Under (GFX, work.BLOG) by WildFire on 07-06-2006

You know… we have this printer in the office, which I shall call Jana, who would randomly barf out errors unless you pull her closer to you… talk to her… say nice things to her. And even worse things if qs is the one handling her. I’ll assume she’s around 17 years old in spirit. Probably vegetarian.

So every time I have to print something I have to pull her close to me (in an angle facing me), caress the cover and access this affection.woo.database of mine.

Anyway… to compensate for this… here’s a tip.

In case you wanted to cancel a print job… and a thousand and five delete key hitting won’t do, cancelling all print jobs won’t work, purge, curses, spells and a dozen turn off/reboots and all. Try clicking ALT+CTRL+DEL… click Task Manager… select the Processes tab. Look for spoolsv and hit DELETE.

But then again… you might need another 1001 reboots to make that work… : ]

Pixelwarps: 2ADVANCED.com version 5.00ANGELWorld 8.3 (with AJAX) and 2YUPPIE.com.

Back to codin’.

VFP… qs… and HTMLs

Filed Under (GFX, Visual FoxPro, work.BLOG) by WildFire on 31-05-2006

It is 3:28AM and I do hope what I will scribble here would still make some sense.

As you might have noticed May has become a month for TheLair. I’ve been sleeping around 4AM (and sometimes even around five in the morning (when the sun.daylight.init event happens)) working on that seven year old site.

Maiden Seven Artwork
Maiden Seven of Azure Realms / Download 1600×1200 illumination

We released V7 last May 19 and I was still tweaking the site up until hmmm… 30 minutes ago before I devoured what some might consider a midnight snack at three in the morning.

Good thing I introduced and trained qs how to code and develop database applications in VisualFoxpro (the samurai/jedi way) a couple of years ago.

Now she’s coding for around 9 hours a day, answering client system-related queries and fixing some bugs while I’m sitting on my arse working on HTMLs/PSDs/JPEGs/css-es/javascripts and other graphics/website-related matters.

You can’t disturb me when I’m working on something so qs is intimate these days with the chm file that came with Visual FoxPro 9, the fox.wikis.com site and of course… Google.com.

Every now and then she discovers things in FoxPro which I haven’t even encountered yet… which is good.

But when she starts to grumble and mumble random incoherent words and stuff, it starts to scare me though.

In random places, to make things worse. Random places!

Like there was this one time when we were in the mall… a crowded mall, and I with all my invisible hover drones were mapping and calculating the fastest route we could travel from Point A to Point B, and qs out of nowhere started blurting out normalization principles, dtos/alltrim approaches, cdx optimization and database initialization topics and techniques.

Did I mention we were in a crowded mall when she started doing that..?

���

Anyway… come June 2006 I will return to the usual programmer mode, and will work on graphics/web related stuff on weekends.

I am also planning on how to integrate VFP on my site.

Nope… no Active FoxPro pages for now or some other VFP on the ‘net related tools but more on generating, parsing and converting data to an equivalent HTML format.

Upload, download and synchronization mechanisms included.

I still have to finalize the specs though. But I’ll be tackling that in the near future and the links.database section of TheLair will be the first to be handled.

Also, I am heeding Craig Bailey’s call to make Visual FoxPro cool. In line with that I am creating some icons, which I plan to release for free once I’m done with one set.

Visual FoxPro (and other developers as well) can download and use these icons in their applications.

Ok… 3:48AM… bed’s calling.

It’s no secret that a conscience can sometimes be a pest
It’s no secret ambition bites the nails of success
Every artist is a cannibal, every poet is a thief
All kill their inspiration and sing about their grief
Oh love…
– U2 (The Fly)

We have faith in FoxPro’s future.

Filed Under (comics, GFX, Visual FoxPro, work.BLOG) by WildFire on 11-05-2006

I may be occupied (‘occupied’ used instead of ‘busy’, for the latter seems so overused these days that if each of the letters are to be converted (even in its compressed format (parallel worlds not included)) to food, there would be no need for noble campaigns such as ONE and MakePovertyHistory)…

Let’s do that sentence again.

I may be occupied with TheLair V7 creation these days in between client visits but that doesn’t mean that I’m not aware of the news about YAG’s departure from the VSData team.

And this comes at a time where FoxPro is soaring high in the TIOBE rankings (which leaves even some humans wondering), the proliferation of insightful FoxPro-related blogs and all those positive fox-vibes which we’ve seldom seen in the past fox years.

I’m looking at the FoxPro team picture which was featured inside that VFP9 CodeFocus issue and MIGHTYAG will be the Nth person leaving from that crew.

Mike… John Koziol… Randy Brown… Ken Levy and now YAG.

Honestly a part of me wants to be as optimistic as Andrew. Really it’s a cool job and I’m pretty sure one way or another FoxPro will benefit strategically from it.

Craig Berntson’s prophecies, though, haunt the northern hemisphere of my brain.

Plus I’m starting to hear darklings chanting ‘Denial! Denial! Denial.’ in the background.

Seven of Yoda’s fleas armed with green light sabers are guarding my back so I’m safe from these creatures for now.


Cover Darkness Volume I Issue 07 � Top Cow / Pencils: Marc Silvestri / Inks: Batt / Colors: Steve Firchow


The Angelus � Top Cow / Pencils: Marc Silvestri / Inks: Batt / Colors: Steve Firchow

  [off.topic.initialize]

For those who are wondering, these are how darklings look like.

Currently I don’t have a picture of Yoda’s fleas but somehow they look a little similar to Top Cow’s Angelus character. (Yes… envy my back.)

[off.topic.deconstruct]

But despite of these negative forces, I still believe in FoxPro. I believe in its future.

I have faith in FoxPro’s future.

Now I was in the process of balancing these thoughts when my pet tiger Bruno butted in.

‘Now who’s working on Visual Foxpro?’, he asked.

I rushmored my brain, but still, it took me around 17 seconds before I could find a reply.

‘The community, Bruno. The community.’

With that I dismissed him, since qs and I still had to prepare for yesterday’s client demonstration.

cSTR01 = ‘I believe in the community that supports Visual FoxPro, as well.’
cSTR02 = ‘I have faith in FoxPro`s future.’
cEnter = InsertSTText(at(cSTR02, ThisBLOG), IRchar(13) + IRchar(13) + SetTF(cSTR01, ‘B’))

… and I believe in a future with FoxPro and it’s legacy in it.

Greg Moreno: Interruption is Your Enemy

Filed Under (Random.links, Random.scribbles, work.BLOG) by WildFire on 28-04-2006

Greg Moreno: Interruption is Your Enemy.

Amen.

Sometimes it even takes weeks for me to get into the zone. I received a Level III certification on the pretending-to-be-working skill seven years ago.

I don’t agree with the Josh Groban part though… : )

Related link: (Music… war… and neurons, baby.)

VirCrash.Part.003.2006.0427

Filed Under (work.BLOG) by WildFire on 28-04-2006

VirCrash.Part.003.0427

The real headache though lies not in the detection, removal, or the existence of the virus. MY real problem is this which-shall-remain-nameless virus tends to have the power to control negative forces.

The CPU fan started malfunctioning after the virus was detected. Then there goes the never-ending orphaned file/link error messages. The fourth partition of hard disk 01 couldn’t be seen afterwards. Then partition 01 of hard disk 02 followed. Even my reserve hard disk 03 encountered problems of his own and a clean Windows XP refused to be installed on my reserve-and-fresh-from-the-cabinet hard disk 04.

I do back things up often, but there are files that are still to be backed up which I placed on what I thought would be a secure partition which ended up doing that now-you-see-me-now-you-don’t dance.

I’m scribbling this part 47 hours after the problem manifested but imagine the suffering in real time. Even IKIA started kneeling, calling the gods of thunder and the names of celestial beings in between cursing and yelling indescrible things to some innocent ants.

This scribble is getting longer already… if you’re still reading this you could consider yourself as belonging to a small fraction of humankind whose attention span has not yet been affected by the second wave of the upcoming alien invasion.

VirCrash.Part.002.2006.0426

Filed Under (work.BLOG) by WildFire on 28-04-2006

VirCrash.Part.002.2006.0426

Ah… CATALYST (TheOffice.PC.02) was infected, my laptop as well. Qsez two computers are clean even if her virus definitions are months late… ah.. talk about a fair life.

(A woman’s intution is indeed far more powerful than the arsenal of tools I have.)

The info I have gathered online is not that accurate, or probably I am holding a mutated/evolved copy of that virus. It infects .exe and .scr files, but it also seems to have a target-list-of-to-be-infected-exe-files in its code since some .exe files that I haven’t run nor touched for quite some time (and I’m pretty sure these are not system files) were infected too. Something online virus encylopedias from av sites are not stating.

It also hides its code in running processes which makes it hard to detect and manually remove when active. Process explorer tools are useless at this point.

But just because this was my major virus hit for quite some time means I don’t deal with them regularly. In fact we see them during every client visit we have… to the extent that our first routine on site is to backup and scan files before installing our updates.

Add the fact that one of my bosses in my ‘regular job’ has this eternal fascination for porn sites. Even brought a couple of friends for some porn-fest, probably, months ago that produced the 10092 pop-ups the following day.

I hold him and them responsible for my constantly improving anti-spyware/virus/worm removal commando like skills… : )

Now off to clean this PC. I am now hearing the linux users cheering in the background.

VirCrash.Part.001.2006.0425

Filed Under (Random.scribbles, work.BLOG) by WildFire on 28-04-2006

VirCrash.Part.001.2006.0425

PARCEL… MY home PC got infected with ‘that-which-I-would-not-speak-of’ (/that-which-I-would-not-hyperlink) computer virus.

This would be the first MAJOR infection of one my drones since 1996. That was ten years ago. College days… just months after I was given a PC I could truly call mine.

Yes… that experience was terrible enough that it caused me to religiously install/run/update five tools for protection. Along with a truckload of common sense (You can buy a dozen at a discounted price at Waltermart), cybernetically-enhanced instincts and paranoia.

(Of course a pet tiger who could sniff computer viruses/worms when hungry. (And this one’s hungry all the time.))

A reliable anti-virus application, a paranoid ‘stand-alone’ firewall (no… not the one that comes bundled with SP2), an all around —ware immunizer/remover, and a couple of ‘top secret’ tools were there for me all these years.

(Except for the —ware tool since these SPY/MAL/ETCwares just went fashionable a couple or more years ago but vhoi their growth almost made me forget the existence of ‘old school’ computer viruses.)

What makes things more ironic is I got infected when I was downloading an update to one of my protection tools from a respectable site.

Just like ten years ago when I was infected upon bringing home a copy of an infected set of virus definitions from our computer lab.

(Edit… apparently judging from the trail of infected files after SEVEN HUGE hours of scanning, I got this days before… which makes the virus a ‘that-which-I-would-not-speak-or-even-think-of’. It might try infecting brainwave frequencies too.)

I don’t have an internet connection at home so I depend on downloadable manual updates. (And probably CATALYST (the office PC) is not infected after all since it updates automatically but I’ll find out once I’m there.)

It infects 32-bit .exe files. And I probably felt the symptoms before when it would automatically rename the files I am copying to lowercase. I did suspect but seeing the dates and byte sizes to be what they should, and the processes panel showing no hoodlum-looking process, and items being intact after MSCONFIG-in’… I chose to ignore.

As of now I’m not yet sure of what the root cause of this one is… let me waste my time and investigate further.

User is NOT always right.

Filed Under (Visual FoxPro, work.BLOG) by WildFire on 06-04-2006

Start with this… Doug Hennig: The User is Always Right.

Then proceed here… Craig Berntson: Complexity and Experience.

While I do agree with almost all the points stated in those blogs/articles, the ‘User is always right’ mindset does not appeal to me that much.

User is always KING. Insert fat/lazy/abusive/bum KING… but that doesn’t mean he’s always right.

Probably one of the reasons, I studied mind control and hypnosis before I studied coding.

Multiple Detail Band in Visual FoxPro 9

Filed Under (Visual FoxPro, work.BLOG) by WildFire on 08-02-2006

After countless trials and errors, with each error pounding one of my faithful neurons, reading (and re-reading and re-reading), roundtrips to the Program Files\VFP9\Samples directory and pathetic attempts to have a crash course on ‘Absorbing the Mozart Effect 101’… I finally figured out how to make VFP9’s multiple detail band feature work on one of my reports.

(And no, Mozart wasn’t helpful this time.)

More than 77 neurons are off to meet their maker. I stopped counting though an hour and a half ago, so there’s probably more. (And we’re not even counting the injured and now-limb-less ones.)

Yes I know… I’m quite late with this. Most VFP9 coders are now using the multiple detail band to extract data from different databases located in parallel universes while I have been using the dump N table records to one ‘cursor/table holder’ with generic field names where I can extract data for reporting…

… or firing up CrystalReports.

Anyway at 1:37AM, I’m scribbling this down just in case an alien decides to teleport its presence here in this room, do some wholesome (I hope) experiments and decides to mind-wipe me afterwards, which might possibly corrupt this multiple-detail-band-eureka moments I have.

Also this could probably help a coder out there who decides to google things after being mind-wiped by an alien.

Just a basic overview… I’ll call these step by step ‘hints’ not a ‘guide’. (A User Guide expert would scream bloody hell when he sees this. (But trust me a programmer will understand. (Especially those mind-wiped by aliens.)))

Given:
Parent.dbf / Child01.dbf / Child02.dbf
Right click = Right click in the Report Designer.

1.

 

File. New. New report. (No wizards.)

 

2.

 

Data Environment. Add the three (or more) tables.

 

3.

 

Set the relationships. (P » C01 and P » C02.)

 

4.

 

Right click. Select Data Grouping.

 

5.

 

Data Grouping tab. Group Nesting Order box. Add. And add field from your parent table (Your primary key… for example: PARENT.CODENO)

 

6.

 

Right click. Optional Bands. In the Detail Bands box, Add another Detail Band.

 

7.

 

Now you have two bands. One for you, one for the alien.

 

8.

 

Double click on the Detail 1 separator. The Detail Band Properties window pops out. (Or if you like the longer process… Report… Edit Bands… select Detail 1.)

 

9.

 

Check Associated header and footer bands. (Trust me you need this. Aliens are allergic to this.)

 

10.

 

Repeat steps 8 – 9 for Detail 2.

 

11.

 

Data Environment. Drag the fields to their appropriate bands. Parent fields on the Group Header. C01 fields in the Detail 1 band and C02 fields on the Detail 2. And aliens in the footer part.

 

12.

 

BTW… you should have saved your report already and instinctively press CTRL+S every now and then in case the aliens…

 

13.

 

Now double click the Detail 1 ‘bar’ (separator) again.

 

14.

 

Detail Band Properties. In the Target alias expression enter ‘child01’ or the name of your child database. (NOTE: Be sure to include the ”)

 

15.

 

Do the same with the other Detail bands. The Detail 1 band separator should now look like ‘Detail 1: Child01’.

 

16.

 

Add appropiate headers, lines and all. Align things.

 

17.

 

Beautify your report. Make it look professional. Nevermind if your clients are using a stone-age dot matrix printer.

 

Hope this helps.

Now I’m off to re-inspect the protective shields of this room.