Archive for March, 2006

Google Finance

Tuesday, March 21st, 2006

Another Google service is out called Google Finance, and it really is pretty neat. Surprisingly Google went with Macromedia Flash to animate its really nice charts instead of XMLHttpRequest+DHTML (AJAX) approach usied in Google Local, GMAIL, and in other various other services.

These charts provide something that I always found missing. When there is a peak or high volume day, I always want to know why without having to do a ton of research to find what happened. Some sites provide a new ticker about the company, but can’t correlate the news to the stats. Like when researching a company history, its always hard to match the day when a stock peaks or falls to the news stories printed on that day about the company, it’s competitors, or the market at whole.

You can see here with Novell’s stock. You can match the day that the Q1 statements where out to when Novell’s stock dropped a point or two (which now it looks like its slowly gaining again).

Another interesting feature that Google added was a blog post ticker which shows recently updated blog posts about the company. (I wonder if this post will show up on there? :-))

Disclaimer: IANAL, but I should maybe mention that I don’t work for Novell but I do have an intrest in them.

Tags: Novell AJAX Google Flash

Second Life

Friday, March 10th, 2006

After hearing from Miguel back in September, talking about Second Life was currently planning on using Mono’s VM to embed into Second Life and switch their system over to compile Second Life’s scripting language (LSL) into CLI, I was floored. The thing was that I had just had my first run at Second Life a few weeks before that and just had recently became addicted.

To be completely honest, I was sort of annoyed with it at first. It has a bit of learning curve. However after working at it for 30 minutes, and giving up, I kept coming back to it. It’s like a drug. I couldn’t really get over what I was looking at (and if it was real), it is HUGE. Well since then I spend at least 6 hours a week tinkering around in my Second Life world. It’s amazingly addictive. You can pretty much do anything you can program. People have made casinos for gambling, fully working air fields, clothing stores, houses and reality for sale, elf farms, dance clubs, and some women running around in some very skimpy clothes. Though, I don’t think that I was really hooked until this one guy. This one who thinks he is Santa, who flys around in Sleigh he created, around his ice palace, creating toys for all the kiddies. He created everything himself. Anyways, everyone has a Second Life story.

Anyways. Here is an amazing video presentation the guys at Second Life gave to the guys at Google. Its a good hour to watch so here is a good tip: jump to 14:50 to hear about the scripting technologies and at 15:34 you will hear about how they are using Mono.

(No, I won’t tell you how to find me in Second Life. I keep my personal, work, and Second Life completely seperate :-) ).

P/Invoke Callbacks

Friday, March 10th, 2006

Everyone likes freebies, so here is a somewhat simple example on of how to do p/invoke callbacks in C# and C with Mono. Enjoy. (Of couse, it requires a mono+mcs, a C compiler, and make)
http://www.polystimulus.com/PinvokeCallbackTest.tar.gz

Keywords: pinvoke, delegates, function pointers, callbacks

Blog Ping List

Wednesday, March 8th, 2006

Looking for services to ping to get your blog known? Well I compiled a list of 69 of them. Enjoy. Oh yeah, Wordpress users should maybe install the “No Ping Wait” plugin before trying to ping more then 10 or more of these at a time.

http://polystimulus.com/pinglist.txt

Update: switched to link instead. For future reference, having a 85 line long post with list of urls, sort of anoys some people who are syndicating you.

Window’s boots on a MacBook Pro

Monday, March 6th, 2006

It’s “offiical.” Here is it is. Window’s boots on A MacBook Pro

http://www.mathcaddy.com/windowsxpbootsonamac!!!!1/

Gtkembedmoz/Gecko# for Win32 lives again!

Friday, March 3rd, 2006

Thats right. Gtkembemoz (or “gtkmozembed” depending on where you look or who you ask) lives again.
It’s been about a year since I got a build going again but I’ve worked out most of the kinks. Screenshots soon…

After I get this release worthy, I’m calling it my last release in this incarnation except to maintain compatibility with newer releases of mozilla/firefox. No big bug fixes with rendering or display issues.

Why, you might ask? Well gtkembedmoz works in Win32 GTK+ because of some amazing hacks. They are some really great hacks though, and I say they are release worthy, however like with many hacks, its a hack, and a hack that goes against the basic assumptions of how things should work. I plan on working on some for fundamental changes lower level inside gecko (inside the gfx layers) that would render almost all of these hacks obsolete. To understand why you have to understand what is really happening underneath.

The hardest part is that the basic assumption with using gtkembedmoz is that you are embedding inside a GTK+ app and the gecko engine that you are embedding is based on GTK+. However on the Win32 version, you are using a GTK+ app but embedding a gecko engine that use the native WinUI based GUI. This cause some really interesting issues.

One of the greatest parts of mozilla code base is that they have abstracted the basic native UIs on all the native OSs they support. WinUI on windows, GTK+ 1 and 2 for Linux, QT (experimental fork) for KDE users, Cocoa for Mac OSX, Mac’s old native gui (pre OS X which is now dead), BeOS (mostly dead), and few others. That means that when you see a text box embedded in a page, its going to be the native one (or nearly the native one based on native elements of your OS) for your OS. This allows mozilla to take some short cuts by using the native facilities provided by the GUI framework instead of having to handle them all on its own in most cases.

However, when embedding gtkembedmoz in Win32, you break the native bounds of each of the GUIs. The biggest bug that you run into is maintaining focus across the UI bounds (why there are so many hacks to fix this). You also run into some issues with embedding plugins (flash, PDF files, quicktime, etc…). Also the themes don’t persist with the native elements. I noticed that my scrollbars don’t match. Not broken or anything but annoying.

The best solution would be to get gecko to use GTK+ as well on Win32. It’s no small task. It means ifdef out all the X11 stuff out for the win32 version of the GTK+ abstraction code and coming up with some alternatives. I’m sure some drawing issues will come up as well, and plugins will have some issues but its far more elegant then trying to hack WinUI together with GTK+.

Also just to have a GTK+ of Firefox on Win32 would be cool.

I lay awake…

Thursday, March 2nd, 2006

Ramblings of just another smart dude:

Somethings make me think a little more than I should maybe.

Sometimes I wonder how on Star Trek - Deep Space Nine, how Odo (the shape shifter/changeling) and Major Kira Nerys (a Bajorain), if they where an item, how exactly did they make love exactly? I mean Odo is really a blob a jelly that simply takes human form, and Kira is a type of humanoid. Still, if Odo is able to simulate everything about being a “man”, does he feel anything? We know he can’t smell or taste anything, so does he get anything out of it? I wish they would of cleared that whole mess up before they canceled the show in ‘99.

Sometimes I wonder if Tofu is egg and they are just lying to us all as a massive conspiracy. Soy milk tastes a lot like spoiled boiled egg nog to me as well.

Sometimes I wonder how we actually got the web to work. Seriously! Have you ever really tired to sit down and use an RFC to create a protocol implementation before? Its a mess of unknowns and undefined scenarios. Just look at MIME and SMTP; its a mind field! And can we please stop calling things “SIMPLE” (simple mail transfer protocol, simple network management protocol, etc…). Simple to you with your tools, but almost nothing remains simple when another developer must match your protocol spec in some other environment. Just look at SNMP. If it involves ASN.1 and BER encoding rules.  On the platforms of today, thats not so simple anymore. Everyone breaks when it comes to asn.1 and how to handle 32 bit integers it seems. Nice and simple huh? Ohh yeah, that reminds me.. here is a code chunklet, (otherwise know as a “nice hack”, and this could be considered one of the best of the best when it comes to 10 minute hacks) to access SNMP in c#.

Sometimes I wonder how George Bush is still President. I can’t figure out where to begin or where to end sometimes. I hear so much every single day that adds to my stack of pure shock and amazement. I’m speechless, and I honestly have to check to make sure I’m not in some type of dream/fanitisy state when I hear some of it man.

I wanted to start a timeline blog so I wouldn’t forget every single blunder. Partly as a sick joke to myself to build a road plan to undo what Bush has done for the next President to use while spending a year or two to act as damage control. Basically which laws to reverse, which policies need fixing, allies that need apologies, which contracts that need to get pulled from the wrong companies, which taxes cuts that need to be reversed, which agencies need funding that were cut, etc. I bought the domain and started and quickly realized that its to much work for one person to take care of at this point. I would have to work non-stop for 12 months to catch to just today. Also the fact that I don’t think that we are going to be able to fix Bush’s amazing deficit in the next 15 years (thanks Bush for making my best years the worst).

I then started thinking of a personal exit strategy. So far it consists of moving to Canada and investing in aero space companies that are trying to populate Mars. The reason why is that I started to think that no body could be this incompetent. I know crack heads that seem like they are more on the ball. So I figured, he is up to something and he has a plan. He has a plan, and he just working in what seems like mysterious ways to us (Bush that is). I think Bush plans on destroying this world so bad and just plans moving on to the next one. I want to make sure I get in on the action early.

Ok, maybe not. Maybe he is just plain incompetent. I’m just amazed that we haven’t rised as one, and over thrown the crazy ones. I think a lot of people are like me and are to much in the completely shocked and frozen state right now. I sometimes wish we could have an automatic shocking dog collar that every government official should be forced to ware that we could vote online to let them have a few volts to get them back on track whenever they mess on the carpet and miss the paper and decide to take out a region. Did you know that the US government is the oldest and longest running government in the world that has not gone through any major fundamental change in the entire world?

Just another one of those thoughts that keep me up at night. 

I’m back up!

Wednesday, March 1st, 2006

My blog was down for a few days but its back up and running. That was fun trying to get all my content back from my old host. Thank god I backed it up last month. The rest I stripped from google cache. In the mean time, I managed to get my new server up and running and I’m hosting my site on my own server again.

Now for a laugh:
Ajax On Rails:
Ajax On Rails