After moving the washer and dryer to the new house, I learned that the hot water spicket leaked water when you turned it on. 8 dollars and 30 minutes later, I had a working spicket.
I was setting up a Joomla! site for a client when I kept having an issue with the Administrator site. Every link in the administrator areas would redirect me to /index.php. I just about went crazy trying to find the answer.
It turns out that the $live_site variable in the configuration.php file had a value in it. I set this variable to be a blank string and everything started working as it should.
One of my tasks at work is to maintain a few VB.NET applications written before I started working here. I’ve had the opportunity to learn a lot about large websites using VB.NET.
I thought I’d take a few moments to point out some common refactoring that you can do to shorten your code when dealing with If statements and boolean assignments.
Let’s start with a line of code that appends some text to an existing string if certain conditions are true.
This is simple enough, but it’s a bit redundant. Let’s look at another way of expressing this.
This uses the &= operator which just tells VB to append whatever follows to the variable on the left. We use IIf to determine what value to set based on the state of the checkbox.
Another common situation is using the value of a variable to determine the state of a boolean property. Here is some code to illustrate the “old” way:
This has some redundant code in it that is begging to be refactored. Let’s take a look at how we can accomplish this same amount of logic in a single line of code:
This tells VB to set the Visible property to the boolean value of the result of the expression to the right of the first = sign. VB will then evaluate the expression Mid(C1, 40, 1) = “Y” to come up with either True or False, which it will then assign to the Visible property. So, if Mid(C1, 40, 1) = “Y”, then the Visible property will be set to True.
Instead of using “Flags” (Dim myFlag as String = “Y”), try using Boolean values instead. “Y” and “N” are strings and must be manually converted to a boolean when setting properties. I’ve never seen a control use a “Y” or “N” as a property setting. They use True and False.
If you need a flag with multiple values, create an Enumeration like so:
Then, just use it in your If statements:
Check out Microsoft’s documentation on Enumerations. They are very useful.
VB.NET brings with it so many improvements to the Visual Basic language of days-gone-by. It’s worth it to get out there and experiment a little. Try something new. Don’t settle on what you remember doing from your old VB 6 days.
I have been trying to get remote debugging working on one of our servers so we can share the development work on a WebAPI and I kept getting the following error message on my Visual Studio 2013 Attach to process dialog:
“Unable to attach to the process. The RPC Server is unavailable”
It turns out that all I had to do was add C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe to the Firewall allow list.
I knew it had to be something with the firewall, but I was trying to discover which ports the remote debugging RPC was using so I could open them. All I had to do was add the whole process and everything worked.
Now I can happily debug the code on my server.
I recently had the need to install a subdirectory on a site that had redirect rules setup in the root. However, the new site in the subdirectory did not work with the rules turned on.
It turns out that fixing this is incredibly easy. Just add a web.config to the subdirectory and add the following:
Just got an alert on my phone about a flood alert in my area. Our apartment is in a flood zone. I sure hope I can get home tonight!
I finally bought my own copy of the X-Wing miniatures game yesterday.
Laurie was kind enough to play with me last night. It turns out she really enjoyed the game so I’ll probably get to play more of it in the future.
There’s an active community of X-Wing players here in Savannah and an even bigger group in Statesboro, GA (about an hour away) near Georgia Southern college.
There are a few tournaments each year as well if I ever get good enough for competitive play. I’m still learning the full rules but so far I really enjoy the game.