Posts Tagged ‘development’

Has Mobile Internet Really Got Involved in the “Competition of the Background”?

Thursday, May 3rd, 2012

In the last year, experts predicted that the cost for mobile Internet to get users will largely increase. The cost will be much higher than the cost of PC products. Mobile Internet has got into the “competition of the background” age, and it will cost more to win new users, so companies with no background and no resource have nearly no chances at all. Those who are optimistic on the business of mobile Internet have begun to fear. Is the mobile Internet order similar to the PC Internet order?

Despite of that, I don’t agree with the opinion that the cost to get new users will be much higher than the cost of PC products. Here are some of my arguments.

1. It is obvious that the mobile terminals are a few times more than the PCs, especially in the period that users of intelligent mobile terminals are increasing greatly.

2. It takes long to turn on a mobile terminal, which provides more time windows for companies to develop new users, and provides more time windows for users to get service (such as the company has more opportunity to display ads to users on the interface).

3. New features such as positional information and privacy of mobile terminal are what the fixed Internet lacks.

4. As an easy-to-get tool for humans to enjoy service, the mobile terminal will increase the operating frequency of the original business of the fixed Internet, which will lead to a qualitative change. Take VOIP and IM service for example, after they become the mobile VOIP and the mobile IM, the operating frequency will increase a lot, and this tendency will sacrifice a big part of the global telecom operators’ business, which will results that the basic telecommunications service reduces to a kind of a value added service of the Internet.

5. The mobile terminal is human’s tool; in the meantime, a human is also the mobile terminal’s tool. That is, the human is the intelligent external device or the intelligent interface, which transforms people, events and things into data which the mobile device can recognize and input into itself. With the human being an intelligent external device, the terminal can interact with the people and events around and do some necessary processing. Thus, mobile devices can have a big influence on humans’ life styles.

6. The functions of mobile terminals are more standard, which set the stage for mobile Internet service to be suitable for most terminals. For instance, with the standard audio configuration of the intelligent mobile terminals, the voice message function of mobile IM can be easier to achieve.

With abundant businesses and large numbers of potential users, mobile Internet will not spend too much winning users if it provides the right services. There is a long way to go for mobile Internet services!

Did you like this? Share it:

How to make informed decisions when outsourcing cloud computing

Wednesday, May 2nd, 2012

Executives are jumping on the outsourcing bandwagon as cloud service providers promise unlimited scalability, reduced expenditures for hardware and IT staff, and the ability to offload software and routine maintenance at a moment’s notice.

In fact, Gartner analysts predict that 35 percent of enterprise IT expenditures will be managed outside the IT department’s budget by 2015.

But overzealous executives eager to jump to the cloud may encounter security issues down the road, as the security practices of the cloud service provider are often unclear — up to and including where the data is stored. A survey by Symantec shows that only 27 percent of companies have set procedures to approve cloud applications that use sensitive or confidential information.

“It’s easy to deploy data and applications to the cloud, but most executives don’t have a handle on the true risks associated with those decisions. So they fail to build the proper assurances into the procurement process,” says Brian Thomas, IT advisory services partner for Weaver.

Smart Business spoke with Thomas about the risks of outsourced computing services and why companies should seek an auditor’s assurance during the procurement process.

What are the specific risks associated with the cloud and outsourced computing?

Possible issues include data integrity, confidentiality, privacy and security, system availability and reliability, and data retention and ownership. But the threat level and mitigation strategies vary depending upon the importance and sensitivity of the data being processed by the cloud service provider.

It may not matter if you can’t access your sales prospects for a few hours if your hosted CRM application goes down, but business would come to a halt if your hosted e-mail or e-commerce system crashes. Therefore, the provider’s server redundancy and service-level contract guarantees may be the most critical risks to address, where in other cases, the primary concerns may be security and privacy issues. Certainly, regulated companies need to pay particular attention to how the cloud service provider addresses their regulatory risks.

How can executives identify outsourcing risks?

When considering cloud computing project ideas, executives should ask a lot of questions. First, they must understand the nature of the cloud services being procured and the sensitive aspects of the systems being hosted or managed by the provider. After getting an understanding of the types of data and systems that will be exposed to the cloud, executives should ask ‘what if’ questions of their project teams. Such questions should be focused on general risk areas including data integrity, confidentiality, privacy and security, and system availability and reliability.

Executives should also get an understanding of their company’s exposure to risks related to data ownership and retention. Examples of questions to ask include, ‘What will happen if we lose connectivity to our cloud service provider for an extended period of time?’ And,  ‘What happens if our cloud service provider is acquired by another company?’

How can executives use an outside audit to ensure the performance of service providers?

A third-party assessment by a qualified professional is the only way to know whether a cloud service provider has designed and implemented effective measures to identify and mitigate relevant risks, as self reporting is inadequate and providers may simply tell you what you want to hear.

You can save money by having your auditor review a cloud service provider’s service organization controls (SOC) report. There are three reports available under the AICPA’s standards for service providers. SOC 1 is based on the Statement on Standards for Attestation Engagements No. 16 (SSAE 16) and is best suited for companies that previously used SAS 70 for Sarbanes-Oxley or financial audit compliance. SOC 2 addresses the design and operating effectiveness of a service organization’s controls over the security, availability, processing integrity, confidentiality and privacy of a system. This may be more valuable for executives evaluating the controls a cloud service provider has in place to address risks beyond those relating to financial reporting.

SOC 3 involves the same scope as SOC 2; however, the report contains less detail and is intended for broader (marketing) audiences.

When are SOC 2 and SOC 3 appropriate?

Executives should request that their cloud service providers submit a SOC 2 report where applicable. The scope is generally best suited to address the concerns of users of cloud services. SOC 2 reports provide details of the procedures executed by the auditor to test the controls in place at the cloud service provider, and the results of those procedures.

If a cloud service provider only has a SOC 3 report available, that may be sufficient for getting comfortable while evaluating the service provider during the procurement process. However, executives responsible for the cloud services should request that the service provider submit a SOC 2 going forward to ensure that they can monitor the provider’s efforts to address any failed control activities.

Are there other certifications that can help mitigate risk when transitioning to the cloud?

If the provider cannot provide a SOC 2 report, see if they are certified as ISO 27001 compliant or if they have obtained assurance reports from a security firm addressing the ISO 27001 standard. If the provider processes, stores or transmits credit card information, it is required to meet the Payment Card Industry’s Data Security Standard (PCI DSS). Be careful when using these other forms of assurance. Their scope is generally narrower than SOC reports and may follow less rigorous quality assurance standards. However, in the proper context, they can be useful for executives attempting to get information about the activities performed at the cloud service provider.

Read More:

http://www.sbnonline.com/2012/05/how-to-make-informed-decisions-when-outsourcing-cloud-computing/?full=1

Did you like this? Share it:

Advice to Choose High Quality Offshore Outsourcing Software

Wednesday, May 2nd, 2012

Offshoring occurs whenever businesses increase using info administration as well as monitoring techniques in order to deliver or even "contract out" function in order to others or even impartial companies besides their own workers. Freelancing allows businesses concentrate on their own main or even primary company whilst offshoring non-core features in order to businesses, which focus on particular regions of knowledge.

The actual existing slogan: "Focus on which you need to do greatest as well as outsource the remainder. Businesses conserve hundreds of thousands within cost to do business. Additionally, businesses, which focus in many cases, are superb within their specialization as well as get access to assets as well as technologies that the organization that not really focus on which region couldn’t pay for to purchase by themselves. Well-liked features in order to outsource tend to be phoning centers, payroll as well as it providers.

Offshoring is actually freelancing overseas. Usually, the term offshore development software conjures upward thoughts associated with moving low-tech production work to reduce price suppliers abroad; nevertheless, recently, offshoring offers broadened towards the hi-tech support field this type of software program improvement, architectural as well as sales. Because of this, offshoring has turned into politics soccer since it successfully exchanges work abroad as well as place unemployed workers. Numerous political figures earn ballots through campaigning towards this.

Each outsourcing as well as offshoring developments tend to be allowed with the free of charge circulation associated with info permitted by way of brand new "Internet centered" info administration as well as collaborative company techniques. These types of techniques permit 2 geographically dispersed businesses in order to work together, work with others, connect as well as conduct business as though just about all workers within each business had been co-located inside a down-town high-rise. This particular smooth procedure offers provided increase in order to phrase for example Digital Companies, Digital Businesses as well as The online world Companies.

There are some limitations also like the actual drawbacks associated with each outsourcing as well as software custom development need to do along with interfacing using the finish client. In order to contend within the worldwide economic climate, businesses should be 100 % customer-focused, in a position to react instantly in order to client requirements and/or style services and products to satisfy client requirements.

To judge as well as react to client requirements, businesses have to correctly connect, work together as well as user interface using the client whenever possible. Right now, generally, the businesses that manage the actual outsourced function tend to be much taken off the client. Regarding offshoring, they’re internationally having a various vocabulary, another lifestyle along with a various thought process. Well-documented as well as promoted instances tend to be customer support phone centers.

Read More:

http://www.sooperarticles.com/technology-articles/software-articles/advice-choose-high-quality-offshore-outsourcing-software-925961.html

Did you like this? Share it:

Outsourcing contracts and negotiations getting more complex

Wednesday, May 2nd, 2012

Given the maturation of the IT outsourcing market and the introduction of more standardized offerings like cloud computing, you might assume that negotiating IT service deals is getting easier.

Not according to the lawyers hammering out the agreements.

KPMG reports that 41% of outsourcing attorneys surveyed for its 2012 Legal Pulse report indicated that complexity in contracting for outsourced services—as evidenced in things like service levels, contract structure, pricing models, use of global sourcing—has actually been increasing. (The survey included outsourcing attorneys at 31 law firms.)

Sure, buyers and suppliers are more experienced and new out-of-the-box services are gaining traction. But that may be increasing complications in contracting. More sophisticated buyers are seeking higher-value benefits from outsourcing, globalization is increasing, and business leaders are sending more complex functional and process work out the door.

"As buyers gain more experience they continue to push the envelope in terms of scope, complexity of work outsourced, number and diversity of service providers utilized, geographical scope and mix of service delivery models. Complexity comes with the territory," says Stan LePeak, KPMG’s director of research for advisory services. "So while the outsourcing market is maturing, it is not necessarily getting simpler, easier, or safer."

Address IT Complexity Upfront

A complex contract, in and of itself, is not a bad thing. It can result in greater benefits for the outsourcing customer or may better address issues of pricing, performance and risk "Problems arise when complexity is not adequately addressed, recognized or accounted for upfront and in the ongoing management of the outsourcing efforts," LePeak says.

The key is to make sure that the level of complexity in the legal documents is commensurate with the nature and goals of the outsourcing arrangement and not just the result of a once-burned buyer or overzealous counsel.

Typically, as services markets mature, best practices in contracting tend to cement themselves in the way of standardized pricing, performance assurance and—particularly—defined terms. However, 27% of the attorneys polled reported little or no standardization in defined terms, which LePeak says also points to the fact that while outsourcing is maturing, it’s also been expanding into uncharted territory in terms of scope, objectives, and geography.

The survey asked about the most contentious issue in outsourcing negotiations. The most challenging contractual terms to reach agreement on were limitation of liability, indemnities, step-in rights, pre-defined direct damages, and supplier financial risk—all of which involve potential financial exposure to supplier or client. The most challenging commercial terms to come to consensus on were termination fees, termination rights, service levels, transformation and transition fees—all of which involve service provider risk.

Arguments over terms related to transformation rated 17% higher than last year as more buyers are attempting to include transformation goals in their outsourcing engagements. "Transformation involves building into the contract terms, conditions, or measures for process transformation or for innovation or other nebulous but value-laden keywords," says LePeak. "The challenge is translating a somewhat conceptual idea like transformation into contracted terms and conditions and factoring in all the events and conditions that could impact transformation being achieved or not."

Read More:

http://www.itworld.com/it-managementstrategy/272802/outsourcing-contracts-and-negotiations-getting-more-complex

Did you like this? Share it:

IT Outsourcing: What You Don’t Know, Might Be Costing You

Saturday, April 28th, 2012

For many companies, the management of IT outsourcing is becoming increasingly complicated, problematic – and expensive. While there’s no question that outsourcing can help fill gaps in IT department services, there’s also a growing consensus that confusion regarding negotiated terms and conditions, lack of transparency, and faulty integration of cost and utilisation reporting can cause the vendor relationship to spiral out of control.

Despite best efforts to get their arms around technology consulting, project labor and support services, many CIOs now can’t help but look at their provider’s monthly bill and wonder:

  • Are we being as efficient as possible with this contract?
  • Do we know if this contract is still cost-effective?
  • Can we be sure we are being billed at the correct rate?
  • How many resources have been consumed?
  • Have the services we’re paying for actually been performed?

Of course, all of these are legitimate questions, and more and more companies are finding that it pays to track down the answers. In fact, I have found that more than 30 percent of mycustomer base is losing valuable resources because of ineffective IT outsourcing contract management.

Granted, traditional contract pricing typically includes a fixed fee for a contracted volume of services, with variation on fees for volumes above or below those target thresholds. (Additional resources required are known as “ARC’s.” Credits for reductions in services provided or resources consumed are called “RRC’s.”)

This ARC/RRC methodology was designed to account for service/resource fluctuations, but when customers lack visibility into the processes that determine ARC’s and RRC’s, they lose opportunities to identify how best to utilise the services the vendor provides.

What’s more, as IT outsourcing contracts continue to grow increasingly complex, this level of uncertainty is becoming much more than a mere annoyance. It’s costly, and a lack of definition and understanding can lead to even bigger headaches down the road.

What are vendors doing to remedy these problems? Not much, apparently. And that means many customers are left feeling as though their IT outsourcers are leaving them in the dark.

For example, I have seen several cases where the original cost model based on the outsourcer invoice data did not include details on the operational environment. As a result, one of our customers who had outsourced a considerable amount of services was unable to conduct a detailed analysis on how the environment was being used and where to look for cost saving and optimisation opportunities.

In addition, some vendors are notorious for sending customer’s billing data in two separate reports: one from finance, which accounts for base contract service levels and ARC/RRC adjustments; the other from project managers, outlining server utilisation and other operational metrics.

This siloed reporting structure leaves customers hamstrung and creates ambiguity that inevitably ends up favoring the vendor. Why? Because without meaningful integration of the data from these two reports, they don’t have a simple way to connect the dots and make meaningful business decisions.

Is there anything your company can do to reverse this trend? What steps can you take to more effectively manage your IT outsourcing contracts? For starters, look for ways to marry technology outsourcing cost data with information about utilisation. This type of integrated analysis can help you:

  • Optimise hardware utilisation: Precise information about the server environment, including utilisation metrics and detail on how servers are provisioned, provides a better understanding of the resources consumed and the cost to consume them. Armed with these insights, you’ll improve your view of what resources should be optimised – and which ones can be deferred
  • Understand the TCO of your IT service portfolio: Determine total cost, cost drivers and business consumption of your IT service provider. Retained costs and other internal costs that fall outside the vendor contract should also be part of this analysis.
  • Shift IT spend to “Change the Business” initiatives: Identify trends that can lead to further innovation, cost savings, process efficiencies, and competitive advantage.
  • Renegotiate existing contracts: Contracts often contain clauses that allow you to renegotiate if your requirements have changed and specific services aren’t being utilised.
  • Uncover immediate cost savings: Analysis of integrated metrics can identify “quick wins”, such as moving provisioned services to a lower tier of service (gold to bronze, e.g.)

Remember: When your business depends on IT outsourcing, it’s imperative that you understand how to derive optimal value from your vendor contract. Once you start combining IT operational and financial data, you’ll gain actionable insights that will help improve your decision-making and lead to efficient, cost-effective management of both the IT services and resources your vendor provides.

In short, it’s time to put an end to all the uncertainties in your outsourcing contracts. Take a collaborative approach to start finding the answers you need, because I guarantee that once you do, you’ll discover that when it comes to managing IT outsourcing vendors, knowledge is power.

source:

http://www.businesscomputingworld.co.uk/it-outsourcing-what-you-dont-know-might-be-costing-you/

Did you like this? Share it:

Windows 8 Release Candidate Coming in Early June

Thursday, April 26th, 2012

The Microsoft Windows 8 release preview will arrive in plenty of time for manufacturers to have Windows 8 devices "out in the fall well ahead of the holiday buying season," said analyst Al Hilwa. "Shipping early means an even bigger variety of devices by the holidays" that will be running Microsoft Windows 8.

Microsoft will launch a Windows  8 release preview of its next generation operating system in early June. The announcement was made on Tuesday by Stephen Sinofsky — the president of Microsoft’s Windows division — at the Windows Developer Days conference in Japan.

Microsoft’s release schedule for Windows 7 began with the launch of the W7 developer’s preview on October 28, 2008. Then in 2009, Microsoft rolled out the W7 public beta, release candidate (RC), and release to manufacturing (RTM) versions on Jan. 7, April 30 and Oct. 22, respectively.

This time around, Microsoft has changed the designations for its incremental W8 OS releases to developer (Sept. 13, 2011), consumer (Feb. 29, 2012) and preview (early June).

"Barring any major issues, an early June roll out of a release candidate caliber version of W8 is in fact earlier" than many industry observers had expected, said Al Hilwa, director of applications software  development at IDC.

The W8 release preview will arrive in plenty of time for manufacturers to have W8 devices "out in the fall well ahead of the holiday buying season," Hilwa said. "Shipping early means an even bigger variety of devices by the holidays."

A New Mobile Platform

When we asked Hilwa what the impact would be of each subsequent W8 release on third-party app developers and service operators, he said he does expect independent software vendors to begin to take more notice of each new W8 release — and with some ISVs already showing visible interest in W8 because they view it as a new mobile  platform.

"Traditional PC  ISVs will likely start to take notice with the June release," Hilwa said. "Business ISVs will likely be the last to come and will likely add modules for their apps around business-to-consumer functionality."

With its new cross-over capability to run on media tablets and other computing devices equipped with ARM-based processors, however, Windows 8 may present Microsoft with more challenges to have a final release-to-manufacturing version ready for an October rollout to tablet  makers as well as PC manufacturers. The good news for Microsoft, however, is that the new OS will radically expand the sheer number of platforms on which W8 can run.

"All indications are that we will see tablets and convertible devices at various points of the weight and price spectrum with Windows 8 itself," Hilwa said. "The theory is that Windows RT devices will be lighter, cheaper and have better battery life, but I am guessing they are going to get a run for their money from Intel -based machines."

Adapting to a New PC Paradigm

So far, however, Hilwa is impressed with the extensive set of consumer friendly features and capabilities that Microsoft has packed into its consumer preview release of W8, which he has been using for the past couple of weeks.

"From a quality perspective the consumer preview version of Windows 8 is amazing," Hilwa said. "I have to pinch myself sometimes when I see the device sleep and wake-up in a couple of seconds."

Hilwa’s principal concern from the consumer perspective is whether people will welcome all the new changes or be overwhelmed with having to change their past computing behavior to fit Microsoft’s new paradigm. The response of consumers to all the changes may depend on how long they have been using Windows — with younger PC users potentially finding it easier to adapt to the new computing environment.

"There are some things I am still trying to figure out in Windows 8 and I have been using a PC for 20 years," Hilwa said. "Maybe that is why."

source:

http://www.sci-tech-today.com/story.xhtml?story_id=12000EO2A2BC&page=1

Did you like this? Share it:

InfoPro Ranks Among Top 12 Training Outsourcing Companies

Wednesday, April 25th, 2012

Adding another feather to its cap, InfoPro Learning, Inc., an award-winning learning solutions provider, secures a position among the top twelve companies in the 2012 Training Outsourcing Companies Watch List, announced by Trainingindustry.com. The list recognizes highly competent companies offering outsourced learning services across the globe.

InfoPro demonstrated excellence in most of the selection criteria of the Watch List such as innovative service offerings, ability to provide services on a global basis, unique and proven approach to Business Process Outsourcing (BPO) solutions and quality of the client list. Each company who participated had to undergo extensive research, including thorough analysis of its capabilities, experience, and expertise.

“The Training Outsourcing Companies Watch List provides corporate training service buyers with a quality list of companies to consider when sourcing your next training outsourcing project. Consider these companies as some of the companies to watch as the training outsourcing market continues to evolve,” said Doug Harward, Chief Executive Officer of Training Industry, Inc.

Speaking on the achievement, Arun Prakash, Executive Vice President, InfoPro, said, “We are delighted and honored to be recognized by Trainingindustry.com once again. This is a great achievement for the entire InfoPro family. This recognition is a manifestation of hard work and dedication of each and every employee of InfoPro. We are sure that this will go a long way in reinforcing the faith our clients have in us, and establishing our credibility to new prospects in new markets.”

To view the 2012 Training Outsourcing Companies Watch List visit Trainingindustry.com.

InfoPro is recognized as a thought leader in the learning space. By leveraging the vast pool of creative and innovative professionals, InfoPro has helped its clients in enhancing their businesses in verticals like IT, Telecom, Healthcare, Publishing and Education, Aviation, Oil and Gas, Shipping and Logistics, BSFI etc. It provides complete learning solutions starting from advisory services including learning and training strategies, architecture consulting, providing solutions to deployment and always being concerned about customer satisfaction by going the extra mile.

Source:

http://www.theoutsourceblog.com/2012/04/infopro-ranks-among-top-12-training-outsourcing-companies/

Did you like this? Share it:

Software Development: 10 hard truths developers must learn to accept

Wednesday, April 25th, 2012

On most days, programming is a rewarding experience, with no problem too challenging to solve. Perseverance, intuition, the right tool — they all come together seamlessly to produce elegant, beautiful code.

But then a botched deployment, yet another feature request, or a poorly documented update with crippling dependencies comes crashing headlong into the dream.

Sure, we might wish our every effort had enduring impact, that the services our apps rely on would be rock-solid, that we would get the respect we deserve, if only from those who should know better. But the cold, harsh realities of programming get in the way.

That doesn’t mean the effort isn’t worth it. But it does mean we have some hard truths to face. Here are 10 aspects of programming developers must learn to live with.

Developer hard truth No. 1: It’s all just if-then-else statements
Language designers argue about closures, typing, and amazing abstractions, but in the end, it’s just clever packaging wrapped around good, old if-then-else statements.

That’s pretty much all the hardware offers. Yes, there are op codes for moving data in and out of memory and op codes for arithmetic, but the rest is branch or not branch based on some comparison.

Folks who dabble in artificial intelligence put a more mysterious cloak around these if-then-else statements, but at the end of the day, the clever statistical recommendation engine is going to choose the largest or smallest value from some matrix of numbers. It will perform calculations, then skim through the list, saying, "If this greater, else if this greater, else if this greater," until it derives its decision.

Developer hard truth No. 2: Most of the Web is just data stored in tables
For the past 20 years, the word "Internet" has tingled with the promise of fabulous wealth, better friendships, cheaper products, faster communication, and everything but a cure for cancer. Yet at its core, most of the Internet is a bunch of data stored in tables.

Match.com? A table of potential dates with columns filled with hair color, religion, and favorite dessert. eBay? It’s a table of deals with a column set to record the highest bid. Blogs? One table with one row for every cranky complaint. You name it; it’s a table.

We like to believe that the Internet is a mystic wizard with divine wisdom, but it’s closer to Bob Cratchit, the clerk from Charles Dickens’ "A Christmas Carol," recording data in big accounting books filled with columns. It’s an automated file clerk, not the invention of an electronic Gandalf or Dumbledore.

Read More:

http://www.infoworld.com/d/application-development/10-hard-truths-developers-must-learn-accept-189620?source=fssr

Did you like this? Share it:

Software Outsourcing: 7 Programming Myths: Busted

Wednesday, April 25th, 2012

7 Programming Myths: Busted!

Even among people as logical and rational as software developers, you should never underestimate the power of myth. Some programmers will believe what they choose to believe against all better judgment.

The classic example is the popular fallacy that you can speed up a software project by adding more developers. Frederick P. Brooks debunked this theory in 1975, in his now-seminal book of essays, "The Mythical Man-Month."

Brooks’ central premise was that adding more developers to a late software project won’t make it go faster. On the contrary, they’ll delay it further. If this is true, he argued, much of the other conventional wisdom about software project management was actually wrong.

Some of Brooks’ examples seem obsolete today, but his premise is still sound. He makes his point cogently and convincingly. Unfortunately, too few developers seem to have taken it to heart. More than 35 years later, mythical thinking still abounds among programmers. We keep making the same mistakes.

The real shame is that, in many cases, our elders pointed out our errors years ago, if only we would pay attention. Here are just a few examples of modern-day programming myths, many of which are actually new takes on age-old fallacies.

Programming myth No. 1: Offshoring produces software faster and cheaper

These days, no one in their right mind thinks of launching a major software project without an offshoring strategy. All of the big software vendors do it. Silicon Valley venture capitalists insist on it. It’s a no-brainer — or so the service providers would have you believe.

It sounds logical. By off-loading coding work to developing economies, software firms can hire more programmers for less. That means they can finish their projects in less time and with smaller budgets.

But hold on! This is a classic example of the Mythical Man-Month fallacy. We know that throwing more bodies at a software project won’t help it ship sooner or cost less — quite the opposite. Going overseas only makes matters worse.

According to Brooks, "Adding people to a software project increases the total effort necessary in three ways: the work and disruption of repartitioning itself, training new people, and added intercommunication."

Let’s assume that the effort required for repartitioning and training is the same for outsourced projects as for homegrown ones (a dangerous assumption). The communication effort required for outsourcing is much higher. Language, culture, and time-zone differences add overhead. Worse, offshore development teams are often prone to high turnover rates, so communication rarely improves over time.

Little wonder there’s no shortage of offshoring horror stories. Outsourcers who promise more than they deliver are a recurring theme. When deadlines slip and clients are forced to finish the work in-house, any putative cost savings disappear.

Offshoring isn’t magic. In fact, it’s hard to get right. If an outsourcer promises to solve all of your problems for nothing, maintain a healthy skepticism. That free lunch could end up costing more than you bargained for.

Programming myth No. 2: Good coders work long hours

We all know the stereotype. In popular culture, programmers stay up late into the night, coding. Pizza boxes and energy-drink cans litter their desks. They work weekends; indeed, they seldom go home.

There’s some truth to this caricature. In a recent analysis of National Health Interview Survey data, programming tied for the fifth most sleep-deprived profession. Long hours are particularly endemic in the video game industry, where developers must endure "crunch time" as deadlines approach.

But it doesn’t have to be that way. There’s plenty of evidence to suggest that long hours don’t increase productivity. In fact, crunch time may hurt more than it helps.

There’s nothing wrong with putting in extra effort. Fred Brooks praises "running faster than necessary, moving sooner than necessary, trying harder than necessary." But he also warns against confusing effort with progress.

More often than not, Brooks says, software projects run late due to chronic schedule slippage, not catastrophes. Maybe the initial estimates were unrealistic. Maybe the project milestones were fuzzy and poorly defined. Or maybe they changed midstream when the client added requirements or requested new features.

Either way, the result is the same. As the little delays add up, programmers are forced into crisis mode, but their extra efforts are spent chasing goals that can no longer be reached. As the project schedule slips further, so does morale.

Some programmers might be content to work until they drop, but most have families, friends, and personal lives, like everyone else. They’d be happy to leave the office when everyone else does. So instead of praising coders for working long hours, concentrate on figuring out why they have to — and how it can stop. They’ll appreciate it far more than free pizza, guaranteed.

Read More:

http://www.pcworld.com/businesscenter/article/254286/7_

programming_myths_busted.html

Did you like this? Share it:

Android, Java, and the tech behind Oracle v. Google (FAQ)

Wednesday, April 25th, 2012

The eyeless, mouthless Java mascot named Duke cartwheels across a T-shirt from a JavaOne conference.

Sun Microsystems’ years-long effort to profit from Java has come to this: the chief executives of two of tech’s most powerful companies, Oracle and Google, being grilled in court.

Scrapping over copyrights, patents, and licensing deals is an ignominious outcome for a technology that a decade and a half ago spooked Microsoft and seemed poised to inject dynamism into a largely static Web. Back when it debuted, Java was a brand that carried impressive power.

Though Java has been technologically influential, its brand clout with the average person has diminished as other software such as Apple’s iOS and cloud computing rose to prominence. So now probably is a good time to dig into some of the details on which Oracle’s case hinges.

What is Java?

Java — invented at Sun in the early 1990s and absorbed into Oracle with Oracle’s Sun acquisition in 2010 — is several things.

First, it’s a programming language — a carefully defined way of issuing instructions to get a computer to do something useful.

Second, Java comes with software called a virtual machine that runs programs written in Java. The Java virtual machine (JVM) looks to Java programs like a real computer, but it’s really a layer that hands off instructions to the lower-level operating system actually running on some computing hardware. By building JVMs tailored for a variety of computers, the same Java program can at least theoretically run on both a Mac and a Windows computer. Thus Java’s initial tagline: "write once, run anywhere."

Third, Java includes pre-written code called class libraries that does all manner of work — everything from cryptography to communicating using Bluetooth. A Java programmer wanting to tap into this prefab power does so through a carefully defined mechanism called an application programming interfaces, or API. A sizable collection of companies define these APIs for Java.

Collectively, these three components are collectively called a Java runtime environment, or JRE, and it’s what you need on your computer to run Java software. To be able to slap a Java logo on a particular device, it has to pass tests to ensure it runs Java programs correctly.

 

Happier times: Sun and Google were Java allies in 2005, when Sun's then-president Jonathan Schwartz, left, and CEO Scott McNealy, center, joined Google CEO Eric Schmidt to tout a partnership that ultimately fizzled.

 

Well, that sounds simple enough
Guess again. Java quickly gets more complicated than that.

There are different varieties for different uses. The initial Java Standard Edition was geared for personal computers. It was joined by the Enterprise Edition, which defined APIs for server tasks such as managing databases, and the Micro Edition, which defined APIs for mobile tasks such as sending text messages on a phone.

And it got even more complicated: the Micro Edition had different varieties: the Connected Limited Device Configuration, the Personal Profile Specification, the Mobile Information Device Profile, the Mobile Information Device Profile 2.0, and more.

The upshot was that programmers couldn’t necessarily predict what APIs a particular device would support. Would a phone allow accelerated 2D graphics through Java? How about 3D graphics? That’s important to know if you’re writing a game. The lack of consistency led to the mocking tagline of "write once, test everywhere."

A last gasp came in the form of JavaFX, which aimed to sweep away the muddle with a prepackaged software foundation from Oracle. But as it was arriving, another force attracted mobile programmer attention instead: Apple’s iOS.

Oracle argues that Android has fragmented Java, undermining its write-once, run-anywhere promise.

Read More:

http://news.cnet.com/8301-1001_3-57417144-92/android-java-and-the-tech-behind-oracle-v-google-faq/

Did you like this? Share it: