February 2006 Archives

REAL World Day "I Forget"

| | Comments (5)
Holy moly and a half! This is the first free moment I've had to sit down and write in the blog since REAL World 2006 started. Monday was a long day! Geoff's keynote went very well, and it was fun seeing people's reactions to it. Afterwards, it was nice to sit down and have lunch with users. I sat at a table with a number of people I didn't recognize, and mostly just BSed about REALbasic and the keynote. After lunch came my first session -- a deep look at threads. Lis came and watched! She's quite the trooper. :-)

Whata fun weekend!

| | Comments (9)
Lis and I just got back from a great weekend! But I suppose I should start at the start, not the end. We got up on Saturday morning and starting prepping for the camping trip. First, we went to Academy. I picked up a new pair of hiking boots (very comfy, very nice!) and I helped Lis get ready for her first ever camping trip. She got a lantern, a stove, some propane, a sleeping bag, a camp chair and a cooler. It was fun picking the stuff out with her. :-) Then we hit the grocery store and picked
Heh, since I'm in a list-making mood lately. :-P A new gaming system with all the good games for it. Any system'll do. The dragon book A wacom tablet so I can do Classic Ramblings again The entire Lord of the Rings DVD set (and since I'm on the topic, I wouldn't mind a hard-cover copy of the Hobbit, et al, though I do have the hard cover trilogy itself) New computer hardware (preferably a new desktop system, but I'll take a laptop as well) -- not a Mac. ;-) A king-sized bed A new couch and loveseat for the

Things I Love

| | Comments (16)
Well, since I did my hater's list, I suppose I could do a lover's list as well. Again, no particular order: Elissa Law and Order + Pizza + Beer A really good book Elegant code (man, I wrote some awesome stuff today too!) Bowling with friends Racquetball! Any time spent with my family My new house! Pixel, even though she comes into the office The chance to play with new technologies (what can I say, I'm a true geek!) Bitterly cold weather or blizzards Elissa Old-school RPGs (FF II and III are still the best games ever) A job well-done

New Vista Screenshots

| | Comments (24)
So I promised a few more Vista screenshots, and so you'll find them here. I recently downloaded the latest CTP (which is the Dec 2005 build) from MSDN and installed it on my machine. I seem to recall the install process taking a lot less time previously; this one weighed in at almost an hour and a half! Granted, this was a full install (not an upgrade) and reformat. But I was still quite surprised at how long it took. They changed quite a bit about the look of the OS, including redesigning the task bar, and a few UI

Links Updated

| | Comments (9)
I took out a bunch of links I no longer wanted to pimp, and added a bunch more that I would like to pimp. Basically, the blog roll is updated to have more of my daily reads, and I added a few of my daily web comics. Enjoy!

Things I Hate

| | Comments (24)
In no particular order: Pointless "discussions" which are essentially nothing more than veiled name-calling. People who think they're always right. Always. Bigotry Whenever I have the time, I never know what to do. Whenever I really want to do something, I never have the time. People who blame the tool for their own ignorance of how to work it. Powerpoint presentations When the town water supply has an e coli outbreak, and I don't find out until after supper. Not enough hours in the day Shaving Bad food, worse movies When a movie comes out based on a book, because
Fine fine fine -- gotta keep my little lady happy. ;-) I had a productive weekend in many respects, which was quite nice. On Saturday, I spent almost the entire day napping and reading. w00t! Lol, ok, so I wasn't productive on Saturday. :-P I'm reading the Lord of the Rings for the Nth time. Just as awesome this time around as every other time around. However, on Sunday, I really did get things done. I got the entire basement cleaned up. That involved moving most things into the crawl space under the stairs. Including some fairly decent-sized rolls of

Continuing right along...

| | Comments (10)
Since I've been on a colors kick recently, and I've seen some questions regarding colors pop up on the forums, let's take a peek at how to get a CMYK color into a REALbasic color. I don't even pretend to be a color expert, so I'm hoping my faithful readers can shed more light on the topics for me. But I do know that there are various colorspaces which are all used for different scenarios. RGB seems to be the most popular one, but another big one is CMYK. I recall from talking to my dad (he used to work

Neat little code snippet

| | Comments (4)
Since we were just talking about colors yesterday.... Ever needed to get a random color for debugging purposes? I have! Whenever I start debugging slow drawing code, the first thing I want to know is how often is something being refreshed. Oftentimes, you can speed up your drawing code by simply drawing less! However, knowing when the Paint event is being called can be tricky. Unless you're remote debugging, it's basically impossible to debug using the debugger. So what I do instead is draw a patch with a random color. Every time the patch changes colors, I know I've done

Yay Math!

| | Comments (16)
Have you ever wondered how to tell whether two colors are "close" together in that they would be hard to read if overlapped? For instance, if you have a background color that's white and a foreground color that's light grey -- how hard is it to see the foreground color? I recently ran into this issue with the REALbasic preferences dialog. There's a listbox which allows you to pick various preferential colors for things like syntax highlighting, etc. The listbox background color defaults to white, except that background color isn't *always* white. For instance, if you change the default "window"

I learned something new!

| | Comments (13)
Did you know that SortWith is actually useful? I had absolutely no clue what this was supposed to be used for. Thankfully, Mars was able to set me straight! Basically, when you have two arrays of items that are related to one another, you can use SortWith to sort both arrays at the same time; keeping the relationship. For example, let's say that you have two arrays: one of names of items, and one for their price. Now you want to sort the array of names, but keep the prices with their corresponding name. So, in code: [rbcode] dim names(

Little side project

| | Comments (12)
So I had a strange thought last night for a side project, which I promptly started working on. How many of your are familiar with the concept of thread pools? A thread pool is a pool of threads which are managed by the system and used for doing background work. The basic thought behind them is that you queue up a job to be done on a thread. The caller really doesn't care too much about the state of things since the jobs are meant to be relatively unattended things. For instance, let's say you were writing a shell for

So I got to thinking...

| | Comments (20)
Yesterday, when I was griping about not seeing much in the way of useful things to answer on the mailing lists recently, I got to thinking. Just how active *have* I been on the mailing lists? This month, I've answered 9 emails (out of all of the mailing lists). This month, I've received 1920 emails on the mailing lists. This morning, I spent a half hour reading my emails, and did not answer even one. So I've simply resigned from most of the mailing lists (not the betas list though) due to the sheer volume of email + how much

Healthy!

| | Comments (3)
So after getting 14 hrs of sleep on Friday night. 13 hours on Saturday. And 11 hours on Sunday.... I feel healthy! LoL, I still have a somewhat runny nose, but I don't think I'll need to take the NyQuill tonight (though I might anyways, just to be safe). However, I still feel like my brain is functioning at about half speed. I decided that I'm going to have mom and dad over for Valentine's Day and cook them a really nice supper. I figure that they cooked plenty for me over the years, it might be nice to do
Yet again I found myself scouring for this information, so, like with version information, here's my handy little table of info. All numbers are in decimal, and I'm pretty sure they're correct (tested the majority of them out). N/A means you can't get to that code without using a modifier (or the code doesn't exist at all). Some codes are dupes (such as the letters of the alphabet are dupes in the AsyncKeyDown category). AscB( Key )Keyboard.AsyncKeyDownExplanation 0N/ANull Byte 1115Home 4119End 5114Insert 851Backspace 948Tab 11116Page Up 12121Page Down 1336Return 2753Escape 28123Left Arrow 29124Right Arrow 30125Down Arrow 31126Up Arrow 3249Space 33N/A!

Gah!!!

| | Comments (4)
So it's the KVSC trivia weekend, and I was totally looking forward to doing it this year. I've been invited to join about four different teams... but am I doing it? No. Why? I'm sick. I started coming down with a cold yesterday, which reduced me to a whimpering pile of miserably whiny fun. I slept 13 hrs last night, and feel worse today. Le SUCK! Dad came over and took most of his tools back home with him today. So now my garage feels barren. I plan to spend my weekend doing the puttery stuff which I never have

Console safety

| | Comments (5)
Here's a new, little-known feature of RB2006r1 -- you can now set the console safety on classes, methods, etc within the IDE. Let's say you're creating a set of 3rd party classes that you want to give away to users. It used to be that you had no control over whether that class would work in a console application, not work, should *only* work in a console app, etc. Now, you can explicitly tell the IDE "hey, this can be used under these circumstances." In the project item editor, right click on a class. You'll see a group of three

Focaccia Bread

| | Comments (11)
It's been a *long* while since I've put up a good recipe. So here's a new one for you that I plan on making this week. I'll let you know how it goes. Stuff you'll need: 2 3/4 cups all-purpose flour 1 teaspoon salt 1 teaspoon white sugar 1 tablespoon active dry yeast 1 teaspoon garlic powder 1 teaspoon dried oregano 1 teaspoon dried thyme 1/2 teaspoon dried basil 1 pinch ground black pepper 1 tablespoon vegetable oil 1 cup water 2 tablespoons olive oil 1 tablespoon grated Parmesan cheese 1 cup mozzarella How to make it: In a large

Quality of Goods suck!

| | Comments (20)
It used to be that manufacturers made stuff that lasts -- whatever happened to those days? I have a silverware set that mom and dad got when they were first married (that's something like 35 years ago) and it's still in great condition. I've got a working blender from the 60s which I use to make malts and mixed drinks with; works wonderfully! All sorts of things built back in the day are still really useful today. None of it was ever considered high quality stuff, but it all managed to last for a long time. Fast forward to now.
I see people get tripped up by the fact that Window.Left and Window.Top actually refer to the client area of the window. So they'll try to write code that moves the window to 0,0 on the desktop, and then they can't figure out why the caption bar, menu and part of the frame are entirely off-screen. So here's a handy little code snippet for you to stick in your toolkit. This will set the window's top and left to 0,0 (but not based on the client area). We'll use the SetWindowPos Win32 API to move the window. But we have

Congrats!

| | Comments (3)
Congrats to Kelly and Chad on their engagement!!! Last night, my cousin Maggie came over to my place, picked me up and we headed down to my cousin Kelly's place. We got down there about 8:30pm, and hung out at Kelly's place while she and Chad were gone to dinner. About 9pm, we went over to Kozey's (an up-scale place in Edina) where they were having dinner, and set things up. There was a chair in the middle of the room, and all of us were standing in a semi-circle behind the chair, holding a rose and a glass of

Wahoo! Stuff!

| | Comments (8)
I now have a garage door opener! It turns out that most of my problems stemmed from a short in the wiring. So after tracking that down, the sensors on either side of the door finally lit up and the door would be allowed to operate. I celebrated by opening and closing the garage door. Boy, the life I lead! ;-) I'm going to start working on the basement with dad this weekend, so that should be fun. And I get to hang out with my cousin Maggie tomorrow night; also a fun time. Aside from that, there's really not
I see people puzzled by this quite frequently, so I feel a discussion is in order. This preference in the IDE does exactly as its name implies. Anytime an exception is throw by the debug application, the IDE will attempt to show you where the exception ocurred and what the exception is. That's it. So where does the confusion come in? It comes in because people are confused when it breaks on every exception, including ones that are handled, or cannot be displayed. For instance, if you put this code into a method and run, you will break into the

Blogroll

Friends
REALbasic Related
Win32 Programming

Disclaimer

I'm currently an employee of REAL Software. My blog is mine. The opinions represented in this blog are mine as well and may not represent my employer's opinions. All original material is copyrighted and property of the author.

REALbasic® is a registered trademark of REAL Software, Inc. REAL SQL Server™ and Lingua™ are pending trademarks of REAL Software, Inc. All rights reserved.