NF . Acrylic case

Filed Under (Random.links) by WildFire on 25-05-2004

Satisfy your technolust (or make that technocravin’) with these:
Pre-Assembled Acrylic PC Case
Iomega Micro Mini Drive

workBLOGS . unsmoothen

Filed Under (work.BLOG) by WildFire on 25-05-2004

Not all client visits are ‘walk in the parks’. Sometimes it’s rough. Sometimes the rough part involves database that goes south and east then goes south once again. Sometimes it involves the politics inside a certain company… like for example, a change in administration and you’ll find yourself re-initializing the explanation (and impression/integrity-build-up) from scratch all over again, strict security guards which you cannot blame in the first place since they’re just doing their jobs… and a lot more.

But let’s not elaborate into that for there are a lot of good things in each client visit to think about the ‘not-so-good’ ones.

While some may draw inspiration from great programmers/developers like (insert-your-icon-here… mine was Peter Norton when I was still in college), if you’ll look everywhere you’ll find a lot of good models from ‘simple-day-to-day’ humans. One of this is this bus vendor I encounter every now and then when I travel to our north-based clients. To give a short overview, these are the people bringing goods (mineral water, hard boiled eggs, newspapers, ‘chicharons’ etc.) to buses, loads, hollers, advertises, then after five minutes or so unloads and waits for another bus where they can sell their goods.

There’s this one vendor who aside from selling helps people when he’s in the bus. This afternoon he even left his goods in the bus to rush down to help another passenger load her stuff.

Programmers and software developers who do free lance related works should also be like this. When you’re visiting your clients and there are things that could help them whether it’s part of your work or not but would make things better, never hesitate to do so. Install free anti-virus applications, firewalls and spyware removal tools. Introduce OpenOffice.org or other productive applications that could make their company save a lot. Teach them to defrag. I’ve seen a lot of fragmented and unoptimized units in most of my clients and I’m sure there are a lot of others out there.

You can even teach them how to blog.

In this world where silicon is getting powerful and powerful each day… it won’t hurt to show little acts of kindness… just like that bus vendor.

workBLOGS . confidence

Filed Under (work.BLOG) by WildFire on 24-05-2004

Sometimes you can measure and rate the software you develop by the amount of confidence you have when you’re presenting it to your clients. I remember showing two integrated database systems to three client schools September last year. I was more confident presenting Project:Genesis which was a couple of years old already compared to Project:Alexandrieia (Integrated Media Center System) which then was only two and a half months old. Still pretty much in its infancy if you’d ask me.

With Genesis, I can even click and present things with eyes closed while I was closing my eyes and crossing my fingers silently when I was presenting Alexandrieia.

But after months of working up to 3 or even 4 in the morning, Alexandrieia have grown to something a little ‘powerful’ than before. It can now even auto-detect a user who have not taken a bath yet and initialize the shutdown procedure once it detects a certain scent from a user. Yes that’s how powerful APIs are.

NF . 3D Monitor

Filed Under (Random.links, Random.scribbles) by WildFire on 23-05-2004

If this 3D monitor remains true to what the article talks about, then it is about to break barriers and revolutionize a lot of things. A concept before which can only be seen in movies (see Paycheck) is now here… well, at least that’s how that news article projects it. I prefer though seeing, touching and smelling it before I’ll start doing that tribal-jump-for-happiness dance routine.

But still, once that barrier is breached, expect Room.Improvements(22*17 meters, lLimit=.T.) becomes a Field.Improvements(nInfinite, lLimit = .F.). The technology behind this, like on any other field, will just keep on improving and improving.

And of course patents will still be there to hinder some parts and clog some tunnels of innovation every now and then.

THOUGHTS . Bill Gates and bloggin’

Filed Under (Random.links) by WildFire on 22-05-2004

Even Bill Gates ‘indirectly’ supports blogging. Are we expecting an MS-powered blogging tool in the near future?

Finally, Avatar is starting his tech/work/life blogs. Once he finalizes everything I’ll post a link to it for you all to see why this was the first person I tried convincing to start a blog of his own.

There are a few others in this ‘make-them-blog’ list of mine and probably stating their full names in here could push them even more. Besides Google can make these names pop into their search results.

First would be Nepthaly Talavera, a college classmate of mine who is now the Dean of the Computer Science department of the university I worked before. I expect to hear some education/institution related views from him for I believe this country has to concentrate more on the blooming (in size but not in brain-optimization) computer science student population. So dude, turn off that Anime-infested TV of yours and start doing the ‘dirt-ier binary-related things’.

Second would be Ceazar Ryan Sealana who’s ‘leet-coding-skill-style’ and love for mischief far exceeds my Foxpro-powered skills and love for a peaceful digital life.

Third would be Hazel Juanico whose expertise involves SQL, VisualBasic and Javascripts and punk/grunge rock. I have known Hazel since the old elementary days up until we finished that back-breakin’-neuron-abusive Computer Science degree.

Fourth in the list would be Mark Anthony Panizales, a former student of mine who was also a founding member of that wormz team we organized years ago. This is one dude who really understands what real programming/software development is, has a great vision and persistence to back it up. If he says it, he’ll do it.

There are a lot of blogging-related tools in the ‘net. I use the GreyMatter scripts but there’s Blogger.com which was acquired by Google (Yep that’s how serious blogging is these days) and has recently upgraded.

Hosting-wise there’s Marvinsweb.net that offers as low as P34.50 a month web-hosting services.

Let’s all change the IT-related-aspects of our country through blogging.

NF . Linus

Filed Under (Random.links) by WildFire on 22-05-2004

I didn’t post a link to that article questioning if it was really Linus Torvalds who wrote Linux a couple of days ago since I was probably too tired to even sit infront of this computer, but I’m doing it now along with an article that defends Torvald’s side. It even includes a link to Andrew Tanenbaum’s notes.

NF . outsourcin’ Star Wars

Filed Under (Random.links) by WildFire on 20-05-2004

Looks like even Star Wars is geared to be outsourced.

thoughts . problem solving

Filed Under (Random.scribbles, work.BLOG) by WildFire on 19-05-2004

Sometimes, if not always, it is so hard to talk someone about systems and problem solving especially if that someone is lSensitive, lEmotional and cPersonality = STRONG. To make things even harder, these are the persons that are often close to us, persons we hold dear. Closeness is oftentimes quantified by emotions but the use of such in this discussion, stops there.

A great deal of our life lessons, we learn through our work. And in database-related programming, software development and system analysis humans can learn a lot. In fact the approach use in the whole software development process if applied to real life situations could make this greed-infested/disorganized/unsystematic world a better place to ‘interface’ and connect with.

One can view life as a big problem (but not necessarily negative) that needs to be solved or ‘lived’ if you prefer such word. In every step of your life, directly or indirectly, you create means to solve a problem, but first and the most important aspect of all; you must know what the problem _really_ is. This is where you question existence, the why’s of things and in such thing as complicated as life these questions can stretch far beyond places Hubble’s sight can even reach in 7 cybernetic lifetimes.

Most often, a big problem is composed of little problems branching out to another set of nodes and child problems.

Now, one’s approach to solving such things would depend on how you, with your experience, view things. You can view it as ‘cut-the-root-of-the-problem’ and the nodes will be flushed as well .OR. you can do little node and leaves at a time until slowly and slowly you are tackling and conquering the problem subset before marching to the next level/node. That or the other or the combination of both or A then B or B then A, the combination is endless, can bring you to the doors of the solution. The process in itself can be views as a means of solution to start with.

Now let’s go back to that arguing/talk with someone we first tackled on Paragraph-01. You can’t expect to solve a problem if you’re attitude is like this: while discussing Problem v1.117.1256725, and you feel like you with your intelligence cannot ‘fight through’ the parameters of that problem starts randomly accessing bits of information that will pull Problem v1.291.1837125, Problem v2.129.28341245 and countless others.

Solve problems ONE by ONE, it doesn’t matter if you’re doing it the LIFO or the FILO way, or the stack or queue approach. Even CPUs tackle each program line by line. Even Superman to be efficient follows this principle. Spiderman too, he rescued his girl first then maneuvered towards the dangling train. And I don’t believe hyperthreading on a 512-bit computer with 7777500GHz could defy this principle.

Talking to someone who tends to bring all problems forward instead of dealing with it one by one frustrates me. Add more nFrustrationCounts if that someone gets too emotional, looks for other holes instead of concentrating on the problem at hand and too close minded enough to see things. We’re talking about oOBJECTS here so things must be dealt with objectively and lEmotion should be set to .F.

Add the nCount(ProblemOccurence) too. If the problem keeps repeating and repeating all over again nFrustrationCount increases. There must be something wrong with the system that needs to be addressed instead of being to emotional and close minded to even discuss the problem.

And in every thing/activity/process they do, humans should learn to evaluate and reflect on things.

But that my friend is another story for now and I still have to work on how to prevent database corruption during power fluctuations.

In case you want to know what the problem is about… we’ll I tell you it’s about spoon and forks.

Yes really. No kidding this time. Such a ‘near-to-null’ related matter, right?

snippet . DbRepair

Filed Under (Visual FoxPro) by WildFire on 19-05-2004

A snippet compiler application, a dbRepair function from Sergey Karimov (via foxite.com) and John Koziol’s bio at VS Data Team’s WebLog.

That would be our FoxPro-related links for the day.

Wait there’s another one: Pathological Testing for AppDevs. Automatic ‘self-destruct’-related routines in the program once it detects a paranoid user who’s IQ is below three digits is included with this test, right?

NF . Blizzard

Filed Under (Random.links) by WildFire on 18-05-2004

Oh-la-la! Something to look forward to. People close to me know that I don’t play computer games that much, but I always look forward to the artworks, the cinematics and the technology behind these things.

article . Is the Rich .Net Client ready yet?

Filed Under (SoftDev (non-VFP), Visual FoxPro) by WildFire on 16-05-2004

Rick Strahl: Is the Rich .NET Client ready yet?

workBLOGS . VF6 and corruption

Filed Under (Visual FoxPro, work.BLOG) by WildFire on 16-05-2004

Since the day I upgraded to Visual Foxpro 8, I considered it knocking out VF6 in all departments. And indeed it does prove itself far superior than the last version that was bundled with Visual Studio. That was until yesterday when I discovered that a certain Database Utility application I created could open databases that were corrupted by power interruption and ‘magical reboots’ (possibly caused by computer viruses).

I have already installed NAV on a client’s computer which could possibly have eradicated that ‘magical reboot’ problem but I created a patch still… just in case. Problem is, when I tested it last week on the client’s computer, the patch won’t work so I have to use that old but reliable Database Utility I have created to open the corrupted database and delete the last record which is often a blank one. After that the corrupted database is fixed.

It was yesterday when it came into my mind that probably the reason that UTILS can do these things was because it was compiled in VF6… and after a number of isolating-the-problem experimentation, I found out that the said theory was right. You see, when VF6 encounters a corrupted database, it still opens it during the use DatabaseName line but when you do the database manipulations such as Append Blank/Replace (Add) or Delete it generates an error. With Visual Foxpro 8… once it encounters a corrupted database, even in the start (use DatabaseName line), it generates an error at once.

However Visual Foxpro 8 still has an advantage, it displays the name of the corrupted database while VF6 just points to the line of code where the error occurs. Here are the exact lines:

VisualFoxpro 6

Fatal error: Exception code=C00000FD
Called from – frmProfile.frame.page_03.cmdgc_add.click line 6…
Called from – main line 2…

VisualFoxpro 8

Error loading file – record number 12. FRMPROFILE . Loading form or the data environment : Table ‘f:\hra\communit.dbf’ has become corrupted. The table will need to be repaired before using again.

Combining the strengths of both version, I created a small module patch in VF6, compiled it in .exe form and called it from the main VisualFoxpro 8 module using the ShellExecute API.

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

ShellExecute(0, ‘open’, ‘FIX-0_545.exe’, ”, ”, 1)

I’m still studying how the Flush+TableUpdate approach could also help solve this problem but for now I’m using the patch above and an auto backup feature that copies the database to a different folder every five hours.

I also added two features to that Database Utility application yesterday, a feature that saves the structure of the database and the indexes along with it which is useful for documentation and reference related things and a MERGE databases feature. It was a special addition since it was done with my little Angel on my lap playing with a diskette and a floppy drive while I’m doing it.

workBLOGS . smasn and FX

Filed Under (Random.links, work.BLOG) by WildFire on 15-05-2004

One of the ways I measure how busy I was for the past few days is by the number of unread rss feeds this reader of mine is getting. And with 128 feeds to monitor the pile is indeed that huge sometimes. Good thing I’m already over with that ‘I-have-to-read-them-all’ syndrome and with this rss reader, I can set them to remain there forever organized on folders so I can just return and scan things if time permits. That’s a big IF these days but hopefully hopefully hopefully… in the future, I’ll find some time.

It has been a really busy two weeks (nCount(‘busy’, line) = nCount(‘busy’, line) + 1), spanning to four visits on three different clients. The latest was yesterday (since it’s already 2AM… again) where I have to install the Integrated Library System I’m working on for the past eight months to its third client. The school and the ambience of the place was nice which reminds me of my high school campus back in Davao, but it is the travel that was a little hard compared to the other client visits.

We have to wait for almost two hours for the FX Taxi to fill up before it decided to move its arse. That was quite a long two hours spent hoping that the humans passing that part of the place would have a same destination as mine or some family of ten would show up which would automatically fill that FX. It even come to a point where I was exercising mind control on some humans hoping I could make them ride the FX and fill the vehicle up so we can start moving. And another point where I was hoping Godzilla would appear out of nowhere.

Sometimes I wonder how some humans can tolerate systems that makes you wait doing nothing except exercise mind control and call on the gods of thunder and speed. How I wish in the future there will be a networked system that can make you monitor the departure and arrival of these vehicles even if you’re at home so you can choose to watch a lame show in TV instead of doing nothing. For now the only thing I can do in line with that is to store in my photo-mem the frequency they use in their radio communication systems.

The travel back home was even harder, especially for qs who always come with me during client visits. Unlike me who can ride virtually any vehicle available in this country, qs can’t ride some of them without having to protect her contact lens, her pearly white skin, her hair, her pair of levi’s, shoes… to a name a few. These are the days we wished the old driver was still here and could accompany us on our client visits just like he used to.

Tomorrow’s client visit was re-scheduled which means I can have more time to relax and do some blogs.

… and exercise this dormant mind control powers of mine hoping it would work the next time around.

[initialize.random.links]
The rise of interface elegance in open source software
Canon PowerShot S60
Archaelogists claim discovery of the library of Alexandria
[terminate.random]

article . VFP and OpenOffice.org

Filed Under (Visual FoxPro) by WildFire on 14-05-2004

Oh… this is great. VFP Automates OpenOffice.org

downloads . VFP and May newsletter

Filed Under (Visual FoxPro) by WildFire on 13-05-2004

A new batch of Visual FoxPro 8.0 Samples and Visual Foxpro’s May 2004 Letter from the Editor is out.

workBLOGS . Your system…

Filed Under (work.BLOG) by WildFire on 13-05-2004

If you’re a programmer/systems developer visiting one of your clients, be sure to program yourself and the tasks you would do there first. Plan. Scribble things on paper. Live up to your work. You can’t consider yourself a programmer/developer creating systems and programs for somebody else’s company when you yourself are not systematic and organized to begin with. It’s like talking peace and having a rocket launcher on your shoulder, a combat knife on your left hand and hand grenades around your chest.

Simulate things. Create folders and dump all the databases and files there. See every possible problem… every possible ‘hole’. Test on different OSes. I remember when I was creating the APIs for Project Sophieia, after doing and testing things I was jumping in joy… ‘I have conquered API! I have conquered this API!’… only to be dragged down when I found out that such API won’t work on Windows 2000. So I researched, tweaked and customized further, lose quite a number of sexy neurons and fats until it worked in all the units of the client’s internet laboratory.

I was so delighted that I even offered to present it on the upper management of that client. It was too late when I realize that she’s using Windows XP. Boom.

Test and test… and test once more. Acquire old PCs if you can and install different OSes. Dual boot if lResourcesShortage = T. This is one of those reasons why software development comes a little expensive compared to other things.

Be sure though that the product you are developing is worth it… and would stand the test of time and the fierceness of my fire-breathing pet dragon in case it comes within inches of your project.

art . shadowelement cataclysm 001

Filed Under (GFX) by WildFire on 11-05-2004

Here’s a collaborative artwork between me and ShadowElement. Expect more variations in the weeks to come.

NF . random quickie blobs

Filed Under (Random.links) by WildFire on 10-05-2004

And a late random quickie blobs.

article . Coder to Developer

Filed Under (SoftDev (non-VFP)) by WildFire on 10-05-2004

Mike Gunderloy’s Coder to Developer (from Joel Spolsky)

There’s something weird about software development, some mystical quality, that makes all kinds of people think they know how to do it.