Latest Entries »

Connectify Wi-Fi Hotspot maker

Today I want to share how great Connectify is if you want to make a wi-fi hotspot from your wired internet connected Windows 7 PC.

Recently I just got myself a portable multimedia gadget that need wi-fi for its internet access. So I need someway to share my internet connection from my laptop to that device.

After quick search I found connectify and tried it. At first I ran into some issues, not because the connectify itself but because I never really use my wireless card on my laptop and didn’t know that it had some issues from day one. After re-installing the driver for it from the manufacturer’s support site, the wireless card got detected and it ready to go.

So basically connectify make it really simple for you to share the internet connection.  You just need to provide SSH ID (the name of the wi-fi network you want to create), the password to join, and the internet connection that you want to share from your PC and that’s it, connectify will do the rest for you. (*note: if you are a tech savvy, you could create the batch for this connection without connectify, but if you are just a normal user than go for connectify to make your life easier)

Today when I boot up my laptop I got notification that newer connectify is up. I’m currently on version 2.1 and 2.2 is the newer one. Without hesitation I upgrade the version to 2.2

But ironically it didn’t work. So I reverted back to version 2.1 and everything went OK again. I guess the saying don’t fix it if it ain’t break holds true here. Well for the time being I will use version 2.1 for now.

Thanks to recently held facebook hacker cup, I learnt some new stuff which is Rencontres Numbers.

Here are the few first numbers : 1 0 1 2 9 44 265

The number represent the possibility of different fixed point on sequences’ permutation.
Let’s assume the above numbers as R and N is the fixed point so
for N = 0 -> R = 1
for N = 1 -> R = 0
for N = 2 -> R = 1
for N = 3 -> R = 2
for N = 4-> R = 9

To explain further for different fixed point 0 -> it means all the fixed point are already alligned so there is only 1 possibility.
For N = 1 or different fixed possibility equal to 1, the possibility is 0, why zero you ask ? here is a little example :

ABC -> original position

1 different position means 2 correct position, assume A and B are already in right position, the only left position is C, since A and B already correct, C will ALWAYS be correct, therefore the possibility for only 1 different position is ZERO

for N = 2

AB -> original position
BA -> 1 different fixed position

for N = 3

ABC -> original position
ACB -> A is in correct position therefore it doesn’t satisfied 3 different fixed position
BAC -> C is in correct position therefore it doesn’t satisfied 3 different fixed position
BCA -> Satisfied N =3
CAB -> Satisfied N =3
CBA -> B is in correct position therefore it doesn’t satisfied 3 different fixed position

So after examining the pattern you can see that


Ri = (i-1) * R(i-1) + R(i-2) for R1 = 1 and R2 = 0

Some chinese (I pressume he’s chinese judging from the username) on facebook wall put comment that he found another more difficult formula but work for this Rencontres Number. it went like this

Ri = i! * ( 1/1! - 1/2! + 1/3! .......... 1/i!)

note that the ‘+’ operator has to be done prior to ‘-‘ operator.

Okay since we’ve covered the rencontres numbers, let’s go to what it has to do with combination.
You could google the facebook hacker cup wine tasting if you want to see the original problem definition, but let’s make it simple here. For example there are 13 glasses and you need to guess which glass belong to whom and if you at least guess 10 glass correctly, you won. So how many way you could win the game.

Answer :

multiply each combination of the glass with number of different fixed possibility that we covered earlier

=13c13 * (0 different fixed possibility) +13c12  * (1 different fixed possibility)+ 13c11 (2 different fixed possibility)+ 13c10 (3 different fixed possibility)

=13c13 * 1 + 13c12 * 0 + 13c11 * 1 + 13c10 * 2

=1 * 1 + 13 * 0 + 78 * 1 + 286 * 2

=1 + 0 + 78 + 572

=651

note that ncr means n! / r! – (n-r) !   —>  the combination of r number of n object.

Peeking some accepted source code from korean (again judging from his username) on facebook, He solved this problem by using memoization for combination generated by pascal triangle and also memoization of rencontres number itself (using above formula for dynamic programming approach).

Facebook Hacker Cup 2011

Okay now I want to share my experience in joining facebook hacker cup 2011. I only managed to get to semifinal (Round 2) though. But it is a very rewarding learning experience for me.

Background

At early of this year, I saw one of my friend’s profile on facebook sharing the page to facebook hacker cup. Well seriously at that time I thought it is a security breach competition or something similar so I don’t really bother to take a look.

Few days just before the qualification round started, I took a peek at the facebook hacker cup page just for curiosity. To my surprise here, this is not a hacking (in term of security lingo) competition, but this is a programming competition. Now me myself haven’t join this kind of competition since I graduated from college. I did participate in a lot of programming contest during 2002-2005 timeframe where I went to college though. But anyway I see this as a good chance to reboot my programming skill again and decided to enter the competition. Luckily for me it wasn’t too late for me.

Reading the rules and terms of the contest, someone posted that the rules are almost a copy-paste from google code jam. Since I never joined GCJ (but I do know their presence), I googled the gcj to read their terms and yes…. it is like 90% of the rules are copy-paste from GCJ. But here I learned something new for me. All this time I misunderstood between the ACM-ICPC and GCJ, I thought they targeted the same segment. While ACM-ICPC can only be joined if you are currently enrolled in University, but GCJ is free for all. I always thought GCJ is also for University’s student only, which is why I never bother in the first place to participate in GCJ after I graduated.

Learned up to this point : GCJ is free for all

Qualification Round

On qualification round, I chose the 3rd (string manipulation) problem and after I solved it I went to hit the submit. And ow boy here is me, a windows boy… when I downloaded and opened the input file, on notepad I am surprised that the format is not….. formated. So basically I am kinda panicked a little bit and try to format it again myself. but Alas when I tried to run it I got an error, so there is a bug on my code, after tracking and solving the bug, I ran out of time (the timer is only 6 minutes). But actually later on, they lifted the timer restriction on qualification round and my solution for this 3rd problem got accepted.

At that time I thought I was already failed at 3rd problem, which leave 1st and 2nd problem. The first one is math and the second one is map traversing problem. I decided to do the math one and hoping this time I could pass the time limit. and.. Yes I passed it.

Learned up this point : Unix and Windows have different new line character set and notepad on windows couldn’t detect it and shows it as whitespace . But the program will know that it is a new line so you don’t need to reformat. Wordpad on Windows could detect this new line.

Round 1 A

Goes to Round 1A. well actually there is only 1 problem that I have a chance to solve and still I couldn’t derive a solution in time. But since there were a lot of bugs from facebook itself this round got cancelled.

instead they gave Round 1 A Reprise. Well, still it was a tough one to compete, I ended up solving nothing but learned a great experience.

Learned up to this point : Probability theory, Pascal Triangle for Combination, Rencontres Number theory.

Round 1 B

Round 1 B was held on weekday, and in Japan it’s early morning at 6 PM. I got a job, although I could just take a paid day off but I didn’t. After reading the problem after, if only I joined this round I could just might pass because one of the problem is a widely known Josephus problem.

Round 1 C

Decided to do the prime related problems and really make sure my code could pass the time limit, and luckily it did pass. The timer is 6 minutes and my code run for about 4 minutes.

And then move on to the map traversing related problem, I actually solved it but it was too late. if only I had 3  more minutes, I could get this one accepted too. After the contest over, someone posted the right input and output for the problem and I tried in on my program and it passed. So I did solve it but couldn’t solve it fast enough because some stupid bugs.

But I already got 1 problem solved so I move to the next round.

Learned up to this point : Always watch for your global and local var (this is the bug that I didn’t find fast enough), memoization (array storage) could be used for approximately the limit size of int. Dynamic programming for map traversing using recursion is easier than I thought

Round 2

A tough one for me. I couldn’t solve even 1 problem. actually only 150 people that managed to atleast solved 1 problem with 5 people solved all of them perfectly.

Considering more than 120.000 people “like” the facebook hacker cup page so let’s assume they all registered, only around 5000 people passed the qualfication round, after that only around 1600 people passed the 1st round and only 150 people passed the 2nd round.

Congratulations for the first top 25 that will compete for grandprize.

Misc

although this time I used C#, but seeing the available solution that are dominated by C++ I also learned a few things I didn’t know until now.

Learned things regardings to C++: how to use preprocessor directive like to develop custom looping function and other cool stuff (for example #if 0)

Currently I only have 3 Play Arts Kai figure, which is solid snake, dante and ezio.

And in my opinion this one, ezio, is by far the best figure by Play Arts Kai.

*note :
although Dante looks nice in this figure, but the hand is pain in the ass and in my opinion, defected by design. I ended up breaking some part in the hand by purpose and used glue for it to handle the gun.

Solid Snake sneaking suit Play Arts Kai

Unlike the second release of the S.I.C vol 52 Kabuto which is quite large in numbers, the second release edition of Solid Snake sneaking suit is quite low in numbers. I might consider myself lucky being able to get my hand on this figure

Time to Say Goodbye Rock Version

song title : Time to Say Goodbye
Marty Friedman’s arrangement version.

S.I.C 52 Kabuto

Finally I got myself S.I.C Kabuto. The first time I saw this beauty figure is in January this year. But at that time I hesitate to buy it because I wanted to wait for Dark Kabuto and Gattack. After I saw the Dark Kabuto few months later, I decided want to buy the Kabuto, but ALAS!!! the figure is sold out everywhere.

So finally this october I finally got the chance to buy the second release of the Kabuto.

I already owned S.I.C chalice and it’s a pain in the ass to transform between chalice and joker. And this time the tranformation between Kabuto and Hyper Kabuto, although easier rather than the chalice-joker version but still quite cumbersome in someway.

The Kabuto horn could not hold the gravity, but nothing than a double sided tape couldn’t handle.

Like usual, the gimmicks in S.I.C is top notch, infact not necessary there but quite nice to have.

Here are some pictures I took, mind you that I don’t transform the hyper kabuto onto the complete form (only the head, body armor and the wings)

New Laptop Dell 1558

Okay so I finally got my new  laptop. Quite early if I might say because the invoice said it will be delivered on 5th August but instead it was delivered on 28th September.

Here is the main Spec of my new Dell Studio 1558

  • CPU Intel I7-740
  • Memory 4 GB RAM
  • Graphic Card ATI 5470 1 GB
  • LCD 15.6 inch Full HD
  • HDD Sata 500GB 5400 RPM
  • OS Windows 7 64 Bit Home Premium

Price paid : almost 90.000 yen

Optional Package :

  • Advanced Warranty 3 years

Total price paid : 101.000 yen

I got special company discount and special online store discount when I bought this so it was cheaper than buying it at computer retail stores.

Since this is my first windows 7 experience, and also my first 64 bit OS experience, I had a lot of things to catch up. For example, I found my favorite uinstaller utility didn’t work well in windows 7 64 bit and my audio editor software also has some bugs in 64 bit. But most of the stuff ran good.

The 500 GB HDD came with only 1 partition so I made it into 2 partitions (OS and Data) with almost the same size each. I used windows 7 internal tools to the partition itself and it was pretty easy to do (Kudos to microsoft for this one).

I also made several recovery disks (including USB key), both by Dell utilities and also windows 7 utilities. Since I don’t like OEM bloatware, after I use Dell Utilities that I need (in this case, the local backup utilities) I disabled almost all Dell Service on my laptop.

The Windows Experience Index scored 5.0 in the first test (with all factory default setting and without optimization applied). With Aero in the lowest sub score. Yes indeed I found Aero effects kinda make my new laptop a little bit sluggish, but after I do some optimization here and there, especially services.msc and msconfig file, I saw some improvement.

I also tested the machine with Call of Duty Modern Warfare 2, which is one of the reason I want to buy this mainstream gaming laptop. The auto graphic detect from the game set all the texture level at highest point which is very good since I don’t really expect my machine could handle the extra (very high) setting. But the Anti Aliasing is only at 2X and full frame synchronization is off (which is very reasonable and infact quite good considering it’s only a mainstream laptop). Considering the machine couldn’t handle Aero in full performance, I’m quite surprised and impressed that it ran Cod MW2 quite fine.

The only problem I have is there is some fan screeching sound randomly at the left part of the touch pad which I believe is where the HDD located. Kinda worried about it at first but since it’s not click of death (I have experience of click of death so I knew what it sound and I also have experience of recovering click of death HDD) so it was probably by bad design. I searched the internet and several people complain almost the same problems. It looks like the fan and heat sink design at the left part of the touchpad is not really well considered. But this is also my first SATA HDD personal laptop. So it might be normal for it to make sound like that, up until know I only familiar with IDE based HDD sound.

*updated

It turned out that the problem is with my electric plug. Probably because I’m using the extension plugging device and the voltages didn’t went through well. After changing the configuration of my external power outlet. The strange sound disappeared. So basically the machine is beautiful and powerful without problems.

Ok so there was my first impression of having my new laptop for this 3 days. I hope you enjoy it.

Who Moved My Cheese

Several years ago I got the pdf version of “Who Moved My Cheese” book from a friend. I read it of course but at that time I didn’t find the content interesting enough.

Last week, while cleaning up my HDD and trying to dispose my un-needed old files, I stumble upon this file. And finally I re-read it again. And to my surprise, Now I feel this is a really good book and it has a good points for me right now in my life.

Several years ago when I first time read it, I was still in the beginning of my career, so perhaps of that I wasn’t able to grasp the true meaning of the book.

But now I’m on the mid career and I feel that I’m on a transition and or changing and suddenly when I read the book I felt so moved and found it really really great.

I wouldn’t describe the content of the book here, but you could find the summary of the book over the internet. I highly suggest to search for it or even better, read the book, for those who want to try to leave their comfort zone, but too scared to do it. This book could overcome your fear of “change”. But since “change” is always inevitable,  you need to prepare for it right.