fbpx

Latest News and Updates

iPad keyboard

Keyboard Options with the iPad

Did you know your could ‘flick’ a key down to type a different character? How about split or undock the keyboard on the iPad? You can also use multiple keyboard or even dictate to your iPad. In this lesson, from my upcoming Tutor for iPad, I show how all this works and more. This lesson is one of the longer ones, but I believe it will have something for everyone.

macOS Catalina

Upgrading to macOS Catalina? You may want to wait.

Are you planning on upgrading to macOS Catalina? You may want to wait a bit. Why? macOS Catalina brings a lot of changes to your Mac, mostly good. The OS is more secure, and Apple separated iTunes into three apps, as an example. But with these changes also come complications. If you use an app outside of iTunes to manage your music, that app may no longer work. Software used by DJs seems to be the one I am hearing about now.

Tutor for iPhone

Using QuickPath to Type on the iPhone with iOS 13

Apple introduced a new way to type with iOS 13 on the iPad – QuickPath or Slide-to-Type. This is something that was available through apps you downloaded through the App Store in the past, but in my experience, they never worked that well. Well not any more! Apple’s implementation is nearly perfect. It really does work great. Take a look at how it works in this video.

Would you like to know about any upcoming classes I am having? Sign up to my Newsletter.

Free Membership

I am offering a free account for 30 days - totally free! No payment information is needed or asked for. You'll have instant access for 30 days, no strings attached.
Scroll to Top
[mepr-membership-registration-form id="25875"]
<div class="mp_wrapper"> <form class="mepr-signup-form mepr-form" method="post" action="/category/news/page/8/#mepr_jump" enctype="multipart/form-data" novalidate> <input type="hidden" name="mepr_process_signup_form" value="1" /> <input type="hidden" name="mepr_product_id" value="25875" /> <input type="hidden" name="mepr_transaction_id" value="" /> <div class="mp-form-row mepr_bold mepr_price"> <div class="mepr_price_cell_label">Price:</div> <div class="mepr_price_cell"> Free for 30 days. Enter your name, email address, and create a password to sign up. </div> </div> <div class="mp-form-row mepr_first_name"> <div class="mp-form-label"> <label for="user_first_name2">First Name:*</label> <span class="cc-error">First Name Required</span> </div> <input type="text" name="user_first_name" id="user_first_name2" class="mepr-form-input" value="" required /> </div> <div class="mp-form-row mepr_last_name"> <div class="mp-form-label"> <label for="user_last_name2">Last Name:*</label> <span class="cc-error">Last Name Required</span> </div> <input type="text" name="user_last_name" id="user_last_name2" class="mepr-form-input" value="" required /> </div> <input type="hidden" class="mepr-geo-country" name="mepr-geo-country" value="" /> <div class="mp-form-row mepr_email"> <div class="mp-form-label"> <label for="user_email2">Email:*</label> <span class="cc-error">Invalid Email</span> </div> <input type="email" name="user_email" id="user_email2" class="mepr-form-input" value="" required /> </div> <div class="mp-form-row mepr_password"> <div class="mp-form-label"> <label for="mepr_user_password2">Password:*</label> <span class="cc-error">Invalid Password</span> </div> <input type="password" name="mepr_user_password" id="mepr_user_password2" class="mepr-form-input mepr-password" value="" required /> </div> <div class="mp-form-row mepr_password_confirm"> <div class="mp-form-label"> <label for="mepr_user_password_confirm2">Password Confirmation:*</label> <span class="cc-error">Password Confirmation Doesn't Match</span> </div> <input type="password" name="mepr_user_password_confirm" id="mepr_user_password_confirm2" class="mepr-form-input mepr-password-confirm" value="" required /> </div> <div class="mp-form-row mepr_math_captcha"> <div class="mp-form-label"> <label for="meprmath_quiz"><span id="meprmath_captcha-5f366e4c134d2"></span>*</label> </div> <input type="text" name="meprmath_quiz" id="meprmath_quiz" value="" class="mepr-form-input" /> <input type="hidden" name="meprmath_data" value="OTM0ZjY3ODE1NTM5ZTJkOTU3ZDMxODU1MTBlMGJjNDI=" /> <script> function mepr_base64_decode(encodedData) { var decodeUTF8string = function(str) { // Going backwards: from bytestream, to percent-encoding, to original string. return decodeURIComponent(str.split('').map(function(c) { return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2) }).join('')) } if (typeof window !== 'undefined') { if (typeof window.atob !== 'undefined') { return decodeUTF8string(window.atob(encodedData)) } } else { return new Buffer(encodedData, 'base64').toString('utf-8') } var b64 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=' var o1 var o2 var o3 var h1 var h2 var h3 var h4 var bits var i = 0 var ac = 0 var dec = '' var tmpArr = [] if (!encodedData) { return encodedData } encodedData += '' do { // unpack four hexets into three octets using index points in b64 h1 = b64.indexOf(encodedData.charAt(i++)) h2 = b64.indexOf(encodedData.charAt(i++)) h3 = b64.indexOf(encodedData.charAt(i++)) h4 = b64.indexOf(encodedData.charAt(i++)) bits = h1 << 18 | h2 << 12 | h3 << 6 | h4 o1 = bits >> 16 & 0xff o2 = bits >> 8 & 0xff o3 = bits & 0xff if (h3 === 64) { tmpArr[ac++] = String.fromCharCode(o1) } else if (h4 === 64) { tmpArr[ac++] = String.fromCharCode(o1, o2) } else { tmpArr[ac++] = String.fromCharCode(o1, o2, o3) } } while (i < encodedData.length) dec = tmpArr.join('') return decodeUTF8string(dec.replace(/\0+$/, '')) } jQuery(document).ready(function() { document.getElementById("meprmath_captcha-5f366e4c134d2").innerHTML=mepr_base64_decode("NyArIDUgZXF1YWxzPw=="); }); </script> </div> <input type="hidden" id="mepr_coupon_code-25875" name="mepr_coupon_code" value="" /> <div class="mp-form-row"> <div class="mepr-mailpoet-signup-field"> <div id="mepr-mailpoet-checkbox"> <input type="checkbox" name="meprmailpoet_opt_in" id="meprmailpoet_opt_in" class="mepr-form-checkbox" checked='checked' /> <span class="mepr-mailpoet-message">Sign up for my newsletter</span> </div> <div id="mepr-mailpoet-privacy"> <small> We Respect Your Privacy </small> </div> </div> </div> <div class="mp-form-row mepr_invisible_recaptcha"> </div> <div class="mepr_spacer">&nbsp;</div> <div class="mp-form-submit"> <label for="mepr_no_val" class="mepr-visuallyhidden">No val</label> <input type="text" id="mepr_no_val" name="mepr_no_val" class="mepr-form-input mepr-visuallyhidden mepr_no_val mepr-hidden" autocomplete="off" /> <input type="submit" class="mepr-submit" value="Sign Up" /> <img src="https://www.danstutorials.com/wp-admin/images/loading.gif" style="display: none;" class="mepr-loading-gif" title="Loading icon" /> <span class="mepr-form-has-errors">Please fix the errors above</span> </div> </form> </div>