In addition to making runners look kind of goofy and making viewers think athletes are injured and wearing kinesio tape, Nike's AeroSwift tape makes a competitive difference. Just not much of one.

You can see the tape and technology in this Competitor article, while the calculations below are based on data taken from Pugh, L. G. C. E. J. Physiol. (1971), 213, pp. 255-276.

To start, we take the claimed advantage given in the Competitor article - "a 2-3 percent drop in wind resistance." This seems sort of small, but at the professional level every little bit does count. For the calculation I assume a 2.65% reduction in drag because it gives nice round numbers.

We then find from Pugh (in the conclusion if you're interested) that while running at 6 m/s, wind resistance accounts for 7.5% of the total energy expenditure over the course of a race. It just so happens that this is almost PERFECTLY in line with the pace that won Galen the 10,000m at the trials, his speed was 10,000m/1,675s = 5.97 m/s. In addition we can draw similar conclusions about the 5,000m and marathon since Lagat won the 5,000m with an average speed of 6.13 m/s and Galen won the marathon with an average speed of 5.36 m/s. Although the marathon pace is a little farther away from the 6 m/s number quoted by Pugh than I would like, I still believe it is comparable enough for these purposes.

Having the percent effect on overall work by drag and the percent reduction in drag caused by the tape, we can now calculate how quickly someone would run at the same effort level with and without tape.

With a 2.65% reduction in drag, the total reduction in work for a runner wearing tape relative to a runner not wearing tape is 1-0.075*0.0265 = 0.998. So over the same distance, a runner with tape will only exert 99.8% the work as a runner without tape. Assuming the same amount of work done by both runners, the taped runner will reach the finish in 99.8% the time it takes the non-taped runner to complete the course.

Let's see what difference 0.2% in finish time would make at the trials:

5,000m: Lagat goes from 13:35.5 to 13:33.9

10,000m: Rupp goes from 27:55.0 to 27.58.4*

Marathon: Rupp goes from 2:11:12 to 2:10:56

So... not much. That's less than 1 s/mile pace difference. So, the tape saves a little less than 1 s/mile in distance races which is nowhere even remotely close to the savings you can make by drafting. According to Pugh, there is a 20% decrease in drag when drafting a similarly sized runner. 20% is obviously much larger than 2-3%.

So, the real effects of wearing Nike's AeroSwift tape on pace at the top tier of the sport are less than 1 s/mile when running in the open, and approximately no effect when drafting. If we really "want" to see a difference then the tape is most effective in the open so it is possible that athletes wearing the tape may feel more confident trying to break the field open and worrying less about drafting. I doubt this will be reality however. The largest difference we are likely to see is an ever so slightly more relaxed Rupp at the end of the marathon where everyone has 25 miles at 4:55 in their legs and Rupp only has 10 4:55 miles in him, the other 15 being at a mere 4:56 jog.

It should be noted that I am not knocking the tape, just putting it in perspective. I love the fact that Nike continually tries to innovate, looking for every possible advantage, I think that's a good thing for the sport. But the reality of this specific improvement is that the effects will only be psychological.

*Rupp's 10,000m time increased since he wore the tape in this race, so I "took the tape off him" in this calculation.

]]>To start, we take the claimed advantage given in the Competitor article - "a 2-3 percent drop in wind resistance." This seems sort of small, but at the professional level every little bit does count. For the calculation I assume a 2.65% reduction in drag because it gives nice round numbers.

We then find from Pugh (in the conclusion if you're interested) that while running at 6 m/s, wind resistance accounts for 7.5% of the total energy expenditure over the course of a race. It just so happens that this is almost PERFECTLY in line with the pace that won Galen the 10,000m at the trials, his speed was 10,000m/1,675s = 5.97 m/s. In addition we can draw similar conclusions about the 5,000m and marathon since Lagat won the 5,000m with an average speed of 6.13 m/s and Galen won the marathon with an average speed of 5.36 m/s. Although the marathon pace is a little farther away from the 6 m/s number quoted by Pugh than I would like, I still believe it is comparable enough for these purposes.

Having the percent effect on overall work by drag and the percent reduction in drag caused by the tape, we can now calculate how quickly someone would run at the same effort level with and without tape.

With a 2.65% reduction in drag, the total reduction in work for a runner wearing tape relative to a runner not wearing tape is 1-0.075*0.0265 = 0.998. So over the same distance, a runner with tape will only exert 99.8% the work as a runner without tape. Assuming the same amount of work done by both runners, the taped runner will reach the finish in 99.8% the time it takes the non-taped runner to complete the course.

Let's see what difference 0.2% in finish time would make at the trials:

5,000m: Lagat goes from 13:35.5 to 13:33.9

10,000m: Rupp goes from 27:55.0 to 27.58.4*

Marathon: Rupp goes from 2:11:12 to 2:10:56

So... not much. That's less than 1 s/mile pace difference. So, the tape saves a little less than 1 s/mile in distance races which is nowhere even remotely close to the savings you can make by drafting. According to Pugh, there is a 20% decrease in drag when drafting a similarly sized runner. 20% is obviously much larger than 2-3%.

So, the real effects of wearing Nike's AeroSwift tape on pace at the top tier of the sport are less than 1 s/mile when running in the open, and approximately no effect when drafting. If we really "want" to see a difference then the tape is most effective in the open so it is possible that athletes wearing the tape may feel more confident trying to break the field open and worrying less about drafting. I doubt this will be reality however. The largest difference we are likely to see is an ever so slightly more relaxed Rupp at the end of the marathon where everyone has 25 miles at 4:55 in their legs and Rupp only has 10 4:55 miles in him, the other 15 being at a mere 4:56 jog.

It should be noted that I am not knocking the tape, just putting it in perspective. I love the fact that Nike continually tries to innovate, looking for every possible advantage, I think that's a good thing for the sport. But the reality of this specific improvement is that the effects will only be psychological.

*Rupp's 10,000m time increased since he wore the tape in this race, so I "took the tape off him" in this calculation.

http://thewoksoflife.com/2014/02/chinese-bbq-pork-buns-cha-siu-bao/

However, as you can see, the formatting sucks. Because my wife very much enjoys this recipe, I tend to make it a lot. Because I use this site a lot for this recipe, I get frustrated with the layout often. Therefore, I am transcribing the recipe.

There are three parts to this recipe, the bread, the pork, and the combined buns. The bread should be made first. It will take 10 min to prepare the dough, 10 min to knead the dough, and 1 hour for the dough to proof. After the dough has proofed for 40 min, the pork should be prepared. After combining the pork and bread, the buns will proof for yet another hour and bake for 25 min.

All in all, from start to dinner, this recipe takes 3 hours.

Grab a beer, this part takes a while: Also, RT stands for room temperature

Ingredients:

2/3 cup heavy cream (RT)

1 1/8 cup milk (RT)

1 large egg (RT)

1/3 cup sugar

1/2 cup cake flour

3 1/2 cups all-purpose flour

1 packet dry yeast

1 1/2 tsp salt

Mix all of the ingredients listed above in a big bowl. Knead the dough for 5-10 min. Cover the dough with a damp towel and, if possible, place in a warm location such as the oven for an hour.

Ingredients:

2/3 cup heavy cream (RT)

1 1/8 cup milk (RT)

1 large egg (RT)

1/3 cup sugar

1/2 cup cake flour

3 1/2 cups all-purpose flour

1 packet dry yeast

1 1/2 tsp salt

Mix all of the ingredients listed above in a big bowl. Knead the dough for 5-10 min. Cover the dough with a damp towel and, if possible, place in a warm location such as the oven for an hour.

This should not be started until the dough has proofed for approximately 40 min.

Ingredients:

2 tbs oil

2 tbs sugar

2 1/2 tbs soy sauce

2 tbs oyster sauce

1 1/2 tbs sesame oil

3/4 cup chicken broth

3 tbs flour

2 cups chopped/pulled pork

Combine the oil, sugar, soy sauce, oyster sauce, and sesame oil in a pan over medium high heat. When the mixture begins to bubble, reduce the heat to medium and add the broth and flour. Allow the mixture to thicken for a couple minutes before adding the pork and removing from heat. Let the pork cool while the dough finishes proofing.

Ingredients:

2 tbs oil

2 tbs sugar

2 1/2 tbs soy sauce

2 tbs oyster sauce

1 1/2 tbs sesame oil

3/4 cup chicken broth

3 tbs flour

2 cups chopped/pulled pork

Combine the oil, sugar, soy sauce, oyster sauce, and sesame oil in a pan over medium high heat. When the mixture begins to bubble, reduce the heat to medium and add the broth and flour. Allow the mixture to thicken for a couple minutes before adding the pork and removing from heat. Let the pork cool while the dough finishes proofing.

After the dough has proofed and the pork has been prepared we get to the buns (and thighs).

Cover a baking sheet with aluminum foil or parchment paper since cleaning up the baking sheets can be a pain. Separate the dough into 16 balls and flatten them like a pancake. Place a dollop of pork on the pancake and crimp it closed. It is supposedly a similar technique to making Shanghai soup dumplings, whatever those are.

Once all buns have been made, let them sit for another hour. Contemplate your life choices and what brought you to make such a long and complex dinner over yet another beer.

After the hour is over and you have successfully convinced yourself that you will never make this recipe again, preheat the oven to 400 degrees F, prepare eggwash (whisked egg + 1 tbs milk) and brush over the buns. Sprinkle with sesame seeds and place in the oven. Decrease the oven temperature to 350 degrees F immediately and bake for about 25 min.

After putting the buns in the oven, you have time to prepare a side dish such as green beans or sugar peas, as well as a salad.

After pulling the buns from the oven allow them to sit for approximately 5 min before serving.

]]>Cover a baking sheet with aluminum foil or parchment paper since cleaning up the baking sheets can be a pain. Separate the dough into 16 balls and flatten them like a pancake. Place a dollop of pork on the pancake and crimp it closed. It is supposedly a similar technique to making Shanghai soup dumplings, whatever those are.

Once all buns have been made, let them sit for another hour. Contemplate your life choices and what brought you to make such a long and complex dinner over yet another beer.

After the hour is over and you have successfully convinced yourself that you will never make this recipe again, preheat the oven to 400 degrees F, prepare eggwash (whisked egg + 1 tbs milk) and brush over the buns. Sprinkle with sesame seeds and place in the oven. Decrease the oven temperature to 350 degrees F immediately and bake for about 25 min.

After putting the buns in the oven, you have time to prepare a side dish such as green beans or sugar peas, as well as a salad.

After pulling the buns from the oven allow them to sit for approximately 5 min before serving.

Pre-race (Race Day): Cold (for Texas) morning, only 42 degrees F, but warm enough to only wear a singlet and shorts. After a slow warm up my legs felt heavy so I decided to run the first mile semi-reserved; keep everyone within striking distance but be sure to not burn out early. As I head to the starting line with 5 min to go (small race), I see about 5 guys wearing racing flats but only two people look fast enough to be competition (neither of these guys happened to actually be competition, they just looked the part). The longest recorded national anthem plays and the wind picks up while I regret my decision to not wear my gloves.

1 mile split: 5:46

2 mile split: 6:02

Finish: 17:37, first overall, 5:29 final split

Result: 1:21:37, 43rd overall, 3rd in age 20-24.

Pre-race

5k split: 18:52 (5:57, 6:02, 6:09)

10k split: 37:58 (6:11, 6:05, 6:06)

10 mile split: 1:01:21 (6:06, 6:02, 6:08, 6:20)

Finish: 1:20:37 (6:08, 6:03, 6:20)

Result: 37:13, 5th overall, 1st in age 20-24.

Pre-race: It was cold and windy for this one - I had a lightweight neck warmer, gloves, arm sleeves, and my typical singlet and race shorts combo. Definitely should have gone with tights and a more heavyweight neck warmer but it turned out alright. 31 degrees F is cold around these parts.

**Miles 1-2:** Shot out pretty fast the first mile but it was hard to hold back since it was a net downhill. There was a very clear divide between the first three runners and the rest of the pack so although I was tempted to keep up I let them go (which is good considering the slowest of them was a full 20 s/mile faster than me). Another group formed behind them, composed of myself and two other runners. Around the end of the first mile I was in second within the second group before the guy who was third in the group surged ahead to take lead. By the end of the second mile he was ~10 s ahead of me, and split between between us was the other runner from our pack.

Splits: 5:49, 6:15

**Miles 3-4:** These miles were uneventful and boring with the leader of our pack starting to pull away ever so slightly. It as still cold and I couldn't stop thinking about how cold it was. As an aside, I ran my fastest 5k split since high school here - Strava recorded the time as 18:30, a pace of 5:57 min/mile.

Splits: 5:59, 6:08

**Miles 5-6.2:** After being distracted by the cold for a substantially long period I noticed that the leader of our group was no longer pulling away and the guy in between me and the leader was actually getting ever so slightly closer. I assessed how my body felt and I concluded that the only thing keeping me from catching the second place person (in our group, fifth overall) was the cold, and I would just have to get over myself and push through the pain. So I started to reel him in and made up the ~5 s gap over the course of a half mile or so. Once I caught him I sat on his shoulder for a minute or two, composing myself before attempting to drop him. I have no idea why, but I always feel the need to surge ahead when I am racing at the same pace as someone else in order to drop them. Combining my memory of where I surged with my Strava data I believe this happened between mile 5.1 and 5.3 where it looks like I held a pace of ~5:30 to gain separation. Shortly after forcing a gap we turned onto a straightaway and I saw mile marker 18 (for the 30k). Doing some quick math (which is always dangerous in a race) I surmised we were about 3/4 mile away from the finish so I started to do what I felt was pushing the pace, although looking at Strava data I simply held the same pace I had for the last two miles. At mile 6 I could see the finish and I knew I couldn't catch the group leader but I still had to kick as best I could to preserve my spot because I never truly dropped the other runner in our group.

Splits: 5:58, 5:58

**Post-race:** This was an excellent race for me. I normally don't do so well in the cold, and both respiratory and digestive systems are still recovering 72 hours later, but I'm proud that I was able to pull 6:00 min/mile pace for a 10k. Because all the 10k's I raced in high school were in the XC off-season I might have even set a 10k PR, not just a post-HS 10k PR. I'll try to figure this out later.

An interesting encounter I had after the race was when I got stopped in the finish chute by the guy who finished 2 seconds behind me. He asked "Are you Karl?" I was about half dead with a frozen jaw so I nodded and grunted something to the effect of "yes." He then says "I was afraid of that, I'm just barely ahead of you in the Distance Challenge."

**Distance Challenge:** It's not over yet but that encounter is currently in the top spot for favorite moment of the challenge. It shows the competition that's occurring, not just within single races, but over the stretch of all six races. I may have initially signed up for the challenge as a way to motivate myself to get back into shape and start running again, but it has now morphed into something more, where I am competing with people again. Running is fun, racing is a blast.

I am still third in the half track of the Distance Challenge, but I managed to "break rank" for the first time. I beat the current second place person by two seconds. I am still just over five minutes behind second with two races remaining, but both of them are half marathons. Unless he stumbles badly and lets me make up three to four minutes in one of the races I think I will finish third, which is fine, but it's still fun to think about the challenge. An optimistic goal would be to gain back the five minutes that separate us but a more realistic goal would be to beat him in two upcoming races.

]]>Splits: 5:49, 6:15

Splits: 5:59, 6:08

Splits: 5:58, 5:58

An interesting encounter I had after the race was when I got stopped in the finish chute by the guy who finished 2 seconds behind me. He asked "Are you Karl?" I was about half dead with a frozen jaw so I nodded and grunted something to the effect of "yes." He then says "I was afraid of that, I'm just barely ahead of you in the Distance Challenge."

I am still third in the half track of the Distance Challenge, but I managed to "break rank" for the first time. I beat the current second place person by two seconds. I am still just over five minutes behind second with two races remaining, but both of them are half marathons. Unless he stumbles badly and lets me make up three to four minutes in one of the races I think I will finish third, which is fine, but it's still fun to think about the challenge. An optimistic goal would be to gain back the five minutes that separate us but a more realistic goal would be to beat him in two upcoming races.

Result: 1:25:37, 16th overall, 2nd in age 20-24.

5k split: 20:15 (6:26, 6:31, 6:16)

10k split: 39:45 (6:22, 6:27, 6:28)

10 mile split: 1:04:18 (6:17, 6:17, 6:33, 6:44)

Finish: 1:25:37 (6:58, 7:04, 6:36)

A Ruth–Aaron pair consists of two consecutive integers (e.g. 714 and 715) for which the sums of the *distinct* prime factors of each integer are equal. These types of pairs were named by Carl Pomerance, uga math professor, after a student noted that 714 and 715 had this characteristic. 714 was the number of career homeruns hit by the Yankee legend Babe Ruth, while 715 was the number of career homeruns hit by Brave legend Hank Aaron in 1974, thus surpassing Ruth's all time home run record which had stood for almost 40 years.

To start, we must be able to calculate the sum of the prime factors of a given number, which means we must be able to determine whether or not a factor is prime. For this, we could either write our own code or conduct a quick Google search - I opted for the latter and found the SymPy library which has an isprime() function which can be seen in my own function, pf_sum().

Using this function to find the sum of the prime factors of a given argument we are able to cycle through each given tuple by taking them in as a list using *args in the function input. For python, the first argument detailing how many tuples will follow is irrelevant, however it is kept to ensure continuity in copying and pasting test cases. The for loop in ruthaaron() loops through these tuples contained in the args variable (which is a list due to the asterisk in the input field), comparing the sum of the prime factors of the numbers in each tuple to determine if the pair is a Ruth-Aaron pair.

Using this function to find the sum of the prime factors of a given argument we are able to cycle through each given tuple by taking them in as a list using *args in the function input. For python, the first argument detailing how many tuples will follow is irrelevant, however it is kept to ensure continuity in copying and pasting test cases. The for loop in ruthaaron() loops through these tuples contained in the args variable (which is a list due to the asterisk in the input field), comparing the sum of the prime factors of the numbers in each tuple to determine if the pair is a Ruth-Aaron pair.

]]>

The topic of abundant and deficient numbers arises from number theory. There are three types of numbers this code will analyze:

- A number is deficient if the sum of its divisors is less than twice the number
- A number is abundant if the sum of its divisors is more than twice the number
- A number is perfect if the sum of its divisors are equal to twice the number

The first task is to find all divisors of a given number and to sum them. It is then simple to compare this sum to twice the number and determine the type of number we have. The code will then return the number, followed by its classification, followed by the amount by which the number is abundant, if it is abundant.

]]>