Who needs a Budget?



  • Three months ago: I'm handed a new project: add a utility import some data from an Excel spreadsheet into our database. Ok, no big deal. During the import process, the data needs to be checked, and any problems should be flagged for correction. This should all be done with a spreadsheet appearance, but also embedded in the web UI. Well, this just a little trickier.

    Good news! They already bought a third party software package to help me with this project: Spread Studio for .NET. No problem, it's made by ComponentONE and they're pretty good about their documentation, so I'll start reading up on how to use it in website that runs on the .NET 3.5 framework.

    Ok, so our license is for version 8. Well, the documentation says that it requires ... at least .NET 4.0. That'll slow me down a little, but we were planning on upgrading the site to 4.5 this year anyway, so it's already in the budget. So I gather the requisite quote from our supplier for Visual Studio 2013 and submit it to my boss, and he passes it on for financial approval.

    Six weeks ago: Still nothing on the VS purchase. That means our quote has expired. The COO asks me about the project, and I tell him all I know. The next day, my boss calls me in for a meeting. I'm told to get a new quote. Contact the vendor, and get back a quote for almost double the earlier price. After some digging, it turns out that at the time of our first quote, we were in a preferred tier due to our purchasing in the preceding year. However, in the five weeks since that quote was provided, we had fallen out of the preferred tier, and so our costs went up. I passed the new quote, with the explanation on. With my company being, well, a company, I was told to get quotes from other vendors. All the other quotes I got basically matched the most recent quote, but I passed them on as requested.

    Present: It has now been about six weeks since I got the last set of quotes for Visual Studio (so they are all, once again, expired), and still no progress has been made. I have discovered that it is the COO who is blocking the release of the funds to purchase the needed licenses. And I've also been given two additional projects that rely on this upgrade.

    All this leaves me wondering: why do we even have a budget?



  • @abarker said:

    why do we even have a budget?

    To block spending money, needed or not.



  • But they could do that even without a budget. As illustrated in my OP:

    @abarker said:

    but we were planning on upgrading the site to 4.5 this year anyway, so it's already in the budget.

    and yet:

    @abarker said:

    I have discovered that it is the COO who is blocking the release of the funds to purchase the needed licenses.

    So, to rephrase: if we aren't even following the budget, why do we have one?


  • Grade A Premium Asshole

    How much money are we talking about here? Are we just talking about VS Pro 2013?

    @abarker said:

    All this leaves me wondering: why do we even have a budget?

    Is this an annual budget? A per project budget?



  • @Intercourse said:

    How much money are we talking about here? Are we just talking about VS Pro 2013?

    VS Ultimate 2013, 2 licenses (small team). We could probably get away with pro, but the CIO and I decided that we want some of the added features in Ultimate.

    @Intercourse said:

    Is this an annual budget? A per project budget?

    Annual budget.



  • @abarker said:

    if we aren't even following the budget, why do we have one?

    Following the budget isn't the point, it's an excuse to not spend money as they are normally not visible to all but a few. Having it in writing somewhere means that you can point to paperwork and say "can't" even if people aren't allowed to see the paperwork.

    In short it allows you to blame things on something else over there, basically letting you set up a Kafka-esque organisation and thus evade blame (moral responsibility is debatable) for problems.


  • Grade A Premium Asshole

    @abarker said:

    VS Ultimate 2013, 2 licenses (small team). We could probably get away with pro, but the CIO and I decided that we want some of the added features in Ultimate.

    Yeah, that is a chunk of change.

    @abarker said:

    Annual budget.

    Annual budgets may be a bigger productivity killer than the meeting. I hate annual budgets. There are two likely outcomes:

    1. You fall short of cash towards the end of the year and everyone cuts corners that should not be cut.

    2. You run a surplus and people burn money at the end of the year because of this stupid notion that, "If you do not use it this year, you lose it for next year."

    The third, but least likely outcome is that everything goes perfectly and you spend the last dollar on the last day of the fiscal year...

    Annual budgets kill productivity, innovation and agility. Three things absolutely essential for success in business these days. The only saving grace is that almost everyone does it, so most companies are equally handicapped.



  • @Intercourse said:

    You run a surplus and people burn money at the end of the year because of this stupid notion that, "If you do not use it this year, you lose it for next year."

    At many places that isn't a stupid notion (but it is a dumb thing to do). I'm aware of several companies (employer and some customers thereof) that limit your budget to last year's with maybe a small increase, but last year's is capped at what was spent. So if you had $300k budgeted and only spent $250k next year's budget is $250k + increase (and as you got by on less than budgeted you obviously don't need an increase).



  • @Intercourse said:

    Annual budgets may be a bigger productivity killer than the meeting. I hate annual budgets.

    I hate them for the same reasons you gave. But we are currently only about 6 months into our fiscal year, and the IT department is not (yet) close to over budget. It's basically coming down to our COO blocking the funds in this case.


  • Grade A Premium Asshole

    @locallunatic said:

    At many places that isn't a stupid notion (but it is a dumb thing to do). I'm aware of several companies (employer and some customers thereof) that limit your budget to last year's with maybe a small increase

    Which is an absolutely stupid thing to do. It is the equivalent of Discourse gamification for cash flow. ;) Budget periods should be evaluated independently of last period. Just because you made due with $X last period does not mean that works for next budget period.

    And anyone who tells me they can accurately forecast expenses and cash flow 12-15 months into the future is lying. If they could do that reliably, they would be much better off as a day trader.


  • Discourse touched me in a no-no place

    Agreed. It's unfortunately pretty normal in my experience.



  • @Intercourse said:

    Which is an absolutely stupid thing to do.

    But it is a easy rule to just apply across the board. Otherwise you either need someone that can estimate what a group/division/whatever you use for subsections of company will need that is independent of said group or to ask the group what they need. The first is more people on the payroll which is obviously always bad. The later is asking to be gamed by those trying to make their own kingdom inside the company.


  • Grade A Premium Asshole

    @locallunatic said:

    But it is a easy rule to just apply across the board. Otherwise you either need someone that can estimate what a group/division/whatever you use for subsections of company will need that is independent of said group or to ask the group what they need. The first is more people on the payroll which is obviously always bad.

    If you are of the size that you are doing annual budgets, then you should be of the size to have someone in a controller/CFO role. Across the board rules are wrong to some degree in almost every situation that they address.



  • @locallunatic said:

    But it is a easy rule to just apply across the board. Otherwise you would need someone to make intelligent decisions.

    Of course, then they would also be responsible for those decisions. You're not likely to get in trouble for following a process that's well-established, even if brain-dead.



  • Budget = what it costs now and what it will cost down the road.



  • Oh yeah, been there.

    Yeah, we have a budget for five new servers this year, but when it comes time to finally relieve the burden on the 3 year-old Exchange/Phone System Reporting/File Server, there's no funds available.



  • @Bort said:

    Of course, then they would also be responsible for those decisions.

    Which is why it isn't used, similar to my earlier explanation of why budgets at all:

    @locallunatic said:

    In short it allows you to blame things on something else over there, basically letting you set up a Kafka-esque organisation and thus evade blame ... for problems.


  • Discourse touched me in a no-no place

    @abarker said:

    The COO asks me about the project, and I tell him all I know

    I have discovered that it is the COO who is blocking the release of the funds to purchase the needed licenses.

    Don't you wish you could say "well, we'd have the project done by now if you wouldn't keep stopping it?"



  • @FrostCat said:

    @abarker, pot:1, topic:2879 said:
    The COO asks me about the project, and I tell him all I know
    ...
    I have discovered that it is the COO who is blocking the release of the funds to purchase the needed licenses.

    Don't you wish you could say "well, we'd have the project done by now if you wouldn't keep stopping it?"

    So much. Unfortunately, I'd probably end up looking for a job if I said something like that. Our COO has quite the temper, and I'm actually surprised that we haven't been sued by at least one former employee for having a hostile work environment.

    But that's a whole other story.


  • Discourse touched me in a no-no place

    So here's my version of this story.

    My company partners with another company MUCH larger than us. It's not as bad ad "Joe-Bob's Software partnering with Microsoft" but the disparity's close enough to this large for the point of this tale.

    We make software that fills a huge hole in their lineup; they resell it with a profit-sharing arrangement, and we maintain an interface that allows real-time data transfer between the two things.

    So with their latest release of their project, they moved away from the language they used to use, which we also use, and went to .Net and MSSQL. They started breathing down our necks for an update to our interface, so I got them to install a copy of their software on one of our servers and I updated our interface, and did all the testing I could, and shipped the interface to them. In March. They were in a hurry because they have customers they want to upgrade to the newest version, and they have new customers they want to sell the new product to, but they can't really do it because of the interface.

    So after a couple of weeks I asked them what the holdup was. Turns out they were a reseller of the language we used, and I have the feeling they may have walked away from the relationship in a less-than-friendly fashion. So now they won't spend the ~$3500 full price for a copy of the dev environment, so they can't test the interface.

    Now remember they're much bigger than us. They sell their software all the time to companies at a six-figure price and a five- or six-figure ongoing annual maintenance, but that $3500's too big a cost to get past. Never mind that there's a time-limited free demo.

    So yeah, it's now September and we're still waiting for them to test the interface, and I know a couple of our customers are putting implementations on hold.


  • Discourse touched me in a no-no place

    @abarker said:

    So much. Unfortunately, I'd probably end up looking for a job if I said something like that.

    Well, of course. That was assumed.

    Our COO has quite the temper

    Sounds like a case could be made for looking for a better job, with the obligatory "FU" to the COO on the way out the door. I've always said I'd do that in such a case.



  • Have a like, just for the shared misery.



  • @FrostCat said:

    Sounds like a case could be made for looking for a better job, with the obligatory "FU" to the COO on the way out the door. I've always said I'd do that in such a case.

    If the CIO wasn't in the process of setting up a new company to transfer the entire software department into, I'd agree with you. Once the transfer is done, I should never have to deal with this COO again. At the rate things are moving, that gives me 4 months (tops) of having to deal with him. I've already decided that if the new company falls through, I am looking for a new job.



  • In about 3 more months.

    In the meantime, how about mono? It's reasonably well supportive of .net 4.0 functionality...

    Or you could just download vs 2013 express, it beats VS2008 when working on .net 4.0...



  • @Matches said:

    In the meantime, how about mono? It's reasonably well supportive of .net 4.0 functionality...

    Or you could just download vs 2013 express, it beats VS2008 when working on .net 4.0...

    There's pretty much no chance getting either of those approved. This company isn't too fond of "unofficial" solutions, like mono. As for VS 2013 Express ... that might actually be a viable option. I just wonder what features we'd be missing out on in the meantime (and I can't find feature lists for the different Express versions).

    In either case, I don't think I should go for it. If we started moving forward on these projects, we'd lose our leverage to justify the purchase of a more fully featured version of VS.

    And now I'm TRWTF for playing the office politics game.



  • I mostly just miss resharper in VS2013. You'd also miss mix-n-match platforms like a console app + web app solution, but that can be worked around by getting the desktop/web versions and switching back and forth (not ideal, but also free).

    http://www.visualstudio.com/en-US/products/visual-studio-express-vs

    There's a link saying 'Some features may not work as expected' but it's blocked at my work, so, um, go look yourself.



  • @Intercourse said:

    And anyone who tells me they can accurately forecast expenses and cash flow 12-15 months into the future is lying. If they could do that reliably, they would be much better off as a day trader.

    I don't see how this is so difficult. It's just simply accounting and planning ahead.

    • First of all, you have on-going license costs. There's no guess work involved in this, just do an audit to take stock of what you have to pay for and then refer to the license agreements.
    • You schedule what equipment and software upgrades (segregated by department as need for larger companies) are going to happen when, looking a few years down the line.
    • You should be aware of all projects and any new acquisitions those projects need (if their purchases have to come through you) before pitching for the budget period they will occur in.
    • Finally, you keep a reserve for emergencies (whether it's replacements or maintenance for something that's unexpectedly bit the dust, or an unexpected acquisition).
    • Allow a small contingency on all the above for any fluctuations.

    Also, part of the reason the "spend it or lose it" mentality exists is because the further up the chain you go, the more they don't care about why you didn't need to spend all your budget that period, it's more the fact that you didn't, and so you shouldn't need to again.

    It's better to think of it as a card with a credit limit that gets paid off (not by you) every x time units. If you don't max it out before it gets paid off, then that's money you've missed out on spending. If you want to make the case for getting a higher limit, you need to be continually hitting that limit, otherwise it's going to be decided for you that whatever methods you're using of saving money can be expanded on to save even more money, so you'll only need lower and lower limits.


  • Grade A Premium Asshole

    @Spencer said:

    I don't see how this is so difficult. It's just simply accounting and planning ahead.

    You are oversimplifying. Yes, you should have capital reserves, but cashflow still has volatility. Unless you have all of the money upfront to fund the next year, I can guarantee that your numbers will be way off of projections. You can try and shoehorn your sales to meet those numbers, and you should. The problem lies in that when you try to make quarterly numbers, you generally do so by getting the low-hanging fruit from upcoming sales quarters.

    It works better the larger your company is also. Larger companies generally have longer term contracts that pay on a schedule, but there are still a large percentage of shorter term contracts that may not be renewed, may be renewed for a smaller or larger amount, etc.

    Unless you have a time machine, it is a lot more than just accounting and planning ahead.



  • @Spencer said:

    reserve for emergencies (whether it's replacements or maintenance for something that's unexpectedly bit the dust, or an unexpected acquisition).

    A reserve for emergencies AND a reserve for maintenance.



  • Ah yes, of course. Pretty sure I meant to have maintenance separately, though I might have subconsciously included it under upgrades (they don't have to be major rollouts) or on-going costs.



  • @abarker said:

    I'm handed a new project: add a utility import some data from an Excel spreadsheet into our database.

    I'm so sorry (unless that spreadsheet is simple enough to be represented as CSV, and even then...).

    @abarker said:

    So I gather the requisite quote from our supplier for Visual Studio 2013 and submit it to my boss, and he passes it on for financial approval.

    No MSDN license?



  • hmmmm

    berdgjert

  • Discourse touched me in a no-no place

    @Matches said:

    There's a link saying 'Some features may not work as expected' but it's blocked at my work, so, um, go look yourself.

    The meat of the content. (The rest is standard MS boilerplate knowledgebase blather.)

    #IntelliTrace: Performance Details page does not display as expected
    When you use IntelliTrace to examine a log file that contains a performance violation event, you might experience issues after you click to view further details about the violation. The Performance Details page contains information about the execution tree of a performance violation event; however, when Internet Explorer 10 or higher is not installed, the Execution Tree section might appear blank and you also might encounter an error message.
    #Debug Managed Memory feature displays a blank page and an error dialog
    When you open a managed dump file that contains heap information, the summary page includes an option to Debug Managed Memory. If you click this option when Internet Explorer 10 or higher is not installed, the resulting document window might be blank and you also might encounter an error message. If you encounter an error message, you can dismiss the error and then close the document window.
    #Load Testing with Team Foundation Service - Load Test Runner results do not render as expected
    When you use Load Testing with Team Foundation Service and you select the option to Load Test Manager and then Load Test Runner, the page that displays information about the test results might not render correctly when Internet Explorer 10 or higher is not installed.
    #JavaScript Console and DOM Explorer windows do not display as expected
    When you use Visual Studio 2013 for Web development and Internet Explorer 11 is not installed, the JavaScript Console and DOM Explorer windows do not display as expected. These features require Internet Explorer 11: If you are using Internet Explorer 10, you might encounter an error message that indicates these features are unsupported by your current browser; if you are using Internet Explorer 9 or earlier, the windows appear blank but you do not encounter the error message.



  • @locallunatic said:

    At many places that isn't a stupid notion (but it is a dumb thing to do). I'm aware of several companies (employer and some customers thereof) that limit your budget to last year's with maybe a small increase, but last year's is capped at what was spent. So if you had $300k budgeted and only spent $250k next year's budget is $250k + increase (and as you got by on less than budgeted you obviously don't need an increase).

    Which is why, come December I end up buying almost random crap to ensure whatever's left is juiced out. Still got a box of retail copies of Office 2013 from last years insanity, to eventually replace 2007 on a few PCs.



  • @Groaner said:

    I'm so sorry (unless that spreadsheet is simple enough to be represented as CSV, and even then...).

    Unfortunately this is how one of our clients ([spoiler]Innotel[/spoiler]) insists on passing needed information to us. They update the file each week before sending it to us, and the file contains about 5k rows on a slow week.

    @Groaner said:

    No MSDN license?

    They let it lapse about 2 years ago.


  • Grade A Premium Asshole

    @abarker said:

    Unfortunately this is how one of our clients (Innotel) insists on passing needed information to us. They update the file each week before sending it to us, and the file contains about 5k rows on a slow week.

    This sort of WTFery is what happens when you support an API until the heat death of the universe. @blakeyrat ;)



  • @Intercourse said:

    This sort of WTFery is what happens when you support an API until the heat death of the universe. @blakeyrat ;)

    Unfortunately, we don't have the leverage in this situation. They are the client and the significantly larger company, so we have no choice in the matter.


  • Grade A Premium Asshole

    @abarker said:

    Unfortunately, we don't have the leverage in this situation. They are the client and the significantly larger company, so we have no choice in the matter.

    I know, I just try not to pass up the opportunity to take the piss out of @blakeyrat.



  • And the POSIX APIs aren't about as old as the Windows API?



  • @Intercourse said:

    This sort of WTFery is what happens when you support an API until the heat death of the universe.

    No, process an excel file to get data is what happens when your client dictated interchange format is designed by their business people rather than technical people (and often means that someone technical on their side has to be jamming things into excel so that it can be sent to you). I know I've had to both send and receive excel to do data exchange (deal with insurance companies).



  • I have experienced a situation that involved at least six conference calls with an insurance company (each consuming at least four man-hours between both ends) before a C-level on our end stepped in to ask why we were wasting so much time without getting a developer on their end on the call.

    There was further delay after that (apparently their developers are allocated to projects for months in advance) but now we have a process in place that monitors to confirm that what they receive from us is, in fact, what we send them...and it doesn't even use Excel!



  • @kilroo said:

    and it doesn't even use Excel

    Lucky bastard.



  • For some reason, I read this as "Who Needs a Bridget?"


  • Discourse touched me in a no-no place

    @locallunatic said:

    No, process an excel file to get data is what happens when your client dictated interchange format is designed by their business people rather than technical people (and often means that someone technical on their side has to be jamming things into excel so that it can be sent to you). I know I've had to both send and receive excel to do data exchange (deal with insurance companies).

    It could be worse. The interchange format could be powerpoint presentations…




Log in to reply