INFP. Ruby/Javascript/Java/C. Piano, accompanist. Catholic. Marathon runner who lost 28% of weight. @tech0x20
6 stories
·
3 followers

The C language specification describes an abstract computer, not a real one - The Old New Thing - Site Home

1 Comment

If a null pointer is zero, how do you access the memory whose address is zero? And if C allows you to take the address one past the end of an array, how do you make an array that ends at 0xFFFFFFFF, since adding one to that value would wrap around?

First of all, who says that there is a byte zero? Or a byte 0xFFFFFFFF?

The C language does not describe an actual computer. It describes a theoretical one. On this theoretical computer, it must be possible to do certain things, like generate the address of one item past the end of an array, and that address must compare greater than the address of any member of the array.

But how the C language implementation chooses to map these theoretical operations to actual operations is at the discretion of the C language implementation.

Now, most implementations will do the "obvious" thing and say, "Well, a pointer is represented as a numerical value which is equal to the low-level memory address." But they are not required to do so. For example, you might have an implementation that says, "You know what? I'm just going to mess with you, and every pointer is represented as a numerical value which is equal to the low-level memory address minus 4194304. In other words, if you try to dereference a pointer whose numeric value is 4096, you actually access the memory at 4194304 + 4096 = 4198400. On such a system, you could have an array that goes all the way to 0xFFFFFFFF, because the numeric value of the pointer to that address is 0xFFBFFFFF, and the pointer to one past the end of the array is therefore a perfectly happy 0xFFC00000.

Before you scoff and say "That's a stupid example because nobody would actually do that," think again. Win32s did exactly this. (The 4194304-byte offset was done in hardware by manipulating the base address of the flat selectors.) This technique was important because byte 0 was the start of the MS-DOS interrupt table, and corrupting that memory was a sure way to mess up your system pretty bad. By shifting all the pointers, it meant that a Win32s program which dereferenced a null pointer ended up accessing byte 4194304 rather than byte 0, and Win32s made sure that there was no memory mapped there, so that the program took an access violation rather than corrupting your system.

But let's set aside implementations which play games with pointer representations and limit ourselves to implementations which map pointers to memory addresses directly.

"A 32-bit processor allegedly can access up to 2³² memory locations. But if zero and 0xFFFFFFFF can't be used, then shouldn't we say that a 32-bit processor can access only 2³² − 2 memory locations? Is everybody getting ripped off by two bytes? (And if so, then who is pocketing all those lost bytes?)"

A 32-bit processor can address 2³² memory locations. There are no "off-limits" addresses from the processor's point of view. The guy that made addresses zero and 0xFFFFFFFF off-limits was the C language specification, not the processor. That a language fails to expose the full capabilities of the underlying processor shouldn't be a surprise. For example, you probably would have difficulty accessing the byte at 0xFFFFFFFF from JavaScript.

There is no rule in the C language specification that the language must permit you to access any byte of memory in the computer. Implementations typically leave certain portions of the address space intentionally unused so that they have wiggle room to do the things the C language specification requires them to do. For example, the implementation can arrange never to allocate an object at address zero, so that it can conform to the requirement that the address of an object never compares equal to the null pointer. It also can arrange never to allocate an object that goes all the way to 0xFFFFFFFF, so that it can safely generate a pointer one past the end of the object which behaves as required with respect to comparison.

So you're not getting ripped off. Those bytes are still addressable in general. But you cannot get to them in C without leaving the C abstract machine.

A related assertion turns this argument around. "It is impossible to write a conforming C compiler for MS-DOS because the C language demands that the address of a valid object cannot be zero, but in MS-DOS, the interrupt table has address zero."

There is a step missing from this logical argument: It assumes that the interrupt table is a C object. But there is no requirement that the C language provide access to the interrupt table. (Indeed, there is no mention of the interrupt table anywhere in the C language specification.) All a conforming implementation needs to do is say, "The interrupt table is not part of the standard-conforming portion of this implementation."

"Aha, so you admit that a conforming implementation cannot provide access to the interrupt table."

Well, certainly a conforming implementation can provide language extensions which permit access to the interrupt table. It may even decide that dereferencing a null pointer grants you access to the interrupt table. This is permitted because dereferencing a null pointer invokes undefined behavior, and one legal interpretation of undefined behavior is "grants access to the interrupt table."

Read the whole story
stringsn88keys
4268 days ago
reply
hmm. if you got access to a memory location and then did a[-(however many elements back to zero)] it might work.
Louisville, KY
Share this story
Delete

Make a Photo Stream into a Public Website Easily, Anytime from iOS

1 Comment

iCloud icon, for Photo Stream Now that the simple photo sharing service Photo Stream is an integral part of the camera experience in iOS, you’re probably aware there’s an option to create a public website during the process of creating a new shared photo stream. But you also turn any existing photo stream into a public website too, so if you missed out on creating one through the initial sharing setup there’s no need to create a new stream, just toggle a setting to instantly make a public website out of a photo stream.

The auto-generated photo websites are excellent ways to share your iPhone pictures with someone who doesn’t have iOS and Photo Stream support, since the photo website can get sent to any Windows PC, Mac, Android device, literally anything with a web browser will be able to view the result.

Turn Any Photo Stream into a Photo Website

You can do this on any iPhone, iPod touch, or iPad with Photo Stream support. Photo Stream requires iCloud.

  • Open “Photos” and tap the “Photo Stream” button at the bottom
  • Photo Stream icon

  • Tap the blue (>) arrow button next to the name of the Photo Stream
  • Change Photo Stream settings

  • Flip the switch next to “Public Website” to ON
  • Optionally, tap the “Share Link” button and send theURL for the newly crafted photo stream website through email, iMessages, Twitter, or Facebook

Make a photo stream website

You’ll briefly see a spinning wait cursor and the text “Publishing…” as the page is being generated. Then, the URL will be shown below, but they’re not the most user-friendly or memorable URL’s, making the Share Link feature the best way to send out the link for others to see the pictures.

How about the websites themselves? They’re minimal but quite nice, displaying thumbnails of the shared photos against black backgrounds, each can be clicked for a larger version with some additional options to either flip through the rest as a self-controlled or automated slideshow, and there’s also a button to download the picture locally.

Photo Stream sample website

Remove the Public Website of a Photo Stream

Alternatively, what if you setup a public website of a photo stream by accident, or what if you no longer want the website visible but you still want the photo stream to exist? You can toggle the website option off on a per-stream basis again, there’s no need to delete the entire photo stream.

  • Open “Photos” again and tap the “Photo Stream” button
  • Tapping the blue (>) arrow button next to the name of the Photo Stream, then flip the switch next to “Public Website” to OFF

Remember, disabling the Photo Stream website will not disable that photo stream itself, and it will not delete the pictures, it only removes the publicly accessible website.

Disabling a Photo Stream website

The once accessible public website will instantly disappear, and if the URL was known before it will disappear with anyone trying to access the shared picture website seeing this cutesy error message instead:

iCloud page not found error

Have fun!

Read the whole story
stringsn88keys
4275 days ago
reply
I don't know if sharing as a public website is really useful for me & Photo Stream, but I like it anyway
Louisville, KY
Share this story
Delete

Regarding fake projects and loyalty tests

1 Comment
Regarding fake projects and loyalty tests
Read the whole story
stringsn88keys
4276 days ago
reply
Regarding fake projects and loyalty tests.
Louisville, KY
Share this story
Delete

My Very Own Protocol Droid

1 Comment

Thirty-six people work at 37signals. Only six of us don’t have iPhones. Out of the six of us, three have Androids. I just recently became one of the Android minority.



I’ve been a die-hard “Apple evangelist” for over twenty years — first an avid Mac user, then an early adopter of both iPod and iPhone. In the 90s, when everyone I knew used Windows, I tried to switch them to Mac. In the 2000s, when everyone had Creative-brand MP3 players, I tried to switch them to iPod and iTunes. A few months ago I switched from iPhone to Android. Now the running joke is that I’ve become an Android evangelist.
4 Specific Jobs Android Does Better
In all seriousness I’m surprised I like Android as much as I do. I don’t want this to be yet another tech-blog “Why I switched to Android” essay. There are a bunch of those online already. This is not a manifesto about the “openness” of Android. This isn’t a “these are the apps I installed to approximate my old iPhone” article either. Instead, this is my personal experience with both iPhone and Android. I’ll focus on 4 specific jobs I believe Android is better at than my old iPhone: 1. Audio on-the-go.
I know what you’re thinking: iPhone does this perfectly well. And it does, to a point. With the iPhone, I had problems with Bluetooth streaming. While driving I’d play something from my iTunes library via Bluetooth. The music would stream from the iPhone to the car stereo. Absolute magic. Sometimes I’d switch to Spotify for the Radio feature. Again, awesome. Exiting and entering the car then reconnecting via Bluetooth, however, would reveal a quirk. iPhone always defaulted to the iTunes library. It didn’t matter if I was listening to Spotify when I left the car. Once I got back in the car and the Bluetooth connection was established, bam iTunes. Thanks iPhone, I don’t want iTunes now actually. I want Spotify.
I’m also an iTunes Match customer. iTunes Match is Apple’s “cloud music” offering. That means the music doesn’t have to physically be on the iPhone. When you play a song it will stream from the iTunes Match “cloud”. The problem with this is sometimes iTunes Match flakes out. In my case it would flake out quite a bit. Sometimes it would take a while to authenticate. Sometimes it would hang on a song because of buffering.
This wasn’t a huge annoyance for me though. Twenty years of using Macs conditioned me to think, “well, that’s the Apple way.” It’s such a small price to pay for such a user-friendly device. Besides, why does this annoy me? I should be grateful. This is incredible technology. Apple is probably working on a fix with iOS 7. It’s not a big deal.
Then I switched to Android.

When I first connected Android to the car Bluetooth I thought, “wow, that was 5 minutes faster than the iPhone.” Most importantly, Android appreciates that I use different apps for listening to music. When I listen to Spotify, exit and enter the car and reconnect via Bluetooth, Android still serves up Spotify.
Google’s cloud music offering also seems to work better than iTunes Match. There’s less start-up lag. Google will even allow you to add up to 20,000 songs from your iTunes library for free. For example, I pre-ordered the new David Bowie album exclusive to iTunes a few months ago. It was downloaded this morning on iTunes. In less than a minute I’m listening to it on Android. Between Google Music and Spotify I’m pretty well covered.
What started as a small annoyance on the iPhone became an eye-opener on Android. Since the introduction of the iPod and iTunes, I saw Apple as a leader in the world of digital music. While my iPhone music problems were minor, I had assumed there simply was no better way other than the one Apple had designed. Yet here was Android doing it just a little bit better. Maybe Apple didn’t have it figured out after all.


2. Photo and video librarian.
Everyone I know with an iPhone uses it as their primary camera (it’s one that’s always with you). So when Apple announced Photo Stream I was excited. Photo Stream works like this: Take a picture with your iPhone, it gets pushed to “the cloud”. Your computers, Apple TVs, and other iOS devices can see that photo too. I thought, “Finally! I won’t have these photos taking up space on my devices!”
Unfortunately that wasn’t the case. Every photo I took with my iPhone stayed on my iPhone, but was also copied to my computer. Each iPhone picture takes up space on every one of my devices. The more pictures I take, the more space it takes up. What I thought was a convenience was actually an annoyance.
Photo Stream is actually confusing when you think about it. The photos are uploaded to Apple’s servers, but they don’t stay there. Apple’s servers merely broker the transaction between devices. Worse yet, Photo Stream doesn’t work with videos. I took a video of my 4-year-old doing a perfect cartwheel. It was awesome. But it’s stuck on my iPhone.
Android works differently (at least in my case).

Every image and video I take with Android gets privately uploaded to Google’s servers into my Google + account. It’s instant backup of all the photos and videos I’ve taken with Android. All of these photos and videos are browsable from the Gallery app. I can safely delete all my camera roll images to free up device storage. The best part is that the images and videos are browsable from all my devices and they take up zero storage. If I want I can download a high res version any time.
Android lets me keep taking photos and videos of my family and friends. It doesn’t force me to download every photo onto my computer like Photo Stream does. Google even organizes those photos and videos for me on their there servers (sorted by date). Android allows me to browse them without downloading. It works the way I had hoped Photo Stream would.
3. My trusted assistant.
I believed Siri was the future when I saw it work for the first time. Are you kidding me? I can ask my iPhone something, and it’ll tell me the answer!? That’s sci-fi awesome. Siri might well be the future, but I think the approach is slightly off.
The problem begins with the fundamental interaction. You need to ask Siri first. Then Siri tells you. Think about that for a moment. You have an assistant, and you have to always ask. John, can you do this? Sam, what happens next? Zooey, is it raining outside?
Android has a Siri-like trick. You can ask what the weather’s going to be like. You can ask about baseball stats or restaurants nearby.

But the Android assistant is also proactive. It doesn’t wait for you to ask for something. Android will somehow tell you what you want to know without you needing to ask. Here’s a concrete example:
I was in the Chicago suburbs having my car serviced. It was getting close to afternoon rush hour. Traffic in Chicago during afternoon rush hour can be fairly unpredictable. At 2-3:00pm roads can be jammed, or they might be fine. As I left the mechanic Android notified me: 30 minutes to Home. Take this route → Sure enough, Android told me what route to take to avoid traffic and I got home in 30 minutes. I didn’t have to ask. Android knew.
Android proactively tells me about my friends birthdays, if packages from Amazon have shipped, when to leave to get to an appointment on time. I haven’t had to ask Android anything. The Android assistant knows what I want to know, and when I want to know it. Skynet becomes sentient when?
4. Easy on the budget.
I was trained to believe there was only one way to have a top-notch smartphone experience: buy a $300 phone from Apple and sign a 2-year $90/month contract with AT&T. Then I took some time to think it through. That’s a lot of money to pay for the convenience of checking Facebook, texting friends, and listening to music in the car. I’m sure you’re reading this saying to yourself, ”$90/month? That’s nothing.” Sorry, you’ve been conditioned.
With Android (and T-Mobile) I killed my contract. Now I pay just $30/month. For $30/month I have unlimited texts, unlimited data, free tethering, and 100 minutes of talk (I average 30 minutes of talk every month). That is 1/3 the cost of iPhone. I haven’t had any coverage problems in Chicago.
So what?
I’ve told you the 4 reasons why I switched. I’d like you to switch too — or at least give Android a real try. I run in some heavy iOS-user social circles. You might too. As makers and builders we need to stretch out a little. We need to get some alternative stimulation. Apple has had a lock on us for a good while. The other side isn’t as scary as Phil Schiller, Senior Vice President of Worldwide Marketing at Apple, would like you to believe. It’s actually quite nice.
One More Thing
I hardly used my old iPhone as a phone. I use my Android even less so. A few months ago Jony Ive, Senior Vice President Industrial Design at Apple, said something that resonated with me:

“If we’re thinking ‘Lunch Box’ we have to be really careful about not having the word ‘Box’ already give you a bunch of ideas that could be quite narrow. We’re very careful with the words we use because they can determine the path that you go down.”


Could it be that the word “phone” in iPhone limits the future of that device? On the other hand, the word “android” is more versatile. “Android” is a wonderfully geeky word. It conjures up visions of C-3PO from the movie Star Wars. He is a protocol droid designed to serve human beings, fluent in over six million forms of communication. I wonder what 3PO’s fate would have been if he was named C-3P-phOne…

Read the whole story
stringsn88keys
4276 days ago
reply
37signals: 4 specific jobs Android does better
Louisville, KY
Share this story
Delete

Slow Cooker Baked Potatoes - An easy way to "bake" regular and sweet potatoes without oven heat

9 Comments and 12 Shares

Cooking just doesn't get much easier than this. You may be thinking, "It's not difficult to bake potatoes in the oven." I agree. But, here's what I love about this slow cooker method for "baking" potatoes:

  • It doesn't require any oven heat; that's especially a plus during the hot summer months when you don't want to heat up the kitchen by having the oven on for an hour.
  • The potatoes can be started in the slow cooker in the morning and forgotten until it's time to eat them with dinner--no fuss, no stress!
  • They can be prepped the night before, so all you have to do on a busy morning is plug in the slow cooker.

This is so easy, it's kind of hard to call it a recipe. It's really more of technique. I first learned about this from a Martha Stewart recipe.  Here's how to bake spuds the easy way:

Step-by-step photos for making
Slow Cooker Baked Potatoes

Step 1. Assemble the ingredients:

  • potatoes: Idaho, Yukon gold, and sweet potatoes all work well. I prefer organic potatoes, especially since I like to eat the nutrient-rich skin. You can cook whatever quantity suits you, as long as you don't fill your slow cooker more than 3/4 full. I can fit approx. 4 lbs of spuds in my 6.5 qt. slow cooker.
  • olive oil -- this is optional, but it adds flavor while the spuds cook
  • salt & pepper -- also optional, but adds flavor; I prefer freshly ground sea salt and black pepper
  • herbs, garlic powder, other seasonings -- all optional. I normally just stick with salt and pepper; but you can add more flavors, if you like.

view on Amazon:
My 6.5-qt slow cooker (rated #1 by Cooks Illustrated)
Oxo salt & pepper grinders (My son recommended these and they are awesome--there's a dial to easily adjust from fine to coarse grind. They work better than any grinders I've used before)

IMG_8159.jpg

Step 2. Wash and scrub the potatoes, removing any rotten or bad spots. I like to use a 3-M scrub pad for scrubbing. Although they're made for scrubbing dishes & pots, they work great for scrubbing potatoes, because they're flexible and can get into every nook and cranny. These scrubbers are widely available at grocery and discount stores (Target,WalMart) and are also available on Amazon.

     view on Amazon: 3M Scotch Brite scrub pads

Let the potato skins dry on the outside before proceeding. It only takes a few minutes.

Step 3. Prick each potato with a fork--approx. 6-8 times per potato. This keeps them from exploding when steam builds up inside as they cook.

Slow_Cooker_Baked_Potatoes1.jpg

Step 4. Place potatoes on a large baking sheet or dish (to contain the mess), drizzle a little olive oil on each one, and rub oil all over each potato with your hands.

Step 5. Sprinkle on salt and pepper, or whatever other herbs or seasonings your little heart desires.

Slow_Cooker_Baked_Potatoes2.jpg

Step 6. Wrap each potato individually in aluminum foil, sealing them up tightly. I use pre-cut aluminum foil sheets that I bought at Costco. They are so convenient and also available on Amazon.

    view on Amazon: economy priced aluminum foil sheets

Slow_Cooker_Baked_Potatoes3.jpg

Step 7. Place the wrapped potatoes in the slow cooker, foil seam side up. No need to grease the inside of the crock pot or add any liquid. Cook them dry--there's no mess or clean up when you're through. Cook them on low for 8 hours (slow cooker times may vary), until tender when pressed with fingers.

  • Note: It's important not to over-fill your slow cooker. If you do, the potatoes on top won't get done before the ones on the bottom are overcooked. I fill mine approx. 3/4 full.

Slow_Cooker_Baked_Potatoes6.jpg

Done! Remove the foil, cut the potatoes across the top, press in the two ends toward the center, and the potato should open up.

The results:

  • The inside is moist and delicious. The slow cooking time enhances the natural sugars in the potato, so they taste a bit sweeter than when they're baked in the oven. 
  • They don't have the white, dry, fluffy texture of potatoes baked in the oven. Slow cooking makes them more moist and sweet. Both taste good; they're just different.
  • You may notice that the flesh next to the skin has darkened. That's because the pigment and flavors from the skin and olive oil have been absorbed into the potato. Taste's great, so you don't need to avoid eating those darkened areas (as long as you were careful to remove any rotten spots before cooking them).

Slow_Cooker_Baked_Potatoes5.jpg

Regular white Russet potatoes, Yukon Golds, and sweet potatoes all turn out great in the slow cooker. The flavor of the sweet potatoes is A-MAZING! My favorite--and they are crazy nutritious.

Slow_Cooker_Baked_Potatoes7.jpg

OOPS ALERT! Here's how a Russet potato looked that was overcooked in the slow cooker. I had left a couple of cooked potatoes in my slow cooker and thought I'd turned it off but actually turned it on high. 2 hours later, I discovered darkened, overcooked potatoes. Yuck. Lesson learned. 

IMG_8226.JPG

 

Many ways to enjoy baked potatoes...

Serve them as a side with a meal.

  • They're traditionally topped with sour cream & chives. For a healthier alternative, try Greek yogurt or my healthy sour cream substitute that's made with cottage cheese.
    view Healthy Sour Cream Substitute recipe

IMG_7569.jpg

Serve them as a main course.

  • Have a Baked Potato Bar with topping options for loading them up. This makes a fun family meal or party buffet. You can prep all the toppings ahead of time and slow cook the potatoes during the day, so everything is ready at dinner time. Easy!
    view my Baked Potato Bar topping tips and recipe

IMG_0056closeup.jpg

IMG_0044_Recipe.jpg

Make soup with the leftovers.

IMG_8451teaserfix.jpg

There are so many ways to enjoy baked potatoes, and using a crock pot makes them easier than ever to prepare.

Make it a Yummy day!
Monica

Link directly to this recipe Print this recipe
Baked Potatoes in a Slow Cooker
By Monica
Ingredients
  • Russet, Yukon Gold, or sweet potatoes -- enough to fill your slow cooker no more than 3/4 full*
  • olive oil (1-2 tablespoons for 4 lbs. potatoes)
  • salt & pepper
  • other seasonings, optional (garlic powder, herbs, etc.)
Directions
You need: a slow cooker and aluminum foil

Directions: Wash, scrub, and cut out any bad spots from potatoes. Wipe them dry and let them sit until skin is visibly dry all over (they should dry within a few minutes). Prick each potato 6-8 times with a fork. Place potatoes in single layer on baking sheet or large dish, drizzle with olive oil, and use hands to rub a thin coat of olive oil evenly all over the potato skin. Sprinkle with salt & pepper (and other herbs or seasoning, if desired). Wrap each potato individually in a piece of aluminum foil. Add potatoes to slow cooker, foil seam side up, being careful that it's not more than 3/4 full. Cover and cook on low for 8 hours (slow cooker times may vary), until tender when pressed with fingers.

*approximately 4 lbs of potatoes can be cooked in a 6-1/2 qt. slow cooker.
Print this Recipe Share this Recipe






Read the whole story
brittany
4276 days ago
reply
I can't believe I didn't know you could bake potatoes in a slow cooker! Best news ever!
San Francisco
stringsn88keys
4276 days ago
reply
I want a loaded baked potato now--slow cooker baked potatoes.
Louisville, KY
Share this story
Delete
6 public comments
eg
4267 days ago
reply
Had no idea you could cook potatoes this way!
Michigan
ryanbrazell
4272 days ago
reply
My love of potatoes is never-ending.
Richmond, VA
smadin
4275 days ago
reply
!!! mind blown. Also that baked sweet potato w/asparagus and…feta? is v. intriguing.
Boston
Courtney
4275 days ago
reply
uh, Darius, we're doing this FYI.
Portland, OR
4275 days ago
ohhh my god
Courtney
4271 days ago
UPDATE: Darius made these today. Will report tomorrow live on twitter how they turned out (he did the cinnamon + sweet potato variant).
4269 days ago
I made good old russets on Saturday and even though they cooked a little too long (I was at rehearsal), they were AMAZEBALLS.
Courtney
4269 days ago
Sweet potatoes: EQUALLY AMAZEBALLS.
bodly
4276 days ago
reply
Now I just need to get a new slow cooker...
Austin, TX

Rule of Thumb: When To Pay Off The Mortgage Early

1 Comment

There was a lot of good discussion in my lengthy early mortgage payoff post. Now instead of lengthy details, let me try out a quick rule of thumb about early mortgage payoff. Recall from Wikipedia:

A rule of thumb is a principle with broad application that is not intended to be strictly accurate or reliable for every situation. It is an easily learned and easily applied procedure for approximately calculating or recalling some value, or for making some determination.

So roughly applicable to many – but not all – situations.

Early Mortgage Payoff Rule of Thumb

You should time your mortgage payoff date to coincide with the date of retirement, or semi-retirement. Here, I would define retirement or semi-retirement as a time when you’ll be wholly or partially dependent on non-work income like Social Security, pensions, annuity payments, stock dividends, or other investment income. A downshift into a lower-paying second career would count as a semi-retirement.

In my humble opinion, this quick and dirty rule will help you balance the opportunity to invest in potentially higher-returning investments (stock mutual funds, dividend-paying stocks, real estate, high-yield bonds) with pursuing the benefits of having a fully-owned house (less stress, less leverage, lower required monthly expenses, lower required withdrawals from investments and thus lower marginal tax rates).

Example 1. 20s, 30s, 40s with long future career. You love your job and/or want to be doing it for the next 25+ years. In this case you have lots of human capital and a regular stream of income. You also won’t be needed to cash out your retirement assets for a long-time, making it much more likely that your stocks will achieve their higher average returns. Take on the 4% interest rate fixed for 30 years, and over time your salary will rise with inflation while your payment stays the same.

If anything, you could do a DIY biweekly payment plan and pay off your mortgage in under 24 years with less “pain” due to a behavioral trick (works best for those on a biweekly paycheck schedule).

Example 2. Anyone with early retirement goals. If you want to retire early, I like the idea of either renting forever and keeping your options open (especially if you travel or move around a lot) or paying off the mortgage early. Early retirement with a paid-off house is great because your expenses are lower, which means you need a much smaller investment portfolio. Being able to live on a lower income also means a very low tax rate. In fact, with a mix of Traditional and Roth IRAs, we’ve seen that you could withdraw over $50,000 a year and still pay zero taxes on retirement.

If say you wanted to retire in 10 years, then you could try to set up an automatic extra principal prepayment to achieve that while still saving for retirement in tax-deferred accounts. Obviously, this is a lot easier said than done, you may need to adapt to a cheaper house if you don’t have adequate income.

Example 3. 50s-60s with traditional ~age 65 retirement goals. Similar to the scenario above, I wouldn’t take on another 30-year mortgage if I was going to retire in 10 years. As you get older, you’ll also want to shift your investments to more stable options like bonds and/or single premium immediate annuities. Stocks are still good in proper doses, but you’ll have less time to wait out a prolonged bear market. In addition, a mortgage-free couple could look forward to covering a large chunk of their expenses with Social Security (based on an average payment of ~$15,000 a year per person, $30,000 a year for a couple), further reducing the need to take on more risk. I simply hate the idea of having to worry about the stock market when I can’t simply jump back into the workforce.




Rule of Thumb: When To Pay Off The Mortgage Early from My Money Blog.


© MyMoneyBlog.com, 2013.

Read the whole story
stringsn88keys
4276 days ago
reply
(mostly trying out Newsblur sharing)
Louisville, KY
Share this story
Delete