Language Selection

English French German Italian Portuguese Spanish


Programming Leftovers

Filed under
  • compile rust hello world for arm7
  • Haskell, Erlang, and Frank walk into a bar and begin new project to work in Unison

    At the Strange Loop conference in St. Louis, Missouri, earlier this month, Paul Chiusano, founder of Unison Computing, gave the audience a tour of Unison, an emerging programming language designed for building distributed systems.

    Created by Chiusano, Arya Irani and Rúnar Bjarnason, Unison was inspired by Haskell, Erlang, and Frank, a trio of functional programming languages. It's an open source statically typed functional programming language and it's currently in public alpha testing.

    Chiusano, in his presentation at the conference, said Unison is based on a core technical ideal. "In Unison, we're going to identify definitions not by their name but by a hash of their content," he explained.

    Programmers commonly define functions by giving them names like "foo" or "bar." You can do that in Unison too, but the way the language keeps track of those names – which are just metadata in Unison – is by associating them with a 512-bit SHA3 content hash of the implementation of that function.

  • Webinar Recording: “10 Tools and Techniques Python Web Developers Should Explore” with Michael Kennedy

    Our friend Michael Kennedy joined us yesterday for a webinar on tips every Python web developer could benefit from. As is usual with his webinars, it was a lot of fun, very well-prepared, and packed a ton of useful information. The recording is now available as well as his repository of examples.

  • Write Better Code With Our New Advanced Functions Python Course

    Writing better code isn’t always front-of-mind when it comes to learning data science — we’re often more concerned with just getting the code to work, and making sure the analysis is sound.

    But to work as part of an effective data science team, you’ve got to be able to write code that’s readable, maintainable, testable, and debuggable, not just code that’s functional.

    That’s why we’re happy to announce we’ve just launched a new course in our Python Data Scientist path called Functions: Advanced.

    It’s an in-depth Python functions course that’s designed to show you how to write better code using functional programming. If you’re working in data — or aspire to work in data — this course covers critical skills for making your code easier to read, maintain, test, and debug.

Python News: '12 Pythons', PyCharm, ML with Python and Community Service Award Winner From PSF

Filed under
  • 12 Pythons for every programming need

    When you choose Python for software development, you choose a large language ecosystem with a wealth of packages covering all manner of programming needs. But in addition to libraries for everything from GUI development to machine learning, you can also choose from a number of Python runtimes—and some of these runtimes may be better suited to the use case you have at hand than others.

    Here is a brief tour of Python distributions, from the standard implementation (CPython) to versions optimized for speed (PyPy), for special use cases (Anaconda, ActivePython), for different language runtimes (Jython, IronPython), and even for cutting-edge experimentation (PyCopy, MesaPy).

  • PyCharm: 2019.3 EAP 3

    A new version of the Early Access Program (EAP) for PyCharm 2019.3 is available now!

  • ML with Python: Part-2

    In this Post, we will cover in detail what we do in various steps involved in creating a machine learning (ML) model. I was looking around some ML project which is not very complex but covers all the concepts in creating ML model. I found one good project in kaggle which I am using here as an example and the complete project can be found here. Jupyter Notebook file and training/test files can also be downloaded from my git repository.

    Let's start with Problem statement:

    RMS Titanic was a British passenger liner that sank in the North Atlantic Ocean in the early morning hours of 15 April 1912, after it collided with an iceberg during its maiden voyage from Southampton to New York City. There were an estimated 2,224 passengers and crew aboard the ship, and more than 1,500 died, making it one of the deadliest commercial peacetime maritime disasters in modern history.

    We are createing a Model which provides information on the fate of passengers on the Titanic would have been survived or not, according to economic status (class), sex, age etc. Here, we can guess this belongs to Classification Supervised Learning as traning data is labeled with the result and we need to categorized to "survied" or "not survived".

  • Python Software Foundation: Felipe de Morais: 2019 Q2 Community Service Award Winner

    Pythonistas everywhere benefit when our community reflects the many backgrounds and experiences of Python’s users. However it can be challenging to participate in the community when there are no local user groups or harder yet if groups do exist but you do not feel represented in them. After learning that a friend was experiencing gender descrimination at work, Felipe de Morais of Porto Alegre, Brazil, decided to start Django Girls Porto Alegre. By starting this group, women like his friend who were facing similar challenges could have a community to call their own.

    Since Django Girls Porto Alegre took off in 2015, it has become one of the most active Django Girls groups in the world. Inspired by Django Girls and PyLadies, Felipe also started AfroPython, an initiative to empower Black people through technology. Additionally, Felipe contributes to Operação Serenata de Amor, an open source project that monitors public spending by politicians.

Announcing Rust 1.38.0

Filed under

The Rust team is happy to announce a new version of Rust, 1.38.0. Rust is a programming language that is empowering everyone to build reliable and efficient software.

Read more

More of Mozilla this afternoon: Charting a new course for tech competition

Programming Leftovers

Filed under
  • 7 Excellent Free Books to Learn Scheme

    Scheme is a general-purpose, functional, programming language descended from Lisp and Algol. It is a statically scoped and properly tail-recursive dialect of Lisp.

    Scheme is a very simple language with a very simple syntax based on s-expressions. Its simplicity is fundamental in making it a popular introductory language. It follows a minimalist design philosophy specifying a small standard core with powerful tools for language extension. This philosophy helps make Scheme a programming language that can be learned over a weekend. Nevertheless, Scheme is a very versatile language being used to write a diverse range of applications such as financial analysis tools, compilers, virtual reality systems, as well as more mundane software.

    Scheme is used in computing education and research as well as a wide range of industrial applications.

    None of the books featured below are released under an open source license.

  • How I built a Python script to read e-mails from an Exchange Server

    My goal was to access an Exchange server and read e-mails from it. I found some scripts for reading e-mails through Outlook. However, I believe using Outlook makes the code depend on an e-mail client, and I wanted to avoid that. If you are on a business setting, getting your info from the server, in this case, getting the e-mails from Microsoft Exchange is the best approach

  • Mutation testing by example: Evolving from fragile TDD [Ed: For the fourth day in a row Red Hat promotes Microsoft .NET]
  • Automatically annotating a boxplot in matplotlib

    You can probably tell from the sudden influx of matplotlib posts that I've been doing a lot of work plotting graphs recently...

    I have produced a number of boxplots to compare different sets of data. Some of these graphs are for a non-technical audience, and my client agreed that a boxplot was the best way to visualise the data, but wanted the various elements of the boxplot to be labelled so the audience could work out how to interpret it.

    I started doing this manually using the plt.annotate function, but quickly got fed up with manually positioning everything - so I wrote a quick function to do it for me.

  • Parallelizing GCC's Internals Continues To Be Worked On & Showing Promising Potential

    One of the most interesting Google Summer of Code projects this year was the student effort to work on better parallelizing GCC's internals to deal with better performance particularly when dealing with very large source files. Fortunately -- given today's desktop CPUs even ramping up their core counts -- this parallel GCC effort is being continued.

    Student developer Giuliano Belinassi did a good job on the project this summer and is continuing to be involved in the effort. Giuliano presented at this month's GNU Tools Cauldron 2019 conference on the work done so far, how the performance is looking, and what else is left to be accomplished.

  • DevNation Live Bengaluru: Dreaming of streaming with reactive programming

    Our first DevNation Live regional event was held in Bengaluru, India in July. This free technology event focused on open source innovations, with sessions presented by elite Red Hat technologists.

    In this tutorial, presented by Edson Yanaga, you’ll learn about reactive programming and why it matters in this new cloud-native era. We’ll use live coding demos to explain how to be reactive and benefit from this brave new streaming world.

  • How to contribute to GitLab

    I think many people are familiar with GitLab—the company or the software. What many may not realize is that GitLab is also an open source community that started with this first commit from our co-founder Dmitriy Zaporozhet in 2011. As a matter of fact, we have more than 2,000 contributors from the wider community who have contributed to GitLab.

    The wider community contributions span code, documentation, translations, user experience design, etc. If you are interested in open source and in contributing to a complete DevOps platform, I'd like you to consider joining the GitLab community.

    You can find things that you can start contributing to by looking at issues with the "Accepting merge requests" label sorted by weight. Low-weight issues will be easier to accomplish. If you find an issue that you're interested in working on, be sure to add a comment on the issue saying that you'd like to work on this, and verify that no one is already working on it. If you cannot find an issue that you are interested in but have an idea for a contribution (e.g., bug fixes, documentation update, new features, etc.), we encourage you to open a new issue or even open a merge request (MR) to start working with reviewers or other community members.

    If you are interested, here are the different areas at GitLab where you can contribute and how you can get started.

Programming: GCC and Clang, Python, Kotlin and LibreOffice Pins

Filed under
  • Comparing GCC and Clang security features

    Implicit fall-through behavior in switch statements is a common source of bugs, so many projects are trying to eliminate it. To that end, both compilers support the -Wimplicit-fallthrough option. GCC has supported a special attribute making fall-through behavior explicit for some time; Clang has just gained that support as well. There are evidently no plans in the Clang community to support fall-through markers in comments, though, as GCC does. The kernel is now free of implicit fall-throughs; of the roughly 500 patches fixing fall-through warnings in the last year, Cook said, about 10% turned out to be addressing real bugs in the code.

    Link-time optimization (LTO) works with both compilers now. It's not primarily a security feature, but it turns out to be necessary to implement control-flow integrity, which requires a view of all of the functions in a program. Both compilers support LTO, but updating the build tooling to make use of it is still painful. There are also, he said, concerns that LTO can expose differences between the C memory model and the model that the kernel uses, but nobody has provided any specifics about where things could go wrong. It is theoretically a problem, but "practicality matters" and these concerns shouldn't hold up adoption of LTO unless somebody can demonstrate a real-world problem.

    Stack probing is the practice of reading a newly expanded stack in relatively small increments to defeat any attempt to jump over guard pages. GCC can build in this behavior now, controlled by the -fstack-clash-protection flag; Clang still lacks this capability. This feature is more useful in user space than in the kernel, Cook said, since the kernel has fully eliminated the use of variable-length arrays.

  • Python 3.7.4 : Print with random colors.

    This is a simple example for custom print output. The script detect the platform for color settings and then use print. The first print will print with blue color the name of the script.

  • PyPI Security Q4 2019 Request for Proposals period opens.

    The Python Software Foundation Packaging Working Group has received a grant from Facebook Research to implement advanced security features for PyPI. These features include cryptographic signing of uploaded artifacts and the infrastructure necessary to implement automated detection of malicious files uploaded to the index.
    The Python Package Index (PyPI) is a foundational component of the Python ecosystem and broader computer software and technology landscape. This project aims to improve the security and accessibility of PyPI for all users worldwide, whether they are direct users, like project maintainers and pip installers, or indirect users. The impact of this work will be highly visible and improve crucial features of the service.
    We plan to begin the project in Quarter 4 of 2019. Because of the size of the project, funding has been allocated to secure one or more contractors to complete the development, testing, verification, and assist in the rollout of necessary features.

  • Episode #149: Python's small object allocator and other memory features
  • Rust-like enums in Kotlin

    Rust has an exciting concept of enumeration types, which is much more powerful than enums in other languages. Notably C has the weakest type of enum, since there’s no type checking of any kind, and enum values can be used interchangeably with integers...

  • pin gallery

    This extension add you a pin gallery on top of each galleries so if you switch to galleries you can drag & drop your favorite drawings, images, … simple but usefull.

Programming: Git for GCC, Intel SYCL Compiler, Python, Rust and Nim

Filed under
  • GCC's Conversion To Git: "Within The Realm Of The Practically Achievable"

    It was back in July 2018 that GCC's conversion to Git was becoming a massive headache and now more than a year later it's looking like that switch from Subversion to Git is still weeks if not months from becoming official.

    Last year the GCC conversion to Git was blamed on high DDR4 RAM prices and then evaluating a port of the conversion utility from Python to Go. That GCC Git port work being led by Eric S Raymond was then boosted earlier this year after upgrading to a Threadripper system with more RAM and also going ahead with the Reposurgeon rewrite in Go. But even months after that milestone, the reworked Reposurgeon is still a work-in-progress but the end may be in sight.

    ESR has issued a new status report today saying he's in the last stages of qualifying his Go port, he's currently working on debugging a "extractor harness" peripheral feature, topological sorting of commits is still being done, and various other bugs.

  • Intel SYCL Compiler + Runtimes 2019-09 Released

    Moving towards their oneAPI beta release next quarter, the Intel developers are as busy as ever advancing their LLVM-based SYCL compiler and run-times for Windows and Linux.

    Out this morning is the SYCL Compiler and Runtimes 2019-09 release for this compiler to allow OpenCL offloading to accelerators like Intel GPUs and FPGAs. New to this release are supporting some CL/SYCL FPGA extensions, support for dumping the SYCL task graph to JSON, a long list of other SYCL/OpenCL improvements, and a wide range of bug fixes.

  • Episode #231: Advice for freelancing with Python

    Have you ever wanted to get into consulting? Maybe you're seeking the freedom to work on whatever project you'd like or gain more control of your time.

    Many folks see consulting and freelancing as the next step in their career. But what do they need to put in place first? What challenges might come their way they won't see coming?

  • This Week in Rust 305

    Hello and welcome to another issue of This Week in Rust! Rust is a systems language pursuing the trifecta: safety, concurrency, and speed. This is a weekly summary of its progress and community. Want something mentioned? Tweet us at @ThisWeekInRust or send us a pull request. Want to get involved? We love contributions.

  • Are you a Nim-by? C-ish language, gentler than Go, friendlier than Rust, reaches version 1.0

    The Nim programming language reached v1.0 on Monday, bringing with it a stability guarantee and enthusiasm from its community of fans.

    "Version 1.0 marks the beginning of a stable base which can be used in the coming years, knowing that the future versions of Nim won’t break the code you have written with the current version," the Nim team said on Monday.

    Nim is a compiled language, like C, rather than an interpreted one, like JavaScript. So it tends to perform well, because compilation translates source code into efficient native instructions for specific hardware. It's also statically typed, like C and Java, which avoids certain type-related bugs and can improve performance. The language and compiler are offered under the MIT license.

Programming Leftovers

Filed under
  • Qt 5.14 Hits Alpha With Major Renderer Work, Better HiDPI Support

    The Qt Company has announced the availability of the Qt 5.14 Alpha release ahead of this half-year tool-kit update due out before year's end. Qt 5.14 is also the second to the last in the Qt5 series with an increasing amount of work shifting to Qt6 that is expected to debut towards the end of 2020.

    Among the changes coming with Qt 5.14 are:

    - Qt Quick is seeing its first work on the graphics API independent scenegraph renderer. In addition to OpenGL, this renderer supports Vulkan, Metal, and Direct3D 11. The Vulkan support is certainly exciting and will mature with Qt6.

  • How to Use Generators and yield in Python

    Have you ever had to work with a dataset so large that it overwhelmed your machine’s memory? Or maybe you have a complex function that needs to maintain an internal state every time it’s called, but the function is too small to justify creating its own class. In these cases and more, generators and the Python yield statement are here to help.

  • [DE] Python Meeting Düsseldorf - 2019-09-25
  • PyCharm 2019.2.3

    PyCharm 2019.2.3 is now available!

Programming: Python and Google Code‑in

Filed under
  • The Python Software Foundation has updated its Code of Conduct

    The Python community values members who are accepting, helpful, and respectful: for many years, the Python Software Foundation (PSF) has had an organization-wide Code of Conduct that defines these values, and behaviors that we want to have in our community. The Foundation has also insisted for years that every event that we sponsor have a Code of Conduct in place.

    But spaces where our community meets – online, or in person – need a Code of Conduct that does more than just emphasize our values. The PSF’s flagship conference, PyCon US, has had its own Code of Conduct – separate from the PSF Code of Conduct – for many years. The PyCon US Code of Conduct not only highlights our community’s values, but it also identified behaviors that are not acceptable at the conference, explained how to report violations, and included enforcement procedures.


    The PSF worked with Sage Sharp of Otter Tech to produce the draft of the new Code of Conduct.

  • Tahoe-LAFS on Python 3 - Call for Porters

    Earlier this year a number of Tahoe-LAFS community members began an effort to port Tahoe-LAFS from Python 2 to Python 3. Around five people are currently involved in a part-time capacity. We wish to accelerate the effort to ensure a Python 3-compatible release of Tahoe-LAFS can be made before the end of upstream support for CPython 2.x.

    Tahoe-LAFS is a Free and Open system for private, secure, decentralized storage. It encrypts and distributes your data across multiple servers. If some of the servers fail or are taken over by an attacker, the entire file store continues to function correctly, preserving your privacy and security.

  • PyCoder’s Weekly: Issue #387 (Sept. 24, 2019)
  • Welcome to Google Code‑in 2019

    Pre-university students ages 13 to 17 are invited to take part in Google Code-in: Our global, online contest introducing teenagers to the world of open source development. With a wide variety of bite-sized tasks, it’s easy for beginners to jump in and get started no matter what skills they have.

    Mentors from our participating organizations lend a helping hand as participants learn what it’s like to work on an open source project. Participants get to work on real software and win prizes from t-shirts to a trip to Google HQ!

  • Google Code‑in 2019

    Google Code-in (GCI) provides students ages 13 to 17 the opportunity to participate in open source projects. Google has announced the 2019 round of GCI.

Programming: Java, Nim 1.0, Wing 7, Python and Glibc 2.31 Plan

Filed under
  • Java still relevant, Linux desktop, and more industry trends

    The impact: A completely open source release of Java Enterprise Edition as Jakarta EE lays the groundwork for years of Java development to come. Some of Java's relevance comes from the mind-boggling sums that have been spent developing in it and the years of experience that software developers have in solving problems with it. Combine that with the innovation in the ecosystem (for example, see Quarkus, or GraalVM), and the answer has to be "yes."

  • Version 1.0 released - Nim Blog

    Today is the day. The Nim Team is very proud and happy to announce the much-anticipated version 1.0 of the language.

    Nim has always been focused on providing a compiled statically typed language focusing on efficiency, readability and flexibility.

    Version 1.0 marks the beginning of a stable base which can be used in the coming years, knowing that the future versions of Nim won’t break the code you have written with the current version.

  • Nim Programming Language Hits Stable Milestone With v1.0 Release

    The Nim programming language now has a stability guarantee with this statically-typed, general purpose programming language hitting its 1.0 release.

  • Debugging Python Code Running in Docker Containers with Wing 7

    Docker is a containerization system that uses a relatively light-weight form of virtualization to package and isolate application components from the host system, making it easier to spin up uniformly configured virtual machines for use in application development, testing, and deployment.

    Wing 7 can be used to develop and debug Python code running inside of Docker containers. This is accomplished by setting up a mapping of local (host-side) directories into the container, and then configuring Wing so it can accept debug connections from the container.

  • Real Python: Thonny: The Beginner-Friendly Python Editor

    Are you a Python beginner looking for a tool that can support your learning? This course is for you! Every programmer needs a place to write their code. This course will cover an awesome tool called Thonny that will enable you to start working with Python in a beginner-friendly environment.

  • RSEQ Support Might Finally Premiere In Glibc 2.31 For Using This Modern Linux Feature

    It's looking like RSEQ support might be added to the GNU C Library with the Glibc 2.31 release in a few months time. The "restartable sequences" support was added last year to the Linux kernel and the numbers have been quite promising for the performance benefits.

    The RSEQ (Restartable Sequences) system call was added back in Linux 4.18 to allow for faster user-space operations on per-CPU data. Benchmarks on the RSEQ system call have been quite promising while it looks like the GNU C Library might finally be wrapping its support for RSEQ in time for the next release, Glibc 2.31.

  • 5.0a7, and the future of pytest-cov

    Progress continues in the Python coverage world. Two recent things: first, the latest alpha of 5.0 is available: 5.0a7. Second, pytest-cov is supporing 5.0, and we’re talking about the future of pytest-cov.

    There are two big changes in 5.0a7. First, there is a new reporting command: coverage json produces a JSON file with information similar to the XML report. In 4.x, the data storage was a lightly cloaked JSON file. That file was not in a supported format, and in fact, it is gone in 5.0. This command produces a supported JSON format for people who want programmatic access to details of the coverage data. A huge thanks to Matt Bachmann for implementing it.

    The second big change is to the SQL schema in the 5.x data file, which is a SQLite database. Previously, each line measured produced a row in the “line” table. But this proved too bulky for large projects. Now line numbers are stored in a compact binary form. There is just one row in the “line_bits” table for each file and context measured. This makes it more difficult to use the data with ad-hoc queries. Coverage provides functions for working with the line number bitmaps, but I’m interested in other ideas about how to make the data more usable.

today's howtos and programming bits

Filed under
Syndicate content

More in Tux Machines

Dragora 3.0-beta1 released

I am pleased to announce the release of Dragora 3.0 Beta 1.

Dragora is a complete and reliable distribution of the GNU/Linux operating system that is entirely free software. Dragora is founded on the concepts of simplicity and elegance, it can be run for almost any purpose (desktop,
workstation, server, development, etc.). The intended audience is people
interested in learning more about the technical aspects of a friendly
GNU/Linux distribution.  Also people looking to use the purest ethical
software for daily use.

The beginning of the development of the series 3.0 represents the
migration towards a new C library, Musl.  The continuation of
supervision capabilities (introduced for the services in 2012).
The restructuring of the hierarchy of directories, the improvement of
the tools provided by the distribution, a new automatic method to build
the distribution, the prebuilt cross-compiler set, and much more!

The homepage is at

Current development pages are located at and

Changes in this version:

  * A new installer for this series has been introduced, it can be
    invoked from the command line as `dragora-installer'.

  * A new tool (based on dialog(1)) has been introduced to
    configure the keyboard mapping in the console, it is called

  * Our simple and friendly package manager has reached version 1.3,
    which contains minor changes and fixes.  It is worth mentioning
    that Qi now uses `tarlz' to produce, list packages in parallel.
    Tarlz uses a simplified and safer variant of the POSIX pax format
    compressed with our favorite compressor "lzip".

  * To complement the security in general, for binaries with PIE and
SSP (both are default features in Dragora), they are now complemented
    with RELRO by default.

  * The main toolchain has been upgraded.  This -beta1 have Binutils
    2.33.1, The GNU C Compiler 9, GNU Linux libre 4.19.78, and
    Musl 1.1.24.

  * LibreSSL has been upgraded to the version 3.0.1

  * Ruby (programming language) version 2.6.5 has been introduced.

  * Support for FUSE (in the kernel) and user space, is now available
    in Dragora.

  * Xfce 4.14 has been introduced in this version.

  * dragora-ice, a customized version of IceWM has been added.

  * All the official X.Org components has been updated (drivers, server,
    applications, etc.).  Included new drivers: xf86-input-elographics,
    xf86-video-amdgpu, xf86-video-vboxvideo.  The configuration for the
    xf86-video-intel driver has been fixed this time.

  * Work to complete DocBook support in Dragora is underway.

  * Build recipes for new packages have been built:

    Please, traverse the /usr/pkg hierarchy for a full view of
    installed packages.

  * Many general fixes, improvements, and clean ups have been performed.

The ISO images may be fetched at:

See for a list of available mirrors.

The sha256sums are:

59a1c1693d62c2d61a0d5b4b826313ce8b736768b1a42097f1478a20a37f7a80 dragora-3.0-i586-beta1-live.iso 3127ea5b619b8e049b45a17e1e4d9c538b35ac067a7cd63d2262a30782e7cc2d dragora-3.0-i586-beta1-packages.iso 1c0f63a69cd4b674b742550562605f240e98cdbc63ab670c9f8cdd5d2d134efc dragora-3.0-x86_64-beta1-live.iso 2dd58b1e6429876aa1883b4682914184bce6cac2adfe53ea7c2e0c46d7987385 dragora-3.0-x86_64-beta1-packages.iso

Dragora is available in "live" or hybrid ISO image form. You need the .iso
for the packages if you want to perform a hard disk installation.


* The password for the root user in the Live CD is: dragora

This beta version can be considered as stable, it is catalogued just as
beta because it lacks many things that we will try to complement in future

We welcome feedback at our Freenode IRC channel, #dragora, and on our
mailing list.  We are looking for help with documentation, testing,
bug reports, patches, etc.

Thank you to all of you who support this humble project made with great
sacrifice.  And thank you especially for supporting the philosophy and
spirit of software freedom that Dragora aims to promote.

Best regards,
Matias Fonzo, Dragora author and maintainer.

``Someone told me I would never be free
The way you are is way you'll always be
But it's all wrong!
There's Time To Burn'' - Ronnie James Dio

Read more

PCLinuxOS 2019.10 updated installation media release

The PCLinuxOS project has announced the release of updated installation media for PCLinuxOS. The new media carries the version number 2019.10 and contains a fully updated system as of October 15 2019. Please note it is not required to do a clean installation each month since PCLinuxOS is a rolling release. These ISOs are being provided so new users don’t have a large update to perform after installation from a dated ISO. Read more

Firefox Reality Top Picks - Bringing You New Virtual Reality Experiences Weekly

So you bought yourself a fancy VR headset, you’ve played all the zombie-dragon-laser-kitten-battle games (we have too!) and now you’re wondering… what else is there? Where can I find other cool stuff to explore while I have this headset strapped to my face? We felt the same way, so we built Firefox Reality to help you in your quest for the most interesting, groundbreaking and entertaining virtual reality content on the Web. The real promise of VR is the ability to immerse yourself into countless other places and perspectives - both real and imaginary - and to experience things you’ve never done before. Our Top Picks page is a great place to start exploring, with fresh recommendations coming weekly so you always have new content to check out. Of course, if you want to explore on your own, you can use Firefox Reality for that too. Firefox Reality Top Picks is the start of what we hope will evolve into a thriving and sustainable ecosystem connecting creators, VR content, and audience. Read more Also: Faster Layouts with CSS Grid (and Subgrid!)

today's howtos