Language Selection

English French German Italian Portuguese Spanish

Development

Programming: C++, C and Python

Filed under
Development
  • Extend C++ capabilities with LLVM STLExtras.h

    The LLVM compiler project provides a header file called STLExtras.h that extends the capabilities of C++ without any dependency on the rest of LLVM. In this article, we take a quick look at its basic functionality.

  • Rewriting Old Solaris C Code In Python Yielded A 17x Performance Improvement

    While we normally hear of rewriting code from Python and other scripting languages into C/C++ when its a matter of performance, in the case of Oracle Solaris it was taking old C code and modernizing it in Python 3 to yield a ~17x performance improvement.

    Shared today on Oracle's official Solaris blog was an interesting anecdote about their listusers command being rewritten in Python 3 from C. Oracle's Darren Moffat noted the C code was largely untouched since around 1988 and given its design at a time when systems were less dense than today with hundreds or even thousands of users per system.

  • Python Projects for Beginners: The Best Way to Learn

    Learning Python can be difficult. You can spend time reading a textbook or watching videos, but then struggle to actually put what you've learned into practice. Or you might spend a ton of time learning syntax and get bored or lose motivation.

    How can you increase your chances of success? By building Python projects. That way you're learning by actually doing what you want to do!

    When I was learning Python, building projects helped me bring together everything I was learning. Once I started building projects, I immediately felt like I was making more progress.

  • PyCon 2019: The People of PyCon

    I can’t tell you how amazing it was to meet the individuals I read, listen to, or who make the tools I use.

    I was so happy to meet the authors that helped me to grow over the last few years, especially Dan Bader, Peter Baumgartner, Matt Harrison, Reuven Lerner, Harry Percival , and Lacey Williams Henschel.

    I love podcasts, so it was wonderful to meet Michael Kennedy and Brian Okken in person.

    And I was happy to meet Paul Ganssle, Russell Keith-Magee, Barry Warsaw, and other maintainers and contributors.

    It was a delight to meet Bob Belderbos and Julian Sequeira from PyBites.

  • Find the first non-consecutive number with Python

    Your task is to find the first element of an array that is not consecutive.

    E.g. If we have an array [1,2,3,4,6,7,8] then 1 then 2 then 3 then 4 are all consecutive but 6 is not, so that’s the first non-consecutive number.

    If the whole array is consecutive then return None.

  • Perceiving Python programming paradigms

    Early each year, TIOBE announces its Programming Language of The Year. When its latest annual TIOBE index report came out, I was not at all surprised to see Python again winning the title, which was based on capturing the most search engine ranking points (especially on Google, Bing, Yahoo, Wikipedia, Amazon, YouTube, and Baidu) in 2018.

Programming Leftovers

Filed under
Development
  • Riddle me this

    Found this today while playing around, thought people might enjoy this riddle.

  • TOP 5 Software Failures of 2018–2019 (#5 is pretty alarming)

    In this modern day and age tech is something we can’t even imagine our life without. Technology is so cool and we love it! But not everything goes as planned and the thing that was supposed to make life easier and be useful can become quite scary. So, this week we’ve wanted to bring your attention to the “TOP 5 Software Failures of 2018–2019 (#5 is pretty alarming)”. We are very interested in your thoughts on the matter!

  • Using Matplotlib with Wing 7

    Wing supports interactive development and debugging of Python code designed for the Matplotlib numerical and scientific plotting library, so plots can be shown and updated from the command line.

  • An unexpected character replacement

    A few weeks ago I found a replacement in GBIF that I'd never seen before: M<fc>ller. It was a hexadecimal value for the character "ü" enclosed in angle brackets. That particular hex value for "ü" appears in Windows-1252 and other encodings, but what program did this replacement? And why?

    Suspecting the worst, I did a search for other angle-bracket-enclosed strings in the dataset. The search turned up a lot of data items which had originally contained a non-breaking space, and which now contained that character's Unicode representation in brackets, for example Laevicardium. Excluding these, the result is shown here:

  • 40 Simple Yet Effective Linux Shell Script Examples

    Historically, the shell has been the native command-line interpreter for Unix-like systems. It has proven to be one of Unix’s major features throughout the years and grew into a whole new topic itself. Linux offers a variety of powerful shells with robust functionality, including Bash, Zsh, Tcsh, and Ksh. One of the most amazing features of these shells is their programmability. Creating simple yet effective Linux shell scripts for tackling day to day jobs is quite easy. Moreover, a modest knowledge over this topic will make you a Linux power user in no time. Stay with us to for a detailed introduction to Unix shell scripting.

  • Creating A Super User In Django

    Django’s prominent feature is the admin interface, which makes it stand out from the competition. It is a built-in app that automatically generates a user interface to add and modify a site’s content.

  • Using PostgreSQL with Django

    Django is a high level full-stack open-source web framework written in Python, that encourages rapid development and clean, pragmatic design.

    Django, in its ‘out-of-the-box’ state, is set up to communicate with SQLite – a lightweight relational database included with the Python distribution. So by default, Django automatically creates an SQLite database for your project.

    In addition to SQLite, Django also has support for other popular databases that include PostgreSQL, MySQL, and Oracle.

  • Creating Comments System With Django

    In this tutorial, we will build a basic commenting system for a Django 2.X app, which lets readers add comments on posts.

    Here is a preview of what we are going to build by the end of this tutorial.

Programming: SystemView, JDK, VimL and Bazel

Filed under
Development
  • New SystemView Verification Tool from SEGGER is Compatible with Windows, Linux, and macOS
  • 5 steps for an easy JDK 13 install on Ubuntu
  • Basic Data Types in Python 3: Strings
  • Excellent Free Books to Learn VimL

    VimL is a powerful scripting language of the Vim editor. You can use this dynamic, imperative language to design new tools, automate tasks, and redefine existing features of Vim. At an entry level, writing VimL consists of editing the vimrc file. Users can mould Vim to their personal preferences. But the language offers so much more; writing complete plugins that transform the editor. Learning VimL also helps improve your efficiency in every day editing.

    VimL supports many common language features: variables, control structures, built-in functions, user-defined functions, expressions first-class strings, high-level data structures (lists and dictionaries), terminal and file I/O, regex pattern matching, exceptions, as well as an integrated debugger. Vim’s runtime features are written in VimL.

  • Google Releases Bazel 1.0 Build System With Faster Build Performance

    Bazel is Google's preferred build system used by many of their own software projects. Bazel is focused on providing automated testing and release processes while supporting "language and platform diversity" and other features catered towards their workflow. Bazel 1.0 comes at a time when many open-source projects have recently been switching to Meson+Ninja as the popular build system these days for its fast build times and great multi-platform build support. Bazel also still has to compete with the likes of CMake and many others.

  • Bazel Reaches 1.0 Milestone!

    Bazel was born of Google's own needs for highly scalable builds. When we open sourced Bazel back in 2015, we hoped that Bazel could fulfill similar needs in the software development industry. A growing list of Bazel users attests to the widespread demand for scalable, reproducible, and multi-lingual builds. Bazel helps Google be more open too: several large Google open source projects, such as Angular and TensorFlow, use Bazel. Users have reported 3x test time reductions and 10x faster build speeds after switching to Bazel.

Programming: C++, Python, LLVM and More

Filed under
Development
  • Theory: average bus factor = 1

    Two articles recently made me realize that all my free software projects basically have a bus factor of one. I am the sole maintainer of every piece of software I have ever written that I still maintain. There are projects that I have been the maintainer of which have other maintainers now (most notably AlternC, Aegir and Linkchecker), but I am not the original author of any of those projects.

    Now that I have a full time job, I feel the pain. Projects like Gameclock, Monkeysign, Stressant, and (to a lesser extent) Wallabako all need urgent work: the first three need to be ported to Python 3, the first two to GTK 3, and the latter will probably die because I am getting a new e-reader. (For the record, more recent projects like undertime and feed2exec are doing okay, mostly because they were written in Python 3 from the start, and the latter has extensive unit tests. But they do suffer from the occasional bitrot (the latter in particular) and need constant upkeep.)

    Now that I barely have time to keep up with just the upkeep, I can't help but think all of my projects will just die if I stop working on them. I have the same feeling about the packages I maintain in Debian.

  • What Can AI Teach Us about Bias and Fairness?

    As researchers, journalists, and many others have discovered, machine learning algorithms can deliver biased results. One notorious example is ProPublica’s discovery of bias in a software called COMPAS used by the U.S. court systems to predict an offender’s likelihood of re-offending. ProPublica’s investigators discovered the software’s algorithm was telling the court system that first-time Black offenders had a higher likelihood of being repeat offenders than white offenders who had committed multiple crimes. They also found only 20% of the individuals predicted to commit a violent crime did so. Discoveries like these are why ethical AI is top-of-mind in Silicon Valley and for companies around the world focused on AI solutions.

  • KDAB at C++ Russia, Saint Petersburg

    C++ Russia is the premier C++ conference in East Europe which alternates between Moscow and Saint Petersburg. The conference lasts for two days starting October 31st. It will be held in the Park Inn by Radisson Pulkovskaya Hotel in the heart of Saint Petersburg.

  • How to Add Time Delays to Your Code

    Have you ever needed to make your Python program wait for something? Most of the time, you’d want your code to execute as quickly as possible. But there are times when letting your code sleep for a while is actually in your best interest.

    For example, you might use a Python sleep() call to simulate a delay in your program. Perhaps you need to wait for a file to upload or download, or for a graphic to load or be drawn to the screen. You might even need to pause between calls to a web API, or between queries to a database. Adding Python sleep() calls to your program can help in each of these cases, and many more!

  • Python 3.7.4 : Test the DHCP handshakes.
  • LLVM Clang RISC-V Now Supports LTO

    With the recent release of LLVM 9.0 the RISC-V back-end was promoted from an experimental CPU back-end to being made "official" for this royalty-free CPU ISA. Work though isn't over on the LLVM RISC-V support with new features continuing to land, like link-time optimizations (LTO) most recently being enabled within the Clang 10 code.

    Within the latest Clang code this week, LTO (link-time optimizations) are now enabled for Clang targeting RISC-V. LTO, of course, is important for performance with being able to exploit more performance optimizations by the compiler at link-time.

  • PyCon 2019: Open Spaces

    And, yeah, I realize it was nearly six months ago. But there have been some things that have been lingering in my thoughts that I need to share.

  • Sharing Your Labor of Love: PyPI Quick and Dirty

    This is another huge update after its initial release in 2013 and catches up with the latest developments (a lot happened!) since the last big update in 2017. Additionally, I have removed the parts on keyring because I stopped using it myself: it’s sort of nice to double-check before uploading anything. If you want to automate the retrieval of your PyPI credentials, check out glyph’s blog post Careful With That PyPI.

today's howtos and programming leftovers

Filed under
Development
HowTos

Audiocasts/Shows: LINUX Unplugged, mintCast and Python Shows

Filed under
Development
GNU
Linux

Programming: Python, LLVM and Erlang

Filed under
Development
  • Sending Emails in Python — Tutorial with Code Examples

    What do you need to send an email with Python? Some basic programming and web knowledge along with the elementary Python skills. I assume you’ve already had a web app built with this language and now you need to extend its functionality with notifications or other emails sending.

    [...]

    Sending multiple emails to different recipients and making them personal is the special thing about emails in Python.

    To add several more recipients, you can just type their addresses in separated by a comma, add Cc and Bcc. But if you work with a bulk email sending, Python will save you with loops.

    One of the options is to create a database in a CSV format (we assume it is saved to the same folder as your Python script).

    We often see our names in transactional or even promotional examples. Here is how we can make it with Python.

  • Binning Data with Pandas qcut and cut

    When dealing with continuous numeric data, it is often helpful to bin the data into multiple buckets for further analysis. There are several different terms for binning including bucketing, discrete binning, discretization or quantization. Pandas supports these approaches using the cut and qcut functions. This article will briefly describe why you may want to bin your data and how to use the pandas functions to convert continuous data to a set of discrete buckets. Like many pandas functions, cut and qcut may seem simple but there is a lot of capability packed into those functions. Even for more experience users, I think you will learn a couple of tricks that will be useful for your own analysis.

    [...]

    The concept of breaking continuous values into discrete bins is relatively straightforward to understand and is a useful concept in real world analysis. Fortunately, pandas provides the cut and qcut functions to make this as simple or complex as you need it to be. I hope this article proves useful in understanding these pandas functions. Please feel free to comment below if you have any questions.

  • Analysing music habits with Spotify API and Python

    I’m using Spotify since 2013 as the main source of music, and back at that time the app automatically created a playlist for songs that I liked from artists’ radios. By innertion I’m still using the playlist to save songs that I like. As the playlist became a bit big and a bit old (6 years, huh), I’ve decided to try to analyze it.

  • Python IDEs and Code Editors

    A code editor is a tool that is used to write and edit code. They are usually lightweight and can be great for learning. However, once your program gets larger, you need to test and debug your code, that's where IDEs come in.

    An IDE (Integrated Development Environment) understand your code much better than a text editor. It usually provides features such as build automation, code linting, testing and debugging. This can significantly speed up your work. The downside is that IDEs can be complicated to use.

  • Announcing Anaconda Distribution 2019.10

    As there were some significant changes in the previous Anaconda Distribution 2019.07 installers, this release focuses on polishing up rough edges in that release and bringing all the packages up to date with the latest available in repo.anaconda.com. This means many key packages are updated including Numpy, Scipy, Scikit-Learn, Matplotlib, Pandas, Jupyter Notebook, and many more. As many of the package updates have addressed Common Vulnerabilities and Exposures (CVEs), it is important to update to the latest.

    Another key change since the last release is that Apple released macOS version 10.15 – Catalina. Unfortunately, this was a breaking release for previous versions of Anaconda that used the pkg installer. The Anaconda Distribution 2019.10 installers address the issues and should install without trouble on macOS Catalina. If you would rather repair your current Anaconda installation, please check out this blog post for tips.

  • Apple's Numbers and the All-in-One CSV export

    The hierarchical form requires a number of generator functions for Sheet-from-CSV, Table-from-CSV, and Row-from-CSV. Each of these works with a single underlying iterator over the source file and a fairly complex hand-off of state. If we only use the sheet iterator, the tables and rows are skipped. If we use the table within a sheet, the first table name comes from the header that started a sheet; the table names come from distinct headers until the sheet name changes.

    The table-within-sheet iteration is very tricky. The first table is a simple yield of information gathered by the sheet iterator. Any subsequent tables, however, may be based one one of two conditions: either no rows have been consumed, in which case the table iterator consumes (and ignores) rows; or, all the rows of the table have been consumed and the current row is another "sheet: table" header.

  • Formatting NFL data for doing data science with Python

    No matter what medium of content you consume these days (podcasts, articles, tweets, etc.), you'll probably come across some reference to data. Whether it's to back up a talking point or put a meta-view on how data is everywhere, data and its analysis are in high demand.

    As a programmer, I've found data science to be more comparable to wizardry than an exact science. I've coveted the ability to get ahold of raw data and glean something useful and concrete from it. What a useful talent!

  • Sony Pushes More AMD Jaguar Optimizations To Upstream LLVM 10 Compiler

    Sony engineers working on the PlayStation compiler toolchain continue upstreaming various improvements to the LLVM source tree for helping the AMD APUs powering their latest game console.

    Several times now we've pointed out Sony engineers contributing AMD "btver2" improvements to upstream LLVM with the company using LLVM/Clang as their default code compiler and the PlayStation 4 relying on a Jaguar APU.

  • [llvm-dev] GitHub Migration Schedule and Plans
    Hi,
    
    We're less than 2 weeks away from the developer meeting, so I wanted to
    give an update on the GitHub migration and what's (hopefully) going to
    happen during the developer meeting.
    
    Everyone who has added their information to the github-usernames.txt
    file in SVN before today should have received an invite to become a collaborator
    on the llvm-project repository.  If you did not receive an invite and think
    you should have, please contact me off-list.  I will continue to monitor the
    file for new updates and periodically send out new batches of invites.
    
    There is still some ongoing work to get the buildbots ready and the mailing lists
    ready, but we are optimistic that the work will be done in time.
    
    The team at GitHub has finished implementing the "Require Linear History"
    branch protection that we requested.  The feature is in beta and currently
    enabled in the llvm-project repository.  This means that we will have the
    option to commit directly via git, in addition to using the git-llvm script.
    A patch that updates git-llvm to push to git instead of svn can be found here:
    https://reviews.llvm.org/D67772.  You should be able to test it out on your
    own fork of the llvm-project repository.
    
    The current plan is to begin the final migration steps on the evening (PDT)
    of October 21.  Here is what will happen:
    
    1. Make SVN read-only.
    2. Turn-off the SVN->git update process.
    3. Commit the new git-llvm script directly to github.
    4. Grant all contributors write access to the repository.
    5. Email lists announcing that the migration is complete.
    
    Once the migration is complete, if you run into any issues, please file
    a bug, and mark it as a blocker for the github metabug PR39393.
    
    If you have any questions or think I am missing something, please
    let me know.
    
    Thanks,
    Tom
    
    
  • LLVM Plans To Switch From Its SVN To Git Workflow Next Week

    On 21 October they plan to make LLVM's SVN repository read-only and finish their git-llvm script to bring all the changes into Git, and then allow developers to begin contributing to the LLVM GitHub project as the new official source repository.

  • Excellent Free Books to Learn Erlang

    Erlang is a general-purpose, concurrent, declarative, functional programming language and runtime environment developed by Ericsson, a Swedish multinational provider of communications technology and services. Erlang is dynamically typed and has a pattern matching syntax. The language solves difficult problems inherent in parallel, concurrent environments. It uses sets of parallel supervised processes, not a single sequential process as found in most programming languages.

    Erlang was created in 1986 at the Ellemtel Telecommunication Systems Laboratories for telecommunication systems. The objective was to build a simple and efficient programming language resilient large-scale concurrent industrial applications.

    Besides telecommunication systems and applications and other large industrial real-time systems, Erlang is particularly suitable for servers for internet applications, e-commerce, and networked database applications. The versatility of the language is, in part, due to its extensive collection of libraries.

Python Across Platforms

Filed under
OS
Development
  • Chemists bitten by Python scripts: How different OSes produced different results during test number-crunching

    Chemistry boffins at the University of Hawaii have found, rather disturbingly, that different computer operating systems running a particular set of Python scripts used for their research can produce different results when running the same code.

    In a research paper published last week in the academic journal Organic Letters, chemists Jayanti Bhandari Neupane, Ram Neupane, Yuheng Luo, Wesley Yoshida, Rui Sun, and Philip Williams describe their efforts to verify an experiment involving cyanobacteria, better known as blue-green algae.

    Williams, associate chair and professor in the department of chemistry at the University of Hawaii at Manoa, said in a phone interview with The Register on Monday this week that his group was looking at secondary metabolites, like penicillin, that can be used to treat cancer or Alzheimer's.

  • Chemists discover cross-platform Python scripts not so cross-platform

    In a paper published October 8, researchers at the University of Hawaii found that a programming error in a set of Python scripts commonly used for computational analysis of chemistry data returned varying results based on which operating system they were run on—throwing doubt on the results of more than 150 published chemistry studies. While trying to analyze results from an experiment involving cyanobacteria, the researchers—Jayanti Bhandari Neupane, Ram Neupane, Yuheng Luo, Wesley Yoshida, Rui Sun, and Philip Williams—discovered significant variations in results run against the same nuclear magnetic resonance spectroscopy (NMR) data.

    The scripts, called the "Willoughby-Hoye" scripts after their authors—Patrick Willoughby and Thomas Hoye of the University of Minnesota—were found to return correct results on macOS Mavericks and Windows 10. But on macOS Mojave and Ubuntu, the results were off by nearly a full percent.

2D using Godot

Filed under
Development
OSS
Gaming

This brings me to the GUI parts. I’m still not convinced that I understand how to properly layout stuff using Godot, but at least it looks ok now – at the cost of some fixed element sizes and such. I need to spend some more time to really understand how the anchoring and stretching really works. I guess I have a hard time wrapping my head around it as the approach is different from what I’m used to from Qt.

Looking at the rest of the code, I’ve tried to make all the other scenes (in Godot, everything is a scene) like independent elements. For instance, the card scene has a face, and an is_flipped state. It can also signal when it is being flipped and clicked. Notice that the click results in a signal that goes to the table scene, which decides if the card needs to be flipped or not.

The same goes for the GUI parts. They simple signal what was clicked and the table scene reacts. There are some variables too, e.g. the number of pairs setting in the main menu, and the points in the views where that is visible.

Read more

[Qt Quick] Very Hot New Stuff

Filed under
Development
KDE

K', Hot off the presses, here's some New Stuff for you, with the Quickness! ...terribly sorry about that, i shall endeavour to do better. Let's try that again.

As of KDE Frameworks 5.63, released on 2019/10/12, we officially introduce the fruits of my labour over the last few months, the shiny, new Qt Quick components, which were created to bring the Qt Quick submodule of KNewStuff up to par with the old QWidget based UX. Not only that, they also bring with them some shiny, new abilities in KNewStuff, which previously did not have any concept of comments outside of the very basic information of how many a content item had (which, incidentally, was also incorrect, and had been since, well... since that code was written about a decade ago - guess nobody noticed, because the information is a bit useless on its own).

[...]

Also don't hesitate to mention, when you discover it, the various holes in the documentation that undoubtedly are there, so that we might get those fixed. Even better yet, we are very happy to take patches over on Phabricator, both code and documentation ones. One thing that i know is missing is a porting guide, to help people transition from the old QWidgets based stuff to the Qt Quick components for people who have got applications they're looking to port or are already porting.

Read more

Syndicate content

More in Tux Machines

5 Practical Examples of the Read Command in Linux

With read command, you can make your bash script interactive by accepting user inputs. Learn to use the read command in Linux with these practical examples. Read more

Programming: C++, C and Python

  • Extend C++ capabilities with LLVM STLExtras.h

    The LLVM compiler project provides a header file called STLExtras.h that extends the capabilities of C++ without any dependency on the rest of LLVM. In this article, we take a quick look at its basic functionality.

  • Rewriting Old Solaris C Code In Python Yielded A 17x Performance Improvement

    While we normally hear of rewriting code from Python and other scripting languages into C/C++ when its a matter of performance, in the case of Oracle Solaris it was taking old C code and modernizing it in Python 3 to yield a ~17x performance improvement. Shared today on Oracle's official Solaris blog was an interesting anecdote about their listusers command being rewritten in Python 3 from C. Oracle's Darren Moffat noted the C code was largely untouched since around 1988 and given its design at a time when systems were less dense than today with hundreds or even thousands of users per system.

  • Python Projects for Beginners: The Best Way to Learn

    Learning Python can be difficult. You can spend time reading a textbook or watching videos, but then struggle to actually put what you've learned into practice. Or you might spend a ton of time learning syntax and get bored or lose motivation. How can you increase your chances of success? By building Python projects. That way you're learning by actually doing what you want to do! When I was learning Python, building projects helped me bring together everything I was learning. Once I started building projects, I immediately felt like I was making more progress.

  • PyCon 2019: The People of PyCon

    I can’t tell you how amazing it was to meet the individuals I read, listen to, or who make the tools I use. I was so happy to meet the authors that helped me to grow over the last few years, especially Dan Bader, Peter Baumgartner, Matt Harrison, Reuven Lerner, Harry Percival , and Lacey Williams Henschel. I love podcasts, so it was wonderful to meet Michael Kennedy and Brian Okken in person. And I was happy to meet Paul Ganssle, Russell Keith-Magee, Barry Warsaw, and other maintainers and contributors. It was a delight to meet Bob Belderbos and Julian Sequeira from PyBites.

  • Find the first non-consecutive number with Python

    Your task is to find the first element of an array that is not consecutive. E.g. If we have an array [1,2,3,4,6,7,8] then 1 then 2 then 3 then 4 are all consecutive but 6 is not, so that’s the first non-consecutive number. If the whole array is consecutive then return None.

  • Perceiving Python programming paradigms

    Early each year, TIOBE announces its Programming Language of The Year. When its latest annual TIOBE index report came out, I was not at all surprised to see Python again winning the title, which was based on capturing the most search engine ranking points (especially on Google, Bing, Yahoo, Wikipedia, Amazon, YouTube, and Baidu) in 2018.

OSI Announces Appointment of New Board Directors

The Open Source Initiative (OSI) is pleased to announce the appointments of Deb Bryant and Tracy Hinds to fill the two vacant seats on the OSI Board of Directors. Their terms will begin immediately and run through October 2021. We hope you will join us in welcoming both to the OSI. Deb Bryant is returning to the OSI Board after spending several years away. After spending her days as the Senior Director of the Open Source Programs Office at Red Hat, Deb volunteers for open source organizations and supports the open source community. Bryant is passionate about open and transparent governments, bringing open source technology and ideas into the public sector. Tracy Hinds has an impressive history of managing development, operations, and growth for non-profit and for-profit organizations. Previous Education and Community Manager as well as Board Director of the OpenJS(formerly Node.js) Foundation, Hinds now works as Head of Platform at Samsung NEXT and is the president of GatherScript, where she works to support startup engagement and community, inspired by her prior work as a web engineer, community builder, OSS advocate, and strategist. Read more

A Trustworthy Free/Libre Linux Capable 64bit RISC-V Computer

My goal is to build a Free/OpenSource computer from the ground up, so I may completely trust that the entire hardware+software system's behavior is 100% attributable to its fully available HDL (Hardware Description Language) and Software sources. More importantly, I need all the compilers and associated toolchains involved in building the overall system (from HDL and Software sources) to be Free/OpenSource, and to be themselves buildable and runnable on the computer system being described. In other words, I need a self-hosting Free/OpenSource hardware+software stack! Read more Also: COM offers 9th or 8th Gen Coffee Lake with 10Gbps USB 3.2 and up to 96GB RAM