My friend of some eight years, Ellie, a female tortoiseshell American shorthair, decided to take a trip outside last week. She'd darted out a few times since we moved, and apparently she did so without me noticing for once. She was last seen on Wednesday, June 1st, in a yard just next door; unfortunately one of the residents let their giant Schnauzers out, who chased my cat out of their yard in the direction away from my own.
I've handed out and placed in neighborhood mailboxes some three dozen flyers, contacted animal control, cat rescue, local vets, walked the block or greater neighborhood at dawn or dusk a few times, put out food, treats, tuna, my worn clothes. No sign of her so far. I'm holding out hope however.
Ellie is the first pet who was ever 100% mine; I saved her from being euthanized due to being too young/too small to care for in a shelter at the age of ~3 weeks or so, after my good friend (and recent Dad! congrats again!) Aldwin Maloto rescued her on a hot day, abandoned in the parking lot outside his aparmtent.
She's my #1 buddy and has never shown as much pleasure and comfort as the times she's curled up in my arms, on my chest -- not a people cat. I've had her a year and a half or two longer than my other cat, Dagwood, and I've had her quite a bit longer than my dog, Nick. She's been with me through six moves; three apartments, three houses, three cities, two states. She's been with me in some of my near-worst times, and some of my best times.
She's a bit of a scaredy cat, not particularly amicable toward people she doesn't know. She's probably hiding under someone's deck or in someone's shed right now. I really hope she hasn't been hit by a car or had something else violent happen to her ... and I fear that if she hasn't been hurt, that she'd never be comfortable and happy in another home. Maybe that's partially ego ... I don't know, but in the end, I just want her home again, but if that can't be, I just hope she's safe and happy.
Welcome to a blog about nothing more than a bit of code, a little tech, occasional ranting, a little raving.
Tuesday, June 7
Wednesday, May 4
Single-threaded developers in a parallel world
I screened a candidate yesterday with a background in web dev. ASP.NET, MVC, basic webservicess experience. When I asked him if he had ever used .NET's new Parallel object, or any of the more conventional multithreading facilities, his reply was, "No, I've never done multithreading, I've only done web development."
Once upon a time, I thought multithreading was pointless in webdev myself ... but that had to be 6-7+ years ago now at the least. I came up in the software world through "basic web design" back in '95-'96, n-tier web & database work starting in '98, then started adding getting into service-heavy stuff some five years ago now. This gentleman got his start some 16 years ago writing assembly, and at some point working in the embedded world. If anything, I'd think his perspective on efficient utilization of CPU resources would be even sharper than mine.
Any kind of iterative/enumerative operation can benefit from multithreading. Any kind of process that does not require synchronicity from the client/viewer/browser side of things can be done in an asynchronous fashion on a throwaway thread, giving the end user a perception of greater performance/responsiveness.
I found it a bit shocking that in 2011, someone with over a decade and a half of experience in the software world could, or would, be so dismissive of multithreading, even if doing "only" web development type work.
In .NET, it's so easy! The Asynchronous Programming Model has been around since .NET 1.1 and the async delegate and BeginInvoke/EndInvoke methods. The BackgroundWorker dispatch model has been available since .NET 2.0. Now in .NET 4.0 we have the Task Parallel Library (TPL) which allows simple-to-write inline asynchronous task execution and similarly easy parallel for/foreach operations against enumerables, as well as PLINQ which gives us parallel execution of LINQ queries.
Once upon a time, I thought multithreading was pointless in webdev myself ... but that had to be 6-7+ years ago now at the least. I came up in the software world through "basic web design" back in '95-'96, n-tier web & database work starting in '98, then started adding getting into service-heavy stuff some five years ago now. This gentleman got his start some 16 years ago writing assembly, and at some point working in the embedded world. If anything, I'd think his perspective on efficient utilization of CPU resources would be even sharper than mine.
Any kind of iterative/enumerative operation can benefit from multithreading. Any kind of process that does not require synchronicity from the client/viewer/browser side of things can be done in an asynchronous fashion on a throwaway thread, giving the end user a perception of greater performance/responsiveness.
I found it a bit shocking that in 2011, someone with over a decade and a half of experience in the software world could, or would, be so dismissive of multithreading, even if doing "only" web development type work.
In .NET, it's so easy! The Asynchronous Programming Model has been around since .NET 1.1 and the async delegate and BeginInvoke/EndInvoke methods. The BackgroundWorker dispatch model has been available since .NET 2.0. Now in .NET 4.0 we have the Task Parallel Library (TPL) which allows simple-to-write inline asynchronous task execution and similarly easy parallel for/foreach operations against enumerables, as well as PLINQ which gives us parallel execution of LINQ queries.
Tuesday, May 3
Missed opportunity
On the drive home from work today, a car cutting the perpendicular light a bit close ends up stalling out just as they got through the intersection. I'm in one of two left turn lanes, and my first thought is, "Man, I'm two minutes from home, are you serious?" -- assuming that drivers in the other lane, the one blocked by the stalled car, would be cutting people off in my lane.
So, intent on driving through the mess and getting home, I was focused on not bumping cars from the other lane. However, there was no jostling -- the first person in that lane waited for our lane to pass, then carefully passed the stalled car and immediately pulled off into a parking lot entry, stopping near the road, not in a spot. I'm assuming they stopped to help the person push their car.
If I'd had my eyes open, I could have pulled over there too, and helped out. But no, my first, and almost only, thoughts were of myself. Secondarily it occurred to me, "Man, that has gotta SUCK to be that driver!" But my first thoughts, my predominant thoughts, were selfish ones only.
As soon as I noticed the driver pulling over to help, I regretted not doing so myself. If I'd been more concerned about the other person's situation, rather than getting my own butt the last two minutes home, I, too, probably could have pulled over.
I regret this missed opportunity.
So, intent on driving through the mess and getting home, I was focused on not bumping cars from the other lane. However, there was no jostling -- the first person in that lane waited for our lane to pass, then carefully passed the stalled car and immediately pulled off into a parking lot entry, stopping near the road, not in a spot. I'm assuming they stopped to help the person push their car.
If I'd had my eyes open, I could have pulled over there too, and helped out. But no, my first, and almost only, thoughts were of myself. Secondarily it occurred to me, "Man, that has gotta SUCK to be that driver!" But my first thoughts, my predominant thoughts, were selfish ones only.
As soon as I noticed the driver pulling over to help, I regretted not doing so myself. If I'd been more concerned about the other person's situation, rather than getting my own butt the last two minutes home, I, too, probably could have pulled over.
I regret this missed opportunity.
Monday, April 4
Review: Verizon Android 3G Mobile Hotspot
Due to some unforeseen travel complications, I had to reschedule my Comcast install. As such, I'm relying on my HTC Droid Incredible and the Verizon 3G Mobile Hotspot feature for a few days.
Point one: DHCP & Verizon-assigned DNS is horrendous -- they make the feature unusable. Use a static IP address and Google or OpenDNS or other known reliable third-party DNS servers. Once I switched over to this configuration, connectivity has been flawless -- zero interruptions.
Point two: Still can't use voice + data at the same time. If you receive an incoming call while using the Mobile Hotspot feature, you will lose data connectivity for the duration of the call, just like using the plain old handset.
Point three: While it is better than some hotel WiFi I've dealt with, this feature does not appear to be a speed demon. With 3/4 bars, from a Chicago suburb, I performed a Speakeasy speedtest against Chicago-based target servers with the following results:
Conclusion: while having some connectivity on my laptop is certainly better than no connectivity, or smartphone-only, I absolutely cannot see multiple users using this as a hotspot simultaneously. USB dongles and ad hoc networks, or MyFi type devices, in my experience, provide much better performance, if you, or your boss, can pony up the cash for them -- plus you are not then forced to choose between voice or data.
Wednesday, March 23
Interesting: (Goldstein) Subaru vs. (Cortese) Mitsubishi
While I've always known Mitsubishi was not an owner-focused company, I had a still somewhat startling experience this week at a 5K service for my Subaru Legacy before I drive to Chicago next week.
When trying to service or buy parts for my Mitsubishi Eclipse around 2000-2004, in Rochester, when I was doing a lot of work on that car, it was always a huge pain in the ass -- you could only get parts through the dealer, markup was outrageous, labor was outrageous, hours were never estimated long enough, everything always broke or was about to break or wear out, and needed to be replaced.
Forward to Albany, 2011. I had a new set of tires put on my Subaru by the guys down the road I've been going to for years: LaBarge's. They noted I might need new rear brake pads sometime soon, but weren't trying to sell me anything -- they've been great for all three vehicles I've taken them. I'd heard what might have been some scraping while braking in the Subaru, so I was concerned.
I took the Subaru over to Goldstein for its 5K service, paid for as part of a prepaid service package when I bought the car back in October. I mentioned the pads to the gentleman at the desk; part of the 5K service is to check them anyway, but I noted it to be sure, given the amount of driving I have ahead of me. The guy looks at me quizzically, saying, "Shouldn't be the case, but we'll certainly take a look." (I picked the car up with 23k or 24k miles; I've only put 2500 or so on it, no idea if the pads were done by Goldstein before I bought it, perhaps that was the case.)
The promised hour later (despite the crowd) I get the car back, guy tells me I'm all set. No pads needed. No other service needed. No hard sell, no soft sell -- no sell, period. It was refreshing.
Thank you Subaru, and thank you Goldstein Subaru.
Labels:
automotive,
car service,
cars,
endorsement,
hei,
mitsubishi,
review,
subaru,
thanks
Friday, March 18
Moving - not free, not cheap, but ... !
In the process of packing up a 2BR apartment for an out-of-state move, I've been shocked by some of the price estimates I've received to move the majority of my possessions.
I got rid of my garage, I have no basement, no storage locker, just a ~1500sqft 2BR apartment, three pets, me. PODS wanted something like $2800; full-service mover numbers along the lines of Allied or United were $4000 and up. PODS offered a too-small and a too-large container option for out-of-state moves -- not a lot of granularity, which added to the cost. As did the forced storage fee. I suspect their heavy marketing adds to the cost there too.
A good friend in Chicago offered to drive a Penske truck out for me, but the apartment complex I'm moving out of doesn't prorate (though they screwed up the lease and I might actually have leverage as far as that goes, but not worth the hassle) and the 31st is a Thursday, which, with two cats and a dog that make staying in a hotel difficult if not impossible, makes getting packed and moved out without incurring another month's rent a bit complicated. Cost would have been $350+ airfare, $1200 truck, fuel/tolls for truck, for about $1800 total.
Though I've seen ABF trucks before, I'd never heard of UPack until my old Meridian colleague from Rochester Darren Swartzendruber and SmAlbany acquaintance Angelos Tzelepis educated me via Twitter on the topic. Two "ReloCube" container gives me what seems to be the appropriate amount of space to pack a washer/dryer, queen-size bed, full-size futon, a few desks, tables, chairs, kitchen appliances & dishes, pet stuff, books, a few electronics and computer items. Total cost? About $1290, with a $50 discount via the "TWEET" code that ABF provided after observing me talking with Darren and Angelos on Twitter. If I end up needing storage, (I still don't have a house to move to!) it's an option with ABF, unlike PODS, where it seemed to be mandatory.
Thanks again Darren & Angelos for the heads up!
Tuesday, March 15
SaaSGrid frontrunner for CloudCamp Cloudy Awards 2011
The CloudCamp Cloudy Awards 2011 awards are today - Help keep SaaSGrid at #1 with your vote! SaaSGrid
Monday, March 7
Certified!
Though I've long been certifiable, I'm finally certified! Took, and passed on the first try, Microsoft's 70-513 today, making me an MCTS in WCF/service applications in .NET 4.0.
My feelings on certs have varied over the years, but I've come to the conclusions that 1) it probably doesn't hurt to have them, and 2) if nothing else, they serve as motivation to polish certain areas of my skillset.
Though I've presented on WCF three times, I haven't used WCF anywhere near as heavily as I've wanted to the past 4-5 years; of course, the new opportunity with Redbox should change that for me :) Buried myself in studying, and a relevant project (queue-based, discoverable PubSub) that also has benefits for work (Apprenda) the past ~4 weeks or so, with a very happy outcome.
Labels:
.NET,
70-513,
certification,
microsoft,
msmq,
wcf,
ws-discovery
Sunday, March 6
Movin' to Chicago!
It has been a nearly-indescribably busy few months. A lot of exciting stuff going on at Apprenda with SaaSGrid; barcamp Albany 2011 at HVCC; and now, I am in the process of moving to Chicago for a WCF role with Redbox.
I have most definitely enjoyed working with the team at Apprenda -- to a person, they're the hardest working people in tech. Unfortunately the Client Services role I was in turned out to be waaaay more help desk type work than initially expected, and anyone who knows me, knows I'm not a help desk type guy. Even the desired consulting/implementation/architectural type work I was actually doing was, unfortunately, often ignored by clients and dev teams who had other priorities, like budgets and deadlines. ;)
A longtime friend of mine from Rochester has been living in Chicago about four years now himself, and had this Redbox opportunity come across his desk; it was something he thought I'd be a great fit for, and taking a look, I had to agree. After a phone interview week before last with two of the team members, Redbox made an offer. I will be joining the fairly new Platform Services team: 100% WCF, and NO, I repeat NO, GUI work! Platform Services supports the entire enterprise, and I understand we will be playing a large part in the upcoming streaming and digital distribution initiative that Redbox has been talking about for some time.
Yes, I recognize that Redbox is something of an underdog, and will have to come from behind in establishing a streaming offering that can compete with Netflix. I'm happy to be a part of that, and excited to see what challenges lay ahead. I think it's an exciting space to be in, and will enjoy working for a talked-about consumer brand.
I believe Apprenda is on the right track to a successful exit, and I wish them luck -- though they hardly need it, they're the kind of team to make their own luck. Thanks for a great year guys!
Subscribe to:
Posts (Atom)