This week started off slowly at work, but wow, it picked up nicely. I've been working on the most interesting project I've had in many months: a c++ program to process data from a large IR emitter and sensor array, which reports 3-d positions (within 1/10 a millimeter) for a set of markers within a 3m x 3m x 4m cube space.
I was asked to learn how this machine talks with the computer over the serial line, and figure out if it can report raw 3-d position data for each of 4 sensors, instead of reporting the aggregate position and orientation of the sensors. There's a sample C++ project which fully demoed the program's capabilities, which I've been hacking on. There's no tricky math- and their code is quite well documented. And a friendly support engineer helped me determine that I had the right approach to get the data using their API. I also found a bug in their code, which we're fortunately able to work around.
So I've gone from zero to almost-but-not-quite-there in the last 48 hours. This involved: learning Visual Studio, learning the API, and figuring out enough of this C++ program to be useful. This is what I wish I'd been working on for the last year. I'll be done with this project on Tuesday... (at least I hope I will, because I'm leaving with
melted_snowball for Florence on Wednesday, not back until the following Thursday!)
Visual Studio is the best Microsoft product I've ever worked with; I got up to speed quite quickly and the only thing holding me back was, um, a bit of fuzziness on C++ datatypes. Also, I wish I could get the debugger to use the breakpoints I set; I'm having to do more debugging-via-print-statements than I'd prefer.
I was asked to learn how this machine talks with the computer over the serial line, and figure out if it can report raw 3-d position data for each of 4 sensors, instead of reporting the aggregate position and orientation of the sensors. There's a sample C++ project which fully demoed the program's capabilities, which I've been hacking on. There's no tricky math- and their code is quite well documented. And a friendly support engineer helped me determine that I had the right approach to get the data using their API. I also found a bug in their code, which we're fortunately able to work around.
So I've gone from zero to almost-but-not-quite-there in the last 48 hours. This involved: learning Visual Studio, learning the API, and figuring out enough of this C++ program to be useful. This is what I wish I'd been working on for the last year. I'll be done with this project on Tuesday... (at least I hope I will, because I'm leaving with
Visual Studio is the best Microsoft product I've ever worked with; I got up to speed quite quickly and the only thing holding me back was, um, a bit of fuzziness on C++ datatypes. Also, I wish I could get the debugger to use the breakpoints I set; I'm having to do more debugging-via-print-statements than I'd prefer.
no subject
Date: Friday, 4 April 2008 11:52 pm (UTC)no subject
Date: Saturday, 5 April 2008 06:18 pm (UTC)no subject
Date: Saturday, 5 April 2008 06:22 pm (UTC)no subject
Date: Saturday, 5 April 2008 06:31 pm (UTC)Anyhow: vee shall see.
no subject
Date: Saturday, 5 April 2008 06:35 pm (UTC)no subject
Date: Saturday, 5 April 2008 06:40 pm (UTC)Yeah- intel imac > G5 spare as far as I'm concerned. I don't need to put a RAID inside it, or any other custom h/w, or ...
no subject
Date: Saturday, 5 April 2008 07:12 pm (UTC)no subject
Date: Saturday, 5 April 2008 07:14 pm (UTC)no subject
Date: Saturday, 5 April 2008 07:52 pm (UTC)Next I guess we'll see if he took my suggestion that a second screen would also make me more productive. :)
no subject
Date: Saturday, 5 April 2008 07:39 pm (UTC)*glances at 8-year-old box sitting under his desk*
*considers even more elderly box sitting in the closet as web server*
I should really replace my server with a mac mini. :)
no subject
Date: Sunday, 6 April 2008 12:27 am (UTC)no subject
Date: Saturday, 5 April 2008 08:52 pm (UTC)no subject
Date: Sunday, 6 April 2008 12:29 am (UTC)no subject
Date: Saturday, 5 April 2008 03:14 pm (UTC)no subject
Date: Saturday, 5 April 2008 06:01 pm (UTC)no subject
Date: Saturday, 5 April 2008 06:12 pm (UTC)Yes- that was a biggie for me. This other C++ IDE I've had to use (for LabWindows/CVI) was awful in that regard. Eventually I had the brain-wave I only needed to use it for compiling, and instead of using that for editing, I was mostly relying on good 'ol Emacs.
Now, by the end of the month, I need to figure out what IDE I should be using in mac-land, because I've told my new boss I'll be more productive if he gives me a mac (even instead of a linux machine). It's true I'll be more productive- I've just been using terminal-based linux tools for all my professional career!
no subject
Date: Saturday, 5 April 2008 06:19 pm (UTC)If you find a good one, I would be very interested to hear about it. All of the suggestions I found online weren't terribly good editors, and I really don't want the bloat of something like Eclipse. The biggest problem I had with most products was a lack of a rich regexp search+replace, and of on-the-fly macros. Once you've gotten used to using those two, everything else feels like Textedit.
no subject
Date: Saturday, 5 April 2008 06:25 pm (UTC)There seems to be a bit of consensus on the web that VS will work fine under vmware/parallels, and indeed that vmware fusion is superior to parallels 3.0 which is convenient because I never upgraded from parallels 2.5 :)
no subject
Date: Saturday, 5 April 2008 06:40 pm (UTC)no subject
Date: Sunday, 6 April 2008 12:35 am (UTC)no subject
Date: Thursday, 17 April 2008 04:20 am (UTC)As for VMware Fusion vs. Parallels, the dust is not settled yet: each one is better than the other depending on what you want and what you're doing. Latest rumors I've heard is that if you want to deal with a lot of peripherals, particularly USB, you might be in better luck with Parallels, if you wanted to tell the VM how many CPUs you want to use and how, you might like VMware better and so on and so forth. "Stable" is one of those funny words when it comes to VM, some people say that while VMware tends to process stuff in the VM faster, once you stop VMware it continues to take CPU resources/time because some of the processes don't sleep/go away like Parallels. Reports of which one is better if you sleep the physical machine without stopping the VM or even just which one suspends the VM and lets you quit the program and resume later are conflicting at best.
But here's the good news: as far as I know, *both* let you use the program for free for a few days so you can check. Just remember to ask the uninstaller to remove the systems completely before installing the other one, 'cuz they sink their teeth deep into the OS and the machine to get the VMs to work and you don't want both running fragments of code at once, bad bad plan. Good luck!
no subject
Date: Saturday, 5 April 2008 06:21 pm (UTC)