Slashdot Mirror


Oracle Exec Strikes Out At 'Patch' Mentality

An anonymous reader writes "C|Net has an article up discussing comments by Oracle's Chief Security Officer railing against the culture of patching that exists in the software industry." From the article: "Things are so bad in the software business that it has become 'a national security issue,' with regulation of the industry currently on the agenda, she said. 'I did an informal poll recently of chief security officers on the CSO Council, and a lot of them said they really thought the industry should be regulated,' she said, referring to the security think tank."

57 of 264 comments (clear)

  1. Of course by Anonymous Coward · · Score: 5, Insightful

    Oracle are (rightly or wrongly) worried about competition from Open Source. Regulation of the software industry would be a major benefit to them in this. Anyone who didn't meet the regulators' criteria couldn't compete.

    1. Re:Of course by arivanov · · Score: 5, Informative

      No.

      Not at all in fact.

      Open Source has nothing to do with this and I would suggest that you actually do some research instead of parroting the usual "Open Source will fix all problems" mantra.

      Oracle has recently been shown to have up to 5 years turnaround to patch glaring security holes. This has reached the point where security researchers like Litchfield who have had an ongoing relationshop with Oracle for 10+ years do not want to work with any longer. Note, we are not talking sc1pt k1dd10tz sitting in their dad's basement here. The people in question consult banks, governments, large corps and cannot actually recommend them a working security policy because Oracle cannot get its head out of its arse and patch a security problem for multiple years after it has been reported to them.

      As a result people who used to work on Oracle problems and reported them in private to Oracle have started posting them openly "0 day" style or giving Oracle a 1 month fixed notice of an impending posting regardless of does it have a patch or not.

      Obviously Oracle is pissed.

      First of all it breaks all of their marketing bollocks about unbreakability and security to bits.

      Second it is threatening their sales to customers in regulated markets where security issues must be addresses within a fixed term after being known.

      This is the reason for them to rattle the "regulation" sabers and moan about a "patch culture". Open Source has nothing to do about it.

      --
      Baker's Law: Misery no longer loves company. Nowadays it insists on it
      http://www.sigsegv.cx/
    2. Re:Of course by SnowZero · · Score: 2, Funny

      I noticed that you used the Queen's English in writing your post, which means you must be one of those "evil British hackers" mentioned in the TFA.

      Remember everyone, the lower the patch frequency a product has, the more secure it must be. Pay no attention to the wookie.

    3. Re:Of course by Anonymous Coward · · Score: 5, Insightful

      Open Source has nothing to do with this and I would suggest that you actually do some research instead of parroting the usual "Open Source will fix all problems" mantra.

      I said nothing at all about open source fixing all problems, or fixing any problems for that matter.

      If you've ever worked in an industry that's gone from being unregulated to being regulated, you'll know that one of the first things that happens is that the number of participants decreases as all those that can't afford the overhead of the regulations and of maintaining a compliance department (not the same as quality assurance; experts in the interpretation and application of the regulations) leave the field. One of the next things that happens is that the number of new suppliers entering the market plummets.

      There are many disasvantages to being regulated - additional costs and potential damage to reputation if you conflict with the regulator, but the big advantage is a barrier to competitors entering your market.

      That does NOT mean that regulation is a bad thing - that depeneds on the specifics. However, if a supplier is arguing for regulation of their market then the chances are that they're doing so to cut down the competition. It's unlikely that they're asking for it because they can't control their own engineers and are hoping a regulator will do better.

      If you've observed Oracle at all you'll have noticed that they are worried by competition from open source. It is likely that that's their target in this, though it could be other smaller competitors.

    4. Re:Of course by Bing+Tsher+E · · Score: 2, Insightful


      First of all it breaks all of their marketing bollocks

      Second it is threatening their sales to customers in



      It sure sounds like an Oracle problem to me. How the hell can they try to drag in a regulatory body, whose essential function would be to raise the barrier to market entry and protect and grow their market share?

      Well, we *know* how they can try. No way in hell they will succeed.

  2. Well, obviously.... by Mikachu · · Score: 4, Insightful

    Of course the "patch, patch, patch" business plan is bad for consumers. But in truth, most software companies don't care about consumers. They care about making money. As it happens, most people really don't care enough about the subject to make the companies change.

    One of the examples in the article asks, "What if civil engineers built bridges the way developers write code?" and answers, "What would happen is that you would get the blue bridge of death appearing on your highway in the morning." The difference here, however, is that civil engineers couldn't get away with making rickety bridges. You would find public outcry if it broke while people were on the bridge. In the software world, however, they scream and the companies just fix it with a patch and it shuts the consumers up. Saves a lot of money and time in testing at companies.

    1. Re:Well, obviously.... by pe1chl · · Score: 3, Insightful

      Another difference is, that when you build a bridge and it collapses you will be held liable for it.
      When you build software, you just attach a EULA that says "I shall not be held liable" and that's it.

      Once software makers, especially the large commercial companies, find themselves in the same boat as other industries and have to pay compensation when bad stuff is released, they will certainly step up quality control to the next level. Because it saves them money.

    2. Re:Well, obviously.... by zacronos · · Score: 2, Insightful

      You are making things much more extreme than they need to be. Would the failure of *most* software applications cause you to get hurt? No. Would the failure of a small portion of software potentially cause you injury? Yes. A very small portion. Similarly, although there are some books whose misinformation could cause you physical harm, most software is more akin to a recipe in a book. What happens if it goes wrong? I waste some time and ingredients. Maybe the smoke alarms wake up my neighbors. And that's it. Do I think the entire non-fiction book industry should be regulated to cover those books that might cause you harm? No.

      If an author writes something blatantly dangerous, whether intentional or not, perhaps they should be liable. Perhaps -- it depends on additional circumstances (I don't trust everything I read, so it would partly depend on the general perceived trustworthiness of the source). But regulation is overkill.

    3. Re:Well, obviously.... by Thing+1 · · Score: 4, Funny
      1. Take scissors.
      2. Poke your eye out.

      Damn, now I'm liable for your actions.

      What?

      --
      I feel fantastic, and I'm still alive.
    4. Re:Well, obviously.... by pe1chl · · Score: 2, Insightful

      Of course software can be treated as a science, with mathematic roots and stable foundations.
      Of course people could look upon programmers as they look upon engineers: this is something that you need a good education and training for, and that you should not attempt as a naive bystander.

      In reality, this is not happening. There have been times when unemployed people with some not-so-practical education were retrained as programmers in a couple of weeks. And we see development environments that push "trial and error" development.
      In such an environment it is to be expected that bad quality software is developed.

      It is a natural reaction to say "we will go under when we get stricter quality control requirements". Maybe some badly managed companies will go under. Too bad for them. But a company with good quality products will survive, and the customer will profit from that.

  3. yeah... by narkotix · · Score: 3, Informative

    this explains all....bunch of slackasses!

    --
    We played dungeons and dragons for 3 hours.....then i was slain by an elf
  4. Wow... is this what the software industry needs? by zappepcs · · Score: 4, Insightful

    Wow, really nice slice on the Brittish.. FTFA

    She claimed that the British are particularly good at hacking as they have "the perfect temperament to be hackers--technically skilled, slightly disrespectful of authority, and just a touch of criminal behavior."

    It seems to me that the F/OSS industry has shown that fast, and effective patches can be applied, and that software we pay for has less then reasonable responses to such threats. I use F/OSS and I'm quite happy with the response they have to software problems. I don't expect it to be of NASA quality, just to be good, and it is. For the amount that you have to pay for Oracle et al, you expect fast resonses on problems. The problem is that they don't respond fast enough. There is NO bullet proof software, though I give a hat nod to the guys that wrote the code for the Mars rovers. Certainly, Oracle isn't showing that they deserve the price they demand, at least not in this respect.

    I might be off topic, but all the F/OSS that I use, delivers what I pay for AND MORE. The software that I have to pay for is lacking. When you pay thousands of dollars, you expect patches in a timely manner, and before you get hacked. I think this is a big reason that F/OSS will continue to win hearts and minds across the world. Despite the financial differences, F/OSS actually cares, or seems to, and they do fix things as soon as they find out, or so it seems to me. They have a reputation to uphold. Without it, they will just wither and die. It amazes me that investors, stock holders, and customers are willing to wait for the next over-hyped release of MS Windows while they suffer the "stones and arrows" of the current version. It appears that no matter how bad commercial software is, people rely on it. Yes, of course there is more to the equation than this simple comparison, but I think this is important. If you weigh what you get against what you pay, F/OSS is a good value. The argument is old, and worn, but ROI is a big deal, and patches make a difference to ROI.

    Is it really what the software industry needs? A set of rules to make things bullet proof.. which of course won't ever happen. That kind of mindset is totally wrong, even though the sentiment is in the right place, you can't regulate quality in this regard. Sure, you can make sure that all gasoline is of a given quality, but I don't trust the government to test and regulate software. The US government already has a dismal record of keeping their own house in order on this account, I don't want them telling me how to do anything or what I can and cannot sell, never mind what I can give away for free under GPL.

  5. Engineers vs mechanics by Colin+Smith · · Score: 3, Interesting

    Most "engineers" are mechanics. It is indeed time that the software developers, in fact everyone in the industry started to act in a more professional manner, that means understanding the principles, designing and building systems which are known to be able perform to specifications. When I say known, I mean modeled and tested.

    You can start taking the profession seriously by joining your local professional engineering body.

    --
    Deleted
    1. Re:Engineers vs mechanics by cyber-vandal · · Score: 5, Insightful

      As soon as the management starts to then so will I. Or did you think unrealistic deadlines and bad overall designs come from the grunts?

  6. Simple Solution by giafly · · Score: 2, Funny

    Re: "Chief Security Officer Mary Ann Davidson has hit out at an industry ... wedded to a culture of "patch, patch, patch," at a cost to businesses of $59 billion"

    So, if people pirated software, instead of buying it, there would be no need for vendors to provide patches and business would be $59 billion richer.

    --
    Reduce, reuse, cycle
  7. How To Lie With Statistics by Toby+The+Economist · · Score: 5, Insightful

    "I did an informal poll recently of chief security officers on the CSO Council, and a lot of them said they really thought the industry should be regulated,' she said, referring to the security think tank."

    Funnily enough, I'm just now reading Darrell Huff's book, "How To Lie With Statistics".

    The problems with her poll are manifold.

    Firstly, her group is composed of securiy officers who are on the CSO Council; might their views differ from security officers not on the Council? perhaps tending to be more of the belong-to-an-organised body sort? might perhaps therefore be predisposed towards regulation?

    Secondly, of the officers on the Council, which ones did she ask? all of them? or did she have a bias to tend to ask those she already knows will agree? perhaps those who found it rather boring and aren't quite so pro-organised bodies just don't turn up at the meetings.

    Thirdly, what's her position in the organisation? if *she* askes the question, are people more likely to say "yes" than they would to another person?

    Fourthly, are people inclined in this matter to say one thing and do another, anyway? e.g. if you do a survey asking how many people read trash tabloids and how many people read a decent newspaper, you find your survey telling you the decent newspaper should sell in the millions while the trash should sell in the thousands - and as we all know, it's the other way around!

    Fifthly, even if the views of members of the CSO Council truely represent all security officers, and even if they were all polled, who is to say the view of high level security officers is not inherently biased in the first place, for example, towards regulation?

    So what, at best, can her poll tell you? well, at best, it can tell you that chief security officers who regularly turn up at meetings will say to a particular pollster, for whatever reason, and there could be widely differing reasons, that they think regulation is a good idea.

    Well, I have to say, that doesn't tell us very much, and that's even assuming the best case for some of the issues, which is highly unrealistic.

    1. Re:How To Lie With Statistics by bit01 · · Score: 2, Funny

      So, what you're saying is: Her survey needs a some patches?

      ---

      Insisting on absolute safety is for people who don't have the balls to live in the real world - Mary Shafer, NASA

    2. Re:How To Lie With Statistics by Unique2 · · Score: 2, Funny

      Or, as Homer Simpson put it..

      "Oh, people can come up with statistics to prove anything. 14% of people know that."

      --
      No trees were harmed in the posting of this message. However, a great number of electrons were terribly inconvenienced.
  8. Re:One problem by paskie · · Score: 2, Insightful

    Someone sends you an image and tricks you to open it in Gimp (social engineering of that kind is not really very hard to do). Then depending on nature of the bug, he can install a backdoor calling out to him and asking for further commands, or whatever.

    --
    It's not the fall that kills you. It's the sudden stop at the end. -Douglas Adams
  9. Re:One problem by Loconut1389 · · Score: 2, Interesting

    worth noting that I'm aware that an exploit in the gimp in a corporate environment that would allow an employee to gain root on the machine may or may not matter depending on the setup. if well administered, gaining root would at most allow the user to set up a server or install something. At worst, someone has set up ssh keys to get in other places and you've already given out the keys to the kingdom and left them behind unmonitored 1/8" plexiglass in the lobby.

    Anyway, applications that do not listen on a port and are mostly basic user applications probably don't matter in the scheme of things.

  10. Re:One problem by fatphil · · Score: 3, Insightful

    If you've ever forwarded an image file to a friend who might forward it to other people, then you are a potential vector for malware. Sure it may look like a picture of a carrot that looks like Tom Hanks, but if it causes a buffer overrun that installs a rootkit, and one of the friends-of-a-friend wants to 'photoshop' out the logo in the corner, then someone's getting as 0wned as if they clicked "yes" after downloading an executable.

    The moment you say that security doesn't matter in on place, that becomes the ideal place for attacks to be focussed.

    FatPhil

    --
    Also FatPhil on SoylentNews, id 863
  11. This, from Oracle? by Anonymous Coward · · Score: 5, Insightful

    Whose patches are infamously known to break stuff, released in 6 month batches (maybe just a mite too spaced out?), and so infamously poor at actually patching their bugs that they currently have an open, publically known 0day with no patch, because they screwed up patching it last time and it's still open?

    And they think security patches are a poor model?

    Maybe that's why they put so little effort into them. Maybe that's because they put so little effort into them. Maybe some people think of it as bridge maintainance, and they want to build the bridge perfect every time? When they can't even get patches right when they have six months between them? Fat chance.

    Honestly, out of the people in the software industry, even Microsoft do a better job, security-response-wise, than Oracle. And when you're behind Microsoft in that department, you've really got a problem.

    They need to make a serious effort at security response and treat it like a real priority, not show-ponying about regulation when, if they were regulated, they would still be completely unable to respond, but would point to poorly-drafted regulation as "tying them up in red tape".

    1. Re:This, from Oracle? by Anonymous Coward · · Score: 2, Interesting

      Until us white-hats get so annoyed at Oracle's lack of meaningful response that we lose all semblence of patience with them and decide that the public good would best be served via Full-Disclosure of the security holes that Oracle will not fix in a timely manner, so that everyone can make an informed decision whether or not to use Oracle, and (pending Oracle's eventual response, if any) can make an attempt at third-party mitigation via firewalls, SQL proxies, etc.

      This has, of course, already happened.

  12. Re:Wow... is this what the software industry needs by cyber-vandal · · Score: 4, Funny

    She claimed that the British are particularly good at hacking as they have "the perfect temperament to be hackers--technically skilled, slightly disrespectful of authority, and just a touch of criminal behavior."

    Sums me up perfectly old boy (well maybe not the technically skilled part)

  13. Another failed cross reference by 228e2 · · Score: 4, Interesting

    This infuriates me to no end, when people use references they saw on the back of a cereal box beacuse they thought it was cute. FTA:

    "What if civil engineers built bridges the way developers write code?" she asked. "What would happen is that you would get the blue bridge of death appearing on your highway in the morning."

    Im sorry, but there are crazy people scanning my highway for open ports and i dont see script kiddies pinging my roads. Graffati aside, they are left alone. Code that is written works just fine if people dont try to over flow buffers and install rootkits. The bridge I see out of my window is fine because people dont hit it with sledge hammers.



    Just my 2 cents . . . .

    --
    Since when does being a Socialist mean 'someone who has a different opinion than me'?
  14. Real pointy-hair speak here by Dasher42 · · Score: 2, Interesting

    People outside the software development field really do make an awful lot of assumptions about the number of things that can go wrong in millions of lines of source code. Specification versus implementation is a tricky beast by itself.

    If they really want to follow through with this talk, they'd better be prepared for the design decisions that go along with it, code reuse most of all. One thing that I think is particularly detrimental to code reuse is a proprietary model where the OS and every software vendor re-invents wheels over and over. You're going to need more open specs to change that.

    If this is rooting for regulation of the software industry, beware. The big guys have a lot more to gain from this than the small innovators and startups. Who would really want to take advise from stereotyping wags like that anyway?

  15. Just Be Clear by Enderandrew · · Score: 3, Insightful

    Often, when consumers are given the choice they prefer to have software sooner, even in a beta state. We joke about how official releases have made us all beta testers, but that doesn't seem to stop us from purchasing software.

    Industry regulation is a very bad idea. It will cripple OSS development. It will place an unnecessary burden on taxpayers to fund the red tape. Furthermore, wouldn't regulation somewhat require the regulators to in the end have access to source code?

    Do you think major corporations are just going to hand over source code? Can you imagine the leaks?

    Lastly, the government has time and time again demonstrated they have little to no understanding of technology. Do we really want them making sweeping decisions regarding software?

    --
    http://blindscribblings.com - Tasty pop-culture in conceptual fashion.
    1. Re:Just Be Clear by erroneus · · Score: 3, Insightful

      Often, when consumers are given the choice they prefer to have software sooner, even in a beta state. We joke about how official releases have made us all beta testers, but that doesn't seem to stop us from purchasing software.

      Actually, it does. At least in my case, and in the case of the business I work for. The fact is, we have quite a few programmers on staff due to the realization that we KNOW we cannot trust anyone but ourselves to address the concerns of the company directly and diligently. We don't create our own word processors. We have no plans to write our own Photoshop clone. But for many apps that are critical for business flow, we either wrote it ourselves, or have a great deal of leverage over the development of the apps we use.

      Industry regulation is a very bad idea. It will cripple OSS development. It will place an unnecessary burden on taxpayers to fund the red tape. Furthermore, wouldn't regulation somewhat require the regulators to in the end have access to source code?

      OSS would have an inherent exemption. Regardless of where or how it is used, it's still 'hobby' coding. No pretense is made that it is a for-profit effort. However, if there are any OSS projects that are designed for for-profit, then yeah perhaps some level of consumer protection is in order. EULAs have questionable legal status as it is, but I think it's time we struck them down as invalid and forced 'professionals' to accept the blame for shoddy work. As for burdens on taxpayers? OMG. Are you serious? And as for regulators having access to souce code? Probably not at bad idea! We've all heard of source code escrow. Perhaps it should ALL be that way.

      Do you think major corporations are just going to hand over source code? Can you imagine the leaks?

      Yeah, they would as a continued cost of doing busines. Many of the products we use in the physical world are easily duplicated and most are. Unsurprisingly, there is more than one maker of clothing. More than one burger joint. More than one maker of plastic food storage containers. More than one maker of automobiles. In these cases, it's not the technology that differentiates the product. It's the QUALITY and the reputation of the business (and yeah, the price too) that factors into consumer choice.

      But yeah, I see your point about leaks... it could result in software piracy, copyright violations and all sorts of nasty things that... hrm... hey wait a minute! They are ALREADY a problem! This wouldn't create the problem and I can't imagine it adding too much more fuel to it.

      Lastly, the government has time and time again demonstrated they have little to no understanding of technology. Do we really want them making sweeping decisions regarding software?

      No, I don't want to see more government oversight. But I would like to see more consumer protection. Do you think the consumer doesn't need it? If not, then why not? If so, then how would you propose that consumers get that protection?

      Look. There was a time before the FDA and various medical boards. To live life without them protecting the recipients would be rather unimaginable wouldn't it? We don't want people driving on the streets without all manner of regulation... driver's licenses, safety inspections, liability insurance. We require that many of the products and services we use regularly have regulation to guarantee minimal quality standards and some of them aren't as 'critical' as software. We don't allow EULAs and disclaimers to get in our way either. There's a cancer warning on every label for cigarettes. Doesn't stop people and governments from going after the tobacco industry. Why should software have such an exemption? Because it's PRESENTLY unregulated as medical/dental practice once was? Because it's an unimaginable mess to clean up?

      There are ways for goverment to be involved without being complete morons. How about people with PhDs in software development sitting on the board of regulation

  16. For those who do not know Oracle: by mustafap · · Score: 4, Interesting

    They are the company who have the worst user interface tools on the planet.

    The GUI's would have sucked in the 1980's.

    Every SQL statement was designed by a dfferent person, with a different syntax.

    If the guy expects us to assume he is an authority on the subject, he should clean up his own rubbish first.

    --
    Open Source Drum Kit, LPLC deve board - mjhdesigns.com
  17. Typical fear mongering by Masa · · Score: 3, Insightful

    Well, patches are not nice and of course it would be better for customers if the product would be perfect from the start. It's true that the most software products are buggier than, for example, fifteen years ago. On the other hand, there are several reasons for the (lack of) quality of the modern computer software. Tight dead-lines, investors, competition, to name few. And of course it's always possible to cast some blame to the software engineer.

    However...

    I don't like that she is using age-old classics for fear mongering. "National security" and the bridge analogy to be specific.

    Bugs themselves are rarely the problem when we are talking about "national security". For some odd reason it seems that people have forgot the importance of physical separation of the public network and sensitive information / infrastructure. It's stupid to blame the tools if the user is an idiot (and in this case I mean those "chief security officers", who design these braindead infrastructures for corporate networks).

    I don't understand how anyone in their right minds could suggest any kind of regulatory system for the software quality. It's practically impossible to control and what if there is some sort of accident caused by some regulated and "certified" product? Is this certification (or what ever) a free pass for the software provider? This would turn to be an ultimate disclaimer for the software companies. Or - the other way around - the ultimate responsibility, which would lead to the point where there are no more software engineers because there is too much personal responsibility involved.

    Besides, in my opinion, Daividson insults British people pretty badly and describes them as "slightly disrespectful of authority, and just a touch of criminal behaviour." I think that's not a very professional comment.

    Anyway, this is what I'm thinking about of this whole article.

  18. But it's different things by Sycraft-fu · · Score: 4, Insightful

    The difference is that software is expected to be cheap, released fast, and to run on all kinds of platforms. Sorry, that leads to errors. You can have software that never needs patching, you just have to take some concessions:

    1) Development cost will be a lot more. You are going to have to spend time doing some serious regression testing, besically testing every possible compination of states that can occur. May seem pointless, but it's gotta be done to gaurentee real reliability.

    2) Development time will be a lot more. Again, more time on the testing. None of this "Oh look there's a new graphics card out, let's get something to support it in a month." Be ready to have years spent some times.

    3) Hardware will be restricted. You are not going to be running this on any random hardware where something might be different and unexpected. You will run it only on hardware it's been extensively tested and certified for. You want new hardware? You take the time and money to retest everything.

    4) Other software will be limited. Only apps fully tested with your app can run on the same system. Otherwise, there could be unexpected interactions. The system as a whole has to be tested and certified to work.

    5) Slower performance. To ensure reliability, things need to be checked every step of the way. Slows things down.

    If you aren't willing to take that, then don't bitch and demand rock solid systems. I mean such things DO exist. Take the phone switches for example. These things don't crash, ever. They just work. Great, but they only do one thing, yoy use only certified hardware, they've had like one major upgrade (5ESS to 7R/E) in the last couple decades, and they cost millions. You can do the same basic type of stuff (on a small scale) with OSS PBX software and a desktop, but don't expect the same level of reliability.

    The thing is, if your hypothetical bridge were software (and it's quite simple compared to software) people would expect to be able to put the same design anywhere and have it work, drive tanks over it and not have it collapse, have terrorists explode bombs under it and have it stay up and so on and have all that done on 1/10th of the normal budget.

    Until we are willing to settle for some major compramises, we need to be prepared to accept patches as a fact of life. I mean hell, just settling on a defined hardware/software set would do a lot. Notice how infrequent it is to see major faults in console games. It happens but not as often. Why? Well because the hardware platform is known, and you are the only code running. Cuts down on problems immensly. However take the same console code and port it to PC, and you start having unforseen problems with the millions of configurations out there.

    Me? I'll deal with some patches in return for having the software I want, on the hardware I want, in the way I want, for a price I can afford.

    1. Re:But it's different things by FireFury03 · · Score: 2, Informative

      Take the phone switches for example. These things don't crash, ever. They just work.

      Sorry, that's just not true. Phone switches _do_ crash - it's just that the telcos have learnt to build networks with a hell of a lot of redundency. If a phone switch goes down then the worst that'll happen is you'll lose the calls that are in-progress on that switch (actually, the switch may be able to recover the calls if it resets quickly enough - just because the signalling goes down for a few seconds doesn't necessarilly mean the voice circuits have also failed). New calls will be routed via a redundent switch.

      Of course, building any kind of highly redundent network is very costly so people avoid doing it if they can help it.

      Also, phone systems are only designed to deal with a fairly specific set of events, they don't need to worry about security holes, etc, because everyone on the network is fairly trusted. I'm sure this will change very quickly in the near future with the convergence of the internet and the PSTN.

      Probably the closest you'll get to completely reliable are the fly-by-wire systems used in planes, but even then they still put a lot of effort into redundency, with multiple computers arranged in voting systems so faults can be spotted and corrected or completely taken out of service as early as possible. This is probably also the most similar scenario to the bridge analogy - if it goes badly wrong, people die.

    2. Re:But it's different things by MathFox · · Score: 4, Informative
      Too much time is spilled in "integration" and testing because management refuses to plan time for high level design. One can create better quality software in about the same amount of time when one uses a proper development process. Some hints:
      • Do a proper high-level design.
      • Review your design with all stakeholders, including QA/testing and marketing.
      • Plan time to fix issues in all steps of the project.
      • Prototypes are to throw away, don't build your product on top of them.
      • Require specifications for all parts of the application.
      • Peer review all specifications.
      • Peer review all code.
      • Perform unit and module tests on all parts of the code.
      • Fix bugs as early as possible.
      Development will cost more and take longer
      It will take more time till a programmer starts coding, you will need less time to find and fix bugs. A clean design leads to cleaner module interfaces, which makes tracing the bug easier. Doing module testing means that a lot of bugs are found early and are automaticly traced to an offending module, which means quick fixing.

      Restrictions on hardware and software
      For high-reliability, yes. It's hard to write software that can replace blown out fuses. I think it is rediculous that an Internet connected Windows system is "automagicly" degrading to a near useless condition, so Windows should be thrown out.
      It should be possible to run a decent selection of software on a server, where the user selects his mixture, taking into account his desired level of reliability. An Operating System should sufficiently isolate processes so that a single bug doesn't crash the machine.

      Slower performance.
      Needless consistency checks slow things down (and improper checks may even cause instability). With a proper design you know what to check where, so you only check once. In my experience good quality software performs better than bad software.

      Take the phone switches for example. These things don't crash, ever. They just work. [...] they've had like one major upgrade (5ESS to 7R/E) in the last couple decades
      Sorry, I had to pick myself up from the floor, fell of my chair laughing. I did work for a telco and crashed a few switches myself, the Lucent stuff you mention. Ericson makes more reliable systems (but they have a different design philosophy). And software updates for phone switches appear regularly.

      --
      extern warranty;
      main()
      {
      (void)warranty;
      }
    3. Re:But it's different things by orasio · · Score: 2, Insightful


      So, what I trying to say is that computer science needs some fundamental theories, techniques and tools applicable in real life situations before software can be trusted by design. Till then, software engineering is just a craft, where testing, patching and the like is needed to keep the system going.


      There are fundamental theories that can prove you that the software you are using does exactly what it should. You can prove your software right.

      The only problem is that it's too expensive, takes too much time, and no one wants to pay for that kind of costs.

      You could start your own company, selling bugfree software, but you would have to compete with Oracle. They only need to _say_ they have no bugs, actually making it a reality would be prohibitely expensive. But you could prove me wrong, of course.

    4. Re:But it's different things by spirality · · Score: 2, Interesting

      Here here.

      This quote seems appropriate:

      [G]overnment's view of the economy could be summed up in a few short phrases: If it moves, tax it. If it keeps moving, regulate it. And if it stops moving, subsidize it. -Ronald Reagan

    5. Re:But it's different things by R-ballbat · · Score: 3, Informative

      Take the phone switches for example. These things don't crash, ever. They just work. Great, but they only do one thing, yoy use only certified hardware, they've had like one major upgrade (5ESS to 7R/E) in the last couple decades, and they cost millions.

      As other posters have already noted, telephone switches do crash, or much more frequently, have impairments short of a complete outage. Lucent's markteting boasts of five 9s availability, but thats based on aggregate FCC reporting data, not for any one switch.

      And the claim that there has been only one major upgrade makes me laugh. Right now there have been about twenty generic releases (major software releases), although some of the recent ones (since about 5E16 or so) are supposed to be split between wireless & wireline. In between generics, there are numerous patch releases. That's just the software. On the hardware side, there have been many hardware changes since the No. 5 ESS came out in the 80's. Some of the changes have been optional, but many have required grafting new hardware onto an existing switch (like CM & AM retrofits.

      7/RE was more of a collection of upgrades and marketing, than anything unique in it's own right. Lucent has since gone back to calling it 5ESS, just like they have with 5ESS-2000, and every other marketing name change they've tried. I can't wait to see what Alcatel tries.

      There's redundancy and reliability built into most vendor's equipment, but it's far from perfect, especially when you start adding humans in to the mix.

    6. Re:But it's different things by spirality · · Score: 3, Insightful

      You make lots of good points. However, software is generally not written from scratch. That is, more people are maintaining existing systems than writing new ones.

      Second, software is maleable. It grows over time. Unlike the bridge, which is static. After the initial release you add to it. Oftentimes in ways that were unintended by the original designers.

      We do not have Brooklyn Bridge 2.0.

      So yes, everything you mention would improve quality, but because of its maleable nature, software will always be different than things in the physical world.

  19. Shoddy Straw Man (at best) by charlievarrick · · Score: 2, Insightful

    The whole bridge::software analogy is:

    1. A straw man man argument and a poor one at that. It's not uncommon for civil engineering projects to require "patches" http://en.wikipedia.org/wiki/Big_dig#Reports_of_su bstandard_work_and_criminal_misconduct

    2. An obviously bad analogy, I'm sure the specifics will be discussed here ad infinium.

    1. Re:Shoddy Straw Man (at best) by OP_Boot · · Score: 2, Insightful

      Does no-one remember the Millenium bridge across the Thames? http://www.urban75.org/london/millennium.html
      It was opened, closed within two days, then patched.

  20. Typical manipulation by suv4x4 · · Score: 2, Insightful

    That's a typical manipulation move: announce a problem we all know exists, ask "why does not solution X exist that solves it" and then push for solution x to happen.

    Somewhere in between the hype surrounding the issue, noone stops to ask themselves "wait, this solution doesn't even prevent this problem".

    Liability is one thing, regulation before manifacturing: another. Given how much success government institutions have with software patents, how could we trust our software's security to them?

    First thing they'll do is "regulate" the existence of a backdoor for the police/CIA/FBI into everything that resembles software technology with access control.

    1. Re:Typical manipulation by Antique+Geekmeister · · Score: 2, Interesting

      How about we make Oracle a trade? If they throw out the end-user licenses and become liable for the flaws and damage caused by the flaws in their software, we'll protect them from security flaws published without telling Oracle at least 3 months before publication?

  21. Maybe they could take lessons from OpenBSD by Bunyip+Redgum · · Score: 2, Informative

    Yes, OpenBSD still has a few security patches each version, but thier methodology is far better than many other software developers.

  22. British "Hackers" by smoker2 · · Score: 2, Insightful
    Speaking as a Briton -

    the British are particularly good at hacking as they have "the perfect temperament to be hackers--technically skilled, slightly disrespectful of authority, and just a touch of criminal behavior."
    should read -
    the British are particularly good at hacking as they have "the perfect temperament to be hackers--technically skilled, disrespectful of authority, and are not averse to criminal behavior."
    BTW, I see the use of the word "hacking" as a good thing, versus "cracking". Also, "criminal behaviour" is an ever changing variable, defined by clueless beaurocrats. I break the law every time I play a dvd or mp3 on my linux system.

    The ideal system (for the government) is one where we are all criminals.

  23. Coming from a company.... by freedom_india · · Score: 2, Insightful
    Coming from a company that for Years has perfected the art of vaporware, and charges the cost of a Battleship to build a kid's 2-ft long boat.

    She forgot to say that if Oracle were to adopt truthfulness in adverts and avoid vaporware and prevent charging the cost of a FULL Salon to setup cardboard emplants the industry would be $159 billion richer and we would have all have witnessed the Second Coming with the money...

    Sheesh what a rant from a company that is responsible for the Vaporware strategy...

    --
    "Doing what i can, with what i have." ~ Burt Gummer
  24. Of Course, Bridges Are Easy by slarrg · · Score: 2, Interesting

    As a software developer, I lie awake at night dreaming of only having to solve a problem as simple a bridge. It has only one use case: vehicles of a known weight with a known wheel surface traveling in predetermined paths at a predetermined rate of speed. Also, if you dig down deep enough on the Earth, there is always something solid to anchor the bridge. Then bridge developers have millions of existing examples which can be studied and reused.

    In software, half the stuff people will do with it were unknown while it was being designed. It's placed on top of existing code (operating systems, existing architectures, outmoded designs) which deceases the stability of your own applications. Runs on systems with wildly different equipment from any test environment available with drivers written by corporate hacks which decrease your applications' performance. Then users use the application with many other applications which can interfere in numerous ways with the other applications while sucking up the required resources (memory, hard-drive space, etc.) your application needs. Which is not even mentioning the malicious attacks by those who only wish to wreak havoc on the systems. Then if any of the myriad of things running on the computer fail, everyone starts screaming that the developers are the problem.

    The problem is that people expect the software to perform absolutely flawlessly while doing things that the developer never intended on a wide variety of equipment that cannot not be tested on or controlled by the developer. It's the world of continuous progress. No one changes the use cases of bridges after they are designed. No one every just tacks a few more lanes onto a bridge or decides to make the bridge into an airport runway after it was built. When was the last time someone re-commissioned a pedestrian bridge for railway traffic or built an additional level on the bridge for a shopping mall without significant studies to determine feasibility?

    And yet if bridges were scrutinized the same way as software, people would be in an uproar about all the deaths that are only possible because of the bridges: people jump off of them, cars crash over the guard rails, tornadoes and hurricanes wipe them out, and if they are not maintained properly they eventually fall to the ground under their own weight. Books could be filled with the death stories of people killed by bridges. Everyone sees how silly it is to blame a bridge designer when people are not using or maintaining the bridge in the way intended.

    This is not to say that there is not badly designed software out there or that much of it couldn't be done better. However, people need to understand that to have completely bullet-proof software would require studying all possible use cases, locking all features and hardware, then designing a system that will perform only those features and nothing else ad infinitum. Of course, that's exactly what a group of mindless, uncreative government regulators will do. I'd rather have innovation and patches and the largest number of technical resources and methodologies available for the problem.

    The core problem is that solutions are being locked up by patents and business methodologies rater that allowing all the code to be shared and reused by everyone allowing everyone to benefit from new applications of previous solutions. I don't really expect Oracle to agree since they make a tremendous amount of money from closed code and patents and would really love to kill all new entry into the market. Of course, they don't really believe in making code that works without patching, either, or they would no longer be patching their own supposedly well-designed and executed flagship product. It's just rhetoric and business as usual.

    1. Re:Of Course, Bridges Are Easy by Reverberant · · Score: 2, Interesting

      Sorry, but as a mechanical engineering (who works with a lot of civil engineers), I can't let this one pass. You wrote:

      I lie awake at night dreaming of only having to solve a problem as simple a bridge. It has only one use case: vehicles of a known weight with a known wheel surface traveling in predetermined paths at a predetermined rate of speed.

      and then you wrote:

      people would be in an uproar about all the deaths that are only possible because of the bridges: people jump off of them, cars crash over the guard rails, tornadoes and hurricanes wipe them out, and if they are not maintained properly they eventually fall to the ground under their own weight.

      All of those factors do need to be accounted for in bridge design, along with many others (including wind loading, vibration, earthquake stability, pedestrian 'missiles', grade, water control, surface icing, freeze/thaw cycles, underbridge clearance, sewage & water/hazmat runoff, traffic flow, sight lines, and so on). Go read up on your state building codes. Or better yet, go down to your local college engineering library and have a look at SAE/ASTM/ANSI engineering standards for bridge design.

      As for:

      Books could be filled with the death stories of people killed by bridges

      Amazon gives quite a few hits when searching "bridge disasters" books. Also, check around the NHTSA site some time.

      And lets not forget that if a faulty bridge does fail (even in a non-fatal incident), the engineer that stamped the design may very well go the jail.

      Is bridge design harder/simpler than software design? I don't know, but I do know that it's far from "simple."

      [As an aside, you wrote:

      Also, if you dig down deep enough on the Earth, there is always something solid to anchor the bridge.

      While it's true that you can always reach bedrock if you dig deep enough, a lot of times it's not practical to dig deep enough to bedrock. For example, the Big Dig slurry walls go down more than 100 ft in some places and don't hit bedrock. In those cases, you have to different techniques (tiebacks, heavy masses, soil mixing/grouting etc) to anchor your structure. Not every location is like Manhattan]

  25. If only... by Jimboscott · · Score: 2, Insightful

    "What if civil engineers built bridges the way developers write code?" she asked. If only all IT projects where well defined as briges plans...

  26. This is simple... by JC+Lately · · Score: 2, Interesting

    The market should determine the value of a quality product. The only regulation that should change is the ability of software vendors to avoid accountability with the complex EULA. If all the businesses in the world sued Microsoft for the effort to continually patch their software it might just get them to do something. Of course, the cost of the software would rise too, at least in the short term. Secure and bug free code doesn't need to cost significantly more provided you have the correct process and design for quality up front. It seems obvious that Microsoft uses the Beta program and even their initial production releases to test their products. Every release of their OS is cobbled together with wire, gum and duck tape. How about a real security model? How about true multi-user capabilities - not just "My Documents"... How about preventing Rootkit installations period? How is it ok to allow an OS to be so easily attacked and modified without some administrative control? If MSFT and many others approach this topic like a joke, then we need to have our laugh in the courts.

  27. I write the standard. She doesn't get it by ajv · · Score: 5, Informative

    I write the OWASP Guide, which is used by basically everybody as the standard for web application security, and is the official standard of Visa, many governments, and so on.

    She talks to CSO's who mostly are bean counters. They see money down the drain from patching. I agree with them - patching is inefficient and wasteful. But it's necessary as Oracle builds crap, buggy and insecure software. They are easily five+ years behind Microsoft in churning out safer software. Buffer overflows, high privilege accounts, public access to highly privileged library functions - all this stuff is easily 10-15 years old and should not be in Oracle 10g, but it is.

    Oracle has time and time again outright refused to get on board with a secure coding program, often fixing just the little bug which gained root privileges, exposed all your data, or destroyed the database outright. Instead, they should be searching for all those types of bugs and fixing them in one hit. Davidson has more than enough time to address the root cause

    She is holding software up to the standards of bridges. Bridges have tolerances and over-design built into them. Most software does not. Often to make artificial deadlines made by beancounters, software is shipped with bugs. Often the bugs are not found for some time and requires researchers to go find them. If it's not researchers, its the commercial 0day crowd. This is where Davidson shows she is an amateur and must be replaced. It's best for HER customers to be secure, and that means shipping secure software. Shipping insecure software does not prevent the 0day houses from creating exploits. Oracle's reputation as a solid data partner is worthless if we lose all our data to an attacker because Oracle suppressed the news from us, rather than fixes the problem.

    It is simply unachievable to build bug free software for a reasonable cost. What is required is care, developer training in secure software techniques, and defense in depth. That is our tolerance and over-design. Oracle is sadly lacking. She has had five years to get their developers onto a program of building this into their platforms, and she's failed miserably. I will be interested to hear what standards they use, and if it's mine (OWASP Guide), or if they do their own based upon ours, or use Microsoft's.

    I've called for her to step down more than once. When she attacked the good name of David Litchfield and NGS Software, I was outraged - this was like shooting the messenger that their "unbreakable" software was pure crap, which we already knew - but now know through his unstinting efforts that it is truly appalling and not fit for purpose.

    If this latest "push" for too little too late does not work out, she should be sacked by the Oracle board for the good of all Oracle shareholders and customers. She's had more than enough time to make a positive change, and should make way for someone who really understands security.

    --
    Andrew van der Stock
  28. Bridge of blue death by SmallFurryCreature · · Score: 5, Insightful
    You mean like that double decker highway that collapsed during an LA earthquake? Maybe that one that fell apart in a stiff wind?

    Ah but most bridges don't fall apart that easily. Well no, most bridges are best on millenia old technology. The more advanced designs are designed to very fine tolerances.

    Take that "new" superhigh bridge in france. It cannot support the weight of an ocean liner. Would collapse if you blew up one of the pillars and a nuclear strike within a mile would cause it to fall apart. Hell even a simple typhoon would do it.

    Ah, but none of those things are likely to happen so the bridge wasn't designed for it.

    That is the big difference between software and hardware. Even the simple thing of user supplied data is different. In software you need to check and check again every bit of data to make sure the user hasn't supplied the wrong kind of data. Hasn't the user put a 1 gigabyte of data in a bool field?

    In the real world this is kinda easier to check. I think you would notice if a truck instead of being loaded with 10 tons was loaded with 10.000 tons. A clue might be the way its axels are buried in the asfalt.

    So the bridge designer only has to design for the entire roaddeck being filled with trucks filled with lead and that is it. He can work with real world limits. The french bridge was really tested like this. It withstood the test and is in theory designed to withstand 2x the load. That ain't much of a tolerance but in the real world you can easily discount such a heavy load ever being put on the system. Someone driving up with an ocean liner on his trialer would draw attentention.

    Not so with software. I can put anything I want in this input form and the software better be designed for it. I am not constrained by real world limits.

    That is what makes software engineering so difficult, you need to account for every possibility. If you checked a piece of data and wrote it too storage then you need to check it again when you read it. This would be like a bridge engineer testing the steel, then having to check it every day to see if hasn't turned into porridge by an act of god.

    Oh and one final note. A lot of software insecurity only happens under attack. Bridges don't exactly last long under attack. Blowing one up is amazing easily. Any army engineer can do it.

    --

    MMO Quests are like orgasms:

    You may solo them, I prefer them in a group.

  29. Re:Bridges and software are not the same by Znork · · Score: 2, Informative

    "Second, there are numerous examples of bridges that have had structural flaws."

    And the very concept of road construction is very much a trial and error with thousands of people actually getting _killed_ every year, often because of known problems that should have been fixed to provide a safer infrastructure.

  30. Re:Nope, sorry by gbjbaanb · · Score: 4, Insightful

    I prefer this scenario, if bridges were like software.

    We all know you can build bridges out of spaghetti (surely you did it at engineering college?), so at a company like the one I work for, a college kid would be hired, lick the bosses arse and mention that he could build a much better bridge with the tools and new practices he learned at his university where he was taught the latest, cutting-edge technologies. Boss is impressed and asks for a prototype (not stupid this boss, prototype first, then ship it. He's learned loads on the 'how to manage technical people' course he went on)

    So, new kid builds the prototype and, yes, it can carry a model car across. Even scales up to carry the stress test of a model lorry! Boss is impressed - "why can't you old guys do that?' he says, thinking of the praise he'll get at the next board meeting.

    So they set about scaling it up to suit their customers, larger bridge, industrial spaghetti, held together with glue and installed in the customer's city, across the river. Customer is really happy with their upgrade, and after testing it with a compact saloon realise they can de-commission the old steel monstrosity. All's happy... until it rains. But, that's ok, its just new-bridge teething troubles, just requires a patch with some waterproof paint and rubber sealant.

    Until a lorry decides to cross.. and it snaps, but again, just patch it up by reinforcing with some old-technology steel girders. Doesn't look so pretty and won't be as maintainable, but.. what the hell, the project manager declares it a success so the comapny is happy, and new customers are told that the company's flagship bridge uses only the latest cutting edge technologies.

    Unfortunately, in the real world, software is not as visible as a bridge so new customers can only go with the marketing and sales waffle. Once they've bought it, its too late.

  31. Re:If software was built like bridges! by SmurfButcher+Bob · · Score: 2, Insightful

    The other irony -

    Ths, coming from Oracle... who Litchfield has been bashing non-stop, for NOT patching holes for years -

    http://search.securityfocus.com/swsearch?sbm=%2F&m etaname=alldoc&query=litchfield+oracle&x=26&y=7

    --

    help me i've cloned myself and can't remember which one I am

  32. Pretty easy by Moraelin · · Score: 4, Insightful

    Given what Oracle's problem _is_, probably what they _really_ want isn't regulation of the "you must prove that your software passes this and that criteria to be allowed to sell it." (Which would also raise entry barriers for competitors.) I mean, really, if you were a company which takes five fucking _years_ to bother patching a security hole, and even then only when an exploit was widely publicized, you're not going to ask for a regulation that'll ask you to pull the product off the market until you fix it.

    The kind of regulation they want is more like "you're an evil irresponsible hacker and going to jail if you disclose bugs in someone else's product." Yes, it's security by obscurity. But that way Oracle can happily spew bullshit about being secure and unbreakable, and never have to fix any bugs.

    Basically Oracle doesn't give a shit if Corporation X's database is riddled with bugs and exploits. They just don't want the PHB's at Corporation X to know about it.

    If it also results in some entry barrier, all the better, but that's not the main goal.

    --
    A polar bear is a cartesian bear after a coordinate transform.
    1. Re:Pretty easy by DaveHowe · · Score: 2, Informative
      The kind of regulation they want is more like "you're an evil irresponsible hacker and going to jail if you disclose bugs in someone else's product." Yes, it's security by obscurity. But that way Oracle can happily spew bullshit about being secure and unbreakable, and never have to fix any bugs.

      Its a big planet, but a small world.
      Any regulation Oracle could come up with would apply *only* in those countries it could get to accept it - so if it were based in the US, it would be binding on Oracle (as a US company) and other US companies, plus any OSS projects based in the states - but Full-Disclosure mailing lists based in Norway or India would still be free to post 0-Day or fixed-delay postings, and those would be readable anywhere in the world.
      Insisting on (American Sited) regulation can only shoot Oracle in the foot.

      --
      -=DaveHowe=-
  33. So, like, whats the alternative? by TheSkepticalOptimist · · Score: 2, Interesting

    To get it right the first time?

    We know that will never happen. I mean, to get it right the first time requires months or even years of beta testing using a very LARGE user base in order to get all the quirks and holes and issues out of the system.

    It is arrogant to assume that ANY group of programmers can get it right the first time while developing software, and its not to discredit the quality of programming they are offering. Management is largely at fault for why software products fail to work right out of the box. Management decides when a product is shipped, what features go into the product, and ultimately, at what point does a product have few enough bugs to be shipped.

    I think it is laughable that an Executive at some company thinks patching is wrong. Most likely, she has been responsible for some problems and boners at Oracle that have required patches or updates.

    Software has become too complicated to ensure you have the perfect build being shipped for sale. You can't take a multi-million line application and expect it to work perfectly in the dynamic environment that is an end-user's computer. You can't anticipate that the end user might install some other software that might enable a security hole in your own, you can't anticipate that hackers might find a way into your meticulously crafted security protocols. You simply cannot anticipate what will happen to your software the moment it leaves you build box. A GOOD company will release stable and secure software, but ensure that ANY unanticipated issues are patched quickly. This is SIMPLY the NATURE of the game.

    Adding regulation to software development will destroy the industry, period. If it requires a 3rd party to review the software and test it before it gets a stamp of approval this will unnecessarily add months or even years more to the development cycle. Any government regulatory board will be swamped with numerous pending software releases, and they won't be able to handle the sheer amount of quantity of software being released. Also, a regulatory board, even made of highly trained software engineers, will not be able to fully understand every piece of software they are given to test. Unlike a Civil Engineer whose building techniques were literally set in stone thousands of years ago, software engineering is forever changing and adapting, a single person cannot keep up with all the new concepts implemented in software design. In the end, a software regulatory board will be even less effective then the current mentality of software patching, because in the end, the regulatory board will put their seal of approval on a faulty product giving end users a false sense of security. Patching that product will take months because the patches will have to go through the same regulatory process.

    It is arrogant for CSO Mary Ann Davidson to make wide sweeping comments about the state of security and quality in the software industry. Oracle isn't standing a the head of the field with perfect software. Look for Oracle Security Patches in Google and you will find pages and pages of links patching Oracle's products. If you are frustrated with patching mentality, clean up your own house. ANY company offering better quality and more secure software right out of the box will be recognized quickly and will quickly rise to the top in success. But you can't yell from the gutters that things need to improve without looking around you and realising where you are.

    --
    I haven't thought of anything clever to put here, but then again most of you haven't either.
  34. Re:hindsight is always 20/20 by erroneus · · Score: 2, Insightful

    Most coding errors, according to the observations of many, are either typographical or the use of ill-advised programming practices. This is especially true where things like stack overflows are concerned which are exploited in the vast majority of vulnerabilities.

    There are projects out there such as qmail and related projects written specifically to be secure and reliable code. If one mature project can walk that path, they all can. The word "childish" was used to describe my argument and so I respond suggesting that it is childish to not exercise care in the design of software.

    Yes, hindsight is 20/20 but I think any programmer would be hard pressed to come up with truly original coding techniques. Hindsight being 20/20 should be the very reason all future code should be more secure and sturdy. It's not because even though there is hindsight, no one is learning from these mistakes.