Hypercubed Blog

Incoherent chatter on issues related to science, computing, and philosophy.
Random chains of thought from a scattered mind.

Hypercubed Blog has Moved!


10 lies my mother told me
Posted Thursday, June 30, 2005 6/30/2005 08:28:00 PM

Don't worry Mom I'm not going to reveal any dark family secrets. Rather I'm looking more for lies that everyone's mother has told them at one point or another. I guess they are not really lies because my mother (and your mother) were told these same incorrect facts by their mothers. I'm talking about old wife's tales. Although I really don't get the phrase. Why old wives? What about young fathers. I'm sure my father told me a tale or two. Anyway, on with the subject at hand.

Mom: Don't go swimming for an hour after you eat or you'll get cramps and die.
There has never been a reported case of death due to cramping while swimming. Muscle cramps in the calves, feet, and hands and oxygen-deprivation stomach cramps while swimming are not uncommon but have never been linked to a death. Mom: Don't cross your eyes. They'll get stuck.
Intentionally crossing the eyes is never a cause of strabismus (crossed eyes); the eyes cannot get "stuck" in a crossed position. Mom: Don't watch TV with the lights off. It will hurt your eyes.
In general you should limit the amount of TV you watch as it can be harmful to your eyes. However, ophthalmologists generally agree that watching TV in the dark doesn't cause any more harm than watching TV with lots of light.
Mom: You can't have any of my coffee. It will stunt your growth.
There is no compelling evidence that drinking coffee at a young age can stunt growth. Matter of fact a 30 year study of coffee drinkers showed no evidence of repressed growth. Mom: Don't eat spicy foods. You'll get ulcers.
90% of ulcers are caused by a Helicobacter pylori bacterial infection. Neither stress nor spicy foods cause ulcers. But in some cases they can make ulcers worse.
Mom: Eat your carrots. It will improve your eyesight.
This one is debatable. Carrots are a good supply of Vitamin A which is important for healthy eyesight there is no evidence that eyesight will improve. Mom: Put on a coat or you'll catch a cold.
Cold air does not cause a cold people do. A cold is a virus contracted through contact with other people. The reason for this myth appears to be that during cold weather people tend to stay indoors more; thereby increasing personal contact with others.
Mom: Don't play with that toad, you'll get warts.
Toads do not have (or give) warts. Warts are caused by human papilloma virus. This is a human virus that is not carried or transported by other animals. The odd bumps on the back of a toad are not warts they are to help camouflage them in their natural habitat.
Mom: Don't swallow your gum it will take 7 years to digest.
Gum, or anything else you swallow, will pass typically in a days time. Swallowing gum is not considered healthy but it definitely won't get stuck.
Mom: Don't crack your knuckles. You'll get arthritis.
Probably not but mother was closes on this one. There doesn't appear to be any conclusive evidence either way regarding arthritis but it appears that there is some weak correlation that knuckle-cracking causes some damage to the hand.
There you have it. Thanks to the internet we can finally break this long chain of myths and our children can become the coatless gangs of caffeinated knuckle cracking cross-eyed kids we always wanted to be. Oh, yeah.... and whacking it wont make you blind either.

Testing w.bloggar
Posted Tuesday, June 28, 2005 6/28/2005 02:56:00 PM

Ok, just for kicks I'm testing w.bloggar. The HTML editor actually appears to be a little better then BlogJet's but without the WYSIWYG editing. But the good syntax highlighting helps tremendously. Probably best of all for most people is that w.bloggar is free. The image capabilities in w.bloggar are not as good as BlogJet requiring you to upload each image to the FTP site individuality before adding to your post where BlogJet uploads all the images at once when posting. Dragging and dropping text appears to be broken. Amazingly spell checker seams to have the same problems as BlogJet.

[Note: edited to show correct name of application w.bloggar not w.blogger.]

w.bloggar spell checker

BlogJet follow-up
Posted 6/28/2005 11:51:00 AM

Word travels fast on the internet. I posted my review of BlogJet yesterday and less then 14 hours later someone from BlogJet posted a comment. I hope they take my opinion constructively. Let me clarify my point of view. BlogJet is a decent and solid program. But for me I get the same abilities using outlook and blogger.com with some added inconvenience of copying and pasting. This added inconvenience is offset by the inconvenience in using spell check BlogJet. Let me illustrate. As I wrote this post I typed “the” as “teh” 11 times. When I hit spell check in BlogJet I get the dialog in figure 1 below. Notice where the correct spelling of “the” is? No? That is because it is down the list a couple of lines. To get the correct spelling I have to scroll down and then hit “the”. I would have to do this 11 times using BlogJet (scroll, click, scroll, click, etc). Now look at outlook spell check in figure 2 below. Notice that “the” is the first item on the list and the default selection. Outlook knows that this is a common spelling error and orders the suggestions based on commonality (or so I assume). Furthermore, notice the button on the right “Change All”. When I hit that all “teh”s will turn to “the”s. One click is defiantly better then scroll, click, scroll, click, and so one. In figure 3 is the spell check from iespell “a free Internet Explorer browser extension that spell checks text input boxes on a webpage.” It also has “the” as the first suggestion and a “Change All” button.

I know what your saying. Learn to spell jackass. Well, maybe if I tried hard I can fix my “teh” issue but the same goes for other words. The BlogJet spell check is not poorly written it just is not as smart as outlook’s (or iespell's) which I believe is common across all office applications. I hope the BlogJet developer, if he returns, will take this as constructive criticism and take their spell check up a notch.


Figure 1: BlogJet spell checker


Figure 2: Outlook spell checker


Figure 3: ieSpell spell checker

BlogJet, dumb spell check kills it for me
Posted Monday, June 27, 2005 6/27/2005 01:08:00 PM

The other day I mentioned that I'm testing BlogJet. I’ve used BlogJet for every posts after (and including) that one. Well, first for the cons. Using BlogJet provides a convent HTML editor for creating and uploading your posts. The HTML editor is slightly better the the post creator at Blogger.com with the added convenience of a spell checker. It allows you to add graphics and the graphics are uploaded automatically to an FTP server of your choice. This is very convenient as blogger doesn't have the capabilities to add a graphic and when posting to blooger you need to open a support FTP application to upload your graphics to your server then embed the image URL in your post. BlogJet does this automatically. Unfortunately, that is the only feature I liked.

Like I said the HTML editor is only slightly better then bloggers and if you really wanted embedded spell check your could always use ieSpell or similar tool. The spell checking tool in BlogJet is plain dumb. As a habitual keyboard pecker I often type “the” instead of “the” and the BlogJet spell check requires me to scroll to the bottom of the suggested corrections list to hit “the”. Additionally there is no “change all” feature in the spell check. With my spelling abilities I need a good spell checker. Personally I think I prefer spell checking my posts in outlook. I construct my post in outlook as I would an e-mail, spell-check, then copy to blogger editor. The inconvenience here is that the images wont upload (requiring an FTP upload as I sated above) and that I can’t edit the HTML directly inside outlook. So far I’ve been finding myself writing in BlogJet, copying to outlook, spell checking in outlook, copying back to BlogJet for posting. After posting I then usually pop over to my blog to make sure the upload is complete. If I’m opening the blog anyway I might as well post it directly into blogger and skip the middle man.

Well my BlogJet trial version is expiring soon and I don’t think I’ll be renewing it. When someone embeds a blog posted inside outlook then I’ll be all over that.

Coordinate Exchange COCOMO
Posted Sunday, June 26, 2005 6/26/2005 10:45:00 AM

So as a follow-up to my last post regarding Coordinate Exchange I did some digging and discovered the COCOMO model for software cost estimations. In it's basic form COCOMO can estimate the total effort of a project from the SLOC (source lines of code). So after a little more searching I found this program by Rod Stephens at vb-helper.com to count the number of lines in Coordinate Exchange. So using Rod's program and the COCOMO model I calculate the following for my Coordinate Exchange project:

*** SUMMARY ***
Forms: 9
Modules: 23
Classes: 18
Total Controls: 230
Total Lines: 9803
Total Subs: 166
Total Functions: 167
Total Properties: 54
Total Comments: 1701

*** Basic COCOMO model ***
Total Physical Source Lines of Code (SLOC): 8,102
Development Effort Est., Person-Yrs (Person-Months): 1.80 (21.59)
Schedule Estimate, Years (Months): 0.67 (8.03)
Total Estimated Cost to Develop: $310,882

The development effort seams high. I've been working on CoordEx at most three years now so I don't know how I can spend almost two man-years on it. In any event that is an estimated 300,000 price tag for CoordEx. So based on the amount of money I've received for CoordEx development that is a P/E (price to earnings) ratio of 1800. In other words I've earned less then 0.06% of what CoordEx is worth. Do I believe this is the actual value of CoordEx? Not really... just an interesting evaluation.

Show me your underpants code
Posted Saturday, June 25, 2005 6/25/2005 11:39:00 AM

I’ve briefly mentioned my Coordinate Exchange application before.  This application started as a simple plug-in for MS MapPoint to enter and extract pushpin data (latitude and longitude data) but quickly grew into something more.  While still restricted to working within MapPoint it has many features hat work independently of MapPoint.  This application can read and write GPS data to and from several different file formats and communicate directly with some GPS units.  While writing it I attempted to make it easy to add new file formats and GPS units as time goes on.  Matter of fact every once in a while I receive an e-mail asking if I can support a new file format and it generally takes me less then a hour to add it (as long as it is text based).  At the core of CoordEx is a simple macro language that translate the data at ease.  It is easy for me to read data in one format and out put in another and even scale the value along the way in case of a needed unit conversion (i.e. meters to feet).  This macro language is something that nobody has ever seen.  It is embedded inside my code and not available to the users but every time I need to add something to CoordEx I appreciate the work I did early on to make this system flexible.

Well, now to the point of my post.  I was recently approached by a small GPS unit manufacture (I wont mention the name as I don’t have their permission).  I was asked if I’d be interested in contributing to an application they were developing that can read data form their GPS unit and output several different file formats for use in other mapping applications.  At first I was very interested in this.  I spent several days discussing the list of required features and how deliverables will be made and so on.  As time when on I began to think more about this.  What they wanted was that because my CoordEx application was already constructed it would be quick and simple to reuse some of my code for their applications.

Well, as I thought about it more I realized that that portion of my code needed to make their application work was the core of CoordEx and includes the macro-language that I’ve come to love an appreciate so much over the years.  How much was that worth to me.  Sure there was no requirement that I stop development on CoordEx and the time it would have taken me to embed the CoordEx core inside there application would be minimal but is it worth it?  I’d earn a few hundred dollars easily and they would sell there applications and make some more for themselves.  They are not going to get rich off my code and it is easily re-creatable.  It is not like I’m sitting on the foundations of MS-DOS (QDOS) and they are going to go off and make millions.  No, they will probably hire a few freelance programmers to knock out a simple application that fits their needs and someone will make several hundred.

But I guess it is not the money.  It is the felling that by handing over the core of this application that I’ve spent so long developing I’m losing something of much more sentimental value then what it is worth in real value.  Sure, for a large sum or some type of royalty rights I could be convinced to hand over a copy and reveal my underpants code but I don’t think anyone is willing to pay for the sentimental value of code.

On a side note; now that I have figured out the debugging issue in VS 2003 I’ve been working (although rather slowly) on converting CoordEx to .NET.  After the conversion CoordEx will run independently of MapPoint and will be a convenient GPS data conversion tool for a much wide audience.

Spell with flickr
Posted Thursday, June 23, 2005 6/23/2005 08:10:00 PM

This is pretty cool. You enter a word and it will retrieve graphics from Flickr to construct a collage that spells your work. Click on the individual letters to change the image of each letter.

'\Ubrick BSignD

[Via: Attack of the Blog!]


Posted Saturday, June 18, 2005 6/18/2005 10:56:00 AM

I do a lot of programming. I do it both at work and at home as a hobby. I program mainly in Visual Basic.NET and FORTRAN 90. I also do some JavaScript (in HTML), VBScript (via ASP), and VBA. I’ve done some C and Pascal programming. I know all the hardcore programmers out there reading this (are there any) are saying to themselves where is C++ and/or Java. Well, I never program in C++ or Java. I know they both have become the de facto standards in programming these days but I’ve never seen the point in climbing their steep learning curves for what I have to do. The new Visual Basic.NET (which is by the way 10x better then vb 6.0) has all the fancy object based features you could ever want (inheritance, polymorphism, etc.) and FORTRAN has the mathematics ability and speed when needed. At home when I'm programming for fun I want to get right to the part I'm interested in. I don't want to complicate my life by fighting with the GUI or with pointers. I want to focus on the part that interests me and that's it. At work I need a programming language that makes it easy to enter the mathematics I need and will solve the problem fast. I love FORTRAN for the easy vector and array manipulations. Each serves it's purpose and very well I think.

I’d wouldn't mind seeing a Fortran/.NET hybrid. Give me Fortran math abilities with Visual Basic.NETs object oriented system. Hopefully we get some of the OO stuff in the upcoming FORTRAN 2000 (yes, I know they are a little late) but not everything. Allow me access to the system libraries and Common Language Run-time along with the cross-language capabilities of .NET. Give me the option of using FORTRAN fixed format read’s and writes all packaged in Microsoft's Visual Studio and I'd be hooked.  I've see some attempts to integrate Visual Studio but they all fall short.  Essentially they create a set of function calls within FORTRAN that send information into VB or C and back.  Basically I want VB.NET for engineers and scientists.

In memory of Dr. Yian Chang
Posted Wednesday, June 15, 2005 6/15/2005 05:51:00 PM

In Memory of Dr. Yian Chang
1965 – 2005

A great man, a great physicist, and a great friend.  You will be missed by many.

Research services in Outlook 2003
Posted Sunday, June 05, 2005 6/05/2005 09:58:00 AM

Ever find a new feature in a tool you've been using for a long time. I do all the time and it's both exciting and annoying. It is exciting to figure out something new but I think back to all the times I could have used that feature and saved myself a boatload of time. Well, that is how I felt this morning when I "discovered" research services in Outlook 2003. The damn menu item has been there all this time but I never thought of clicking Tools -> Research. When you do this Outlook will open a research task pane that allows you to lookup a words in the dictionary or thesaurus, search the Web, or best of all get Translation services without leaving Outlook That's right I can now read all my foreign language spam e-mail.

With the research pane open and the translation service selected all you have to do is highlight the text and the translation shows up on the right. The translation are generally poor but that is typical of machine translations these days (at least until the new Google Translator). So from now on when I get an e-mail in Russian I can translate it right away without cutting and pasting into Babel Fish only to discover that they are selling spam or gym subscriptions in Moscow. Now if I can just recover the 2 hours over the last year that I spent translating these e-mails. Hey, at least I'm not the guy creating tables of content in word by hand (if you are that guy look here).

Testing BlogJet
Posted Saturday, June 04, 2005 6/04/2005 12:38:00 AM

BlogJetI generally write my post in MS Outlook.  Outlook allows me to add hyperlinks with ease and includes a spell checking.  I then can copy and paste the text into the blogger posting form which will keep all my hyperlinks intact.  I’ve decided to test drive some of these blog posting tools.  Today I have installed BlogJet.  It is a trial version so I figured I’d try it out for a few days and see how it goes.  So far it looks nice.  It allows me to spell check and add images to my post.  I can even edit the underlying HTML.  Once I hit “Post and Publish” my text is uploaded to blogger while my images are uploaded to my website.  That is pretty cool and saves a lot of time.  I don’t know if I like it $39.95 worth but I’ll give it a spin.

Casio Wave Ceptor
Posted Thursday, June 02, 2005 6/02/2005 11:26:00 PM

I'm very bad at buying gifts. I never know who I should buy gifts for (do you give b-day gifts to your boss's cousin's administrative assistant?) or what to buy. Even on the rare occasion that I decide what to buy I rarely can find one that is right for that person (does my wife's hairdresser's sister like puke green Daisy Dukes?). My wife on the other had is great at it. She always buys something that is great and typically makes me feel shitty for giving crappy gifts.

Well this year for my birthday my wife gave me a Casio Wave Ceptor watch. First of all it is a pretty nice looking watch but the features are really cool. The front face is a solar cell for charging the batteries so hopefully I can drag myself away from my keyboard long enough to keep a charge. It has all the other nice watch features like 12/24 hr format, duel analog and digital display, alarms, stopwatch, and electro-luminescent backlight, and world time. But the most impressive feature is that every night the watch calibrates itself to the U.S. atomic clock signal transmitted from in Fort Collins, CO. I should never have to set the time again. Sweet! Mine is actually a Japanese version so the day of the week is written in Kanji (so maybe I'll learn something) but there are many different styles available here in the U.S.: search amazon. Hopefully I will get the matching sports car for father's day.

Previous Posts

Web hypercubed.blogspot.com