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-microsoft-releases-the-python-language-server-in-visual-studio
Kunal Chaudhari
27 Jul 2018
3 min read
Save for later

Microsoft releases the Python Language Server in Visual Studio

Kunal Chaudhari
27 Jul 2018
3 min read
Last week Microsoft announced the release of Python Language Server which is a part of the July release for Python Extension for Visual Studio Code and will be released as a standalone product in the near future. Intellisense, Microsoft’s code analysis, and suggestion tool have been supporting Python since 2011, but this language support can now be extended to other tools using the Microsoft Language Server. Intellisense and Language Server Demystified IntelliSense is the general term for a number of features like List Members, Parameter Info, Quick Info, and Complete Word. These features help developers to learn more about the code they are using and to keep track of the parameters. With Intellisense, Microsoft has long featured the completion feature that makes writing code faster and less error-prone. Many aspects of IntelliSense are language-specific and many of its features are powered by a language server. Adding all these smart features in IntelliSense takes massive efforts and traditionally this effort is repeated for each development tool, as each tool provides different APIs for implementing the same feature. This effort can be significantly reduced with the help of a language server, as they provide these language-specific features to different tools with the help of a standard protocol known as Language Server Protocol (LSP). This way, a single Language Server can be re-used in multiple development tools, which in turn can support multiple languages with minimal effort. Benefits of the Python Language Server Python IntelliSense has been supported in Visual Studio since 2011 and is one of the most downloaded extensions, but only limited to Visual Studio developers. The Visual Studio team at Microsoft plan to separate the Python IntelliSense from Visual Studio and make it available as a standalone program using the language server protocol. Steve Dower, a developer at Microsoft, wrote in his blog that “Having a standalone, cross-platform language server means that we can continue to innovate and improve on our IntelliSense experience for Python developers in both Visual Studio and Visual Studio Code at the same time”. The July release of Visual Studio Codes Python extension includes features such as: Syntax errors will appear as the code is typed Improved performance for analyzing workspaces and presenting completions The ability to detect syntax errors within the entire workspace Faster startup times and imports Better handling for several language constructs The standalone release of the Python Language Server will be released in a few months, till then you can check out VS Code release announcement for more information. Microsoft’s GitHub acquisition is good for the open source community Microsoft launches a free version of its Teams app to take Slack head on Microsoft’s Brad Smith calls for facial recognition technology to be regulated
Read more
  • 0
  • 0
  • 12979

article-image-youtubes-polymer-redesign-doesnt-like-firefox-and-edge-browsers
Savia Lobo
26 Jul 2018
3 min read
Save for later

YouTube's Polymer redesign doesn’t like Firefox and Edge browsers

Savia Lobo
26 Jul 2018
3 min read
YouTube’s recent Polymer redesign upgrade was loved by many, which included improved designs and an added dark theme. Much after all the wow factor became a part of the routine, a new controversy came up stating Youtube slowing down on non-Chrome browsers. This glitch was brought to light by Mozilla’s Technical Program Manager, Chris Peterson. He tweeted, YouTube’s current architecture that includes Polymer is only available in Google Chrome. Thus, making it slower on Mozilla Firefox and Microsoft Edge. Why is Youtube loading slower on non-Chrome browsers Per Peterson, YouTube’s polymer redesign depends on the deprecated Shadow DOM v0 API, which is also the current implementation in Google Chrome. On the other hand, Firefox and Edge browsers have Shadow DOM polyfills, which are slower than Chrome’s native implementation. Peterson also stated that “On my laptop, initial page load takes 5 seconds with the polyfill viz-a-viz one without it. Subsequent page navigation perf is comparable.” What about the Internet Explorer 11? YouTube’s condition in the IE11 is a lot slower than even Firefox and Edge. IE11 is still being served with the old version of YouTube, by default. https://twitter.com/cpeterso/status/1021626510296285185 Is there a fix? Google could have chosen to service the new implementation into Firefox and Edge. A failure to do this, has resulted in the popular video streaming website running substantially slower on these two. However, there is an  easy fix for this issue. Peterson recommends users on both Firefox browser and Edge to revert YouTube to a previous version using add-ons. Firefox users can boost YouTube page load speeds by installing the YouTube Classic extension, while Edge users can do the same by installing the Tampermonkey extension and the YouTube − Restore Classic script. There are speculations that this is Google’s secretive plan to migrate the non-chrome users to Chrome? But that begs the question of whether such a move is worth risking Youtube users leaving the platform due to poor user experience. Considering this, the performance issue is unlikely to be a conscious effort from Google. What is more likely is that Google may’ve considered redesigning it with Polymer could provide great exposure to the web development framework’s features and use-cases. YouTube has more than 1.8 billion registered viewers every month along with 400 hours of video are uploaded to its site every minute. Although it works excellently in Chrome, which is the most popular web browser and accounts for 59 percent of website usage, a significant amount of the population still use Firefox and Edge. As such Youtube users expect a seamless experience regardless of what browser they use, and that is a fair expectation of a product from a reliable brand. YouTube has a $25 million plan to counter fake news and misinformation Vevo’s YouTube account Hacked: Popular videos deleted Firefox has made a password manager for your iPhone
Read more
  • 0
  • 0
  • 12469

article-image-angular-6-1-0-is-here
Natasha Mathur
26 Jul 2018
2 min read
Save for later

Angular 6.1.0 is here!

Natasha Mathur
26 Jul 2018
2 min read
Version 6.1.0 of the popular JavaScript framework Angular is here. The latest version released yesterday mainly focuses on bug fixes, new features, and support for TypeScript. Let’s discuss these major updates that come with Angular 6.1.0. In the new version, a KeyValuePipe has been introduced. Support is now offered for  // ... and // TODO in mock compiler expectations. An urlUpdateStrategy feature have been added to the Angular router which allows you to update the browser URL at the beginning of navigation. Feature defaultKeyValueDiffers has been exported to private API. Angular 6.1.0 enables developers to configure the Angular Router so that it remembers the scrolling position of the user as he/she navigates through an application. You can reset the scroll position with the new navigation event and can restore the previous position on pressing the back button. In addition to these updates, View Encapsulation with ShadowDOM v1 is the new standard. ShadowDOM provides better cross-browser support. Due to this reason, the ViewEncapsulation.Native feature has been deprecated. View encapsulation is the process which associates Cascading Style Sheets (CSS) with the components in which they are defined. The KeyValueDiffer#diff feature now allows null values. The new release also offers support for TypeScript 2.9, and 2.8 in addition to 2.7. Apart from these, there are also other breaking changes and bug fixes. Other Changes Under animation, the end-state styles for orphaned DOM nodes have been rendered. The queried element styles in safari/edge have been properly cleaned up in the latest release. typescript is used to resolve the modules for metadata. Mark Meta and Title services are marked as tree shakable provider. versionedFiles in asset-group resources have been deprecated. SwPush.unsubscribe() has been fixed. To use @angular/bazel rules, you need to add calling ng_setup_workspace() in your WORKSPACE file. Angular 7 will be released sometime in September/October 2018. For a complete list of changes and bug fixes, check out the official release notes.    Angular 6 is here packed with exciting new features! Everything new in Angular 6: Angular Elements, CLI commands and more  
Read more
  • 0
  • 0
  • 15324

article-image-facebook-stop-discriminatory-advertising-in-the-us-declares-washington-ag-ferguson
Sugandha Lahoti
26 Jul 2018
3 min read
Save for later

Facebook must stop discriminatory advertising in the US, declares Washington AG, Ferguson

Sugandha Lahoti
26 Jul 2018
3 min read
Attorney General Bob Ferguson announced the day before yesterday (24th July 2018) that Facebook has been found guilty of providing discriminatory advertisements on its platform. The platform provides third-party advertisers with the option to exclude ethnic and religious minorities, immigrants, LGBTQ individuals and other protected groups from seeing their ads. If these groups cannot see the ads at all, they are deprived of the opportunities provided in the advertisements. Source: Office of the Attorney General Following this verdict, Facebook has signed a legally binding agreement to make changes to its advertising platform within 90 days. According to this agreement, Facebook will no longer provide advertisers with options to exclude ethnic groups from advertisements for housing, credit, employment, insurance and public accommodations ads. Facebook will no longer provide advertisers with tools to discriminate based on race, creed, color, national origin, veteran or military status, sexual orientation and disability status. This matter was first brought to light by ProRepublica in 2016 when they went undercover and bought multiple rental housing ads on Facebook, where certain categories of users were excluded from seeing the ads. According to ProPublica, “Every single ad was approved within minutes.” The allegations in this news were alarming and the AG’s office decided to investigate. They used the platform to create 20 fake ads that excluded one or more ethnic minorities from receiving their advertising. Despite these exclusions, Facebook’s advertising platform approved all 20 ads. “Facebook’s advertising platform allowed unlawful discrimination on the basis of race, sexual orientation, disability, and religion,” said Ferguson. “That’s wrong, illegal, and unfair.” The Attorney General’s investigation found the platform's unlawful targeting options as an act of unfair acts and practices, and in violation of the state Consumer Protection Act and the Washington Law Against Discrimination. Read more: 5 reasons the government should regulate technology This led to the development of a permanent and legal binding agreement that aims to cover all loopholes and prevent Facebook from offering discriminating advertising in any form. However, Peter Romer-Friedman, a lawyer with Outten & Golden LLP points out that the “agreement does nothing to address age discrimination or gender discrimination on Facebook”. This agreement is legally binding in Washington state. Facebook has agreed to change its platform nationwide. Apart from fixing its advertising platform within 90 days, they are also entitled to pay the Washington State AGs Office $90,000 in costs and fees. This agreement is a win not just for the citizens of Washington state but also the United States. Facebook has agreed to implement its improved advertising options nationwide. But this is a very small step for the entire world. The ball is in Facebook’s court now. We’ll have to wait and see if it proactively generalizes these policies on a worldwide scale or if it needs the public and the law to hold Facebook accountable for the power its platform holds over the lives of its over 2 billion users. EU slaps Google with $5 billion fine for the Android antitrust case Furthering the Net Neutrality debate, GOP proposes the 21st Century Internet Act 20 lessons on bias in machine learning systems by Kate Crawford at NIPS 2017
Read more
  • 0
  • 0
  • 12264

article-image-google-new-cloud-services-platform-could-make-hybrid-cloud-more-accessible
Richard Gall
25 Jul 2018
3 min read
Save for later

Google's new Cloud Services Platform could make hybrid cloud more accessible

Richard Gall
25 Jul 2018
3 min read
Hybrid cloud is becoming an increasing reality for many businesses. This is something the software world is only just starting to acknowledge. However, at this year's Google Cloud Next, Google does seem to be making a play for the hybrid market. Its new Cloud Services Platform combines a number of tools, including Kubernetes and Istio, to support a hybrid cloud solution. In his speech at Google Cloud Next, Urs Holze, Senior VP of technical infrastructure, said that although cloud computing offers many advantages, it's "still missing something... a simple way to combine the cloud with your existing on-premise infrastructure or with other clouds." That's the thinking behind Cloud Services Platform, which brings together a whole host of tools to make managing a cloud potentially much easier than ever before. What's inside Google's Cloud Services Platform In a blog post Holze details what's going to be inside Cloud Services Platform: Service mesh: Availability of Istio 1.0 in open source, Managed Istio, and Apigee API Management for Istio Hybrid computing: GKE On-Prem with multi-cluster management Policy enforcement: GKE Policy Management, to take control of Kubernetes workloads Ops tooling: Stackdriver Service Monitoring Serverless computing: GKE Serverless add-on and Knative, an open source serverless framework Developer tools: Cloud Build, a fully managed CI/CD platform This diagram provides a clear illustration of how the various components of the Cloud Services Platform will fit together: [caption id="attachment_21065" align="aligncenter" width="960"] What's inside Google's Cloud Services Platform (via cloudplatform.googleblog.com)[/caption] Why Kubernetes and Istio are at the center of the Cloud Services Platform Holze explains the development of cloud in the context of containers. "The move to software containers", he says, "has helped some [businesses] in simplifying and speeding up how we package and deliver software." Kubernetes has been  an integral part of this shift. And although Holze has a vested interest when he says that "today it's by far the most popular way to run an manage containers," he's ultimately right - Kubernetes is one of the fastest growing open source projects on the planet. Read next: The key differences between Kubernetes and Docker Swarm Holze then follows on from this by introducing Istio. "Istio extends Kubernetes into these higher level services and makes service to service communications secure and reliable in a way that's very easy on developers." Istio is due to hit its first stable release in the next couple of days. So, insofar as both Istio and Kubernetes make it possible to manage and monitor containers at scale, bringing them together in a single platform makes for a compelling proposition for engineers. The advantage of being able to bring in tools like Kubernetes and Istio might make hybrid cloud solutions a much more attractive proposition for business and technology leaders - and for those already convinced, it could make life even better. According to Chen Goldberg, Google's Director of Engineering, speaking to journalists and Google Cloud Next, Cloud Services Platform "allows you to modernize wherever you are and at your own pace." Whether businesses buy into Google's vision remains to be seen - but it could well be a game-changer that threatens AWS dominance in the cloud world.  Read next: Go Cloud is Google’s bid to establish Golang as the go-to language of cloud Google Cloud Next: Fei-Fei Li reveals new AI tools for developers Dispelling the myths of hybrid cloud
Read more
  • 0
  • 0
  • 2717

article-image-go-cloud-is-googles-bid-to-establish-golang-as-the-go-to-language-of-cloud
Richard Gall
25 Jul 2018
2 min read
Save for later

Go Cloud is Google's bid to establish Golang as the go-to language of cloud

Richard Gall
25 Jul 2018
2 min read
Google's Go is one of the fastest growing programming languages on the planet. But Google is now bidding to make it the go-to language for cloud development. Go Cloud, a new library that features a set of tools to support cloud development, has been revealed in a blog post published yesterday. "With this project," the team explains, "we aim to make Go the language of choice for developers building portable cloud applications." Why Go Cloud now? Google developed Go Cloud because of a demand for a way of writing, simpler applications that aren't so tightly coupled to a single cloud provider. The team did considerable research into the key challenges and use cases in the Go community to arrive at Go Cloud. They found that the increased demand for multi-cloud or hybrid cloud solutions wasn't being fully leveraged by engineering teams, as there is a trade off between improving portability and shipping updates. Essentially, the need to decouple applications was being pushed back by the day-to-day pressures of delivering new features. With Go Cloud, developers will be able to solve this problem and develop portable cloud solutions that aren't tied to one cloud provider. What's inside Go Cloud? Go Cloud is a library that consists of a range of APIs. The team has "identified common services used by cloud applications and have created generic APIs to work across cloud providers." These APIs include: Blob storage MySQL database access Runtime configuration A HTTP server configured with request logging, tracing, and health checking At the moment Go Cloud is compatible with Google Cloud Platform and AWS, but say they plan "to add support for additional cloud providers very soon." Try Go Cloud for yourself If you want to see how Go Cloud works, you can try it out for yourself - this tutorial on GitHub is a good place to start. You can also stay up to date with news about the project by joining Google's dedicated mailing list.   Google Cloud Launches Blockchain Toolkit to help developers build apps easily Writing test functions in Golang [Tutorial]
Read more
  • 0
  • 0
  • 16619
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-spectrersb-targets-cpu-return-stack-buffer-found-on-intel-amd-and-arm-chipsets
Savia Lobo
25 Jul 2018
4 min read
Save for later

SpectreRSB targets CPU return stack buffer, found on Intel, AMD, and ARM chipsets

Savia Lobo
25 Jul 2018
4 min read
Attacks exploiting operating systems and applications have been on an exponential rise in recent time. One such popular class of vulnerability is the Spectre, which exploits the speculative execution mechanism employed in modern processor chips and has recently targeted Intel, AMD, and ARM. The assumed dead exploit which resurfaced as a new variant of Spectre, SpectreRSB, was successful in exploiting the return stack buffer (RSB), a common predictor structure in modern CPUs used to predict return addresses. Spectre, which was first detected in January this year, has remained resilient. The Spectre variant 1, which Dartmouth claimed to resolve using its ELFbac policy techniques. The next one is the Spectre variant 2, which Google fixed using its Retpoline. Next to follow are the new data-stealing exploits, Spectre 1.1 and 1.2, detected just two weeks ago by Vladimir Kiriansky and Carl Waldspurger. And the most recent one in the headlines is the SpectreRSB. This spectre-class exploit, SpectreRSB, was revealed by security experts from the University of California, Riverside (UCR). They mentioned the details of this new exploit attack method in a research paper published by Arxiv, titled ‘Spectre Returns! Speculation Attacks using the Return Stack Buffer’ What is SpectreRSB? The SpectreRSB exploit relies on speculative execution, a feature found in several modern CPUs for optimizing computing performance. Due to the disparity between the potential speed of modern CPUs and memory, speculative execution occurs to keep efficiency at peak levels. However, to do so, the CPU is employed with running batch instructions. Once the instructions start, the CPU does not really check whether the memory accesses from the cache are accessing via a privileged memory. This exactly is the time for exploits to attack the system. As per the UCR researchers, SpectreRSB takes a slight detour from other similar attacks such as Meltdown. Rather than exploit the branch predictor units of CPUs or CPU cache components, SpectreRSB exploits the Return Stack Buffer (RSB). Researcher Nael Abu-Ghazaleh wrote, “To launch the attack, the attacker should poison the RSB (a different and arguably easier process than poisoning the branch predictor) and then cause a return instruction without a preceding call instruction in the victim (which is arguably more difficult than finding an indirect branch).” The paper says SpectreRSB also enables an attack against the Intel SGX (Software Guard Extensions) compartment. Here a malicious OS pollutes the RSB to cause a mis-speculation exposing data outside an SGX compartment. This attack bypasses all software and microcode patches on the SGX machine. How to Defend against SpectreRSB? Researchers stated that they reported SpectreRSB to companies that use RSBs to predict return addresses, which include Intel, AMD and ARM. Out of the three, AMD and ARM did not respond to a request for comment from Threatpost. However, in a reply to one of the statements in the Threatpost, an Intel spokesperson stated via an email, “SpectreRSB is related to branch target injection (CVE-2017-5715), and we expect that the exploits described in this paper are mitigated in the same manner.” He further stated that, “We have already published guidance for developers in the whitepaper, Speculative Execution Side Channel Mitigations. We are thankful for the ongoing work of the research community as we collectively work to help protect customers.” Following this, the UCR researchers stated that this newly found SpectreRSB cannot be prevented, using prior known defenses such as Google’s Retpoline fix, Intel’s microcode patches and so on. However, the researchers did mention the existence of a defense to mitigate against the SpectreRSB known as RSB stuffing. RSB stuffing currently exists on Intel’s Core i7 processors, starting from its Skylake lineup. With RSB stuffing, also known as  RSB refilling, every time there is a switch into the kernel, the RSB is intentionally filled with the address of a benign delay gadget to avoid the possibility of mis-speculation. Abu-Ghazaleh told Threatpost, “For some of the more dangerous attacks, the attack starts from the user code, but it's trying to get the OS to return to the poisoned address. Refilling overwrites the entries in the RSB whenever we switch to the kernel (for example, at the same points where the KPTI patch remaps the kernel addresses).  So, the user cannot get the kernel to return to its poisoned addresses in the RSB.” Read more about the SpectreRSB in its research paper. Social engineering attacks – things to watch out for while online Top 5 cybersecurity trends you should be aware of in 2018 Top 5 cybersecurity myths debunked  
Read more
  • 0
  • 0
  • 16468

article-image-google-cloud-next-fei-fei-li-reveals-new-ai-tools-for-developers
Richard Gall
25 Jul 2018
3 min read
Save for later

Google Cloud Next: Fei-Fei Li reveals new AI tools for developers

Richard Gall
25 Jul 2018
3 min read
AI was always going to be a central theme of this year's Google Cloud Next, and the company hasn't disappointed. In a blog post, Fei-Fei Li, Chief Scientist at Google AI, has revealed a number of new products that will make AI more accessible for developers. Expanding Cloud AutoML [caption id="attachment_21059" align="alignright" width="300"] Fei-Fei Li at Ai for Good in 2017 (via commons.wikimedia.org)[/caption] In her blog post, Li notes that there is a "significant gap" in the machine learning world. On the one hand data scientists build solutions from the ground up, while on the other, pre-trained solutions can deliver immediate results with little work from engineers. With Cloud AutoML Google has made a pitch to the middle ground: those that require more sophistication that pre-built models, but don't have the resources to build a system from scratch. Li provides detail on a number of new developments within the Cloud AutoML project, that are being launched as part of Google Cloud Next. This includes AutoML Vision, which "extends the Cloud Vision API to recognize entirely new categories of images." It also includes two completely new language-related machine learning tools: AutoML Natural Language and AutoML Translation. AutoML Natural Language will allow users to perform Natural Language Processing - this could, for example, help organizations manage content at scale. AutoML Translation meanwhile could be particularly useful for organizations looking to go global with content distribution and marketing. Improvements to Google machine learning APIs Li also revealed that Google are launching updates to a number of key updates to APIs: The Google Cloud Vision API "now recognizes handwriting, supports additional file types (PDF and TIFF) and product search, and can identify where an object is located within an image" according to Li. The Cloud Text-to-Speech and Cloud Speech-to-Text also have updates that build in greater sophistication in areas such as translation, for example. Bringing AI to customer service with Contact Center AI The final important announcement by Li centers on conversational UI using AI. Part of this was an update to Diagflow Enterprise Edition, a Google-owned tool that makes building conversational UI easier. Text to speech capabilities have been added to the tool alongside its speech to text capability, which came with its launch in November 2017. But the big reveal is Contact Center AI. This builds on Diagflow and is essentially a complete customer service AI solution. Contact Center AI bridges the gap between virtual assistant and human custom service representative, supporting the entire journey from customer query to resolution. It has the potential to be a game changer when it comes to customer support. Read next: Decoding the reasons behind Alphabet’s record high earnings in Q2 2018 Google Cloud Launches Blockchain Toolkit to help developers build apps easily Google’s Daydream VR SDK finally adds support for two controllers
Read more
  • 0
  • 0
  • 15287

article-image-google-daydream-vr-sdk-finally-adds-support-for-two-controllers
Natasha Mathur
25 Jul 2018
3 min read
Save for later

Google’s Daydream VR SDK finally adds support for two controllers

Natasha Mathur
25 Jul 2018
3 min read
Google is adding support for two controllers to its popular VR operating system Daydream, which until now, only supported a single controller. The reveal came to light as XDA developers noted mentions of multiple controller support in the latest Google Daydream VR SDK for Unity. Google partnered with Lenovo to launch the first standalone Mirage solo headset back in May. Now, with support for multiple controllers added in Google Daydream SDK will allow for far more applications with Google-powered headsets. As per the official release notes, the headset will be able to prompt the users about devices that support “one controller” and those supporting “two controllers”. The prefab is capable of automatically tracking the Daydream controller on devices supporting only one controller. To get automatic tracking of Daydream Controller on devices supporting two controllers, a second prefab instance should be added. One of these controllers on will play the role of a “dominant” controller and depending on your preferences, you can set either right hand or left-hand controller as the dominant. Support for multiple controllers does not necessarily mean that multiplayer gaming will be possible on the handset. It is just additional controllers added to the device. Having a controller in each hand that does different things can make your gameplay experience way more immersive. As for now, Google hasn’t provided any clear indication regarding how the two controllers will work in conjunction with each other. Whether it is going to use a standalone headset or a Bluetooth 5.0 compatible device to establish the connection between two controllers haven’t been specified. With the new support, Google’s Daydream will pose competition to popular VR headsets such as Oculus Rift, HTC Vive, etc which already come equipped with multiple controllers. There aren’t a lot of games supporting Daydream at the moment but the new update might pave the way for new games being run on these headsets in the future. It’ll be a while before we see anything in action. Although, the new addition will take these headsets a step ahead when it comes to bridging the gap between mobile games and console-level gaming on VR. For more information on the new update, check out the official Google VR SDK. Magic Leap’s first AR headset, powered by Nvidia Tegra X2, is coming this Summer Qualcomm announces a new chipset for standalone AR/VR headsets HTC Vive Focus 2.0 update promises long battery life, among other things for the VR headset
Read more
  • 0
  • 0
  • 12868

article-image-announcing-databricks-runtime-4-2
Pravin Dhandre
25 Jul 2018
2 min read
Save for later

Announcing Databricks Runtime 4.2!

Pravin Dhandre
25 Jul 2018
2 min read
Databricks announces Databricks Runtime 4.2 with numerous updates and added components on Spark internals, Databricks Delta and improvisions to its previous version. The databricks runtime 4.2 is powered with Apache Spark 2.3 and recommended for its quick adoption to enjoy the upcoming GA release of Databricks Delta. Databricks Runtime is a set of software artifacts which runs on the clusters of machines and improves the usability and performance of big data analytics. New Features of Databricks Runtime 4.2 Added Multi-cluster writing support, enabling users to use the transactional writing features from Databricks Delta. Streams getting recorded directly to the registered table on Databricks Delta. These streams are stored in the Hive metastore of Databricks Delta platform using df.writeStream.table(...). Added new streaming foreachBatch() for Scala. This helps to define a function for processing output of every micro batch using DataFrame operations. Added support for streaming foreach() for Python language which was earlier available only to Scala. Added from_avro/to_avro functions to support read/write Avro data within DataFrame. Improvements All commands and queries of Databricks Delta support referring to a table using its path as an identifier (that is, delta.`/path/to/table`). DESCRIBE HISTORY includes commit ID and is now ordered newest to oldest by default. Bug Fixes Partition-based filtering predicates operate correctly for special cases like when the predicates differ from the table. Fixed missing column AnalysisException for performing better equality checks on boolean columns in Databricks Delta tables i.e. booleanValue = true. Stopped modifying transaction log while using CREATE TABLE for creating a pointer to an existing table. This prevents unnecessary conflicts with concurrent streams and allows the creation of metastore pointer to tables where the user only has read access to the data. Stopped causing Out Of Memory in the driver while Calling display() on a stream with large amounts of data. Fixed truncation of long lineages which were earlier causing StackOverFlowError while updating the state of a Databricks Delta table. For more details, please read the release notes officially documented by Databricks. Databricks open sources MLflow, simplifying end-to-end Machine Learning Lifecycle Project Hydrogen: Making Apache Spark play nice with other distributed machine learning frameworks Apache Spark 2.3 now has native Kubernetes support!
Read more
  • 0
  • 0
  • 2728
article-image-numpy-1-15-0-release-is-out
Savia Lobo
24 Jul 2018
2 min read
Save for later

NumPy 1.15.0 release is out!

Savia Lobo
24 Jul 2018
2 min read
NumPy 1.15.0 is out and is said to include a lot of changes including several cleanups, deprecations of old functions. It also includes improvements to many existing functions. The Python versions supported by NumPy 1.15.0 are 2.7, 3.4 to 3.7. Some of the highlights in this release include NumPy has switched to pytest for testing as this version no longer contains the maintained nose framework. However, the old nose based interface is still available for downstream projects. A new numpy.printoptions context manager can now set print options temporarily for the scope of the with block:: with np.printoptions(precision=2): ... print(np.array([2.0]) / 3) [0.67] Improvements to the histogram functions. This version includes numpy.histogram_bin_edges, a function to get the edges of the bins used by a histogram without needing to calculate the histogram. Support for unicode field names in python 2.7. Improved support for PyPy. Fixes and improvements to numpy.einsum, which evaluates Einstein summation convention on the operands. New features in the NumPy 1.15.0 Added np.gcd and np.lcm ufuncs for integer and objects types Both np.gcd and np.lcm used for computing the greatest common divisor, and the lowest common multiple respectively. These work on all the numpy integer types, as well as the built in arbitrary-precision Decimal and long types. Support for cross-platform builds for iOS The build system in this version has been modified to add support for the _PYTHON_HOST_PLATFORM environment variable, used by distutils when compiling on one platform for another platform. This makes it possible to compile NumPy for iOS targets. Addition of return_indices keyword for np.intersect1d New keyword return_indices returns the indices of the two input arrays that correspond to the common elements. Build system This version has an added experimental support for the 64-bit RISC-V architecture. Future Changes expected in the further versions Both NumPy 1.16 and NumPy 1.17 will be dropping support for Python 3.4 and Python 2.7 respectively. Read more about this release in detail on its GitHub Page Implementing matrix operations using SciPy and NumPy NumPy: Commonly Used Functions Installing NumPy, SciPy, matplotlib, and IPython  
Read more
  • 0
  • 0
  • 19841

article-image-google-cloud-launches-blockchain-toolkit-to-help-developers-build-apps-easily
Natasha Mathur
24 Jul 2018
2 min read
Save for later

Google Cloud Launches Blockchain Toolkit to help developers build apps easily

Natasha Mathur
24 Jul 2018
2 min read
Google Cloud launched new Blockchain tools for developers on Monday, as a result of a collaboration with a DLT (distributed ledger technology) startup to help developers easily build apps. Google seems to take inspiration from AWS. Amazon’s cloud company partnered with Hyperledger Fabric earlier this year, introducing Blockchain templates which, allow developers to launch Ethereum apps without needing to write all the code required to create a smart contract. Digital Asset, a Blockchain platform services run by former JPMorgan executive Blythe Masters, will provide a software development kit to developers working on Google cloud. Along with this, Digital Asset Modeling Language (DAML), a platform-as-a-service (PaaS) program will also be made available to developers. The DAML PaaS program is now available through Google Cloud’s Orbitera Application Marketplace. According to Leonard Law, Head of Financial Services Platform at Google Cloud, “DLT has great potential to benefit customers not just in the financial services industry, but across many industries, and we’re excited to bring these developer tools to Google Cloud.” Blythe Masters, CEO of Digital Asset, also mentioned that the company is partnering with Google Cloud to provide a full stack solution to developers “so they can unleash the potential for web-paced innovation in Blockchain”. This, in turn, will help developers and organizations overcome some of the most common technical barriers to DLT application development today. With the arrival of the new Blockchain toolkit, developers will be able to easily manage the distributed systems for financial applications, games, etc. Oracle makes its Blockchain cloud service generally available Blockchain can solve tech’s trust issues – Imran Bashir  
Read more
  • 0
  • 2
  • 12985

article-image-tensorflow-1-10-rc0-released
Amey Varangaonkar
24 Jul 2018
2 min read
Save for later

Tensorflow 1.10 RC0 released

Amey Varangaonkar
24 Jul 2018
2 min read
Continuing the recent trend of rapid updates introducing significant fixes and new features, Google have released the first release candidate for Tensorflow 1.10. TensorFlow 1.10 RC0 brings some improvements in model training and evaluation, and also how Tensorflow runs in a local environment. This is Tensorflow’s fifth update release in just over a month, which includes two major version updates, the previous one being Tensorflow 1.9 What’s new in Tensorflow 1.10 RC0? The tf.contrib.distributions module will be deprecated in this version. This module is primarily used to work with statistical distributions Upgrade to NCCL  2.2 will be mandatory in order to perform GPU computing with this version of Tensorflow, for added performance and efficiency. Model training speed can now be optimized by improving the communication between the model and the Tensorflow resources. For this, the RunConfig function has been updated in this version. The Tensorflow development team also announced support for Bazel - a popular build and testing automation software - and deprecated support for cmake starting with Tensorflow 1.11. This version also incorporated some bug fixes and performance improvements to the tf.data, tf.estimator and other related modules. To get full details on the features list of this release candidate, you can check out Tensorflow’s official release page on Github. No news on Tensorflow 2.0 yet Many developers were expecting the next major release of Tensorflow, Tensorflow 2.0, to be released in late July or August. However, the announcement of this release candidate and the mention of the next version update (1.11) means they will have to wait for some more time before they get to know more about the next breakthrough release. Read more Why Twitter (finally!) migrated to Tensorflow Python, Tensorflow, Excel and more – Data professionals reveal their top tools Can a production ready Pytorch 1.0 give TensorFlow a tough time?
Read more
  • 0
  • 0
  • 25162
article-image-seaborn-v0-9-0-brings-better-data-visualization-with-new-relational-plots-theme-updates-and-more
Sugandha Lahoti
24 Jul 2018
3 min read
Save for later

Seaborn v0.9.0 brings better data visualization with new relational plots, theme updates, and more

Sugandha Lahoti
24 Jul 2018
3 min read
Seaborn, the popular data visualization library, has become a very timely and relevant tool for data professionals seeking to enhance their data visualizations. The team behind Seaborn realizes this and hence have pushed the release of Seaborn v0.9.0. This version is a major release with several substantial features and notable API name changes for better consistency with matplotlib 2.0. Three new relational plots Seaborn v0.9.0 features three new plotting functions relplot(), scatterplot(), and lineplot(). These functions bring the high-level API of categorical plotting functions to more general plots. They can visualize a relationship between two numeric variables and map up to three additional variables by modifying hue, size, and style semantics. replot() is a figure-level interface to the two plotting functions and combines them with a FacetGrid. The lineplot() function has support for statistical estimation and is replacing the older tsplot function. It is also better aligned with the API of the rest of the library and more flexible in showing relationships across additional variables. For a detailed explanation of these functions with examples of the various options, go through the API reference and the relational plot tutorial. Notable API name changes Seaborn has renamed a few functions and made changes to their default parameters. The factorplot function has been renamed to catplot(). The catplot() function shows the relationship between a numerical and (one or more) categorical variable using one of several visual representations. This change is expected to make catplot() easy to discover and to define its role better. The lvplot function has been renamed to boxenplot(). The new name makes the plot more discoverable by describing its format (it plots multiple boxes, also known as “boxen”). The size parameter to height is renamed in multi-plot grid objects (FacetGrid, PairGrid, and JointGrid) along with functions that use them (factorplot, lmplot(), pairplot(), and jointplot()). This is done to avoid conflicts with the size parameter that is used in scatterplot and lineplot functions and also makes the meaning of the parameter a bit clearer. The default diagonal plots in pairplot() are changed to now use func:kdeplot` when a "hue" dimension is used. Also, the statistical annotation component of JointGrid is deprecated. Themes and palettes updates Several changes have been made to the seaborn style themes, context scaling, and color palettes to make them more consistent with the style updates in matplotlib 2.0. Here are some of the changes: Some axes style()/plotting context() parameters have been reorganized and updated to take advantage of improvements in the matplotlib 2.0 update. The seaborn palettes (“deep”, “muted”, “colorblind”, etc.) are updated to correspond with the new 10-color matplotlib default. A few individual colors have also been tweaked for better consistency, aesthetics, and accessibility. The base font sizes in plotting context() and scaling factors for "talk" and "poster" contexts have been slightly increased. Calling set() will now call set color codes() to re-assign the single letter color codes by default. Apart from that, the introduction to the library in the documentation has been rewritten to provide more information and critical examples. These are just a select few major updates. For a full list of features, upgrades, and improvements, read the changelog. What is Seaborn and why should you use it for data visualization? Visualizing univariate distribution in Seaborn 8 ways to improve your data visualizations
Read more
  • 0
  • 0
  • 12413

article-image-gradle-4-9-released
Savia Lobo
24 Jul 2018
3 min read
Save for later

Gradle 4.9 released!

Savia Lobo
24 Jul 2018
3 min read
Team Gradle has released a new version of their tool and that’s Gradle 4.9. Gradle is a build tool for build automation with multi-language development. It offers excellent flexibility to the complete development lifecycle. As per the team, one of the quickest ways to update one’s build to use the new version is by updating the build wrapper properties as follows: ./gradlew wrapper --gradle-version=4.9 However, the standalone downloads are available at gradle.org/install What’s new in the Gradle 4.9 Command line arguments are now supported by JavaExec One can now pass command line arguments to JavaExec using --args. This means if one wants to launch their application using the command line arguments foo --bar, hardcoding it into the build script is not required. One just has to simply run gradle run --args 'foo --bar. An improved dependency insight report This version features an improved dependency insight report including build scans.  The report helps in easy diagnosis of dependency management problems, locally. Some improvements in this report include: All participants of conflict resolution are shown All custom reasons for a component selection are shown Modules rejected by a rule are displayed Modules which didn't match the version selector but were considered in the selection are shown This report also solves the readability resolution failures by restricting the report to one path with each dependency. Native ecosystem continues The Gradle Native project stays steady in order to improve and evolve the native ecosystem support for Gradle. Checkout builds are now fast and clean This version now stores more states in the Gradle user home instead of the project directory. This results in clean and faster checkout builds on CI as long as the user home is preserved. Java and Groovy compilers are now leak-proof file descriptors By default, the Java and Groovy compilers both leak file descriptors during the run in-process. This, in turn, can lead to "cannot delete file" exceptions on Windows and "too many open file descriptors" on Unix. In the Gradle 4.9, these leaks have been fixed. Users who had switched to forking mode because of this problem, can now safely switch back to in-process compilation. Experimental new task API Gradle 4.9 includes a new task API which allows builds to avoid the cost of creating and configuring tasks for the ones that will never be executed. By upgrading to this new API, one can experience slightly faster configuration times. The benefits will keep improving as more plugins adopt this API. Note that this API is in incubation and may change before Gradle 5.0. The promoted features are now stable This version includes some promoted features which were in incubation during the previous release. The promoted features which include a stable dependency insight report and the tooling API types and methods are now supported and stable. These two features are also subject to backward compatibility. Potential breaking changes in Gradle 4.9 EclipseProject tasks defined for gradle eclipse are allowed to run in Buildship. Two tasks from the EclipseProject, namely the EclipseClasspath and EclipseProject are now executed by the gradle. Use of Groovy GPath expression with the method, tasks.withType() would get a runtime exception. The easiest fix is to explicitly use the spread operator. As per my past research on Gradle and observing its past release trends, it looks like we can expect Gradle 5.0 in August or September. Read more about the other fixed issues and deprecations in the Gradle 4.9 release notes. Gradle with the Java Plugin Speeding up Gradle builds for Android Working with Gradle  
Read more
  • 0
  • 0
  • 2499
Modal Close icon
Modal Close icon