Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Events
Videos
Audiobooks
Packt Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds

Tech News

3711 Articles
article-image-deepmind-elon-musk-and-others-pledge-not-to-build-lethal-ai
Richard Gall
18 Jul 2018
3 min read
Save for later

DeepMind, Elon Musk, and others pledge not to build lethal AI

Richard Gall
18 Jul 2018
3 min read
Leading researchers and figures from across the tech industry have signed a pledge agreeing not to develop lethal weapons with AI. The pledge, which was published today (18 July) to coincide with the International Joint Conference on Artificial Intelligence in Sweden, asserted "the decision to take a human life should never be delegated to a machine." The pledge was coordinated by the Future of Life Institute, a charity which 'mitigates existential risks to humanity'.  The organization was previously behind an unsuccessful letter calling on the UN to ban "killer robots". That included some but not all of the signatories on the current letter. Who signed the AI pledge? This letter includes signatories from some of the leading names in the world of AI. DeepMind has thrown its support behind the letter, along with founders Demis Hassabis and Shane Legg. Elon Musk has also signed the letter, taking time out from his spat with members of the Thai cave rescue mission, and Skype founder Jaan Tallinn is also lending his support. Elsewhere, the pledge has support from a significant number of academics working on AI, including Stuart Russell from UC Berkeley and Yoshua Benigo from the University of Montreal. Specifically, the pledge focuses on weapons that use AI to remove human decision-making from lethal force. However, what this means in practice isn't straightforward - which means legislating against such weapons is incredibly difficult. As a piece in Wired argued last year, banning autonomous weapons simply may not be practical. It's also worth noting that the pledge does not cover the use of artificial intelligence for non-lethal purposes. Speaking to The Verge, military analyst Paul Scharre was critical of the pledge: "What seems to be lacking is sustained engagement from AI researchers in explaining to policymakers why they are concerned about autonomous weapons,” he's quoted as saying. Here's how the letter ends: We, the undersigned, call upon governments and government leaders to create a future with strong international norms, regulations and laws against lethal autonomous weapons. These currently being absent, we opt to hold ourselves to a high standard: we will neither participate in nor support the development, manufacture, trade, or use of lethal autonomous weapons. We ask that technology companies and organizations, as well as leaders, policymakers, and other individuals, join us in this pledge. While the crux of the message represents the right step from industry leaders, whether this amounts to real change is another matter. With pledges and letters coming thick and fast over the last few years, perhaps it's time for concrete actions. Read next:  Google Employees Protest against the use of Artificial Intelligence in Military 5 reasons government should regulate technology The New AI Cold War Between China and the USA
Read more
  • 0
  • 0
  • 12026

article-image-anaconda-enterprise-5-2-releases-with-special-focus-on-machine-learning-in-production
Pravin Dhandre
18 Jul 2018
2 min read
Save for later

Anaconda Enterprise 5.2 releases with special focus on machine learning in production

Pravin Dhandre
18 Jul 2018
2 min read
With just a month after the release of Anaconda Distribution 5.2, the team at Anaconda, Inc excitingly announces the enterprise release of Anaconda Enterprise 5.2. The newer version of enterprise release boosts its capabilities with GPU-acceleration feature, cloud-native model management and scaling machine learning models. This release is expected to power-up the enterprises with high-speed digital interactions required in Artificial Intelligence and Machine Learning operations. New features in Anaconda Enterprise 5.2: GPU acceleration with Cloud-native support - Enables GPU computation for complex and heavy deep learning workloads. It provides secure and efficient utilization of GPU clusters thereby delivers efficient ways to perform large machine learning operations at scale. Job schedule - This allows priority jobs to be allocated with enough CPU and GPU allocation along with supporting regular deployments of recurring jobs. Easy Git integration - Provides support for collaborating your existing version control and continuous integration tools such as Bitbucket and Git With such new features, millions of scientists can take their machine learning projects from training to production level with complete security and absolute governance. The open source platform Anaconda Distribution is already benefiting over 6 million data science users to develop and optimize their machine learning models on large datasets. Anaconda Enterprise is the only product on the market that allows data scientists to go from laptop for model development to a 1000-node GPU cluster for training to production deployment—all with full reproducibility and governance. According to Anaconda, Inc., “Anaconda Enterprise is the only platform to combine core AI technologies, automated governance, and reproducibility, and cloud-native approaches to make data science teams as productive as possible. Anaconda Enterprise empowers organizations to develop, govern, and automate ML/AI pipelines from laptop to production, quickly delivering insights into the hands of business leaders and decision-makers.” To know more on the administrator facing and backend improvement changes, you can read the release note which would be very soon available on the Anaconda Documentation. Until then, you can also refer to the official announcement about this release on Anaconda’s blog. How Amazon is reinventing Speech Recognition and Machine Translation with AI Alibaba introduces AI copywriter Nvidia and AI researchers create AI agent Noise2Noise that can denoise images
Read more
  • 0
  • 0
  • 3000

article-image-cmake-3-12-0-releases
Natasha Mathur
18 Jul 2018
3 min read
Save for later

CMake 3.12.0 releases!

Natasha Mathur
18 Jul 2018
3 min read
CMake 3.12.0 is now available for download. The new release includes changes in generators, command lines, variables, modules and other updates. Let’s have a look at major changes and new features in CMake 3.12.0 Key Updates Here are the new features added in the latest release: Generators The Visual Studio Generators for VS 2017 now offers support for version=14.## option in the CMAKE_GENERATOR_TOOLSET value (e.g. via the cmake(1) -T option). This helps in specifying a toolset version number. Command Line The cmake(1) Build Tool Mode (cmake --build) gained --parallel [<jobs>] and -j [<jobs>] options. This helps to specify a parallel build level. They also help map to the corresponding options in the native build tool. Commands The add_compile_definitions() command is now added to set the preprocessor definitions at a directory level. This supersedes add_definitions(). Also, the cmake_minimum_required() and cmake_policy(VERSION) commands can now accept a version range using the form <min>[...<max>]. The list() command offers a SUBLIST sub-command to get a sublist of the list. Variables The CMAKE_SUPPRESS_REGENERATION variable is extended and now provides support to the Ninja and Makefile Generators. The CMAKE_FOLDER variable has been added to initialize the FOLDER property on all targets. Properties VS_SHADER_DISABLE_OPTIMIZATIONS and VS_SHADER_ENABLE_DEBUG, which are the properties of HLSL source file now offer support for generator expressions. HLSL source file property VS_SHADER_OBJECT_FILE_NAME has been added to the Visual Studio Generators for VS 2010 and above. The property helps to specify the file name of the compiled shader object. Modules The FindALSA module is now capable of providing imported targets. The FindMatlab module offers support for the Matlab Runtime Compiler (MCR) for compiling and linking matlab extensions. The UseSWIG module has also gained support now for CSHARP variant wrapper files. Generator Expressions A new $<GENEX_EVAL:...> and $<TARGET_GENEX_EVAL:target,...> generator expression is now added to allow consumption of generator expressions. Their evaluation itself delivers generator expressions. Added a new $<TARGET_NAME_IF_EXISTS:...> generator expression. Other changes The Visual Studio 8 2005 generator has been deprecated. Fortran dependency scanning now provides support for dependencies implied by Fortran Submodules. The Compile Features functionality will now make use of C features in MSVC since VS 2010. For more information on the latest updates and features, check out the official CMake 3.12.0 release notes. Qt for Python 5.11 released! Apache NetBeans 9.0 RC1 released!  
Read more
  • 0
  • 0
  • 7048

article-image-attention-designers-artificial-intelligence-can-now-create-realistic-virtual-textures
Sugandha Lahoti
18 Jul 2018
2 min read
Save for later

Attention designers, Artificial Intelligence can now create realistic virtual textures

Sugandha Lahoti
18 Jul 2018
2 min read
A team of researchers have discovered a new tool that can assist designers and animators to create more realistic virtual textures. The tool makes uses of a deep learning technique, called the Generative Adversarial Networks (GANs). GANs train a neural network to learn to expand small textures into larger ones that bear a resemblance to the original sample. Texture synthesis has always remained a challenging job for designers. The design of accurate real-world textures such as water ripples in a river, concrete walls, or patterns of leaves is highly intricate and prone to errors. Current techniques for texture creation are tedious and time-consuming. However, the works of Yang Zhou et al, have made the texture synthesis process simplistic for texture artists in designing video games, virtual reality, and animation. Their method uses a generator to generate a texture, usually larger in size than the input, that closely resembles the visual characteristics of the sample input. The visual similarity between the newly created texture and the sample input is assessed using a discriminative network (discriminator). As typical of GANs, the discriminator is trained in parallel to the generator to distinguish between the actual and the desired output. The researchers tested their method on complex examples of peacock feathers and tree trunk ripples, which are seemingly endless in their repetitive patterns. The results are realistic designs produced in high-resolution, efficiently, and at a much larger scale. The team also intends to train a "universal" model on a large-scale texture dataset, as well as increase user control as part of their future work. Zhou and his collaborators will present their work at SIGGRAPH 2018, to be held on  12-16 August in Vancouver, British Columbia. This annual gathering showcases the works of professionals, and academicians practicing in CG, Animation, VR, Games, Digital Art, Mixed Reality and Emerging Technologies. Nvidia and AI researchers create AI agent Noise2Noise that can denoise images Adobe to spot fake images using Artificial Intelligence How Google’s DeepMind is creating images with artificial intelligence
Read more
  • 0
  • 0
  • 9393

article-image-typescript-3-0-release-candidate-is-here
Natasha Mathur
18 Jul 2018
2 min read
Save for later

TypeScript 3.0 release candidate is here

Natasha Mathur
18 Jul 2018
2 min read
After the announcement of Typescript 2.9 RC  back in May, Microsoft’s TypeScript team came out with the release candidate of TypeScript 3.0 last week, unveiling features such as project references, extracting and spreading parameter lists with tuples, a new unknown type and API breaking changes among others. Let’s discuss the highlights of TypeScript 3.0 RC release. Project Reference functionality It allows TypeScript projects to depend on other TypeScript projects. Once these dependencies have been specified in the tsconfig.json file, you can easily split your code into smaller projects. It also provides TypeScript (and tools around it) a way to understand build ordering and output structure. Extracting and spreading parameter lists using tuples This functionality helps with reducing the overloading amount for functions of varied parameter lengths. Also, there is no need to write different overloads to support functions with different number of parameters. TypeScript 3.0 allows to better model scenarios like these by allowing rest parameters to be generic, and concluding those generics as tuple types. This, in turn, demands for richer tuple types to model scenarios such as optional parameters at the end of a parameter list, a final parameter which can be a rest parameter along with empty parameter lists. A new ‘unknown’ type Apart from these features, the new unknown type feature can accommodate APIs that uses variable of any value but requires type checking. Support for the JSX defaultProps There is also support for the JSX defaultProps used in React. These defaultProps allow the developers to define default values for props during creation of a component, such as a source for an Image component. TypeScript 3.0 RC also supports a new type alias called LibraryManagedAttributes in the JSX namespace. LibraryManagedAttributes is just a helper type that tells TypeScript what attributes a JSX tag accepts. Using this general type helps model React's specific behavior for things such as defaultProps and propTypes. Apart from these features, there are API breaking changes API Breaking Changes The internal method LanguageService#getSourceFile is removed, after being deprecated for two years. The function TypeChecker#getSymbolDisplayBuilder and its associated interfaces are removed. The deprecated functions escapeIdentifier and unescapeIdentifier are removed. TypeScript 3.0 release is scheduled for sometime later this month. For more information on the latest TypeScript 3.0 RC release, check out the official Microsoft Blog. How to work with classes in Typescript How to install and configure TypeScript  
Read more
  • 0
  • 0
  • 12408

article-image-ibm-launches-nabla-containers-a-sandbox-more-secure-than-docker-containers
Savia Lobo
17 Jul 2018
4 min read
Save for later

IBM launches Nabla containers: A sandbox more secure than Docker containers

Savia Lobo
17 Jul 2018
4 min read
Docker, and container technology in general have gotten a buzzing response from developers over the globe. The container technology with some enticing features such as lightweight in nature, being DevOps focussed, etc. has gradually taken over virtual machines much recently. However, most developers and organizations out there still prefer using virtual machines as they fear containers are less secure than the VMs. Enter IBM’s Nabla containers. IBM recently launched its brand new container tech with claims of it being more secure than Docker or any other containers in the market. It is a sandbox designed for a strong isolation on a host. This means, these specialized containers would cut down OS system calls to a bare minimum with as little code as possible. This is expected to decrease the surface area available for an attack. What are the leading causes for security breaches in containers? IBM Research’s distinguished engineer, James Bottomley, highlights the two fundamental kinds of security problems affecting containers and virtual machines(VM): Vertical Attack Profile (VAP) Horizontal Attack Profile (HAP) Vertical Attack Profile or VAP includes code which is used for traversing in order to provide services right from input to database update to output, in a stack. A container-based Virtual infrastructure Similar to all other programs, this VAP code is prone to bugs. Greater the code one traverses, greater will be the chances of exposure to a security loophole. Hence, the density of these bugs varies. However, this profile is much benign, as the primary actors for the hostile security attacks are the cloud tenants and the Cloud Security Providers(CSPs), which come much more into a picture in the HAP. Horizontal Attack Profile or HAP are stack security holes exploits that can jump either into the physical server host or VMs. A HAP attack These exploits cause, what is called, a failure of containment. Here, one part of the Vertical Attack Profile belongs to the tenants (The guest kernel, guest OS and application) while the other part (the hypervisor and host OS) belongs to the CSPs. However, the CSP vertical part has an additional problem which is, any exploit present in this piece of stack can be used to jump onto either the host itself or any other tenant VMs running on the host. James also states that any Horizontal security failure or HAP is a potential business destroying event for the CSPs. So one has to take care of preventing such failures. On the other hand, the exploit occuring in the VAP owned by the tenant is seen as a tenant-only-problem. This problem is expected to be located and fixed by tenants only. This tells us that, the larger the profile( for instance CSPs) the greater the probability of being exploited. HAP breaches, however, are not that common. But, whenever they occur, they ruin the system. James has called HAPs as the "potentially business destroying events." IBM Nabla Containers can ease out the HAP attacks for you!! Nabla containers achieve isolation by reducing the surface for an attack on the host. Standard containers vs Nabla containers These containers make use of a library OS also known as unikernel techniques adapted from the Solo5 project. These techniques help Nabla containers to avoid system calls and simultaneously reduce the attack surface. The containers use only 9 system calls; the rest are blocked through a Linux seccomp policy. Internals of Nabla containers Per IBM Research, Nabla containers are more secure than the other container technologies including Docker, and Google’s gVisor (a container runtime sandbox), and even Kata Containers (an open-source lightweight VM to secure containers). Read more about IBM Nabla containers on the official GitHub website. Docker isn’t going anywhere AWS Fargate makes Container infrastructure management a piece of cake Create a TeamCity project [Tutorial]    
Read more
  • 0
  • 0
  • 8900
Unlock access to the largest independent learning library in Tech for FREE!
Get unlimited access to 7500+ expert-authored eBooks and video courses covering every tech area you can think of.
Renews at $19.99/month. Cancel anytime
article-image-a-quick-look-at-e-u-s-pending-antitrust-case-against-googles-android
Natasha Mathur
17 Jul 2018
5 min read
Save for later

A quick look at E.U.’s antitrust case against Google’s Android

Natasha Mathur
17 Jul 2018
5 min read
Update, 18th July 2018: The European Commission fined Google with €4.34 billion today for breaching EU's antitrust rules. According to the European regulators, Google has put illegal restrictions on Android device manufacturers and mobile network operators to maintain its dominant position in the internet search market. Google, now, needs to bring this conduct to an end within 90 days or face penalty payments of up to 5% of the average daily worldwide turnover of Alphabet ( Google's parent company). For more coverage on this news, check out the official press release by EU. Google is expected to face a record penalty this month from the European regulators. This is over the concern that Google’s policies threaten its corporate rivals by having manufacturers provide consumers pre-installed Google’s apps on Android devices. The European Union had already charged the tech giant with a $2.72 billion antitrust fine last year for unfair promotion of its shopping services in its search result pages, thereby, breaking the antitrust laws. Many experts speculate that the penalty from Margrethe Vestager, European Union’s Competition chief, could range somewhere around $11 billion which is 10 percent of Alphabet’s (its parent company) annual turnover. Even if it doesn’t get fined for the full $11 billion, any amount over $2.7 billion is bound to set a new record for the company. This antitrust case has the power to cause some big changes to the world’s most widely used mobile operating system. It subsequently has the potential to cause a ripple effect on the overall mobile market altering existing business models. Here’s what you must know about the case before the decision gets made later this week. What are the charges made against Google? Back in April 2015, the E.U. commission had initiated an official investigation into Google and released a statement accusing the company of allegedly using Android to maintain its dominance in the online search market, thereby, hampering the competition. Here are few of the concerns raised: Limiting access to its Play Store unless the phone makers also include the Google search and other Chrome apps, a practice that breached E.U. antitrust rules. It reportedly blocked phone makers from creating devices that are based on the Android open source code but are not affiliated with the Google-owned property. It also provides financial incentives to manufacturers for pre-installing its Search services on devices. For instance, HTC and Samsung need to set Google Search as the default search app and include its Chrome browser within the devices. If not, they lose access to Android’s popular app store which will make it hard for the Android smartphone owners to easily download games or other apps. What has Google got to say? Google doesn’t deny the fact that Android has helped expand its advertising business. But, it has dodged the accusations made by E.U. by saying that its play store allows it to offer the entire package to phone makers which include the browser and other apps, for free. It argues that it provided a base to the phone makers to create low-cost and reliable Android devices. It also emphasized the fact that users are free to download other apps if they want. According to Kent Walker, senior VP at Google, an average Android user downloads more than 50 apps in addition to the ones pre-installed on his/her phone in Europe. It doesn’t take a lot of time to download or replace an app. So, is E.U. convinced with Google’s arguments? E.U. acknowledges some of the points made by the tech giant but is not convinced entirely. According to E.U., Google has set up a restrictive contract with the mobile set manufacturers which forces them to pre-install its apps within the devices. With the help of Android, it has managed to extend the reach of its super popular apps such as YouTube, Google Maps and its play store to millions of users. The E.U.’s concern is that when provided with pre-installed Google services, users would prefer to leverage the existing Google apps over other apps. This unfairly expands Google’s control over the mobile web market. According to comScore, a data provider, six of the top 10 smartphones apps downloaded in Europe’s markets which includes France, Germany, Britain, Spain, and Italy are Google apps. Also, the Chrome browser is used by roughly 65 percent of the smartphone users in Europe. What’s at stake for Google? The stakes are quite high for Google. Apart from the hefty fine, it might have to unbundle its apps from Android and the related contracts. Now, though these apps are widely loved by the Android smartphone users, removing the tech giant's “required” apps from the future Android phones would greatly diminish its market share. It would also hit hard on its advertising sales which is worth billions of dollars. It will also hamper Google’s product quality because it collects the user data through these apps which helps it improve the product quality. All these efforts were a part of its strategy to beat the competition from Apple, Facebook and Amazon to remain at the core of the ever-expanding mobile web. But, if EU had their way, it is one decision away from a domino effect trampling Google’s mobile growth strategy. What next? E.U.’s decision would not mean the end of the world for the tech giant. It can still appeal, but, it’ll have to carefully alter its business practices and decisions. Otherwise, it risks additional penalties for each day as it fails to comply. As for now, we can only wait for the EU decision to watch Google’s next move. Google releases Android Things library for Google Cloud IoT Core Top 5 Google I/O 2018 conference Day 1 Highlights: Android P, Android Things, ARCore, ML kit and Lighthouse  
Read more
  • 0
  • 2
  • 14327

article-image-meet-yuzu-an-experimental-emulator-for-the-nintendo-switch
Sugandha Lahoti
17 Jul 2018
3 min read
Save for later

Meet yuzu – an experimental emulator for the Nintendo Switch

Sugandha Lahoti
17 Jul 2018
3 min read
The makers of Citra, an emulator for the Nintendo 3DS, have released a new emulator called yuzu. This emulator is made for the Nintendo Switch, which is the 7th major video game console from Nintendo. The journey so far for yuzu Yuzu was initiated as an experimental setup by Citra’s lead developer bunnei after he saw that there were signs of the Switch’s operating system being based on the 3DS’s operating system. yuzu has the same core code as Citra and much of the same OS High-Level Emulation (HLE). The core emulation and memory management of yuzu are based on Citra, albeit modified to work with 64-bit addresses. It also has a loader for the Switch games and Unicorn integration for CPU emulation. Yuzu uses Reverse Engineering process to figure out how games work, and how the Switch GPU works. Switch’s GPU is more advanced than 3DS’ used in Citra and poses multiple challenges to reverse engineer it. However, the RE process of yuzu is essentially the same as Citra. Most of their RE and other development is being done in a trial-and-error manner. OS emulation The Switch’s OS is based Nintendo 3DS’s OS. So the developers used a large part of Citra’s OS HLE code for yuzu OS. The loader and file system service was reused from Citra and modified to support Switch game dump files. The Kernel OS threading, scheduling, and synchronization fixes for yuzu were also ported from Citra’s OS implementation. The save data functionality, which allowed games to read and write files to the save data directory was also taken from 3DS. Switchbrew helped them create libnx, a userland library to write homebrew apps for the Nintendo Switch. (Homebrew is a popular term used for applications that are created and executed on a video game console by hackers, programmers, developers, and consumers.) The Switch IPC (Inter-process communication) process is much more robust and complicated than the 3DS’s. Their system has different command modes, a typical IPC request response, and a Domain to efficiently conduct multiple service calls. Yuzu uses the Nvidia services to configure the video driver to get the graphics output. However, Nintendo re-purposed the Android graphics stack and used it in the Switch for rendering. And so yuzu developers had to implement this even to get homebrew applications to display graphics. The Next Steps Being at a nascent stage, yuzu still has a long way to go. The developers still have to add HID (user input support) such as support for all 9 controllers, rumble, LEDs, layouts etc. Currently, the Audio HLE is in progress, but they still have to implement audio playback. Audio playback, if implemented properly, would be a major breakthrough as most complicated games often hang or go into a deadlock because of this issue. They are also working on resolving minor fixes to help them boot further in games like Super Mario Odyssey, 1-2-Switch, and The Binding of Issac. Be sure to read the entire progress report on the yuzu blog. AI for game developers: 7 ways AI can take your game to the next level AI for Unity game developers: How to emulate real-world senses in your NPC agent behavior Unity 2018.2: Unity release for this year 2nd time in a row!
Read more
  • 0
  • 0
  • 21148

article-image-hortonworks-data-platform-3-0-is-now-generally-available
Pravin Dhandre
17 Jul 2018
3 min read
Save for later

Hortonworks Data Platform 3.0 is now generally available

Pravin Dhandre
17 Jul 2018
3 min read
Hortonworks proudly announces the eagerly awaited full release of its data platform,  Hortonworks Data Platform 3.0. With businesses becoming more data-driven, Hortonworks Data Platform 3.0 (HDP 3.0) is a major footstep in the plan for dominating the Big Data ecosystem. They’ve made major changes within its stack and expanded their ecosystem to include trending technologies like Deep Learning. With the GA release, HDP 3.0 equips businesses with enterprise-grade functionalities, enabling speedy application deployment, managing machine learning workloads with real-time database management. The platform is designed to provide complete security and governance for your business applications. The data platform is added with additional support to GPU computing, containerization, Namenode Federation and Erasure Coding and all these new features are developed on Hadoop 3.1. The platform supports both on-premise and cloud deployment including major cloud platforms such as Amazon Web Services, Microsoft Azure, and Google Cloud. The platform is also stocked with Apache Ranger and Apache Atlas to provide a secure and trusted Data Lake infrastructure. To keep the stack intact and smooth, the new release has deprecated various Apache components like Falcon, Mahout, Flume and Apache Hue. Key features of HDP 3.0: Agile Application Deployment: It enables application developers to deploy their applications using containerization technology. With this, developers can test new versions and at the same time can create new features without damaging the old ones. This feature results in speedy application deployment along with optimum utilization of resources at hand. Deep Learning Support: With Deep Learning technology becoming the backbone of today’s intelligence, HDP 3.0 provides complete support for GPU computing and deep learning workloads. The platform provides both GPU pooling and GPU isolation support through which GPU resources can be used at the optimal level and at the same time can be used exclusively for a specific application based on its priority and complexity level. Cloud Optimization: It is accelerated with automated cloud provisioning for simpler deployment of big data applications with support to major cloud object stores such as Amazon S3, Azure Data Lake, and Google Cloud Storage. The platform also provides speedy query performance with the support of cloud connectors including Apache HBase and Apache Spark. This newly revamped and innovated big data platform can help businesses achieve faster insights and with decision-making in today's competitive business environment. For more detailed information on the HDP 3.0, please visit the official product page. Hortonworks partner with Google Cloud to enhance their Big Data strategy Why AWS is the preferred cloud platform for developers working with big data? Getting to know different Big data Characteristics
Read more
  • 0
  • 0
  • 2629

article-image-react-storybook-ui-logging-user-interactions-with-actions-add-on-tutorial
Packt Editorial Staff
17 Jul 2018
7 min read
Save for later

React Storybook UI: Logging user interactions with Actions add-on [Tutorial]

Packt Editorial Staff
17 Jul 2018
7 min read
Sometimes, you end up creating a whole new page, or a whole new app, just to see what your component can do on its own. This can be a painful process and, which is why Storybook exists in React. With Storybook, you're automating a sandboxed environment to work with. It also handles all the build steps, so you can write a story for your components and see the result. In this article we are going to use the Storybook add-ons, which you can test on any aspect of your component before worrying about integrating it in your application. To be specific we are going to look at Actions, which is a by default add-on in Storybook. This React tutorial is an extract from the book React 16 Tools written by Adam Boduch. Adam Boduch has been involved with large-scale JavaScript development for nearly 10 years. He has practical experience with real-world software systems, and the scaling challenges they pose. Working with Actions in React Storybook The Actions add-on is enabled in your Storybook by default. The idea with Actions is that once you select a story, you can interact with the rendered page elements in the main pane. Actions provide you with a mechanism that logs user interactions in the Storybook UI. Additionally, Actions can serve as a general- purpose tool to help you monitor data as it flows through your components. Let's start with a simple button component: import React from 'react'; const MyButton = ({ onClick }) => ( <button onClick={onClick}>My Button</button> ); export default MyButton; The MyButton component renders a button element and assigns it an onClick event handler. The handler is actually defined by MyComponent; it's passed in as a prop. So let's create a story for this component and pass it an onClick handler function: import React from 'react'; import { storiesOf } from '@storybook/react'; import { action } from '@storybook/addon-actions'; import MyButton from '../MyButton'; storiesOf('MyButton', module).add('clicks', () => ( <MyButton onClick={action('my component clicked')} /> )); Do you see the action() function that's imported from @storybook/addon-actions? This is a higher-order function—a function that returns another function. When you call action('my component clicked'), you're getting a new function in return. The new function behaves kind of like console.log(), in that you can assign it a label and log arbitrary values. The difference is that functions created by the Storybook action() add-on function is that the output is rendered right in the actions pane of the Storybook UI: As usual, the button element is rendered in the main pane. The content that you're seeing in the actions pane is the result of clicking on the button three times. The output is the exact same with every click, so the output is all grouped under the my component clicked label that you assigned to the handler function. In the preceding example, the event handler functions that action() creates are useful for as a substitute for actual event handler functions that you would pass to your components. Other times, you actually need the event handling behavior to run. For example, you have a controlled form field that maintains its own state and you want to see what happens as the state changes. For cases like these, I find the simplest and most effective approach is to add event handler props, even if you're not using them for anything else. Let's take a look at an example of this: import React, { Component } from 'react'; class MyRangeInput extends Component { static defaultProps = { onChange() {}, onRender() {} }; state = { value: 25 }; onChange = ({ target: { value } }) => { this.setState({ value }); this.props.onChange(value); }; render() { const { value } = this.state; this.props.onRender(value); return ( <input type="range" min="1" max="100" value={value} onChange={this.onChange} /> ); } } export default MyRangeInput; Let's start by taking a look at the defaultProps of this component. By default, this component has two default handler functions for onChange and onRender—these do nothing so that if they're not set, they can still be called and nothing will happen. As you might have guessed, we can now pass action() handlers to MyRangeInput components. Let's try this out. Here's what your stories/index.js looks like now: import React from 'react'; import { storiesOf } from '@storybook/react'; import { action } from '@storybook/addon-actions'; import MyButton from '../MyButton'; import MyRangeInput from '../MyRangeInput'; storiesOf('MyButton', module).add('clicks', () => ( <MyButton onClick={action('my component clicked')} /> )); storiesOf('MyRangeInput', module).add('slides', () => ( <MyRangeInput onChange={action('range input changed')} onRender={action('range input rendered')} /> )); Now when you view this story in the Storybook UI, you should see lots of actions logged when you slide the range input slider: As the slider handle moves, you can see the two event handler functions that you've passed to the component are logging the value at different stages of the component rendering life cycle. The most recent action is logged at the top of the pane, unlike browser dev tools which logs the most recent value at the bottom. Let's revisit the MyRangeInput code for a moment. The first function that's called when the slider handle moves is the change handler: onChange = ({ target: { value } }) => { this.setState({ value }); this.props.onChange(value); }; This onChange() method is internal to MyRangeInput. It's needed because the input element that it renders uses the component state as the single source of truth. These are called controlled components in React terminology. First, it sets the state of the value using the target.value property from the event argument. Then, it calls this.props.onChange(), passing it the same value. This is how you can see the even value in the Storybook UI. Note that this isn't the right place to log the updated state of the component. When you call setState(), you have to make the assumption that you're done dealing with state in the function because it doesn't always update synchronously. Calling setState() only schedules the state update and the subsequent re-render of your component. Here's an example of how this can cause problems. Let's say that instead of logging the value from the event argument, you logged the value state after setting it: There's a bit of a problem here now. The onChange handler is logging the old state while the onRender handler is logging the updated state. This sort of logging output is super confusing if you're trying to trace an event value to rendered output—things don't line up! Never log state values after calling setState(). If the idea of calling noop functions makes you feel uncomfortable, then maybe this approach to displaying actions in Storybook isn't for you. On the other hand, you might find that having a utility to log essentially anything at any point in the life cycle of your component without the need to write a bunch of debugging code inside your component. For such cases, Actions are the way to go. To summarize, we learned about Storybook add-on Actions. We saw it help with logging and the links provide a mechanism for navigation beyond the default. Grab the book React 16 Tooling today. This book covers the most important tools, utilities, and libraries that every React developer needs to know — in detail. What is React.js and how does it work? Is React Native is really Native framework? React Native announces re-architecture of the framework for better performance  
Read more
  • 0
  • 0
  • 25699
article-image-tech-unregulated-washington-post-warns-robocalls-could-get-worse
Sugandha Lahoti
16 Jul 2018
3 min read
Save for later

Tech, unregulated: Washington Post warns Robocalls could get worse

Sugandha Lahoti
16 Jul 2018
3 min read
Automated calls are annoying. There is rarely a day when you aren’t greeted with an unanticipated call from an unrecognized number.  And to make matters worse, Robocalls are expected to surge in number in the coming times. This gets even worse during the tax season. The online site AllAreaCodes.com looked at the number of complaints filed with the Federal Trade Commission and found that that phone scams increase by 20 percent in March and April as the tax filing deadline approaches. According to a report by the Washington Post, financial corporations and retailers are trying to persuade the current US administration to make it easier to send robocalls and texts to the masses. If the government approves of this request, industries would soon be permitted to send unlimited texts and calls, without the consumer having a say in the matter. Robocalls are fine as long as they come from legitimate businesses. For instance, alerts from a drugstore for a person to pick up their prescription, or an automated voice call from your bank, alerting your credit card bill due date, are useful. The sanctity of robocalls is maintained as long as telemarketing calls and alerts from companies are genuine and consented. Per the Post, almost three-quarters of more than four billion robocalls placed in June, according to data published by YouMail, came from companies the customers had a genuine relationship with. However, some of these calls are actually from scammers who abuse automated systems. According to the Post, Adrian Abramovich was fined $120 million for placing 96 million unsought calls offering fake travel deals in just three months. Businesses are equally guilty. Navient, a financial service company, is highly active in voicing its opinion on loosening restrictions on robocalls. Multiple lawsuits have hit Navient, as reported by the Post, for harassing consumers with automated calls. Last year consumer groups had requested the Federal Communications Commission to look into the company’s practices. The task of regulating these robocalls lie in the hands of the Federal Communications Commission. Per the Post, the FCC along with its sister organization Federal Trade Commission is figuring on out how to rethink the robocall rules, while focusing on combating fraud and abuse. The last time the FCC tried to implement laws to cut down robocalls, they were throttled by the trade association of debt collectors. This time as well, the Post says, businesses led by the US Chamber of Commerce have opposed the idea of adding any federal laws that would restrict how businesses communicate with their customers. "We are at serious risk of seeing the existing robocall problem, which is already serious, get far, far worse,” said Margot Saunders, a senior attorney at the National Consumer Law Center. YouTube has a $25 million plan to counter fake news and misinformation Microsoft’s Brad Smith calls for facial recognition technology to be regulated Too weird for Wall Street: Broadcom’s value drops after purchasing CA Technologies
Read more
  • 0
  • 0
  • 10192

article-image-lego-launches-brickheadz-builder-ar-a-new-and-free-android-app-to-bring-bricks-and-toys-to-life
Natasha Mathur
16 Jul 2018
3 min read
Save for later

LEGO launches BrickHeadz Builder AR, a new and free Android app to bring bricks and toys to life

Natasha Mathur
16 Jul 2018
3 min read
LEGO, the Danish Toy Maker, came out with a new and free Augmented reality Android app named “ BrickHeadz Builder AR ” last week. Android users with the latest version of Google LLC’s ARCore can now download the newly launched AR app on their phones. With the magic of Augmented Reality, users can interact virtually with tiny toy figures and building blocks of BrickHeadz toys as it brings the kids’ BrickHeadz toys to life. The BrickHeadz line, launched in March 2017, includes the classic LEGO bricks along with an instruction manual for fans which directs them to build characters with big heads and little bodies. It features characters from the very popular Marvel (such as Iron Man, Captain America, Black Widow, etc), DC (Batman, Robin, Batgirl, The Joker) and Disney (Belle, The Beast, Captain Jack Sparrow) franchises. The company is also planning to expand the line by including more characters. LEGO has always been on the look-out for ways to make the physical play experience even more fun by blending it with virtual play, according to Sean McEvoy, VP of digital games and apps at the Lego Group. Let’s have a look at what the new BrickHeadz Builder AR app is all about. Key Features In the BrickHeadz Builder app, different lego related creations such as characters and objects can be easily accessed. It also enables these characters and objects to interact with each other in interesting ways. The app directs kids through the steps of construction from beginner to free builder. It enables them to discover new characters and objects by solving play formulas in a “magic book”. The “magic book” comes with tutorials and information on challenges that can provide you with rewards. You can also personalize characters by playing with their behavior and outfits. They can also build their own objects with the building blocks despite the prebuilt characters and objects. Unlocking new characters and items is also possible by playing with your creations. More industries are catching interest in AR apps these days, especially after the launch of Pokemon Go in 2016 which managed to exceed $1.8 billion in revenue in the past two years. It is by far the most popular AR game ever to be released. There is also a VR version of the BrickHeadz Builder android app that Lego launched back in October last year. That product also allows children, and adults, to build and play with virtual Lego blocks and characters. For iOS users, the company released LEGO AR-Studio last year in December. The Brickheadz Builder android app is free with no in-app purchases. All you need is the most recent version of ARCore running on Android 8.0 or later. It can The app can also run on few of the qualified phones ( such as Asus Zenfone AR and LG V30 ) running Android 7.0 or later. For more coverage on the BrickHeadz Builder AR app, check out the official LEGO blog. Niantic, of the Pokemon Go fame, releases a preview of its AR platform Adobe glides into Augmented Reality with Adobe Aero Qualcomm announces a new chipset for standalone AR/VR headsets at Augmented World Expo  
Read more
  • 0
  • 0
  • 13036

article-image-github-has-added-security-alerts-for-python
Richard Gall
16 Jul 2018
2 min read
Save for later

GitHub has added security alerts for Python

Richard Gall
16 Jul 2018
2 min read
At the end of 2017 GitHub announced the launch of its 'security alerts' feature for vulnerable Ruby and JavaScript packages. With the feature proving a huge success for GitHub, the platform has now rolled out the feature for Python. The GitHub team promised that Python would be the next language to receive the security alert feature - but with fears over a possible mass migration to GitLab, following Microsoft's acquisition of the platform, the news couldn't come at a better time. How Github's security alerts work GitHub's security alerts work using its dependency graph. The dependency graph allows developers to visualize the range of projects on which their code depends. Security alerts followed the release of the dependency graph for Ruby and JavaScript. With the dependency graph in place, the security alerts "track when dependencies are associated with public security vulnerabilities." When you enable the dependency graph GitHub will notify you if there is a possible vulnerability in one of your dependencies. It will also suggest some possible fixes as well. Rolling security alerts out to Python projects The Python roll out was announced on the GitHub blog by Robert Schultheis on July 12. He writes: We’ve chosen to launch the new platform offering with a few recent vulnerabilities. Over the coming weeks, we will be adding more historical Python vulnerabilities to our database. Going forward, we will continue to monitor the NVD feed and other sources, and will send alerts on any newly disclosed vulnerabilities in Python packages. He isn't specific about the Python vulnerabilities. However, as noted earlier, launching support for Python has always been part of GitHub's plan since 2017. As The Register notes, there have only been four Python entries on the CVE database in 2018 so far "and one of those is disputed." According to Schultheis, Github "will be adding more Python vulnerabilities to our database."
Read more
  • 0
  • 0
  • 10854
article-image-announcing-tableau-prep-2018-2-1
Sunith Shetty
16 Jul 2018
3 min read
Save for later

Announcing Tableau Prep 2018.2.1!

Sunith Shetty
16 Jul 2018
3 min read
Tableau team has announced a new version of Tableau Prep 2018.2.1 with lots of new features for easy enterprise deployments and more data connector options made available to the customers. This update has lots of user experience improvements focused on helping you manage data more efficiently and easily. Tableau Prep is a brand-new product introduced in April 2018, which is specifically designed to quickly combine, shape and clean data to perform easy-to-complex data analysis tasks. This product helps everyone with an appealing visual experience which makes data prep easier. It is seamlessly integrated with the existing Tableau analytical workflow, thus delivering a smart experience to go from data prep to analysis. Some of the noteworthy changes available in Tableau Prep 2018.2.1 are: Activate and deactivate Tableau Prep from the command line Now you have new command line options to deploy Tableau Prep easily on the hundreds to thousands of machines in an enterprise environment. You can use a key management system and use silent activation and deactivation capabilities just like in Tableau Desktop. In order to learn more about the feature, you can refer to the Deploy Tableau Desktop blog post.   Virtual desktop support to optimize Tableau Prep installations Just like Tableau Desktop, the new virtual desktop support allows you to optimize Tableau prep installations for non-persistent virtual desktops. Tableau-hosted Authorization to Run (ATR) service can be used to automatically deactivate Tableau Prep licenses after a predetermined period of time. In order to configure this option, refer to Configure Virtual Desktop Support blog post. Union summary to quickly align fields You often need to align or merge fields that represent the same data with different names especially while combining data from multiple sources. With this new feature, Tableau Prep offers a summary of the mismatched fields. It automatically recommends potential matches based on attributes such as similar data types and field names, thus making it quicker to align your data. Use ISO-8601 date parts As per the Idea forums, many customers, particularly those in Europe, wanted an easier approach to extract ISO-8601 date parts, especially for week numbers. With a new native support in the calculation language, you can get the required data you want by creating a simple calculation - [Week Number] = DATEPART("iso-week",[Order Date]. Thus you don’t need to write any complex date calculations which were previously involved. Group and filter data values New techniques to easily group and filter your data are now available. You just need to select the field values and right-click to group them or select a group and right-click to ungroup the field values. You can create new filters based on wildcard matches without writing a calculation. New data connectors New support has been added to the following connectors to help you connect to various cloud data sources and Hadoop Hive: MapR Hadoop Hive Apache Drill SparkSQL Snowflake Amazon EMR Hadoop Hive Cloudera Hadoop (Hive and Impala) Hortonworks Hadoop Hive In order to learn more about how to connect Tableau Prep to your data, see the Supported Connectors blog post. These are the key new features offered by the Tableau Prep 2018.2.1 version. However, there are more updates and user experience improvements. To find a complete list of new features, please refer to the what’s new blog post. A tale of two tools: Tableau and Power BI “Tableau is the most powerful and secure end-to-end analytics platform”: An interview with Joshua Milligan Visualizing BigQuery Data with Tableau
Read more
  • 0
  • 0
  • 12969

article-image-youtube-has-a-25-million-plan-to-counter-fake-news-and-misinformation
Savia Lobo
14 Jul 2018
3 min read
Save for later

YouTube has a $25 million plan to counter fake news and misinformation

Savia Lobo
14 Jul 2018
3 min read
Have you ever visited YouTube for watching some breaking news videos expecting to get all the info in one go but did not get what you expected? Videos use luring thumbnails and clickbait titles to attract more views and traffic. Most breaking news videos that follow such patterns are either fake, have a high level of misinformation or don’t clarify what the news really is. The news that continuously keeps popping up is most of the time, catchy. Google engineer, Guillaume Chaslot, who worked on the recommendation algorithm for YouTube, stated that this was purely designed to boost user engagement. To tackle this fake thread going around the popular video-sharing website, YouTube has initiated a $25 million plan to counter fake news and misinformation. In a Wired interview held in March, YouTube CEO, Susan Wojcicki announced new features which include updates to breaking news and conspiracy theories by adding information cues to every video. Information cues are short blocks of text based on moon landing and chemtrails, for example. Susan further added, “When there are videos that are focused around something that’s a conspiracy — and we’re using a list of well-known internet conspiracies from Wikipedia — then we will show a companion unit of information from Wikipedia showing that here is information about the event.” https://twitter.com/movandy/status/973688202530869248 Now, YouTube also features ‘authoritative’ content in their breaking news shelf. This means, news in this ‘authoritative’ section comes only from authoritative sources such as Google News and other providers who have applied to be part of Google News program. YouTube then uses a different set of algorithms to determine who within that group is authoritative. Later, based on this YouTube uses those news providers in their breaking news shelf, and their home feed. YouTube chief product officer Neal Mohan said, “Rather than recommending a video first, the algorithm will point to a text-based story surfaced by Google News. Results will be accompanied by a label reminding users that the story is still developing, and the info is "subject to change." These updated features for anti-fake news plan are currently active in 17 countries, including the US and YouTube is planning to double the reach in coming months. Python founder resigns. Guido van Rossum, goes ‘on a permanent vacation from being BDFL’ Facebook to launch AR ads on its news feed to let you try on products virtually Microsoft launches a free version of its Teams app to take Slack head on
Read more
  • 0
  • 0
  • 16722
Modal Close icon
Modal Close icon