8 invisible open-source codebases you depend on every day


A wealth of open-source projects exists, just below the visible surface of the apps you use from day to day. They may not be high profile or widely appreciated, but they enable everything from networking and statistical analysis to the next generation of AI agents.

Discover more about these vital codebases that are more accessible than you’d expect.

NumPy

Hardcore math processing

Python excels in the fields of data analysis, visualization, and machine learning. The highly popular library, NumPy, is at the heart of all three, and any code that relates to scientific computing.

As its name suggests, the library is aimed at numerical tasks in Python. Fundamentally, this includes support for large, multidimensional arrays (matrices) and associated functions.

NumPy acts as the core for several other libraries, including Pandas, AstroPy, and Shapely. It has also been used as the basis for GPU-accelerated computing on the NVIDIA CUDA platform.

OpenCV

For collaborative visionaries

This library contains over 2,500 algorithms, available under the Apache license, to help facilitate real-time computer vision. It’s also a solid example of a codebase that uses our previous entry, NumPy.

CvComposer, a graphical tool to experiment with OpenCV functions. Credit: OpenCV

OpenCV is used by Google, Microsoft, and Sony. Even NASA, the American space agency, uses this open-source code, which is quite an endorsement. However, it’s the use of OpenCV on every smartphone that really means it warrants a place on this list.

Computer vision often goes hand-in-hand with machine learning applications, so the boom in Artificial Intelligence has seen renewed interest, to the extent that OpenCV.ai has been launched to capitalise and deliver large-scale solutions. You can expect to hear more about this codebase in the coming years.

WinUI

A Microsoft take on open source

Microsoft hasn’t always had the most cordial relationship with open source; its founder, Bill Gates, famously considered the paradigm a threat to Microsoft’s business. It could be argued that the company’s entire business model, based on a strategy of “embrace, extend, extinguish,” was antithetical to the open-source movement.

But that all changed in the 2000s, when Microsoft began to release some of its work under open-source licenses and started to contribute to open-source projects run by others. This effort increased substantially with Sadya Nadella’s appointment as CEO, and one of the most visible results—although you’d be forgiven for letting it pass you by—is WinUI.

WinUI is central to Universal Windows Platform apps that run across different versions of Windows, on devices from PCs to tablets and Xbox. Like most open-source projects, WinUI’s code is shared on GitHub, the platform that Microsoft acquired under Nadella.

gRPC

Enabling diverse systems to communicate efficiently

gRPC (gRPC Remote Procedure Calls) is an open-source framework that enables fast communication of binary data over a network. Originally developed by Google in 2016, it’s available for all under an Apache License.

A diagram showing the relationship between channels, streams, and messages: each channel may have many RPCs (streams) while each RPC may have many messages. Credit: gRPC

gRPC is a high-performance alternative to REST, the current industry standard for web services. While gRPC is more complex, it is also more efficient and has provisions for schemas to enforce valid data.

Many companies have adopted gRPC, so you’re almost certainly using it all the time without knowing it. Uber, Netflix, Spotify, and Dropbox all make use of the technology.

XNU

Not quite Linux, not BSD, but a vital part of macOS

If you’re an Apple user, you’ve also used XNU, whether you run iOS, macOS, or even watchOS. It’s the kernel, famously based on software acquired from NeXT, that, in conjunction with code from the FreeBSD project, went on to power OSX and revitalize Apple’s fortunes.

XNU’s architecture offers a compromise between a monolithic kernel and a microkernel, making it flexible and fast.

If you’re committed, you can download and compile the kernel from GitHub. It’s available as a project under Apple’s OSS Distribution account, which also hosts open-source parts of macOS, iOS, and WebKit.

FreeType

Transforming text everywhere

ftinspect, a demo program for FreeType, showing details of the letter A in a specific font. Credit: FreeType

Much of what we do on computers involves text, and that text would be nothing without fonts; at least, it would be pretty uninspiring. Freetype gives developers a helping hand with any font-related tasks they may encounter.

For some time, this library was forced to play second fiddle to Apple’s admittedly superior font technology, mainly because Apple Inc. owned patents it infringed upon. But, since 2019, the code can once again make use of its font hinting and color filtering tech, and it’s now very widely used—ironically, even by Apple. They’re in good company, though: FreeType is also used by Linux, Android, Roku, and Chromium, among others.

FreeType essentially acts as a layer between font files (in various formats, like TTF, OTF, and WOFF) and applications that need to use them. It implements features like rasterization, anti-aliasing, and kerning. The code is also popular with video game developers, and platforms like Sony’s PlayStation line ship with Freetype.

SDL2

The library behind many of your favorite games

A cross-platform library, with a focus on multimedia applications and video games, SDL (Simple DirectMedia Layer) is written in C and provides bindings for other languages.

While SDL isn’t a game engine itself, it’s used by engines like Valve’s Source to produce games such as Half-Life, Portal, and The Stanley Parable. It’s also used in multimedia applications and to write emulators.

The latest versions of SDL are licensed under the less common zlib license, which allows for static linking in proprietary code. This has, in theory, simplified the distribution of closed-source games, which are an important part of SDL’s target market.

Norigin Spatial Navigation

Take remote control

If you’ve ever wondered about the tech that powers your Smart TV’s interface, wonder no more; at least, when it comes to one specific aspect. Navigating a UI with a mouse, keyboard, or touchscreen can be tricky, but with a basic remote control—which may differ wildly from model to model—it’s complicated further. Thankfully, the awkwardly-named Norigin Spatial Navigation package is here to help.

A demo showing how the Norigin Spatial Navigation library enables navigation between different components arranged at various locations on a screen. Credit: Norigin Media

Norigin Spatial Navigation has ambitions beyond TVs and set-top boxes. The library can work on any web-based platform, in addition to React Native apps on Android TV and Apple TV.



Source link

Leave a Reply

Subscribe to Our Newsletter

Get our latest articles delivered straight to your inbox. No spam, we promise.

Recent Reviews


Google Maps has a long list of hidden (and sometimes, just underrated) features that help you navigate seamlessly. But I was not a big fan of using Google Maps for walking: that is, until I started using the right set of features that helped me navigate better.

Add layers to your map

See more information on the screen

Layers are an incredibly useful yet underrated feature that can be utilized for all modes of transport. These help add more details to your map beyond the default view, so you can plan your journey better.

To use layers, open your Google Maps app (Android, iPhone). Tap the layer icon on the upper right side (under your profile picture and nearby attractions options). You can switch your map type from default to satellite or terrain, and overlay your map with details, such as traffic, transit, biking, street view (perfect for walking), and 3D (Android)/raised buildings (iPhone) (for buildings). To turn off map details, go back to Layers and tap again on the details you want to disable.

In particular, adding a street view and 3D/raised buildings layer can help you gauge the terrain and get more information about the landscape, so you can avoid tricky paths and discover shortcuts.

Set up Live View

Just hold up your phone

A feature that can help you set out on walks with good navigation is Google Maps’ Live View. This lets you use augmented reality (AR) technology to see real-time navigation: beyond the directions you see on your map, you are able to see directions in your live view through your camera, overlaying instructions with your real view. This feature is very useful for travel and new areas, since it gives you navigational insights for walking that go beyond a 2D map.

To use Live View, search for a location on Google Maps, then tap “Directions.” Once the route appears, tap “Walk,” then tap “Live View” in the navigation options. You will be prompted to point your camera at things like buildings, stores, and signs around you, so Google Maps can analyze your surroundings and give you accurate directions.

Download maps offline

Google Maps without an internet connection

Whether you’re on a hiking trip in a low-connectivity area or want offline maps for your favorite walking destinations, having specific map routes downloaded can be a great help. Google Maps lets you download maps to your device while you’re connected to Wi-Fi or mobile data, and use them when your device is offline.

For Android, open Google Maps and search for a specific place or location. In the placesheet, swipe right, then tap More > Download offline map > Download. For iPhone, search for a location on Google Maps, then, at the bottom of your screen, tap the name or address of the place. Tap More > Download offline map > Download.

After you download an area, use Google Maps as you normally would. If you go offline, your offline maps will guide you to your destination as long as the entire route is within the offline map.

Enable Detailed Voice Guidance

Get better instructions

Voice guidance is a basic yet powerful navigation tool that can come in handy during walks in unfamiliar locations and can be used to ensure your journey is on the right path. To ensure guidance audio is enabled, go to your Google Maps profile (upper right corner), then tap Settings > Navigation > Sound and Voice. Here, tap “Unmute” on “Guidance Audio.”

Apart from this, you can also use Google Assistant to help you along your journey, asking questions about your destination, nearby sights, detours, additional stops, etc. To use this feature on iPhone, map a walking route to a destination, then tap the mic icon in the upper-right corner. For Android, you can also say “Hey Google” after mapping your destination to activate the assistant.

Voice guidance is handy for both new and old places, like when you’re running errands and need to navigate hands-free.

Add multiple stops

Keep your trip going

If you walk regularly to run errands, Google Maps has a simple yet effective feature that can help you plan your route in a better way. With Maps’ multiple stop feature, you can add several stops between your current and final destination to minimize any wasted time and unnecessary detours.

To add multiple stops on Google Maps, search for a destination, then tap “Directions.” Select the walking option, then click the three dots on top (next to “Your Location”), and tap “Edit Stops.” You can now add a stop by searching for it and tapping “Add Stop,” and swap the stops at your convenience. Repeat this process by tapping “Add Stops” until your route is complete, then tap “Start” to begin your journey.

You can add up to ten stops in a single route on both mobile and desktop, and use the journey for multiple modes (walking, driving, and cycling) except public transport and flights. I find this Google Maps feature to be an essential tool for travel to walkable cities, especially when I’m planning a route I am unfamiliar with.


More to discover

A new feature to keep an eye out for, especially if you use Google Maps for walking and cycling, is Google’s Gemini boost, which will allow you to navigate hands-free and get real-time information about your journey. This feature has been rolling out for both Android and iOS users.



Source link