Tuesday, February 11, 2014

how to pay nanny taxes in north carolina

Demystifying Nanny taxes in the State of North Carolina

Getting Started

Per Paycheck Tasks

  • Withhold Federal Income Tax, Medicare, Social Security, State Income Tax from your nanny's pay.

Quarterly Tasks


These tasks need to be done on or before:
  • April 30th (for the first quarter)
  • July 31st (for the second quarter)
  • October 31st (for the third quarter)
  • January 31st (for the fourth quarter of the previous year)

Yearly Tasks

  • Submit and generate W2 before January 31st (for the previous tax year)
  • File Schedule H before April 15th with your taxes (for the previous tax year)***
  • If you have a dependent day care FSA you can file for a reimbursement before a certain date (Date varies depending on who manages your dependent day care FSA. My deadline is March 31st) (for the previous tax year)
I am not a lawyer or a CPA, but I did sleep at a holiday inn last night. 

Jokes aside, I am not responsible for any of this content. I am just putting it up here in the hope that it might help someone out there. Use this as a guide and not as the word of law. Your situation might be completely different than mine.

*** If you only have household employees you don't need to do the 940/941 forms. You only need to do a Schedule H (Form 1040). (I think)

References:
I used the help of two well written blogs. Some of the authors of these blogs responded to my questions. It would have been much harder for me to do this without their existing documentation and support:
  • http://pixeltheoryinc.com/nanny-tax-how-to.html
  • http://iamemilyanne.com/2013/06/05/hiring-a-nanny-what-you-may-need-to-know-for-north-carolina/

Sunday, March 4, 2012

xbmc timeout on smb

Sometimes XBMC will take a little longer to list all your folders on a SMB share. It may throw an error such as:
"Operation Time out" followed up by "Could not connect to network server"

One way to fix this is to increase the SMB client timeout. This is done by _creating_ the advanced settings file in the following location with the following data:

$ cat /private/var/mobile/Library/Preferences/XBMC/userdata
<advancedsettings>
    <samba>
        <clienttimeout>20</clienttimeout>  <!-- timeout (in seconds) -->
    </samba>
</advancedsettings> 

Thursday, February 16, 2012

bash remove trailing slash


STRING=${STRING%/}


Deletes shortest match of a substring (in this case a forward slash) from back of STRING.

Thursday, January 12, 2012

reboot pogoplug

just got a pogoplug, and started hacking it to do smb mounts on init. One thing I found annoying is that the system does not have the reboot command. I figured out a quick workaround you can run


$ busybox reboot

Saturday, August 27, 2011

capture exit codes of piped commands

In bash, if you run a command like this:

$ foo | bar


The exit codes of all the piped commands get stored into a special bash array ${PIPESTATUS. Specifically, the exit code of foo is in ${PIPESTATUS[0]}, and bar is in ${PIPESTATUS[1]}.

Here is it where it gets tricky - PIPESTATUS is volatile. If you check one array location, the variable gets overwritten. So, if you want to check more than one of the exit codes you need to store the array into another array, like this:


$ foo | bar
$ STORED_PIPESTATUS=("${PIPESTATUS[@]}")

Tuesday, May 10, 2011

Wednesday, April 27, 2011

change sudo timeout

sudo has a timeout value that defaults to 15 minutes on ubuntu 10.10.

15 minutes is a life time for the uber paranoid. So you can change it (to say, 1 minute) like this. First open the sudo config file:


$ sudo visudo


Then append timestamp_timeout with your time limit in minutes. Here I set it to 1 minute:

Defaults        env_reset,timestamp_timeout=1
Note, if you want to disable the sudo timeout you can set timestamp_timeout to -1 (not recommended).