Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

How Intuit Manages 10 Million Lines of Code

Unknown Lamer posted more than 2 years ago | from the lots-of-pasta dept.

Programming 304

CowboyRobot writes "Intuit launched QuickBooks in 1992, and it has grown into the best-selling retail software for small-business accounting worldwide. QuickBooks is available on multiple platforms with different feature sets (Pro, Premier, Enterprise), in specialized editions (accounting, contracting, etc.), is available on CD or via subscription, and is offered in localized versions for the U.S., Canada, and the U.K. How they manage so many builds is a case-study for large scale programming. 'The Windows version is about 80,000 source files, 10+ million lines of C++ code plus a little C# for the .NET parts. Plus help files, tax tables, files defining local accounting rules, tax and other government reporting forms, upgrade offers — a lot of files. Every customer gets the full version. Specific feature sets are turned on and off with the license key.' And the lessons are not just technical. 'One surprising lesson is that small teams work, even for very large codebases — especially, Burt says, in sustaining an entrepreneurial, creative culture.'"

Sorry! There are no comments related to the filter you selected.

Bah. (-1, Offtopic)

Black Parrot (19622) | more than 2 years ago | (#40825007)

Real programmers keep their code on punch cards.

Or toggle patterns written on a napkin.

Re:Bah. (4, Funny)

russotto (537200) | more than 2 years ago | (#40825039)

Given that they haven't managed to come out with a native version of Quicken for Mac in over 6 years, I suspect that they kept that code on a napkin... then lost the napkin.

Re:Bah. (1)

larry bagina (561269) | more than 2 years ago | (#40825089)

Well they did finally re-compile Mac Quicken 2007 for x86 (only $15! to upgrade) so I guess they found the napkin. After a year of searching for it.

Re:Bah. (1)

eruci (1546315) | more than 2 years ago | (#40825101)

They still do not support quickbooks for mac. I had to find a windows machine just for it

Re:Bah. (4, Insightful)

WiiVault (1039946) | more than 2 years ago | (#40825295)

Mac user or not Quicken like Intuit is a joke of a "pro" software company. When Symantec looks to hire people who can pack more useless lines of CPU hogging code they must hire from these guys. How this company has kept it's niche is beyond me.

Re:Bah. (2)

Spy Handler (822350) | more than 2 years ago | (#40825861)

they wrote "about 8 million" lines of code to run a theme park on a little island back in the early 90's, so 10 million lines for Quickbooks 2012 seems reasonable.

Re:Bah. (3, Informative)

DogDude (805747) | more than 2 years ago | (#40825437)

Quickbooks and Quicken are similar only in that they are owned by the same company. They are not related in any other way. It sounds like you're giving too much weight to the "Quick" part of the names.

Re:Bah. (1)

Anonymous Coward | more than 2 years ago | (#40825593)

Well, it could be an indication that this software management philosophy of "11 million lines of ancient C++ isn't a problem if you have the right attitude!" is shared.

Re:Bah. (1)

stephanruby (542433) | more than 2 years ago | (#40825473)

So this Quicken Essentials [intuit.com] for Mac isn't the Quicken you wanted?

Re:Bah. (5, Funny)

shugah (881805) | more than 2 years ago | (#40825655)

People who own Macs don't understand technical geeky things like numbers and are way too cool for accounting.

Re:Bah. (5, Funny)

gmhowell (26755) | more than 2 years ago | (#40825807)

People who own Macs don't understand technical geeky things like numbers and are way too cool for accounting.

Considering we overpay for everything and buy new iShinies every 3-6 months, I'd say keeping track of our finances is even more important for us than for you bottom feeding 99%ers and your 'PCs'.

Re:Bah. (1)

gmhowell (26755) | more than 2 years ago | (#40825793)

Given that they haven't managed to come out with a native version of Quicken for Mac in over 6 years, I suspect that they kept that code on a napkin... then lost the napkin.

They kept it on a floppy drive. They weren't sure how to access it when they got their new iMacs. They got someone to copy it to a CD, but that was at the same time their MacBook Airs showed up.

Re:Bah. (4, Funny)

JoeMerchant (803320) | more than 2 years ago | (#40825081)

Real programmers kept their code on punch cards.

Or toggle patterns written on a napkin.

FTFY

My college took out the card punching stations the semester before I took Fortran, though they still had the vacuum drum reader and used it occasionally. And, of course, the CRT terminals were inputting card format - first six characters for line number, 78 characters per line max.

The fossilized prof told stories of entering assembly op codes, in octal, with rotary dial interfaces.

Now, get off my... um, I forget, but get off it, NOW!

Re:Bah. (0)

Anonymous Coward | more than 2 years ago | (#40825151)

How Intuit Manages 10 Million Lines of Code?

Very carefully. Next question!

Re:Bah. (2)

SuluSulu (1039126) | more than 2 years ago | (#40825165)

Real programmers keep their code on punch cards.

No, real programmers do it by hand. [sacbusiness.org]

-2000 Lines Of Code (5, Insightful)

Osgeld (1900440) | more than 2 years ago | (#40825029)

n early 1982, the Lisa software team was trying to buckle down for the big push to ship the software within the next six months. Some of the managers decided that it would be a good idea to track the progress of each individual engineer in terms of the amount of code that they wrote from week to week. They devised a form that each engineer was required to submit every Friday, which included a field for the number of lines of code that were written that week.

Bill Atkinson, the author of Quickdraw and the main user interface designer, who was by far the most important Lisa implementor, thought that lines of code was a silly measure of software productivity. He thought his goal was to write as small and fast a program as possible, and that the lines of code metric only encouraged writing sloppy, bloated, broken code.

He recently was working on optimizing Quickdraw's region calculation machinery, and had completely rewritten the region engine using a simpler, more general algorithm which, after some tweaking, made region operations almost six times faster. As a by-product, the rewrite also saved around 2,000 lines of code.

He was just putting the finishing touches on the optimization when it was time to fill out the management form for the first time. When he got to the lines of code part, he thought about it for a second, and then wrote in the number: -2000.

I'm not sure how the managers reacted to that, but I do know that after a couple more weeks, they stopped asking Bill to fill out the form, and he gladly complied.

http://folklore.org/StoryView.py?story=Negative_2000_Lines_Of_Code.txt [folklore.org]

point is, just cause you can manage it, doesnt mean 10,000,000 lines of code is really something to brag about, especially for something that feels as cheap as quickbooks (though it does a ok job if your accountant cant use excel and must have things that visually represent checks)

Re:-2000 Lines Of Code (5, Insightful)

Lev13than (581686) | more than 2 years ago | (#40825103)

point is, just cause you can manage it, doesnt mean 10,000,000 lines of code is really something to brag about, especially for something that feels as cheap as quickbooks (though it does a ok job if your accountant cant use excel and must have things that visually represent checks)

If your accountant is using Excel to run your books that means it's time to get a new accountant.

Re:-2000 Lines Of Code (5, Insightful)

Osgeld (1900440) | more than 2 years ago | (#40825145)

excel is a tool not a solution

quickbooks is more of a solution, but like the the 150 piece toolkit for 19.95 at harbor freight, it may do the job just fine, it may snap under the load

Re:-2000 Lines Of Code (1)

AuMatar (183847) | more than 2 years ago | (#40825257)

I joke that in my last job I fixed two bugs on my first day without writing a single line of code. One bug required me to add a line, one required me to remove a line. Net LOC of 0. And a completely useless measure for my day.

Re:-2000 Lines Of Code (5, Insightful)

Sir_Sri (199544) | more than 2 years ago | (#40825369)

doesnt mean 10,000,000 lines of code is really something to brag about

No, but managing 10 million lines of code successfully is something to brag about.

However it got there, it's there now, and trying to figure out what to do with it, in a way that gets customers their product, teams their appropriate access, doesn't break every time a new intern looks at it, and can track changes back to individual employees so you can evaluate them somehow.

I'm not saying this isn't a problem other people haven't solved - certainly they have, but different solutions may offer some pieces of unique insights.

Re:-2000 Lines Of Code (1)

Anonymous Coward | more than 2 years ago | (#40825745)

No, but managing 10 million lines of code successfully is something to brag about.

Depends on what you mean by managing. If by managing you mean keeping it a stable, problem free, high quality piece of software while extending it and keeping it up to date, then I agree. But demands vary. I could "manage" the 400000 LOC of the space shuttle flight guidance system just fine, because the space shuttle's retired.

Most SMB software of Intuit's age is in quality decline, however, because the SMB software market does not reward good software engineering practices. Large businesses, which pretty universally have custom written management software, do care slightly more because the eventual cost will catch up with them. Of course, they discount future costs compared to present profits, so there's a lot of bad code there as well, but not half as much as in COTS small and medium business software. There the cost of bad software is well hidden and eventually distributed over many, many companies.

Re:-2000 Lines Of Code (2)

sapgau (413511) | more than 2 years ago | (#40825661)

point is, just cause you can manage it, doesnt mean 10,000,000 lines of code is really something to brag about, especially for something that feels as cheap as quickbooks (though it does a ok job if your accountant cant use excel and must have things that visually represent checks)

I don't think this is your typical criticism for bloat. Just managing an annual mountain of tax laws and applying them correctly would easily go over thousands of lines. Fine lets use Excel to do that, what is the limit for tabs in a workbook? I bet VB will be a tiny bit slower calculating your tax refund and lets hope it doesn't blow the stack.

Re:-2000 Lines Of Code (1)

cheesybagel (670288) | more than 2 years ago | (#40825851)

Since they have US, Canadian and UK versions of the software I doubt the tax rules are hardcoded.

Re:-2000 Lines Of Code (0)

Anonymous Coward | more than 2 years ago | (#40825775)

If the form asks how many lines he wrote, why is he including lines he deleted?

Do you "write" deleted lines? No.. then stop being a smart ass and put what you wrote on the form.

Not for public companies (-1)

Anonymous Coward | more than 2 years ago | (#40825033)

It isn't Sarbanes-Oxley compliant. For example, you can delete transactions such that it looks like they never existed. Great software!

Re:Not for public companies (1)

Joe_Dragon (2206452) | more than 2 years ago | (#40825123)

that is in the cayman islands ver of the software.

Dr. Dobbs (0)

santax (1541065) | more than 2 years ago | (#40825063)

could have better done a research at how to keep a site alive with 10 mil+ ./-ers come knocking at the door.

I thought I disabled ads. (3, Insightful)

WiiVault (1039946) | more than 2 years ago | (#40825105)

Oh and as most anybody who uses QB often knows- it does suck quite mighty and gets slower even as PCs get faster. Piles of code isn't always a good thing, sometimes it just means you have a bloated heifer with lazy programming and no real improvements in half a decade or more.

Re:I thought I disabled ads. (3, Interesting)

PhunkySchtuff (208108) | more than 2 years ago | (#40825181)

As a QuickBooks user, who prefers it to MYOB at least, I ask this question in all honesty:

What else is out there for small businesses that's better than QuickBooks and isn't a cloud-based service?

Re:I thought I disabled ads. (1)

Amouth (879122) | more than 2 years ago | (#40825225)

a quick google - shows

http://www.gnucash.org/ [gnucash.org]

and it seems to be quite active

Re:I thought I disabled ads. (4, Interesting)

rueger (210566) | more than 2 years ago | (#40825237)

Gnucash is most assuredly not a replacement for Quickbooks, if for no other reason that ta some point you need to interface with a real accountant, and Handing over your files from Quickbooks or Simply Accounting makes that MUCH easier.

Re:I thought I disabled ads. (2)

DogDude (805747) | more than 2 years ago | (#40825431)

Gnucash is to Quickbooks like Notepad is to MS Office. Gnucash has no functionality for any kind of business accounting.

Re:I thought I disabled ads. (1)

larry bagina (561269) | more than 2 years ago | (#40825229)

GnuCash [gnucash.org] , perhaps?

Re:I thought I disabled ads. (1)

WiiVault (1039946) | more than 2 years ago | (#40825233)

There are a number of solutions, and I'm not one to call somebody an idiot for using one over the other if it works best for them. But as a fellow Mac user (oftentimes) I guess it depends on size and complexity. That said, even the big bad slow Excel can at times to the job better than QuickBooks. I think for the very small Excel can be enough, but for larger, even entry level "enterprise solutions" are often a better fit. It just sounds like you are comfortable with QB, and that's fine. I'm not so high and mighty to think I can dictate to others. I just feel like it hasn't gone anywhere, and the company behind it seems to be stuck in the past just like Quicken demonstrates. But either way this whole article is pretty much an ad, praising codebloat nonetheless and seems out of place on a news site.

Re:I thought I disabled ads. (1)

DogDude (805747) | more than 2 years ago | (#40825421)

Excel and Quickbooks are as similar to each other as Quicktime and Oracle: they're not in any way similar.

Re:I thought I disabled ads. (1)

Anonymous Coward | more than 2 years ago | (#40825453)

This, unfortunately, is the problem. Quickbooks is a bloated, buggy pile of crap, and the only thing worse for small business accounting is not using Quickbooks.

Re:I thought I disabled ads. (5, Informative)

afidel (530433) | more than 2 years ago | (#40825627)

Sage Peachtree is the main competitor in the self hosted small business accounting realm. To be honest if my dad wasn't so opposed to a hosted solution I would have had him go that way as even with 5 users the cost difference once you add up the server and licenses wasn't that great over five years.

As far as QB goes, it seems to finally be ok. Up until 2007 it still couldn't run as a limited rights user and required short printer names both of which caused me serious pain as I was the IT department for a midsized accounting firm and getting QB running in Citrix was NOT fun. We had premier enterprise support and their answer to the LRU issue was to grant Everyone full rights to HK_Classes_Root (NOT a good idea). I eventually figured out what keys the user needed access to and published the solution online to help others but their spaghetti code was so bad even then that nobody could actually tell what it was doing to give me the right answer.

Re:I thought I disabled ads. (4, Insightful)

c0lo (1497653) | more than 2 years ago | (#40825205)

Piles of code is never a good thing

FTFY.

for anyone that may need an explanation - does anyone? - either the code is necessary (and, thus, won't be thrown into a pile, but carefully and continuously polished and made as small as possible) or it's not - in this case, it's truly a liability.

Re:I thought I disabled ads. (1)

WiiVault (1039946) | more than 2 years ago | (#40825247)

Indeed, as the parent you nailed what I actually meant.

I have to use this software at work (1)

credd144az (1078167) | more than 2 years ago | (#40825167)

I find it to be bug laden and amateur for the most part. Use both Quickbooks Accounting (Retail) and their Point-of-Sale. Quickbooks works for the most part I guess, Point-of-Sale is Busch League...

Was Intuit important in the past or something? (0)

EzInKy (115248) | more than 2 years ago | (#40825175)

And, even they had some signficance sometime or somewhere, why should I care about how they manage lines of ancient code?

Re:Was Intuit important in the past or something? (4, Insightful)

DogDude (805747) | more than 2 years ago | (#40825385)

Intuit makes the most widely used accounting software on the planet. They have significance, but you're just clueless.

Re:Was Intuit important in the past or something? (3, Funny)

RulerOf (975607) | more than 2 years ago | (#40825447)

And, even they had some signficance sometime or somewhere, why should I care about how they manage lines of ancient code?

Because they roll up the money they make on re-selling the same code base year after year, insert the money in their nostrils, then finally, they separate out single lines of code and snort them.

That's why.

Re:Was Intuit important in the past or something? (1)

PmanAce (1679902) | more than 2 years ago | (#40825839)

Because unlike yourself, I have worked with many, many thousands lines of (current, not ancient) code. Doing so requires discipline and good skills by all team members to be able to be productive and keep the project streamlined and on time. It is a good read for all professionals involved in the software industry. If you don't care about either the company or code, why the funk are you reading this and posting here???

You mean... (4, Insightful)

stanlyb (1839382) | more than 2 years ago | (#40825195)

That paying well to a small team, and treating them like a people, not commodity, is actually worth the money!!!!
Oh, noooo, no, what about all the HR screams that this is not a sound business???

If it takes 20 million lines of code (5, Insightful)

codepunk (167897) | more than 2 years ago | (#40825211)

If it takes 20 million lines of code to do ones taxes there is simply something very wrong with the process.

Re:If it takes 20 million lines of code (0)

jmerlin (1010641) | more than 2 years ago | (#40825243)

There isn't any need for it. I suspect it's because they're doing things horribly, horribly wrong. I'd be willing to bet a few billion dollars that a competent group of people could implement QB in under a quarter of the lines of code while both improving the quality and making it significantly faster in every regard.

Re:If it takes 20 million lines of code (1)

Anonymous Coward | more than 2 years ago | (#40825365)

Also, stable. If it's 11 mill. C++ code lines, want to bet there are any crash or memory corruption bugs in there? You don't just update to modern practices in a heartbeat either, so I expect this is more like C/C++ like it was 12 years ago than C++ as it is today.

(I know of a small shop that still compiles their multimillion line code base with Borland C++ version 3)

Re:If it takes 20 million lines of code (2)

DogDude (805747) | more than 2 years ago | (#40825393)

I'd be willing to bet a few billion dollars that a competent group of people could implement QB in under a quarter of the lines of code while both improving the quality and making it significantly faster in every regard.

So then why has nobody come up with a better product, then, Mr. Billionaire?

Re:If it takes 20 million lines of code (1)

codepunk (167897) | more than 2 years ago | (#40825475)

I have often thought about this very question in regards to quickbooks. The best assumption I can come up with is it is difficult to get anyone interested in writing such a application.

It is tax software for god sakes, I cannot really seeing that many developers jumping up and saying hey that fucking rocks I want to write some tax software.

Re:If it takes 20 million lines of code (1)

DogDude (805747) | more than 2 years ago | (#40825499)

It might be boring, but there are buckets and buckets of cash to be made from it. Right now, almost every privately owned, small business in the US uses it, and pays a few hundreds bucks every year or every few years to "upgrade" it. It ain't sexy, but it's lucrative as hell.

Re:If it takes 20 million lines of code (5, Insightful)

oatworm (969674) | more than 2 years ago | (#40825675)

It's not terribly difficult from a technical perspective, but there are a few caveats to keep in mind:
- Everybody and their mother (at least in accounting-related clerical work) knows Quickbooks. Whatever you come up with would have to be similar enough to justify the training expense.
- Intuit really does spend a lot of effort keeping track of various local, state, and federal regulations, at least in the US, and applying them to their software. That's not cheap or easy.
- Since Quickbooks is something of an "industry standard", it's possible to share Quickbooks files among necessary individuals (outsourced accountants and the like) and know that the books are getting from point A to point B. Not everyone has a copy of, say, Peachtree lying around, to say nothing about GnuCash or anything else.
- Accounting is generally not something that businesses start "experimenting" with. Predictable and supported are what they're looking for. Given a choice between a technically superior product from a company that just received angel capital last week and a predictably wrong product supported by a company that's been selling and supporting accounting software for 30 years, most businesses will go the safe route and buy the technically weaker package. It's actually pretty rational if you think about it; switching accounting packages is not trivial by any stretch of the imagination, so picking the product from the company with proven staying power makes a lot of sense.

Personally, I think Quickbooks is kind of the Microsoft Access of the accounting world - oh yes, there are better, far more stable tools out there, but too many people know Access and its quirks for all but one or two of them to catch on in any meaningful sense. That's inertia for you.

Re:If it takes 20 million lines of code (4, Insightful)

gmhowell (26755) | more than 2 years ago | (#40825817)

I'd be willing to bet a few billion dollars that a competent group of people could implement QB in under a quarter of the lines of code while both improving the quality and making it significantly faster in every regard.

So then why has nobody come up with a better product, then, Mr. Billionaire?

He said 'willing', not 'able'.

Re:If it takes 20 million lines of code (4, Insightful)

Capt. Skinny (969540) | more than 2 years ago | (#40825477)

I'd be willing to bet... that a competent group of people could implement QB in under a quarter of the lines of code

Agreed. But then the business aspect comes into play: can they market it well enough to displace the market leader? There's plenty of crap out there that makes money despite the fact that better options exist. If it was as easy as just competent programming, someone would have done it already.

Re:If it takes 20 million lines of code (1)

PmanAce (1679902) | more than 2 years ago | (#40825847)

Depends on how many versions of the damn thing you are willing to upkeep in the same or different code base. Good luck integrating a moderately complicated bug fix in multiple branches of different code bases.

Re:If it takes 20 million lines of code (1)

Anonymous Coward | more than 2 years ago | (#40825307)

If it takes 20 million lines of code to do ones taxes there is simply something very wrong with the process.

Taxes in which country, state, province, etc?

Do you see the problem with your statement?

"Poorly" (0)

Anonymous Coward | more than 2 years ago | (#40825227)

Story has too many words when one will suffice.

there's no good competitor (4, Insightful)

Skynyrd (25155) | more than 2 years ago | (#40825239)

My last job involved many, many frustrating hours with QuickBooks - every week. It's a steaming pile of crap. There were so many basic things missing, like decent reporting, that it was a total joke. I could go on for many long rants about how much I hate the software. We wanted to integrate Fishbowl, so we could do some trick inventory manipulation, but it wasn't implemented before I quit. They are still working on it.

In my new job, I get the daily reports from our 5 stores. QB failures are mentioned daily. I am so happy to be in an entirely different department.

I really wish there was competition for QB. I think it's a fine platform if you are a very small business with a limited product line. Get complicated, and it fails.

Re:there's no good competitor (1)

DogDude (805747) | more than 2 years ago | (#40825399)

Quickbooks is an accounting package, not inventory/point of sale. It sounds like your last job involved pounding nails in with a screwdriver.

Re:there's no good competitor (1)

Sechr Nibw (1278786) | more than 2 years ago | (#40825451)

Oh okay. http://intuitpayments.com/POS [intuitpayments.com]

Re:there's no good competitor (2)

DogDude (805747) | more than 2 years ago | (#40825483)

Those two programs are completely and totally unrelated to each other in any way. Their POS system is the codebase from RetailPro that they bought about 10 years ago. Quickbooks is obviously much older, and unrelated.

Re:there's no good competitor (1)

DigiShaman (671371) | more than 2 years ago | (#40825575)

Sage (ERP, Peachtree Quantum), and Microsoft Dynamics seem to be pretty popular too.

Re:there's no good competitor (1)

afidel (530433) | more than 2 years ago | (#40825647)

Dynamics is fine as long as you don't involve the POS CRM module (at least that was the case six years ago when I last had to deal with that evil, evil pile of junk).

Re:there's no good competitor (1)

DerekLyons (302214) | more than 2 years ago | (#40825561)

I really wish there was competition for QB. I think it's a fine platform if you are a very small business with a limited product line. Get complicated, and it fails.

So rather than wishing for a competitor for QB, which would be designed for the same market and thus almost certainly have the same flaws... get off your butt and search out the proper program designed for your business/sector. QB is a good tool, but if you're pushing past it's boundaries, that's not QB's fault.

Re:there's no good competitor (0)

Anonymous Coward | more than 2 years ago | (#40825779)

I was going to post my experience, but looks like you've covered rather completely. Giant steaming shit-pile. I am simply astounded how badly it is designed. I soppose "designed" isn't the word I'm looking for, more like crudely mashed together with fucking sausage hands.

-s

Intuit is the only game in town (1)

atchijov (527688) | more than 2 years ago | (#40825253)

and it shows. First of all, I have been using Intuit for last 6-7 years. Secondary, I do appreciate the fact that US tax law is horribly complicated. However it seems that over last 5 years quality of Intuit software is going down the drain. Go to Intuit support forums and you will see what I am talking about. So answer to the question "How Intuit Manages 10 Million Lines of Code" is - poorly.

Linux - Not Even Close (1)

rueger (210566) | more than 2 years ago | (#40825259)

Quickbooks is the one thing that keeps Windows on my machine, and is the only reason I ever boot into it.

I tried hard to beat WINE into running it, but alas no luck - at least the version I run.

I looked at what's out there in Linux accounting software, and either it was really obscure, apparently abandoned, or aimed at mega-corps, not small and home businesses. Plus none of it offered an easy way to handle Canadian tax frameworks.

And of course we wanted an accounting package that our accountant would accept at year end. That means one of Quickbooks or Simply Accounting.

Breakage (0)

Anonymous Coward | more than 2 years ago | (#40825267)

As someone who tried to use their Quicktax (web) product earlier this year, and managed to break it to a point where it wouldn't continue, I wound up using a competitors product for this year.

I don't think Intuit is necessarily bad, but their attempts to limit a product artificially so they have several different SKU's seems, for me, is resulting in lost sales as the limitations are being turned on/off at the "each key entry" level instead of "at the purchase" level. This is not exactly a product that people are going to pirate since it has their identification tied to it legally.

Rather they should only turn off features that "print" those pages rather than trying to prevent entry of those pages. Like for example I tried to enter about 100 lines about stock trading, but this is only available to the most expensive tier, I okayed "upgrading" to this, but for some reason it was this action that killed the web version, and I was forced to go back to square one with a competitors product.

So IMO, if quicken and quickbooks are managed the same way, I think they're losing sales with trying to upsale at key entry instead of at print. It may make more sense to turn off the features at key entry to avoid wasting time, but you're actually making the user go "well if this product is so limited, let's see what limits are out there"

This is a good example of where an Open Source product could probably replace proprietary software, since the market leader's software is such a poor performing bloated pig.

Still, I don't think intuit's products are intentionally bad, but rather their licencing model is making it feel like their software is bloated at best and broken at worst. Software should be using "plugin" models where additional features in other licence levels can simply not be initialized instead of initializing the entire product and checking at every key entry to see if the licence allows that feature.

this is exactly what not to do. (0)

Anonymous Coward | more than 2 years ago | (#40825301)

monolithic code bases are in the top 3 three killers organization productivity. don't confuse the success of the company with bad practices.

What about Intuit Profile? (1)

zivan56 (658405) | more than 2 years ago | (#40825339)

They don't mention Profile anywhere, which is even more horrible than Quickbooks. Last time I had to support it I remember downloading dozens of VB runtime files...

You can survive (5, Informative)

symbolset (646467) | more than 2 years ago | (#40825341)

Quicken and Quickbooks is the only application I know of to have survived a full-on Microsoft assault on their business. Microsoft Money has folded. It's something to be proud of, I guess - for now.

Re:You can survive (1)

GodfatherofSoul (174979) | more than 2 years ago | (#40825495)

I thought Money was a better product.

Re:You can survive (1)

symbolset (646467) | more than 2 years ago | (#40825613)

There are lots of folks who thought their Microsoft product was better for a while. But when it doesn't suit Microsoft's strategic goals to maintain it it's dropped like a hot rock. When that day comes it doesn't matter how much you liked it, nor how much you had invested. They have no care for the preservation of your data either - they made it incompatible on purpose, and you should have known better is their view.

Whether or not you can be made to know better before putting your data into their products is a whole other question. How intellectually disabled are you? Obviously you can read and write, but are you impaired by some sort of memory loss?

Re:You can survive (0)

Anonymous Coward | more than 2 years ago | (#40825691)

Way better, unfortunately. Now that Money is gone, I'm using Quicken, but it's pretty awful.

Re:You can survive (1)

cold fjord (826450) | more than 2 years ago | (#40825825)

Quicken and Quickbooks is the only application I know of to have survived a full-on Microsoft assault on their business. Microsoft Money has folded. It's something to be proud of, I guess - for now.

Detailed here: Inside Intuit: How the Makers of Quicken Beat Microsoft and Revolutionized an Entire Industry [amazon.com]

Maybe the small business standard...but (4, Insightful)

lilfields (961485) | more than 2 years ago | (#40825349)

Quickbooks maybe the industry standard, but it's also a giant jumbled up mess. Our company's quickbooks were down all day due to corrupted files leading to unsequenced invoices. I've never meet someone really happy with Quickbooks...it's just accounting software is really hard to develop, so it doesn't have many strong competitors.

Re:Maybe the small business standard...but (1)

CodeBuster (516420) | more than 2 years ago | (#40825573)

it's just accounting software is really hard to develop, so it doesn't have many strong competitors.

Not only that but accountants (aka bean counters) are notorious for being cheap as hell. Almost none of them would be willing to pay the likely unit price of a really good small business accounting system. Indeed, I wonder what the piracy rate on QuickBooks is? I'll bet that it's probably pretty high.

Re:Maybe the small business standard...but (3, Interesting)

DigiShaman (671371) | more than 2 years ago | (#40825601)

This!

I support Quickbooks as a consultant/sysadmin for SMBs. One of my biggest gripes about QB is that if the client PCs arn't configured correctly, it will attempt to take over the role of sharing out the file while the actual file is still on the server. And it's compounded by the fact Windows XP doesn't route data over the ethernet as a priority over WiFi connection. It can get ugly in the office real quick over "who has the file open". The proper way is to install over the server side hosting agent on the server, and clients arn't configured to host. Although some users get confused over the concept of "hosting" vs "multi-user mode". Bah!!! Curses!

The other major problem is that Quickbooks accounting administrators are not performing backups. Sure, Windows Backup or Backup Exec may be capturing the file. But that's not the same thing. The transaction log will not flush until after Quickbooks itself is allowed to perform a full backup with verification. Sometimes if you wait too long, the entire damn thing gets corrupted. In fact, one of my clients is facing this very problem. She wants to upgrade to the latest version of QB. But until the data can be repaired (if possible) via special services at Intuit, she has no safe way of converting the file without it either bombing out or causing even more corruption.

By not fixing code that sucks? (1)

bhlowe (1803290) | more than 2 years ago | (#40825355)

I've had some simply horrendous user experience problems with Quickbooks that have persisted release after release.. I imagine the real question is how do they manage feature requests from 100M customers.. Do they simply make it difficult for developers to fix obviously wonky UI?

Re:By not fixing code that sucks? (0)

Anonymous Coward | more than 2 years ago | (#40825481)

A small business I know of uses Quickbooks. I have to call them at least three times each year because they can never properly print and mail their annual invoice to me. Going on four years in a row fail this year.

My impression interviewing with Intuit was that a format interview with more than one person asking the same question, and asking me if I was from the city they were in, along with silly mind games like make the phone call, leave the room, and see if I could handle the call on my own.

Code quality vs language used. (0)

Anonymous Coward | more than 2 years ago | (#40825357)

I wonder if the language used influences code quality?

Bad breed (1)

Anonymous Coward | more than 2 years ago | (#40825389)

Speaking as an accountant, i.e. the poor fucker who has to use Quickbooks, Quickbooks is a goddamn mess. It's constantly crashing or messing up for some reason or another. Version upgrades are like pulling teeth and its interface is terribly organized. The worse part? It's the best of a truly bad breed.

Hope they handle their code better than customers (3, Informative)

dotancohen (1015143) | more than 2 years ago | (#40825433)

The last time that I tried to contact Intuit about Quicken on Linux was a mess:
http://dotancohen.com/eng/quicken_on_linux.html [dotancohen.com]

I certainly hope that they handle their code better than they handle their customers.

No offense, but that doesn't sound like a lot (2)

GoodNewsJimDotCom (2244874) | more than 2 years ago | (#40825469)

As a solo developer, working 800 hours, I was able to write ~400,000 lines of debugged and play tested code. So 10 million lines doesn't sound like a lot at all to me. The only thing I experienced in writing so many lines of code is that I found a problem with the Eclipse editor. Once a single file starts going over 30k lines of code, there is type lag. The more code, the more type lag until you can no longer use Eclipse to edit that file, you gotta use Notepad.exe or Scite.exe.

Link here in case you want to play the game I wrote [shockwave.com]

Just out of idle curiosity: I wonder how many lines some of the bigger projects out there have. For example, how many lines of code do some of the Linux OS Kernels have? I'm curious because is 10 million lines actually a really large code base, because it doesn't sound it.

Re:No offense, but that doesn't sound like a lot (2)

godrik (1287354) | more than 2 years ago | (#40825523)

Just as a curiosity, why do you have a single file of more than 30K lines? Isn't that way over the top?

Re:No offense, but that doesn't sound like a lot (5, Funny)

CodeBuster (516420) | more than 2 years ago | (#40825585)

Just as a curiosity, why do you have a single file of more than 30K lines? Isn't that way over the top?

Not if the entire program is one enormous switch statement in the main() function.

Re:No offense, but that doesn't sound like a lot (1)

Anonymous Coward | more than 2 years ago | (#40825629)

Not if the entire program is one enormous switch statement in the main() function.

Heheheh. You're fired...just as soon as we figure out what the heck that function does!

Re:No offense, but that doesn't sound like a lot (4, Insightful)

cecom (698048) | more than 2 years ago | (#40825569)

Yeah, right, you wrote, debugged and tested 500 lines per hour for 800 hours... We believe you. Now take your pills, your straitjacket, go back to your room and let the adults talk.

Re:No offense, but that doesn't sound like a lot (1)

antifoidulus (807088) | more than 2 years ago | (#40825619)

Most languages allow you to use multiple lines to define literals(some even allow multi-line statements), so maybe he just used a line per character? Something like:

#include

int main(int argc, char** args) {

char *msg= "T"
"h"
"i"
"s"
" "
"i"
"s"
" "
"a"
"n"
"n"
"o"
"y"
"i"
"n"
"g"
;

printf("%s\n",msg);

return 0;

}
Theres 29 lines right there, and it didnt take a lot of time to code or debug :P

Re:No offense, but that doesn't sound like a lot (1)

GoodNewsJimDotCom (2244874) | more than 2 years ago | (#40825729)

I wasn't trying to brag or anything. I just rough estimated from memory at first. I'm guilty of doing the order of magnitude physics estimation for a lot of my math. I did a more accurate count up my map editor and Shell, looks to be around 80k-100k lines of code. I thought it was more because for some reason I thought by memory, my one file had 120k lines to it. So at low estimates, I guess I wrote, debugged, and tested 100 lines per hour for 800 hours. Is that a good rate? I know my manager says I code more efficiently in 14 hours a week than the four of his old coders did in 40 hours. I don't have much experience working with others to compare myself, no one ever wants to hire me.

I admit that I have a problem with low motivation to be an entrepreneur with no one ever hiring me from a job even though I graduated from Carnegie Mellon(not fun to graduate right after DotCom bust). Its hard for me to clock more than a couple hours each day without getting paid until the next year. If I was getting paid a normal paycheck I could put in the 8 hours a day. I'm working on discipline now to code more each day.

My large amounts of off time away from office contributes greatly to my problem solving and coding aptitude. I wonder if I can keep up my productivity if I do start clocking 8 hour days.

Re:No offense, but that doesn't sound like a lot (1)

rgbrenner (317308) | more than 2 years ago | (#40825809)

you're guessing at the number of lines? too lazy to run sloccount [dwheeler.com] ? It's in the packages repository on a lot of distros.

Re:No offense, but that doesn't sound like a lot (2)

Prof.Phreak (584152) | more than 2 years ago | (#40825589)

Managing your own code vs managing 10m of code someone else wrote are very different. Even the most stupidly trivial functionality can take forever to figure out in someone else's code.

There's also code densitity... I once single handedly `wrote' 250k lines of code in an evening... by writing a generator against Rational Rose files... Draw a box with a name and some attributes, and bam... you got a dozen files of about 10k total lines (ddl, store procs, database helpers, value objects, corba stubs/skeletons, list view gui, detail view gui, edit view guil, all that crap). I seriously doubt any significant portion of that intuit 10m code base is anything other than boilerplate code... but who knows... perhaps 2/3rds of the code base are setter/getter methods generated from some metadata :-D

Re:No offense, but that doesn't sound like a lot (1)

GoodNewsJimDotCom (2244874) | more than 2 years ago | (#40825649)

You're right that reading other people's code is a vastly different thing. I guess 10 million lines starts to be a challenge in that regard as different people are writing different parts.

The code I write is in such a hyper agile methodology that I use shorter variable names for disposable variables just in order that I don't have to type a long name out. If I would just slow things down a bit, I could make my code more readable to other people, but I never planned on anyone else besides myself using my code.

I guess there are best practices for managing any amount of code. I guess it couldn't hurt for me to read up on how people do it different ways. Up until now I've always felt that programming styles was like a kungfu style. There are best practices for certain styles, but you can have a radically different style from other people. Then you get to the point where you're just arguing who's kungfu is better to go with. So since industry standard really puts the breaks on my speed of development, I just put my hands on my ears and didn't want to hear about it for a while.

I think though since I've never worked on a big collaboration project where my code needs to be readable to other programmers, I could use a dose of industry standard in this situation. I think I'm going to read the article now. At first I was too focused on thinking 10 million lines of code doesn't sound like a lot, but you brought to light the fact that if you don't write all the code yourself, it gets difficult to read let alone manage.

Re:No offense, but that doesn't sound like a lot (0)

Anonymous Coward | more than 2 years ago | (#40825645)

You wrote 500 debugged and tested lines of code per hour?? I call Bullshit on that one, that is a good 500% higher rate than the generally acknowledged DAILY rate of what a good developer can produce in tested code or 4000% higher than the hourly rate.

Sounds like a lot (1)

Casandro (751346) | more than 2 years ago | (#40825623)

Particularly considering it's just a "simple" tax programme.
It sounds like, instead of implementing the logic in data (i.e. arrays, external text files, etc) and having a fairly small compiler targeted at the problem, they implemented everything in C. This is something even C advocates advise against.

Code? (0)

Anonymous Coward | more than 2 years ago | (#40825743)

Far easier to maintain a single properties file rather than millions of lines of code. Want to change the application then change the design and regenerate the whole application. Done this.

Intuit's software is a programmatic pile of crap (0)

Anonymous Coward | more than 2 years ago | (#40825797)

Intuit's software uses like it's been written by some undergrad CS students. They make among the most disorganized software I have ever seen and what would never pass a competent professor's eye just crops up in their software.

Needing to restart every day so you can update the timestamp? Really?

I will complement their NON-techies on convincing so many banks across the nation to go on board with their software. That is a very impressive feat. But their techies have my ire.

Support is the other question... (4, Interesting)

bradley13 (1118935) | more than 2 years ago | (#40825835)

Maybe Intuit does feed their programmers well. Now if they would just hire some decent support people. We used to use a multi-currency version of QuickBooks, and the errors were simply astounding in their stupidity. As one, minor example: it was completely clear that some conversions were handled using floating point numbers, with the inevitable decimal rounding errors. At the end of the year, we had huge currency conversion errors - far beyond what even floating-point errors could explain - and essentially impossible to justify to the tax authorities.

There were lots of other problems as well. Trying to report errors was like talking to a black hole. The one time we really needed some real-time support, we spent ages on hold, or going around in circles with different people, and wound up getting no useful help at all. In the end, the only solution was to go back to a single-currency system, and deal with currency outside of QuickBooks.

Still, as bad as our experiences with QuickBooks have been, there's nothing better in the same price category.

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?