Google has been developed low cost book scanner that just simply making form vacuum cleaner and low cost Cannon scanner plus several metals tweak to make possible book scanning with minimization of scanning damage.
Google has been developed low cost book scanner that just simply making form vacuum cleaner and low cost Cannon scanner plus several metals tweak to make possible book scanning with minimization of scanning damage.
It is an innovative idea of design this application stack in the cloud era. According to openstack.org, OpenStack is a cloud operating system that controls large pools of compute, storage, and networking resources throughout a datacenter, all managed through a dashboard that gives administrators control while empowering their users to provision resources through a web interface.
Google Street View brings you to see its data center. It’s a major improvement.
Google has just released its research result on understanding cross-platform consumer behavior on multi-screen dimension. Smartphone, tablet, PC and TV are the major tools to bring information/content to users with different screen size.
For full report please visit: The new multi-screen world
Google designed BigQuery as a cloud service for running fast queries against massive datasets, but with lofty ambitions there’s always room to take a step back. Now, users that don’t require super speed can run batch queries, and can connect to the service using Microsoft Excel.
For more information please visit official page: https://developers.google.com/bigquery/

Google BigQuery Service allows you to run SQL-like queries against very large datasets, with potentially billions of rows. This can be your own data, or data that someone else has shared for you. BigQuery works best for interactive analysis of very large datasets, typically using a small number of very large, append-only tables. For more traditional relational database scenarios, you might consider using Google Cloud SQL instead. You can use BigQuery through a web UI called the BigQuery browser tool, the bq command-line tool, or by making calls to the REST API using various client libraries in multiple languages, such as Java, Python, etc.
BigQuery offers the following features:
BigQuery is ideal for the following uses:
Accord.NET Framework is one among the best open source .NET framework written in C# for researcher in scientific computing. Here is the description of what containing in this framework. For more information please visit: http://code.google.com/p/accord/
Moore’s Law is going to slow down because of the capacity of silicon technology; meaning that computer power is not going to be exponentially increased. The two basic problems are heat and leakage. If the chip is too small, it is so intense that can melt the chip. Leakage: if it is too small and so intense, the chip may not handle the electron running inside the chip. Prof. Michio Kaku, physicist, is trying to explain why it would be happened. Intel also admitted by start moving to 3D chip, he noted. He also gives some candidates for post-silicon era. They are molecule computer and quantum computer.
Please watch his talk for detail.
Without any tool, deployment of desktop application is really painful. In the old day, developers need to write an auto-updated application by themselves. However, now ClickOnce, Microsoft product, could leverage this task easily. ClickOnce allows user to setup and run program directly from a webpage. The deployment files will be published to the a friendly URL and then access at the client computer. There is an option for client to check update every program run or any point in the program. This technique is very similar to Java Web Start.
I will show how to achieve it in this demo.
I just want to show a snapshot of code in LoginForm and UpdateForm.
LoginForm
using System;
using System.Deployment.Application;
using System.Windows.Forms;
namespace RVD.Win.View
{
public partial class LoginForm : Form
{
public LoginForm()
{
InitializeComponent();
}
private void LoginForm_Load(object sender, EventArgs e)
{
CheckForUpdate();
}
private void CheckForUpdate()
{
var appDeploy = ApplicationDeployment.CurrentDeployment;
//Check for update
var update = appDeploy.CheckForDetailedUpdate();
if(appDeploy.CheckForUpdate())
{
MessageBox.Show(@"The system needs to be updated to version: " + update.AvailableVersion, @"Update",
MessageBoxButtons.OK, MessageBoxIcon.Information);
var deployForm = new AppDeployPopup {AppDeploy = appDeploy, IsUpdateAvailable = true};
deployForm.ShowDialog();
if (deployForm.ShouldAppRestart)
{
Visible = false;
Close();
Application.Restart();
}
}
}
}
}
UpdateForm here, I would call AppDeployPopup. We are invoking
UpdateAsync()
method to update the software asynchronously. This method support two events called AsyncCompletedEvent and DeploymentProgressChangedEvent. We will use this event to show downloading progress in the form as well as closing the form after updating is completed.
using System;
using System.ComponentModel;
using System.Deployment.Application;
using System.Windows.Forms;
namespace RVD.Win.View.Popup
{
public partial class AppDeployPopup : Form
{
public AppDeployPopup()
{
InitializeComponent();
}
#region Properties
public ApplicationDeployment AppDeploy { get; set; }
public bool IsUpdateAvailable { get; set; }
public bool ShouldAppRestart { get; set; }
#endregion
private void AppDeployPopup_Load(object sender, EventArgs e)
{
Cursor = Cursors.WaitCursor;
try
{
if (IsUpdateAvailable) BeginUpdate();
}catch(Exception exception)
{
MessageBox.Show(@"Unexpected error during updating this software. \n" + exception.Message);
}finally
{
Cursor = Cursors.Default;
}
}
private void BeginUpdate()
{
AppDeploy.UpdateCompleted += new AsyncCompletedEventHandler(AppDeploy_UpdateCompleted);
AppDeploy.UpdateProgressChanged += new DeploymentProgressChangedEventHandler(AppDeploy_UpdateProgressChanged);
AppDeploy.UpdateAsync();
}
private void AppDeploy_UpdateCompleted(object sender, AsyncCompletedEventArgs e)
{
ShouldAppRestart = false;
if (e.Cancelled)
{
MessageBox.Show(@"The update of the application's latest version was cancelled.", @"Warning",
MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
else if (e.Error != null)
{
MessageBox.Show(@"There was an error during updating. Please contact your system administrator.", @"Error",
MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{
ShouldAppRestart = true;
}
Close();
}
private void AppDeploy_UpdateProgressChanged(object sender, DeploymentProgressChangedEventArgs e)
{
var progressText = String.Format("Downloading: {0:D}K out of {1:D}K downloaded - {2:D}% complete", e.BytesCompleted/1024,
e.BytesTotal/1024, e.ProgressPercentage);
lblDownloadStatus.Text = progressText;
pgbDownload.Value = e.ProgressPercentage;
}
}
}
Component mapping in NHibernate 3.2 Mapping by code provides a very flexible way. You can have multiples static method for returning Action<IComponentMapper<Address>> for the same component class. So that you can reuse it in different place with more customization.
In this example, we have Veteran class and Address class as a component.
Address.cs
public class Address
{
public virtual string HouseNo { get; set; }
public virtual string Street { get; set; }
public virtual string Commune { get; set; }
public virtual string District { get; set; }
public virtual string Province { get; set; }
}
Veteran.cs
public class Veteran
{
public virtual Guid Id { get; set; }
public virtual string Name { get; set; }
public virtual Address Address { get; set; }
}
AddressMap.cs
public class AddressMap
{
public static Action<IComponentMapper<Address>> Mapping()
{
return c =>
{
c.Property(p => p.HouseNo);
c.Property(p => p.Street);
c.Property(p => p.Commune);
c.Property(p => p.District);
c.Property(p => p.Province);
};
}
}
VeteranMap.cs
public class VeteranMap : ClassMapping
{
public VeteranMap()
{
Id(p=>p.Id, map=>map.Generator(Generators.GuidComb));
Property(p=>p.Name);
Component(p=>p.Address, AddressMap.Mapping());
}
}