Tuesday, December 18, 2012

Microsoft issues critical update for Windows 8


Redesigned Windows 8 baffles consumers
Microsoft has released an update for Windows 8 that fixes several vulnerabilities in Internet Explorer, Word and Exchange. This is the first time the software giant has issued a fix for the relatively new Internet Explorer 10. Five of the seven security updates were marked 'Critical' in the Windows Update service, while the other two were labeled 'Important'. Nine of the 12 vulnerabilities were marked 'Critical'.

All is not well in the world of Windows 8, however. According to an earlier report, sales of Windows-powered computers fell 21 percent overall in November. This indicates a very lackluster debut for Microsoft's operating system. Since the launch of Windows 8 on October 26, Windows laptop sales are down 24 percent, while desktop sales are down 9 percent compared to the same period last year, said NPD Group, which tracks computer sales weekly using data supplied by retailers.

Update fixes critical vulnerabilities



Usually a new Microsoft release boosts PC sales, as many consumers hold off from purchases for several months so they can get hold of the latest software immediately. "After just four weeks on the market, it's still early to place blame on Windows 8 for the ongoing weakness in the PC market," said Stephen Baker, Vice President of Industry Analysis at NPD. "We still have the whole holiday selling season ahead of us, but clearly Windows 8 did not prove to be the impetus for a sales turnaround some had hoped for."

NPD's data does not include Microsoft's new Surface tablet, which is only available in its own stores, nor does it take into account sales of PCs to businesses, which has recently been a much stronger market. But if the trend is borne out over the rest of the holiday shopping season, this would be a huge disappointment for Microsoft, as well as PC makers such as Dell Inc , HP and Lenovo.

Since launch, Windows 8 accounted for only 58 percent of Windows computing device unit sales, compared to the 83 percent Windows 7 accounted for at the same point after its launch in 2009, NPD said, partly caused by poor back-to-school sales that left many Windows 7 PCs on retailers' shelves.

It is still unclear how successful Windows 8 will be in the long term. The touch-optimized, tablet-friendly system was designed to appeal to younger users with a colourful, app-based interface, but has confused some traditional Windows customers more used to keyboard and mouse commands. Beneath the new interface design, it does not offer any radical new computing power.

Earlier, a top Windows executive said Microsoft had sold 40 million Windows 8 licenses in the month since the launch. That is ahead of Windows 7 at the same stage, but it was not clear how many of those were pre-orders, discounted upgrades or bulk sales to PC makers. According to tech research firm StatCounter, about 1 percent of the world's 1.5 billion or so personal computers—making a total of around 15 million—are actually running Windows 8.

Saturday, December 15, 2012

Why Efficient Software Development?


Software Complexity

Grady Booch (one of the co-authors of the Unified Modeling Language), in his book “Object Oriented Design”, describes in the very first chapter why the world is complex by nature (with all its events and its properties) and consequently the software has to be complex since it is a representation of reality. However, a point that Booch neglects to specify is that such complexity can be very well abstracted so that end users don’t have to deal with it. In other words, Booch makes reference to the human capability of abstraction just to explain it as a brain process that is modeled in the Object Oriented programming paradigm; but does not relate it to his first chapter of complexity.
In short: Despite reality is complex by nature, and Software is a model of the reality, Software can be simplified by building a foundation framework from which new models can be created; that hides most complexity and allows users of the higher layers to focus only on the semantics of the problem they intend to solve.

The Software Construction Cycle

In the past, minimum Software Cycles included:
  • Analysis
  • Design
  • Coding
  • Testing
  • Implementing
Nowadays, this cycle has become more and more complex, with additional stages that are required today due to more demanding sophistication. Steps like Use Cases writing (for refining Analysis of Requirements), Quality Assurance, Defect Management, Unit testing, Integration Testing and several others have been added (or expanded) to the major ones above mentioned.
But, do we really need all of those? This question should remind us about a published quote by a Microsoft Executive in its early days “We are the company with the largest technical support team”. A week later, Lotus Corporation, then a major competitor of Microsoft, published the following quote “In Lotus our Technical Team is small… thanks to the fact that our software is better and does not fail as that of companies with large technical support teams”; with clear reference to previous Microsoft’s quote.
Microsoft developed its so well known .NET Framework, which is a collection of patched components on top of its old technologies, rather than redoing it from scratch. As well as Microsoft, many other companies have monsterswhich it’s better not to awaken if we don’t want to deal with their fury.
Despite the nice advertising published in most developers’ magazines about Microsoft Visual Studio, the reality is that, for the simplest application, a lot of ridiculous steps need to happen, versus simply opening a text editor (with nice keyword coloring, of course) and enter a simple “PRINT ‘HELLO WORLD’”.

How Does It Work?

Framework

The first step toward efficient software development consists in creating a sufficiently robust, yet simply (cleverly) programmed framework.
A framework that will allow to dynamically generate any live component or object with which the user will interact. Modern technologies such as XML and the dramatic lowering of memory and hard disk space cost allows to put a lot of properties into objects that can be dynamically created on the fly.

Dynamic Typing

Purists of “abstract data type” concepts strongly reject the generation of dynamic objects, arguing that it completely defeats the purpose of defining a class. However, pragmatism has to be taken in consideration, as well as the ability to exploit existing memory and hard disk when it comes to dynamic generation. On top of that, a robust, intelligent management of data conversions is key when there is a need to put together a set of properties to be exposed to the user. This is one of the major arguments against dynamic typing and languages like JavaScript.
Yes, a very strong typing is needed in languages that require tons of code, as the simplest typing mismatch can cause catastrophic results. However, when a software component is created in a smart way, optimizing its code pieces and minimizing redundancy of code, dynamic typing lets programmers manipulate coding in faster and easier ways; and if it comes with smaller code pieces, the possible “mismatches” can be easily caught and fixed.
Ultimately, even languages with static early binding typing require mechanisms that allow combining information (such as conversion or cast functions); which is what dynamic typing languages (as JavaScript) end up doing. At the end of the day, every single data type is simply a set of bytes (or, better said, a set of data items) that have a special behavior and together mean something to the user. Not only that, very frequently, operations between data types is needed (like concatenating a string to numbers and datetime fields, or adding or subtracting hours, days, weeks, months between dates and types, and so on).


Reusability

Another important concept of Object Oriented Programming that has been overseen in the latest development tools is the reusability, which is supposed to minimize the need of programming the same set of functions or properties multiple times without needing to repeat them. In other words, create a “black box” that allows forgetting about deeper details and lets programmers focus on new features.
Unfortunately, that is a fallacy since, in reality, tools like Visual Studio and other “powerful RADs” don’t take advantage of reusability appropriately, and instead insert tons of repeated and redundant code in the different pieces that “programmers” put in their software projects. There are certain levels of reusability, but the concept as it was originally conceived in OOP is not really taking place.
Of course, a lot of that problem has to do with programmers inability (that’s why the word was quoted in the previous paragraph) to think cleverly, and they are happy dragging and dropping objects from a tool bar, later spending endless hours programming the cosmetics of the application. In short, all those visual tools have became a mechanism to reproduce crap at higher rates than in the past; further complicating systems, then causing softwareprojects to be more expensive and require larger development teams, larger project management teams and larger testing phases as well as bigger defect tracking systems. 

2008, 2009, 2010, 2011... Is The Worst Over Yet? Countdown To 2012

December 21st marks the countdown to what ancient prophecies term "the end of time", which many interpret to mean the end of the world - or at least, the end of the world as we know it. While there is much speculation and predictions regarding the events that will actually transpire, the impending end of the Mayan Calendar is building a momentum among the masses similar to the dreaded anticipation that we witnessed as the world approached the milestone year 2000 (remember Y2K?).


The current economic chaos and global meltdown may be precursors to the transition leading up to December 21, 2012, the day that the 5,125 year-old Mayan calendar suddenly comes to an end, resetting to 0.0.0.0. But what will be the catalyst? Some believe we will experience a polar shift, as has happened on Earth before. Others predict the impact of a great meteor or asteroid, which has also catastrophically occurred before. Or could it be the result of increasing global warming, or the reduction of the earth's magnetic field (which has already begun), or the extinction of too many species, or could it be global Armageddon brought on by man's incessant greed triggering war and destruction? Whatever the cause, in the three years leading up to this imminent global endtime, there must be some hope. Is it possible that ancient civilizations may have left us clues for our survival?The Mayan calendar is based on advanced astronomical knowledge - the ancient Mayans studied the stars and were extremely proficient mathematicians. We tend think of ancient cultures as being somewhat primitive, but modern science has yet to truly explain how the pyramids were built, how or why the Nazca lines were created, or how the ancients built great stone structures all over the world, like Stonehenge, Macchu Picchu, or the monoliths on Easter Island.The ancient people had knowledge and wisdom that has been lost to us today, but what if they had some form of ancient computer in which they stored their secrets for others to unlock at some time in the future? Could that time be now? And could it be possible that crystal skulls might be the computers that the ancients used as receptacles for this wisdom and knowledge? Some may scoff at this idea, but if someone thousands of years from now found a laptop computer, would he know what it is or recognize the vast amount of information that it contains, and would he know how to access that information?Computers are powered by quartz crystal - in fact, quartz crystals run our modern technological world: cell phones, televisions, radios, lasers, ultrasound, etc. Crystals are even the heartbeat of time itself in all quartz watches and clocks. Quartz is not only a source of power and energy, but it is also capable of storing information. A computer is powered by a tiny chip of quartz crystal that holds all of its memory - just imagine what a quartz crystal weighing 10 or 20 pounds could contain.Why would the ancients fashion such a computer into the form of a skull? Not because the skull represents death, but because we could recognize that the skull is the vessel that contains consciousness, wisdom, knowledge and thought. Could it be possible that the crystal skulls may contain clues that the ancients left for us to guide us through these times? If so, then it is now up to us to find a way to retrieve the data contained within them. If, indeed, we have to decipher some kind of code for humanity's survival, we have 3 years to figure it out.Many believe that the re-emergence of the crystal skulls is linked with the Mayan Prophecies. Websites such aswww.CrystalSkulls.com explore various theories about crystal skulls. Legends regarding 13 crystal skulls are shared by indigenous cultures around the world, from the Mayans, to the Navajo, to the Tibetans. These crystal skulls are purported to assist humanity in the transitional times to come leading up to December 21, 2012. With the countdown under way, perhaps the key to our survival is to open our mind.
You are welcome to share and post this article as is 
on your website, MySpace, Facebook, Blog -