If you run a of business and any form of credit or debit card information traverses your network, and you have a wireless network attached, you should only be using serious security for the WLANs. By that, I mean Enterprise Auth, preferably based on device certificates. You could use pre-shared key security, as it makes things so much easier to install and maintain, but it can be cracked, not to mention those keys are “the keys to the kingdom”. If a bad guy (hacker, disgruntled employee, etc.) gets a hold of the keys, you’ll have to change them on every remote device to ensure that everything is secure again. Not a fun prospect.
Anyhow, when running certificate-based Enterprise Authentication, there are no known hacks, but an expired cert could cause a device to drop off the network until it could pull a new certificate. Or, something could go very wrong, potentially causing all devices on your WLAN to be unable to authenticate.
So, when you have a hundred remote sites, and someone forgot to update a critical certificate, how do you get all the devices communicating again?
Unfortunately, if you are already in that nightmare situation, it will likely require boots on the ground at all of those sites to fix.
But, if you haven’t already gotten into that disaster scenario, you can do the following steps using the same settings at each location (these aren’t EASY steps, but they can save tons of time and money later):
1. Create a secondary WLAN, protected with WPA2 and a strong pre-shared key.2. This new WLAN should be administratively disabled.
3. We’ll call the SSID “backup” for the sake of this example. It doesn’t matter too much what you call it, since most people will never see it.
4. Configure all of your devices to communicate to both your normal Enterprise Authenticated WLAN and this “backup” WLAN. Ideally, this would be automated and/or part of the initial load image.
When an issue occurs with a device (or, heaven forbid, all your devices):
1. Enable the “backup” WLAN and disable the production WLAN. Devices will see this available WLAN and jump on it.
2. Using a remote admin tool (like RDP) you should now be able to fix the certificate on the problematic device.
3. Once the device has been updated to fix the cert issue, enable the Production SSID and disable the “backup” SSID.
The key to this system is that the PSK should only ever be active for a few hours at a time at specific sites, while a problem is being worked. Once the issue requiring this special SSID is taken care of, it should be immediately turned off. This limits the amount of time that a hacker could have to attempt to crack the pre-shared key.
I do not know how many thousands of dollars implementing this strategy has saved my company, but it’s at least in the tens, if not hundreds.
Using this method gives you the best of both worlds… You get the security of Enterprise Authentication, along with the ease of use of WPA PSK.
Welcome to the Black Friday edition of my blog.
With Christmas coming up, what better time to talk about credit card float?
What is credit card float? Most credit cards give you a grace period, when you are charged no interested if you pay your bill in full. Many use the credit card to pay for something this month, then pay it off next month, avoiding the interest. While this sounds like a smart thing to do, it is really a trap set out before you. Card companies are sly and will wait patiently for you to take the bait.
Let me explain how this can go down. Let’s say it’s October, and you just got a shiny new credit card. You buy groceries, gas, fancy coffee, and everything else you want/need on the card. November arrives, along with your bill, and you pay it in full. Things worked out so well last month, you repeat the cycle. December arrives, along with your bill, and you pay it in full. Hey! Christmas is coming, so you buy everything you normally do, along with all your Christmas presents on your card. Perhaps you spent a little more than you planned, but it’s okay, you’ll be able to cover it in January.
And they probably have just got you snared in the trap. You are most likely now in the situation where you can’t both pay your credit card balance in full and pay for the current months expenses. So, you keep spending on the card to pay it off next month. You are in a self-perpetuating cycle that is very difficult to escape. Once you have gotten into this situation, you are riding the float. You are just one emergency away from having to run a balance from month to month, which is where the credit card company gets the reward for their patience.
Don’t think that Christmas is the only way this can happen. I just used this example because it’s coming up, and it is something that people can easily relate to, but if you continue using your cards in this manner (without budgeting your spending) for any significant length of time, you’ll probably fall into this trap too.
So, how do you escape the cycle?
You must realize that this is really debt that you’ve built up, and you must make the conscious decision to break the cycle.
You need a Budget, so you can start making the best financial decisions that you can make. Seriously, You Need A Budget. This is the software I used to get my financial life in order. You don’t have to use it, but the concepts they teach were key to me getting to a better place, financially.
In my case, I stopped paying my credit card in full each month, and considered it a long-term debt, paying only a portion of it each month. Yes, this means I did have some interest charges, but it was necessary for a short time to break the cycle. I began budgeting my spending so that all of my bills were handled and I knew how much money I had available each month for debt reduction. Within just a couple of months, I had the credit card paid off in full, and I’m now about 2/3rds complete with the task of eliminating consumer debt altogether, all in about 7 months.
I probably could not have done this without You Need A Budget (which I affectionately call YNAB). YNAB is brutally honest about your financial situation. In fact, you might think it’s too honest when you are first starting out. But you need that honesty, so you can fix the problems. The YNAB website has lots of videos showing how to use the software, it has a free 34 day trial, and they even have free classes to help you get started. During the classes, you’ll have the chance to win a free copy of YNAB. They sometimes have sales, but the normal price if $60.
Black Friday Update: I just checked their site and it’s currently on sale for only $30. And, if you click this link, you’ll save $6.00 more.
We have a bunch of apps that run against a database, dating back about 10 years. These apps have grown over the years. The original database was done in MSSQL. The apps that access this are mostly done in PHP. We’ve recently needed to add a few fields to the database, but instead of trying to get them added to the MSSQL database, I took the approach of building a class to access the data. This class actually reads some fields from the original MSSQL database, and others from a MySQL database. The update logic is built into the class, so it doesn’t matter which database contains the field, it will perform the update to the appropriate DB.
So, this has all been working well now for the last 5 or 6 months, and now we want to take the next step. We want to move all the fields that are still relevant to the MySQL database, and just stop using the MSSQL database altogether. This is made more complicated by the fact that numerous apps access the MSSQL database directly. In particular, there is one old VB.NET app that we want to eliminate. I’ve already created a web page that does the majority of the things this old VB.NET app does, and it uses my new class. There’s still a little work to do to get everything, but it’s close.
I’ve been trying to think of how to best handle the DB migration. I see a couple of options:
1. Duplicate the fields exactly (column name included) from the MSSQL DB into the MySQL DB, and have the class stop using the MSSQL DB. This would require all the apps that access the MSSQL DB directly to be switched to MySQL. That’s a lot of work, and will likely take a few days, perhaps even a week or so (especially given this time of year and the vacation days people take). During that coding time, some apps are using the records from MySQL and others are using the MSSQL DB. Since these apps manage the configuration of hundreds of routers and thousands of switches in about 700 remote sites, we really don’t want anything going wrong, as it could be a major pain to fix.
2. Create new fields in the MySQL DB to match the required fields from the MSSQL DB, but name them differently. This gives us the ability to search easily through source code that accesses various field names (the MSSQL versions) to make the MySQL changeover. This would be nice, but I believe this would also require us to code the class so that the class would synchronize the “duplicate” field in the MySQL DB with the appropriate field in the MSSQL DB. If a record is updated using the MySQL field name, it would need to also update the corresponding MSSQL field with the same value. Similarly, if the update used the MSSQL field name, it would need to update the MySQL field. Finally, upon each load of data into the class, we’d need the class to compare the corresponding fields, and if the values weren’t equal, make a decision on which one “wins”, and is then copied into the “loser” field. The start with, we’d probably want the MSSQL side to win. When we are certain we were done with all the code changes across a few servers, then it would be time to drop out the MSSQL code altogether.
I’ll probably give this a good bit more thought, and look through the source code a while before I come to a 100% answer, but I’m leaning toward option #2 at this point. Once the coding is done to the class to keep everything in sync, this should allow us more time to finish the other coding changes.
It’s traditional each year to talk about the things that you are thankful for in the past year.
Here are a few of mine, including a big one that I’m sure would have been a surprise to me this time last year:
First off, I’m thankful for my wife, children, and Church. There are some rough edges with the kids sometimes, but so often I find myself surprised and delighted by them.
I’m thankful that I’m employed in a stable good paying job in a field that I enjoy, working with people I like, while so many others are looking for work.
I’m thankful that my family vehicles have lasted another year, and hoping they will last a few more.
Aside from the people in my life, the one thing that I’m most thankful for is, as strange as this is to admit, software. The personal budget software YouNeedABudget has changed my life this year. It’s changed the fundamental way I think about money and I expect it will have a major effect on the rest of my life. About the only way I could make a major purchase (appliance, vehicle, etc) was on credit. Debt seemed impossible to eradicate. After using YNAB for about 7 months, I’m down from over $20K to about $7.5K in debt and expect that to be wiped out by the middle of 2014. I sleep better, knowing exactly how much money I have (and how much money I owe) and it guides me to make better spending decisions. With this guidance, I don’t expect to wake up in January to Christmas credit card bills I can’t pay. Plus, I expect to be able to send my children to private schools next year. I have peace of mind about money. All of these things, thanks to YNAB.
No, I’m not the author of YNAB (nor do I work for them). I’m just one very thankful user that has seen my life get better because of it. Can I do all the things I want yet? Of course not, but I see a pathway and YNAB is helping me to get there.
Happy Thanksgiving to you all.
One thing the YNAB classes espouse is to only put money into YNAB when it arrives in your account. They say putting money into your budget before it arrives is playing with “monopoly money”. For people who have irregular incomes, and if you aren’t fully buffered, I would agree that putting things into YNAB ahead of when money shows up in your account might lead to some bad things happening. However, if you have a very regular income and are fully buffered, doing this can be helpful, if done wisely.
I’ve been doing this to varying degrees since I started using YNAB. I know what my income is going to be (within a few cents) each month, so I’ve put it in a month or two ahead of time so that I can “run things out” to see what would happen. This type of planning lets me see when various debts (that are part of my debt snowball) will be paid off, and lets me play various “what-if” scenarios. For example, mid-year I had to pay an $1800 fee for a private school by a certain deadline. My planning had me saving up that money, but two months after the deadline, when a $150 fee would be added. I found a 0% interest method that I could borrow the $1800 to pay it off by the deadline, then paid off the $1800 two months later, saving me $150. If I hadn’t have been planning this out, I might have missed that $150 savings opportunity.
As I mentioned in an earlier blog entry, I recently found out that I’m going to a different pay frequency.
I’m currently (as of this writing), being paid monthly. I’m paid the same amount (within a few cents) each month, very near the end of the month. This works out perfectly for YNAB because I’m essentially fully buffered by default. (Being fully buffered means that you are paying for the current months expenses with last month’s paychecks, in case you don’t know YNAB.)
This December will mark the last paycheck I get this way, which will cover all of January’s spending. My first bi-weekly paycheck will cover Jan 1st through 14th, but it will not arrive until the 21st. This check will be for February’s spending. My 2nd paycheck arrives the first week of February, which will also be for February’s spending. It looks to be April (the first time I get three checks in a month) before I will be able to catch up, getting me to the point that I’m fully buffered again. (The 2nd check in March and 1st check in April will be for April’s expenses, and the 2nd and 3rd checks in April will be for May expenses.)
In YNAB, I entered in all of my expected paychecks from now until next September, and I copied my current expenses out through that time frame. I also adjusted the category spending to account for things I expect to happen. Sure, I don’t know exactly what my bi-weekly check will be yet, since it has taxes and other expenses taken out before I get it, but I estimated it by taking my current monthly net pay, multiplying by 12, then dividing by 26. The real number should be close enough to what I’m using that it shouldn’t be difficult to adjust once I find out the real bi-weekly net pay amount. I’m also using estimated numbers for a bonus, and I used Intuit’s website to estimate what I’ll get back on my taxes. This is where it feels like I am getting close to “monopoly money” territory, but I’m using the best estimates I have available.
There is the issue of living off of about 7.7% less money each month (for 10 months out of the year). I was able to handle this largely by not funding my Christmas, Homeowners Insurance, and Property Tax categories until the 2nd time this year that I’ll get three checks in the same month, September. At that point, I can fully fund most of these three categories. All three of these Rainy Day categories fall after September, so it works out from a budgeting standpoint.
Using YNAB to plan in this way helps me feel confident that I can do something that I was very unsure about. You see, I have three children attending private school now, along with one in public high school. She’s in public high school because we couldn’t afford to send her to private school this year. By going through this exercise, I feel fairly confident that I can afford to pay the various registration fees for the two private schools by their respective deadlines, and I can afford to pay the tuition for both schools while keeping current on my other bills. Of course, if my bonus comes in lower than expected, then my entire plan could be in trouble. I should know that before the March registration deadline, though.
If everything goes according to plan, I’ll pay off the last of my consumer debt on June 2nd, and that snowball money will lighten my burden heading into the next school year.
Recently, I got some troubling news. Starting early next year, my job is moving from a monthly pay schedule to a bi-weekly pay schedule.
From what I’ve been told, most people seem to think “Great! That means I’ll have more money!”
Apparently, these people can’t do math. Changing your pay period from once per month to every two weeks does not increase your pay. Your salary is exactly the same, but it can cause you to actually have less money available most calendar months.
Think about it. Instead of getting 12 checks, once per month, this is bi-weekly. So, 52 weeks / 2 = 26 pay checks per year.
Here’s an example so we can see what this does to your salary:
Let’s say you make $50,000 per year. For simplicity, we will use gross, not net.
50K works out to a monthly salary of 4166.67.
If paid bi-weekly, that’s 1923.07 each check.
Here’s where the fun starts… This year, 10 months will have 2 pay periods in them, and 2 months will have 3 pay periods.
For each of those 10 months with only 2 pay periods, you would end up with 3846.14 to live off of those months. That’s $320.53 less each of those 10 months than if you were paid by a monthly salary. That 7.7% of your monthly salary that you won’t see until one of those two months with 3 pay periods.
If you are already tight on money, this shift of 7.7% of your monthly income to other months will make things even tighter.
I’m not sure what benefits the business gets from making this change, except that perhaps it aligns better with the business cycle, so cash flow may be smoother throughout the year. Being that our company is now owned by a venture capitalist company, there’s almost certainly a dollars and cents reason for this move.
Ultimately, if you are budgeting your income and you are aware of what this does to you BEFORE it starts happening, this isn’t a huge problem. If you aren’t aware, however, it can be a rather shocking thing to discover.
The gang at YNAB came out with a new class recently. I attended it and I highly recommend it. I’ve been using YNAB now for more than 7 months, and I’m surprised at how much I learned in this one class. The class covers a few things that I’m not going to talk about, but I’ll cover the two biggies that I didn’t know about:
Yawn! Sounds like something pretty standard, right? That’s what I thought before I saw the demo.
In YNAB, you can import your bank transactions and it will attempt to match them up against transactions that you’ve already entered, and enter the ones you missed altogether. You have to approve all the imported transactions, so you don’t need to worry about accidentally messing up your budget. It makes sure you have categories assigned to each transaction (so it knows where in the budget to take the money from). It learns, too. So, if your bank calls your grocery store “Bi-Lo #5012″ or “Bi-Lo Main Street”, you can change it to just “Bi-Lo”, and future imported transactions from that store will automatically get that name.
This class was essentially suggesting that you can use this feature as a fail-safe to catch any transactions you’ve missed, or if you don’t have a smart phone to enter them in on the go. It’s smart enough not to import the same transaction multiple times, so if you go online and download the last 30 days of transactions to import every few days or so, you won’t get duplicates.
I don’t personally plan to use this feature, because I like the awareness that comes from entering in your transactions as you make them, but I can see this as a selling point for friends who want to use YNAB, but don’t want to enter in their transactions all the time.
I’m a big believer in reconciling your account with the bank. I try to reconcile my accounts as soon as my statements come out, every month. So, what could this section possibly teach me, right?
I’m surprised to say that it was something pretty big. They encourage frequent reconciliation. Like, weekly, or even more often. You don’t have to wait until your statements arrive to reconcile! You can reconcile every day, if you like.
To me, this was really big. I’ve posted in the past how I loved that I can mark off the cleared transactions in YNAB and the “Cleared balance” it shows then matches my bank balance to the penny. Well, that’s the perfect time to perform a reconciliation in YNAB. In that case, just his the Reconcile Account button, it will fill it the Statement Date with today’s date, and the Statement Amount will be your “Cleared Balance” amount. Then, you just hit Begin Reconciliation, and you match to the penny, so just hit the green Finish Reconciliation button.
One related feature I love about YNAB is that you can press a button and hide all your reconciled transactions. This gives me a short list of transactions that I have to look at for each of my accounts. Perhaps I like it because it lets me focus in on current transactions. Whatever the case, I just love that feature. Since I like having a short list of transactions, it bugs me is when I get so many transactions that I have to scroll to see them all. Practically every month, this happens with my AMEX account, since I use it so frequently. Since I now know it is safe to reconcile any time, I do it frequently. This means my list of uncleared transactions stays very short. For example, my Visa card currently has 0 transactions listed because they are all reconciled. My AMEX has 7 from yesterday, today, and the payment that I have scheduled for next Tuesday. If I had stuck with the monthly reconcile schedule, I’d be at almost a full page of transactions, with about two weeks left in the month to accumulate more.
I think I love this feature so much because it gives me confidence. My banks and I agree, to the penny, about how much money I have (or owe) in each account. This confidence in “knowing where I stand” helps me to feel so much better about my finances. Probably helps me sleep better too!
At any rate, I highly recommend signing up for the class yourself. The advantages of the class is that you can ask questions along the way, and at the end of each class, they give away a copy of YNAB.
You can sign up for this class, or any of their other classes, right here. They are completely free.