Skip navigation

Tag Archives: debugging

My laptop turned one-year old last Monday. What could be called remarkable for this gadget anniversary is the fact that I had legitimate cause to claim warranty in the allotted one-year period. It’s not a show-stopper defect that required servicing. It’s something minor though it’s one of those minor things that tend to be really annoying.

One day, the down arrow-key button just stopped working (or started over working depending on how you view the symptoms).

That day I noticed that Windows 8 automagically loaded even if I missed the 10-second period where GRUB asks you for a confirmation on the OS you want to load. I did not fuss too much about it since I was about to play Skyrim, and was going to boot into Windows 8 anyway. However, later that day, when I wanted to code and so had to boot into Linux, I noticed the automagic and started wondering.

In Linux, I noticed that the browser randomly scrolls down and scrolling up with anything (mouse wheel, scroll bar drag, page-up, up arrow key) had no effect as it just drags back down. Then I started switching workspaces via the Ctrl+Alt+Down key combo which just didn’t work.

This is where I started experimenting, starting with GRUB. With no further delay, I present you, the symptoms:

  • At GRUB, I noticed that the selection cursor automatically goes down to Windows 8 (the bottom-most option). From there, while in the 10-second grace period, you can still go up (by pressing `up`) but not down.
  • Inside Linux, I noticed that Ctrl+Alt+Left does not work as well.
  • Inside Windows, while in Notepad, the down button really does not work. All the other direction keys seem to be fine though.
  • Inside a terminal session in Linux, pressing `down` does not make your terminal command history go forward.

As I said, not really a show stopper. At vim, my text editor of choice, I’ve grown accustomed to using the h, jkl keys to navigate around my document; for everything else, I have a mouse with a scroll wheel. At bash, I seldom go through my command history via the up and down buttons anyway; I mostly use Ctrl+R (reverse search). As for workspace switching, I can still get to any workspace as long as up and right are still working and wrap-around behavior is enabled. But this defect just bugs my workflow, not to mention the annoying scroll down browser behavior told earlier.

As when this happened, the machine is still under warranty, I thought it prudent to claim it. Everything’s fine, save that I went to this year’s GDG Philippines DevFest without a laptop. I had to leave it with Acer for three weeks as they ordered a new keyboard. Those three weeks, I managed to sleep on time and devote time to my other hobbies.

I wonder what could’ve caused it though.

Now, I’m having another problem, still minor but perhaps less annoying. For some reason, USB mice are working very erratically with my laptop. At first I thought that the one I’m using just failed. I’ve been using it for less than over a year and it’s not any recognizable brand but one that has sentimental value; I wouldn’t want to let it go too easily.  But I just bought an A4 D530FX, saw that it works well with my computer at work but not with my laptop. I’m not sure if I should feel happy or sad that I seem to have established that my no-namer, sentimentally-important mouse is still fine1 but my laptop may be in for another maintenance check.

(In retrospect, I could’ve saved myself a few hundred pesos by plugging my sentimentally-important mouse to another computer—like the laptop my sister is using, or the old Windows XP desktop which we only keep for printing, or the beast I use at work—and check if its working fine there. Oh well, back-ups can still be considered an investment no?)

It’s not a big problem as the touchpad is still working fine. What suffers is my Skyrim. Damn. :(

With that all said, I’m still pretty pleased with my laptop. Though I, as part of being a “wise consumer”, do check out reviews of products before buying them (especially when I buy uber-new products, like what I did with my XPeria Z), I do not place that much value in them. It seems to me that most reviews today come from people who have just used the product concerned for a test drive, just in time to write a blog post about it (and get their paycheck). Well, I’m buying things not to use them for a test drive but for a pretty long time. I’d actually like to see my purchases as investments.

After a year, I think I’m in a position to make a short review of my laptop no? Quoting from this blog’s “About” page as of this writing:

Unit Model: Acer Aspire V3
Processor: Intel Core i5 (2.5GHz) with Turbo Boost up to 3.1GHz.
GPU: NVIDIA GeForce GT 630M with 2GB dedicated VRAM
Operating Systems: Linux Ubuntu 12.04 LTS (Precise Pangolin) and Windows 8

So well, the pros: I think it looks really sleek. It’s no MacBook, but I find the design really aesthetically pleasing. It is not as light as I would’ve wanted (when I bought this, it was due to an emergency; it was still quite out of spending schedule) but I’ve no issues with weight since, unlike when I was in undergrad, my laptop mostly sits on my desk at home now. Plus points for having the order of the Ctrl, Fn, and Super2 keys in the same order as my previous one.

The specs may not be top-notch but it is sufficient for games (SkyrimCiv V, KingsRoad, anyone?) and the side projects I’m doing. I find that Windows 8 really plays nice with it, though it is not a touchscreen model. Though I think it must be said that I’m way more pleased with Windows 8 than your average Lifehacker commenter.

And yes, there are cons: one of my very first issues with it is that it doesn’t have any indicator if I’ve my Caps Lock on. It may not be a big issue for most users but it does bug me: imagine getting your web passwords wrong only to find out that you’ve accidentally hit Caps Lock on. There’s also this weird bug it has on Google Chrome where GC suddenly hangs for no apparent reason. It happens for both Windows and Linux but Linux does not seem to be able to recover. I’ve checked the logs, reported, and Googled about this bug but I don’t find much. I guess it’s an architecture-level issue, then? I’ve switched to Chromium in an attempt to isolate the problem further but to no avail.


So, hey, a keep-alive. Between me not being able to keep my New Year’s Resolution (at least the part that tells me to write about my experiments here) and some other problems, personal and/or technical, I’ve been going through lately it feels refreshing to be actually writing in casual English instead of code.

See you around! ~Chad

  1. Though you may say that this needs further testing, I noticed that it works quite well in Linux but really annoyingly erratic in Windows. So yes, sentimental value and all it must be still fine. []
  2. The one with a Windows logo printed on it. []

Slowly, the red-filled rows in our schedule table crept down, indicating more and more (critically) delayed deadlines for builds. We haven’t stopped coding ever since code started rolling and deadlines have been moved a few times already to boot. But, sadly, we just kept missing build deadlines.

However, before I continue with my story-telling, I really just need to relate some news to you…

It seems that The Social Network has finally been beaten for the title of “Best Geek Flick”. Received with much geek acclaim, the competing movie was screened the night of 25 May, 2011, a tonight-not-again type of screening. The movie is entitled Sir Zhen* vs. The Server. Shame I missed it.

Some reviews,

…Unexpectedly, there are no logic errors found. We asked help from our mentor kuya P of what is happening. Sir Zhen approached us and asked if there are any problems and we told him of what is happening. Sir Zhen debugged the server… In a way that I cannot comprehend. We commonly debug our puny logic for hours but Sir Zhen only took about 30 min or so and the level of the logic is too high for us to handle. I cannot put into words of how I see it, the nearest I can think of is Pure Awesomeness…

~Luigi Mari Tenerife. Co-intern from UPLB. Emphasis added.


Lahat ng narinig mo sa isang sem ng Operating Systems class maririnig mo sa loob ng thirty minutes!

~John Patrick Albacea. Co-intern from UPLB. Words are not verbatim.


Hindi tumitingin si Sir Zhen sa code. Dun lang siya sa dump log! At nahanap niya!

~Luigi Mari Tenerife (again). Co-intern from UPLB. Words are not verbatim.

Certified must watch! (If only it wasn’t a one-time big-time show)

And now, to proceed…

So, we had four build deadlines last Monday. Three of them went dead-up to “Critically delayed” but we eventually managed to build two. Builds 3 and 4 were eventually reslated for the next day.

I really find it hard working with untested base code. My responsibilities build mostly upon them and so for the past few days I found myself a self-styled discoverer of bugs. Some bugs are subtle, others not so. Some are just effects of snippets unupdated to reflect recent changes in the architecture while some are due more to carelessness than other factors.

And of course, after I’ve hunted the bugs in the base code, I would have to hunt down those that would appear in mine—my code built on the debugged base code. My life, in short, has recently been an endless cycle of test and debug. I feel as if my wish of becoming part of the API Team was fulfilled, albeit being in a debugging role; I work on the base classes but I never really author one. You won’t find a base class signed with “@author The Chad Estioco“.

Working with the base classes means that, for the past few days, I’ve been trying to do acrobatics with Java keywords such as implements, extends, protected, abstract, and synchronized like never before. For some reason I can’t explain, our module always seem to be a special case when dealing with the base code. Just like today, when I had to send tokens in response to a tap action from the user—ours seem to be the only module that needs to do that so I had to put in some extra effort and ask for some extra help to make our code fit the base architecture.

Fan as I am of System.out.println in debugging, I admit that I wouldn’t have been able to get past all those bugs without a tool like the Eclipse debugger. Woot. I guess I have a new friend.

That’s all for now. Stay bug-free and see you soon. ~ The Chad Estioco

*In case you missed it from my first post, Sir Zhen is the person in charge with Azeus’ summer internship program. A bit of trivia: Azeus is using an internal tool for browsing the databases involved in their projects. I poked around this tool a bit and it turns out that this internal tool was created by year 2003 interns**. Sir Zhen was already the person in charge with the internship that time.

**Funnily, one of the 2003 interns’ had a surname of Estioko.