TypeScript is an open-source programming language developed by Microsoft, which is a strict syntactical superset of JavaScript and brings optional static typing to the language.

While TypeScript 4.1 is a planned upgrade to the popular programming language, now available as a beta release; it features template literal types and a multitude of enhancements. With the template literal type having the same syntax as template literal strings in JavaScript, except as it is used in type positions.

TypeScript 4.1 beta allows developers re-map keys in mapped types with a new as clause, and the new clause lets developers leverage features like template literal types to create new property names.

What's New in TypeScript 4.1 beta?



TypeScript 4.1 beta comes with a number of features, including a recursive conditional types capability, with some restrictions that are eased on conditional types, now able to immediately reference themselves within branches, making it easier to write recursive type aliases.



Albeit, Microsoft recommends that recursive types should be used sparingly, and of course, responsibly. Other additions to TypeScript 4.1 beta, includes:

  • JSDoc tag @see now has better support in editors for JavaScript and TypeScript.
  • React 17 framework’s jsxscode factory functions are supported via two new options for the jsxcode compiler, react-jsx and react-jsxdev options.
  • The paths option can now be used without baseUrl, to avoid an issue in which poor paths are used by auto-imports.
  • In TypeScript 4.1 beta, checkJs now implies allowJs, which fixes the situation in which starting a checked JavaScript project required both allowJs and checkJs, which resulted friction.


Additionally, in the breaking change, members marked as abstract can't be marked as async and resolve parameters are no longer optional in Promise. And there is a new flag, --noUncheckedIndexedAccess, that provides a node where every property access or indexed access is considered potentially undefined.

The flag is capable of catching out-of-bounds errors, though it might be noisy for a lot of code. And it is not automatically enabled by the --strict flag.

How to Get Started with TypeScript 4.1 beta



If you want to give TypeScript 4.1 beta a spin, it can be accessed via NuGet or NPM, using the below command:

npm install typescript@beta


And the release candidate for TypeScript 4.1 is due in October, while TypeScript 4.0, which is the current major release, arrived in August.

Microsoft’s planned upgrade to TypeScript open-source language

ZeroLogon, a recently disclosed privilege escalation bug in Microsoft's Netlogon Remote Control Protocol for Domain Controllers (MS-NRPC), with a 10.0 out of 10 severity rating, also affects Linux systems.

The privilege escalation vulnerability is due to the insecure use of AES-CFB8 encryption for Netlogon sessions, which allows remote attackers to establish connection to the targeted domain controller over Netlogon Remote Protocol.

While Samba, an SMB networking protocol for Linux systems versions 4.8 (and above) are vulnerable if they have the "server schannel" parameter set to either "no" or "auto", which also, versions 4.7 and below are vulnerable if they've set up "server schannel = yes" in the smb.conf configuration file.

How ZeroLogon Vulnerability affects both Windows Server and Linux Systems



Zerologon is tracked as (CVE-2020-1472) and was discovered by Tom Tervoort of Secura, which privilege escalation vulnerability exists as a result of the insecure usage of AES-CFB8 encryption for Netlogon sessions, thus allowing remote attackers to establish a connection to the targeted domain controller over Netlogon Remote Protocol (MS-NRPC).

The flaw exploits an authentication protocol that validates the identity and authenticity of a domain-joined computer to the Domain Controller, which due to the incorrect use of an AES mode of operation, makes it possible to spoof the identity of the computer account and set empty password for that account in the domain.



Also, an implementation of SMB networking protocol for Linux systems called Samba is vulnerable to the Zerologon flaw. With Samba versions 4.8 and above vulnerable if the "server schannel" parameter is set to either "no" or "auto"; and versions 4.7 and below are vulnerable if set as "server schannel = yes" in the smb.conf configuration file.

The Samba system messaging block file server is used as a domain controller for Windows networks, and is also susceptible to the CVE-2020-1472 ZeroLogon vulnerability, which vulnerability has a CVSS score of 10.0, and was first disclosed to the public as Microsoft released a patch in August.

How to Mitigate against the ZeroLogon Vulnerability



Microsoft is tackling the flaw in two stages, with the first patches released in August, and second phase includes the tightening up of NRP security with enforcement mode set to on by default.

The vendors of Samba are advised to add the settings as follows: for versions 4.8 and above the "server schannel" parameter should be set to either "no" or "auto"; while versions 4.7 and below set as "server schannel = yes" in the smb.conf configuration file. And users are recommended to update their software to the latest software from Microsoft as soon as possible.

ZeroLogon Vulnerability affecting SMB networking protocol for Linux systems

Artificial Intelligence (AI) has become part of our daily life. All around us, the works of AI are evidence, from photo sensors in automatic lights, to automated parking systems, and even personal assistants like Siri and Amazon's Alexa.

Similarly, there’s been a notable impact of AI to the education sector. Education is becoming more personalized and convenient with the introduction of AI in this field. The introduction of AI has brought tremendous changes, including the use of innovative aids via computers, smartphones, and tablets for learning.

Such innovations make it possible for students to study from anywhere as long as they have internet connectivity, unlike the traditional classroom setup. Also, it has led to the automating of administrative tasks, allowing eductaional institutions to save on time. Find out more about this topic on 123 Homework.

5 Ways Artificial Intelligence (AI) is Changing the Education Sector



Below are 5 Ways Artificial Intelligence (AI) transformed the education industry.

1. Simplifying Administrative Tasks



Some of the administrative functions in academic institutions often eat up the teacher’s time using conventional methods. However, with the introduction of Artificial Intelligence, duties like assessing homework, grading papers, and giving students valuable feedback, don’t have to take long.

The automation of activities like grading exams and analyzing a student’s performance helps save time, making it possible to engage in other valuable learning activities. That’s not enough. Software developers have numerous developments to make the learning process and administrative processes as smooth and effective.

2. Smart Content



The issue of having smart content is a subject of hot discussion today. The use of this technology has found its way into the classroom setting. Video lectures and video conferencing are some of the examples of smart content.

Similarly, AI redefines the use of textbooks by using complex algorithms to restructure and create custom textbooks and aids for different subjects. The use of AI has led to the rise of digitized textbooks with appealing interfaces convenient for students in different grades.

3. Personalized Learning



With the introduction of AI in the education sector, technology can offer personalized recommendations for every pupil depending on their understanding and grade level. The technology also creates custom in-class assignments for the students and the final exams making it fair for students to get the assistance they need to make the best out of learning.



According to research, instant feedback is a critical element that ensures successful tutoring. By the use of AI-powered applications, students can receive custom responses from teachers. Another advantage of AI is that teachers can create flashcards and study guides for their lessons.

4. Global Learning



AI helps in eliminating physical boundaries because there is no limit to the education process. Technology allows a student to gain access to information no matter their geographical location.

And AI-powered education equips a student with fundamental IT skills. There are more courses available on the internet, thanks to Artificial Intelligence.

5. New Level of Efficiency



There are several ways AI is helpful in the school setup. For instance, a school can develop a way to prevent students from losing their way in crowded places by using AI.

Also, an institution can use AI to model complex data for enabling departmental operations and creating data-driven forecasts. As a result, this will allow for good planning in the future for the institution.

Conclusion



The impact AI has on technology is growing, and it will likely impact the whole learning process very soon. It’s only a short while before AI completely revolutionizes the entire education sector.

5 Ways Artificial Intelligence (AI) is Changing the Education Sector

Microsoft touted its new Edge feature called Sleeping Tabs, detailing how the feature works by showcasing the RAM and CPU usage test results with and without the feature enabled.

The 'Sleeping Tabs' feature also helps to extend device battery life and thereby reducing its power consumption with the background tabs set to idle state. With early internal testing of sleeping tabs on devices showing a median memory usage reduction of about 26% for Edge browser. Microsoft's internal testing has also shown that a normal background tab uses 29% more CPU for Microsoft Edge than a sleeping tab.

Albeit, the individual device performance varies depending on the different configuration and usage, even as the decrease in resource and battery usage is expected to create a better browsing experience for users as well.

How the Sleeping Tabs leads to Reduction in CPU and RAM consumption



The Sleeping tabs feature builds upon the core of Chromium’s “freezing” technology which pauses a tab’s script timers to minimize resource usage.



While the tab resumes automatically once clicked, which is different from discarded tabs, that require the page to fully be reloaded to be live again. The feature simply allows inactive tabs in the background to “go to sleep,” thereby releasing system resources, which resources include the RAM and CPU necessary for other applications running on the device.

And the tabs are set to go to sleep after two hours of inactivity by default, which you can also choose a different time interval from edge://settings/system when the tabs will go to sleep. These tabs that are asleep fades to show that they’ve released some resources.

How to manually set timeout for Sleeping Tabs in Microsoft Edge



The Sleeping Tabs feature is now available on Edge Canary and Dev Channels (87.0.649.0), so you'll need to update your browser to take advantage of the new tabs functionality.

Once you've updated to the Edge Canary and Dev bulids, you’ll have to visit edge://flags/ and enable the three flags present, after which, you’ll find the Sleeping Tabs option on edge://settings/system, where you'll be able to tweak the tab timer and manually add sites that you don’t want to go to sleep while inactive.

Chromium Edge achieves RAM Usage reduction of 26% via Sleeping Tabs

Firefox for Android has a bug that paves way for attackers over Wi-Fi to launch sites on a victim’s device, without any interaction from the user.

While the attack takes the form of a browser window on the target device launching without the users’ permission, it can also be used for other malicious activities, such as auto-playing video that were not initiated by the owner of the mobile device.

Originally discovered by security researcher Chris Moberly, the vulnerability resides in the Simple Service Discovery Protocol (SSDP) engine of Firefox for Android browser which can be exploited by hackers to target smartphones connected on the same Wi-Fi network as the attacker, with the Firefox browser app installed.

How Attackers can Hijack Firefox for Android via Wi-Fi Network



SSDP is a UDP based protocol which is a part of UPnP, used for finding other devices on a network. And Firefox browser on Android periodically sends out SSDP discovery messages to devices connected to the same network, seeking for second-screen devices to cast.



Devices on the local network can respond to the broadcasts, and provide location information, after which, Firefox attempts to access the location to find an XML file conforming to the UPnP specifications. Now, the SSDP engine of a victim's Firefox browser can be tricked into triggering an Android intent by simply replacing the location of the XML file in the response packet with a maliciously crafted message pointing to an Android intent URI.

Thus, any attacker connected to the same Wi-Fi network can run a malicious SSDP server on device and trigger intent-based commands on nearby Android devices via Firefox browser, without requiring any form of interaction from the victims.

How to Mitigate against the Firefox for Android bug



Mozilla has issued a patch for the Firefox for Android bug, with the release of Firefox for Android 79, and the direct successor to version 68.11.0. Therefore, it is recommended that all Firefox for Android users should update their browser to the latest browser version 79, or even better, version 80, immediately.

And you can verify if your Firefox for Android browser is up-to-date by navigating to “Settings -> About Firefox” and looking for the version number.

Firefox for Android bug that allow attackers hijack the browser via Wi‑Fi

Ubuntu Touch is the mobile operating system from UBports, which touts of respecting privacy and freedom of users, with Ubuntu Touch OTA-13 as the latest stable update to the mobile operating system.

While the previous release Ubuntu Touch OTA-12, brought a lot of new features and changes for many supported mobile devices, the latest Ubuntu Touch OTA-13 extends the support for more mobile devices with UI Improvements.

Ubuntu Touch OTA-13 update brought support for six additional mobile devices which includes: Sony Xperia X, Xperia X Compact, Xperia X Performance, Xperia XZ, OnePlus 3, and 3T.

What’s New in Ubuntu Touch OTA-13 Release?



Besides the UI improvements and additional devices supported, OTA-13 also brings the QtWebEngine, which has undergone a huge upgrade from the previous version 5.11 to the new version 5.14, with QTWebEngine 5.14 including a new version of Chromium in addition to the built-in Morph Browser.



There is also a speed boost of about 25% faster browsing experience on all Ubuntu Touch supported devices, and users can now select only the text they want from web pages using the touch handles, and also open downloaded text, PDF, MP3, and picture files directly on the browser.



Additionally, Ubuntu Touch OTA-13 also brought back the old icon-based System Settings main menu, which means that if the window is too small for a list-based layout, it'll automatically switch to an icon-based layout.

How to Upgrade to Ubuntu Touch OTA-13



Ubuntu Touch mobile OS can be installed on the supported devices using the UBports Installer and OTA through the official “Stable” update channel available in System Settings > Updates > Update Settings > Channels.

And if you want to install the OTA-13 update now, you should turn on ADB access and run the following command over adb shell:

sudo system-image-cli -v -p 0 --progress dots


However, if you already have the previous version of Ubuntu Touch installed, you can get the latest OTA-13 via the normal Updates in System Settings, but you'll have to wait until its officially available over the coming week.

Ubuntu Touch OTA-13 brings support for more mobile devices with UI Improvements

Swift was originally Apple’s proprietary language, before the company open-sourced it back in 2015, and now, Swift has finally arrived on Windows platform.

While Apple kept to the promise of making its hugely popular programming language, Swift open source, allowing anyone to modify and share the changes as they deem wise. Now, developers don't need to rely on the unofficial port for Windows, as the Swift team has released new toolchain images that can be downloaded for Windows 10 operating system.

Swift Programming language has been in development by Apple for many years, and it fully supports modern programming conventions, such as closures, generics, type inference, multiple return types and namespaces.

What the Porting of Swift to Windows means to developers



The porting of Swift to Windows is rather to ensure that the full ecosystem, including the compiler, the standard library, and the core libraries (dispatch, XCTest, and Foundation) are available on the Windows platform.



And these libraries are part of what developers need to code their applications with ease, without having to worry about the details of the underlying system. Albeit, there are many technicalities in the bringing of Swift to Windows, but the interoperability of Swift with C, makes it possible to develop apps purely in Swift while taking advantage of the extensive libraries on the Windows platform.

However, the bringing of Swift to Windows is just the beginning of the journey, as the current support is only in making the language usable; there is an even broader part of the ecosystem like lldb and the Swift Package Manager which still requires more work to be completely compatible with the Windows platform.

How to Get Started with Swift on Windows



If you are a developer and interested in helping push Swift on Windows forward, there is the Getting Started section that has been updated with new information about using Swift on Windows for the early adopters.

And for those who are interested in core tooling, there are ongoing works to improve the debugger and to improve Windows support in the Swift Package Manager. You can check out the Swift Bug Tracker for current issues and how to send patches to the GitHub repositories. Also, there is a new section on the Swift forums to discuss development of Swift on Windows.

Finally, Developers can now run Swift code On Windows

Linux Lite is one of the most popular lightweight Linux distribution, with the newly released Linux Lite 5.2 RC1 bringing several new changes such as Firewall management which is now accessible from Settings Manager, and other enhancements.

The new Linux Lite 5.2 RC1 is built on the upstream Ubuntu 20.04.1 running the latest Linux kernel 5.4.0-48, and as Linux Lite has added new entry to the boot menu list for OEMs, with the new v5.2 now focussing on the Grub menu image.

And this release gives a glimpse into the Final release, Linux Lite 5.2, with specific instructions from the new in-built Help Manual for all of the new features.

What's New in Linux Lite 5.2 RC1?



Linux Lite 5.2 RC1 introduces a number of changes including the management of Firewall and Lite Widget, making it accessible directly from Settings Manager for ease of use.



And given that it runs on the latest Linux kernel 5.4.0-48, it brings support for modern hardware, with several new software such as GIMP 2.10.18, Firefox 80.0.1, Thunderbird 68.10.0, LibreOffice 6.4.5.2, and VLC 3.0.9.2. Also, Linux Lite 5.2 RC1 has discontinued support for Adobe Flash with the removal of the software.

Additional software supported in Linux Lite 5.2 RC1 includes Zoom, SimpleScreenRecorder, and Microsoft Teams, which have been added to Lite Software.

How to Download Linux Lite 5.2 RC1 for testing



Linux Lite 5.2 RC1 is currently available for download as ISO Image and Torrent, and as a "Release Candidate" release, it is recommended for testing purposes only, therefore, you should not install it on your main system.

And before installing it, make sure your PC meets the minimum system requirements for Linux Lite, as follows: 1GHz processor, 768MB RAM and 8GB HDD/SD.

Linux Lite 5.2 First Release Candidate (RC1) is now available for testing

It's no longer news that Android 11 has finally been released, and there are several security and privacy features that you should know about this Google's latest mobile operating system.

Android 11, the latest mobile operating system offers users more control over their data with improved security and privacy features, even as Android security has always been a hotly debated topic, with Google's futile effort to prevent malicious apps from getting distributed via the Play Store.

Here, we've listed the top 7 Security and Privacy Features in Android 11 that You Need to Know, haven summarized some of the most critical security and privacy updates offered by Android 11.

7 Top Security and Privacy Features in Android 11



Google has done a pretty remarkable job of keeping Android on top of the security issues, which is perhaps the biggest feat in this latest release, by taking significant steps to improve the security and privacy of users on the mobile operating system.


Below are the 7 Top Security and Privacy Features in Android 11.

  1. Unused app permissions Revoking: The app permissions system in Android 11 has undergone some major improvements, one of which is that when you've granted permissions to apps, and you don't happen to use the app for a certain period of time, like say a few months, the permissions will automatically be revoked and you only have to re-enable manually if still needed.
  2. One-time app permissions: Also, there is now a temporary app permission, which means that users can now grant certain app permissions on an "Only This Time" basis, or a case-by-case basis.
  3. App permissions Blocked: Android 11 offers a new security feature that will block any app from requesting permissions when a user denies the app permissions twice. After the denial of permission twice, the app can only get the permissions if the user decides to give it manually for the app to function properly.
  4. Scoped Storage: Scoped Storage adds a new set of rules regarding how apps are allowed to access storage, and it creates isolated sandboxes for apps, so that it can no longer require additional permissions to write files.
  5. Availability of critical OS security patches via Play store: Google has increased the Play Store app's integration, allowing it to download and install OS security patches as modules, just like apps are updated directly from Google's servers.
  6. Restrictions on Unnecessary Background Location Access: If an app requests access to your location, Android 11 will ensure that it first grants only the foreground location, and when it requires access to the location again from the background, the app has to make a new separate permission request.
  7. Improved GPS privacy: Google has introduced GnssAntennaInfo class with Android 11 to help in securing GPS tracking and associated privacy risks.


Additionally, there is now improvements to the BiometricPrompt API, including Call Screening and secure audio capture from USB device.

7 Top Security and Privacy Features in Android 11 that You Need to Know

EndeavourOS has announced a new ISO release for its regular desktop distro, EndeavourOS 2020.09.19 with updated Linux kernel 5.8.10-arch1-1, improved installation process, and i3-WM window manager.

While the much-expected EndeavourOS ARM is a new Arch Linux-based operating system for ARM processors, that comes with eight desktop environments including GNOME, Xfce, LXqt, MATE, Cinnamon, Budgie, KDE Plasma, and i3-WM.

The EndeavourOS ARM version is currently being tested on ARM-based Single Board Computers (SBCs) like Odroid N2, Raspberry Pi 4b, N2+, and XU4, and it's also installable on any platform supported by upstream Arch Linux ARM.

What's the system requirements for EndeavourOS ARM?



EndeavourOS ARM is for ARM-based SBCs such as Odroid N2, Odroid N2+, Raspberry Pi 4b, and XU4. Albeit, EndeavourOS ARM can run on any ARM device but the ARM devices have to meet certain specifications for smooth performance.



Before installing EndeavourOS ARM, you should make sure that your device meets the following hardware specifications:

  • Quad CPU with 1.5GHz+
  • Archlinux ARM supported device
  • 2 USB 3.0 ports (external drives) and additional USB 2.0 ports for peripherals
  • Minimum of 2GB of RAM


  • Additionally, you'll need a 1Gbit Ethernet connector, with two stages of installation to complete: firstly, installing Archlinux ARM base, and secondly, for running a script that guides you through the installation process to install EndeavourOS as a headless server or as a Desktop machine.

    How to Get Started with EndeavourOS ARM version



    For the first step, there is an automated script for tested devices and for the untested devices, you can refer to the manual instructions from Archlinux ARM to the install image for Arch, or in the case of the Pinebook Pro, that provided by Pine64.

    The full manual installation guides for EndeavourOS ARM on supported devices can be found here, and it also includes a special guide for Pinebook Pro, PINE64, and Rock64 hardware.

EndeavourOS 2020.09.19 Release arrives alongside new ARM version