And some of you even guessed it correctly! Conrgats! Without further delay, my super secret project: A REAL Software sponsored message board! I started with RS almost 4 years ago, and one of the first things I started pushing for was a message board for the company. I've always hated mailing lists and loved message boards, so and I know I am not alone in that feeling. However, there's also been heavy opposition to the idea because of fears of splitting up the community. However, I was recently able to assuage those fears and began pushing harder for a message
September 2005 Archives
It's been quite the busy day. More work for my super secret project, which hopefully will be announced really soon for all to bask in the glow of. But there has been much more mundane going-ons for me to deal with as well. I had to get my flight schedule situation fixed at work so that I'd still be going down to Austin after next week. There were some mishaps with getting the tickets and some misunderstandings about availability, which was making the situation quite difficult. But Janet, being awesome and all, managed to save the day and so I'll
The new hardware arrived, and I've been working on my super-top-secret project all morning long! Wahoo! Things are shaping up nicely, and I hope to be able to make an announcement to the world in the next few weeks. I'm sure the suspense is killing you all... :-P So I've got a question for all the programmers out there who read this... I've been thinking of moonlighting as a way to make some extra cash. However, due to my current position at REAL Software, there are limits to what I can do. For example, I cannot write code for someone
Adam recently expressed interest in knowing what my office setup is like. So I figure that's a good topic for a Tuesday afternoon. :-) I've got three dev machines that I use regularly, and one testing machine that I use whenever the mood suits me. Two of the four machines are my own personal computers, and two are from work. My testing machine that I use on occasion is my personal laptop. It's currently running Windows 2003 Server, because I figured we don't have enough testing on that platform as it stands. The machine has a 40 GB HD, 2.8
Do you ever find yourself wondering, "whatever happened to so-and-so?" I've been doing that lately -- just with random people who I used to know, and always wondered, whatever happened to them? What are they doing now? So here's my list of whatever's, and if you happen to know the answer to one, let me know! Whatever happened to Rosalee Christensen? Is she off somewhere, continuing to be the super-genius she always was? Last I hear, she was in college in IL. Whatever happened to Marie Lahr? I ran into her once about 5 years back and she was working
So I finally got around to putting my latest batch of house pictures online last night. So now there are some pictures of the house now that it's finished. I also snuck in some cute pictures of Pixel enjoying her new house, as well as some pictures from the house of the view. I especially enjoy the shot of the CAT jacked up to one side. He was cleaning the treads off by spinning them around quickly while hoisted in the air. :-P One I get the house a little more clean, I'll make another movie of how things look.
Oh boy oh boy, the weekend is here and I've got a ton of fun activities planned for myself. Not. Last night, I started digging holes for my trees, and I'm going to continue with that today. It appears that I have a large clay deposit underneath my house, which is both good and bad. It's bad because it's a royal bitch to dig through so that I can plant trees. It's good because it means my yard will retain water very nicely. I got 2.5 holes dug last night before giving up, and it took me a little over
I ordered three books recently, and I'm happy to say, book number one has arrived. I finally broke down and bought a hard copy of the Windows Interface Guidelines for Software Design (better know as the Windows User Experience). I figured that since I end up at that web page so often, I might as well get a nice hard copy version of the information to reference. I hate doing a lot of reading online, it's never really captured me. The second geek book I ordered was Linkers and Loaders, which is mostly for my own education. I've got a
Happy one year anniversary, Ramblings readers! It looks like the first post I ever made on here was Sep 19, 2004. Hard to believe I've been boring friends with technical knowledge and scaring customers with personal stories for over a year now. Time sure flies when you're alienating people! :-P First Post! Of course, if you'd like to get technical, I've been blogging since Dec 16, 2002. Of course, now my readers can at least keep their eyes instead of gouging them out three days a week.
I cancelled my Sprint cell phone service today. I get absolutely no reception out at the new house, and I could sure use the extra $50/month I'd save by not having it. So, if you used to call me on the cell, don't bother anymore. I now have a land-line at the house, and you can reach me on that. If you need the number, send me an email or IM me and I'd be happy to give you the new number.
So here's a trick that everyone should be using once they've got RB2005r3 (or greater) on their machines. One problem I see people run into constantly, especially when they're unaware (such as people coming from the Mac, but creating a Win32 UI) is with keyboard mnemonics. For those of you who don't know what those are, they're the little underlined letters in your UI. These allow keyboard users to quickly navigate and utilize your UI and are a must-have for any Win32 application. You create a mnemonic by placing an & in front of the letter you want underlined, and
Ever have one of those days when you just haven't had the chance to catch up with life? Yeah, that'd be today for me. I stayed up last night talking to Elissa, which was nice. Sadly, her parents are in the path of the next hurricane to hit the south (Rita). So her parents, the family pets (goats included) are heading up to Austin to stay with Lis and Lawerence for a while. Quite stressful, but still nice for her to get to see the family. I had a strange, fitful sleep last night which meant I woke up 5
Phew! Sorry about the flurry of non-activity lately. ;-) I spent the weekend with my sister in LA, and she has limited connectivity (read: AOL) so I wasn't able to write any updates this weekend. But that's ok, I'll still fill you in on the boring life of me today. :-P The convention ended on Friday, and Meggan's boyfriend Dave picked me up from the convention center. He and I headed over to the school where Meg teaches so that I could meet some of her friends from work. So we hung out at the school for about an hour
I woke up this morning and realized that today is my last day at PDC. Fittingly, it's a rather dreary day outside. I hiked my way over to the conference center today (about a mile walk) and here I am! The first session I was going to go to was a hands-on lab doing some C# programming, but my brain just isn't in gear enough to do it. So I've been peeking and poking my head around the various sessions going on. The one I've spent the most time listening to is the panel session on security. It's quite interesting
Another day, another million things to learn about. I started the day off with a very difficult decision: whether to listen to Paul Vick (the creator of VB) talk about future language directions of VB.NET, or listen to Raymond Chen talk about 5 things every Win32 developer should know. Raymond won the contest, and I wasn't disappointed. I learned a bunch of neat things to watch out for (such as memory locality -- a concept I was aware of, but needed a good reminder as to why it's so important). I also learned that there's a new API in Vista
One of the new features in RB2005r3 is the ability to allow certain controls to accept focus on Windows. These controls are invariably the non-system controls; basically, Mac concepts brought over into Windows such as the BevelButton or DisclosureTriangle. Previously, you had no choice -- these items were simply inaccessible to the keyboard. They weren't included in the tab order, and they could never get keyboard focus. Well, that's just plain terrible. These controls most certainly should be allowed to have keyboard focus! However, in certain instances, they should not. That's what this blog is all about. Since all of
So far, so awesome. :-) I got enough sleep last night to make me more alert and active today. About 12 hrs worth of sleep, to be exact. :-P So I got to the conference today and was able to sit down with Olive D'Hose of the shell team and pick his brain about everything from why the start menu behaves the way it does in Vista to how things work internal to Microsoft. For those of you who are interested in this sort of thing, the shell team at Microsoft has about 20 project managers, 60 engineers and 100
Since r3 was released today, I figure it's only fitting to tell everyone what my favorite features are. So here's my love list, in no particular order: More stable IPCSockets on Windows. IPC never really went over well with me in its original incarnation because I had to hack something together using memory-mapped files on Windows. It always seemed like a hack to me. Then one more, at about 6am, I had an idea of how to fix them once and for all in an un-hackish way. Poof, instant stability. Better accessiblity support on Windows. Things like BevelButtons, DisclosureTriangles, etc
I arrived at the conference after a one-mile hike thru downtown LA around 10am. I must admit, the convention center is huge and packed. If I had to hazard a guess, I'd say there's around 5000-7000 people here for PDC. There's always a lot of hustle and bustle around here. But I have noticed that the people at the conference aren't nearly as socialable as at Real World. But no one's mugged me, so I'm doing fine. :-P The first thing I attended was a series of keynotes. Unfortunately, I missed the one put on by Bill Gates -- I
I've got limited connectivity at the conference for two reasons: 1) My WiFi appears to suck. I can connect to one of a number of different hotspots, but it never fully grabs an IP for me. 2) I have no ethernet drivers (never needed them before). So because of this, I won't be updating quite as often as I'd like to be. :-/ I'm sure I'll get the tech issues worked out at some point today, but it still bugs me. So far, the conference has been quite nice. I've only seen keynotes thusfar though, so I've only got marketing
Sorry about the lack of posts this weekend, but I was quite busy. Friday night I don't really remember much of. I'm sure it involved playing Final Fantasy X until some late hours. I woke up very early on Saturday morning (7am) to go fishing with dad. We went down to Clearwater Lake to go for sunnies. We got there and found out that there was a northern (pike) fishing tourney on the same lake with 85 teams, so the lake was a little more crowded than normal. But that's ok, we found a nice windy-as-hell spot to get blown
Here's a list of bands that I've been digging on lately, just so you can see how strange my tastes in music really are. In no particular order: Techno Sasha Paul Oakenfold Man With No Name Green Nuns of the Revolution Lexy(Caution -- music playing on auto-maximized website. YECH!) Industrial Wumpscut Doll Factory God Lives Underwater Rock The Tea Party(Caution, music playing) Korova Cracker Phunk Junkeez Reverend Horton Heat(Caution, music playing) Bloodhound Gang(Caution, talking and something that might pass as singing + really ugly almost naked man) Blue October Country Dwight Yoakam(Caution, music) Garth Brooks Kevin Fowler Misc They Might
My black dirt got laid down yesterday morning, so I was quite excited to see some change happening with the lawn. But I was really excited when the sprinkler guys came and put in my sprinkler system. Wahoo! So now I'm just waiting for Mike's Dirt Works to get back here and drill seed the lawn. However, since this is outdoor and weather dependant, it's scheduled to rain from now until I die. Just like every other weather dependant aspect of my house. :-P I went to the dentist yesterday, wahoo, no cavities! Just the usual "you need to floss"
Now that we know how to determine whether another instance of the application is running on the same machine, let's extend the idea a bit further to make it useful. Let's create a way to pass information back and forth between multiple instances of the application. To do so, we're going to use something called an IPC connection, or Inter-Process Communication. This is essentially a socket that will only communicate with other sockets residing on the same machine. Because all the information is flowing between processes on the same machine, the data transfer is much faster than with a regular
I've got a super secret, uber awesome, totally out of character project I've been working on at work that's finally coming to fruition. I'd tell you what it is, but then I'd have to kill you. But I'm happy because the ball is rolling on it. I've convinced the powers that be that it's something we need, and they've agreed to move the project forward. I've done some initial testing, and I've been given the green light to make it happen. So hopefully in the next month or so (or less, if I have my druthers) you'll see me post
Since you've already learned all about the APIs behind the mutex class, this should be fairly straightforward. We're going to create a mutex with a set name, and try to enter the mutex in App.Open. If we're able to enter the mutex, that means no other mutex has entered it, so we must be the first instance of the application. However, if we fail to enter the mutex, another instance of the application is already running. The code looks like this: [rbcode] Class App Inherits Application Private Dim mMutex as Mutex Sub Open() // Create the mutex with your application's
So here's a question I'd like to put out to people: how many of you are planning on coming down to Austin for REAL World 2006? And out of those of you who are coming, what talks would you like to see? I'm kinda tired of doing the networking, linux and console applications talks and I'd like to write some totally new talks for this year. So I was coming up with a list of things to talk about, and I figured, hey, who better to ask than some of the people who are going to be coming! So here's
It's going to be a fun weekend, I think. Dad's coming over pretty soon so we can get some more work done on the house. We're going to try to get entryway things done, and get some of the caps ready to install on the half-walls (in the dining room and kitchen). I've got my list of things left to do before I can start having people over, and the list is getting shorter almost every week. :-) It's poker night tonight. Brian finally got a kitchen pass from his wife, so we're all set to play -- and it's
So now that you know all about how threads work in REALbasic, let's talk about data protection via locking mechanisms. There are going to be times when your multi-threaded application will need to access a piece of shared data between threads. For example, two threads may be processing on the same file (one as a reader, the other as a writer). It would be disasterous if the writer wasn't finished with its operation when the reader tried to read the value from the file. So how do you deal with this sort of situation? By using a locking mechanism to
Due to suggestions from a few people, I'm going to try using Google's AdSense ads for a while. If I find that they're horribly obtrusive, offensive, or don't make any money ever, then I'll pull them. Feel free to leave comments here. They should only be showing up in the sidebar, so if you see any rendering issues, please let me know so I can get them fixed. We'll see how it goes. :-)
I just checked my web stats for last month to see how I was doing.. Over 3 GB of bandwidth used by over 12,000 visits. Shoooooey! That's a lot of people. Since I broke my goal of 10,000 visits in a month, my new goal is 20,000. We'll see how long I can keep reaching my goals. ;-)
Yesterday we learned all about the APIs on the Thread class itself. Today we're going to talk about threading functions that are external to threads. First, there's App.CurrentThread. As the name implies, this property tells you which thread is the one that's currently executing. However, there's a catch. We do not give you access to the main thread in REALbasic because it's way too easy to shoot yourself in the foot (or the head!), so if the main thread is the one that's currently executing, this property will be Nil. I should note that this behavior isn't actually harmful because