Skip to content → Posts

How To Win With Progressive Jackpots in Online Slots

The World Wide Web is a huge playground for several games including that of slot machines online. The access to the world wide web has been made possible by the development of information technology. This has provided a stage that was unimaginable just a few decades back. You will definitely find a range of web games that you couldn’t find

Comments closed

How To Become a Term Paper Writer

Term documents, that are also known as academic documents, are composed to present research findings from a variety of studies and might be researched, documented, and introduced for a lot of distinct reasons. A term paper is generally written as an summary of some topic about the paper’s topic. The objective of the paper is to present data,

Comments closed

Term Paper Writing Services

Is it ever time for your school or high school term paper writing write my essay service to pick up after you? As a student, even as an undergraduate or graduate that has written some quantity of term papers, occasionally it just never gets any easier to get the excess time in to fill those extra active

Comments closed

Writing Your Own Custom Essays

When it comes to custom essays, the choices are infinite and may be used for both schools and companies. Thus, what is the best choice?

The ideal option is to hire a professional to write your custom essays. This is especially true if you need an essay that has significant private information within it. But, there are also many methods

Comments closed

Play Bingo Online Free – Discover How To Easily Do It

Would you like to try your fortune at the Bier Haus slot machine? If so, then you may have the ability to get it on line free. It is not that difficult to do so as long as you have a personal computer and a connection to the world wide web. These things are commonly available these days and it wouldn’t take a lot of your time to get to these.


Comments closed

Term Paper Writing Services

Is it ever time for your school or high school term paper writing write my essay service to pick up after you? As a student, even as an undergraduate or graduate that has written some quantity of term papers, occasionally it just never gets any easier to get the excess time in to fill those extra active

Comments closed

How do you go backwards?

Fly first or business class, long haul international, then go back to economy on your next flight.

Stay at the Mandarin Oriental, then book your next stay at a Holiday Inn Express.

Drive a fully loaded Audi, then buy a Ford.

Work in a place that values work-life-balance, then go back to 24/7 availability.

When you see what it can be like, what are you willing to give up to maintain it?

Comments closed

Hiring should not be a game

The guys over at Basecamp have the right perspective when it comes to hiring practices. Transparency.

Remember, I’m looking to to hire someone to work with, not work against. Starting things out with “look what we got away with!” seems like a terrible start to what hopefully develops into a wonderful, long-term working relationship. Leverage need not apply.

Just look at a job posting if you need further proof.

I have interviewed hundreds of people, mostly developers, over my career. Truly, I wanted candidates to be successful and be a great fit for my role. Interviewing and hiring was one of the least favourite parts of being a manager. But I’m also guilty of playing games, sometimes because of corporate HR hiring policies, but also because of personal bad practices.

Hiring is one of the most important parts of being a manager and no company where I’ve worked takes it as seriously as they should. I’ve never had an employer offer to train me in good hiring practices. I’m not even confident that they know what good hiring practices are. All hiring should end in a win win scenario, but that is not generally how it is treated at most companies. Our goal is almost always get the best employee for the least salary possible. That’s not a good start to a working relationship. Time to change the game.

Comments closed

Be a Good House Guest

We have lived in Munich for nearly 3 years and over this time we have had a lot of guests stay with us. We hoped that our friends and family would come to visit, which is why we rented a 2 bedroom flat to make it easy to stay with us. We have been so fortunate to have dozens of visitors over the years, but we have noticed some things that good house guests do and some things that other house guests do. If you follow these pieces of advice, I guarantee you will be a good house guest.

Good house guests come with a plan. We send all of our guests a long list of our favorite things to do in and around Munich. Good guests have read it or have done their own research and have a few ideas when they arrive. They don’t plan every minute of every day (unless that is their thing), but they do a have a few ideas in mind.

Good house guests will do things on their own. We want to visit with our guests – it’s the best part of having house guests – but they’re on vacation, and unfortunately we’re not. We don’t want to visit the Dachau Concentration Camp with every person who visits us, but they should visit it. Being in a new place means making a wrong turn or getting on the wrong train and good house guests don’t expect us to be their daily tour guide.

Good house guests contribute. We love to cook and host, but expecting every breakfast and dinner to be cooked is a lot. Good house guests offer to cook and offer to buy groceries. In fact, they don’t just offer, they go for a walk, buy groceries and tell us they’re making dinner. It’s very thoughtful.

Good house guests pick up the tab. They don’t pay for everything, but again, they’re on vacation and we are not. They want to experience the local culture which often comes in the form of going out for food or attending events. This gets very expensive for hosts who are expected to do it for every visitor. Good house guests buy a few meals or pay for an event admission every once in a while. Sometimes it just faster and easier for us to buy a transit pass for our guests. Good house guests recognized that and make sure to pay us back.

Good house guests carry a lot of local currency. Cash is king in Munich, particularly for small purchases. We tell that to all of our guests. Good house guests get cash immediately so they can confidently pay food or transportation as they need. This isn’t just in Munich either, a lot of Europe will only take cash for small purchases.

Comments closed

U-turns and agile

I went for a long bike ride the other day. I don’t know the areas outside of Munich very well, so I spent some time planning my route so I could use turn-by-turn navigation to guide me. As I’ve done similar rides in the past, I’m familiar with the roads and towns, just not the details like which exit on the round-about to take in each town.

While on the ride, I realized that I missed a few specific roads that connect a couple towns that are very bike friendly, so I turned off the planned route. My navigation told me “Re-routing, take a u-turn.” I pushed on, because I knew the road would eventually take me back to the original route. 10 seconds later, “Re-routing, take a u-turn.” I was still confident of my new path. For the next 3 km my navigation told me every 15 seconds “Re-routing, take a u-turn” until I finally pedaled far enough that the navigation realized I was going the right way.

While this was happening, I was thinking that this is a good example of agile. I started with a plan for a 2 hour bike ride, with a clearly planned route. Along the way, I gathered new data (I visually saw a different road) and changed the route based on that information. I was confident that this new route was better, but my navigation told me to turn around, go back, I made a wrong turn. My new information told me differently and I was confident changing the route was the best thing to do.

Comments closed

Connected and Disconnected

It’s been more than 20 years since I took my first trip to Europe. I traveled by myself and it was scary and exciting. As someone who grew up in a small town in Canada during the 70s and 80s my only knowledge of the world came from school, television, libraries and the family encyclopedia set (Funk & Wagnalls). I spent hours, definitely days, possibly months laying on the family room floor reading our atlas. I studied cities and countries all over the world. Honestly I have no idea why – I’m sure there is a post about a small town kid dreaming about seeing the world.

My trip had very little plan to it. I had  a too large backpack, a plane ticket from Winnipeg to London (and back), a Eurorail ticket, and a Lonely Planet guidebook. In 1998, I did have an email address and dialup access to the internet, but I didn’t even think to use, what we called, the World Wide Web to plan my trip.

My trip was amazing. I spent 2 months meeting and traveling with new people the entire time. I stayed in cities as long as I wanted and left when I felt like it was time. No itinerary and no reservations. The thing that made the trip so special for me wasn’t the cities or countries (they were fantastic), but it was that I got out of my comfort-zone, talked to strangers, became friends, ate dinner together, traveled together, said goodbye, moved on to new destinations and did it all over again.

Currently I find myself living in Europe and still traveling a lot with my wife. What strikes me when we travel is how connected and disconnected travelers seem. It happens to me too. Sometimes I find myself traveling alone, either for work or for pleasure, and I am connected and disconnected. I’m connected, reading the news while I eat eggs in the morning. I’m messaging friends and family all over the world while I drink a glass of red wine, but I’m disconnected from the place I’m in. I rarely talk to or get to know strangers. I wonder if this happens with younger travelers today? Those experiences of getting out of my comfort-zone to meet people had a huge influence on who I am today. I hope that travelers today still get those same experiences.

Comments closed

Make Room for the Experts

It’ been nearly 10 years since I stopped writing code and started managing teams. It was a difficult transition for me and I consider myself a high functioning developer. I enjoy talking to less technical people and get satisfaction when I help them understand a complex technical problem. Put me in front of an 8 year old or an 88 year old and I will find a way to help them understand. Not all technology people can do that. It frustrates them when people don’t see the world their way.

This becomes a problem when technologists move into management roles. It works for some, but for the others, it’s just a bad fit. I suspect that most make the move for the same reasons I did — they want to have more influence over the work and they want to make more money.

Unfortunately, within most non-technology companies, the path to have more influence and make more money usually requires moving into management. Traditional corporations have left little room for technology experts to stay experts and contribute at a higher level. HR departments certainly don’t know how to handle it. Google, Facebook and Microsoft clearly understand the value of technical experts. It’s time for non-technology companies to recognize this as well or they will never be able to retain top staff.

Comments closed

14 Simple Steps To Get a German Driver’s License

My wife and I moved to Munich over 18 months ago, because I had a great opportunity for an expat work assignment for 2 years. Munich is a lot different from where we moved in many ways, but specifically the public transportation system is probably one of the best in the world. Moving from the US and Minneapolis, you NEED a car to live your life. My original contract had a term of 2 years, but I recently decided to extend for a 3rd year. We really enjoy living in this city. It has not been a problem not having a local drivers license because of the public transportation options and the ease of bicycling everywhere, but my wife and I decided that it would be nice to have one for weekend road trips outside of the city for skiing and hiking in the Alps.

If you move to Germany from another country, your home country/state driver’s license is valid for 6 months, then you need to convert it. Here are the steps that I have taken to get my German license.

Step 1: Determine if you come from a State with reciprocity.

Visit the US Embassy web site to determine if you have a driver’s license with reciprocity. I have a license from Minnesota, which has partial reciprocity. This means I am exempt from the practical test, but I have to take the theoretical test. If you have a license from a State with full reciprocity, you don’t have to take any tests. Lucky you. There are nearly 40 States with either full or partial reciprocity. The others will require full testing. From my understanding, the practical test can take months to prepare for, will require driving lessons and can cost close to 2000€. Sorry.

I’m actually from Canada, which has full reciprocity with Germany, but I haven’t had a Canadian drivers license for 16 years.

Step 2: Gather Your Documentation

  • Very important! A valid driver’s license minimally valid for 2 years with a clear issue date that proves it has been valid for over 2 years. I had to bring both my current license and my “voided” previous license because the issue date on my current license was less than 2 years before the time I moved to Munich. The registration office spent 10 minutes discussing whether this was good enough – in the end it was. If you don’t have a clear issue date that was longer than 2 years prior to moving to Munich, you may need to request some sort of proof from your issuing authority.
  • Passport picture. In Munich, every U-Bahn and S-Bahn station has a photo booth. (6€)
  • German translation of your driver’s licence. I used  lingoking which is an online translation service. It took about 7 days total for the translation and to receive the certified version via mail (45€). Super convenient, but not super fast. Friends went to an ADAC office and had it done on the spot.
  • First-aid-course. I spent a beautiful Saturday afternoon learning first aid. To be honest, it was a very good course and I think it has a lot of value, but it takes time and costs money. In Munich, there is no registration, you just show up at the scheduled time and register on the spot (40€).
  • Eye-test. You need a certified eye test. You can get this at the first aid course or go to an optometrist in your neighbourhood – that’s what I did (6€).
  • Find and register with a driving school. This is required for all testing. I have to take a theory test, so I needed this registration (200€). Driving schools (Fahrschule) are everywhere, so I recommend picking one closest to you. A certified school registration document is needed for government registration.

Document Collection

Step 3: Register with the German government.

Make sure you have all the certified documents from above. In Munich, there are 2 approaches to registering. This should actually be Step 0. Click here to register online for the appointment. When I registered, the next appointment available was 6 weeks away.

Don’t fret if your appointment is a long way out. You can also expedite the registration by going in person, early in the morning. I arrived 1 hour before (7:30am) the office opened and was the 20th person in line. By the time the doors opened there was at least 100 people behind me. This is a large government office, with services other than drivers license registration. When the doors opened, there was a dash and I moved quickly to the 3rd floor, Section F, where you could get an on the spot appointment. The doors opened at 8:30am, I was 5th or 6th in line and got an appointment at 10:30am. I ended up getting in by 11am. [Note. the office in Munich is planning to move in either Aug2018 or Sept2018, so the above details will be inaccurate after they move. I don’t know what floor they will be on and I don’t know if they will use a lettering system to designate areas.]

The person giving appointments didn’t speak English, which was only a small struggle. The person who I registered with spoke very good English and was very easy to work with. On top of the above documentation, you also need to bring the following:

  • Passport or National ID
  • Verification of your German residency registration. In my case, this is my local registration stamp in my passport.
  • 45€ registration fee. You can use cash or bank card in an automated payment machine.
  • (optional) 20€ for expedited registration. This takes a registration process from 4-6 weeks down to 3-5 days.


  • 1 – 2 weeks to gather all my documentation and take the first aid class.
  • 1 day to register on the spot or possibly up to 6 weeks with an online registration.
  • 1-2 weeks for current drivers license validation. They will collect your current license at the registration appointment and have a local expert validate it’s authenticity. I was told that my license will not be returned, but I have friends from Minnesota who did receive their’s back. [June 26, 2018. I’ve only been waiting 1 week so far. It’s possible I will also get mine back.]
  • 5 days to 6 weeks for registration, depending on whether you pay to expedite it.

This gets you registered officially. If you are lucky enough to not need testing, this is the end for you and when your registration in completed, you will receive your license.


Like I said earlier, because I moved from Minnesota, I am required to take the theoretical test. Use the link at the start to determine what is required for your origin license.

The theory test can seem intimidating, but don’t let it scare you. The test consists of 30 questions, from a possible list of 1077. Each question is worth between 2 and 5 points. You can’t get more than 10 points wrong and you can’t get two 5 point questions wrong. That sounds intimidating, doesn’t it? First, you can take the test in English, so that’s a huge help. Second, there are lots of study aids. I bought access to an online test service. I did this before registering with a school, because I wanted to get a head start on studying. If you do the same, make sure it’s certified and uses the exact same questions that the testing authority uses.

In 2 weeks, at about 2 to 3 hours per day, I was able to get through all 1077 questions at least once. Without studying anything, I got about 70% of them correct. So think about that. Suddenly studying 1077 questions became studying around 300 questions. Many of the questions I got right were from experience and common sense. The studying software also builds practice tests for you to take, that both try to simulate a real test and simulate a test with the questions that you struggle the most with. Within 3 weeks I was passing the simulation tests, so this is not insurmountable.

[As of June 26, 2018] I have not taken the test yet, as you can’t register for the test until you are registered with the government. I am still waiting for my registration to process. I emailed my school yesterday and was told the next available date for me to take the test is July 23rd. Assuming my registration completes within the next 2 weeks (thank you expedited processing), I think best case scenario is that my first test attempt will be in August. I will update this post about the next set of timing.

There are lots of pieces of information on the web. This post is intended to consolidate, simplify and and inform on my experience.

Comments closed

Prime Now

I love technology. I’ve been designing and building software for over 17 years, which is crazy to think about. That feels like a lifetime, which is kind of true in the technology space. Mostly I build software for existing organizations to be a little better than they already are. “How can we do what we do a little better than we currently do it?” That’s where I come in. I see companies like Amazon who are pushing boundaries. AWS was built out of an internal need, now it’s a $7B+ a year business for Amazon. They are solving really interesting problems(?) for the everyday person. 

Last week they announced that Amazon Prime Now is available in the Twin Cities. I hate shopping for almost anything. They now offer same day delivery in the Twin Cities for a fairly large number of items. We forgot to buy a few items yesterday at the grocery store, so I thought I’d try it out today. It worked as you would hope. Place an order for a few items that total more than $20 dollars and, boom, it was at my door just a couple hours later. I’m not sure how often I’ll use it, but it worked as expected. Technology is changing the way we do a lot of daily tasks and this is a great example of how a new service could change the game. Maybe drones aren’t the future or maybe they are, but I hope they keep pushing the boundaries. 

Comments closed


I had an economics professor who once said, “Statistics are like a bikini — what they show is titillating , what they hide is essential.” 73% of all statistics are made up on the spot. I hope you get that joke.
I’m not sure if sports would be nearly as interesting if we didn’t keep stats. Take the Aaron Rogers TDs without an interception statistic that EVERYONE is talking about. He has thrown 43 consecutive touchdowns without an interception ………. at home. There’s a couple games in the mix where he didn’t throw a touchdown. There’s also 4 games where he was injured. Also, how meaningful would that stat be if he threw 43 inceptions during that period in their away games? That’s not the case, but it’s not factored in. It’s the classic show the titillating stat, but hide other essential details.
You can bet the Rams will be doing everything they can to change that statistic this weekend.
Comments closed


I love the innovative services coming out of the AWS teams. Snowball is a new addition to an old service. 

Snowball is designed for customers that need to move lots of data (generally 10 terabytes or more) to AWS on a one-time or recurring basis. You simply request one or more from the AWS Management Console and wait a few days for the appliance to be delivered to your site. If you want to import a lot of data, you can order one or more Snowball appliances and run them in parallel.

As someone who has used AWS extensively in the past and took advantage of the Inport/Export service, Snowball is a huge step in making it easier for companies to migrate their data.  Amazon does a great job describing what it was like to migrate large amounts of data in the past. 

The original AWS Import/Export model was built around devices that you had to specify, purchase, maintain, format, package, ship, and track. While many AWS customers have used (and continue to use) this model, some challenges remain. For example, it does not make sense for you to buy multiple expensive devices as part of a one-time migration to AWS. In addition to data encryption requirements and device durability issues, creating the requisite manifest files for each device and each shipment adds additional overhead and leaves room for human error.

When I did this in the past, there felt like a lot of faith in the whole process. It worked, but with all the variables, a failure at any stage in the process would mean starting all over. Snowball is a great solution. 

Comments closed

Challenging Convention

My wife and I just got back from 3 weeks in Europe. One of my favorite things about travel is how it challenges what I believe to be a general convention. Travel gives you a view into how people in different places think or act differently. 

What I see everyday in the US, it looks like every person is using either an iPhone or an android smart phone. Based on experience it would be easy to say most people in the world would be the same. That means everyone has access to an app ecosystem or a browser and a large screen to view web sites. If that how it is here, why would it be different in Europe? We are very similar in many ways and globalization has brought us much closer together.

In fact in Hungary, most people I saw (non-travelers) were using classic cell phones. Just a number pad, with a screen only slightly larger than a regular cell phone. Browser? Not a great one, if they have one at all. iPhones were almost non-existent. I’m sure income levels have a lot to do with it. If you only make €7,000 a year, spending nearly €700 on a phone isn’t very practical. 

The US is a huge commercial market and you definitely want to focus energy on it, but when we’re building products or web sites, it’s important to remember that there is still a large portion of the world population using much more basic devices. It’s really easy to forget. 

Comments closed


I need to lose weight and get in shape. I need to spend less and save more. I need to walk my dog everyday (that’s good for both of us). I need to leave work at work and be present at home. I need to spend more time with the people who elevate me. I want to learn how to play the guitar that my brother gave to me for Christmas 10 years ago. 

I’ve never been one who sets goals and strives to achieve them. I feel like I float through life most of the time. Fortunately it’s worked out pretty well for me so far, but there are definitely areas of my life that I wish were different. So, I’m going to try. 

For instance, I’ve resurrected this blog, which to be honest, never really had life. And I’m going to post something everyday. I missed yesterday, so I’m posting twice today. Thanks for reading. 

Comments closed

The Broker Economy

Frequently you hear services like Ãœber and Airbnb referred to as being part of the sharing economy. Sharing is generally free and not monetizable. We are in the middle of a Broker Economy boom. Ãœber and Airbnb are brokers who bring suppliers and customers together through a simple interface. 

Their killer feature isn’t connecting people either, it’s seamlessly processing the transaction with next to no friction. I love that I can load my credit card into the app and trust that they will charge me when I receive the value of the transaction. No cash needed and my payment information is completely unknown to the supplier. 

Contrast that with the average taxi ride in Minneapolis. If I want to pay with credit card, more often than not, the driver will pull out a machine that makes a carbon copy of my card. Now the driver has a copy of my credit card numbers and who knows what might happen to them from that point forward.

Comments closed

The Basic Equation

It’s the job of marketers and product makers to take the most basic of equations and turn it into something worth billions of dollars. Two products where this is most prevalent are wealth building and weight loss. In reality, these equations couldn’t be more simple:

X – Y = Z

In weight loss, this equation is:

Calories In – Calories Out = Calorie Gain

The wealth building equation is:

Income – Spending = Saving

You might think this is an over-simplification, but starting out simple is what makes goals achievable.  A great start at losing weight is to burn more calories than you consumer. If you want to build wealth, spend less money than you earn.

If you take weight loss in it’s simplest form, this requires little effort and little cost. You can swing this rational in your favor for zero cost. You can stop eating too much. You can add a couple miles of walking to your day. You can do both for accelerated results. People who try to sell solutions to this problem begin to complicate the process. It is in their interest for weight loss to feel complicated and insurmountable. Give us money and we’ll solve it for you. 

Wealth building is the same. If you spend less than you make, you can build your wealth. You do this by controlling your spending or find ways to make more money. The wealthy rarely have one source of income. Trying to beat the stock market or jump in on the latest IPO is a fools game. The pros don’t even do it well. Keep it simple and look to the long term. Getting rich quick takes time. 

By the way, this is the way I want to live, not necessarily the way I live. This post is to remind me that it can be simple. 

Comments closed

Jet lag

My wife and I just retrurned from a 3 week vacation through Europe. It was probably one of the most renewing trips I’ve ever had. To get away from work for that long is almost next to impossible for most people. We’re both very fortunate to work for companies who were comfortable with us leaving. Getting back is a whole other challenge. 

Removing yourself from regular work and regular life for 3 weeks changes your brain. The time difference is one thing. I woke up at 2am the first night back, the 3am, then 4:30am today – my circadian rhythms are almost back in sync with the Twin Cities. But the other change is around what is important. 

All the usual things happened on this trip – “when I return I’m going to exercise more, stop eating out so much, work a more regular schedule”, etc. All the self improvement things we think about when we have time. The big topic that I always focus on when away is flexibility. Flexibility to me is being able to do what you want from anywhere you want when you want. 20 years ago the only thing that fit this definition was retirement. I’m only 41 years old and I’m not interested in retiring. I hope I’m not interested in retiring when I’m 61 years old. I’m not smashing rocks for a living, my sore joints won’t stop me from being able to work. I use my brain, fingers and mouth to make a living, the rest of my body is used for transport between thinking and talking engagements (meetings). Assuming my brain stays healthy, I should be able to make a living for a longtime. 

So, the question is how does one find or create a job where you can have flexibility to get work done when you want from where you want? 

Comments closed

On my own

I’ve been thinking about doing this for years and I’ve finally pulled the trigger. I’m going independent. I’ve decided to move on from my current employer [Intertech] and strike out into the world of independent consulting.

A great opportunity came my way to work for an excellent company, so as of February 22nd I will be a senior developer at Ratchet. I leave a company that has one of the more renown C# technical authors (Andrew Troelsen) for a company that has some serious interactive pedigree.  Ever heard of BMW Films web site?

This is an exciting change, which I look forward to.

Comments closed

The Rate of Growth

I’ve always been strong at math. From the time that we were separated into skill levels in elementary school, I was always at the highest math levels. I loved my calculus course in high school and in University. So it came as a bit of a surprise this weekend when my brother blew my mind with the most basic of math equations: the equation for growth rate. I’ve always calculated it:

((Value Present – Value Past) / Value Past) * 100 = Growth Rate

It’s the only way I have ever done it. I’ve never even thought of calculating it another way. My brother couldn’t wrap his head around this equation, it was foreign to him. I was adamant that it is the only way to calculate the growth rate between two periods, then he explained his equation.

((Value Present / Value Past) – 1) * 100 = Growth Rate

Being the stubborn older brother that I am, I explained how absurd his way is and that it doesn’t work for all situations, like negative growth. But being the curious geek that I am, I also had to prove how I was right and he was wrong, so I set out calculating various growth rates.

It turns out he’s not wrong (being a stubborn older brother, that’s the best I can do). These experiences help to remind me to open my mind. Even when I’m sure I’m right that doesn’t mean the other person is wrong or that there isn’t another way to approach a problem. Seeing solutions from different angles can only help.

Comments closed

Don’t call it a comeback

Time to resurrect the blog.  I have too much I want to share. Twitter is a good outlet for my day-to-day blathering, but I need a forum that will give me more room to stretch my prose.

I don’t want to say that this will be directionless, but at this point I’m not positive what the direction will be; I have a lot of interests. I’m a software consultant who is always learning, an investor who is always investing, a husband who is always making dumb mistakes, a traveler who is never traveling enough and I love most things web related. So that’s a taste of what you can expect me to write about, but I won’t be limiting myself. When the mood strikes, that’s the direction I’ll be heading. The site will be a work in progress for a short-time while I try to get it all setup, but I’ll be writing along the way.

My promise is that I’ll be posting minimally twice a week (Sunday and Thursday). Putting this promise out there is something that will keep me motivated. So follow along.

Comments closed