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
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds

Tech News - Application Development

279 Articles
article-image-introducing-rustpython-a-python-3-interpreter-written-in-rust
Prasad Ramesh
04 Feb 2019
2 min read
Save for later

Introducing RustPython, a Python 3 interpreter written in Rust

Prasad Ramesh
04 Feb 2019
2 min read
RustPython is an open-source Python 3 interpreter written in Rust with the whole Python 3 implementation completely done in Rust. This interpreter is currently in the early stages and the documentation is also being developed. You need wasm-pack and npm to install it. You can test it by using the following code: $ git clone https://github.com/RustPython/RustPython $ cd RustPython $ cargo run demo.py Hello, RustPython! The code style used is rustfmt. You can also test with cargo on the interactive shell.You can run only basic examples as currently there is only preliminary support for WebAssembly. Using a memory safe language like Rust instead of C or C++ has benefits as pointed out by a Hacker new user: “At least 1/3 of Python's CVEs could have been prevented by using a memory safe language like Rust.” Another user said: “This is wonderful. This could become the best way to move Python projects to Rust: initially just run on the RustPython interpreter, but then optimize low-level routines in Rust. In 15 years I wouldn't be surprised if this or something like it surpasses CPython in popularity.” For more details and installation instructions visit the GitHub repository. Rust 1.32 released with a print debugger and other changes EuroPython Society announces the ‘Guido van Rossum Core Developer Grant’ program to honor Python core developers Python governance vote results are here: The steering council model is the winner
Read more
  • 0
  • 0
  • 14417

article-image-gnu-c-library-version-2-30-releases-with-posix-proposed-functions-support-for-unicode-12-1-0-new-linux-functions-and-more
Vincy Davis
05 Aug 2019
3 min read
Save for later

GNU C Library version 2.30 releases with POSIX-proposed functions, support for Unicode 12.1.0, new Linux functions and more!

Vincy Davis
05 Aug 2019
3 min read
Last week, the GNU C Library version 2.30 was made available to all users. The major highlights of this release include new POSIX (Portable Operating System Interface)-proposed functions, support for Unicode 12.1.0, support to --preload argument to preload shared objects, addition of new functions such as getdents64, gettid, and tgkill to Linux and more. The GNU C Library is used in the GNU systems, GNU/Linux systems as well as on other systems that use Linux as the kernel. It is a portable and high performance C library. Major new features in GNU C Library version 2.30 New POSIX-proposed pthread_cond_clockwait, pthread_mutex_clocklock, pthread_rwlock_clockrdlock, pthread_rwlock_clockwrlock and sem_clockwait functions have been introduced in GNU C Library version 2.30. All the functions allow waiting against CLOCK_MONOTONIC and CLOCK_REALTIME.  The GNU C Library version 2.30 has an added support of Unicode 12.1.0. Character encoding, character type info, and transliteration tables have also been updated to Unicode 12.1.0. The dynamic linker will now accept the --preload argument to preload shared objects along with the LD_PRELOAD environment variable. The getdents64, gettid, and tgkill functions have been added on Linux. Memory allocation functions malloc, calloc, realloc, reallocarray, valloc, pvalloc, memalign, and posix_memalign will need object size smaller than PTRDIFF_MAX. This will help the memory allocation functions to avoid potential undefined behavior with pointer subtraction within the allocated object, which caused ptrdiff_t type overflow. Deprecated features influencing compatibility Functions like clock_gettime, clock_getres, clock_settime, clock_getcpuclockid, clock_nanosleep have been removed from the librt library for new applications. The outdated  XSI STREAMS header files <stropts.h> and <sys/stropts.h> and the RES_INSECURE1 and RES_INSECURE2 option flags for the DNS stub have been abolished. The support for “inet6” option in /etc/resolv.conf and the RES_USE_INET6 resolver flag have been eliminated. The Linux-specific <sys/sysctl.h> header and the sysctl function have been removed from the GNU C Library version 2.30 and also will not be present in the future versions of glibc. The getentropy function can be used for obtaining random bits. Bug Fixes in GNU C Library version 2.30 gettid() to have a wrapper in libc nftw() does not return dangling symlink's inode in libc mtrace hangs when MALLOC_TRACE is defined in malloc memusagestat is built using system C library in malloc libpthread IFUNC resolver for vfork can lead to crash in nptl These are select few updates. For more information, you may go through the libc sourceware page. Debian 10 codenamed ‘buster’ released, along with Debian GNU/Hurd 2019 as a port Google proposes a libc in LLVM, Rich Felker of musl libc thinks it’s a very bad idea GNU APL 1.8 releases with bug fixes, FFT, GTK, RE and more
Read more
  • 0
  • 0
  • 14315

article-image-electron-3-0-0-releases-with-experimental-textfield-and-button-apis
Natasha Mathur
19 Sep 2018
2 min read
Save for later

Electron 3.0.0 releases with experimental textfield, and button APIs

Natasha Mathur
19 Sep 2018
2 min read
The Electron team announced the first stable release Electron 3.0.0, yesterday. Electron 3.0.0 comes with upgrades, fixes, and other changes. Electron is a framework which helps create native cross-platform applications with web technologies such as JavaScript, HTML, and CSS. Let’s see what’s new in Electron 3.0.0. New Features and changes There are two new features added in Electron 3.0.0, namely, TextField and Button APIs. However, these APIs are currently experimental and have been therefore turned off by default. You can enable these APIs with the enable_view_api build flag. The fs.readSync feature now works with massive files.  There’s a new netLog API added for dynamic logging control. Breaking API changes With Electron 3.0.0, updates have been made to menu item order control. The did-get-response-details and did-get-redirect-request events have been removed. JSON is no longer used to send the result of ipcRenderer.sendSync. The api::Window has been renamed to api::BrowserWindow. The app-command media-play_pause has been renamed to media-play-pause. macOS A new workspace notifications support has been added. There’s also a mouse forward functionality now on macOS. Windows A DIP has been added to/from screen coordinate conversions. Bug Fixes The issue with fs.statSyncNoException throwing exceptions has been fixed. The occurrence of a crash when loading site with jquery has been fixed. Also, the crash in net::ClientSocketHandle destructor has been fixed. Now, with Electron 3.0.0, the focus change will be notified right away rather than on next tick. macOS The context menu click callback has been fixed. The tray.setContextMenu crash has been resolved. Also, tray title crash has been fixed. The mac protocol that used to get set to none after calling app.removeAsDefaultProtocolClient, is resolved. Linux BrowserWindow.focus() for offscreen windows has been fixed. For more information on Electron 3.0.0, check out the official release notes. How to build a cross-platform desktop application with Node.js and Electron How to build a desktop app using Electron Web Scraping with Electron
Read more
  • 0
  • 0
  • 14292

article-image-openmp-libc-and-libcabi-are-now-part-of-llvm-toolchain-package
Bhagyashree R
27 Sep 2018
2 min read
Save for later

OpenMP, libc++, and libc++abi, are now part of llvm-toolchain package

Bhagyashree R
27 Sep 2018
2 min read
On Tuesday, LLVM announced that starting from LLVM 7, the packages libc++, libc++abi, and OpenMP are integrated into llvm-toolchain. Integration of these libraries was a project proposed in the Google Summer of Code 2018. Warnings and usage of the libc++* and OpenMP packages libc++* packages The libc++ and libc++abi packages that are currently present in Debian and Ubuntu repositories will not be affected, but they will be removed in the later versions. Also, the newly integrated libcxx* packages are not co-installable with them. To keep the library usage same as before, symlinks are provided from the original locations. For example, from /usr/lib/x86_64-linux-gnu/libc++.so.1.0 to /usr/lib/llvm-7/lib/libc++.so.1.0. The usage of libc++ is as follows: $ clang++-7 -std=c++11 -stdlib=libc++ foo.cpp $ ldd ./a.out|grep libc++   libc++.so.1 => /usr/lib/x86_64-linux-gnu/libc++.so.1 (0x00007f62a1a90000)   libc++abi.so.1 => /usr/lib/x86_64-linux-gnu/libc++abi.so.1 (0x00007f62a1a59000) OpenMP packages Though OpenMP has been a part of Debian and Ubuntu archives, only one version was supported on the system. To address this, OpenMP is integrated with the llvm-toolchain. Similar to libc++, to keep the current usage same, the newly integrated package creates a symlink from /usr/lib/libomp.so.5 to /usr/lib/llvm-7/lib/libomp.so.5. It can be used with clang through -fopenmp flag: $ clang -fopenmp foo.c The dependency packages that provide the default libc++* and OpenMP package are also integrated into llvm-defaults. Using the following command you will able to install the current version of all these packages: $ apt-get install libc++-dev libc++abi-dev libomp-dev To get more clarity on the integration of libc++* and OpenMP in llvm-toolchain, check out their announcement on LLVM’s site. LLVM 7.0.0 released with improved optimization and new tools for monitoring Boost 1.68.0, a set of C++ source libraries, is released, debuting YAP! Will Rust Replace C++?
Read more
  • 0
  • 0
  • 14274

article-image-llvm-9-0-rc3-is-now-out-with-official-risc-v-support-updates-to-systemz-and-more
Bhagyashree R
04 Sep 2019
3 min read
Save for later

LLVM 9.0 RC3 is now out with official RISC-V support, updates to SystemZ and more

Bhagyashree R
04 Sep 2019
3 min read
Last week, the LLVM team announced the release of LLVM 9.0 RC3, which fixes all the known release blockers. LLVM 9.0 missed its planned release date, which was 28th August. However, with the third RC out, we can expect it to be released soon in the coming weeks along with subprojects like Clang 9.0. LLVM 9.0 will include features like RISC-V official support, gfx10 support for AMDGPU compiler backend, among others. Announcing the release, the team shared on the LLVM mailing list, “There are currently no open release blockers, which means if nothing new comes up, the final release could ship soon and this is what it would look like (except for more release notes, which are still very welcome).” What’s new coming in LLVM 9.0 Official support for RISC-V target In July this year, Alex Bradbury, CTO and Co-Founder of the lowRISC project proposed to make the “experimental” RISC-V LLVM backend “official” for LLVM 9.0. This essentially means that starting with this release, the RISC-V backend will be built by default for LLVM. Developers will be able to use it for standard LLVM/Clang builds out of the box. Explaining the reason behind this update, Bradbury wrote in the proposal, “As well as being more convenient for end users, this also makes it significantly easier for e.g. Rust/Julia/Swift and other languages using LLVM for code generation to do so using the system-provided LLVM libraries. This will make life easier for those working on RISC-V ports of Linux distros encountering issues with Rust dependencies.” Updates to the SystemZ target Starting from LLVM 9.0, the SystemZ target will support the ‘arch13’ architecture. It will include builtins for the new vector instructions, which can be enabled using the ‘-mzvector’ option. The compiler will also support and automatically generate alignment hints on vector load and store instructions. Updates to the AMDGPU target In LLVM 9.0, the function call support is enabled by default. Other updates include improved support for 96-bit loads and stores, gfx10 support, and DPP combiner pass enabled by default. Updates to LLDB LLVM 9.0 will be the last release that will include ‘lldb-mi’ as part of LLDB, however, it will still be available in a downstream GitHub repository. Other changes include color highlighted backtraces and support for DWARF4 (debug_types) and DWARF5 (debug_info) type units. To read the entire list of updates in LLVM 9.0, check out the official release notes. LLVMs Arm stack protection feature turns ineffective when the stack is re-allocated LLVM WebAssembly backend will soon become Emscripten’s default backend, V8 announces LLVM 8.0.0 releases!  
Read more
  • 0
  • 0
  • 14235

article-image-someone-made-a-program-to-make-it-look-like-your-typing-on-slack-when-someone-else-is
Richard Gall
01 May 2018
2 min read
Save for later

Someone made a program to make it look like you're typing on Slack when someone else is

Richard Gall
01 May 2018
2 min read
Slack: productivity and collaboration tool, or platform for procrastination, in-jokes and GIFs? We couldn't possibly say here at Packt. For most of us, the only thing worse than wasting time on Slack is looking like you're never on Slack at all. While you'd like to tell people it's because you're busy, you can see your colleagues eyeing you with suspicion, convinced that if you're not procrastinating in the same manner they are, you really can't be doing anything at all. Luckily, someone has invented a tool for dealing with exactly this problem.  Take a bow Will Leinweber (@leinweber) - you have made something to make us look busy. Or, at the very least thoughtful and ready to contribute to the channel chat at any moment. https://twitter.com/leinweber/status/989267343002951680 Will has put the project on GitHub. You can find it here. The only disappointment with the tool is that Will didn't include the additional feature that  "asks other people what their typing whenever they're typing." The results were pretty hilarious, and likely too distracting for anyone to do any work at all... https://twitter.com/leinweber/status/989285775165423616 Needless to say, there was a pretty strong reaction to Will's program. https://twitter.com/snail_5/status/989271471766757376 https://twitter.com/LittleMxSurly/status/989315676325085184 https://twitter.com/CodeTheWebBlog/status/990008655394189313 https://twitter.com/shandrew/status/989395097249693698 Truly, software is being used for incredible things in 2018. These are the projects we need if we're to survive a hostile and unforgiving future, forever typing into the abyss at each other, and doomed to search out reaction GIFs to every rude email and hostile expression someone sends your way. What other novelty software projects have you seen recently? Let us know in the comments, and we'll do some investigative work* *Have a look on Twitter. Read more Creating slash commands for Slack using Bottle
Read more
  • 0
  • 0
  • 14141
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-ubuntu-19-10-will-now-support-experimental-zfs-root-file-system-install-option
Vincy Davis
12 Aug 2019
4 min read
Save for later

Ubuntu 19.10 will now support experimental ZFS root file-system install option

Vincy Davis
12 Aug 2019
4 min read
Last week, Ubuntu announced that the upcoming Ubuntu version 19.10 will support ZFS as a root file system, and should be used as an ‘experimental’ installer. The ZFS support will enable an easy to use interface, provide automated operations and offer high flexibility to Ubuntu users. Initially, Ubuntu 19.10 will be supported on desktop only, however, the layout has been kept extensible for servers, later on. Ubuntu has also warned users not to use ZFS on production systems yet; users can use it for experimental purposes and provide feedback. Ubuntu develops a new user space daemon - ‘zsys’ In order to make the basic and advanced concepts of ZFS easily accessible and transparent to users, Ubuntu is developing a new user space daemon, called zsys, which is a ZFS system tool. It will allow multiple ZFS systems to run in parallel on the same machine, and have other advantages like automated snapshots, separating user data from system and persistent data to manage complex zfs dataset layouts. Ubuntu is designing the system in such a way that people with little knowledge of ZFS will also be able to use it flexibly. Zsys’s cooperation with GRUB and ZFS on Linux initramfs will yield advanced features which will be made official by Ubuntu, later on. Users can check out the current progress and what’s next with zsys on the Ubuntu projects Github page. Progress update of Ubuntu 19.10 ZFS has already been shipped on Linux version 0.8.1. It supports features like native encryption, trimming support, checkpoints, raw encrypted zfs transmissions, project accounting and quota and many performance enhancements. Some post-release upstream fixes has been backported, to provide a better user experience and increase reliability. A new support has been added in the GNU GRUB menu. All existing ZFS on root user can enjoy these benefits, as soon as version Ubuntu 19.10 is updated. The post states that “We still have a lot to tackle and 19.10 will be only the beginning of the journey. However, the path forward is exciting and we hope to be able to bring something fresh and unique to ZFS users.” Users are very happy with Ubuntu 19.10 supporting ZFS. https://twitter.com/jtteag/status/1159143800821952514 A user on Hacker News comments, “Having been a ZFS fan since the twilight of OpenSolaris, I'm very glad to see ZoL taking off. Rolling it into Ubuntu and making it officially supported was a great move - after some frustration with trying to run ZFS on a CentOS box and having it occasionally break after a kernel update, having it easily available on Ubuntu was like a breath of fresh air. Having it readily available as a root filesystem, and having TRIM support at long last, is great news.” While few users are not happy with Ubuntu 19.10 supporting ZFS due to its high maintenance. A Redditor says, “I'm a big fan of Ubuntu, use it on one of my own machines and recommend it to people. But almost every time they have decided to go it alone and make something a unique selling point it has backfired (Upstart, Mir, Unity, bzr, CouchDB, Ubuntu one). No other mainstream distro is going to adopt ZFS. Probably ubuntu will drop it in a few years when they realize they can't carry the maintenance burden. If you use ZFS for your file system then you won't be able to use standard recovery tools or access it from a dual boot. You won't be able to revert back to and older ubuntu version. You won't be able to install upstream kernels.” For more details, head over to the Ubuntu blog. Canonical, the company behind the Ubuntu Linux distribution, was hacked; Ubuntu source code unaffected Ubuntu has decided to drop i386 (32-bit) architecture from Ubuntu 19.10 onwards Xubuntu 19.04 releases with latest Xfce package releases, new wallpapers and more
Read more
  • 0
  • 0
  • 14138

article-image-redox-os-0-50-released-with-support-for-cairo-pixman-and-other-libraries-and-packages
Amrata Joshi
25 Mar 2019
3 min read
Save for later

Redox OS 0.50 released with support for Cairo, Pixman, and other libraries and packages

Amrata Joshi
25 Mar 2019
3 min read
Yesterday, the team at Redox released Redox OS 0.5.0, a Unix like operating system written in Rust. The team has added important programs and libraries to this release. What’s new in Redox OS 0.50? Cairo This release comes with Cairo, a 2D graphics library that supports multiple output devices. It produces consistent output on all output media and takes advantage of display hardware acceleration when available. It is implemented as a library which is written in the C programming language, while the bindings are available for various programming languages. relibc Redox OS 0.50 features relibc, a portable POSIX C standard library which is written in Rust and supports Redox and Linux. It reduces the issues with newlib and further creates a safer alternative to a C standard library. It has been designed to be used under redox, as an alternative to newlib. Event system The event system has been redesigned for providing support for select and poll. This release comes with new packages added to the Cookbook as well as for memory mapping support implemented in it. Standard images This release comes with new images based on new bootloaders for coreboot and EFI. The team has worked towards providing libraries for EFI Rust development and for developing coreboot payloads in Rust. LLVM This release also features the LLVM Project which is a collection of modular and reusable compiler and toolchain technologies. The LLVM Core libraries come with a target-independent optimizer and a code generation support for popular CPUs.          GLib This version of Redox OS comes with GLib which is the low-level core library that forms the basis for projects such as GTK+ and GNOME.                   Pixman Redox OS 0.50 comes with Pixman that is a low-level software library for pixel manipulation that features image compositing and trapezoid rasterization. Orbital widget toolkit This release comes with Orbital Widget Toolkit which is a multi-platform GUI toolkit for building user interfaces with Rust. This toolkit is based on the entity component system pattern which provides a functional-reactive API. It provides fast performance and ease over cross-platform development. Few users are happy and excited about this release and are appreciating the Redox team. A user commented on HackerNews, “Congrats on getting another release out the door! I was beginning to fear that momentum was stalling in lieu of PopOS. Keep up the great work!” The developer of Redox OS shared that there are still security concerns in the kernel with regards to memory management. He commented, “There are a couple known security issues in the kernel regarding memory management. One is that memory is granted in pages, so buffers passed to a scheme are over-mapped for the process handling it. You have to be root to handle a scheme, so it was not a high severity issue.” He further added that there are concerns with the grants which can be dropped by owning process and highlighted that more kernel work is needed. He commented, “Another is that grants can be dropped by the owning process while in use by another process. This can lead to the re-allocation of said grants in the owning process, making memory accessible to the other users of the grant. More kernel work is needed to prevent schemes from leaking data in this manner.” To know more about this news in detail, check out Redox’s official announcement. Fedora 31 will now come with Mono 5 to offer open-source .NET support LLVM 8.0.0 releases! JUnit 5.4 released with an aggregate artifact for reducing your Maven and Gradle files  
Read more
  • 0
  • 0
  • 14095

article-image-rails-6-releases-with-action-mailbox-parallel-testing-action-text-and-more
Vincy Davis
19 Aug 2019
4 min read
Save for later

Rails 6 releases with Action Mailbox, Parallel Testing, Action Text, and more!

Vincy Davis
19 Aug 2019
4 min read
After a long wait, the stable version of Rails 6 is finally available for users. Five days ago, David Hansonn, the Ruby on Rails creator, released the final version, which has many new major features such as Action Mailbox, Action Text, Parallel Testing, and Action Cable Testing. Rails 6 also has many minor changes, fixes, and upgrades in Railties, Action Pack, Action View, and more. This version also requires Ruby 2.5.0+ for running codes. Hansonn says, “While we took a little while longer with the final version than expected, the time was spent vetting that Rails 6 is solid.” He also informs that GitHub, Shopify, and Basecamp and other companies and applications have already been using the pre-release version of Rails 6 in their production. https://twitter.com/dhh/status/1162426045405921282 Read More: The first release candidate of Rails 6.0.0 is now out! Major new features in Rails 6 Action Mailbox This new framework can direct incoming emails to controller like mailboxes, such that user can use it for processing in Rails. Action Mailbox ships with access to Amazon SES, Mailgun, Mandrill, Postmark, and SendGrid. It is also possible to control inbound mails via the built-in Exim, Postfix, and Qmail ingresses. These inbound emails are transformed to InboundEmail records using Active Record. They can also be routed asynchronously using Active Job to one or several dedicated mailboxes. To know more about the basics of Action Mailbox, head over to action mailbox basics. Action Text Action Text includes the Trix editor that can handle formatting, links, quotes, lists, embedded images, and galleries. It also provides rich text content which is saved in the RichText model associated with the existing Active Record model in the chosen application. To get an overview on Action Mailbox, read the action text overview page. Parallel Testing Parallel Testing allows users to parallelize their test suite, thus reducing the time required to run the entire test suite. The forking process is the default method used to do parallel testing. To learn how to do parallel testing with processes, check out the parallel testing page. Action Cable Testing Action Cable testing tools allows users to test their Action Cable functionality at the connections, channels and broadcast levels. For information on connection test case and channel test case, head over to the testing action cable. Other changes in Rails 6 Railties Railties handles the bootstrapping process in a Rails application and also provides the Rails generators core. Multiple database support for rails db:migrate:status command has been added. A new guard has been introduced to protect against DNS rebinding attacks. Action Pack The Action Pack framework is used for handling and responding to web requests. It also provides mechanisms for routing, controllers, and more. Rails 6 allows the use of #rescue_from for handling parameter parsing errors. A new middleware ActionDispatch::HostAuthorization has been added to guard against DNS rebinding attacks. Developers are excited to use the new features introduced in Rails 6, especially the parallel testing feature. A user on Hacker News comments, “Wow, Multiple DB and Parallel Testing is super productive. I hope framework maintainers of other language community should also get inspired by these features.” Another comment reads, “The multiple database support is really exciting. Anything that makes it easier to push database reads to replicas is huge.” Another user says, “Congrats to the Rails team ! I can't praise Rails enough. Such a huge boost in productivity for prototyping or full production app. I use it for both work or side project. I can't imagine a world without it. Long live Rails!” Twitteratis are also praising the Rails 6 release. https://twitter.com/tenderlove/status/1162566272271339521 https://twitter.com/AviShastry/status/1162755780229107713 https://twitter.com/excid3/status/1162426797046284288 To know about the minor changes, fixes, and upgrades in Rails 6, check out the Ruby on Rails 6.0 Release Notes. Head over to the Ruby blog for more details about the release. GitLab considers moving to a single Rails codebase by combining the two existing repositories Rails 6 will be shipping source maps by default in production Ruby on Rails 6.0 Beta 1 brings new frameworks, multiple DBs, and parallel testing
Read more
  • 0
  • 0
  • 13941

article-image-introducing-abscissa-security-oriented-rust-application-framework-by-iqlusion
Bhagyashree R
19 Jul 2019
2 min read
Save for later

Introducing Abscissa, a security-oriented Rust application framework by iqlusion

Bhagyashree R
19 Jul 2019
2 min read
Earlier this month, iqlusion, an infrastructure provider for next-generation cryptocurrency technologies, announced the release of Abscissa 0.1, a security-oriented microframework for building Rust applications. Yesterday, the team announced the release of Abscissa 0.2. Tony Arcieri, the co-founder of iqlusion, wrote in a blog post, “After releasing v0.1, we’ve spent the past few weeks further polishing it up in tandem with this blog post, and just released a follow-up v0.2.” After developing a lot of Rust applications ranging from CLI to network services and managing a lot of the same copy/paste boilerplate, iqlusion decided to create the Abscissa framework. It aims to maximize functionality while minimizing the number of dependencies. What features does Abscissa come with? Command-line option parsing Abscissa comes with simple declarative option parser, which is based on the gumdrop crate. The option parser encompasses several improvements to provide better UX and tighter integration with the other parts of the framework, for example, overriding configuration settings using command-line options. Uses component architecture It uses a component architecture for extensibility, with a minimalist implementation and still is able to offer features like calculating dependency ordering and providing hooks into the application lifecycle. Configuration Allows simple parsing of Tom's Obvious, Minimal Language (TOML) configurations to serde-parsed configuration types that can be dynamically updated at runtime. Error handling Abscissa has a generic ‘Error’ type based on the ‘failure’ crate and a unified error-handling subsystem. Logging It uses the ‘log’ crate to provide application-level logging. Secrets management The optional ‘secrets’ module contains a ‘Secret’ type that derives serde’s Deserialize, which can be used for representing secret values parsed from configuration files or elsewhere. Terminal interactions It supports colored terminal output and is useful for Cargo-like status messages with easy-to-use macros. Read the official announcement for more details on Abscissa. You can also check out its GitHub repository. Introducing Ballista, a distributed compute platform based on Kubernetes and Rust Fastly CTO Tyler McMullen on Lucet and the future of WebAssembly and Rust [Interview] Rust 1.36.0 releases with a stabilized ‘Future’ trait, NLL for Rust 2015, and more
Read more
  • 0
  • 0
  • 13882
article-image-microsoft-launches-a-free-version-of-its-teams-app-to-take-slack-head-on
Natasha Mathur
13 Jul 2018
3 min read
Save for later

Microsoft launches a free version of its Teams app to take Slack head on

Natasha Mathur
13 Jul 2018
3 min read
Yesterday, Microsoft announced a free version of the Microsoft Teams app posing heavy competition to its rival chat service Slack. The new Teams app comes loaded with key features such as unlimited free chat messages, app integrations, 300 user base limit, etc.  Whereas, Slack’s free version limits users to 10,000 searchable messages, making the Teams app a strong contender to Slack. Until now, Teams was only offered to clients that paid for Office 365 and its subscription. But, there is no need to be an Office 365 subscriber anymore to experience the power of the Teams app as stated by Lori Wright, General Manager of Microsoft 365 Teamwork. Let’s have a look at the features that the free version of the Teams app offers. Key Features The free version of Teams app is globally available in 40 different languages. It offers unlimited chat messages, app integrations, and search. It provides 10 GB team file storage as well as additional 2 GB per user. It has a built-in online office which includes Word, Excel, PowerPoint, OneNote along with SharePoint and OneDrive. There are native audio and video calling options for one on one meetings, small groups as well as for the full team. With over 140 business apps working with Teams, Microsoft will offer two additional features to the free version of Teams app, later this year. This includes background blurring and Inline message Translation in 36 languages. Background Blurring will intelligently blur out your screen’s background. So if you are conducting a video call from your kitchen table, there is no need to worry about the dirty dishes and the mess in the background as it won’t be visible.  Inline Message Translation allows people to chat in their native language and then translate their messages into English. But, there are still some key features that are available only in the paid version of the Teams app. With the paid version, all the video chats conducted within Team can be stored in the cloud. These are searchable and comes with automatic captioning. It also offers Email hosting through Exchange or Outlook. Microsoft is also planning on including facial recognition for the viewers to easily search what was said and who said it. Other than that, there will be a public preview of "live events” feature i.e. video broadcasts that can be transcribed, archived, and time coded which will be available shortly. Microsoft doesn't consider the free version of the Teams App as a lightweight version of the paid offering, which is the case with Slack. As mentioned earlier, Microsoft includes innumerable features that offer increased storage space, messaging search features along with letting users make group video and voice calls. Whereas, Slack's free version only allows calls between two people at a time. But, Slack is also working on improving its own in-app search, with automated suggestions. The main question is, whether the users who are already happy using Slack would want to switch to the Teams app or not. We can only wait to find out. Microsoft launches Surface Go tablet at just $399 Microsoft Azure IoT Edge is open source and generally available! Microsoft introduces ‘Immutable Blob Storage’, a highly protected object storage for Azure  
Read more
  • 0
  • 0
  • 13818

article-image-visual-studio-code-july-2018-release-version-1-26-is-out
Savia Lobo
14 Aug 2018
3 min read
Save for later

Visual Studio code July 2018 release, version 1.26 is out!

Savia Lobo
14 Aug 2018
3 min read
The July 2018 release of Visual Studio code 1.26 version is now available. This version includes new features for navigation, how to apply a quick fix to any problem, managing extensions and much more. What’s new in the Visual Studio code 1.26? Breadcrumbs The Visual studio editor now has a navigation bar above its contents called Breadcrumbs. It displays the current location and allows quick navigation between symbols and files. Breadcrumb navigation allows one to jump to symbols and files in their workspace. Quick Fixes from Problems panel Now one can apply Quick code fixes from the Problems panel while reviewing warning and errors. When a problem entry is hovered or selected, the respective Quick Fixes are shown via a light bulb indicator. Quick Fixes can be applied either by clicking on the light bulb or by opening the context menu for the problem entry. User setup on Windows The user setup package for Windows, announced in the previous release, is now available. This setup does not require Administrator privileges while installation. It also provides a smoother background update experience. Current users of the system-wide Windows setup will be prompted to switch to the user setup. New users will be directed towards using it by default via Visual Studio code Download page. Terminal column selection Column selection is now supported within the Integrated Terminal via Alt+click. Add all missing imports with a single quick fix The Add missing import Quick Fix can now be applied to all missing imports in a JavaScript/TypeScript file. This Quick Fix requires only a single action to add all missing imports in a JavaScript/TypeScript file. JSX tag completion Now one can work with JSX tags in JavaScript/TypeScript similar to that in HTML. The JSX tags are now closed automatically when you type ‘>’ in a JavaScript or TypeScript file. Auto closing of tags can be disabled by setting "javascript.autoClosingTags": false and "typescript.autoClosingTags": false. Better JS/TS error reporting The TypeScript team has done a lot of work to make JavaScript and TypeScript error messages smarter and clearer. Some error messages now include links to relevant locations in the source code. Improved extension search This release has added an IntelliSense autocompletion to the extension searchfield making it easier. This will help in refining extension searches to filter results based on things like category and install state; or sort results by name, rating, or install count. Extension Pack management Extension Pack management has been improved in this release. An Extension Pack is installed, uninstalled, enabled or disabled always as a single pack. One can now uninstall or disable an extension belonging to an Extension Pack without requiring to uninstall or disable the entire Extension Pack. One can easily manage Extension Packs as a single unit or by individual extension. There is also a new Extension Pack tab which displays which extensions are bundled in the Extension Pack. Preview: Settings editor This version includes a preview of GUI for editing settings. To try it out, one can go to Preferences: Open Settings (Preview) command. It contains rich settings description display, "Table of Contents" tracks scrolling, and much more. Read more about these features in detail on the Visual Studio Code July 2018 version 1.26 release notes. Microsoft releases the Python Language Server in Visual Studio Debugging Xamarin Application on Visual Studio [Tutorial] Visual Studio 2019: New features you should expect to see
Read more
  • 0
  • 0
  • 13791

article-image-facebook-watch-is-now-available-world-wide-challenging-video-streaming-rivals-youtube-twitch-and-more
Bhagyashree R
30 Aug 2018
3 min read
Save for later

Facebook Watch is now available world-wide challenging video streaming rivals, YouTube, Twitch, and more

Bhagyashree R
30 Aug 2018
3 min read
Yesterday, Facebook made its video-streaming service named, Facebook Watch globally available. It was first launched in August 2017 for a limited group of people in the US. Facebook Watch's content is produced by its partners, who can earn 55% of advertising revenue while Facebook keeps 45%. How Facebook Watch is different from other streaming rivals like YouTube, Twitch and more? Facebook believes that Watch is unique as compared to its rivals, such as YouTube, Amazon’s Twitch, Netflix because it has an added advantage of how Watch helps viewers interact with each other. Fidji Simo, Facebook’s vice-president of video, told BBC: “It is built on the notion that watching video doesn’t have to be a passive experience. You can have a two-way conversation about the content with friends, other fans or even the creators themselves.” Facebook Watch comes with a feature called Watch Party that lets its users to coordinate themselves to watch a show together. Creators can boost engagement with the help of Interactivity Platform that allows them to run polls, challenges, and quizzes. How will it support its content creators? Facebook has laid out a plan to support their publishers and content creators in two main areas: Ad breaks to generate revenue from their videos Creator Studio to understand how their content is performing Ad breaks eligibility criteria and availability Ad breaks are launched across four markets and is only available to pages that publish videos in certain languages and countries right now. It will support more countries and languages by the end of the year and in 2019. Eligibility: Your videos should be 3-minute long Videos that have generated more than 30,000 1-minute views in total over the past two months Pages should have at least 10,000 Facebook followers Meet their Monetisation Eligibility standards Should be located in a country where ad breaks are available Availability: Currently, ad breaks are supported in the US, UK, Ireland, New Zealand and Australia. Over the next few months, availability will further expand to more countries and languages. Manage your video content with Creator Studio Creator Studio provide creators a central place for Pages to manage their entire content library and business. You can do the following: Manage content and interactions: Look through the insights, manage interactions across all owned Pages, respond to Facebook messages or comments on Facebook and Instagram. Streamline video publishing: Compose, schedule, and publish content across owned Pages and also do bulk uploads. Access ad breaks: Review monetisation insights and view payments. Along with this, you can access Rights Manager, use sound collection, and take advantage of new features and monetisation opportunities that they may be eligible for. To know more about the recent updates and your eligibility on Facebook Watch, check out their official announcement. A new conservative employee group within Facebook to protest Facebook’s “intolerant” liberal policies Facebook bans another quiz app and suspends 400 more due to concerns of data misuse Facebook is reportedly rating users on how trustworthy they are at flagging fake news
Read more
  • 0
  • 0
  • 13730
article-image-microsoft-announces-official-support-for-windows-10-to-build-64-bit-arm-apps
Prasad Ramesh
19 Nov 2018
2 min read
Save for later

Microsoft announces official support for Windows 10 to build 64-bit ARM apps

Prasad Ramesh
19 Nov 2018
2 min read
Last week Microsoft announced that developers using Visual Studio now have access to officially supported SDK and tools for creating 64-bit ARM (ARM64) apps. The Microsoft Store is now also accepting submissions for apps built for the ARM64 architecture. Lenovo and Samsung are coming up with new Windows 10 ARM devices featuring the Qualcomm Snapdragon 850 chip. An x86 emulation layer lets these devices run Windows applications. Developers can use Visual Studio 15.9 to recompile apps both on UWP and C++ Win32. These apps can run natively on ARM devices running Windows 10. Running natively allows the applications to take complete advantage of the processing power and capabilities of Windows 10. This results in the best possible experience for users. Instructions to enable Windows 10 64-bit ARM apps support You need to update your Visual Studio to version 15.9. Ensure that you have installed the individual component “Visual C++ compilers and libraries for ARM64” if you plan to build ARM64 C++ Win32 apps. ARM64 will be seen as an available build configuration after updating for new UWP projects. For existing projects and C++ Win32 projects, an ARM configuration needs to be added to the project. This can be done via the Configuration properties in Configuration Manager. Add a new Active solution platform and name it ARM64. Then copy the settings from ARM or x64 and check the box to Create new project platforms. Hitting build should ready the ARM binaries. You can use remote debugging to debug your app. This is fully supported on ARM64. You can alternatively create a package for sideloading or directly copy binaries to run the app. The Windows Store is now accepting ARM64 UWP apps, both on C++ and .NET Native. You can also use the Desktop Bridge to wrap ARM64 binaries into a package to submit to the Windows Store. You can also host dedicated ARM64 versions of Win32 apps on your own website or integrate ARM64 into existing multi-architecture installers. For more instructions, visit the Windows Blog. Another bug in Windows 10 October update that can cause data loss Microsoft announces .NET standard 2.1 Microsoft bring an open-source model of Component Firmware Update (CFU) for peripheral developers
Read more
  • 0
  • 0
  • 13699

article-image-uber-open-sources-peloton-a-unified-resource-scheduler
Natasha Mathur
27 Mar 2019
2 min read
Save for later

Uber open-sources Peloton, a unified Resource Scheduler

Natasha Mathur
27 Mar 2019
2 min read
Earlier this month, Uber open-sourced Pelton, a unified resource scheduler that manages resources across distinct workloads. Pelton, first introduced in November last year, is built on top of Mesos. “By allowing others in the cluster management community to leverage unified schedulers and workload co-location, Peloton will open the door for more efficient resource utilization and management across the community”, states the Uber team. Peloton is designed for web-scale companies such as Uber that consist of millions of containers and tens of thousands of nodes. Peloton comes with advanced resource management capabilities such as elastic resource sharing, hierarchical max-min fairness, resource overcommits, and workload preemption. Peloton uses Mesos to aggregate resources from different hosts and then further launch tasks as Docker containers. Peloton also makes use of hierarchical resource pools to manage elastic and cluster-wide resources more efficiently. Before Peloton was released, each workload at Uber comprised its own cluster which resulted in various inefficiencies. However, with Peloton, mixed workloads can be colocated in shared clusters for better resource utilization. Peloton feature highlights Elastic Resource Sharing: Peloton supports hierarchical resource pools that help elastically share resources among different teams. Resource Overcommit and Task Preemption: Peloton helps with improving cluster utilization by scheduling workloads that use slack resources. Optimized for Big Data Workloads:  Support has been provided for advanced Apache Spark features such as dynamic resource allocation. Optimized for Machine Learning: There is support provided for GPU and Gang scheduling for TensorFlow and Horovod. High Scalability: Users can scale to millions of containers and tens of thousands of nodes. “Open sourcing Peloton will enable greater industry collaboration and open up the software to feedback and contributions from industry engineers, independent developers, and academics across the world”, states the Uber team. Uber and Lyft drivers strike in Los Angeles Uber and GM Cruise are open sourcing their Automation Visualization Systems Uber releases Ludwig, an open source AI toolkit that simplifies training deep learning models for non-experts
Read more
  • 0
  • 0
  • 13651
Modal Close icon
Modal Close icon