Recover Deleted Files

I’m super careful with files on my computer. Careful almost to the point of obsession. After having a hard drive crash and losing a bunch of data 15+ years ago, I made sure it would never happen again. But recently I broke one of my own rules and ended up in a bit of a mess. The rule is: get your files off of SD cards as soon as possible.

There are bunch of good reasons for this but a few are:

  • SD cards are easy to lose
  • SD cards are easy to damage
  • SD cards are easily corrupted

None of those bit me. The problem that bit me was user error. I left files on the SD card for a couple weeks because I was too lazy to put the card in the computer and copy them over. The exact sequence of mistakes is probably boring to read, but the bottom line is that I thought all of the old photos on the card had already been transferred off but only about 80% of them had. There were a bunch of “first day of school” photos that I hadn’t transferred off right away and I didn’t notice that fact before deleting them.

As soon as it happened, I realized what I had done and my stomach twisted into a knot. I just lost files not because of a software/hardware problem but because I was an idiot.

I immediately ejected the SD card from my computer and slid the lock lever over to prevent any further stupidity. Next it was time to find something to recover the files. When a computer deletes a file, it doesn’t actually overwrite the file, it just removes the entry from the “card catalog” that points to the actual file locations. So if you can carefully scan the disk and you know what the binary header of your file looked like, you can still read the old data.

If you search around for “recover lost files” there are tons of programs available and I believe two things are generally true:

  1. They’re going to cost quite a bit of money because they know you’re panicked.
  2. It’s a great way for hackers to get you to install spyware/viruses. You’re in a hurry and you click away without really checking the validity of the site.

I ended up using PhotoRec which is free, open source, and hopefully safe. It’s not very user friendly, but that was fine with me.

The tool worked ok, but it didn’t find any files on my first scan. I had only saved .CR2 (Cannon Raw) files and the tool didn’t have a scanner for those files included out of the box. Thankfully they allow you to add your own file signatures, so I whipped open a hex editor, figured out what the header of a CR2 file looks like and added a new signature.

After that it quickly plowed through my SD card and found the “deleted” files. It didn’t get 100% of them, but because I took about 100 pictures of Elijah in ~4 different poses, I still had plenty of good photos to choose from. The day was saved.

But this is one of those lessons that I’ll never forget. When you walk in the door with new pictures on your SD card, immediately copy them to your computer and get them backed up to cloud storage. And whenever I buy my next camera body, I’ll probably be buying one that has built-in WiFi syncing available. I might even check out those WiFi SD cards to see if they’re worth it.

XFinity For Roku

Earlier this year, Comcast launched an app for Roku, but I only just got around to installing it. It’s still in beta so you won’t get a full feature set, but it’s still an interesting move for the company.

Previously, if you have Comcast service and you want to add another TV in your house, you had to pony up $10/month or more for another box that sits with that TV. Ouch. Now they are offering you alternatives to that extra monthly bill.

For quite a while they’ve allowed you to stream to a browser window or a phone app. The main limitation there is that you have to be on your home network for it to work, but this has still given me a way to have football on out in the shop. I just connect my laptop to the TV and I’m good to go.

The Roku app makes this even easier. You can pick up a basic Roku for ~$30-40 if you don’t have one already. The XFinity app is free and voila, now you’ve got live TV via the Roku without an extra monthly fee. If you have their Cloud DVR service then  you can access those shows through the Roku interface. (Note that I haven’t tested that since we don’t have the Cloud DVR service.) The only downer for me right now is that I only get standard definition on most of the channels. That doesn’t happen for everyone and it should change when the app is out of beta.

This feels like a direct response to the rise in popularity of non-traditional TV services like DirectTV Now, YouTube TV, Sling TV, Playstation Vue, etc. Compared to those services, Comcast is coming at it from the other side (moving from traditional cable to internet) but it’s good to see them making moves in that direction.

Fantasy Football – Week 4

Seahawks! Now THAT was a fun game to watch. I liked the up tempo pacing of their offense (even if it does screw up my 30-second skip button between plays). The downside is that it means that their defense might not get a huge rest on drives that are duds. That did turn out to be the case in the first half so I was worried that we’d see another second half defensive breakdown, but that obviously didn’t happen as the offense set a franchise record for most second half points. The injury to Chris Carson was a big blow though. He looked like their featured back for the first four games but now they have to continue the search. Hopefully Procise and Rawls can get healthy and get moving downfield.

Logan’s domination of our league continued this week as I failed to even make him nervous. Dad and Luke are tied for second place and the rest of us are lagging behind them. Tim is still searching for his first win. Could he do it against undefeated Logan?

The Yahoo draft day projections had Logan in 6th and Dad in 8th which is a great data point to show how ineffective those rankings really are. Of course MY power ranking formula is my more valuable and accurate. We have four weeks in the books so it produces some results now:

1. Logan
2. Luke
3. Austin
4. Ben

A couple important notes for our league:

  • Bye weeks start this week so make sure you have a full roster.
  • Remember that our reminder emails aren’t working anymore. If you want reminders, that feature is available from the Yahoo website and/or the phone app.

On to the weekly awards…

This Week This Season All-Time
Highest Team Score Logan had 147.25 Luke had 161.89 (Week 3) Tim 200.51 (2015)
Lowest Team Score Tim had 81.30 Dad had 61.50 (Week 1) Andy had 41.29 (2015)
Biggest Blowout Dad beat Tim by 40.11 Luke beat Jim by 74.22 (Week 3) Luke beat Andy by 113.02 (2010)
Closest Win Logan beat Ben by 28.14 Dad beat Ben by 5.33 (Week 3) Jim beat Ben by 0.12 (2012)
Highest Scoring Player Deshaun Watson had 41.72 as a free agent. Tom Brady had 45.72 for Luke. (Week 3) Drew Brees had 60.54 on Tim’s bench (2015)
Longest Active Winning Streak Logan has a 4 game winning streak Logan has a 3 game winning streak. (Week 3) Micah (2011) and Ben (2015) had an 8 game winning streak
Longest Active Losing Streak Tim has a 4 game losing streak Tim has a 3 game losing streak. (week 3) Kyle had a 14 game losing streak (2011)

Free Throw Summary

I might get a few more rounds completed in my “25 Free Throws A Day” challenge, but it’s getting dark so early that it’s unlikely I’ll have too many more. So let’s take a look at how the stats shook out.

  • I shot a total of 1625 free throws and made 1125 of them. (That doesn’t count the warm up free throws.) That comes out to 69%.
  • My five and ten round averages generally increased. At the end, my five round average was 21 and my 10 round average was 20.5.
  • My best was 22/25 and I hit that pretty early in the summer. I got it again a number of times but could never break through. I definitely choked a few times. For example, I once made it to 22/23 and proceeded to miss both of the next two shots because I was so excited about setting a new record. At the end, I finally got 23/25 a couple times.
  • I feel like a perfect streak is within reach. I might keep going with this next year until I make that happen. If I can do that, I’ll be 0.48% of the way to the record of 5221 consecutive free throws made.

This whole thing started as an excuse to get outside every evening so from that point of view it was a big success. I wanted to do a better job of enjoying our beautiful summer weather. It was fun to watch the improvement along the way.

If I do continue this next year, I think I’ll change it up a bit and count the most consecutive free throws made. That makes it a lot easier to “warm up”. This year I struggled with the warm up period. Should I just shoot until I feel like I’m doing well and start counting? Or should I take 10 warmups every time? It was kind of squishy. Counting the number of consecutive free throws made means that I don’t have to worry about a warm up period and I can shoot for as long as I want before stopping. I have plenty of time to mull that over while I wait for the sun to return next spring/summer.

Lego Whitening

As I dug through my old Legos as my parents house, it was hard to ignore how yellow the white pieces had become. I have two fairly big sets (Lego Model Team) with lots of white Legos and I was curious how hard it was to make them white again.

First of all, why does white plastic turn yellow over time? The core reason is that bromine is added to the plastic as a fire retardant. Over time, that chemical reacts with the plastic and produces a yellow color. The change can be accelerated by light, especially sunlight. Thankfully, the process can also be reversed… with SCIENCE!

There are many websites out there describing various ways to whiten Legos, but I’ll use the one from the Jangbricks video below. The basic steps are:

  1. Wash with soap and water, brush
  2. Put on eye protection and water proof gloves
  3. Find a plastic container that fits the parts
  4. Completely submerge the parts in 3% hydrogen peroxide
  5. Put in a sunny spot (UV light), 3-4 hours (5 at the most) if it’s mid day direct sunlight
  6. Pop the bubles every hour to make sure the water stays in contact and completely wet
  7. Rinse with water and dry (salad spinner)
  8. Spread the parts out to air dry
  9. Reuse the hydrogen peroxide several times. When it stops bubbling enough, dump it down the drain.

It’s hard to find days with strong sunshine this time of year, but we did get some sun last weekend. I’d say we got about 80% of the way there. I’m debating whether I want to try to find some artificial lights to replace the sunlight piece of the puzzle or just wait until next summer to try again.