Glitches in Massive Government Databases?
HBergeron asks: "Rather then post this as another YRO in the litany of new government datamarts there is a more fundamental question for all the coding Slashdot readers out there. This story, in Government Executive magazine, outlines the range of programming glitches in what is a relatively simple database. As a matter of public policy (and taxpayer money) is this level of non-functionality to be expected in these sorts of projects? Is the contractor just ripping off the taxpayers with bad code? How hard is it to write software like this that works?" The article focuses on the SEVIS database, but have others noticed similar trend in other government information systems?
I think this movie shows what a *real* totalitarian state would look like: the danger to our freedoms is not from corruption but from incompetence. Programs like TIA creep me out because I'm absolutely certain that the Feds will find a way to fuck it up and throw some poor guy in detention because the computer skipped a byte and came up with his name. Ditto for the PATRIOT Act. Few people have recognized this, but what's frightening about Ashcroft is not that he's a fundamentalist autocrat, but that he's an incompetent fool. If innocent people suffer from the government's extension of powers, it won't be due to the GOP taking out its enemies but because some FBI secretary got a virus on her computer.
I'm not a libertarian; the government indirectly pays a large portion of my salary. However, the extension of government power worries me, because the more control they have, the more opportunities to fuck our lives up.
Fixing broken EDS code is a large part of my job, the SEVIS project is no doubt another example of EDS shoddiness. The EDS business model seems to be as follows: - Collect $200/hr from client. - Pay h1-B $15/ hr to produce complete choss. - Management keeps the other $185/hr. for second vacation homes etc. But I suppose it is better that this project fail, at least we can count on EDS for something. MM
Of course it's a taxpayer ripoff. Thank goodness we're not getting all the government we're paying for.
I'm an American. I love this country and the freedoms that we used to have.
I worked on this stuff a little bit, quite tangentially, for a university in the late 1990s, and it was clear even then that there were serious problems. This is what I recall, so YMMV. Basically, the initiative that prompted SEVIS has been going for several years, even before Sept. 11th.
In the late 90s, The government was coming down hard on universities to get their information in order for submission with some ridiculously short deadline that they couldn't possibly meet. When asked what information was to be collected, the government folks hemmed and hawed and wouldn't provide specs at all. My boss even went for a meeting with the head of the program on the government side, who skirted the issue of actual specifications for universities. There was a small "beta" program arranged between some East Coast universities and the government to try out some new software, but if you didn't get involved in the beta, you didn't get any information at all. This left individual universities out in the cold as to what to do. The situation was at a stalemate, with the government and consultants, probably EDS, wasting gobs and gobs of money trying to implement a system and failing miserably. The client software they were hawking for universities was overpriced ($1000s) garageware that didn't work, had a Windows 3.1 interface in 1998, and was completely proprietary.
Sadly, SEVIS is the second or third try at implementing a system, and complete failures again are no surprise to me. This whole project has been a disaster from the start and it should be audited big time.
Actually they do a lot of systems that work. And work so well - they're never mentioned because there's no publicity when they just do their job. Since they're the founder of the IT Services industy and currently #2 in IT Services (after I.B.M.) they have done a lot of projects - worldwide.
If you want to believe everything the media reports and not read between the lines, go ahead. Just don't try and peddle it to the rest of us.
This is the same old software engineering problem, over and over again.
A user who has never written a *COMPLETE* system specification, acutal has no idea what that is, who only knows what he/she does not want.
Software developers/coders/bodies who are not SME's (subject matter experts), making system / software decisions without either the knowledge or guidance to understand the ramifications of those decisions.
Neither users, nor software development companies want to deal with these issues, they would rather just get the money.
That is why most large software development/ service companies have such bad reputations.
According to SEI, (Software Engineering Insitute) over 70 per cent of all software development projects are terminated as failures.
The quote from the original article:
.NET 2003 server with M$ SQL, etc., etc. We did our best to make them consider PHP and the like, because that's what we normally use, but they were willing to pay extra to have that stuff developed in all-M$ stuff! We were told that the reason for that was because their IT was managing only M$ software, and the server was already there, and they couldn't have anything else (e.g. PHP). Fine, I can understand some bureaucracy in IT - that's cool, but imagine my surprise when, after we shipped them a CD with the project, they called us back and asked if it would work with a win2003 server as opposed to a win2k!!! Not only they didn't have the server yet, (or the infrastructure for that matter), but they didn't even know how to install windows! Which brings me to point #4:
.NET is something that, as they say, they 'have been working on for a while, but haven't got it quite yet'! And, when we give them a database dump they have no idea what to do with it and you have to walk them through the process (right-click on the 'Databases', select 'Create New database', click ok...) And they are paying these people!!! Errr... Let me re-phrase that - We are paying the government to employ those dumbheads! Thatnks goodness the network on which that is installed is not connected to the internet - the same idiots are in charge of security as well.
How hard is it to write software like this that works?
Wow! Well said! My grandma couldn't have done better. In other words, please define 'works' for me. How many blue screens a day constitute 'works' and how many are too many?
Also, since we are at it, I want to reflect back on the latest project we have done. Incidentally, for the government. Before asking if a vendor is ripping the taxpayer off we need to consider how the government mismanages the resources it has. Consider the facts:
1. The project itself was fairly small and simple. I'd say it would normally take about 2 months to develop and deploy, but it needed to be done before the end of the fiscal year, so it was a 'now-or-never' situation, and was a horrible time-crunch. We had slightly more than half the time necessary to do it, but they won't even try to install it till probably the end of the year! The quality of code would've been greately improved if we coded, say 40 hrs/week instead of pulling all-nighters.
2. They tried to keep tabs on the development by scheduling 'technical meetings' over the phone. While there is nothing wrong with that per se, in a time-crunch that was a horrible waste of time. The smartest things we've heard from them were questions like 'Are you using hungarian notation?' or 'is your code well-documented?'....
3. They insisted on
4. Their IT is kick-ass. As in 'their ass needs to be kicked real hard'. Installing a a windows server is a mountain of a task for them. Installing
Yes, it is true that some contractors will rip off the government (and it is really the government's responsibility to make sure that doesn't happen! But that's not the point). The point is that even if they have a perfectly good product developed by honest people, they are still remarkably talented at screwing it up. Bureaucracy and lots of idiots in charge of hiring people are to blame.
Jobs? Which jobs?
> And the government system of going with the lowest bidder is bound to cause some problems
I worked in a state agency, and the fact that we were required to take bids didn't really change who we purchased from. We just chose the vendor we liked best and justified it by writing the project needs around that vendor. They did that with employees too. When a new job opened, they often had someone in line for the position. However, equal opportunity required that the do interviews for the position. To justify the person they desired, they would write the job description and requirements based on the skills of the individual they liked. They would then schedule interviews even though they already had someone chosen for the position, just to meet requirements. I suppose they could have changed their mind if they found someone who was absolutely fabulous, but it's hard to convince an employer how great you are when in the back of their mind they don't think the interview is going to matter anyway.
Disclaimer : I have worked for a number of Financial Institutions and Large Corporations.
My experience with the problems of these sorts of situations is as follows:
1. Sales droids underbid each other to get the job and commit to ludicrous time frames
2. Project teams end up with short development time and are always pushing to reach the deadlines in time.
3. Client changes their requirements, but will not change their expected delivery date. Either they refuse due to business need, or they do view their change as an actual change. More often they view their change as a "clarification" - even if it contradicts what their specifications orignially said.
4. Agressive job market has Project Managers kowtowing to Client demands.
5. Multiple departments are clients, but pay different amounts into pool. Each department seeks to maximise their benefit at the cost of other departments (despite fact part of same organisation - politics)
I mean, really, the problem exists in the fact business units will often not sit down and commit to producing clear, unambigious details of what they want & need. Bugs creep into the process when your dev's are working frantically to meet the deadlines and handle the unexpected change request.
And now a pithy little quote to put on your wall:
-----
Programming to Requirements is like walking on water.
It's easy to do when everything is frozen.
Sometimes, SEVIS crashed under the stress and expunged the day's work. The delays and headaches led some schools to close their student offices and ask employees to work nights and weekends, when traffic was lighter.
That's as good as putting a logo on it. So I went to Netcraft and checked the SAVIS web site, egov.immigration.gov. And sure enough: The site egov.immigration.gov is running Microsoft-IIS/5.0 on Windows 2000
I bet that the database is also running on Win2K...
Oh golly, you mean that when you put a high-volume site under Windows, you get (gasp) crashes and data losses? No way! Who would have thought that? Obviously, the poor Dept of Justice was a victim of an unheard-of, unexpected problem.
Not.
--
Mad science! Robots! Underwear! Cute girls! Full comic online! http://www.girlgeniusonline.com/
That particular comment took a real lack of imagination. The reason the government pays $10,000 for toilet seats has less to do with being bad at finding low prices (The government is, suprisingly, relatively good at that, though perhaps less so at finding quality products for low prices.) than with the government being bad at, well, money laundering.
Say I have a project that's going to cost a little less than $100,000. It's something I can't get funding for because the Great Gods of Paperwork have not decreed it shall be so, possibly because it's a project which is a little shady. What's more, I'm high enough on the food chain to order my own toilet seats. (That is to say, I'm the head of my agency...) Thus, I order 10 toilet seats for $15/piece, but write them up as costing $10,000 each. Voila! My pet project is funded! As a bonus, the obnoxious news-coverage, should it materialize, is about run-of-the-mill government waste which everyone is used to and bored with, and so it goes away quickly, instead of being about whatever hare-brained unsavory scheme I actually used the money for, be it spying on Americans (the typical paranoia-novel stuff) or operating a government-owned strip-bar (oddly more likely...).
Let's face it. Government employees may include a lot of people who were B and C students in college, but you don't think that they actually pay $10K for toilet seats, do you?
Add on top of that the tendency of this administration to make everything from the terrorist watch lists to what GW had in his morning coffee classified, and you won't even be able to ask for the information on yourself to make sure that it is accurate! And god help you if you do find an error and try to get it fixed!
Space for rent, inquire within
It's even worse when COTS software and hardware are involved.
If the project takes 5 years to complete (propose, fund, define, develop, test, implement), you end up with a system that's 5 years out of date. You'll have a bunch of desktop systems with Pentium 90 CPU's, running Windows 95 at best.
And getting any improvements implemented literally takes an act of congress (or "creative accounting" - which several of our larger contractors have been bitchslapped for in recent years).
It's okay in the Military space, because we're still 30 years ahead of any potential competitors technology-wise.
But with computers - the backwardsness is blindingly obvious to someone who has an up-to-date system in their own home.
Maybe the problem is - we shouldn't be paying government employees enough money that they can buy better equipment for themselves at home, than we can afford to supply them with for their jobs?
These are my friends, See how they glisten. See this one shine, how he smiles in the light.
I've worked in many government departments, always as an independent contractor. My experience is that government databases, and the apps that talk to these databases, are generally a mess.
I think there's a few issues involved:
- a lot of the code is written by people with skill levels that wouldn't be accepted in the outside world. I've got no doubt that there's highly skilful coders working for government, but there's a lot of duds as well and often your code is only as good as the weakest coder in the team. Furthermore, a lot of the weakest coders are the designated "experts" for legacy infrastructure, such as databases, and you find yourself having to rely on their input far more than you'd like
- a lot of government stuff has been outsourced, and generally the outsource partners seem to be less diligent for government contracts
- governments are forced to send everything out for tender, and may need to give work to the lowest bidder or face internal inquiries. In the private sector, you get to eliminate a lot of tender responses, either because you know the respondent is incompetent from past experience or the price is so low that the respondent couldn't possibly deliver a quality service; in government, you don't have the same luxury of filtering out the crap
- in the private sector, a lot of mainframers moved across to Unix, then Windows, in response to changing demand. While these people may not be expert in all 3 areas, they at least know enough to be able to hold a technical discussion with someone else from another area. In government, a lot of mainframers have been doing the same job forever, and you need to tie everything back to their narrow view of the world to get anything out of them whatsoever. You'd better not try to talk "Web Services" with these guys... There's a level of financial support and job security for these types of people in government that allows them to keep doing this, that simply doesn't exist in private enterprise
Now that I've pissed off everyone working in govt IT, I have to reiterate that some of them are extremely good. The issue is that the system doesn't work on a "survival of the fittest" system such as applies in private enterprise.
I've worked on some government contracts, and in my opinion a big part of the problem is in the GSA schedule rate structure that the Federal uses for contractors. It is much more profitable for a contractor on a government project to put many junior people on a project rather than a few senior people, for the same amount of revenue. For instance, a junior developer may cost a contractor $50/hr with overhead, but the contractor is able to bill the government for that junior developer at $150/hr., a spread of $100/hr. A senior developer may cost $100/hr with overhead, but can only be billed to the government at $175/hr, a spread of only $75. Furthermore, the contractor can bill more hours of junior time than senior time under a given budget cap, compounding the effects of the greater spread. Thus, the incentives for contractors are to use as many junior developers as possible on a project, to increase the profit margin.
Unfortunately, It's a rule of thumb in this industry that a few good programmers are a lot more productive than many unskilled ones. The result is that many government IT projects are shoddily built by well-meaning but inexperienced developers who are put in that position by a contracting structure that fails to recognize the realities of the IT industry. Contractors are just responding rationally to the incentives that are presented to them.
These numbers are examples -- in fact the situation may be even worse. Federal government contracts vary in their rate structures, and many are stingier than this. It may well be impossible to bring on a senior developer as a subcontractor because the maximum hourly rate that the government will pay on a project is lower than the cost of the senior developer.
A prime contractor that I worked with staffed a large WebObjects project for the Department of Defense with a dozen or so low-paid, fresh out of community college drones. Every six months -- when a project review was due -- they would bring us on board as subcontractors for six to eight weeks. In that time, two or three of us would take the code base from where it was four months ago and bring it close enough to the required progress to get the contract renewed, and then the prime contractor would say "goodbye" and toss us out. Four months or so would pass by, with their people making little meaningful progress, and we would get a panicked call for six or eight weeks of more work to get by the next project review. (Did I mention that the prime contractor didn't pay the bills for one set of work until they needed us for the next project review? It got so bad that at one point we had to treat them as though their credit rating was zero, and demanded that payment for each week's worth of work be deposited in an escrow account before we would continue.)
By the way, this rate structure is not unique to government IT projects. Other types of government projects display the same professional services rate structure. When I worked for a (then) Big Six accounting firm as an economist, most consulting projects for corporate clients were staffed with a ratio of one partner and two or three senior managers to six or eight associates. However, the Federal government group was staffed with a ratio of one partner and one senior manager to twenty or so associates. I talked to the senior manager, and he told me that (a) the associates in the government contracting group were paid much less than we were on the corporate side since they billed out at a lower rate, and (b) the only way they could make money was to use lots of cheap associates because senior people could only break even at best at government rates.
Ya know, it'd be nice to see a GSA person squirm over this sort of thing in front of Congress some time. Then again, Congress may be part of the problem, as they'd rather generate lots of jobs for constituents, instead of a few.
--Paul
1) A government employee(s) received a very large kickback from contractor (vendor) by accepting to pay the outrageously inflated prices.
2) The accounting department doesn't want their budget cut, so they happily pay inflated prices to "prove" they will need the same or greater funds next year.
(On a side note, the second reason happens all too often. I used to set up enterprise solutions for HP, eg tell IT departments what they need to buy from us to be able to do what they want. Half the time you talked to a government office, they had no project or system to set up, they just wanted to spend money to keep their budget.)
3) Government office accountant tacks on $6,995 to the actual $5 spent on a hammer to hide the funds he's been embezzling.
The situation is ridiculous, but you don't give the government enough credit for being a part of the problem. They're not only stupid, they're a bunch of dirty thieves too. Public servants my lily white....
Beware blue cats moving at
Domain knowledge, I think it is called. That's what matters.
They are all right, except for the mathematician, of course (just kidding...well, mostly).
My own personal list of priorities would be (from high to non-existant):
1) Domain knowledge.
2) Solid data modeling ability.
3) Most everything else.
1,000,000) Buzzword compliance and/or magazine-cover conformance.
Unfortunately, most self-proclaimed prophets of the software world work in the exact opposite order, which is why nearly every project is a pain in the ass.
Vote in November. You won't regret it.
..As I step on my soapbox, donning the asbestos...
This, written by and modded "+5, Insightful" from the same group of programers that:
1) bitched about the NSPE coming down on CS's (emphasis on the science part of CS) calling themselves Engineers with a capital letter;
2) wonders why the IT market is softer than a sponge;
3) Actually debates the need for college education in CS;
and so on.
Now, I'm sure that there are quite a few excelent CS people who deserve the moniker "Engineer" (Linus comes to mind, occuping the other end of the spectrum from RMS).
As for the lowest bidder system, I work for a construction contractor. We build highways, bridges, and the like. We do the vast majority of our work under low bidder contracts. More importantly, we deliver the product on time and of a high quality.
How and why, you ask? Quite simply, because we must. We must because we said that we would. We must because the state deserves a fine highway for the money they give us. We must so that we can stay in business and make more money tomorrow. We must so that the system keeps working.
If you can't do what you do correctly, give it up. You are the people Ayn Rand warned us about.
I think I need a new sig here.
I think that, for most managers, the analogy which would most make sense to them is that Programmers are pretty much the same as Lawyers:
The goal, in either case, is to take a set of rules -- often arcane and ancient (programming languages and operating systems Vs. rules and laws), and combine them in such a way as to allow the client to achieve their wanted ends.
The judge would be the rough equivalent of a wetware execution unit.
Once they accept the lawyer analogy, then you can ask just how reasonable it would be to expect a lawyer to accomplish a lawsuit according to a tight schedule. Although it is doable, the tighter the schedule, the higher the price (often exponentially so).
I came up with this analogy because I ended up, a few years ago, self-representing myself in a reasonably complex lawsuit (It was about 4 years old by the time I got pulled in). With a couple of months heavy research I was able to do well enough in the courtroom (before the chief justice, and later at the Court of Appeals level) to reasonably impress just about every lawyer I dealt with in court.
I achieved this by pretty much applying my programming experience almost one-to-one. I simply treated the legalese and rules of court as a programming language. Old precedents were treated much like code snippits.
If you look at old slashdot postings, I think you can see that good programmers don't have that tough a time with laws and even court decisions. I submit that it's because the paradigms aren't really that different.
Free Software: Like love, it grows best when given away.
I must say that while working at a VA hospital last year I was very much impressed with their computer system.
The VA is the largest healthcare organization in the US, so they have the resources to build their own system. Contrary to what I was expecting, it is intuitive, just plain works, and IMHO blows away the stuff from Cerner or Meditech.
They have been working on it for twenty years, so it has the advantage of maturity, but even the newer bits such as windows interfaces running on Citrix are nice and stable.
Some background on the system can be found here.
Seems that is is mostly implemented in MUMPS so they score poorly in the buzzword complience department.
Anyways, I was just surprised that the government sometimes does seem to "get it".
Wait! But what about Linux?
Time to end the sarcasm for the day..
Linux is not necessarily "cheap". It requires a substantial investment of time and effort in learning how to install, configure and use it well. My time is worth a lot of money. And I have very much gotten great value for my investment of time in learning Linux. In the end, Linux is certainly a bargain, but it ain't "cheap".
Installation documentation is for the lazy. They should've had a proper MSI package that would install the database directly, without any intervention (well, maybe a gui on the installer asking a few easy-to-understand questions, or a few documented properties on the installer command line). Handing over a dump of a database, with or without documentation is weak, especially since it's hardly difficult to write an installer. Especially if you're smart about your database deployment (ie, consider detaching a clean copy of your development database, packaging up the .?df files, and re-attaching it to the production server via an MSI, rather than a shitload of files containing the schema that needs to be loaded).
Here's a quick bulleted list of items that I see as causing problems with the government projects I've been involved in.(yes, I've been doing reports for management waaaay toooo muuuch )
/. to me while I sat by the pool. I am trying to do stuff, as I can, so that I can feel better about the projects I work on.
;-) get more competent people on the project in order to recover from past errors that are really biting us in an um, bad place. Progress is being made, but man, it is slow. (Think glaciers and you'll get an idea.)
1. Requirements change over time, but inadequate funding available to really redo the design
2. The software was developed and designed for a 4 year life cycle and unfortunately we are in our 5th/10th/20th year of maintenance
3. Old software is compared to brand new commercial apps and their features, which didn't exist when the software was originally written. (Think of comparing a telnet, ASCII based application to a GUI app. And yes, ASCII based systems do still exist and are used for real work)
4. Use of cheap, inexerienced people in order to make a higher profit margin
5. Unable to charge a per usage/license/maintenance fee, only able to charge for the development costs up front, so potential profit avenues are reduced.
6. No integration planning on the government's side due to lack of expertise, politics or not realizing that different projects should be coordianted among contractors.
7. Eye Candy tools sold to higher ups without adequate technical input into the chosen packages.
8. "We've never done it that way before" uttered by company management, customers, developers, etc, which leads to long involved discussions and training basically as to why new Method A might be better than old Method B.
Now, the really, really hard part, what to do about it? I dunno, if I knew that, I'd be getting paid a lot more money then I am now and I have my underlings read
Myself, I am working on educating people in our company about other ways and means to make money from software and trying to insidiously
You guys have only a vague idea of how government works. Or if you do know, you have had vastly different experiences than I. I worked for the Dept of Revenue and Finance for a state government and this is exactly how things worked. Each government body, Natural Resources, Transportation, ect, ect each got a set budget based on how much they spent the year before and how much money the senate/governor allotted them from the total state budget that year. The big deal in our agency was to spend ALL of the money that was allotted to us by the end of the fiscal year otherwise next year we would lose what we didn't spend and our budget for next year would be shrank to the same ratio as what we spent the year before. Our budget would actually decrease if we didn't spend the all of the money in our budget!! Logic would tell me that if you can justify your budget but can manage it well and run UNDER your budget you would be REWARDED not the other way around. I digress. So, anyway, at the end of the year the director of the project would tell us to make a "wish list" (he actually called it that) and we got to buy pretty much anything we wanted, including contractors, and do anything we wanted. So, need a PDA? You got it, a new workstation? Got it. You name it, as long as we didn't deplete the pot we got it. Kind of crazy how the system encourages waste like that but it does.
I just live here....
The result is that every once in a while a random student is arrested, delayed and/or deported because of a glitch in the database. As was mentioned in the article, students weren't too worried before SEVIS came into service, but now, the government is acting like a rampaging despot -- but they get to blame it on an opaque, mallfunctioning computer system. What more could they ask for?
Now, if the government wants to deport a student for (say) calling Bush a moron, all they have to do is induce a glitch in SEVIS and then have the student stopped for (say) speeding. One quick look in sevis, and they're in jail or on their way out of the country.
This whole randomness aspect is what has the foreign student body nervous, and it's almost impossible to pin down. It seems like a pretty good opposition supression system.
. . . But as a corrolary to Occam's razor says: "Never blame on belligerence what can be explained by simple stupidity." -- and we're talking about the government, after all.
Free Software: Like love, it grows best when given away.
Remember in late 2001 when the US Department of Interior was ordered by the court to take more than 100 of their web servers offline due to abysmal security? Hired white hats were easily able to gain access to the US Indian Trust database and found no security measures or even audit trails in place. Worried that this could be contributing to the agency's continuing mismanagement and loss of allegedly billions of dollars belonging to Native Americans, Judge Royce C. Lamberth ordered the DOI to "immediately shut down Internet access from any computer, server and system in the department that has access to individual Indian trust data."
The defense counsel noted that the fact that they took down over 100 mostly unrelated servers "...just shows you how inept they are. They don't even understand how these systems relate to each other so they just pull the plug on the entire system."
And now last month they were ordered to disconnect their servers again after refusing to let a court-appointed special master test the security measures they've supposedly put into place since then.
Sounds like an endemic problem for government agencies, at least at the federal level.
SEVIS, like most web-oriented applications, consists of a browser form based interface, application logic, and a database. There's also an XML-based batch update capability. It's all reasonably modern and buzzword compliant.
Looking at the manual, the main problem you would expect to see is rejected transactions. Basically, the system won't accept transactions which indicate something that violates immigration policies. That makes it inherently obnoxious.
But on top of this, apparently the database back end has problems too, since data is reportedly "bleeding" from one school to another. That's not something that an end user (a Designated School Official) can cause; school officials don't have broad enough access rights.
Any major error in the data for an individual tends to prevent transactions which could correct the error. Designated School Officials can only enter transactions which are consistent with the existing data. Anything else requires approval from what used to be the INS, and is now part of Homeland Security. So that creates a huge load on an organization that's always been behind on paperwork.
All entry points to the US can access some of this data, and it's used to decide who gets in, who gets turned away, and who gets sent to a detention center.
The whole system is very Russian - great power over individuals, exercised ineptly.
"You want a vision of the future, Winston? Imagine a boot stepping on a face for eternity" - Orwell.
--there are very few "pure" local governments in the US any longer, and the REASON is that the big federal dollar carrot. Our federal tax rate is extremely high, and most local governments are forced to accept BOTH federal money back to them,after first having a significant portion skimmed for the federal bureaucracy, and always with strings attached "do it this way or no money". that's control, which means the feds control everything. For example, several states have voter referndums, and have voted to allow medical marijuana, but the feds say no, so it's still "illegal". It's pervasive, and crosses into all avenues of governments, from roads to schooling to you-name-it. It's even gotten down to miniscule and obviously supposed to be local zoning, you'll find a lot of it follows federal guidelines now, and most will be changing over. We have a theoretical Union made up of soverign States and the districts and territories,etc as you outlined, but because of how they are funded,and a plethora of federal laws, regulations, edicts, findings, orders and directives, they all (mostly, conversationally/generally speaking now) are just agents of the feds. I think you'd have a hard time finding many local government exceptions to that, state or county. It's an illusion, just like born-with constitutional "rights", independent judiciaries, the jury system acting as a check on bad laws, "real" specie backed money, and free and honest elections.
The reason the same gang of idiots keep getting work from the government is that they're the only people willing to bid on it. Government procurement is so bizarre that unless you have a team of specialists putting the bid proposal together you have no chance of getting it. Every large company I've worked at had a special "Federal Systems" division whose job it was to deal with that sillines.
Well ya-know,
... specialist with little or no idea of commercial market technology application/architecture requirements.
.... .... ..., I suspect (no proof), as above .... Well supposedly if it could not be done correctly, competently, successfully, ... then the OEM/OSD vendor and government contracting folks should state in the R&D SOW requirements (or someplace in the signed contract) potential problems and possible failures to meet expectations. Everyone involved are supposed to know what they are signing, the requirements, and limitation. So, if you don't get what you paid for, then whose fault is it in a court of contract law. ....
... just like the trickle-down tax-cuts are already helping US.
..., Okay.
Low-bid may not be the problem, competent selection of appropriate technology products and capable competent vendors as a low priority to cost may be the problem.
I mean, technologist (Tech-Advisors) are not the government employees on the selection/review panels. They are Legal, Contracting, Acquisition, Logistics,
As a matter of public policy (and taxpayer money) is this level of non-functionality to be expected in these sorts of projects? No, I suspect (no proof), as above
Is the contractor just ripping off the taxpayers with bad code? Yes, I suspect (no proof), as above
How hard is it to write software like this that works? Not very hard
The article focuses on the SEVIS database, but have others noticed similar trend in other government information systems? Yes/No I suspect (no proof), as above
REMEMBER: It appears the game is to maintain government management levels, while reducing worker-bees and pack-mules (contract out wherever and whenever possible). This will simplify personnel management, provide vendors to workload and blame when problems and cost escalate, maintain the military industrial complex, and funnel more tax dollars into the growing economy at an appropriate level
OldHawk777
Reality is a self-induced hallucination.
So, never take what anyone says very seriously
Unaccountable leaders are masters, and unrepresented people are slaves. How do US and EU fare?
Automated unit testing is definitely an excellent way to ensure broken code doesn't get out the door. How code gets released when the only guarantee of it working is that a developer 'thinks it'll work' is beyond me.
Oh, brother... feel the need to reflect on what you said, but don't even know where to start.
.NET is something that, as they say, they 'have been working on for a while, but haven't got it quite yet'!
.NET stuff.
:( Not that I really expected to either. So, while, yes, I give you the money to run the systems, I don't really get to chose whether YOU run them or that other guy with an apparent total absence of any computer experience.
Sorry if I offended you, but don't take it personally. Besides, we were not working with USAF, in fact, not with the military at all, so most of my statements probably do not apply to you by a long shot.
The thing I was really mad about was that they hire someone without any knowledge whatsoever to do their IT. When I was saying that installing windows was a mountain of a task, I meant it. Not kidding. For that particular person it was. For you it isn't, that's cool, and I have no problem with the government employing you to do that stuff. I have a problem with them employing someone with the computer knowledge and experience that is comparable to my grandma's (sorry, grandma!), and me having to pay for that.
>Installing
Probably awaiting training for
Well, I have no problem with their selection of the platform and choice. It wouldn't be mu first choice, but that's cool - different tools are for different jobs, yada, yada... The problem I do have is that extremely stringent requirements are made, which, in turn make us turn out more expensive code, which, in turn we all pay for. And it turns out that the requirements did not have to be that stringent at all - not only they do not have that infrastructure in place yet, but they don't even know why/if they need it. Quite contrary to what we've been told all along till the moment came to deliver the project.
I agree, but YOU give us the money to run our systems.
Not really, if you think about it. Yes, I do decide to live in the US, and hence I indirectly decide to abide by the US laws, including paying taxes. On the other hand, I have rather limited chances to actually decide how my taxes get spent. Yes, thanks for pointing out that I can talk to my congressman. That's about the only thing I can do, and I haven't really seen much come out of it
The American people have decided that my CCNA/CCNP, 5 years of linux experience, 8 years of Windows experience, certifications in ATM, HP Openview, Promina, etc... are worth $32k/year. I don't bitch about my paycheck.
There are two things I have to say about that.
1. That sucks.
2. I probably should take a few lessons from you on how to be content.
But seriously, this is aglaring mis-management of resources by the government in general, just as I said. Firstly, they underpay you, and thus reduce your motivation to work, and also risk loosing you - a valuable asset with tons of training, knoledge, etc. Secondly, they hire a guy who is not qualified to do the job, but nobody really knows how much he knows because they don't have an HR person who can tell a difference. The resume looked good, so he got the job. Probably for a similar salary too. Both cases are a gross mismanagement of resources entrusted to the government by the taxpayers. I would love to see that guy getting fired and someone like you getting an extra, say, 32K to your paycheck. I bet you wouldn't mind either for just a few hours a week (I doubt you need to spend any more to do that guy's job). Too bad I don't get a say in that matter... For that matter, don't invade Iran or whatever the next US target will be and add it to people's paychecks. I'd applaud this decision and even grumble less about my taxes. Too bad I have no say in that either...
If you don't like what you saw, you can either fire us or try and come up with a plan to fix the problems you saw. Either way, we both win.
No, I don't like what I saw. Not a bit. No, I am not going
Jobs? Which jobs?