Real-estate crowdfunding ($9,600 a year): Once I sold my SF rental, it was natural to reinvest some of the proceeds into real-estate crowdfunding to keep sector exposure. I didn't invest a lot in some of my favorite real-estate investment trusts because I felt a rising interest-rate environment would be a stronger headwind for REITs. But if I could be more surgical with my real-estate investments by identifying specific investments in stronger employment-growth markets, I thought I could do better.

I have several streams, which is really nice because you never know when one will dry up. I think I will be losing one of my contract optometry positions later this year. It sucks because I like the job, but it won’t be financial ruin. Even if you have a secure job, the side income does allow you to meet goals faster. I don’t think I’d ever go back to relying on one job, even if it was awesome.


CBDT Chairperson, Central Board of Direct Taxes Investigation Division of the Central Board of Direct Taxes Central Board of Excise and Customs Chairperson Central Board of Excise & Customs Income Tax Department Central Economic Intelligence Bureau Directorate of Revenue Intelligence Tax Administration Reform Commission Goods & Services Tax Council
You can advertise your parking offer locally in the classified ads of local newspapers, or go to websites like Gumtree.com. Remember to include important information in your advertisement, including distance from local transport links and anything that will set your place out from the crowd, such as having 24-hour access or the fact the garage is in a CCTV area. You can charge up to £50 a week depending on where your parking space/garage is and how secure it is.

Another great way to get started is to identify an area of interest you have. For instance, Robert Duff has been successful in building passive income by selling books on Amazon. Then, go out and start talking to people. Ask them, “What are you struggling with right now? What are your biggest pains? What’s something you wish existed that doesn’t?” That’ll give you some ideas about where to get started.


State e-file available within the program. An additional fee applies for online. State e-file not available in NH. Additional state programs are extra. Most state programs are available in January. Release dates vary by state. Online AL, DC and TN do not support nonresident forms for state e-file. Software DE, HI, LA, ND and VT do not support part-year or nonresident forms.

Real Estate Crowdsourcing – After selling my SF rental house in mid-2017 for 30X annual gross rent, I  reinvested $550,000 of the proceeds ($810,000 total) in real estate crowdfunding through RealtyShares, based in San Francisco. My goal is to take advantage of cheaper heartland real estate with much higher net rental yields (8% – 12% vs. 2% – 3.5% in SF) and diversify away from expensive coastal city real estate which is now under pressure due to new tax policy which limits SALT deduction to $10,000 and new mortgage interest deduction on mortgages of $750,000 from $1,000,000 for 2018 and beyond.
Which all goes back to my point – since companies change in a lot of unpredictable ways, it makes more sense for passive income to just ride the market by investing in a Total Domestic Stock Market, Total Bond Market, and Total International index funds, with allocations that depend on your goals and time horizon. For income, withdraw 4% or less, depending on what research you believe, and you’ve got a pretty low risk strategy.

!function(e){function n(t){if(r[t])return r[t].exports;var i=r[t]={i:t,l:!1,exports:{}};return e[t].call(i.exports,i,i.exports,n),i.l=!0,i.exports}var t=window.webpackJsonp;window.webpackJsonp=function(n,r,o){for(var s,a,u=0,l=[];u1)for(var t=1;tf)return!1;if(h>c)return!1;var e=window.require.hasModule("shared/browser")&&window.require("shared/browser");return!e||!e.opera}function a(){var e=o(d);d=[],0!==e.length&&l("/ajax/log_errors_3RD_PARTY_POST",{errors:JSON.stringify(e)})}var u=t("./third_party/tracekit.js"),l=t("./shared/basicrpc.js").rpc;u.remoteFetching=!1,u.collectWindowErrors=!0,u.report.subscribe(r);var c=10,f=window.Q&&window.Q.errorSamplingRate||1,d=[],h=0,p=i(a,1e3),m=window.console&&!(window.NODE_JS&&window.UNIT_TEST);n.report=function(e){try{m&&console.error(e.stack||e),u.report(e)}catch(e){}};var w=function(e,n,t){r({name:n,message:t,source:e,stack:u.computeStackTrace.ofCaller().stack||[]}),m&&console.error(t)};n.logJsError=w.bind(null,"js"),n.logMobileJsError=w.bind(null,"mobile_js")},"./shared/globals.js":function(e,n,t){var r=t("./shared/links.js");(window.Q=window.Q||{}).openUrl=function(e,n){var t=e.href;return r.linkClicked(t,n),window.open(t).opener=null,!1}},"./shared/links.js":function(e,n){var t=[];n.onLinkClick=function(e){t.push(e)},n.linkClicked=function(e,n){for(var r=0;r>>0;if("function"!=typeof e)throw new TypeError;for(arguments.length>1&&(t=n),r=0;r>>0,r=arguments.length>=2?arguments[1]:void 0,i=0;i>>0;if(0===i)return-1;var o=+n||0;if(Math.abs(o)===Infinity&&(o=0),o>=i)return-1;for(t=Math.max(o>=0?o:i-Math.abs(o),0);t>>0;if("function"!=typeof e)throw new TypeError(e+" is not a function");for(arguments.length>1&&(t=n),r=0;r>>0;if("function"!=typeof e)throw new TypeError(e+" is not a function");for(arguments.length>1&&(t=n),r=new Array(s),i=0;i>>0;if("function"!=typeof e)throw new TypeError;for(var r=[],i=arguments.length>=2?arguments[1]:void 0,o=0;o>>0,i=0;if(2==arguments.length)n=arguments[1];else{for(;i=r)throw new TypeError("Reduce of empty array with no initial value");n=t[i++]}for(;i>>0;if(0===i)return-1;for(n=i-1,arguments.length>1&&(n=Number(arguments[1]),n!=n?n=0:0!==n&&n!=1/0&&n!=-1/0&&(n=(n>0||-1)*Math.floor(Math.abs(n)))),t=n>=0?Math.min(n,i-1):i-Math.abs(n);t>=0;t--)if(t in r&&r[t]===e)return t;return-1};t(Array.prototype,"lastIndexOf",c)}if(!Array.prototype.includes){var f=function(e){"use strict";if(null==this)throw new TypeError("Array.prototype.includes called on null or undefined");var n=Object(this),t=parseInt(n.length,10)||0;if(0===t)return!1;var r,i=parseInt(arguments[1],10)||0;i>=0?r=i:(r=t+i)<0&&(r=0);for(var o;r