domingo, 15 de mayo de 2016

SoftwareRVG (ROBER VILLAR GARCIA) . Follow their code on GitHub.



Designing , Programming & Developing .Software of Future .Security & Safety Sistems . Smarthomes . Smartcity proyect . APP Development . Web Design & Development. HTML5,CSS3,JAVASCRIPT. MP4 Professional video edition.


sábado, 14 de mayo de 2016

Construyendo juegos para Firefox OS TV

Esta es una traducción del artículo original publicado en el blog de Mozilla Hacks. Traducción por Rober Villar García. Con Firefox OS centrado en un mundo de dispositivos conectados, es un buen momento para comenzar a construir juegos…

3D Animation spacecraft dancing (splash-colors) by Software RVG designs


lunes, 9 de mayo de 2016

HTML5 VS HTML6 and 10 Advanced Features We Looking for in HTML6

 09/05/2016 Rober Villar

HTML6 Advanced Features

Web is completely progressing towards developing an enormous app store that plays a significant role in web development. Since the day HTML has launched, it has been receiving striking responses from huge numbers clients across worldwide. 
We have been using already released versions of HTML for web development. But the question is how efficiently it works while designing a web page or website. The markup languages, we use should absolutely work as per the specific requirements. With existing markups, web developers are struggling to incorporate responsive features that make the website semantic and speedy. 
Especially developing high-end web solutions are challenging with HTML5. Custom web development companies demands are gradually increasing towards the improvement of HTML5!

Further, web developers are encountering various other problems while providing web development solutions. Thus, they are demanding for a brilliant markup language that overcomes the obstacles of HTML5 which is technically still incomplete. Here are some 10 proposals for incredible HTML6 which is sure to outpace the web developers. 

1. Dedicated Libraries :

jQuery has brought revolution in the world of JavaScript including standard libraries. The amount of energy used up on loading jQuery is very high. Numerous websites are utilizing cacheable versions of JavaScript libraries across the globe. When a huge number of web designers prefer a specific library, it can be diffused with the browsers. This is one of the reasons why developers are expecting for new HTML version that can do something better.

2. Camera Integration :

In the modern world, most users are communicating with browser which has a camera and a microphone connected, due to the extensive usage of Web cameras and cellular phones cameras around. Incorporation of a photo or a video capture feature in HTML6 helps to easily access photos which are stored in the device. The device will also provide better control over the camera and boost the detection rate. 

3. Pluggable Pre-processors :

Pre-processors are already available in existing HTML versions to convert languages into JavaScript. HTML5 always considers a general version of JavaScript while optimizing the code for the local machine. HTML6 should improve this code optimization process by adopting certain feature. 

4. Pluggable Languages :

If HTML6 arrives with effective and pluggable languages, it will be highly useful for web developers for creating unique designs in a prompt manner. Any browser can easily implement this feature within a few steps if it is an open source business model. 

5. Better Annotation :

A well designed HTML structure supports article annotations through paragraphs, sentences as well as words too. Developers are looking for a dynamic and powerful version that allows annotations even to images and videos.

6. Hardened Authentication :

For instance, the browser should provide high and fast authentication while accessing HTML6. Creating trusted software would help both the browser and site to work efficiently. For extreme confidentiality and security, the browser can offer sign tokens with embedded keys rather than cookies. 

7. More Control over Video Object:


In the next iteration of HTML, people are looking for additional control over how the structures of the video dispersed on the web pages. The current version is available with a rectangle that packs a set frame from a specific video and the control is given across a text track with annotations, subtitles etc. If HTML 6 embrace callback hooks and synchronization mechanisms, it will be helpful to come up with world class videos. 

8. Stronger Micro-formats :

As HTML tags vary from headlines, paragraphs and footers, it's very essential to build a standard to define the general details like parts of an address or a phone number. Creating standard tags will not only speed up search engines, but also boosts your website quality. Developers can also use HTML6 to specify locations, times, dates, selling products, bibliographies, and etc.

9. Browser-sizing of imagery :

The pixel size of any image completely differs from mobile to desktop screen. An improved version of HTML can suggest a preferred height and width of the image. This procedure will definitely provide optimal resolution. 

10. Guarded Accessing to Contact Information :

For the betterment, the interface should provide absolutely subtle control to allow people while giving automatic access to code arriving from some domains but not others.

Many Custom Website Development Companies are looking forward to HTML6 for enhancing and establishing original websites in the best possible manner. 

Web developers always look for new features that dramatically make websites better, quicker, slicker, or more interesting. The above mentioned proposals for generating HTML6 would be really helpful for improving the web pages that amaze us!



Intel® Parallel Studio XE Achieve high performance on modern Intel® processors and coprocessors through the simpler creation of fast, reliable parallel code. Includes C++ and Fortran compilers, performance/data analytics libraries, error checking, and performance profiling. Try it now>

Try Intel® Parallel Studio XE

Intel® Parallel Studio XE Cluster Edition Scale your efforts with the first HPC suite that integrates Intel's cluster/analysis tools to meet fast-evolving performance, capacity, and efficiency needs. Download a free 30-day trial. Try it now>

Try Intel® Parallel Studio XE Cluster Edition

Intel® Parallel Studio XE Composer Edition Build fast parallel code with less effort for better performance from modern Intel® processors and coprocessors. Get industry-leading compilers and performance libraries, including C/C++ and Fortran compilers with vectorization capabilities. Try it now>

Try Intel® Parallel Studio XE Composer Edition

Intel® VTune™ Amplifier XE Focus on the code that matters to improve performance and multicore scalability. Understand how your application is performing and why, tune CPU and GPU data compute performance, and quickly find bottlenecks. Try it now>

Try Intel® VTune™ Amplifier XE

Intel® Data Analytics Acceleration Library Go big with your big data applications. This new data analytics library features object-oriented APIs for C++ and Java for simple integration and support for popular analytics platforms (Hadoop, Spark). Get it today>

Try Intel® Data Analytics Acceleration Library

Writing Multi-Threading Code in C++ 11

Writing Multi-Threading Code in C++ 11 

  09/05/2016 Rober Villar

Developers have been writing threading code for years using Posix threads (a.k.a. Boost Threads). Posix is an older but problematic tool. For example, it has thread cancellation, which can cause a problem with std::thread, especially if you practice (Resource Acquisition is Initialization) when acquiring resources during object creation and deallocating during destructors. But there is an alternative. Here’s a look at adding multi-threading code in C++ 11 using the library.
I created a simple application: a program that evaluates five-card poker hands. The hands are made up of cards, each with two characters, with rank and suit like KC (King Clubs), 2H (Two Hearts) and so on. This is actually a well-defined problem; there is a very efficient and fast poker scorer out there. I wanted to see if a multi-threaded version, derived from a single-threaded version, would be significantly faster.
Evaluating Poker Hands
Poker hands range from the best, which is a Straight Flush, to the poorest, a high card. In between are pairs, two pairs, threes, straights (a run of sequential ranks, e.g. 5-6-7-8-9), a flush (all five cards are the same suit), a full house (a three of one rank plus a pair), four of the same rank (a.k.a. four of a kind), and the straight flush (a straight with all cards the same suit).
For the purposes of this application, a text file of 1 million randomly generated five-card hands was created. Each line has a hand of five cards, i.e. 10 chars long in the form RSRSRSRSRS, where “R” is Rank and “S” suit. For example: AS7D8S7HJD (ace of spades, seven of diamonds, eight of spades, seven of hearts and jack of diamonds). It should be evaluated as a pair, because there are two sevens.
The first five hands are this:
So, the program has to read all 10,000 lines and evaluate as fast as possible, and output something like that above. To make sure the evaluation worked correctly, I ran it again using these hands below, and output the results from it:
Next, we have the results with all hands sorted. For straights, the code has to do a little bit of finagling. First, I check it with aces regarded as low, then move it to the high position:
C++ 11
I’ve tried to use a few C++ 11 features. For instance, instead of an array, I used std::array for the new collection class. Also, the enums were the newer-class enum types. These require static_casts to convert from a size_t (an int) to the enumerate type. Also, I used the “for (auto variable : collection)” loops to keep the code simpler. If you need to modify the underlying object, make it use “auto& like this”, which sets the selected flag false on each card in a hand.
Implementing the Evaluator
I created a PokerCard class to hold a card, then a PokerHand object, which has a std::array<PokerCard,5> and populated the hand, card by card, from the string. I’ve added a friend method to the PokerHand class to help evaluate it. Plus, once the hand has been read in, I use a custom sort on the cards by rank (A, 2…K). This simplifies evaluating the hands.
Checking for two pairs and full house (three of one rank plus a pair), I first searched for pairs, threes and fours and set a flag on each card. If there was a pair or three, I scanned the unflagged cards to see if a pair or three was present. I used a pointer to the previous card so if a pair was found, both cards could have their selected flag set true.
The release version of the single-threaded code took 3.35 seconds for the million hands, or approximately 3.35 microseconds for each evaluation. That is not bad, and that included reading the almost-12 MB file line by line.
Could I improve upon it? Yes. This is the code in main() that would need changing:
Going Multithreaded
I’d made the friend function EvaluateHand() completely self contained. It’s monolithic, about 160 lines long, or roughly half the program. But I figured doing it that way might make it easier to call it multi-threaded. All it needs is a reference to an instance of a Poker Hand.
The easiest way (and most likely to succeed) is to use std::async and fire off 11 valuations at a time, maybe one per thread. With async, you don’t decide what threads it uses. But behind the scenes, it apparently uses a thread pool. This is the replacement code below. I’ve used a compiler #define for the symbol Multi. If you comment the #define line out and save the file, you get the single-threaded version. Leave it in for the Multitasking version.
It uses futures to hold the result of the valuation. A future is an object that waits for your asynchronously running code to complete and store the result. As it’s asynchronous, you have to call get() on every future to wait until the evaluation is done. So in theory, it sends off 12 valuations at a go. This is in the code to the right of futures[count++] =. It’s defined as a lambda (an anonymous function) and [str] is how you pass the string str in to it. MaxThreads is a constant, defined as 12, so I use 11 of the threads (one is needed for the main thread):
The value of MaxThreads was obtained by calling this in an earlier version:
Did it Work?
Despite considerable effort, this, at 4.33 seconds, actually took about 33 percent longer than the single-threaded version. My thought was that the evaluation execution time is so quick that the overhead of calling the tasks asynchronously just makes it slower.
To try out this theory, I added a Sleep(1), a one-millisecond delay to the EvaluateHand() function. I also dropped the number of hands to evaluate to just under 20,000, as a million would have taken too long. I then ran both versions. This time, the multi-tasking version took 3.25 seconds; the single version took about 31 seconds.
So the theory for speeding it up was sound, but my evaluation function was too fast!
I’ve uploaded the VC++ 15 project and source files, plus test files including the million hands, to GitHub .

sábado, 7 de mayo de 2016


6 Best Flexible and Useful PHP CMS for Developers

php cms


You have a lots of option to make your developing work easier and simpler and CMS (Content Management System) is one of them.At the time of doing work with PHP or MySQL many developers use their own CMS but it’s not very easy to make your own CMS.You have to do a lot of things for it.
Here I have put together some new PHP CMS. Most of them has database and some are using flat file system. If you are thinking to adopt a new CMS or switching, you might find something useful in this article.

Flexible and Useful PHP CMS for Developers


Pyro helps you to design, build and manage your website.Pyro can generate your schema, models, addons, routes, controllers, tables, forms, UI and more for you. All you have to do is customize them as desired.Pyro is built on top of Laravel and is completely transparent.If needed, you can add Pyro’s core and addons to any Laravel installation with composer and enjoy all of it’s benefits.
  • Automated
  • Integrative
  • Multilingual
  • Easy Control Panel
  • Powerhouse
php cms
Details & Download


Anchor is a super-simple,ightweight blog system.It’s fully free and open source. Anchor only supports recent versions of the languages it’s written in. As such, you will need:
  • PHP 5.3.6+
    • curl
    • mcrypt
    • gd
    • pdo_mysql or pdo_sqlite
  • MySQL 5.2+
  • Drag & Drop
  • Multilingual
  • Open Source
  • Extensible
  • Easy To Install
  • Modern Markup
php cms
Details & Download



ProcessWire is a free PHP content management system and framework (open source CMS/CMF) built to save you time and work the way you do.ProcessWire provides simpler and stronger control over your pages, fields, templates and markup at any scale. And it provides a powerful template system that works the way you already do.
php cms
View Demo     Details & Download


Bolt is an open source Content Management Tool, which strives to be as simple and straightforward as possible. It is quick to set up, easy to configure, uses elegant templates, and above all.It’s fully responsive dashboard works on desktop computers, laptops, tablets and mobile phones alike, so you can control anything from wherever you are.
  • Open Source
  • Responsive
  • Easy to Use
  • Content Editors
php cms
View Demo     Details & Download


GetSimple is an XML based, stand-a-alone, fully independant,lite and open source Content Management System.
  • Great Security
  • Good Interface
  • Customizable
  • Easy Setup
  • Multi User
php cms
Details & Download


CMS Made Simple, an open source content management system, allows for faster and easier management of website content. This CMS is scalable for small businesses to large corporations.
php cms
Details & Download

Learn PHP . by Software RVG

Learn PHP

Beginner Guide: 7 Best Free Books For Learning PHP

Learning PHP is a great Idea. PHP is Popular Server-side Scripting Language & good things is that PHP is Open Source. I think the Major problem for Beginner is choosing right book. so in this article, we mention some popular books for the Learning PHP. Because became an Expert in any kind of Language you need to Start With a good Book. Learning PHP is very easy & if you are the  beginner then you are enjoying with the PHP. PHP is basically designed for the Web development. PHP is widely used around installed on more than 240 million website. So if you are thinking about Learning PHP I think it is a good decision for you and your career. so don’t Worry and keep reading. So in this article main aim to Suggest you some free books which will completely help you. there are some of the Best Free Books For Learning PHP are the below mention some of them.
So in this,  I will suggest you some free books which will help you to Learning  PHP.










Download PDF





jueves, 5 de mayo de 2016

Why the Internet of Things needs open source

Why the Internet of Things needs open source

The Internet Of Things has grown into a vast subset of mobility. But it could implode just as easily as it rose to fame. Is the key to open source protecting IoT devices from sudden demise?
It should come as no surprise to you that the Internet of Things already depends upon open source. Many IoT devices run one form of embedded Linux or another. In fact, without Linux many IoT devices simply wouldn't exist. What should come as a surprise to you is when companies that produce these IoT devices close up shop, they leave those devices out in the wild to die. Perfectly good hardware no longer capable of functioning...even when open source is at the heart of the device.
This needs to change.

What's the problem

In most instances, the companies that create the devices (those same companies that depend upon open source
as a foundation for their products) layer proprietary software and APIs on top of the open platforms running the system...all of this on closed hardware. Because of this, once the company dies, that hardware is left to wither and die. And before you think this never does. Companies are purchased all the time. Sometimes these purchases are innocent and sometimes not. Every so often, a company will be purchases just to put a competing product to bed. This winds up leaving consumers with a bricked device. You might think a product would continue to work, even without updates or company support. However, within in the realm of IoT, those products depend upon services offered by the company in order for the device to function. So long as those devices use closed APIs and hardware, they could very well remain dead.However, if more open source were put in place, should a product be "bricked" by a company closing up shop, those products could be repurposed by the open source community and the device have a chance of continuing on.

Paying it forward

This really isn't just about making sure a consumer-purchased device remains viable once a company shutters its doors and windows. This is about said company paying back the open source community for supplying the foundation that makes the device possible in the first place. Remember, without Linux, many of those IoT devices wouldn't exist in the first place. And so, it seems only fair that these companies pay it forward to the open source community. Should your company close up, hand the proprietary bits over to Git so open source developers can make something of your dead product.
It's one thing to stop supporting a product, when said product can continue functioning. But when that product is a part of IoT, the end of support generally means the end of the product. With the help of open source, that product can continue functioning...even if in an altered capacity.
Thing is, the open source community is a talented and creative collective of developers. You give them a defunct product and the APIs to communicate with that product, and they'll make something happen. We've seen this work, to perfection, for years with routers. Thanks to the likes of DD-WRT, those older routers can be given new life and new functionality. Imagine what the open source community could do with the now-defunct Revolv Connected Home Hub? I would imagine the open source community would do exactly what the original company had planned...create a single product that would be able to communicate with all IoT devices. So long as the other IoT devices offered open APIs, this could happen.
See what I did there?
Those tricky APIs can certainly get in the way. One of the goals of Internet of Things is to create connected devices that share data and seamlessly blend together. When companies close up the communication bits, those devices can't do the one thing they must...communicate.
We want Amazon's Echo to communicate to Nest (something that can now be done). We want Product A from Company B to work with Product C from Company D...otherwise, what's the point of IoT? You'd wind up having to buy all of your IoT devices from one company. And what happens when you do that and the company goes under? You've just spent a wad of cash on bricks.
Not if open source has anything to do with it.
I realize this is asking a bit much. Companies keep their secrets for a reason. But when those companies depend upon open source to drive the products that make or break their bottom line, it only seems right that they give back in some way. So why not open the products fully? Not only would that save the devices (should the company fold), the open source community could build on those devices, adding features, connecting more services, and generally making them more and more attractive to use.
Imagine your your fridge being able to communicate with your thermostat or Android Auto being able to communicate to your home hub or door locks. This, and so much more, could happen with the help of open source.