Friday, December 24, 2010

24-12-2010

Not much up. Recently, been trying to get back into 3D. As usual, fell into the temptation of “too much, too little”. Installed too many apps (have to get Softimage Mod Tool and Crosswalk off my box). Looked for too many tutorials, got interested in too many things (yep, struggling right now not to install LMMS), but did too little actual work.

Still it’s not like I’ve done nothing. Here’s a screenshot of the model I’m currently working on: Wings3D - fan

Here are some models awaiting texturing and rendering:Greenshot_2010-12-24_13-48-40

Greenshot_2010-12-24_13-51-26

And the last render I did (yes, I succumbed to the pressure of the season):ornaments

While authoring this post, I managed to complete and render a Rubik’s cube.rubiks-cube

Now I have to go. A troublesome person has shown up and interrupted my enjoyment of Blender 2.49 (no, I haven’t moved to 2.5 yet, but it’s on the list of things to do. I’m not going to throw out 2.49 until BMesh is completed, since the last time I tried to create a Rubik’s cube in 2.5, the render showed there were lots of faces with inward-pointing normals). Laterz

Edit

Back home now. Playing with Blender and Yafaray. Set up a scene for the Rubik’s cube with no materials in Yafaray, and this is my render:rubiks-cube

Almost 8 minutes for a 800x600 render. And I haven’t even started with LuxRender yet. The good thing is: I have a copy of SmallLuxGPU, and I’ve seen the difference in rendering power (I need a GPU farm now!) of a GPU as compared to a CPU.

Anyhow, here’s a render with materials set (Yafaray):rubiks-cube2

If you don’t look at it too hard, you might not notice the major flaws I did: noise visible in the primary shadow (eliminating that requires me to increase the number of samples, and with that the render time — sigh), and the black material just looks weird away from the top of the cube (my guess is it’s too glossy, but I’m going to leave it that way anyway Open-mouthed smile)

The Rubik’s cube .blend is here in case you want to play with it. Going to play, eat, take a shower, sleep.

Thursday, December 23, 2010

23-12-2010

Guess I’m back to dating my posts. Today’s post starts on a sad note. Yesterday I read about the passing on of Mr Sam Mbende, a former employee of Ecobank Transanational Inc, in The Punch newspaper. I met him in a meeting, and he came across a a very reasonable person. My boss has few good words for Nigerians in business as a generality; he contrasted Mr Mbende with the run-of-the-mill Nigerian in the corporate world. We still quote something he mentioned till today in the office: “the dynamics of the enterprise”.

I’m made to understand that his death might have been avoided if he got access to medical assistance on time. Which brings me to ask one question among others: with Lagos (in particular) as crowded and as traffic-jam-prone as it is, how can ambulances get to — or from — accident scenes in time to save victims? Every time I’m in major traffic, I wonder, “what if there’s an ambulance trying to save someone stuck in this?”. Unfortunately, Nigerians have largely decided to ignore sirens, mostly because of abuse by uniformed personnel (the police and military in particular), and ambulance drivers generally have no weapons to threaten anyone. Add the fact that I doubt that any emergency service has any choppers or VTOL aircraft, and you might see my point here. Maybe we should reintroduce the old law allowing only vehicles with license plates to move on the roads on particular days, but I’m sure people will find a way to circumvent that. At any rate, it’s food for thought (someone who can pass this on to the Lagos State Governor, please do. I will assume he’s a person shopping for ways to make life better for the people).

On a lighter note, here’s a conversation I had just this morning (reproduced as accurately as I can remember it):

She: Where’s my Christmas present?

Me: What Christmas present?

She: It’s Christmas. where’s my Christmas present?

Me: You should ask someone who believes in Christmas.

She: So you’re an Eckist or a Jehovah’s Witness?

Me: Any one.

She: Blood of Jesus! No wonder we never connected!

Me: At least today you’re honest.

And there you have it. She apparently forgot that I’d lent her a book by the late Kenneth E. Hagin, Exceedingly Growing Faith, which I would most likely not have done if I were in fact either an Eckist or a Jehovah’s Witness.

I’d like to ask: who passed the memo that I was to be hounded by degrees into a romantic relationship? If the comments I’m hearing these days are anything to go by, there are quite a number of people praying for me…maybe they should stop, as it doesn’t seem to have done much good. And no, trying to hook me up with women isn’t the answer, especially asking me how I like random women passing by.

Later.

Tuesday, December 14, 2010

Awesome!

Warning: this post contains technical information and is unsuitable for technologically-challenged people (the kind that can't find their bold and underline) :D

no, the title isn't referring to me. it's what happened yesterday/today. we're trying to roll out a product at the office, and it involves some cryptography using 3DES. We ran up against a problem where we had a 128-bit key, but the default cryptography provider supplied with Java would not accept 128-bit keys for 3DES operations. We ended up having to write a separate application in .NET to handle the operations, since .NET accepts such keys and does the needful, and moved on with development. Over the weekend, another company we intend to work with sent over a key — you guessed right — it was a 128-bit key. To be honest, the entire thing spoilt my entire day (for reasons I do not care at this point to divulge). I was a complete grouch by the end of the day, especially since I felt that none of the advice we were able to source could solve the problem. Outsourcing the concern to a .NET application again would work, but the cryptographic operation we needed to do was in the core of the application, not on the fringe, as the previous case. I was dead set (though I didn't tell anyone) against migrating that functionality to another program again.

the day finally came to an end and I moved on to a program at church. We've been having a 21-day fasting-and-prayer program, and I'd felt much like a spectator most of all the other days. Last night though, Pastor Nuel announced God wanted to solve problems, real issues. I decided my problem was real enough, and just followed the instructions he gave, including giving sacrificially in the offering, which was taken for the poor. I didn't have much on me, and I decided to give everything I had on me into that offering. I chose to believe that God would take my problem as his own, and I'd not have to bother about it. I ended up walking home from church last night (sorry, Mr A., Mr B.!), and this morning, to the bus stop where I'd catch the bus to the island.

I posted the problem on StackOverflow this morning, but nothing that really helped worked. All the information I'd obtained was useless. I decided I wasn't doing to despair like yesterday, even though the temptation was really, really strong. I've no idea when exactly, but I just decided to use the Bouncy Castle JCE provider instead of the default Sun provider, and it worked! I'm really, really, happy I decided to believe what Pastor Nuel said yesterday!

And now, back to work!

Monday, November 22, 2010

Is JobMark Nigeria a well-planned scam?

Early this morning, I got an unsolicited text message from JOBMARKNG telling me the sender knew I was fresh out of the National Youth Service Corps scheme, and that they had a job waiting for me. I didn’t really pay much attention to it at the time — I merely made a mental note to check it out since it might prove to be useful to someone else who's looking for employment.

Later this morning, I got another text message from someone who claimed we’d served together in Borno state in northern Nigeria, that he couldn’t call for some reason, and asking me to call his in-law for a job. Unfortunately, while I did server in northern Nigeria, it was not in Borno state. I regret deleting the text message as quickly as I did now. At any rate, it made me take a better look at JobMark Nigeria’s site as advertised in the spam text message I got.

The organization’s site is at http://www.jobmarkng.com. Personally, I don’t really like the design, but that’s minor. What caught my attention in the (decidedly long-winded) text of the home page was this: “10% of your salary must come back to us”. Job Mark - Opera_2010-11-22_11-36-45That left me thinking it was not such an up-front site after all. Running down the page gave me another gem:Job Mark - Opera_2010-11-22_11-39-56

I also found it interesting that the site mentions the Nigerian Bureau of Labour Statistics. Searching Google turns up only the National Bureau of Statistics (in Nigeria), with a division in Employment and Labour. Methinks the NBLS does not exist. Let’s peg this to a typo, shall we?Job Mark - Opera_2010-11-22_11-49-13

Unfortunately, on visiting the National Bureau of Statistics website, I found it impossible to get any of the (admittedly very few) reports on employment and labour beyond the end of 2009. Where does JobMark Nigeria get its figures (September 2010) from then? Insider information?

Moving on, here’s something else I noticed: Job Mark - Opera_2010-11-22_12-00-08

None of the advertised job openings link to anything. You can look at the site yourself and come to your conclusion yourself. Then maybe you can tell me if it’s a scam, especially as I think people who ask you to develop communication skills should be able to properly capitalize nouns:Job Mark - Opera_2010-11-22_12-05-12

Laters.

Edit

A friend who commented on this post on Facebook (and served in the same local government as I did) said he got the same text about the same time I got mine. I can only conclude someone related to NYSC (not necessarily staff, it might be a former Corps member) in some way is giving out (ex-)Corps members contact information. That gives me the heebie-jeebies — when registering, we gave numbers, contact information and whatnot — what if that information was leaked to less-than-savoury characters? I like my privacy, thank you veddy much.

Update: The same friend also sent me a message about this. The relevant parts I’ll take the liberty to reproduce below:

Just be careful. 2wks ago, i got a message from someone who claims to be <removed> from Zamfara (our batch). He told me he was stranded and i should send credit to him cos the bus he boarded had a fault in the bush coming from ZM. i think i know where that idiot got my details from.our year album/book.its only u guys from ZM that call me <removed>.

Virtually everyone is in need of employment. Jobmark is simply nothing but a scam. You do not get jobs that way. Their aim is to make job seekers lazy individuals. They promise to re-edit your CV and other stuffs that do not make any sense to me.
I just discovered something. i.e not giving my actual details in any publication such as year book etc. (emphasis mine, at least not just in any old way). Although that doesn't give an assurance not receiving such messages/mails.

I can’t fit shout. Maybe I’m paranoid, but here’s a friend who isn’t a geek realizing what many people don’t realize: There’s such a thing as too much information being given out that could put you at risk (yes, I’m looking at you heavy Facebook users. For crying out loud, robbers have actually found out when to rob houses simply by checking people’s profiles and status messages on Facebook — any search engine will give you more links).

Tuesday, November 16, 2010

A funk

Hello again. Haven’t updated this rag of mine in a while. I suppose I got too lazy to update it. I’ve been forgetting to do some important things, so if I was supposed to call or something, don’t get mad, ok? I’ve major things on my mind, & the decided lack of rest isn’t getting me anywhere, especially since I’ve amped up on sleep.

I was going to rant about just how much my life sucks, but then I realized it might be worse (remembering that my neighbours had a fire — the fact that 60000 young people in Lagos alone sat for an employment test when an anonymous source says the agency holding the test will only hire 2000 persons in each state — a claim that my boss says is improbable since the agency only has about 5000 staff nationwide now — according to him, anyway — also helped). Unfortunately, it doesn’t remove the feeling. I went out today with Mr Baby this evening, saw something, and the old feelings rushed to the surface. The feeling of not being where I think I should be was really strong. Pushed it down like I do all other such feelings, though, and went on into the store I was visiting.

For crying out loud, I can’t even write a blog post properly. Geh. Whatever. at least Mr Baby’s getting big.

In other news that probably doesn’t really concern or affect anyone, I like Zoundry Raven’s interface, but after trying it out for real, I’m sticking with Windows Live Writer.

On to different things. I’ve been playing around with ISO8583 and jPOS for some stuff at work, and a problem that has raised its head consistently is how to communicate with a HSM. So far, lacking a true-blue HSM to work with, I’ve been trying to get my code working with this simulator with not a lot of success. Even after wandering the web and the jPOS mailing list (as well as Andy Orrock’s blog), it seemed I was doomed to fail. Yesterday, I decided to stop looking for ready-made answers and devote time to the problem. After looking at the jPOS API documentation on FSDMsg, I was able to come up with some code that — while it doesn't exactly mirror Andy Orrock's code — works. Without further ado, it's reproduced for your viewing pleasure below (syntax highlighting via Highlight, as I've not yet got around to finding a code display widget that works on Blogger).

Test.java:

package testbed;
import java.io.FileNotFoundException;
import java.io.IOException;
import org.jdom.JDOMException;
import org.jpos.iso.channel.FSDChannel;
import org.jpos.iso.packager.DummyPackager;
import org.jpos.iso.FSDISOMsg;
import org.jpos.iso.ISOException;
import org.jpos.util.FSDMsg;
import org.jpos.util.Logger;
import org.jpos.util.SimpleLogListener;

public class TestBed {
  

  public static void main(String[] args) throws FileNotFoundException, IOException{
    FSDChannel channel = new FSDChannel();
    channel.setHost("127.0.0.1");
    channel.setPort(9998);
    channel.setPackager(new DummyPackager());

    Logger logger = new Logger();
    logger.addListener(new SimpleLogListener(System.out));

    channel.setLogger(logger, "regular");

    FSDMsg message = new FSDMsg("file:hsm-");
    message.set("command", "NC");

    FSDISOMsg wrapper = new FSDISOMsg(message);
    wrapper.setHeader(new byte[] {0, 0, 0, 0});

    try {
        channel.connect();
        channel.send(wrapper);
        byte [] buffer = new byte[1024];
        channel.getBytes(buffer);

        FSDMsg response = new FSDMsg("file:hsm-resp-", "ND");

        response.unpack(buffer);

        System.out.println("Firmware number is: " + response.get("firmware-number"));
    }
    catch (ISOException ex) {
        ex.printStackTrace();
        //return;
    }
    catch (IOException ex) {
        ex.printStackTrace();
        //return;
    }
    catch (JDOMException ex) {
        ex.printStackTrace();
    }
  }
}

hsm-base.xml:


<?xml version="1.0" encoding="UTF-8"?>
 <schema> 
 <field id="command" type="A" length="2" key="true" /> 
</schema>

hsm-NC.xml:


<?xml version="1.0" encoding="UTF-8"?> 
<schema id='NC'> 
</schema>

hsm-resp-ND.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<schema id='ND'> 
   <field id="lmk-check-value" type="A" length="16" /> 
   <field id="firmware-number" type="A" length="9" /> 
</schema>

Laters.

Update:

The code above seems to work fine…till you really look at what it does. For some reason, jPOS isn’t picking up hsm-resp-base.xml at all. Here's an updated hsm-resp-ND.xml

<?xml version="1.0" encoding="UTF-8"?>
<schema id='ND'>
    <!--this is the 2-byte message length header-->
    <field id="messagelength" type="A" length="2" />
    <!--this is the 4-byte header you need to prepend the actual data with,
            byte[] header = new byte [] { 0, 0, 0, 0 }; // or whatever header you decide, useful for tagging requests
            //...
            wrapper.setHeader(header);
    -->
    <field id="header" type="A" length="4" />
    <!--this is the response id. in this case, it'll always be ND-->
    <field id="command" type="A" length="2" />
    <!--this is the response code-->
    <field id="response" type="N" length="2" />
    <!--this is the LMK check value-->
    <field id="lmk-check-value" type="A" length="16" />
    <!--this is the firmware number-->
    <field id="firmware-number" type="A" length="9" />
</schema>

Thursday, October 14, 2010

Tired…

I feel drained. I’m trying to work, but it’s really difficult to concentrate. I’d probably fall asleep if I were to stay too long in one place.

I wish I could sleep. Sleep, and talk to someone — preferably after I woke up. How did I get here anyway?

Took a cursory but somewhat-below-the-surface view of my life, and I have to conclude that I’m not satisfied with it. And I feel powerless to change it. I just feel like giving up and lying down, telling myself I tried my best and it’s okay to give in.

Saturday, July 24, 2010

Done in by the current working directory

I know I've said it before, but I hate computers. No, really. I wonder why I didn't get interested in a safe, risk-free profession like alligator wrestling.

Today's rant began with a threat, in a manner of speaking. My employer has a client, and they got served a notice of unsatisfactory service by their client. They came to the office, and since my boss wasn't around, they spoke to me. An application was required, they didn't have the manpower to build it. I decided to build the application as requested by them since continued business for them implies continued business for my employer.

The problem

Yesterday, we went to deploy the application. Then all hell broke loose. I ran the application, entered the settings, no problem. We loaded a list of numbers, clicked 'Send'. Nothing happened. I then tried to reload the settings and see if we had an issue, then...boom! Exception! I don't need to tell you we returned to my office, tails between legs. I later pinned down the problem to a single scenario: As long as you didn't try to load a list file, you could view the settings dialog. Once you did, however, you would get an exception which basically said the application couldn't find the settings table.

I couldn't make heads or tails of the situation, especially since my settings database file (I used a SQLite database file to store the application settings. When, later, in Freenode's C# channel, someone asked why, I didn't really have an answer — actually, I did: an application can't write to its own configuration file, and I hate parsing XML, and I haven't learned LINQ yet. This last experience is enough to migrate me to .NET 3.0 at least). Then I noticed, by chance — as it were — that I was seeing my database file on the desktop of my test system. File size? 0 bytes. Then, it hit me: I was loading my list from the desktop. That meant that Castle ActiveRecord, which was my data access layer (overkill. Yes, I know it all too well), somehow terminated the database connection, tried reconnecting it after the list was loaded, and (obviously) failed to.

This was the connection string: Data Source=app.bin;Version=3;New=True. Readers used to ADO.NET and SQLite will know this means the database file, app.bin, can be recreated if it doesn't exist. Also, it's supposed to be in the same directory as the running executable (the current working directory). On startup, my application checked if the settings file existed or had a size of zero bytes. If so, the application would automatically create the tables needed and populate them with defaults.

The problem, understood

Sadly, sometime during the application, the connection was closed. When the list file got selected, the current working directory was changed. On trying to load the settings dialog after the list file was selected, the connection was reopened (with the new working directory) and the database file was created. However, the schema would not be recreated, so the settings table would not exist, giving rise to the exception. My mistake was assuming the ActiveRecord would keep the connection open throughout the application's run. It didn't

Attempted solutions

  • In my ActiveRecord classes, I tried setting the current working directory just before any class method was used. Looking back, it wouldn't have worked, since ActiveRecord would already have a working connection to the database before trying to access the table. So it would still be trying to access the wrong file
  • I tried setting the current working directory somewhere before trying to access my ActiveRecord classes/instances. Probably due to the fact that I was hungry and indebted to sleep, I put it in a wrong place, and it didn't work (then again, it might not have worked).
  • Moving the ActiveRecord configuration from the application configuration file to code (using InPlaceConfigurationSource), and using the absolute path to the database file in the connection string, instead of a relative path. This 'solution' was the worst. The application didn't even run after this (again, not on my development machine — not once did I have problems running from my development machine, whether debugging with Visual Studio or running standalone), it just gave that Error Reporting dialog thingie.

Something I did NOT try was setting the working directory immediately after loading the list file. It might have worked. After everything, I scrapped the application and am rewriting it currently. I'm using XML serialization for the settings storage.

I'd like to appreciate the SlimTune developers — SlimTune helped out a great deal. When CLR Profiler failed me, I was able to use SlimTune to find out where my application was eating up some processor time on startup.

Tuesday, July 13, 2010

Water under the bridge

quite a bit has happened in my life since i last updated this rag. no time to talk about the whole of it, though. i simply want to resume blogging. even if i blog nonsense.

talking about nonsense, isn't GMail the coolest? though i'm concerned that it's reading my email...

God is watching...

The children were lined up in the cafeteria of a Catholic elementary school for lunch. At the head of the table was a large pile of apples.

The nun made a note and posted on the apple tray: "Take only ONE. God is watching."

Moving further along the lunch line, at the other end of the table was a large pile of chocolate chip cookies.

A child had written a note, "Take all you want. God is watching the apples."

Staff or slave?

And a little gem i picked up wandering about and not minding my business in the office:

Dear Employer.
I work in your organization and you dictate:

  • The time I get out of bed
  • The time I get to work
  • The kind of clothes I put on
  • The environment in which I work
  • The time I should go for lunch
  • My spending power vis-à-vis my lifestyle
  • When I should go on vacation
  • The number of hours I spend with my family
  • The days I can visits my parents
  • The time I can spend with my friends
  • The kind of haircut and beards I must put on
  • The kind of seminars and trainings I am allowed to partake in
  • The kind of people I spend the greater part of my life with (you cage me with some strangers and call them my colleagues)
  • When I am entitled to "improve my lifestyle" by increasing my income
  • When I should think and what my dominant thoughts should be
  • My geographical location and where I should reside
  • The time I ought to be reasonable enough to jump in bed to sleep
  • And gosh! When I should even sleep with my girlfriend!

Anyway, I thank you for:

  • A guaranteed monthly pay check to fend for my children, parents and siblings
  • Guaranteed medicals for my family
  • Opportunity to visit places I never thought I could visit on my own
  • Putting me off the street and not being labeled as unemployed
  • The prestige I have earned in my neighborhood
  • The opportunity to meet people (colleague and superior) I ordinarily might not have met so easily on my own (my contacts)
  • The insight to learn how a big organization like yours is being run
  • The opportunity to build a capital base to start my own business
  • The opportunity to study human behavior to enable me manage my future employees
  • curbing my excesses especially my “boozing habit” but for the long hours I spent at work, I would have become an alcoholic
  • The knowledge imparted in me when you send me on trainings
  • The freebies that could have eroded my income; phone calls, internet access e.t.c
  • The beautiful lady that sits close to me that I look forward to seeing everyday at work and who might eventually become my wife

At this point, I am confused; should I THANK YOU or CURSE YOU?

Food for thought. Anyway, to ba ka e l'ara to, wa'a wa nkan she si. Laters

Sunday, June 13, 2010

13-06-2010

first, kudos to the WordPress developers, as well as designers and developers who work on plugins and themes for it. I recently migrated the Berachah Foundation website from my custom code to WordPress, and I must say I'm greatly pleased with the results. I slapped on the WordPress Mobile Pack, as well as the Carrington Mobile theme, and I got a nice mobile version of the site (even though the WordPress Mobile Pack comes with its own themes), almost without doing anything. As an aside, browser detection worked perfectly with the S60v5 phone browser I tested, as well as Opera Mini. Bolt wasn't detected as a mobile browser, so I got the full desktop version rendered :(. Anyhow, the really good news is that I can get some sleep now if I make up my mind to.

Wednesday, June 09, 2010

CPanel, PHP, webhosting and other sundry headaches

I should blog more often (among many other things I should do more often). At least, then I'd probably remember the naming convention I use for my posts, since I like to name them by date. Ah well.

A couple years back, I created a custom CMS in PHP for a client. A friend helped with the web hosting and domain name, and after bungling it for a couple months, the site was rolled out. It was my single greatest achievement at the time, as the site used templates, and (theoretically) could have several templates, and the user (should have been) able to switch look and feels (of course, it was delivered late and lacking in features).

This year, due to some things, I tried out WordPress and wanted to switch the site to it after liking it. Reality soon set in. For some reason, I couldn't access the site's CPanel, so I (thought I) couldn't upload WordPress. My connection isn't the most stable in the world, and after trying to upload it via FTP and failing a couple of times, I asked the friend who helped with the hosting to help with the CPanel issues.

My friend is a busy person, and when he got round to it, he had the same issue, and contacted the provider. He told me he'd gotten round to getting the issue fixed, but on my next attempt to use the CPanel, the same thing came around. I contacted him, but decided to try to get the WordPress working myself. Uploading via HTTP then unpacking the archive didn't work either.

Today, I got an idea: Since the webhost has internet, I could download WordPress remotely and unpack it on the server. I got a solution for downloading the archive and created for unpacking it, but I kept getting errors. When I downloaded Unzipper, I also got problems unpacking. So I cooked up my own script for the remote download. Once I confirmed that fopen wrappers were built on the webhost, it became a simple issue of opening the WordPress download with one file pointer, and copying it to a local archive in 8kB chunks. Unzipper helped greatly with unpacking WordPress (zip archive), and I uploaded a wp-config.php file, and now WordPress' installed! Owing to the instability of my connection, uploading themes has been a challenge, but WordPress' ability to download themes for itself has come in handy. I'll start migrating the site to WordPress and soon move the whole to WordPress. And yes, another attempt to upload a theme to the site just failed. Later.

Sunday, June 06, 2010

Rugged chronicles

To any reader of this blog who doesn't know, NCCF Zamfara goes for Rural Rugged evangelism twice a year (Rural Rugged is said to be the 'point' of NCCF, by the way). Rural Rugged involves Corps members going to rural areas for humanitarian & evangelistic reasons (in ZM's case, the strong anti-Christian sentiment prevalent makes it basically humanitarian). None of this is really particularly important, except as a backdrop of sorts to the rest of my story.

So, I'm in Morai (pronounce Mo-ray), a village around Talata Mafara/Anka and fighting sleep desperately. I should be on my security detail patrolling, but it was dark and lonely while the Praise Night is going on; thoughts have been entering my head, forcing me to flee to Security 'HQ' where I'm literally in the light. And wouldn't you know it, it also happened to be in the zone where she serves ('she' not being the person many minds are running off to assume 'she' is).

We'll be leaving later today (it's now a few past 1:00am), and while I'm not quite sure why I came in the first place, I've learnt a little about life, and about love.

On the arrival night, I found myself thrust into Security detail (again!), which ended up with me manning a post meant for three people all on my own. I was supposed to light a fire with wood from Welfare. Fuel & matches were provided — all I needed was to get a blaze going. It was harder than I thought. I'm a born and bred city boy. It was my first wood fire, and I couldn't locate any paper. Twice I doused the wood with fuel and lit it, only to burn up just the fuel. I started looking around for some alternative fuel, and found a slipper lying around. I poured fuel on all again and lit it. This third time, I got a good blaze going in a matter of minutes.

I got thinking about it, and realized that any romantic relationship is a lot like a wood fire. The fuel is like the initial attraction — it's great, but tends to burn out quickly and leave you cold. The wood's the long-term substance or fuel for the relationship — what you'll be living on over 5, 10 years. It's relatively slow to burn, but is the meat & potatoes of your relationship in the long term. Maybe you can call this 'love', even though I personally feel the word's been bastardized. Much like the fuel, attraction gets a relationship going, but can't keep it going. It's often over too quickly. My battery power's going down, so let me summarize quickly: every relationship has both short-term and long-term elements. Utilize both correctly to keep your relationship fresh and exciting. And just like my wood fire needed me stoking it from time to time with fresh, quick-burning fuel like dry grass, as well as push the unburnt wood closer to the blaze, so I wasn't stuck with glowing embers that provided lots of warmth but little light, you need to renew the love in your relationship with short-term and long-term shows of attraction and love.

I learnt some more things, but that's for another day. Later.

Tuesday, June 01, 2010

2010-06-01

finally the chosen month is here! yay! today started out kinda lousy. my roommate (uncharacteristically) took a phone call in the room, and kept me awake, even though i asked him to take said call outside (his voice is loud, you see). at first i was pissed off, and was going to tell him off later today, but since due to it i remembered something i needed to do (2nd quarter — important but not urgent) i'm plenty mollified now.

yesterday morning i made the decision not to ask her out, and sent her a text telling her i wasn't, and why. then i tried calling her to talk it over. a couple times. her phone was busy. then she called just before XtraCool ended. i hope i know what i'm doing, because she's not your run-in-the-mill kind of woman. she's (to use a cliched phrase) something special, quite possibly one in a million. she's the kind of lady you're surprised to see single (guys have learned to download sense into their skulls these days, even if the skulls started out empty dust receptacles — Biyi, you know now). so for the time being, i'm keeping up my (self-given) moniker as the Babeless Wonder. Laugh, darn it!

On a more serious note, i wonder why one of my roommates goes on making/taking his XtraCool calls with speakerphone active and in the room. He's the same one whose phone rings on maximum volume and sleeps through all of it. i've procured a plank for his head the next time he keeps the rest of us awake instead of putting off his phone...as i read from a retweet: If your relationship is so damn complicated that you have to identify it as such on your Facebook, get the hell off Facebook and go fix it. God bless us, every one!

Tuesday, May 25, 2010

2010-05-25

Blehhhh. Or so I feel. Anyhows, today's handover, so I pass the baton to someone else. And finally be free of the 'no vibration' clause in NCCF. I can finally ask that lovely, lovely lady out! Yay? Meh. Just called her. Dunno why the words stuck. Like there was a wall. And I didn't want to climb it.

I've no idea what's up with MTN mobile internet packages. Seem to have gone straight to hell. Odd when you consider that this is after they kicked the cheats off. Then again, maybe not.

Been reading Rapid GUI Programming with Python and Qt. Great book, learning (slowly) stuff I never knew. And I haven't even got to the PyQt part.

Saturday, May 22, 2010

2010-05-22

I have internet again. And for a wonder, electricity. Even though I had to go to a friend's place to have power. Meh.

I remember A saying something about me being always in control. What a joke. Me? Control? I suppose I hide it relatively well, but I'm just about as warm-blooded as he is. Maybe even more so. Which is why, despite the jibes, I stay away from the opposite sex as far as possible. No thanks. Not here in a strange land, where I have few friends and fewer people to question me. It would be all too easy to give in to my body's urges and find someone willing to hop in the sack with me. So I strive to stay where God's grace can still reach me, and sometimes scream out loud like yesterday when the urges get really loud. It doesn't always work though. Like the time I gave in some years back. Sometimes I wonder if this drive for sex is normal, and we're all just hiding it. Or that in my case I'm a freak of some sort. Meh again. Doesn't really matter. As long as I can get God's grace to stay free of sexual sin, I'm happy. Once bitten, run when you see teeth is my new policy. Like I mentioned before, it's harder to keep sometimes.

Dear Nokia, I officially think your software sucks, now. I also think Microsoft's sucks too, but that's a somewhat different matter. Apparently, theirs has to suck, for some unknown reason(s). Or can someone please explain why I cannot download Nokia Ovi Suite Update, required to update my phone's firmware to the latest? It gets to 17MB then goes crazy and keeps downloading. I've googled for answers, but I don't have Eset NOD32 antivirus, and disabling my antivirus doesn't work. I tried getting a workaround my sharing my internet connection through my wireless card to my phone, but apparently couldn't share it. Sorry, Nokia. I guess my dreams of kinetic scrolling (whatever that is) will remain just those — dreams until I find a way to either update Ovi Suite or get an unsecured wireless network to run the OTA firmware update. As far as I'm concerned, the problem isn't solved. Please get a fix, or make it easier for people to get the update. Thanks.

The trailer for the third Blender movie is out, and looking good. Here's a shout-out to the Simtel team, and the Blender 2.5 devs!

Dear MTN, if I lose my sleep to browse overnight on your network, or use valuable airtime to access the internet on my phone, it gets annoying to read 'No suitable nodes are available to serve your request'. Very. Please work on it. I'm a paying customer, okay? Thanks.

Wednesday, April 21, 2010

21-04-2010

Maybe I should give up blogging. Like, I don't update that often anyway, so maybe I should. Whatever, dude.

Finally got my biodata entry app for the biodata forms completed. The hard part was getting to use PyQt — I'd never used it before then. The installer for Windows comes with Designer, but I used Qt Creator to create the UI. First time ever using it this year, too. Or ever, come to think of it. M seemed interested in the app at first, but got hijacked by the anime bug. The (unofficial) Tsafe anime club has currently waded through both Code Geass and History's Strongest Disciple Kenichi, among other, more spotty but equally dubious 'achievements'.

I've recently made a number of bad decisions in a bid to enjoy life some more. Inclusive among them was installing and using apps like Opera Mobile and Fring. They've eaten deep into my airtime. I don't get how Opera Mini manages data so well, and Opera Mobile forgets the second part of its name. Bolt wins by default now, since the beta supports tabs and I can tweet, blog or do anything else with it without paying through my nose for it.

Sleep's pressing in hard...I've got to tidy this up. It's hot here. It's so hot now I'm lying under the not-currently-visible stars. The water in the room is quite warm - not what you'd want to come back to after baking ubder the sun.

I'm now a WordPress fan. After trying to develop a website for the nth time (unsucessfully, even with a working PHP framework; Symfony 1.4.1 generated invalid code at some point following the 'Jobeet' tutorial), I tried out WordPress locally. It's been a joy to use. I guess I'd better polish those rusty web design skills, because my major work for this long overdue project will be to create suitable themes. Well, I'd better move my mat before the ants changed their mind and take me to see their queen. Night.

Friday, April 02, 2010

02-04-2010

I must say it's nice to be editing my blog again. March was — in many respects — a tough month for me. Orientation camp came around again, and since my local government hosts, I was occupied. Other things followed, but the main stem was related to the camp.

In the last month, I completed Brian Sanderson's Warbreaker, book one of The Morcyth Saga, & the first two books of David Eddings' The Elenium. I played with Python & MongoDb, fooled around with PyS60, had my internet subscription run out, attended NCCF orientation camp meetings … so why do I have this feeling of dissatisfaction?

Well, here's to Jesus, and us all: Happy Easter!

Saturday, March 06, 2010

06-03-2010

Ah, my blog. Been a while since I updated it. I'd like to blame my funky internet, but I could have updated if I really wanted to. I just was lazy. Anyhow, it doesn't mean anyone really missed me. Unusually, today I'll be updating my blog in the morning, & not at (or close to) the end of the day as I usually do. A whole lot of stuff happened this morning. Or so I'd like to think.

After the normal early morning stuff, I went to Gusau, stopping over at the NCCF family house to pick up something. There are dogs in the family house. Now I don't like dogs, not since I got a very bad scare when I was around eight years old from my friend's dog. The dogs normally aren't aggressive, but I got a huge shock when all four began barking and came after me; help from the occupants was slow in coming, but not late as I escaped from the house with an intact hide. Something tells me that I will have to take a rain check on invitations to come to the family house until passing out...

For some reason, even though the advertised price of MTN's 3G modem is NGN 8500.00, it seems the price here in Zamfara is NGN 10000.00, and I heard it's the "official" price. I'd appreciate an explanation, since I was hoping to get it at the advertised price (an official MTN partner in Gusau sells them at the "official" price — I'd heard that I could get them for the advertised price, but now that hope has been dashed.

I stumbled across a tweet about Jeff Atwood's article on programmers who can't program, apparently. Also, I stumbled upon another tweet that linked to an article praising sketching as part of the design process. It was a good read, as I do for both applications and designs the same thing — jump right in, so it shouldn't come as a surprise that I have very few completed apps or designs.

Anyhow, hunger's eating me up, so I'll be dropping off here. Later!

Wednesday, February 24, 2010

24-03-2010

I'm actually blogging from my computer again. Yes, I went and re-subscribed for one month more of Glo's high-speed internet package. Except, of course, it's not even speedy, not to talk of high-speed. I'm still averaging 1kB/s with it. And Glo apparently forgot they had an open ticket with my complaint of ultra low-speed internet, even though I complained over a month ago.

Today has been a rather depressing day. Must have something to do with the fact that I didn't spend time praying before I launched into the day. My external harddisk has been acting up, almost all my students failed their Social Studies tests (I'd say less than 2% 'passed', if the low-expectation borderline I've been instructed to use means 'pass'), I wasted a great deal of the day attending to nonessentials, and finally have to stop working with Symfony, unless someone can tell me what's wrong with my setup. I'm using XAMPP 1.73, and I got Symfony 1.4.1 and have been working through the Jobeet tutorial. However, when I try to generate the SQL using symfony doctrine:build --sql command, I realized that the previous command (symfony doctrine:build --model) had generated invalid PHP code on my machine, so the subsequent command failed. Can't seem to find anyone with this same problem, and since my link is too slow to fix the image I tried to upload to show the invalid generated code, I'll be signing off here so I can get my butt kicked in either Castlevania: Dawn of Sorrow or Castlevania: Order of Ecclesia. I had to give up the former because the fifth seal has proven impossible to do with a mouse (yes, I'm using an emulator. No, I don't own a Nintendo DS, nor am I proud of the fact that I'm playing using illegal ROM images) so far, and I'm currently not in the mood for pain (Death whipped my butt the last time I took him on in DoS, and I don't think I want to repeat that pain just yet). Anyhow, time's a-wasting. good night!

Monday, February 22, 2010

Draw a goat

The assignment was the title of this post. The class was Primary 3. The results were...well, see for yourself:

Sunday, February 14, 2010

St. Val's day blues

Hello again. Haven't updated this rag here in a while — about a little over two weeks, in fact. Part of the reasons include plain laziness, dissatisfaction with the way I enter text on my phone (even though I choose it myself), occupation with other issues, & dissatisfaction with my mobile blogging experience, among others.

Plus, it's St. Valentine's day. Merely the thought alone is sufficient to give me the blues. I just got back my copy of Chip Ingram's Love, Sex & Lasting Relationships, was browsing through it last night for the first time & read the introduction.

Chip asks in the introduction what caught your eye about the book. Was it the cover photo of a couple rubbing noses together on a windswept beach? Do you want to trade places with one of them? And I realized that, yes, I do (I think whoever the male model for the cover photo is, he's a lucky bugger. She's hawt).

Quite on the contrary, my experience has been anything but <insert appropriate adjective here>. Except for a short, very misguided & exceptionally disastrous foray into the murky waters of a wrong relationship with someone else's girlfriend, I've basically been on my own. As a couple of friends & I would quip, I've been playing the game, but no touchdown. Even the amorphous 'relationship' I was venturing into seems ill-fated now (apparently I have been fishing in someone else's pond; the trouble with that is that the fish are almost certainly copyrighted & you never know if the waters are shark-infested. Let those who understand hold their peace, & those who don't seek enlightenment. 'nuff said).

So it's St. Val's day & I'm without a date, generally dissatisfied with the women around me & probably too cynical to like any of them romantically without being threatened, drugged, hypnotized and drunk all at the same time (or God showed up physically & spoke in a baritone voice. Don't get me wrong — lots of nice ladies here, but I'm looking for a certain, mostly indescribable more; the people who have it are thin on the ground & are largely unavailable. And can some tell me why it has to be a baritone voice? I'm sure the same God who gave Mel Blanc lots of voices can do many, many voices too).

Anyhow, I'm drifting to the conclusion that I'm barking up the wrong tree (don't I always) & have been spinning wheels for as long as I can remember (that's a nice way of saying being very active, but completely ineffective. It goes nowhere. The imagery is one of a rodent in a cage with a wheel in it. It may run & spin the wheel, but won't get anywhere. Much like a treadmill. Apologies to my readers who already know all this stuff. I just want to make sure we're all on the same page here). I've dabbled into development, design, 3D & even digital music production (I really suck at this last one, yet for some reason I don't want to give it up. Probably emotional, since I have over 8GB of production-related software on my harddisk, mostly VST plugins. Can someone please come and download sense into my skull? I've even begun dabbling into Flex — last night — & if left alone long enough, Air). For all my dabbling, I've nothing to show. All this has to stop. Why do I get so easily distracted? Why don't I have fewer things I'm good at? Why don't I have results consistent with my ability? Argh!

Anyhow, rant over (for now). Dishes need to be done, & I've texts to send, plans to make, and so on. Later. Enjoy Val's day either single or with someone. You're someone of value, so treat yourself that way.

Saturday, January 23, 2010

Geh!

I hate computers. Sometimes I wonder why I even bother. I've been trying to install Photoshop CS4 trial for a couple of days. No dice. Since my internet connection peaks about 1KB/s, it's troublesome even getting information on the issue. And I'm not the only one. People all over the world have had issues installing Adobe's CS3 and CS4 products. I never had such problems on Windows XP, but I've since moved to Windows Vista. As Jester says in Devil May Cry 3, "Welcome to Hell!"

I was working on something last night, and needed to fire up Red Gate's Reflector, and it gave me some grief about updating. Problem is, as I mentioned above, my "high speed internet" package has been downgraded (possibly due to the environment I'm in), and so downloading the 1.05MB update took over 15 minutes (a great deal better than the time I was online for one hour to download the same software, I must admit). And I'm trying to build Castle ActiveRecord, it apparently has different ideas. I can't remember how I built it the last time I used it, and my link is too slow to be trying to get the latest trunk over Subversion (I have been trying to complete the download of Windows Powershell 2.0 for Vista for over a week now. I need Powershell to install SQL Server 2008 Express, but I'm not sure if version 2.0 will work. I'd have downloaded version 1.0, but thanks to Windows Genuine Advantage not working with my slow link, I've been forced to try to get Powershell 2.0, which weighs in at 32MB instead of 1.0's much lighter 5MB, but doesn't bother with WGA). All I'm trying to do right now is get info on how to redirect both standard output and standard error to the same file, so I can diagnose what to do about Castle not building, but Firefox can't find www.google.com.ng. I couldn't even publish this this first time I tried to. I'd have had an easier time just fooling around. It was when I started trying to get work done that all this nonsense started cropping up. I hate computers.

Update: I finally got SQL Server 2008 Express setup going, after a (mostly) sleepless night. I think this is going to be the last time I use w.bloggar. I can't seem to enter a post title. Now the power's off, so I hope this setup hurries itself up without draining the battery.

Saturday, January 09, 2010

08-01-2010

And a brief vista into my world: Blender 2.5 is sexy, even in alpha. Was in a four-hour-long meeting & developed a horrible headache that lasted the rest of the day; as usual, Infotech CDS club training was again relatively empty. The scheduled election didn't hold, meaning something troublesome may show up very soon. I wish some people would think less highly of me, in the sense that their expectations of me would be less, therefore less troublesome.

I think the world is standing on its head, or at least public opinion is. One person decides to bomb a plane from Nigeria (who in all probability hasn't even been in tne country in years), & suddenly we're a "terrorist state"? Give me a break. I don't really expect better anyway, I guess I'm just blowing off steam. In a more humorous light, a dead cat was removed from the ceiling of Party House. The awful stench of it! M & I had to eat out. The entire male section of PH cleared out for a while. Well, I's off.

Thursday, January 07, 2010

07-01-2010

Happy new year, reader, whomever you may be, frequent reader or no. May this year be for you a great one.

I hate everything. I'm in that kind of mood today. It's 12:41am here & I'm sleep deprived. I'm using a phone to blog because I realized MTN GPRS is faster than the Glo HSDPA modem I'm using to update my antivirus (avg spd 1.1kB/s).

My bank gave me an interest of NGN 1.51 & actually bothered sending me a text (for which I'll be charged NGN 10.00) to inform me.

I'm back in Tsafe, where the Glo hi-speed internet has magically become low-speed & is too slow & unreliable even to update my antivirus. P(w)HCN has struck, so I'm running the modem off the laptop battery. One roommate is chatting on MTN XtraCool, one's snoring, & I'm wondering how I've been reduced to downloading less than 20MB in 4+ hours online.

All this negativity's getting to me. I'm going to mention things I'm grateful for.

  • Family, friends, church: my sanity would have frittered away long ago if not for them. Maybe even my life itself.
  • Instead of tapping keys on a keypad to blog, I'm tapping a stylus to a screen (let the ignorant remain so). I'm also very excited about what God's about to do in a certain friend's life (oga, we dey reach that top together).
  • God was über-faithful in 2009; & last I checked He hadn't died, so 2010's shaping up to be a great year.
  • My roommate got back from home to make his clearance yesterday.
  • One of my kids gave me some weird stuff to eat on Monday, followed me around & insisted (in the persistent, cute, but annoying way children do) I ate it myself. I'm still alive, & I think everything still works, so that's a good thing.
  • I'm tired enough to sleep. The antivirus actually finished updating, leaving the battery tanked up enough to do some stuff with Joomla, Python, Python for Symbian Series 60, anime or whatever.

There's a lot more, but I'm gonna grab me some shuteye. What've you got to be grateful for?