Butterworth low-pass filters

September 4th, 2008 at 0:14 · Filed Under At Work, Call Me a Geek, Days in My Life, Mathematics, Software Development · Comment 

I was reading about Butterworth low-pass filters since two weeks ago. Signal processing was not my favorite but this particular linear analog electronic filter had somehow captured my attention. I have interns working on some projects. One project uses Butterworth low-pass filters to process signal acquired from some sensors.

I have to verify their works using Mathematica on Mac OS X for data modeling. But there is a problem with this software. It does not have a built-in function of Butterworth low-pass filter so I need to build one.

The gain G(ω) of an n-order Butterworth low pass filter is given in terms of transfer function H(s) as:

where ωc is break frequency.

The Mathematica code with break frequency normalized at 1 rad/s:


butterworth[w1_, w2_, o_] = 1/(1 + (w1/w2)^(2*o));

LogLinearPlot[
 Evaluate[Table[
   10*Log[10, butterworth[w1, 1, order]], {order, 5}]], {w1, 0.01, 100},
  PlotRange -> {-100, 0}, PlotPoints -> 100, ImageSize -> 400]
Export["butterworth.jpg", %]
Plot of the gain of Butterworth low-pass filters of the n-order 1 through 5.

Plot of the gain of Butterworth low-pass filters of the n-order 1 through 5.

Writing a conceptual paper

August 17th, 2008 at 0:00 · Filed Under At Home, At Work, Blogging, Days in My Life · 2 Comments 

This may or may not be the greatest invention or rather I will not call it an invention yet. I am thinking of how to write a paper to record the conceptualization of my idea which I talked about earlier. First, at this point, I can’t discuss my idea with anybody in order to protect my interest; that makes the writing more difficult. Second, I have nothing to prove so writing this paper is like writing a Sci-Fi novel. So, I need a different approach, may be.

I dug out my collection of conference proceedings yesterday afternoon, hopefully I could find some inspiration. Obviously, I haven’t.

Hello? What is Ada?

July 9th, 2008 at 23:46 · Filed Under Ada, At Work, Blogging, Days in My Life, Seminar · 4 Comments 

I was giving an Ada talk this afternoon. The room was quite packed with students although not full. They were mainly 3rd year sem 1. Most of them were looking at technologies that they could work with their FYP (Final Year Project).

While I regaled them with fascinating true facts of Ada, I could see various reactions on their innocent and ignorant faces. Almost half of them gave an expression of “What is Ada going to do with my project?”, “What is Ada? Never heard of it.” or “Ada is old technology and is unpopular.” It was years of experience telling me not to waste too much time with such audiences. I quickly skimmed through some technical facts which they wouldn’t understand and continue regaling them with some interesting facts.

Finally, I had come to the end of the talk. It was the questions and answers session. No one had asked any questions except a girl who asked me about C# after the talk session was over. I explained to her the benefits of Ada over C# but she said she would have to start all over again. Again, my instinct told me not to waste time with such attitude and I turned my focus onto the two students whom I am supervising now. I continued with them a discussion of their project.

Unlike a couple of years back, I was too over-enthusiastic about Ada. I would talk regardless of audience reactions. After a few talks and a seminar this year, I find that I have changed. My enthusiasm is parallel to audience reaction.

Working at Honda?

June 30th, 2008 at 13:12 · Filed Under At Work, Autos, Blogging, Critiques · Comment 

I was working at Honda’s Showroom (KAH Motor) while I waited for my car to be repaired since 0830 this morning. One thing Honda has done right is the 3S (Sales, Service, Showroom) Center. They provide free drinks, Astro and WIFI for customers. The waiting area is very comfortable and cozy. One thing lacking is insufficient seats.

It was great experience to do my work at Honda’s showroom. I have a lot to prepare for the Ada Workshop tomorrow.

Ada Obsession

June 17th, 2008 at 21:25 · Filed Under Ada, At Work, Blogging, Call Me a Geek, Software Development, Web · Comment 

Well, well, well. Kazeserver alpha RC1 has to be delayed due to some design issues and I am rewriting most part of the software so that the source can be understood easily. For the past two weeks, I was troubled by the old design but I have got a new picture now.

Isn’t Ada code easy to understand? Well, yes. But I was using a lot of Unbounded_String in records which made my code hard to read and understood. While Unbounded_String is compatible with database operation, it lacks the understandability and readability if compared to String (1 .. 10) for example.

Today, I am totally obsessed in Ada and am feeling the strongest Ada obsession after a couple of years. The feeling is still burning. If my Ada obsession keep burning, I believe I can release KazeServer for alpha testing before of June. Hopefully.

Increased productivity

June 14th, 2008 at 1:18 · Filed Under At Home, At Work, Blogging, Days in My Life · Comment 

After solving the post-commit hook script problem (read here), I am a happy software developer again. I am able to receive post commit emails to help me keep track of changes in my development work. I have been experiencing the same level of efficiency and productivity before this problem struck me.

I guess I am happy of the whole week of activities and I am signing off to bed.

Gourmet Chocolates

June 13th, 2008 at 23:11 · Filed Under At Work, Blogging, Food, Gifts, Marketing · 1 Comment 

I love chocolates! Recently, I craved for chocolates because of the increased brain activities. Chocolate is the favorite food while I am working on computers. Besides providing more energy for my brains, I love the way it melts in my mouth. LA has baked some chocolate cookies last week and I almost finished them.

I found a site which sells delicious gourmet chocolates. Gertrude Hawk Chocolates is made of fresh and finest ingredients. It is dedicated to create the best gourmet chocolates which include dark chocolate and other mouth-watering, delicious Chocolate Smidgens, caramel-dipped apples, gourmet summer taffy and many more.

Gertrude Hawk Chocolates also provide gift giving service. Their beautifully gift-wrapped assortments and pre-made gift baskets add more values to your gift-giving needs. Besides, you can also create your own personal gift with their Create-a-Basket program.

Hmmm… I wish to receive a Gertrude Hawk Chocolates gift basket.

DocBook Publishing - Output to HTML

June 6th, 2008 at 23:24 · Filed Under At Work, Documentation, Linux, Software Development · 3 Comments 

I learned about DocBook last year and found it a great tool for technical documentation. It is a XML based semantic markup language. The DocBook is originally intended for computer hardware and software documentation but it is great for other documentation purposes.

I have been working on some documentation, new and converting existing from Lyx to DocBook. With DocBook, I am able to publish the contents easily to many formats, namely TEX, text, pdf or HTML. I had been trying to output some of my DocBook documentation to HTML.

This afternoon, I have finally succeeded to publish to HTML. I installed some DocBook packages on Ubuntu. Here are the packages you need to get DocBook going:

  1. docbook
  2. docbook-xsl
  3. docbook-xsl-doc
  4. docbook-xsl-doc-html
  5. docbook-xsl-doc-pdf
  6. docbook-xsl-doc-text
  7. xsltproc
  8. and optional xalan and fop

To output your DocBook document to HTML, simply this:


$ xsltproc --output paper.html \
/usr/share/xml/docbook/stylesheet/nwalsh/xhtml/docbook.xsl\
paper.xml

You can turn on chapter and section numbering by setting chapter.autolabel to 1 and section.autolabel to 1. To include the chapter number in every sections, set section.label.includes.component.label to 1.


$ xsltproc --output paper.html \
--stringparam section.autolabel 1 \
--stringparam section.label.includes.component.label 1 \
/usr/share/xml/docbook/stylesheet/nwalsh/xhtml/docbook.xsl \
paper.xml

Patched a security hole in KazeServer

June 4th, 2008 at 14:46 · Filed Under Ada, At Work, Software Development, Web · Comment 

While I was at Honda waiting for the technician to reprogram the ECU, I found a security hole in the authentication part of KazeServer. An unrecognized user id with a null password would grant access to KazeServer but without any significant usability but posed a potential risk.

I quickly identified the cause and rectified the problematic logic in the program design. One down and many to do. One of the other critical problem is that KazeServer will get over with initialization and execute even without the MySQL server is running. A serious bug though.

Another 3 more days to release Alpha RC1 and yet so many problems and unfinished parts. I feel the release will have to be postponed then.

Pre-Alpha RC1

June 2nd, 2008 at 22:46 · Filed Under Ada, At Work, Blogging, Days in My Life, Software Development, Web · Comment 

I am in the midst of getting the KazeServer to roll out. During this pre-Alpha RC1 stage, works have been a little pressured especially cleaning up parts of the codes to make it neater and more efficient. A number of factors are also affecting during pre-Alpha stage.

One of them is the gnat Ada compiler issue on Ubuntu Hardy Heron or 8.04. Hardy comes with gnat-4.1 with a number of packages not added. Without these packages, I can’t build AWS-2.3. So, I have to roll out Alpha RC1 on Mac OS X until Ubuntu Intrepid or 8.10 with gnat-4.3 is released (hopefully with gnat-4.3 by October). I have another option which is I have to move to Debian Etch with gnat-4.1 but including the libaws-2.2.

libaws-2.2 is a pre-built library for AWS on Debian Etch. I am developing using gnat-4.4 and AWS-2.3 on Mac OS X. Moving to Debian Etch means I am downgrading the version of gnat and AWS and I feel a little skeptical about it. This is one thing I hate most, version inconsistency among the Linux distro.

After talking to my friends on this matter, it looks like I have few choices but to target on Mac OS X for the moment considering the tasks of installing and get the Debian Etch up and a whole lot of uncertainties in gnat-4.1 and AWS-2.2.

Entering Alpha stage

June 1st, 2008 at 22:35 · Filed Under Ada, At Work, Days in My Life, Software Development, Web · 1 Comment 

Finally, after weeks of experimental development, KazeServer is entering Alpha development stage. I expect to roll out Alpha RC1, hopefully before this weekend.

KazeServer is a web-enabled membership management system that allows registered members of an organization to login to review their membership data and other membership related transactions or records. KazeServer is developed 100% with Ada and AWS (Ada Web Server). The application itself is a web server. No web server, e.g. Apache, is needed to run KazeServer. It is a totally stand-alone independent application with a built-in web server (AWS).

Talking to a wall

March 8th, 2008 at 1:53 · Filed Under Ada, At Work, Blogging, Conferences, Software Development · Comment 

I had two talks about Ada at MMU (February 25) and UTAR (March 5). Among the local universities I had given talk about Ada, UTAR was the only university where I had given more than 5 talks over the years. According to my previous experience at UTAR, the response from the students were quite good.

On March 5, the talk at UTAR was the worst as if I was talking to walls or stone sculptures. The students were acting very rude by ignoring my talk. They were doing their assignment at the computers instead of listening to my talk. The talk was rescheduled to another venue which was in a computer lab. Nonetheless, I wrapped up the talk quickly. I skipped many parts to take it to the end and at the end of the talk, no one had asked any questions. I asked them some questions instead and of course, they did not know to answer. Obviously, they did not pay any attention at all.

In contrary, the talk at MMU on February 25 received better responses from the students.

Japanese Cultural Performance

March 2nd, 2008 at 23:58 · Filed Under At Work, Blogging, Days in My Life, Karate, Social · Comment 

The MMU’s Japanese Language Society had organized The Japanese Cultural Night on March 2. My karate doukoukai was given an opportunity to put up a performance on that night. The lead was established in December last year and my students and I had been busying for the performance since January and especially after the Chinese New Year.

Tonight, it was finally over, after two weeks of preparation. IMHO, the performance was very good comparing to previous performance. More photos and story here.

I lost my cell phone

February 12th, 2008 at 23:26 · Filed Under At Work, Blogging, Days in My Life, Mac OS X, Phones, Sony Ericsson · 1 Comment 

Sony Ericsson K700iI had to go to one of my client’s outlet at Sentral Melaka to service their IP camera. When I arrived at the outlet, I received an SMS from LA followed by a phone call from Richard. He asked me lot of questions about his insurance claim and also to thank me for providing assistance and information about his insurance claim. I remembered clearly I put my Sony Ericsson K700i which I bought in 2005.

I was a Nokia user before switching to SE because I read about how seamlessly SE K700i syncs with Apple’s Mac OS X applications via Bluetooth. The SE K700i is a very nice phone with many features I love about. One of them is K700i can be used as a remote control for Apple’s Keynote presentation software. The control is via Bluetooth as well.

Soon when I realized it was not in my waist pouch, I quickly dialed the number using another phone. The phone had been switched off. Total silence. It’s gone! A phone which has been my friend for almost 3 years is now gone.

I went back to the outlet after taking Dmitry from school and the staffs told me they didn’t see it. Disappointed.

GPS data uploaded

January 31st, 2008 at 23:44 · Filed Under At Work, Blogging, Business, GPS, Technology · Comment 

Finally, I have had the time to upload the GPS data I collected from yesterday’s delivery. The data is now all in the Windows box. It is too late to remove some unwanted data (data from other trips e.g. Zakimi on Okinawa and etc.). So I just make another copy of all the data and probably will edit them during this CNY.

I am kind of thirsty for more GPS data from delivery or trips to alien places. Anymore delivery? It is kinda fun. It is like treasure hunting, or tracking down a location. It is really exciting and fun!

Orders All Done!

January 29th, 2008 at 13:45 · Filed Under At Home, At Work, Business · Comment 

We received an order of 11 hampers from KL last Saturday. After 3 days of sleepless night, finally we had all the orders done up and ready for delivery tomorrow. LA, especially, has 3 sleepless nights. She did not sleep at all last night. I just done helping her to get the last two hampers up so that she can wrap them up in the afternoon and go to bed early tonight. I will go to bed early tonight. It will be a busy and hard day tomorrow to delivery to various locations around KL. I will be traveling alone tomorrow as the car will be a load full of hampers.

IP Flooding

January 22nd, 2008 at 14:17 · Filed Under At Home, At Work, Call Me a Geek, Days in My Life, Hacking · Comment 

I am experiencing IP flooding on my router. It notifies me by email about this attack. Right now, I have identified the source and hopefully I can nail this attacker soon. This is not the first time I experience IP flooding. I have received quite many email notifications in the past 3 weeks but I was out. It is coincident that I am still at my computers solving some server problems.

SVN setup

January 22nd, 2008 at 11:53 · Filed Under At Home, At Work, Call Me a Geek, Computing, Days in My Life, Hacking, Linux, SCM · 4 Comments 

I’ve finally found time to setup svn at my home net after so many months. My svn server was down when my previous Linux box was down with a dead hard disk last year. The setup was quite a brisk. I had everything installed and configured last night. The test for remote access using a url was successful. I could import, checkout and check in. Because it was already late, about 1AM, I felt rather tire and went to bed.

This morning, I hacked some codes to provide a rather informative post commit email notification. All are done except the check in will stall. It takes a long time (and possibly hang!). I have yet to fully test before I begin my development project again.

A Joyful Night

December 22nd, 2007 at 11:11 · Filed Under At Work, Blogging, Days in My Life, Family, Holidays, Karate · 2 Comments 

Last night, after giving the grading test to three students at the doukoukai, a group (20+) from Bukit Beruang Methodist Church came to carol at the doukoukai. All, including my kids were having fun. For the first time, my kids saw a large group singing Christmas carols. Dominik, especially, was in “shocked” seeing so many strangers with Santa’s hat!

Uechi-Ryu Zankai Christmas

More pictures and story here.

We wish all our friends and family a Merry Christmas, Happy Winter Solstice, Happy New Year and best of health.

Ganbatte kudasai!

First Commercial Photo Shoot

December 8th, 2007 at 16:07 · Filed Under At Work, Days in My Life, Photography · Comment 

Just came back from the photo shoot at the studio. It was a real experience. The portable studio kit was easy to setup. It took less than 15 minutes for me to setup and lights up.

I met with a challenging and look impossible task. How to make a bouquet of flower to stand without a container/vase and not to let any instrument visible in the photo? It would look like as it floating in the air.

Candy Flower Bouquet

I had to improvise a little stand to support the bouquet vertically. I loved the challenge and finally solved the problem.

A great news and a great start

December 8th, 2007 at 11:13 · Filed Under At Work, Business, Days in My Life, Family, Holidays, Shopping · Comment 

What a great news LA brings home. She makes her first sales to two neighbors. Good saleswoman she is! I am really happy for her to have a great start today.

Today is a happy day for me. She got a great start and I received a great lesson from Gandalf.

Thanks, Gandalf!

Portable Duplex Scanner

December 4th, 2007 at 1:25 · Filed Under At Work, Business, Computing, General, Marketing, Shopping, Technology · Comment 

I have a Canon LiDE20 scanner and it works perfectly on my desk. One annoying fact about desktop scanner is that it can scan both side at the same time. The scan job becomes quite tedious and tiring if there are a large number of double-sided document to be scanned.

This portable duplex scanner, ScanShell 3000DN, can scan double-sided document in one pass. Its portability and weighing at 0.59kg make it easy to tuck along on any business trip. Besides scanning documents, it is also useful to scan business cards.

ScanShell 3000DN plugs into any USB2.0 port. The scanner does not require external power supply. It can scan any documents and save to PDF or any of the following graphic formats: BMP, JPG, TIF, PSD, PCX, PNG or TGA.

When I am on business trip or visit project sites at universities, I need to scan some documents during most of the visits. I also like to scan business cards of whom I met so that I can keep organized and I am not afraid to misplace those valuable contacts. Perhaps I should put this in my wish list as this year Christmas present or may be include it in the budget 2008!

Perfectionist at work

November 8th, 2007 at 22:07 · Filed Under At Work, Blogging, Call Me a Geek, Days in My Life · Comment 

It is not easy to work with a perfectionist. It is unusually demanding to with one. I know but I like to work with a perfectionist. The worst thing is that I am also one. It is also very difficult being a perfectionist. Perfectionist has outstanding demands and high expectation.

But being a perfectionist is an advantage. A perfectionist is very good at detailed works and usually will not satisfy when the result is not finer than the expectation. This could send most people on their nerves and become mad.

HP 810C DeskJet Cartridge

October 25th, 2007 at 10:01 · Filed Under At Work, Computing, General, Marketing, Shopping · 1 Comment 

I have an old Hewlett Packard (HP) 810C DeskJet which I have not been using for a long time. Recently, I was seeing a need to print some color name cards so I took out the printer and connected it to my Apple Mac Mini. It still works but two colors have dried up. I called a few vendors but could not find the cartridges for it.

I came to Cartridge Finder and found the cartridges for HP 810C DeskJet without any effort. CartridgeFinder.com’s user friendly interface lets you easily figuring out which cartridges are required for more than 10,000 different models of printer, copier, and fax machines.

This site also searches PriceGrabber.com’s merchant listings to find you the best deals to save you time and money.

Busy with Dojo

October 14th, 2007 at 22:56 · Filed Under At Work, Blogging, Days in My Life, Karate · Comment 

The opening of the Okinawa Karate-do Uechi-Ryu Zankai Malaysia Shibu Dojo at Bukit Beruang is only 17 days away and there are still a lot of works to be done at the dojo. Patching, cleaning, washing, painting, decorating, fixing, etc, etc, etc…. Whew! It’s not an easy task.

This will be the first Uechi-Ryu Zankai dojo to be opened in Malaysia and I feel a little too much of pressure after I decided to open the dojo. I have been teaching karate in a community hall at Bukit Beruang every Saturday evening. Sometimes, the training is interrupted by functions at the hall although I’ve reserved it. They give higher priority to functions rather than sports.

I was thinking it would be better to have a place of our own so that the training would not be interrupted. And it would be nice to have a decent place to receive visitors who are interested in our training.

I hope the dojo will go well and begin to prosper.

Adrenaline Hack

September 25th, 2007 at 14:39 · Filed Under Ada, At Home, At Work, Call Me a Geek, Computing, Days in My Life, Hacking, Mac OS X, Software Development · 4 Comments 

Wow! I’ve done it! Yes! Yes! Yes!

After a successful hack to receive a server-push JPEG stream from a video server (more story here), the next challenge for me was to display the JPEG in a GUI window.

I have been trying to get Carbon binding to work with gnat 4.3 on xcode but I am forced to abandon it for a while. I switched my target to GtkAda which will require X11 on Mac OS X. One plus side is that my application will be platform independent if I use Gtk/GtkAda. That means my application can be compiled and run on Linux, Solaris and Windows with the platform-independent GUI. More business may be and hopefully.

I was working to get GtkAda to work on my Mac since yesterday but I had corrupted some of the files I installed with Fink. Fortunately, I have a backup (actually I copied) on my MacBook but I guess I won’t need it anymore since the Gtk+2 and GtkAda are working on my Mac Mini. I will delete the copy on my MacBook later and install it with the working Gtk+/GtkAda.

I spent the entire morning and noon to write a single window, stripped down application to display the JPEG image I downloaded using the application I worked on earlier. I could not get the result. After many hours of hacking, I finally got it to work!

It is so rewarding to see it happens and I have got a good dose of adrenaline today. The feeling is difficult to describe. So it is difficult for other people to feel the excitement and the rewarding state of mind I am into.

The next challenge is to write an experimental application to continuously receive multiple streams of JPEG images and display them in multiple frames in a window, the last and toughest task with parallelism involving socket and GUI. After this, comes the serious software development by integrating all these experimental applications into a nice GUI application.

Recovery

June 27th, 2007 at 23:50 · Filed Under At Home, At Work, Days in My Life, Medical · 4 Comments 

I went to Kuala Lumpur today for my post-surgery examination. I had my temporary new eye glass for my right eye on Monday.

I can see clearly now but my right eye has defects due to the retinal detachment. I see straight lines not straight at all. The perfect straight line that my right eye sees appears to be crooked. I asked my doctor if there was any chances for it to heal completely, his answer was, “Perhaps, but the chances are very tiny.”

I guess I will have to bear with this disability for the rest of my life. One thing that soothes me is that, my short-sightedness on my right eye has been reduced half. It was -6.5 with astigmatism of 25 (I am not sure the quantifying unit for astigmatism) on both eyes. Now, my right eye is -3.5 with astigmatism of 100.

I have to wait for another 5 weeks for the right eye to settle down before the optometrist can quantify my right eye correctly.

A bunch of Ada-holes talking

May 26th, 2007 at 0:40 · Filed Under Ada, At Work, Blogging, Days in My Life, Software Development · Comment 

Like last week, a bunch of “Ada-holes” meet up on every Friday midnight (MYT) to discuss about work progress and some jokes. They are Jesse (the team leader), Jeffrey, Jerrid, Chip, Mark and I. Mark and I are from the far east. Mark from Vietnam and the rest are in the U.S.

We discuss mainly on the svn commit guidelines, Ada coding standards and document formats. We have yet to choose either ODF or LyX. The discussion is fruitful and we begin to see a software development process emerging.

It is tiring but fun!

Busy life

May 24th, 2007 at 22:47 · Filed Under At Home, At Work, Blogging, Days in My Life, Family, General, Karate · 4 Comments 

Life has been busy on these days. I am trying to bridge work, training, transition, demo and family together. It certainly is a handful.

Training for transition is being conducted with careful planning and most of the students were not aware of the transition until they have been informed a couple of weeks ago. When they received their new gomon last week, they were surprised and excited. I am happy to see the transition is bearing fruits. Thanks to my working experience while I was working as a consultant in transition to Ada (see my blog here).

The preparation for demo has some hitches. The preparation training coincides with school’s mid-term exam following a 2 weeks break starting tomorrow. What a wrong timing!

The rest, I have been tied up with work, family and not so much of my training. I got the chance to train a little when I teach the class.

Software Engineering Management Task

May 18th, 2007 at 12:39 · Filed Under At Work, Blogging, Computing, Days in My Life, Software Development · 3 Comments 

I had a good long session of Skype with my team leader, Jesse, this morning. We had a good chat about some software development process and how I can help to grow the team. Growth not in size but technical competency, skills, confidence and sense of belonging as a team.

I am glad that I can use my SE experience to enhance the team. Although I have a head on both technical and management shoulder, I prefer development to management. But somehow, I quite like management once in a full moon. What an ironic interest in contrast!

Now, I am off to define a SVN commit guidelines for our team. The document is one page in length at this moment and I hope to finish at least some outlines by end of the day. This will be the first piece of such work (due to limited time for me to sit down and write) and I wish I can share it on my blog to benefit not only our development team but also some people. I will ask permission from my employer to post the guidelines. So keep your fingers crossed.

Next Page »