Confession: big childhood crush was Martha Davis of The Motels.... Following up on that, I made a Guilty Pleasures playlist on Spotify (The Motels aren't on it. No guilt in loving me some Motels). At first I just left it public, because I was like, I don't care what people think of my Guilty Pleasures, but then it was even too embarrassing for me, so I hid it....I've mostly stayed away from the social media, but sometimes I just habitually browse to FB. I suppose this is why I had to give it up for a while in the first place.... I don't get why the Rockies want me to pay something like $30-40 / game for at least 20 games just to get Opening Day tickets. I know that a third of the way through the season I will be able to get those same tickets for about $10 apiece because no one is going to wan to go watch this team. It irritates me that they want you to pay all this money and then you go to the park at mid-season and they've completely closed off the third level except for right behind the plate....Northwestern, still undefeated in NCAA tournament play....What is CNN going to air when they finally find that plane?.... Where we are staying in Paris in June: https://www.airbnb.com/rooms/497695. This is going to be awesome!..... Also have tickets again for VLV. It's going to be a short trip this time, and overshadowed by the Paris trip, but I am still REALLY looking forward to it. Need a bit of a break from the routine.
Google Analytics
Thursday, March 20, 2014
Wednesday, March 12, 2014
WiX Questions
If you've posted some question about WiX to me on here, I haven't forgotten about you. I just haven't made it a priority to try and find the answer for you. :) I post here because I am discovering how to use some of these things just as many of you are, and admittedly there isn't a wealth of information out there.
Seriously, though, I appreciate the questions and want to take some time, even out of my own curiosity, to find the answers. Between work and life and trying to get ready for the fantasy baseball season, and flossing my gerbil's teeth, however, there just hasn't been much time. If you've posted questions and subsequently found the answers out there in the Tubes somewhere, I'd appreciate if you could post your answer here. "Make this your action item." Thanks!
Seriously, though, I appreciate the questions and want to take some time, even out of my own curiosity, to find the answers. Between work and life and trying to get ready for the fantasy baseball season, and flossing my gerbil's teeth, however, there just hasn't been much time. If you've posted questions and subsequently found the answers out there in the Tubes somewhere, I'd appreciate if you could post your answer here. "Make this your action item." Thanks!
.Net Reactor and WiX
Okay, here's the situation: ("My parents went away on a week's vacation...") I need to obfuscate the code of a project I am working on using .Net Reactor. The project is in .Net (obviously) and we're using VS 2012 and WiX 3.7 to create the installer. Obfuscating code with .Net Reactor is relatively simple as well as powerful. In a side-by-side comparison with dotfuscator we found that Reactor did a better job particularly in control flow obfuscation than its more expensive counterpart. The issue before me is getting WiX to do this obfuscation before creating the installer.
Actually the project is broken up into several solutions, a client and several services that get packaged together. Obfuscating the initial project, the client, was relatively straightforward. First I created a .Net Reactor project specifying the protection options, settings, and files I wanted to obfuscate. I added that project file to my solution as a resource to copy into the output directory. The solution builds a number of projects including some shared libraries, so it was just easiest to copy the project into the output directory and run it from there. I edited the wixproj file (in VisualStudio you can right-click the project file and select 'Edit Project File') and overwrote the BeforeBuild target as such:
Actually the project is broken up into several solutions, a client and several services that get packaged together. Obfuscating the initial project, the client, was relatively straightforward. First I created a .Net Reactor project specifying the protection options, settings, and files I wanted to obfuscate. I added that project file to my solution as a resource to copy into the output directory. The solution builds a number of projects including some shared libraries, so it was just easiest to copy the project into the output directory and run it from there. I edited the wixproj file (in VisualStudio you can right-click the project file and select 'Edit Project File') and overwrote the BeforeBuild target as such:
The .Net Reactor command-line help here, http://www.eziriz.com/help/source/command_line.htm, is useful, though if you are using the project file as I am, most of the settings will come from it. I added the -q[uiet] flag to keep Reactor's notification window from popping up. I should note here that by default a Reactor project will have
For each of the services then I built a Reactor project and added multiple
Random thoughts since I'm withdrawing from posting random, meaningless FB status updates:
I feel awful for the families of those who were on the Malaysian Airlines flight, but c'mon, CNN. I don't need hourly updates on its last known radar blip.... I wasn't blown away by the ending of Breaking Bad like some said they were. Don't get me wrong, it was quality. The overall series, however, was amazing. Easily unseated The Sopranos as my favorite television show ever.... I took in the finale of True Detective last night too. The acting in that show, especially by McConaughey, was great. The writing and directing were equally on point. It was a haunting series.... Tom Waits' "Martha" is a devastating song. Replace "Martha" with any hope or dream you've ever had.... Jeff Buckley singing "Hallelujah" is pretty devastating too, but you already knew that.
I feel awful for the families of those who were on the Malaysian Airlines flight, but c'mon, CNN. I don't need hourly updates on its last known radar blip.... I wasn't blown away by the ending of Breaking Bad like some said they were. Don't get me wrong, it was quality. The overall series, however, was amazing. Easily unseated The Sopranos as my favorite television show ever.... I took in the finale of True Detective last night too. The acting in that show, especially by McConaughey, was great. The writing and directing were equally on point. It was a haunting series.... Tom Waits' "Martha" is a devastating song. Replace "Martha" with any hope or dream you've ever had.... Jeff Buckley singing "Hallelujah" is pretty devastating too, but you already knew that.
Wednesday, February 12, 2014
Empathy
In so much of what I've read from the Dalai Lama, he preaches time and time again that we must have empathy for our fellow humans. Empathy brings us closer to others, it leads to compassion, and, not to get all Buddhist on you but, helps to end suffering. In non-Buddhist terms, having empathy for other people makes us and them happier.
I need to be better about this in practice in so many areas in my life, but especially right now at work. I've certainly not hidden that I am irritated with my job and there are days I am flat-out angry. (Full disclosure, there have been more days recently when I've been able to put aside the irritants and focus on what I like about it, which is solving problems to help people vote.) When I get angry and irritated, however, I've been bad about putting my co-workers in the line of fire. Generally, it shows in passive-aggressive behavior by me, which I don't even realize I'm doing. There have been a handful of embarrassing moments when that aggressive behavior isn't so passive. Even a couple times where I was yelling full-voiced at a co-worker without even really realizing it.
My co-workers are definitely not the issue I have with work. I think that to a person the people I work with are all underpaid and underappreciated by "the powers that be" for what we do. We grouse about it, and sometimes I grouse louder than others, but it isn't like we are underpaid like our nation's teachers are underpaid. Maybe I just speak for myself, but I think it is the underappreciated part of the equation that is worse than the underpaid part.
With the people I work with both day-to-day and only occasionally what I've come to realize is that every one of us is trying our best. Okay, maybe we're not at our best every moment of every day because humans just can't be (except for Meryl Davis and Charlie White. I mean, am I right? They're like robots on the ice.). When I take a step back and acknowledge that everyone else around me is really working just the best they can as am I, how can I fault that? Programming voting machines and election software for U.S. elections is hard work. I mean, it's no putting a man on Mars hard or cracking Verizon wireless encryption so that the NSA can listen in on your phone calls hard, but it ain't easy, Sally. There are a lot of people that I work with that are very good at what they do and care about what they do, and I need to have more empathy for them and forget my own issues at times.
I was reminded of this tonight. At about 4:30 PM MST that call came in. You know the one: "I have a demonstration to the some of the largest counties in California tomorrow, and I can't get the software to work. Can I talk to a developer there?" Of course none of us really WANTED to take that call. I won't go into the specifics why other than to say it was 4:30PM already. However, I was in the same boat last month. I was supposed to do a demonstration to the State of Florida and the test project that I was given didn't work. One of my colleagues in Belgrade stepped up and worked, on Christmas (maybe the day after) I believe (since they celebrate Orthodox Christmas), to get me what I needed. I knew how stressed I was then, so volunteered to help with today's predicament.
Listen, I may have stepped up and volunteered, but I won't say that I did it cheerfully. There may have been some choice words thrown in. Putting myself in that guy's shoes though, I couldn't just walk away and say, Not my problem. When you have empathy for someone, that person's problems become your problems too. The good thing is that having two people to work on a problem is much better than one struggling through it themself. The issue turned out to be a series of relatively minor things, and we got things squared away. My colleague in California was grateful that he wasn't going to be tarred and feathered by the State of California, and I actually appreciated being able to re-familiarize myself with a couple parts of our system I hadn't used in a while.
I need to be better about this in practice in so many areas in my life, but especially right now at work. I've certainly not hidden that I am irritated with my job and there are days I am flat-out angry. (Full disclosure, there have been more days recently when I've been able to put aside the irritants and focus on what I like about it, which is solving problems to help people vote.) When I get angry and irritated, however, I've been bad about putting my co-workers in the line of fire. Generally, it shows in passive-aggressive behavior by me, which I don't even realize I'm doing. There have been a handful of embarrassing moments when that aggressive behavior isn't so passive. Even a couple times where I was yelling full-voiced at a co-worker without even really realizing it.
My co-workers are definitely not the issue I have with work. I think that to a person the people I work with are all underpaid and underappreciated by "the powers that be" for what we do. We grouse about it, and sometimes I grouse louder than others, but it isn't like we are underpaid like our nation's teachers are underpaid. Maybe I just speak for myself, but I think it is the underappreciated part of the equation that is worse than the underpaid part.
With the people I work with both day-to-day and only occasionally what I've come to realize is that every one of us is trying our best. Okay, maybe we're not at our best every moment of every day because humans just can't be (except for Meryl Davis and Charlie White. I mean, am I right? They're like robots on the ice.). When I take a step back and acknowledge that everyone else around me is really working just the best they can as am I, how can I fault that? Programming voting machines and election software for U.S. elections is hard work. I mean, it's no putting a man on Mars hard or cracking Verizon wireless encryption so that the NSA can listen in on your phone calls hard, but it ain't easy, Sally. There are a lot of people that I work with that are very good at what they do and care about what they do, and I need to have more empathy for them and forget my own issues at times.
I was reminded of this tonight. At about 4:30 PM MST that call came in. You know the one: "I have a demonstration to the some of the largest counties in California tomorrow, and I can't get the software to work. Can I talk to a developer there?" Of course none of us really WANTED to take that call. I won't go into the specifics why other than to say it was 4:30PM already. However, I was in the same boat last month. I was supposed to do a demonstration to the State of Florida and the test project that I was given didn't work. One of my colleagues in Belgrade stepped up and worked, on Christmas (maybe the day after) I believe (since they celebrate Orthodox Christmas), to get me what I needed. I knew how stressed I was then, so volunteered to help with today's predicament.
Listen, I may have stepped up and volunteered, but I won't say that I did it cheerfully. There may have been some choice words thrown in. Putting myself in that guy's shoes though, I couldn't just walk away and say, Not my problem. When you have empathy for someone, that person's problems become your problems too. The good thing is that having two people to work on a problem is much better than one struggling through it themself. The issue turned out to be a series of relatively minor things, and we got things squared away. My colleague in California was grateful that he wasn't going to be tarred and feathered by the State of California, and I actually appreciated being able to re-familiarize myself with a couple parts of our system I hadn't used in a while.
Tuesday, August 27, 2013
Fusion Log Viewer
Back to basics, indeed. The Fusion log viewer is an arrow that should be in the quiver of every Windows application developer. It wasn't in mine, however, until this morning. In our morning Scrum I complained that I was having trouble tracking down an issue with Infragistics Reporting. The report viewer was trying to load some libraries at runtime and was giving me the classic non-descript error:
"System.NullReferenceException: Object reference not set to an instance of an object."
The full error is:
"System.NullReferenceException: Object reference not set to an instance of an object."
The full error is:
Infragistics.Controls.Reports.ReportViewerException: An
unknown error occurred while processing the report. --->
System.NullReferenceException: Object reference not set to an instance of an
object.
at
Infragistics.Reports.Engine.ServiceModelMefDiscoverer.Initialize(IServiceModelManager
serviceModel)
at
Infragistics.Reports.Engine.ServiceModelBuilder.Setup(IServiceModelConfiguration
configuration)
at
Infragistics.Controls.Reports.ReportProcessorLocalAdapter..ctor(ReportSource
reportSource, Assembly reportAssembly, IEnumerable`1 externalDataSources)
at
Infragistics.Controls.Reports.RenderingEngineFactory.CreateLocalEngine(ReportSource
reportSource, Assembly reportAssembly, IEnumerable`1 externalDataSources)
at
Infragistics.Controls.Reports.ProcessingSessionStateMachine.CreateProcessor(IRenderingEngineFactory
renderingEngineFactory, IEnumerable`1 externalDataSources, Report
reportDefinition, Assembly reportAssembly)
--- End of inner exception stack trace ---
at
Infragistics.Controls.Reports.ProcessingSessionStateMachine.CreateProcessor(IRenderingEngineFactory
renderingEngineFactory, IEnumerable`1 externalDataSources, Report
reportDefinition, Assembly reportAssembly)
at
Infragistics.Controls.Reports.ViewerStateMachine.RenderHelper(RenderParameters
renderParameters, Report reportDefinition, Assembly reportAssembly)
We narrowed it down to an issue loading libraries, since the viewer was working on my machine where I had the Infragistics tools installed.
My colleague said, "No problem. We'll just look at it in the Fusion log and see what the issue is." I gave him a blank stare. "Find me in a bit, and I'll show you." Not to throw said colleague under a bus, but then he spent the next 90 minutes on the phone. Important stuff, but I have these nice reports that I want to show off to the team.
Then I found this blog from Scott Hanselman (who has saved me on a number of such occasions): http://www.hanselman.com/blog/BackToBasicsUsingFusionLogViewerToDebugObscureLoaderErrors.aspx. It is very simple to fire up and use, and I am kicking myself for the times that I had similar issues that took me hours if not days to track down.
After firing up the Fusion Log Viewer on a machine where I did not have Infragistics installed, clearing the logs, and then running the troubled application, I found that the app was trying to load up two libraries (InfragisticsWPF4.Reports.Controls.Charts.XamDataChart.v13.1.dll and InfragisticsWPF4.Reports.Controls.DataVisualization.v13.1.dll for those of you who may run into the same issue) that I had added the references to but had forgotten to include in the Wix installer. With the libraries added I can finally show off what has been almost 3 weeks of work on the reporting functionality of this application.
Tuesday, June 11, 2013
I've been having these Inception-like dreams where I dream within my dreams. About a week ago I "awoke" from a dream where I had mistaken the sounds of kids playing in my dreams for the real sounds of a group of teenagers breaking into our house. One came into our bedroom and rushed us as we sat up in bed. And that's when I woke with a start out of that dream.
Last night I had a dream in which I had two other dreams. In each of the two inner dreams there was an owl present, which I found to be rather remarkable. When I awoke I told Jen about each dream and how strange that both had a different type of owl. Why owls, I thought to myself. It wasn't until just now that I realized I couldn't have had a conversation with Jen about my dream owls. She was fast asleep when I left the house this morning. I dreamt the conversation.
How far will this progress? Can I nest three of them together? I'm scared to even think about that. Time does seem to go slower in the inner dreams. Will I be lost for days or months inside some dream? I need to get myself a token.
Last night I had a dream in which I had two other dreams. In each of the two inner dreams there was an owl present, which I found to be rather remarkable. When I awoke I told Jen about each dream and how strange that both had a different type of owl. Why owls, I thought to myself. It wasn't until just now that I realized I couldn't have had a conversation with Jen about my dream owls. She was fast asleep when I left the house this morning. I dreamt the conversation.
How far will this progress? Can I nest three of them together? I'm scared to even think about that. Time does seem to go slower in the inner dreams. Will I be lost for days or months inside some dream? I need to get myself a token.
Subscribe to:
Posts (Atom)