blog

Puppy Tutorial

Tony Teddybear Montant

Meet Tony Teddy Bear Montana. My new family member since October last year.

I wanted to have a dog for a while, but before COViD I was always on the go. Traveling outside of the city or outside of the country at least once a month. My lifestyle was not good for having a dog. Especially a puppy! However, when COViD hit I thought: now or never. My plan was simple: I’ll get a puppy during COViD, and before the pandemic is over he will be a well trained dog.

As raising a puppy is not easy, I decided to journal my experience for the future me and friends. This is not a comprehensive guide as there is a bunch of stuff all over the internet, but I would share my gotchas and notes.

Before puppy arrival

I am all about learning from others and their mistakes. Thus, I read a few books before even getting a dog:
  • Zak George’s Dog Training Revolution – great intro about what having a dog is and how to select the perfect dog breed for you
  • The Art of Raising a Puppy – good set of tips on how to train a puppy from the first days. It has some good ideas about creating a routine for your puppy, etc.
  • The Power of Positive Dog Training – comprehensive guide on how to train a dog with step by step instructions for teaching particular commands. I strongly recommend this one, especially after you figure out the basics (potty training, etc.)
Another things to be aware BEFORE you get a puppy:
  • first days/weeks will be rough – sleepless nights, waking up at 1am, 3am and 5am to take your puppy pee, and constant supervision will be needed
  • the most important is consistency – this is hard, because we humans are not robots; to be most successful with a puppy you need to behave consistently in EVERY situation in order to not confuse him: even getting him food in specific way can be confusing
  • The puppy needs to get used to YOUR schedule – he does not need to go to work, but you do; he does not need to go grocery shopping, but you do; he does not need to take you out, but you need to take him out…you have much more responsibilities than him, and you shouldn’t feel guilty that you are leaving him alone while you are working or taking care of errands

First 2 weeks

It was a little bit more challenging than expected. I was fortunate that my now fiance helped me throughout this experience!

For the first few days you need to sleep next to your puppy’s crate. Yes, you need a crate, otherwise he can do something you don’t want during the night. Like eating things that cannot be taken out without surgery!

It’s really helpful to have your significant other, or friend who would help you during this time. It was a game changer for us when one night, one person was sleeping (and waking up) by Tony’s crate, and another was in the bedroom (with earplugs) getting an actual night of sleep. We were alternating every day.

It’s also recommended to give a limited space to your puppy, and gradually increase it. Giving him access to the entire house might be overwhelming.

Besides that you need to start potty training and basic commands (I recommend The Power of Positive Dog Training for that).

Quick guide to potty training

On the day of arrival, take your puppy out every hour. Ideally to the same spot and wait until he pees. Then increase it by 5 mins every other day or so. The rule of thumb is: puppy can hold pee for as many hours as many months old he is. E.g., 3 months old puppy should be able to hold it for 3 hours. However, always start with 1h. Even if the puppy is 3 months old. Then increase time between breaks gradually.

I recommend increasing the time between pee breaks on Monday, Wednesday, and Friday. This would add 15mins every week, and ~1h every month. It’s better to not do increases on the weekends as weekends are usually more random than working days.

Remember, accidents will happen. There is no way around it. They will eventually stop. Just be patient! When accidents happen: just say “no” and immediately take puppy out to usual pee spot.

First commands

I recommend getting a few sessions with a good dog trainer. You have no idea how the smallest things you do may confuse your dog and be a game changer. Every dog is different, and a few recommendations from an experienced trainer can be a game changer! E.g., our trainer told us: “you are so lucky, your puppy behavior is great for his age…just do not mess him up”.

People do not realize that THEY have to be trained to have a dog as well! If you need recommendations for a good dog trainer in the Seattle area let me know!

I also recommend a copy of The Power of Positive Dog Training.

Initially, I was skeptical with treat training as my friend told me that then the dog will never listen to me if I won’t give him treats. However, our trainer proved this to be not necessarily true. Bottom line is: treats are good for training as they cause your dog to associate good feelings with them. You say command, he does something, he gets a nice reward. Remember to have tasty treats! Later on, he will be on autopilot and treats won’t be needed.

We spent a good amount of time deciding which commands are most important. If I was doing it all over again I would teach in this order:

  1. his name (Tony!)
  2. sit
  3. off – in the first days he will be jumping at people all the time, sometimes with biting (in a playful way); you don’t want him to have that behavior
  4. leave it – in first days your puppy will try to pick up pretty much EVERYTHING from the ground, faster he learns this command the better for his health
  5. wait/stay – we started with stay, but then learned that we need separate commands for: ‘wait and do not move’ and ‘stay and do not follow me’ (e.g., when leaving house); it’s also helpful to show pointing finger as dogs react more to body language than words
  6. come

After the first few days, when the puppy gets used to the new environment you can start moving your bed further and further away from the crate, or by moving the crate further away from your bed (~1ft/day). We actually skipped that step and just went to the bedroom after 2 weeks. For the first few days Tony was whining, but he eventually stopped.

When he was 3 or 4 months old we let him sleep outside of the crate…and it was just fine. Actually, one night when I was locking the crate I just locked one door (we have 2 doors crate), because I thought the other door was locked, but it wasn’t! At the morning I was wondering why he is not barking (AKA asking to go pee), and found him sleeping by our bedroom door 🙂 After that we knew it’s probably gonna be fine to let him sleep outside of the crate 🙂

Socializing

Remember to first vaccinate your puppy. Avoid dog parks, at least at the beginning. Make them meet the best behaved dogs you know. Tony learned a lot from Porter – my friend’s dog who is the best trained dog I know. It was great when Porter stayed with us for a week. We could just tell him what to do, and Tony would simply follow him! Excellent way to teach with little effort.

Sports

Puppies should not run until the age of 6 months. We started with hiking (his first hike at the age of 6 months was 5 miles!), and then running (1 mile: 1min walk, 1 min run, 1.5 miles, 2 miles, 3 miles, etc.).

Swimming is more tricky, as it depends on the breed. Goldendoodles are natural swimmers. Tony’s first swim was when he was in a dog park with Porter (my friend’s dog), and Porter jumped into the water. Tony just followed 😛 After that we took him for 1h dog SPA where he was swimming in the pool with a trainer. We got him a swim vest and then took him for a 5 min swim (250 yards) at the lake. Then we did 1000 yards, and he was just fine. After that he still had energy to run :O

Other tips

  • get pet insurance for the first year – this is the period of time when it’s most likely that something will happen to your puppy. Once you get through the first year that likelihood goes down. Then, again when the dog gets older (10 years or so) it’s worth considering again.
  • do not open crate when he is jumping at the door, wait until he sits and then open crate
  • make him sit before giving food
  • when puppy jumps at you: turn around
  • when you want to avoid him jumping at people on the street separate him from others with your body facing him

useful resources

  • American Kennel Club – a bunch of resources about dogs, you can sign up for a weekly newsletter with tips on what to do at a particular age (8 weeks, 9 weeks, etc.)

This is it for now. I will be updating this when I recall other things or learn some new things.


Notes from Growth Hacking book

Growth Hacking book

Growth Hacker (noun) /’grōth ha-kər/: a highly resourceful and creative marketer singularly focused on high-leverage growth. Growth hackers thrive in resource-constrained environments where money is tight and time is of the essence. Through a mix of creativity and technology, a growth hacker is able to hack through the jungle, uncover buried resources along the way, and construct the tools needed to grow a business. A growth hacker is the figure-it-out-as-we-go adventurer of Indiana Jones mixed with the problem-solving ingenuity of MacGyver.

Growth Hacking: Silicon Valley’s Best Kept Secret is a good end to end overview what you need to take into account when running (digital) business.

It is very simple and trivial, but if you are doing Growth Hacking you need to remember, and remind yourself EVERY DAY that your two primary resources are TIME and MONEY. It is always tradeoff to choose between one of these two, while building a business.

Entire book describes so-called ASP – Automated Sales Process:

  1. Attraction (Acquisition)
  2. First Impression
  3. Engage & Educate
  4. Follow-Up
  5. Sales Technology
  6. Referrals & Retention

Many times, when working on a product, we tend to forget about some of above elements. Most companies focus on acquisition, but forget about first impression or education. For people working on particular product many things are obvious, but most of them might be not obvious for new customers.

Attraction (Acquisition)

Half the money I spend on advertising is wasted; the trouble is, I don’t know which half.

This is not a case anymore thanks to Facebook and Google! With Facebook ads you can target males in their 30s who live in Seattle, with income in range of $100-150k/year.

When creating targeting profile, authors recommend to take following customer signals into account:

  • gender
  • age
  • profession
  • income
  • living location
  • martial status
  • having kids
  • hobbies
  • interests

A clever way to determine specifically where your target customer spends time is to use a tool called SimilarWeb. Enter your competitor’s URLs into the tool, and scroll down to see exactly where their website traffic is coming from. This is a great way to discover places to “steal” clients away from your competition.

The job of growth hacker is to without spending a dollar more on marketing, acquire the most customers in the least time.

The domino theory of growth hacking states that small wins beget progressively larger wins. Your job as a growth hacker is to identify the lead domino, the first tactic to implement, and line up the subsequent dominoes in ascending level of achievability on a path that leads you to your ultimate goal.

Other acquisition techniques:

  • The four primary categories to keep Attraction tactics organized are direct, search platforms, branding platforms, and other.
  • A framework for identifying high-ROI Attraction opportunities is called advertising arbitrage: seek advertising opportunities where advertising inventory supply outpaces advertiser demand.
  • A strategy for creating cost-efficient advertising opportunities is to marry content creation with commerce.
  • Collaboration opportunities exist where your customer base overlaps with a complementary company and is fertile territory for affiliate, joint venture, comarketing, and other similar types of partnership arrangements.

First Impression

Making first impression is hard, but it’s very important. My takeaway from this section is that you should just look at the best first impression strategies that are out there and use fast follow/copy strategy.

It’s far cheaper to stand on the proverbial shoulders of early-adopting giants than reinvent the proverbial wheel. The trick is to figure out whom to follow.

You need to be on top of that all the time, and update/evolve your first impression technique ALL THE TIME.

Engage & Educate

In order to maximize the persuasive effect of your communication, you must make all three rhetorical appeals of persuasion:

  1. ethos (credibility)
  2. pathos (emotion)
  3. logos (logic)

On top of that, you need USP (Unique Selling Proposition) – succinct summary of what differentiates you from competition.

Use customer-centric words and phrases to describe your product:

  • Words to avoid: “we”, “my ”, “us” and “our”
  • Words to use: “you” and “your”

Social proof helps to engage people, because when people are unsure what to do they mimic the actions of others. Especially, if others are people they know or their friends.

Follow-Up

Once you get your customer familiar with your product, you need to remind of yourself.

First step is to get customer information.

It’s important to remember that more information you request from your lead, the more friction there is, which leads to the prospect being less likely to provide the requested information.

Instead of asking explicitly for customer information you can use retargeting campaign using Facebook or Google ads.

There is very thin line between being effective and annoying which may result in losing customer. On the other hand, there is the marketing rule of 7.

The Marketing Rule of 7 states that a prospect needs to “hear” the advertiser’s message at least 7 times before they’ll take action to buy that product or service.

All reach-outs need to follow 4Es:

  1. Engaging
  2. Educational
  3. Entertaining
  4. Emotional

Sales Technology

Upsell – “up” the price by suggesting a more premium product or service.

Cross-sell – encourage you to reach across the aisle and add a complementary product to your order.

Automating your online sales require you to build everything by yourself (time) or use existing solutions (money).

More you automate, and measure the better results and improvements you can make. E.g., sending upsell/cross-sell emails after purchase or even confirmations can help to increase sales.

There is list of recommended tools for automating sales.

Referrals & Retention

Once your customer made the purchase, you need to try to retain him, and encourage to refer your product to others.

Increasing client retention increases Customer Lifetime Value. This allows to spend more on acquisition, which opens up new customer acquisition channels that are otherwise unaffordable.

The most popular and easy retention technique is to send simple holiday or birthday card. However, authors recommend to send holiday cards on less popular holidays, e.g., “Happy Saint Patrick’s Day” card will be more distinctive and more likely to be read than a New Year “Happy Holidays” card

We worked with one of our clients to send a box of See’s chocolates for Valentine’s Day to their top general contractor clients, and they ended up generating more than fifty thousand dollars of contracts from a two – hundred – dollar investment. They also helped several “forgetful” gentlemen look like wonderfully thoughtful husbands when they brought chocolate to their wives on Valentine’s Day.

The best time for applying growth-hacking is after the point of initial purchase at the very bottom of the proverbial funnel.

Testimonial formula: [Specific End Result or Benefit the Customer Received] + [Specific Period of Time] + [Accompanied Customer Emotion] + [Customer Name with Relevant Stats].

Dealing with negative comments, opinions, feedback:

  • Preempt it through satisfaction surveys and other internal feedback forms
  • For a negative truth: admit, apologize, and promote the opposite
  • For a negative lie: state that the comment is inaccurate or invalid, and substantiate your comment

The two primary categories of active referral systems are:

  • financial, e.g, get product after referring a friend
  • in-kind (non-cash), e.g., encourage to share product with friends, or leave review on social media

Summary

I really like this book. Although it doesn’t provide direct recipe for growth, it outlines different stages of customer journey very well.

  1. ATTRACT thousands of interested new leads.
  2. Create a powerful FIRST IMPRESSION to set the tone for a consistent, personalized, and professional experience with your company.
  3. ENGAGE & EDUCATE your prospects so they have all the information they need to feel comfortable buying from you.
  4. Implement a seamless FOLLOW-UP process so that no business slips through the cracks and your company is always top-of-mind.
  5. Use SALES TECHNOLOGY to more efficiently close sales, upsell, and cross-sell products and services.
  6. Generate high-value REFERRALS while RETAINING existing clients.

There is complementary list of resources to dive in more on book authors’ website: deviatelabs.com/resources. Especially, check the list of recommended tools for each part of ASP.

Comfort is a death sentence to progress, and progress is what you seek.


Taking WordPress blog to HTTPS with CloudFlare in less than 10 minutes!

CloudFlare

Making your website secure has never been easier! I was able to take my WordPress blog to HTTPS in less than 10 minutes!

CloudFlare

This part is super easy and straight-forward. Just sign up for CloudFlare, go to cloudflare.com/a/add-site and follow instructions. You can also check this Troy Hunt’s demo to see it in action.

Once you finish, your website will be running on HTTPS!

Additional benefit is taking advantage of CloudFlare cache! For free! As you can see on the below screenshot, in last month: 54/66 GB was served from CloudFlare, only 11/66 GB came from my server!

CloudFlare - cached bandwidth

WordPress

If you have WordPress blog (like I do), above setup will take your website to HTTPS, but all urls (hyperlinks, images, stylesheets etc.) will be still HTTP. This will result in mixed content error.

I love WordPress because every problem you may have was already solved by somebody else 🙂 In this case problem is solved by CloudFlare Flexible SSL Plugin.

Multiple domains

If you have multiple domains pointing to your blog, things are a little bit more complicated: WordPress Multisite SSL with domain mapping using Cloudflare .

Summary

If you want to learn more about HTTPS, check out What Every Developer Must Know About HTTPS. It is also worth to remember that HTTPS might be faster than HTTP!

Is your website secure? Why not?


How to save money on Azure with WebJobs

This blog is hosted on Azure. It is using WordPress, which stores its data in MySQL database hosted by ClearDb. I blogged about the issues with WordPress database size over a year ago. The issue is inserting transient entries into database that are growing its size and exceeding free 20MB ClearDB limit. As I mentioned in this blog post – you can use plugins that clear database for you, or…you can use web jobs. Azure WebJobs is very neat way to perform custom tasks, such as database maintenance, periodically.

I created a web job that is performing database maintenance for me. Everyday it removes ‘transient’ entries from wp_options table to keep my MySQL database under 20MB ClearDB limit.

One problem was: how to do MySQL backup without mysqldump? As you know, there is a Virtual Machine underneath every Azure website. And this VM has MySQL, along with mysqldump installed:

Azure Console: mysqldump

Based on this article I created a small Console App called DbMaintenance that performs 3 mentioned tasks:

  1. Backup database
  2. Remove transient entries from wp_options table.
  3. Backup database

Two backups gives me more confidence that I have my database backed up correctly. Especially because I am performing them before and after the operation that potentially can broke things.

You can customize my app by editing Initialize method. Current paths (for mysqldump and database backup directory) are set for Azure Website. Additionally you have to create directory for backups (D:\home\db-backups). You can do it from the web app console available on the Azure Portal:

mkdir D:\home\db-backup

Once this is done, you need to zip DbMaintenance.exe and MySql.Data.dll file, and create a WebJob. On the Azure Portal go to your web app -> Settings -> WebJobs, and add a new WebJob:

Azure Portal: add WebJob

You can see the status in Settings -> WebJobs -> YOUR_JOB_NAME:

azure webjobs

By clicking on logs column, you can get details about web job:

Azure WebJob: details

And console output from each execution:

Azure WebJob: console output

I configured my WebJob to run everyday. You can also run it on demand, or continuously.

You can find more about Azure WebJobs in this article.


The best domain registrar is Google

I moved all my domains (jj09.net, jedryszek.com, jakubjedryszek.com)

from:

GoDaddy

 

to:

Google Domains

I wanted to move to DNSimple (like Troy Hunt and Scott Hanselman), but I have only 3 domains, and with DNSimple I would have to pay at least $64 (bronze plan = $50/year with 2 free domains + 1 domain for $14), or $80/year (with silver plan that offers up to 10 free domains). That was pretty expensive in comparison to my current price at GoDaddy $44.97 (3 x $14.99).

I started looking for other registrars and I found Google, which beats GoDaddy and DNSimple with price definitely: $12/year for domain with privacy protection (on GoDaddy and DNSimple you have to pay additional $8/year per domain).

Thus for 3 domains with privacy protection I pay $36/year. On GoDaddy I would have to pay $68.94 (almost twice as much), and on DNSimple – $88 (more than twice as much)!

A lot of people love DNSimple interface. Google Domains UI is also super simple. Try it!

For a while I was wondering, where is a catch, but I didn’t find any. This and that article confirms that Google Domains is a new serious player on the domains market.

What domain registrar are you using?