Thursday, 2006-04-20 15:47
Pantha rei
It looks like it is time for change. This time - blog engine. First chance
will be given to WordPress. Curent status of migration You can see at nhw.pl/wp.
Wednesday, 2006-04-19 11:01
Icons, icons... Where I can get some?
I was^H^H^H am writing some Ruby powered applications, to get knowledge
about Ruby on Rails, and then tell - can it be used to geeks target no. 1 ? But
often I need some icons... Ofcourse, I can design (he he he design you say)
some but they will look uhm... not professional ;-)) so I did look for some
free availble, on aceptable license. And I found this table, may be useful
for some. http://blinduser.blogspot.com/2006/04/free-icons_15.html
UPDATE 2006-05-04
New improved URL:http://blinduser.blogspot.com/2006/04/free-icons-redux.html
1)Don't know what it is? World dominance!
UPDATE 2006-05-04
New improved URL:http://blinduser.blogspot.com/2006/04/free-icons-redux.html
1)Don't know what it is? World dominance!
Tuesday, 2006-04-18 13:26
Perl, Ruby and FreeBSD - is Perl obsolete?
Right now, as for Ruby convert should do, I'm thinking, Perl becomes
obsolete on FreeBSD box. Why? First of all ruby is already installed on Your
favorite BSD flavor powered box, since portinstall/portupgrade suite is
written in Ruby. So - almost out of the box :) You have both Perl and Ruby.
Ruby have most of all needed Perl features (as for FreeBSD sysadmin) - it
has regular expression support, flexible syntax, can operate on low level OS
ideas. And it is much harder to write unreadable code than in
Perl.
Of course Perl is not obsolete. Especially on FreeBSD box, but this entry tries to show how I'm surprised that so few tools on FreeBSD relays on Ruby. Let numbers speak for itself:
Of course, result are obvious, since Perl is almost from always available in UNIX toolbox, so number of tools using it is enormous. Not mention power of CPAN. But even Ruby foot print seems me to small. Now, I will try to do something more useful than Hello world or Four Days on Rails and then will if still Rubys footprint would seem me so small... Maybe there is some small catch... With tiny font...
Of course Perl is not obsolete. Especially on FreeBSD box, but this entry tries to show how I'm surprised that so few tools on FreeBSD relays on Ruby. Let numbers speak for itself:
$ make search key=PHP | g -E "^Port" | wc -l
742
$ make search key=Ruby | g -E "^Port" | wc -l
367
$ make search key=Perl | g -E "^Port" | wc -l
7248
Of course, result are obvious, since Perl is almost from always available in UNIX toolbox, so number of tools using it is enormous. Not mention power of CPAN. But even Ruby foot print seems me to small. Now, I will try to do something more useful than Hello world or Four Days on Rails and then will if still Rubys footprint would seem me so small... Maybe there is some small catch... With tiny font...
Tuesday, 2006-04-17 14:21
How I did not get job at Microsoft?
Background
It was early December. Friend of mine (http://blogs.dirteam.com/blogs/tomek/) who at this time was working for Microsoft (he is still working there) asked me whether I'm considering myself as an passionate about technology, and having abilities to write code in C/C++. I've answered yes. So I've updated my resume, send it over to Tomek, and forgot about whole thing.
Prologue
It was somewhere around of mid-January, when email have arrived. My resume was interesting enough to catch HR eye. I was appointed to phone interview. The day has come (or rather night, due to polish timezone). I had a drink, sat before skype, and it rang... I was asked several questions, mostly about my deep "thoughts" about software developing, testing and debugging. Nothing specific, rather general questions about approach. It was nice talk (did I mention about drink? :-)) ). At the end it turned out that both me and recruiter on the other side have started with computers on the same time, and on similar equipment. 8-bit computers. I've started witch famous and genuine Commodore 64 and "other side" with Atari. After this interview I was thinking I presented myself OK, but somehow did not expected any further steps. Something like that.
Warm up
But then, another email have arrived. I was invited to interview in Prague. Next week. So I had to arrange all this stuff. Hotel was booked by MS, so it would be with tickets for plane, but... I choose to go to Prague by train. From Warsaw it is not so far away, and timing was much more right for me. I wanted to be well rested to this interview. My (and not only mine) experience says it is most important on technical interviews (not counting simple luck, since it is always most important in any situation ;-)) ). I also have started to renew my rusty C++ skills. I was impressed with C++ standard library improvements, since my last look at it. Nice to know. Finally I was in train to Prague.
Prague
On Wednesdays evening I was on place. Nice hotel in center of Old Town, but I had no time to go see Prague. I was just tired. So I went to bed. On the morning I've ate breakfast and did last browsing through my notes. Then checkout, and I had two hours free to interview. I went to sightseeing. Prague is very nice place. Unfortunately my camera went down, so I have nothing to share at visual level... But time have passed very fast, and it is 2PM - here I go!
The Thing
I have arrived to hotel, and there were already three another guys. One from Romania, Slovakia and Poland. We have talked a bit. It looked that I was the oldest, and most experienced. But not necessarily in software development ;-)) such a life. Interview have started. Room where we have met, was some kind of waiting room. From it we were taken to interviews one by one with folks from Microsoft. My first interview - about software testing. How to write test cases (how to search interesting points to test), what to expect from tested code. At the end little misunderstanding. I did not catch what I was expected to do (write sample code), but fortunately everything clears out very fast and I have time to write answer. It looks like not bad answer. Short (very) break and another interview. Now about algorithms, coding and etc. Now You may know why I wanted to write for myself proof of concept for recursion (URL). At that time I was confused and I could not force small detail, and get stuck. Interviewer was kind and helped me to finish work in ordinary way. But with next task I dealt much better. At the end I've received positive feedback.
Back to waiting room, water, cafe, next interview. Again about testing. And I've remembered baselines the most. In other words - how to tell whether new software version is better than older? Or worse? I was beginning to feel tired... Stress is powerful factor in such circumstances.
First milestone. We were told, that there will be three interviews, only in case of some doubts would be another two or three. I was asked to stay for another. Also my rodak was left after this checkpoint. At this moment I was taking this as good sign.
Now a little talk with some one from HR. I don't like this talks. They always are for me a little spooky (talks, not persons ;-)) ). I always try to present myself without any fiction, but... I don't know why I feel that I can not never to understand well what is under mask on the other side. My bad luck, since my best jobs which I got, it was when no HR was involved in direct hiring process (I was interviewed by technical persons and my future co-workers, HR was only processing my papers...). But lets go back to Prague Intercontinental 4-th flour. I was asked typical HR questions, some puzzles, etc. My interviewer looks very tired, and wanting only to finish her job for today (it is already about 6PM), she gets a bit more live in her eyes, when at the end I've asked what she likes most in working for Microsoft. Truly HR person?
Final (as it shows later) interview. This time much more technical, implementing SQL selects in C. Nice talking. Not remembering much details - it is 7PM, my brain started overheating some time ago... After that a few words with senior recruiter, and I can go for a walk to train station...
The way back home
I'm walking on chilly air and my brain is starting to function normally, again. I'm quite pleased with my efforts, however I see a few weakness, which I have showed during this interview. Tension is fading away, with each mile away from Prague. Finally I was in home. Then I could only wait for results. They came after promised two weeks. No, thank You, we would like to pursue other candidates. Bad luck or not?
Aftermath
Now, two month passed, and I can (I think so ;)) ) more honestly tell myself what went wrong. Or maybe not wrong, but what I could done better.
First - HR - I've told You - I can not talk with them ;)))
Read Joel on Software more carefully. If I've done my homework, I would be much better prepared for this. Joel writes how MS recruited in many articles, and I can tell that only my lack of time few days just before interview did not allow me to read it. Dammit!
If You are standing before chance like I was, take under consideration:
My lesson
So, I did not got job at Microsoft. So what the story for me? I did refresh my developing skills, and now I'm sure I want to do software developing. This is essentially what is interesting to me. Recently I spend a lot time reading blogs like Joel On Software, links from joel.reddit.com, Signal vs Noise and more others - and looks like this is really exciting to me, so I have to try.
Other thing is, that I've learned a lot about myself during this interviews. As usually, it turned out that I'm not so smart, how I like to think about. But most of us are also ;-))
It was early December. Friend of mine (http://blogs.dirteam.com/blogs/tomek/) who at this time was working for Microsoft (he is still working there) asked me whether I'm considering myself as an passionate about technology, and having abilities to write code in C/C++. I've answered yes. So I've updated my resume, send it over to Tomek, and forgot about whole thing.
Prologue
It was somewhere around of mid-January, when email have arrived. My resume was interesting enough to catch HR eye. I was appointed to phone interview. The day has come (or rather night, due to polish timezone). I had a drink, sat before skype, and it rang... I was asked several questions, mostly about my deep "thoughts" about software developing, testing and debugging. Nothing specific, rather general questions about approach. It was nice talk (did I mention about drink? :-)) ). At the end it turned out that both me and recruiter on the other side have started with computers on the same time, and on similar equipment. 8-bit computers. I've started witch famous and genuine Commodore 64 and "other side" with Atari. After this interview I was thinking I presented myself OK, but somehow did not expected any further steps. Something like that.
Warm up
But then, another email have arrived. I was invited to interview in Prague. Next week. So I had to arrange all this stuff. Hotel was booked by MS, so it would be with tickets for plane, but... I choose to go to Prague by train. From Warsaw it is not so far away, and timing was much more right for me. I wanted to be well rested to this interview. My (and not only mine) experience says it is most important on technical interviews (not counting simple luck, since it is always most important in any situation ;-)) ). I also have started to renew my rusty C++ skills. I was impressed with C++ standard library improvements, since my last look at it. Nice to know. Finally I was in train to Prague.
Prague
On Wednesdays evening I was on place. Nice hotel in center of Old Town, but I had no time to go see Prague. I was just tired. So I went to bed. On the morning I've ate breakfast and did last browsing through my notes. Then checkout, and I had two hours free to interview. I went to sightseeing. Prague is very nice place. Unfortunately my camera went down, so I have nothing to share at visual level... But time have passed very fast, and it is 2PM - here I go!
The Thing
I have arrived to hotel, and there were already three another guys. One from Romania, Slovakia and Poland. We have talked a bit. It looked that I was the oldest, and most experienced. But not necessarily in software development ;-)) such a life. Interview have started. Room where we have met, was some kind of waiting room. From it we were taken to interviews one by one with folks from Microsoft. My first interview - about software testing. How to write test cases (how to search interesting points to test), what to expect from tested code. At the end little misunderstanding. I did not catch what I was expected to do (write sample code), but fortunately everything clears out very fast and I have time to write answer. It looks like not bad answer. Short (very) break and another interview. Now about algorithms, coding and etc. Now You may know why I wanted to write for myself proof of concept for recursion (URL). At that time I was confused and I could not force small detail, and get stuck. Interviewer was kind and helped me to finish work in ordinary way. But with next task I dealt much better. At the end I've received positive feedback.
Back to waiting room, water, cafe, next interview. Again about testing. And I've remembered baselines the most. In other words - how to tell whether new software version is better than older? Or worse? I was beginning to feel tired... Stress is powerful factor in such circumstances.
First milestone. We were told, that there will be three interviews, only in case of some doubts would be another two or three. I was asked to stay for another. Also my rodak was left after this checkpoint. At this moment I was taking this as good sign.
Now a little talk with some one from HR. I don't like this talks. They always are for me a little spooky (talks, not persons ;-)) ). I always try to present myself without any fiction, but... I don't know why I feel that I can not never to understand well what is under mask on the other side. My bad luck, since my best jobs which I got, it was when no HR was involved in direct hiring process (I was interviewed by technical persons and my future co-workers, HR was only processing my papers...). But lets go back to Prague Intercontinental 4-th flour. I was asked typical HR questions, some puzzles, etc. My interviewer looks very tired, and wanting only to finish her job for today (it is already about 6PM), she gets a bit more live in her eyes, when at the end I've asked what she likes most in working for Microsoft. Truly HR person?
Final (as it shows later) interview. This time much more technical, implementing SQL selects in C. Nice talking. Not remembering much details - it is 7PM, my brain started overheating some time ago... After that a few words with senior recruiter, and I can go for a walk to train station...
The way back home
I'm walking on chilly air and my brain is starting to function normally, again. I'm quite pleased with my efforts, however I see a few weakness, which I have showed during this interview. Tension is fading away, with each mile away from Prague. Finally I was in home. Then I could only wait for results. They came after promised two weeks. No, thank You, we would like to pursue other candidates. Bad luck or not?
Aftermath
Now, two month passed, and I can (I think so ;)) ) more honestly tell myself what went wrong. Or maybe not wrong, but what I could done better.
First - HR - I've told You - I can not talk with them ;)))
Read Joel on Software more carefully. If I've done my homework, I would be much better prepared for this. Joel writes how MS recruited in many articles, and I can tell that only my lack of time few days just before interview did not allow me to read it. Dammit!
If You are standing before chance like I was, take under consideration:
- read JoS carefully - it is full of tips which can safe Your life (not only on interviews :)) )
- be rested and fresh
- make yourself sure You have understand task, BEFORE you start coding
- test Your code without asking before You say "I'm done!"
- go for it!
My lesson
So, I did not got job at Microsoft. So what the story for me? I did refresh my developing skills, and now I'm sure I want to do software developing. This is essentially what is interesting to me. Recently I spend a lot time reading blogs like Joel On Software, links from joel.reddit.com, Signal vs Noise and more others - and looks like this is really exciting to me, so I have to try.
Other thing is, that I've learned a lot about myself during this interviews. As usually, it turned out that I'm not so smart, how I like to think about. But most of us are also ;-))
Thursday, 2006-04-13 12:00
Painting with world
Nice idea. http://www.youtube.com/watch.php?v=vwl98dU0kY8
and original site - http://web.media.mit.edu/~kimiko/iobrush/.
Another example how simple idea can give tremendous results. I did liked especially lady bug.
Another example how simple idea can give tremendous results. I did liked especially lady bug.
Thursday, 2006-04-13 01:16
Google vs Yahoo or corporations and small blog
If You have asked me earlier about my favorite search engine, my I would
told You without any doubts - Google! But thing sometimes changes... I'm
still using Google to do search. So what doubts do I have? I did complain
about not indexing my site by Google (http://nhw.pl/blg/archives/2006/04/09/T10_35_21/)
and still last entry (according to Google) in this blog is dated on March
13. Yes. So I've added today search to my blog, but using Yahoo as a search
engine. Surprise!
BTW - this reminds me on another thing - Alexa. I have already told You my opinion (http://nhw.pl/blg/archives/2005/10/23/T22_38_06/). But I'm trying to do something about it. Not my opinion, since I am quit comfortable with it, but with wrong redirection. Not that I want to use Alexa services. Don't want - with one exception. Web Archive (http://web.archive.org) is not storing my site. And sites to crawl are taken from Alexa index. So what I'm trying to do? I did create Amazon Associate account which is used also by Alexa, and complained in Amazon. And they responded. Yeah. To contact Alexa. But this time I've got email address! I have wrote to Alexa, and guest what? No response. So I'm basically with this same opinion about Alexa as before ;))
BTW - this reminds me on another thing - Alexa. I have already told You my opinion (http://nhw.pl/blg/archives/2005/10/23/T22_38_06/). But I'm trying to do something about it. Not my opinion, since I am quit comfortable with it, but with wrong redirection. Not that I want to use Alexa services. Don't want - with one exception. Web Archive (http://web.archive.org) is not storing my site. And sites to crawl are taken from Alexa index. So what I'm trying to do? I did create Amazon Associate account which is used also by Alexa, and complained in Amazon. And they responded. Yeah. To contact Alexa. But this time I've got email address! I have wrote to Alexa, and guest what? No response. So I'm basically with this same opinion about Alexa as before ;))
Thursday, 2006-04-13 00:25
NBCom can interact with NB articles
Today ^H^H^H^H^H errr yesterday I have released NBCom 1.1 with possibility
to comment also articles not only regular blog entries. Also in default
settings CAPTCHA for logged users is no longer enabled (remember that during
upgrade/reinstall settings are overwritten). More details are on http://nhw.pl/blg/articles/nbcom/.
Because of my recent interest in Ruby on Rails I'm not planning to develop NBCom in near future. But plans are plans, and can change (I think that basic HTML tags support would be nice).
Because of my recent interest in Ruby on Rails I'm not planning to develop NBCom in near future. But plans are plans, and can change (I think that basic HTML tags support would be nice).
Wednesday, 2006-04-12 15:37
Another gets hit by train
And train goes of course on rails and has name Ruby... It looks like I'm
another convert. First time about Ruby on Rails I've heard several months
ago. But when I have read "web framework" I thought
"NO! ANOTHER ONE".
I was sooo completely wrong. Last time I was so wrong when I thought that it is possible to go to moon on foot, but hey! I was then 6 years old.
I had realized how completely I was wrong on April, 6th. Should I write down this date in stone? Will see... On April 6th I've read first tutorial on O'Reilly (http://www.onlamp.com/pub/a/onlamp/2005/01/20/rails.html). A week has passed and I'm after several test and Four Days on Rails (http://rails.homelinux.org/). I'm impressed. And with AJAX support (http://www.onlamp.com/pub/a/onlamp/2005/06/09/rails_ajax.html) I have already several ideas what to do with this tools. Lets it start rolling. On Rails of course!
I was sooo completely wrong. Last time I was so wrong when I thought that it is possible to go to moon on foot, but hey! I was then 6 years old.
I had realized how completely I was wrong on April, 6th. Should I write down this date in stone? Will see... On April 6th I've read first tutorial on O'Reilly (http://www.onlamp.com/pub/a/onlamp/2005/01/20/rails.html). A week has passed and I'm after several test and Four Days on Rails (http://rails.homelinux.org/). I'm impressed. And with AJAX support (http://www.onlamp.com/pub/a/onlamp/2005/06/09/rails_ajax.html) I have already several ideas what to do with this tools. Lets it start rolling. On Rails of course!
Tuesday, 2006-04-11 19:46
Happiness - Six Tips
On National Public Radio website (www.npr.org) I found nice article about
Positive Psychology or in other words psychology which takes care
about things which make people happy, instead of getting knowledge of dark
side of human nature. It is not about making people stupid but
about reasons why we are (are we?) happy.
http://www.npr.org/templates/story/story.php?storyId=5295168 covers six tips for happiness. They are in short as follow:
Be Human - You have to admit that You have better and worse days (what You say about Mondays? :) ) and accept this - You can be tired, angry, happy, nostalgic - it is normal.
Balance - try to do things which are in balance with Your feelings about meaning and joy from doing things. Saving world on daily basis can be depressing, even if saves live, when it gives You no joy.
Simplify - do not try to catch many birds at once. Engaging into to many, to complicated activities, can provide only katzenjammer, not an satisfaction.
Body - when in shape its easier to think positively. When You feel fat, clumsy, tired - You act like that, not mater what reality is. Power of mind.
Grateful - thanking for good stuff lets You to see this stuff and notice how many good happens around You.
Why I wrote about this? Because I feel happy, and this simple six tips are making (in my opinion) a path to happiness. I could not speak this so clearly, before I read about Positive Psychology. Then I realized, that this can be my credo, so... Read it, think about it, and try to act like that. Wont be regretting ;-)
More about Positive Psychology: http://www.ppc.sas.upenn.edu/.
http://www.npr.org/templates/story/story.php?storyId=5295168 covers six tips for happiness. They are in short as follow:
- Be human
- Find balance between pleasure and meaning
- Happiness - state of mind and not some objective truth
- Simplify! Your life
- Mind and body are connected
- Remember to be grateful
Be Human - You have to admit that You have better and worse days (what You say about Mondays? :) ) and accept this - You can be tired, angry, happy, nostalgic - it is normal.
Balance - try to do things which are in balance with Your feelings about meaning and joy from doing things. Saving world on daily basis can be depressing, even if saves live, when it gives You no joy.
Simplify - do not try to catch many birds at once. Engaging into to many, to complicated activities, can provide only katzenjammer, not an satisfaction.
Body - when in shape its easier to think positively. When You feel fat, clumsy, tired - You act like that, not mater what reality is. Power of mind.
Grateful - thanking for good stuff lets You to see this stuff and notice how many good happens around You.
Why I wrote about this? Because I feel happy, and this simple six tips are making (in my opinion) a path to happiness. I could not speak this so clearly, before I read about Positive Psychology. Then I realized, that this can be my credo, so... Read it, think about it, and try to act like that. Wont be regretting ;-)
More about Positive Psychology: http://www.ppc.sas.upenn.edu/.
Monday, 2006-04-10 11:08
D-Link - how not to implement NTP
Another company (after Sony and their famous root-kit) is on my "black
list". This time I start avoiding products from D-Link. Why ? For
their improper NTP implementation. And worse, for not willing to
re-implement it, and paying for damages made... Read details on http://people.freebsd.org/~phk/dlink/.
Sunday, 2006-04-09 10:35
Google timing
Recently I've started wonder how are set timers for google cache and
indexes. On this site was (at least between Feb 2003 and Feb 2005) sendmails
FAQ and some tips and tricks. It was written by me in polish, and covered
some most common issues. I'm sure it was from Feb 2003 but probably I wrote
most of content even earlier, starting from somewhere about 2001. I was then
administering several sendmail sites, and thus Sendmail quirks were my daily
job ;-) but I has no "evidences" other than my faulty memory ;))
that it was earlier than Feb 2003. So, it was here through at least two
years. Another year passed from moment I've removed this content (since it
become obsolete, as material was related mostly to 8.9 and 8.10 sendmail
versions), and I still got hits directed here after google
queries. Robots.txt allows access to this non-existing content.
Second thing - in March I had a break with my blog. And looks like my site is now on some "low changes" list, since through two weeks new content was not put into google index (googlebot was here, ofcourse..)
Second thing - in March I had a break with my blog. And looks like my site is now on some "low changes" list, since through two weeks new content was not put into google index (googlebot was here, ofcourse..)
Wednesday, 2006-04-05 15:01
1000 bricks and human personality
Blogs explosion IMO shows one important thing - Internet becomes more and
more social thing. As in real world quality of those conenctions is based on
quality of first links. In other words - You start in good place and You
will stay in good places.
Services like reddit.com helps to connect all this strings. I wolud recommend Joels collection, but this should be no surprise, since I've demonstrated many times here my favor to joelonsoftware.com. And I like Joel On Software, so I like what other readers like ;-)))
But what this bricks - somewhat funny, but tells a lot about people. Or rather about streotypes about people... http://www.digitaldigressions.net/blog/2006/04/the_myersbricks.html. Found on http://joel.reddit.com
Services like reddit.com helps to connect all this strings. I wolud recommend Joels collection, but this should be no surprise, since I've demonstrated many times here my favor to joelonsoftware.com. And I like Joel On Software, so I like what other readers like ;-)))
But what this bricks - somewhat funny, but tells a lot about people. Or rather about streotypes about people... http://www.digitaldigressions.net/blog/2006/04/the_myersbricks.html. Found on http://joel.reddit.com
Tuesday, 2006-04-04 23:18
Solution for storing file permissions in SVN repo...
Few days ago I complained about missing feature in Subversion (http://nhw.pl/blg/archives/2006/03/30/T23_31_02/).
Today I sat and wrote wrapper in perl to store and retrieve permissions in
Subversion repository. More info - http://nhw.pl/blg/articles/ssvn.
Monday, 2006-04-03 16:18
SQLite error messages are also confusing
Another error message which can be misleading. I'm using SQLite and while
doing a lot of INSERTs I've got following errors:
Message text is a bit misleading since, when You check SQLite documentation (http://www.sqlite.org/capi3ref.html#result-codes) You can see that 21 is SQLITE_MISUSE. And this is the point! This means simple mistake (huh, at least in my case it was ;-) ), like using not initialized DB handle...
Error message is retrieved by code taken from examples in documentation:
SQL error: (21) library routine called out of sequenceWhen You throw this error message into google, You find issues with some Gnome application, and troubles with threads. Nice, especially when I'm not using threads, in my simple application...
Message text is a bit misleading since, when You check SQLite documentation (http://www.sqlite.org/capi3ref.html#result-codes) You can see that 21 is SQLITE_MISUSE. And this is the point! This means simple mistake (huh, at least in my case it was ;-) ), like using not initialized DB handle...
Error message is retrieved by code taken from examples in documentation:
if( rc!=SQLITE_OK ){
fprintf(stderr, "SQL error: (%d) %s\n",rc, zErrMsg);
sqlite3_close(db);
exit (1);
}