|
title: Put the knife down and take a green herb, dude. |
descrip: One feller's views on the state of everyday computer science & its application (and now, OTHER STUFF) who isn't rich enough to shell out for www.myfreakinfirst-andlast-name.com Using 89% of the same design the blog had in 2001. |
|
FOR ENTERTAINMENT PURPOSES ONLY!!!
Back-up your data and, when you bike, always wear white. As an Amazon Associate, I earn from qualifying purchases. Affiliate links in green. |
|
|
x
MarkUpDown is the best Markdown editor for professionals on Windows 10. It includes two-pane live preview, in-app uploads to imgur for image hosting, and MultiMarkdown table support. Features you won't find anywhere else include...
You've wasted more than $15 of your time looking for a great Markdown editor. Stop looking. MarkUpDown is the app you're looking for. Learn more or head over to the 'Store now! |
|
| Wednesday, May 07, 2025 | |
|
Coverage reports in C# with Cobertura In the last contract I completed, we were building WebAPI microservices in C#, and part of our build process was to run all of our XUnit (and, depending on who originally wrote the microservice, maybe NUnit) tests and use SonarCloud to produce a pretty amazingly specific coverage report that highlighted every source file's test status, line-by-line. I've got a personal project in C#, have been spending time recently writing tests for it, and wondered if I could pull off the same level of coverage testing. Turns out I can! Exactly the same! Install by adding a ref to the coverlet collector to your testing proj:
Then run the test with this:
And sure enough, there's a new folder with every run in my Now the XML isn't very interesting.
You have to turn that into a more interesting report. This Stackoverflow answer explains how:
From the README: Install:
Run:
which, in my case, if I'm already in the same folder as the
... which, because we said so in the options, creates a folder named And then that report looks incredible: I have no idea why I redacted so much of that. Also note this is running against a very early stage piece of code. This coverage is obviously horrendous. But the coverage report isn't! posted by Jalindrine at 5/07/2025 05:47:00 PM |
|
| Friday, November 10, 2023 | |
|
I've talked about how great it is to have a store in my pocket for 15 years. And I've often lamented how this -- the ubiquitous store -- seems to be the end game of the digital age. Remember when Windows tested advertisements in Windows Explorer? Well, here's Microsoft's user friendly (?) alternative that did get released: Begging you not to leave Edge for Chrome with Edge playing the part of a jilted lover. No, not joking. Edge even tells you (no, literally it does!) that it loves you to make you stay. Labels: advertising, edge, hats o' money, windows posted by ruffin at 11/10/2023 06:39:00 PM |
|
| Tuesday, July 12, 2022 | |
|
Have a ThinkPad E490s. It's nice. Upgraded the RAM immediately. Upgraded the SSD this past weekend from 256 gigs to 1 TB. Bad news after restoring my laptop's image: There was this weird recovery partition sitting between my old files and my free space and Disk Management wouldn't let me remove it. I was stuck, it appeared, with a D: drive, which, in my limited experience, is never a good thing to have on the same physical drive as C:. It sounds like it shouldn't be bad news, and might even be a good way to separate concerns, but I've never caught myself thinking, "Gosh, I'm glad I did that," and have, on several occasions, though, "WHY IS IT EASIER IF I KEEP EVERYTHING ON THE C:\ DRIVE? WHY DOES THAT STILL MATTER IN THE 21st CENTURY?!!?1!/!!!?" Anyhow, cut to the chase: You can delete the Recovery drive from your disk, and do it without fear if you have an imaged backup and a USB recovery/startup drive already in your possession like I did before removing the old drive. TL;DR -- diskpart, list disk, select disk, list partition, select partition n, delete partition override. You can now expand C: into that extra space. posted by ruffin at 7/12/2022 04:39:00 PM |
|
| Monday, March 28, 2022 | |
|
From pcgamer.com on the ad in Windows Explorer:
You don't need to read more to know the key phrase here is "at this point". I've complained a bit that the store is taking over Windows and iOS, heck, even Firefox: From techcrunch.com late last year:
Windows shows me advertisements for Edge, and Edge tries to tell me that there are better deals on what I'm trying to buy on Amazon. It's a slippery slope. Anyone who thinks that this ad from Windows Explorer was a "mistake" is fooling themselves. But in the same vein as my, "Someday, we'll be more worried when everyone can't see our location all the time" argument, it's not like ads are inherently evil. It's just that the ones that fill the internet now stink out loud. That is, if you sold me something I wanted with amazing accuracy and kept the info about me on my box, I'd probably be impressed. There are useful ways to present ads. Asking if you want to autowrite your way to success is not one of them. Labels: advertising, hats o' money, windows posted by ruffin at 3/28/2022 08:00:00 PM |
|
| Saturday, March 06, 2021 | |
|
You're doing this at your own risk. If you think you might want to vet each step, you should. Worked for me. Your mileage may vary.
There are also Linux and macOS versions of exiftool Labels: command-line, images, noteToSelf, windows posted by ruffin at 3/06/2021 01:03:00 PM |
|
| Wednesday, April 15, 2020 | |
|
From microsoft.com:
Just hid the April update that's apparently causing trouble, but then couldn't find much confirmation of that and unhid it. Still, interesting to learn that that utility is there. Labels: windows posted by ruffin at 4/15/2020 08:06:00 PM |
|
| Sunday, January 05, 2020 | |
|
How had I never learned this? That's borderline embarrassing. I've even used tree /a /f > out.txt and then searched that text file. Major Facepalm. Labels: cmd, fail, noteToSelf, windows posted by ruffin at 1/05/2020 09:46:00 AM |
|
| Tuesday, January 31, 2017 | |
|
Something tells me this wasn't an official use case.
I guess I'm missing the real story here -- somebody thought to ensure "negative" time values are reported with the word "ago" appended to them. posted by ruffin at 1/31/2017 10:33:00 PM |
|
| Saturday, January 28, 2017 | |
|
If there's one often-overlooked feature in Windows that I really enjoy using, it's the "Cascade all windows" feature for the taskbar. I've been told -- unprovoked, so you know it's bad -- that I tend to have a lot of windows open when I'm working. It's true. I do. And when it's time to clean them all up, it's nice not to have to declare "windows management bankruptcy" and close everything I have open in an app before closing it out. To dodge this, you can hold down shift as you right-click a taskbar icon, and select the option from this menu:
Well, often you can do this and quickly go through whatever the app has open. What Chrome does is less than particularly helpful. It's hard to see there, but you can't read any window titles other than the very first one. You can click the image to make it full-sized. What's displayed sort of gives you an idea of how much you're going to have to sift though, but it's otherwise not insanely helpful. Here it is, up close.
I can tell my order has shipped in the front window, and how many tabs I have open in the other five, but that's it. Done. Look at what Edge does.
It's a little hard to see the details in the picture, but you can get a feeling of how absolutely beautiful (and by "beautiful", like any good engineer, I mean "practical" and "useful") that is. I can see every window, every tab, every title. Now I can quickly hit the X at the top right to close any window I'm done using & that needs to go away. Here's what Edge shows when "cascaded", zoomed in.
Being a good residentEdge gets Windows. You might say you're not surprised, but what is surprising is how badly Chrome flubs it. I mean, I understand the, "They even use Material Design on iOS, man!" argument, but I'm not buying that doing so requires that you be a bad Windows resident. Edge looks distinctly different from Internet Explorer, for instance. You've got plenty of leeway before you lose your design language, so to speak. And even though Apple, for instance, completely ignored all the good Windows resident requests with iTunes and WinSafari, two wrongs don't make a right. In short, it's not that hard to push the titles up into all of that dead white space in Chrome.
Why not use that for displaying real information, even if there wasn't the option to cascade windows? And since there is, well, let's just say that it's a horribly efficient, beautiful thing when the title bar/browser tabs are done right. posted by ruffin at 1/28/2017 01:51:00 PM |
|
| Tuesday, December 06, 2016 | |
|
From microsoft.com:
I don't know. That sounds like too much to me. And "unintentionally"? No, that's completely intentional. It's Windows' intention to send back everything that's in your RAM, and that could be gigs of information, couldn't it? And boy, a little pushy on what's their "recommended" setting, even though there's very little in there that explains why it should be mine. To, um, "fix" in Windows 10, hit the Windows key, type in "feedback", and then select the "Feedback privacy settings" option.
Then select "Basic" in the "Diagnostic and usage data" section.
I don't think there's an option for less info than "Basic". I also don't remember being asked this when I set up this box, and I'm pretty sure I did the "custom"/manual setup. /shrug posted by ruffin at 12/06/2016 12:08:00 PM |
|
| Tuesday, November 01, 2016 | |
|
I like John Gruber a lot, but his reactions to the new MacBook Pro have been wildly off the mark. When Tim says "P-C" you say, "Now also inclu-udes MacBooks"!
No, Gruber's just plain wrong. I thought I remembered Cook using "PC" to mean Mac and WinPC, and, after a little Googling, found I was right:
Here it is in context (this is a transcript of Cook talking to Goldman Sachs):
Sorry, man. Tim Cook uses "PC" to mean "anyone's PC". I know Jobs didn't. Cook always has. Used to sound incongruous when he did it, but now that Windows is sort of a lesser beast, it makes some sense to stop with the Mac/PC dichotomy. Macs sell like mad [in the limited market which is Cook's PC]. Macs & other PCs makers are equals at worst. Calling them all PC manufacturers allows Apple to be one of the best of the breed. Slow your horses, DFAnyhow, just plain wrong on this one. What worries me is that we're skirting fanboy territory in Daring Fireball recently. Gruber is usually pretty measured in his comments about Apple. Don't get me wrong; his aesthetic so closely parallels Apple's that you do have to wonder how much is "his" and how much has been internalized from watching Apple so closely all these years. But wherever the aesthetic comes from (and I think it's predominantly his own), I think John does a great job letting Apple know when they've missed their own mark, so to speak. That's what keeps you from becoming a fanboy. But here, well, there's a segment of traditional Mac users that weren't served by the light at the end of the MacBook Pro upgrade tunnel. After waiting years to buy a new Mac, we get overpriced, underpowered, underspecced boxes. I tried to explain why we're disappointed, using expectations set by Steve Jobs. These aren't the trucks we were looking for. And it's not because the only way to deliver was to make ugly boxes. That is, "nice" vs "well spec'd" isn't a zero sum game, which is nearly what Gruber argued yesterday when stumbling over a comparison of MBPs to System76 Linux laptops:
Perfect rebuttal? Look to this post, quoted on Michael Tsai's excellent roundup, New MacBook Pros and the State of the Mac:*
You can shoot down System76 for making chunky Linux boxes. You can't say this about Razer. Small, "nice", fast, and fairly well priced. Maybe my Lenovo truck is ugly (it largely is), but the Razer isn't. And, as David Owens rightly says, the MBP "is not a pro-level computer". The MBP isn't a "Pro" computer to the point that Schiller himself during the laptop roll-out suggested that the "professional" but entry level MBP was a replacement for the consumer MacBook Air. As I emailed Gruber this morning, "When you slot a MBP into the consumer half of the product grid, we've got a problem [with meeting past expectations, at least]." (Note: I just added "meeting".) * Speaking of Tsai's roundup, it also included my earlier post -- wow. Lots of clicks from Tsai, but then another HUGE bump once Daring Fireball linked to him. So 4x Tsai clicks just from being grand-fireballed! Labels: apple, cook, gruber, hardware, linux, macbook pro, windows posted by ruffin at 11/01/2016 04:29:00 PM |
|
| Monday, October 24, 2016 | |
|
I'm close to releasing my second application to the Windows App Store, and have gotten just good enough at dealing with icons -- not a rocket scientist-level task by any stretch -- and thought I'd share. Buy an iconFirst, you need a square png (or other common format) of your icon that's at least 620x620 pixels. You can get a nice rounded image, but for the Windows Store, at least, a full square is better. In my experience, it's not too difficult to trade a couple weeks of waiting (in case you get a bad contractor) and $5-$15 to get a servicable icon from fiverr.com. I've used folks from Pakistan each time, strangely enough, and gotten very good results three times, most recently with foxsquare. You do need to be respectful to some degree, as their contract says, "We Do NOT Take Order related to Pork, Nudity, Alcohol & Gambling." So far, so good for me. Here's my latest, a design for a podcast feed creator. I wish the angles on the orange circles were perfectly symmetrical, and that the little "i" icon didn't reach the bottom of the image, but all things considered, this is a heck of a lot better than I could've done in several hours' work. It's a steal at $15 with .psd.
package.appmanifestTo insert the icon into your UWP app, open up your package.appmanifest file from Solution Explorer, and hit the Visual Assets tab.
Now you have a pretty simple interface to upload icon imagery. I recommend clicking on each of the lines from "Square 71x71 Logo" on down. Resizing your originalFor each one, you'll want to upload resized versions of your original icon. "But how do I get those resized images quickly?" you ask? That's easy if you download IrfanView, the handiest image viewer I've ever used. Can't recall how many years I've used IrfanView now, and I was impressed to learn that it has extensive command line support. First name the original square.png. Then run a bat file that resizes everything. Here's the bat file I'm running, though you may have to change to the path where you have IrfanView installed:
Boom. Done.
Now go into the appmanifest UI and click on every largest size available for each asset line, then add your image. NOTE: Some of these already have placeholder X images in your project. OVERWRITE THEM. You can overwrite in addition to the ones you're uploading to ensure you have decently high quality images.
Rectangle splash and wide logosThis will leave you with just two assets unfilled, both rectangular. One is the "Wide 310x150" and the other the "Splash Screen" logo. I kinda cop out here. I could probably get fiverr to make me some, but instead I open Ms. Paint. The size we need is 1240x600. I tell Paint to create a new image, then I hit "resize" (Ctrl-W, strangely enough), and get it to 1240x600.
Make sure "Maintain aspect ratio" isn't checked. Then I use the paint bucket to fill that all black. Finally, I paste in the 600x600 image IrfanView created and slowly move the middle pixel over until it's at 620 pixels into the image in Paint. Very high tech.
Save it and put into both of the assets you had left. Voila! The end. Cheap and quick. Labels: fiverr, howto, images, paint, uwp, windows, windows store posted by ruffin at 10/24/2016 12:12:00 PM |
|
| Saturday, September 03, 2016 | |
|
Tried to update an app from the Windows App store.
So that was useful. posted by ruffin at 9/03/2016 09:29:00 PM |
|
| Tuesday, August 23, 2016 | |
|
Hello, kudos to Windows. Groove Player is playing FLAC format out of the box, as advertised, apparently. I'm not an audio snob, but I sure do enjoy downloading free and legal shows from etree. They're usually in FLAC format now (no more shn, I don't think), and not having to convert them is wonderful. And it's nice not having to load a new codec to get things to play like I did on macOS for so long (thank you for years of use, Perian). I've gotten to the point that I enjoy using the Windows Groove player okay. It's so much more straightforward than iTunes now, and its Metro style/UWP GUI is a huge improvement over Windows Media Player. Lighter-weight, less resource hogging software is good, though I'm afraid it's going to keep creeping up as they try to sell more and more stuff (lots of streaming stuff in "Your Groove" now). FLAC support just adds to the enjoyment. posted by ruffin at 8/23/2016 06:01:00 PM |
|
| Friday, January 15, 2016 | |
|
Nice of Windows to ask me, in the advance settings during my Windows 10 upgrade on my ThinkPad, what I'd like to use as my default browser, and then decide that I'm wrong. Edge is the default in each of my logins, even though I selected Chrome. Not a huge deal, and easy to fix, but it does make you wonder what other choices Windows 10 decided to ignore. In my best interest, I'm sure. posted by ruffin at 1/15/2016 09:11:00 AM |
|
| Monday, January 04, 2016 | |
|
The new Snap in Windows 10 is nice. I'd been using WinSplit Revolution for years, through Windows 8 even in spite of the fact that it hasn't been supported for years itself. Its old URL seems to have a squatter now, pushing you to buy a new windows manager that's pay to play. Snap isn't a horrible replacement. It does allow me to throw things to secondary monitors, etc, and position windows in at least seven different positions -- four corners, half screens split vertically, and default window. That plus Alt-Space, X means I've got most of what I miss. What I hate, however, is the Snap Assist after you make a window fill half your screen, where Windows 10 decides you also have to pick the window that you want to display on the other half of your screen. This page says Microsoft said the following... When arranging two windows side-by-side, we noticed in practice that this scenario frequently involved snapping the first window and then spending time wading through other windows on screen to find the second one to drag and snap. This insight lead us to ask: instead of making you hunt for the second window to snap, why not present a list of recently used windows up front? This is the fundamental idea behind Snap Assist in Windows 10.
No, no, heavens no. What a pain. I was starting to commit Windows-DirectionKey, Esc to memory, so it was high time to google a fix.
Luckily the fix is easy. Window, "Settings", Multitasking, and...
Now we're cooking.
It probably has something to do with the new i7-4790K and SSD, but wow, after a good, solid day working on it today, I really like Windows 10 so far.
Labels: noteToSelf, win10, windows posted by ruffin at 1/04/2016 09:00:00 PM |
|
| Wednesday, November 04, 2015 | |
|
From here:
Wow. Yes please. I used to use the right-click shortcut to cascade all the windows, but didn't realize you could do it one application at a time, I don't think. I often leave open too many browser windows, and it's nice to bring them all to the front where they're easily eyeballed before shutting them out. Labels: noteToSelf, windows posted by ruffin at 11/04/2015 10:46:00 AM |
|
| Monday, August 17, 2015 | |
|
Update: I think it's partially a PEBKAC, partially a horrible UI issue. Win 10 is under optional updates, and you can simply turn it off. Let's see if this works... So I noticed that security updates were piling up in Windows Update, and tried to see what was going on. Looks like Windows Update is forcing me to install Windows 10, and won't let me get my security updates until those two gigs are downloaded. And I'm not sure that it's going to let me do it then, either, as my latest update history says that it tried to install Win10 and failed. Here are the updates I want: Notice NONE of those related to Windows 10. I select them all and get this screen: If I cancel that download, I get this: I'm unable to install the Windows 8.1 security updates because of Windows 10. That's not cool. I'm downloading the whole thing now, and if it tries to install Windows 10 when it's done, well, I'm not going to be horribly happy. Edit: Doesn't look good. I stopped it, but I'm security updateless again. posted by ruffin at 8/17/2015 08:28:00 AM |
|
| Tuesday, June 23, 2015 | |
|
Got this message at my outlook account Friday, and just noticed it today: It's time to upgrade to an even better Skype experience on your Windows 8 device. Your current version of Skype is being replaced by an app called Skype for Windows desktop. It has more features to help you stay in touch like screen sharing and group video calling. Also, your chat conversations (from the last 30 days) and all your contacts will appear as normal after upgrading. Ouch. I thought Win10 was going to be more "Metro" friendly, somehow maintaining backwards compatibility with apps written fro Win8, but this is making me wonder if the migration path goes back through the desktop. In other fun, whoever came up with the mbox format wasn't on top of their game. It's hard to imagine in the days where SGML and XML are passรฉ that any non-clearly delimited storage format could gain so much practical acceptance. Wow. posted by ruffin at 6/23/2015 08:56:00 AM |
|
| Monday, May 11, 2015 | |
|
I inherited some code as part of a Rube Goldbergian file-to-db process, and it has a step that uses JavaScript on Windows to parse csv files. Instructions said to use WScript to run it [sic]. Boy, that was fun. When I decided to push all the debugging into a central function that also output the info to Quick SO answer to the rescue. Quick sum: Run the script with Side note: You can't use Labels: javascript, noteToSelf, windows posted by ruffin at 5/11/2015 10:52:00 AM |
|
|
| |
|
|
All posts can be accessed here: Just the last year o' posts: |
|||||||||||||||||||||
|
||||||||||||||||||||||
|
|
|
|