Sunday, July 10, 2011

Mac OS X 10.7 Lion bringing iOS features to Mac in summer 2011





Inspired by innovations in the iPhone and iPad, the next version of Mac OS X, dubbed "Lion," will bring iOS features to the Mac platform, including multi-touch gestures, the App Store and Home screens, coming Summer 2011.

  • Multi-touch gestures
  • App Store
  • App Home screens
  • Full screen apps
  • Auto save
  • Apps resume when launched

Apple said Lion, shipping next summer, is inspired by many of iPad’s software innovations. Today’s sneak peek highlighted just a few of Lion’s features, including the Mac App Store, a new way to discover, install and automatically update desktop apps; Launchpad, a new home for all of your Mac apps; system-wide support for full screen apps; and Mission Control, which unifies Exposé, Dashboard, Spaces and full screen apps into an innovative new view of everything running on your Mac, and allows you to instantly navigate anywhere.

"Lion brings many of the best ideas from iPad back to the Mac, plus some fresh new ones like Mission Control that Mac users will really like,” Jobs said in a press release. "Lion has a ton of new features, and we hope the few we had time to preview today will give users a good idea of where we are headed."

Mac OS X Lion


Multi-Touch
Jobs said that touchscreens don't work when in front of a user, which is why devices like the iPhone and iPad are successful. Given that, Jobs said Macs will stick with products like the trackpad and Magic Mouse for input.

"This is how we're going to use multi-touch on our Mac products," he said.

Mac OS X Lion

OS X Lion Server includes a host of enhancements that give you more control of your Mac server and the users who access it. The Server app — new in Lion Server — features a setup assistant that walks you through the server configuration process step by step. So now anyone can turn just about any Mac into a server. Profile Manager lets you remotely manage computers running Lion and iOS devices such as iPad and iPhone. You can even send updates to your users wirelessly via push notifications. Lion Server also adds file-sharing capabilities for iPad; includes improvements to Wiki Server, iCal Server, and Mail Server; and comes with Xsan built in

Mac App Store
Lion will bring the Mac App Store, which, like on iOS, will include one-click downloads, free and paid downloads, and revenue sharing with developers. The Mac App Store will also include automatic updates, and software will be licensed for use on all personal Macs.

Apple said the Mac App Store brings the App Store experience to OS X, making discovering, installing and updating Mac apps easier than ever. Like on iPad, you purchase apps using your iTunes account and they download and install in just one step. App updates are delivered directly through the Mac App Store, so it’s easy to keep all of your apps up to date. The Mac App Store will be available for Snow Leopard within 90 days and will be included in Lion when it ships next summer.

A demo showing off the Mac App Store showed off the ability to purchase and install Pages with just one click. Applications can also be added to the Launch Pad, which can be selected from the Mac OS X Dock and brings an iPad-style grid of icons and pages onto the screen as an overlay.



Mac OS X Lion


Mission Control

Jobs also announced a new feature, Mission Control, which allows users to view anything running on a Mac and instantly navigate to anywhere. He said this will combine existing features, like Expose, with new ones like full screen.

Apple said that Mission Control presents you with a unified view of every app and window running on your Mac, so you can instantly navigate anywhere. Mission Control also incorporates the next generation of Exposé, presenting all the windows running on your Mac grouped by application, alongside thumbnails of full screen apps, Dashboard and other Spaces.

Mission Control clusters alike apps, making them easy to select when in Mission Control.

Mac OS X Lion


LaunchPad

Launchpad makes it easier than ever to find and launch any app. Similar to the Home screen on iPad, you can see all the apps on your Mac elegantly displayed just by clicking the Launchpad icon in the dock. Apps can be organized in any order or grouped into folders, and you can swipe through multiple pages of apps to find the one you want.

Lion includes system-wide support for full screen applications. With Lion, you can enter full screen mode with just one click, switch from one full screen app to another with just a swipe of the trackpad, and swipe back to the desktop to access your multi-window applications.

Mac OS X Lion


"I wish we had another hour and a half to show you more," Jobs said at the conclusion of Wednesday's presentation. "We'll unveil this over time as we get closer to releasing it."

Mission Control gives you the ability to have full-screen apps, Dashboard, Exposé, and Spaces all under your fingertips. With Mission Control, you have a bird’s-eye view of everything. It only takes one three-finger swipe to show Mission Control. Launchpad is one of my favorite features. It really brings the iOS feel to your Mac display. Just click the Launchpad icon on your Dock and your Mac display is replaced by a full-screen of all your apps on your Mac. You can organize and arrange them however you like, just like you could on your iOS device. When you download an app from the Mac App Store, it goes straight to Launchpad.
Resume is very self-explanatory. You can now close your apps and reopen them and they will look exactly as you left them. You can restart your Mac and open your apps and they will be the same as before you restarted your computer. Auto Save is also self-explanatory. Your work automatically saves your work so you don’t have to worry about forgetting to save your work and having to start over. Versions is a feature that allows you to chart the history of your documents and place it on a timeline to compare them side by side with your latest version. You can see how much you improved your documents.
AirDrop is a very useful feature that allows you to share files with other AirDrop users that are within about 30 feet of you. You don’t need a complicated set up or internet, just drag the file onto the person’s name and once accepted, the file will begin transferring. Mail is getting a huge upgrade. Mail takes advantage of the full-screen and includes a message list on the left that also includes snippets of the message. You can also search for messages with ease. Lion Server now has a Server app that helps assist you in turning your Mac into a server. Profile Manager allows you to manage all your Macs, running Mac OS X Lion of course, and iOS devices. Mac OS X Lion definitely has many improvements that everyone has been looking forward to. What features are you looking forward to the most?

MAC LION 10.7 SOME FEATURES!!!!!

Steve Jobs has announced Apple Mac OSX Lion, with 250+ new applications and features. Apple Mac OSX Lion is the highly anticipated new version of Mac OSX operating system after Apple Mac OSX Leopard and Apple Mac OSX Snow Leopard versions.

Apple Mac OSX Lion will support iCloud with ability to be integrated with iOS devices.The new OS will provide users data integration (or centralization or of the content), where available on an iOS devices, computer, or iColud.



Apple Mac OSX Lion Features

Apple Mac OSX Lion has more than 250 new features, some of which were demonstration at 2011 WWDC e.g:
  • Multi-Touch Gestures Apple has always had multi-touch gestures integrated into the system, but nothing like this before. Apple is focusing on application switching and navigating through your Mac with just your trackpad, simplifying your actions.
  • Full-Screen Apps is introducing new ways to naturally run applications in a full screen mode that won’t disrupt anything on your system.
  • Mission Control that shows all apps and documents you are working on. Allows you to view an overview of your system and applications that are running grouped by application,
  • New Photo Booth with face detection
  • Mac App Store is the now the #1 channel for buying PC software. It’s ahead of Best Buy, Walmart, and Office Depot.
  • Launchpad uses pinch gesture to see Apps in a grid, like iOS. Like your iOS device it contains application pages that are arranged in a grid format that can be organized into folders and update just like iOS applications.
  • Full-Screen Apps introduces new ways to naturally run applications in a full screen mode that won’t disrupt anything on your system.
  • Resume saves the state of your application when you close it. Upon starting the application again it will reload your application exactly how you left it with all settings that you left it with. Mac apps save states, just like iOS Apps. Windows, selections, tools, even highlighted text are just the way you left them.
  • Auto Save eliminates the need for saving a document because the system will save it for you so you don’t forget.
  • Versions provide you facility through which you can view the history of your documents from the time you started, while working with Auto Save. The application looks exactly like Time Machine and acts the same to give you glimpse of the history.
  • Document control auto saves versions, just like Time Machine.
  • AirDrop is peer to peer sharing. Drop file onto auto-discovered user and they can accept it easily. When trying to share files, Apple made it easier when sharing with others Mac’s. AirDrop is in direct competition with applications that share files.
  • Sandbox for better security
  • New Mail app is over-haul of Apple default mail application to create a more user-friendly experience with a larger reading area and a new threaded view of mail conversations.  With searching now we have new search suggestions. Mail recognizes whether that’s a person or a subject… select one it becomes a search token. Threaded email can hide (or show) redundant FWD and RE that clutters up emails.

SQL SERVER – StreamInsight

StreamInsight is a new event processing platform introduced in upcoming version SQL Server 2008 R2. Similar to other components such as SSIS, SSAS or Service Broker, it also needs to be installed along with the SQL Server.
Up to SQL Server 2005, Microsoft’s main focus on SQL Server was to build a platform to efficiently store, manage, and retrieve data. However, now, Microsoft enhanced SQL Server to accept, monitor, and respond to complex and high number of events in near zero latency. For this, Microsoft introduced StreamInsight using the following approaches:
  1. Continuous and incremental processing of unending sequences of events.
  2. Lightweight streaming architecture that supports highly parallel execution of continuous queries over high-speed data.
  3. The use of in-memory caches and incremental result computation provide excellent performance with high data throughout and low latency.
  4. Low latency is achieved because the events are processed without costly data load or storage operations in the critical processing path.
  5. All processing is automatically triggered by incoming events. In particular, applications do not have to incur any overhead for event polling.
  6. Static reference or historical data can be accessed and included in the low-latency analysis.
In StreamInsight, the events are processed by a CEP (complex event processing) Server. CEP Server has its own optimizer and standing queries to handle events optimally in real time. In simple terms, we can understand it as given below:
This architecture is designed to process up to 100,000 or even more events per second.
Following are few areas where this new platform would help in monitoring, mining, and analyzing the data in motion and in providing significantly more informed business decisions in real-time:
  • Manufacturing process monitoring and control
  • Clickstream analysis
  • Financial services
  • Power utilities
  • Health care
  • IT monitoring
  • Logistics
  • Telecom
Another important thing about StreamInsight is that the developers do not have to learn any new language to implement it. Its CEP Server (standing queries) can be created in LINQ (Language Integrated Queries), while the event Source application and Target application can be written in Microsoft .Net language. By using LINQ, developers familiar with SQL will be able to quickly write queries in a declarative fashion. Its deployment is also simple with flexible methods such as integrating in an application as a hosted DLL or running as a stand alone server through a wrapper such as an executable or windows service.

What is SQL Server 2008 R2 - StreamInsight?

Background
A couple of weeks ago, the second CTP for SQL Server 2008 R2 was released. I downloaded it immediately. Still the product is far from finished, and the CTP didn't contain any preview of the "Gemini" component, but I could at least test the StreamInsight part. The finished product is scheduled to be released during the first half of year 2010, according to Microsoft's web site. [Notice: This article has been updated for the November CTP of StreamInsight]
What's new in SQL Server 2008 R2? I would say the most important news are:
  • StreamInsight
  • Managed Self Service Business Intelligence (the so called "Gemini" project)
  • Application and Multi-Server Management
This blog post will focus on StreamInsight.
StreamInsight
What is StreamInsight and what is it good for? StreamInsight is a platform for developing and deploying applications that handle high-speed streaming data. It could be used for near real-time processing of data from production environments, structured data such as financial information and unstructured data such as Facebook, Twitter and blogs. Multiple sources can be combined and refined before they are being output. This technology is called CEP - complex event processing.
Combine StreamInsight with data mining, and you can have real-time fraud detection, stock market prediction, you name it... Imagine a real-time Business Intelligence-application where the management can actually see the KPI gauges moving on the screen. I would say that monitoring real-time flow of information is one of the key success factors for tomorrow's Business Intelligence. This is also supported by Ralph Kimball, saying in an interview that Business Intelligence is moving from the strategic level towards operational level processes such as customer support, logistics and sales. At the operational level data must be continuously updated, not just once per day. I would add also that the new generation, that has grown up with Facebook and Twitter, will make it necessary to monitor new sources for successful Business Intelligence.
How does it work?
You develop your application in Visual Studio 2008, using libraries from StreamInsight. Basically you develop (or use existing) input and output adapters and connect them through LINQ queries. The picture below (copied from Microsoft's StreamInsight documentation) shows a good overview of the product:
(Click on image to enlarge)
There are three different development models supported by StreamInsight:
  • Explicit model, which provides full control and access to the CEP-server.
  • Implicit model, which can handle only a single query and runs all in memory. Good for debugging.
  • IObservable/IObserver interface, which hides much of the complexity of the CEP-server API
All data in StreamInsight is organized into event streams. The events are of two kinds:
  • INSERT events, that contains a header with timestamp information and a payload with application specific data. These events can be of different models, such as Interval, Point and Edge, to support different temporal characteristics.
  • CTI events, that indicates the completeness of previous events in the stream.
Adapters can be of two types:
  • Untyped adapters that work with multiple types of INSERT events
  • Typed adapters that work with a single type of INSERT events
Queries are written in LINQ with the possibility to do calculations, filtering, grouping, windowing, aggregations, combining and invoke user-defined functions. A query template is bound to specific input and output adapters to produce a query instance.
An example - building an input adapter for Yahoo Finance stock quotes
For testing StreamInsight, I chose to build an input adapter that reads stock quotes from Yahoo Finance. Note however that quotes from Yahoo Finance are delayed at least 15 minutes unless you pay for their premium service. To test the input adapter I also built an output adapter the displays the quotes on the screen (just a simple console application). These I joined together in an application that I built using the implicit development model.
The point here is not the functionality of the application, but that you could easily replace the output adapter with something much more useful. By adding SQL Server 2008 Data Mining, using any algorithm for predictive analysis, you could build something much more useful. Adding an output adapter that places buy and sell orders into a trading system could make you rich. Maybe I will write about that in a later blog, maybe not...
The picture below shows the Visual Studio 2008 project.
(Click on image to enlarge)
ScreenScraper is a helper class that reads the HTML contents of a web page and extracts a string using pattern matching (a regular expression). YahooFinance is a helper class that provides the ScreenScraper with suitable URL and pattern matching expression for the desired stock symbol. StockPayload contains the actual data and is defined as below:
public class StockPayload
{
   ///
   /// Unique ID of stock or index
   ///
   public string StockID { get; set; }

   ///
   /// Current value of stock or index
   ///
   public double Value { get; set; }
}
The data members can only be basic types such as numbers, strings, etc. This is probably because the serialization mechanism in StreamInsight requires a fixed size payload.
The initial rows of the input adapter is shown below.
(Click on image to enlarge)
Note that the input adapter inherits generic class TypedPointInputAdapter, which is used for typed (single kind of event) point (point in time events) adapters. Basically the adapter has to implement methods for Start() and Resume(), monitor the AdapterState and enqueue events to the output stream. The input adapter can work with asynchronous sources through callback functions, and synchronous sources. I've implemented the input adapter as a loop that reads data from Yahoo Finance and then waits for a determined time. A CTI event is sent after each quote, to indicate there are no other events awaiting.
A factory class is provided to instantiate the adapters. The factory implements a Create method that takes a configuration and an event shape as parameter. Based on these parameters it instantiates the input adapter.
The output adapter is built similarly as the input adapter, so I don't describe it here. The adapters are tied together by a query defined by the following statements. Note that this solution is specific for the implicit development model. In the explicit model, the query would instead be bound through the CreateQuery method of the application.
// Join input adapters with a simple LINQ query
var combinedInputStream = (from e in input1Stream
   select e).Union
         (from e in input2Stream
   select e);

// Connect input adapters with output adapter
var query = combinedInputStream.ToQuery(outputSink);
Finally the query is being run:
// Run the query
query.Start();
adapterStopSignal.WaitOne();
query.Stop();
Testing and debugging
SQL Server 2008 R2 StreamInsight comes with a tool, StreamInsight Debugger, that can visualize a recorded event flow. To use it you first need to write tracing data to a file. Enable tracing, run your application, and the disable tracing. This is done from command-line as shown below:
Opening the trace data file, sample.etl, in StreamInsight Debugger you can monitor the stream pipeline. The picture below shows data from the input adapter instances and how they are unioned in the LINQ query.