Tech News is a blog created by Wasim Akhtar to deliver Technical news with the latest and greatest in the world of technology. We provide content in the form of articles, videos, and product reviews.
[Fix] Can’t Install Windows 8.1 or Server 2012 R2 in Oracle Virtual Box
Read rest of this article at AskVG.com
via Tweaking with Vishal http://feedproxy.google.com/~r/AskVG/~3/ix4-v3wzryA/
The Restoration of Edsac Reaches A Significant Milestone
A project to recreate and restore a pioneering 1940s computer has reached a major milestone after the first working parts are demonstrated.
The key elements were unveiled at an event at Bletchley Park on Wednesday, marking the 100th anniversary of the birth of Sir Maurice Wilkes who designed the Electronic Delay Storage Automatic Calculator (Edsac).
Sir Maurice Wilkes died in 2010 and the project to rebuild the Edsac started in 2011. It is hoped that it will be completed in 2015.
Edsac has been widely accepted as the world’s first practical general purpose computer and it first ran in 1949, with the purpose of helping scientists at the University of Cambridge.
Leo, the world’s first computer designed for business use, copied the design from the Edsac.
In order to recreate this monumental piece of history has not been an easy task. Relatively few of the original design documents have survived, so early work on the project was spent scrutinising pictures of the original to work out what all the parts did and where they went.
It must have taken great care and patience when you consider the Edsac is built of 3,000 valves, which are spread across 140 seperate shelves. Once the machine is complete, it will occupy 20-sq-m (215-sq-ft).
At the event on Wednesday Sir Maurice’s son, Anthony, said of his father “My father was a man of great intellect with a strong practical streak, from an early age my two sisters and I were conscious of computers – in a way we were one of the first computer-age families.”
The plan is to install the finished machine in the gallery at the UK’s National Museum of Computing, which is part of the Bletchley Park heritage site.
[Image via wikimediacommons]
SOURCE: http://www.bbc.co.uk/news/technology-23079905
The post The Restoration of Edsac Reaches A Significant Milestone appeared first on TechBeat.
via TechBeat http://techbeat.com/2013/06/the-restoration-of-edsac-reaches-a-significant-milestone/?utm_source=rss&utm_medium=rss&utm_campaign=the-restoration-of-edsac-reaches-a-significant-milestone
How to Replace PowerShell Shortcut with Command Prompt in “Win+X” Menu of Windows 8.1?
Read rest of this article at AskVG.com
via Tweaking with Vishal http://feedproxy.google.com/~r/AskVG/~3/-5NwwNwCoFM/
Internet Download Manager 6.17
via FileHippo.com http://filehippo.com/download_internet_download_manager/ [[ We are also giving web service. Email:wasim.akh2@gmail.com]]
GoogleServe 2013: Giving back on a global scale
This year, more than 8,500 Googlers from 75+ offices participated in 500 projects. Not only was this our largest GoogleServe to date, but it was also one of the more unique, as many projects were designed to expand the notion of what it means to give back to the community. Here’s a glimpse at some of what we were up to this year:
- In Thimphu, Bhutan, Googlers led a workshop about media literacy at the Bhutan Centre for Media and Democracy helping youth prepare to participate in shaping the future of this young democracy.
- Googlers in Mountain View, Calif., created a bone marrow donation drive and partnered with the Asian American Donor Program to raise awareness about the need for more donors from diverse racial and ethnic backgrounds.
- Googlers from our Hyderabad, India office volunteered at Sri Vidhya's Centre for the Special Children, helping children who suffer from a wide range of cognitive disabilities to learn how to identify colors, write their own names, and prepare meals for themselves.
- A team of Googlers walked the New York, N.Y., streets gathering information to improve AXS Map, a crowd-sourced platform for mapping wheelchair accessibility which is populated with data from Google Maps and Google Places APIs.
- In Lagos, Nigeria, Googlers mentored entrepreneurs at Generation Enterprise, a small business incubator that equips at-risk youth to start sustainable businesses in slum communities.
- In Randwick, Australia, Googlers taught computer and Internet skills with the Australian Red Cross Young Parents Program which aims to develop the capacities of young parents to live independently and to parent successfully.
- A group of gourmet Googlers cooked a meal for families with children undergoing cancer treatment with Ronald McDonald House in London, U.K.
- Googlers tutored and mentored youth in Kuala Lumpur, Malaysia, with the Dignity For Children Foundation.
- Googlers partnered with Un Techo Para Mi PaÃs to help build a new house for a family living below the poverty line in Bogota, Columbia.
- In Dublin, Ireland, Google engineers taught youth how to program interactive stories and games with Scratch in partnership with Coder Dojo.
Over the past six years, GoogleServe has transformed from a single week of service into a week of celebration and inspiration for ongoing giving. Googlers also give back year-round through our GooglersGive programs which include 20 hours of work time annually to volunteer with an approved charitable organization. If you’re inspired to join us, please check out All for Good or VolunteerMatch for opportunities to give back in your community.
Posted by Zanoon Nissar, on behalf of the GoogleServe Global Leadership Team
via The Official Google Blog http://googleblog.blogspot.com/2013/06/googleserve-2013-giving-back-on-global.html
Download Windows 8.1 Boot Screen for Windows XP and Windows 7
Read rest of this article at AskVG.com
via Tweaking with Vishal http://feedproxy.google.com/~r/AskVG/~3/sjmBqgDUdnU/
AngularJS Controller Tutorial with Example
Let us talk about one of the AngularJS’s most useful feature which helps in making awesome single page applications in JavaScript – The Controller.
This tutorial is part of ongoing series of tutorials on AngularJS where we will touch different aspects of Angular and its features. In our last tutorial we saw Introduction of AngularJS and also created a Hello World example using Angular.
Controllers are nothing but plain JavaScript functions which are bound to a particular scope. Don’t worry if this sounds gibberish. Shortly this all will make sense once we create a small Hello World using controller. Controllers are used to add logic to your view. Views are HTML pages. These pages simply shows the data that we bind to them using two-way data binding in Angular (Note: Two-way data binding is explained in previous tutorial). Basically it is Controllers responsibility to glue the Model (data) with the View.
1. What are Scopes?
Before we get into Controllers let us understand Scopes. Scope is nothing but an object that Glues the View with Controller. They hold the Model data that we need to pass to view. Scope uses Angular’s two-way data binding to bind model data to view.
Imaging $scope as an object that links Controller to the View. It is controllers responsibility to initialize the data that view needs to display. This is done by making changes to $scope.
Let us see a small Hello World application to understand $scope.
<!DOCTYPE html>
<html ng-app>
<head>
<title>Hello World, AngularJS - ViralPatel.net</title>
<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular.min.js"></script>
</head>
<body>
<div ng-controller="ContactController">
Email:<input type="text" ng-model="newcontact"/>
<button ng-click="add()">Add</button>
<h2>Contacts</h2>
<ul>
<li ng-repeat="contact in contacts"> {{ contact }} </li>
</ul>
</div>
<script type="text/javascript">
function ContactController($scope) {
$scope.contacts = ["hi@email.com", "hello@email.com"];
$scope.add = function() {
$scope.contacts.push($scope.newcontact);
$scope.newcontact = "";
}
}
</script>
</body>
</html>
1.1. Online Demo
Play on JSFiddle – http://jsfiddle.net/viralpatel/aLDJJ/
In above demo, just write something in the textbox and press Add button. This will adds whatever you type in textbox in an array. The content of array is displayed below in a list.
First thing you should note in demo is the attribute ng-controller.
1.2. ng-controller
This attribute defines a Controller to be bound with the view. In this case we defined a controller called ContactController in DIV using ng-controller attribute. Thus whatever we put inside that DIV, the ContactController will have its influence on it.
ContactController is nothing but a plain vanilla JavaScript function. In the demo we defined it as function. Also see the definition of ContactController function. There is an object $scope which we pass as an argument. This object is used to bind the controller with view. When AngularJS initialize this controller, it automatically creates and injects the $scope object to this function using dependency injection (More on dependency injection in coming tutorials). For now just note that the $scope object is created by Angular and injected in this controller function.
1.3. ng-repeat
Notice how we displayed list of contacts
using an attribute ng-repeat
.
<li ng-repeat="contact in contacts">{{ contact }}</li>
ngRepeat is one of the most used AngularJS attribute. It iterate through an array and bind the view with each element. So in our example it creates <li> tag for each item within contacts array. ngRepeat takes expression as argument. In our case “contact in contacts” where contact
is user defined variable and contacts
is an array within $scope.
In our final demo in this tutorial, we will use ng-repeat
to iterate through an array of objects and paint each property in a table.
2. Initial state of a scope object
Typically, when you create an application you need to set up an initial state for an Angular scope. In our case we need initial state to be list of contacts.
On $scope object, we defined an array called contacts:
$scope.contacts = ["hi@email.com", "hello@email.com"]
When Angular initilize this function (ContactController), it automatically creates this array and binds it in $scope
object. Then in our view we display the array using ng-repeat attribyte.
Thus, $scope
provides us with a way to pass/retrieve objects from Controller to View and vice-versa.
2.1. ng-click
It is also possible to define functions on $scope
and use the same in View. In our demo, we created a function add() on $scope and use it on Add button click:
$scope.add = function() {
...
}
The function add()
is bound to Add button using an attribute ng-click
. ng-click binds the click event on the button or link or any clickable element with the function that is defined within $scope. So in this case, whenever Add button is clicked, the add() method on $scope will be called.
In add() method we add (or push) a string in contacts
array. This is the string that user types in textbox. Note that we bind textbox using ng-model
attribute.
<input type="text" ng-model="contact" ...
This textbox’s value we got in $scope.contact as we bind it using ng-model attribute.
Pretty nice, isn’t it!!
3. How to define a Controller
So we got some basic idea of what Controllers are. Just plain vanilla JavaScript functions that we add in an Angular application to add some business logic and bind the view with model.
In the above demo, we defined controller as JavaScript function. While this is the easiest way to define them, but is certainly not advisable one. If your application grows, soon you’ll have bunch of controllers lying here and there in code poluting the JavaScript namespace.
So instead of defining controller as:
function ContactController($scope) {
//...
}
We should define Controller within Modules.
3.1. AngularJS Modules
So what-the-heck are modules? Well, modules are the logical entities that you divide you app in. So your app can contain several modules (like Transaction, Report, etc.). Each module represent a logical entity within the app.
Furthermore, each modules have several Controllers. As referred in above diagram, a module can contain one or more controllers and views. We haven’t touch based on Views. We will see how each module can be linked with view using Routing in AngularJS in our next tutorial. For now just assume that each controller has one or more views linked to it.
So in this case, we can add one or more controllers to a module. Let us check the syntax to create a module and add controller to it:
var myApp = angular.module('myApp',[]);
myApp.controller('ContactController', ['$scope', function($scope) {
$scope.contacts = ["hi@email.com", "hello@email.com"];
$scope.add = function() {
$scope.contacts.push($scope.contact);
$scope.contact = "";
}
}]);
In above example we created a module called myApp
using angular.module()
method. Then we added a controller ContactController to this module. This is just an alternate way of defining a controller but recommended one.
Notice how controller is declared using myApp.controller()
method. We passed an array to this method. First argument of array is string ‘$scope’ and next is the function itself that represent ContactController
. We explicitly told Angular that we have one argument (dependency) to our ContactController which is $scope
. This is useful when you Minify or obfuscate JavaScript for production release. In that case the argument $scope might be renamed to $s, but because we defined string ‘$scope’ as first argument, Angular is aware that first dependency to this controller is $scope object.
To cut it short, always stick to the above way of defining controllers.
4. Nested Controllers
We can declare the scope of controller in our HTML page using ng-controller
attribute. For example:
<div ng-controller="CarController">
...
</div>
We can declare number of controllers and nest them within each other. For example:
<div ng-controller="CarController">
My name is {{ name }} and I am a {{ type }}
<div ng-controller="BMWController">
My name is {{ name }} and I am a {{ type }}
<div ng-controller="BMWMotorcycleController">
My name is {{ name }} and I am a {{ type }}
</div>
</div>
</div>
<script>
function CarController($scope) {
$scope.name = 'Car';
$scope.type = 'Car';
}
function BMWController($scope) {
$scope.name = 'BMW';
}
function BMWMotorcycleController($scope) {
$scope.name = 'BMWMotorade';
$scope.type = 'Motorcycle';
}
</script>
4.1. Online Demo
Play on JSFiddle – http://jsfiddle.net/viralpatel/gWz4K/
In above demo, notice how each nested Controller’s scope override the scope of parents controller. First we defined a controller CarController
which defines two variables name
and type
within scope. Next BMWController
is nested within CarController using ng-controller
attribute. BMWController overrides name
attribute and change it to BMW. It does not change type
attribute so type attribute is still Car.
BMWMotorcycleController
is the inner-most controller defined within controllers hierarchy. It overrides both name
and type
attribute of scope.
This way you can nest one controller within another and take advantage of parent controllers attributes whenever needed.
5. Inheritance in Controllers
In order to take advantage of inheritance of scope in Nested controllers, one has to define Controllers one into another using ng-controller
attribute. Sometimes you don’t want to define controllers like this but still want to use power of inheritance within controllers. May be you want to put common logic into BaseController and use it in all the child controllers.
In order to achieve this, we must use $injector
object that AngularJS provides.
<div ng-controller="BMWController">
My name is {{ name }} and I am a {{ type }}
<button ng-click="clickme()">Click Me</button>
</div>
<script>
function CarController($scope) {
$scope.name = 'Car';
$scope.type = 'Car';
$scope.clickme = function() {
alert('This is parent controller "CarController" calling');
}
}
function BMWController($scope, $injector) {
$injector.invoke(CarController, this, {$scope: $scope});
$scope.name = 'BMW';
}
</script>
5.1. Online Demo
Play on JSFiddle – http://jsfiddle.net/viralpatel/WCZcZ/
We define two controllers, CarController an BMWController. CarController defines two attributes name and type on $scope and also defines one method clickme().
BMWController just override name attribute. Notice that it does not have name and clickme defined within its body. These attributes are defined by parent controller in this case CarController. Within BMWController, we initialize CarController and bind it into current scope using $injector.invoke() method.
Once this is done, notice how in HTML page the BMWController points to its parent’s attributes.
6. End to end application using AngularJS Controller
Let us apply the knowledge that we acquired so far and create a ContactManager application. Following are some basic requirements of this application:
- User can add new contact (name, email address and phone number)
- List of contacts should be shown
- User can delete any contact from contact list
- User can edit any contact from contact list
Following is the HTML code which defines a FORM to save new contact and edit contact. And also it defines a table where contacts can be viewed.
6.1. The HTML
<div ng-controller="ContactController">
<form>
<label>Name</label>
<input type="text" name="name" ng-model="newcontact.name"/>
<label>Email</label>
<input type="text" name="email" ng-model="newcontact.email"/>
<label>Phone</label>
<input type="text" name="phone" ng-model="newcontact.phone"/>
<br/>
<input type="hidden" ng-model="newcontact.id" />
<input type="button" value="Save" ng-click="saveContact()" />
</form>
<table>
<thead>
<tr>
<th>Name</th>
<th>Email</th>
<th>Phone</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="contact in contacts">
<td>{{ contact.name }}</td>
<td>{{ contact.email }}</td>
<td>{{ contact.phone }}</td>
<td>
<a href="#" ng-click="edit(contact.id)">edit</a> |
<a href="#" ng-click="delete(contact.id)">delete</a>
</td>
</tr>
</tbody>
</table>
</div>
Just note that we have used ng-model
, ng-click
and ng-repeat
attributes from Angular so far.
To add life to this application, we add following JavaScript code.
6.2. The JavaScript
var uid = 1;
function ContactController($scope) {
$scope.contacts = [
{ id:0, 'name': 'Viral',
'email':'hello@gmail.com',
'phone': '123-2343-44'
}
];
$scope.saveContact = function() {
if($scope.newcontact.id == null) {
//if this is new contact, add it in contacts array
$scope.newcontact.id = uid++;
$scope.contacts.push($scope.newcontact);
} else {
//for existing contact, find this contact using id
//and update it.
for(i in $scope.contacts) {
if($scope.contacts[i].id == $scope.newcontact.id) {
$scope.contacts[i] = $scope.newcontact;
}
}
}
//clear the add contact form
$scope.newcontact = {};
}
$scope.delete = function(id) {
//search contact with given id and delete it
for(i in $scope.contacts) {
if($scope.contacts[i].id == id) {
$scope.contacts.splice(i,1);
}
}
}
$scope.edit = function(id) {
//search contact with given id and update it
for(i in $scope.contacts) {
if($scope.contacts[i].id == id) {
//we use angular.copy() method to create
//copy of originial object
$scope.newcontact = angular.copy($scope.contacts[i]);
}
}
}
}
First thing to note, we created a variable uid and set its initial value to 1. This variable is used to generate unique ids for each new contact we save. In real life application you may want to do this at backend.
We defined one controller ContactController. This controller defines following objects within $scope:
Scope object | Type | Comment |
---|---|---|
$scope.contacts | Array | Array to store contact objects. In real life app, this should be maintained at server side. |
$scope.saveContact | JavaScript Function | Saves the newcontact object within contacts array. Check if contact is new or is being updated |
$scope.delete | JavaScript Function | Delete the contact object from contacts list based on id specified |
$scope.edit | JavaScript Function | Update the contact object in contacts list based on id specified |
6.3. Online Demo
Play on JSFiddle – http://jsfiddle.net/viralpatel/JFYLH/4/
You can add new contact using the above form. Once new contact is saved, the list showing contacts will be updated. Each contact can be edited and deleted. You got the gist
That’s All Folks
AngularJS is fun.. isn’t it. We saw what Controllers
are. How to create Controllers and use $scope
object to bind model values with the views. We went through AngularJS attributes such as ng-controller
and ng-repeat
. Also we saw how Nested controllers and inheritence in controllers work.
Finally we created a ContactManager application using AngularJS.
We are not done yet!! Stay tuned for next tutorial where we will explorer world of Views and Routing using AngularJS
Related Posts
- AngularJS: Introduction and Hello World example
- Spring 3 MVC: Handling Forms in Spring 3.0 MVC
- Spring MVC: Multiple Row Form Submit using List of Beans
- Tutorial: Create Struts2 Hibernate Example in Eclipse
- Tutorial:Create Spring 3 MVC Hibernate 3 Example using Maven in Eclipse
- Spring MVC HashMap Form Integration example
- JavaScript Array Remove an Element
via ViralPatel.net http://feedproxy.google.com/~r/viralpatelnet/~3/MzlGaKbaSmI/
BitTorrent 7.8.1 Build 29813
via FileHippo.com http://filehippo.com/download_bittorrent/ [[ We are also giving web service. Email:wasim.akh2@gmail.com]]
Self-transforming Transformer Robot by Takara Tomy
Transformers fans should really get their hands on this awesome toy. The self-transforming Transformer robot is an impressive gadget from Japanese toy manufacturer Takara Tomy and has just gone into production.
Takara Tomy first revealed the self-transforming robot at the Tokyo Toy Show 2013. The Transformer bot was displayed together with a Zoids line robotic lion. Both gadgets were controlled via an iPhone.
As its name indicates, the self-transforming robot is able to transform from its car shape into humanoid shape by itself. This is achieved with the help of over a dozen servo motors. The process is not very fast, because the servo motors are too small to pack enough power to support a speedier transformation.
The robot is not yet able to walk either, but manufacturers expect to develop stronger servo motors that will be able to support walking movements in the future.
The Zoids lion displayed at the Toy Show was able to walk on its four limbs, as it uses the same technology as Tomy’s robotic dog, the i-SODOG.
Both gadgets will be marketed under the Transformers and Zoids brands, but Takara Tomy has not yet offered any details as to when they may be officially released for sale and what their retail prices might be.
One thing is for certain, though: the transforming robots will NOT sell for the staggering amount of $24,000 a piece. This is how much one-man-wonder Kenji Ishida, the first to launch a self-transforming robot car line, made from selling only one robot. And he made about ten.
It is yet unclear whether Ishida will collaborate with Tomy on the new line. According to Gizmag, the Japanese inventor expressed his desire to be involved in the project, saying that he believes he can improve the look of the self-transforming robot.
Takara Tomy has had a long history of incorporating state-of-the-art tech in its toys. It was them that manufactured the first Transformer robot toys back in the 1980s. Known as Microman and Diaclone, these were really amazing toys, so it is easy to imagine what the self-transforming bots will be like.
Are you excited about the self-transforming robot? Check out this video and let us know in the comments below.
[Images via Technabob & Gizmodo]
The post Self-transforming Transformer Robot by Takara Tomy appeared first on TechBeat.
via TechBeat http://techbeat.com/2013/06/self-transforming-transformer-robot-by-takara-tomy/?utm_source=rss&utm_medium=rss&utm_campaign=self-transforming-transformer-robot-by-takara-tomy
Comodo Dragon Internet Browser 27.2
via FileHippo.com http://filehippo.com/download_comodo_dragon/ [[ We are also giving web service. Email:wasim.akh2@gmail.com]]
Microsoft Release Preview Of Windows 8.1
Microsoft Corp released a test version of Windows 8.1 on Wednesday. Many computer users were left confused and unsure of the new tile-based interface that was launched with Windows 8. The interface, which works best with touch-screen devices, left fans of the traditional desktop PC longing for the old-style “start” button.
So Microsoft have listened to the feedback and have brought the “start” button back as well as other features, which they hope will win back support for the operating system.
Microsoft Chief Executive Steve Balmer opened the company’s annual developer conference and said “Since we announced and shipped Windows 8, suffice it to say, we pushed boldly and yet what we found was we got a lot of feedback from users of those millions of desktop applications.”
To sum up the feedback they received he said, “If I was to put it in coffee terms, ‘Why don’t you go and refine the blend here?’ Let’s remix the desktop and your modern application experience. Let’s balance them better.”
Microsoft have made it easier to find and access applications and improved the search function. Ballmer has also promised a “rapid release cycle”, so new new versions of Windows will no longer be every three years.
The Response
The response from most of the developers present at the conference was largely positive, which is good news for Microsoft because they have been lagging behind other companies such as Apple and Google.
The struggle has been for them to persuade developers to create apps for Windows 8 because the vast majority of people use devices that run on either Apple’s iOS or Google’s Android systems.
Microsoft said on Wedneday that Facebook have agreed to design an app especially for Windows. It is hoped that this will attract more people to use Window-based devices.
“I feel like Microsoft can actually seriously compete in the mobile ecosystem now,” said Manav Mishra, director of engineering at the Barnes & Noble Inc unit that makes apps for its Nook e-reader. “Windows 8.1 finishes the journey Windows 8 started and I think it evens the playing field for Microsoft quite a bit, which wasn’t the case before.”
Microsoft still has a way to go though in attracting more users. Ballmer said on Wednesday that the Windows Store has nearly 100,000 apps but compare that with Apple who have almost 1 million and Android who are just behind them, and you see why most developers prefer to design apps for the more popular iPhones, iPads and Android devices.
It will be interesting to see the response to Windows 8.1, will it finally win people over? Or will those using desktop PCs just stick to Windows 7?
[Image via arstechnica.com]
SOURCE: http://uk.reuters.com/article/2013/06/26/us-microsoft-developers-idUKBRE95P1AL20130626
The post Microsoft Release Preview Of Windows 8.1 appeared first on TechBeat.
via TechBeat http://techbeat.com/2013/06/microsoft-release-preview-of-windows-8-1/?utm_source=rss&utm_medium=rss&utm_campaign=microsoft-release-preview-of-windows-8-1
Bitdefender Antivirus 1.0.16.1023
via FileHippo.com http://filehippo.com/download_bitdefender_antivirus/ [[ We are also giving web service. Email:wasim.akh2@gmail.com]]
Google Earth 7.1.1.1871
via FileHippo.com http://filehippo.com/download_google_earth/ [[ We are also giving web service. Email:wasim.akh2@gmail.com]]
Download Windows 11 Insider Preview Build Offline ISO Files
UPDATE: Offline ISO files are available for Windows 11 Insider Preview build 27774 (Canary Channel), 26100.1150 (Dev Channel), 22621 (Beta C...
-
Newer versions of Windows 11 come with a new security feature called “Windows Protected Print Mode (WPP)“. This article will help you in act...
-
UPDATE: Direct download links added for the latest Mozilla Firefox 131.0.2, 115.16.1 ESR and 128.3.1 ESR offline installers. NOTE: The downl...