Language Selection

English French German Italian Portuguese Spanish

Development

Programming: GNU, Git, Perl, Python and Django

Filed under
Development
  • Experimental Support For C++20 Coroutines Has Landed In GCC 10

    As of this morning experimental support for C++20 coroutines has been merged into the GCC 10 compiler!

    Coroutines allow a function to have its execution stopped/suspended and then to be resumed later. Coroutines is one of the big features of C++20. Sample syntax and more details on C++ coroutines can be found at cppreference.com.

    Coroutines support for GCC has been under development for months and now as a late addition to GCC 10 is the experimental implementation.

  • GNU Binutils 2.34 Branched - Bringing With It "debuginfod" HTTP Server Support

    With GNU Binutils 2.34 comes debuginfod support, which is the HTTP server catching our eye while the debuginfod server is distributed as part of the latest elfutils package. This isn't for a general purpose web server thankfully but is an HTTP server for distributing ELF/DWARF debugging information and source code. With debuginfod enabled, Binutils' readelf and objdump utilities can query the HTTP server(s) for debug files that cannot otherwise be found. Enabling this option requires building Binutils using --with-debuginfod.

  • Announcing git-cinnabar 0.5.3

    Git-cinnabar is a git remote helper to interact with mercurial repositories. It allows to clone, pull and push from/to mercurial remote repositories, using git.

  • Steve Kemp: Announce: github2mr

    myrepos is an excellent tool for applying git operations to multiple repositories, and I use it extensively.

    I've written several scripts to dump remote repository-lists into a suitable configuration format, and hopefully I've done that for the last time.

  • Term::ANSIColor 5.01

    This is the module included in Perl core that provides support for ANSI color escape sequences.

    This release adds support for the NO_COLOR environment variable (thanks, Andrea Telatin) and fixes an error in the example of uncolor() in the documentation (thanks, Joe Smith). It also documents that color aliases are expanded during alias definition, so while you can define an alias in terms of another alias, they don't remain linked during future changes.

  • Python 3.7.5 : Django security issues - part 001.

    Django like any website development and framework implementation requires security settings and configurations.
    Today I will present some aspects of this topic and then I will come back with other information.

  • How to display flash messages in Django templates

    Sometimes we need to show the one-time notification, also known as the flash messages in our Django application. For this Django provides the messages framework. We are going to use the same here.

    To show flash messages in the Django application, we will extend our previous project Hello World in Django 2.2. Clone the git repository, check out the master branch and set up the project on your local machine by following the instructions in the README file.

Python Programming Leftovers

Filed under
Development
  • JavaScript destructuring like Python kwargs with defaults

    I'm sure it's been blogged about a buncha times before but, I couldn't find it, and I had to search too hard to find an example of this.

  • Create the input text box with tkinter

    In the previous post, I have written a python program to create the database, earning table as well as input the first row of data into the earning table. In this chapter, I will create a simple UI to accept the user’s input so we do not need to hardcoded the values into the SQL query. I will leave the SQL commit code to the next chapter, we will only create a simple input’s UI in this chapter first.

    A description box and the earning box of the Earning Input user interface
    As you can see I will create the above simple UI with tkinter which can then be further upgraded in the future to include more stuff.

  • Start using 2FA and API tokens on PyPI

    To increase the security of PyPI downloads, we have added two-factor authentication (2FA) as a login security option, and API tokens for uploading packages. This is thanks to a grant from the Open Technology Fund, coordinated by the Packaging Working Group of the Python Software Foundation.

    If you maintain or own a project on the Python Package Index, you should start using these features. Click "help" on PyPI for instructions. (These features are also available on Test PyPI.)

  • How to Build RESTful APIs with Python and Flask

    For some time now I have been working with Python but I just got to try out Flask recently, so I felt it would be nice to write about it. In this aritcle I'll discuss about Flask and how you can use it to build RESTfull APIs.

    Flask is a Python-based microframework that enables you to quickly build web applications; the “micro” in microframework simply means Flask aims to keep the core simple but extensible.

  • Reading Binary Data with Python

    When you deal with external binary data in Python, there are a couple of ways to get that data into a data structure. You can use the ctypes module to define the data structure or you can use the struct python module.

    You will see both methods used when you explore tool repositories on the web. This article shows you how to use each one to read an IPv4 header off the network. It’s up to you to decide which method you prefer; either way will work fine.

Programming: Rust, C and Python

Filed under
Development
  • Announcing Better Support for Fuzzing with Structured Inputs in Rust

    Today, on behalf of the Rust Fuzzing Authority, I’d like to announce new releases of the arbitrary, libfuzzer-sys, and cargo fuzz crates. Collectively, these releases better support writing fuzz targets that take well-formed instances of custom input types. This enables us to combine powerful, coverage-guided fuzzers with smart test case generation.

    Install or upgrade cargo fuzz with:

    cargo install --force cargo-fuzz
    To upgrade your fuzz targets, bump your libfuzzer-sys dependency to 0.2.0 on crates.io. That should be all that’s needed for most cases. However, if you were already using Arbitrary inputs for your fuzz target, some changes will be required. See the upgrading fuzz targets section below for more details.

  • C vs. Rust: Which to choose for programming hardware abstractions

    Rust is an increasingly popular programming language positioned to be the best choice for hardware interfaces. It's often compared to C for its level of abstraction. This article explains how Rust can handle bitwise operations in a number of ways and offers a solution that provides both safety and ease of use.

  • Leysin Winter sprint 2020: Feb 28 - March 7th

    The next PyPy sprint will be in Leysin, Switzerland, for the fourteenth time. This is a fully public sprint: newcomers and topics other than those proposed below are welcome.

  • Use this Python script to find bugs in your Overcloud

    OpenStack stores and manages a bunch of log files on its Overcloud nodes and Undercloud host. Therefore, it's not easy to use OSP log files to investigate a problem you're having, especially when you don't even know what could have caused the problem.

    If that's your situation, LogTool makes your life much easier! It saves you the time and work it would otherwise take to investigate the root cause manually. Based on a fuzzy string matching algorithm, LogTool provides all the unique error and warning messages that have occurred in the past. You can export these messages for a particular time period, such as 10 minutes ago, an hour ago, a day ago, and so on, based on timestamp in the log.

Programming: JetBrains, Git, Python and Perl

Filed under
Development
  • JetBrains’ New Font (Apparently) Makes Reading Code Easier

    A new free and open source monospace font has been released by software development powerhouse JetBrains.

    Their typographic creation is called (surprise) JetBrains Mono and, they claim, it makes reading code much kinder on the eyes.

    Admittedly it feels a bit like everyone has their own monospace font these days: IBM released ‘Plex’ in 2017; Microsoft has launched ‘Casacida; and even Ubuntu has its own one for when you need to get up close with the command line.

    But with JetBrains being — apologies in advance, you knew this obvious pun was coming — the brains behind some of the world’s best-loved development and code creation tools, it kinda makes sense for them to have their own one too, doesn’t it?

    And lo: the creation of JetBrains Mono.

  • 9 Best Free Git Clients

    Git is an open source distributed version control system which was originally designed by Linus Torvalds, the creator of Linux, in 2005 for Linux kernel development. This control system is widely used by the open source community, handling small to extremely large projects with an emphasis on speed and efficiency, but maintaining flexibility, scalability, and guaranteeing data integrity.

    Git is one of a number of open source revision control systems available for Linux. Other popular tools in this field include Subversion, Bazaar, Mercurial, Monotone, CVS, and SVN. However, Git is frequently regarded by many developers to be the finest version control tool available.

    There are two Git tools that are part of the main Git repository each designed for a different job. Git-gui is a Tcl/Tk-based graphical user interface that concentrates on commit generation and single file annotation. gitk is a repository browser that is also written in Tcl/tk. Whilst these two tools, used in conjunction, offer reasonable access to the power of Git, they lack integration, and functionality that other Git clients provide.

    The purpose of this article is to provide an insight into the best free open source Git clients that are available. We have covered the best graphical and console based clients available, so hopefully there will be something here of interest for anyone involved in the development of software projects.

    There are a large number of projects that use Git to aid their development. Notable examples include the Linux kernel, Eclipse, Wine, X.org, Ruby on Rails, ALSA, Bacula, Drupal, FreeRADIUS, Puppet, VLC, and many more.

  • Code a Boulder Dash mining game | Wireframe #30

    Learn how to code a simple Boulder Dash homage in Python and Pygame. Mark Vanstone shows you how. 

  • Mocking in Python

    The first mission is called “Univocalic davasaan” created by Phil15 and here you have to write a function named davasaan which calculates the integer division by 10, and make your code as short as possible.

    The second one is the “Tree Walker” mission created by quarkov where you are given a tree and a target and your task is to calculate the number of leaves or subtrees that are equal to the target.

  • Python Bytes: #164 Use type hints to build your next CLI app
  • Talk Python to Me: #247 Solo maintainer of open-source in academia

    Do you run an open-source project? Does it seem like you never have enough time to support it? Have you considered starting one but are unsure you can commit to it? It's a real challenge.

    On this episode, we welcome back Philip Guo, who has been a solo maintainer of the very popular PythonTutor.com project for over 10 years. He has some non-traditional advice to keep your sanity and keep your project going while holding down a busy full-time job.

  • Shorewall 5.2.3.5 Released!

    Shorewall 5.2.3.5 is now available for download. Shorewall is a gateway/firewall configuration tool for GNU/Linux, written in Perl.

Programming: Rust, LLVM, COBOL and More

Filed under
Development
  • This Week in Rust 321

    Always wanted to contribute to open-source projects but didn't know where to start? Every week we highlight some tasks from the Rust community for you to pick and get started!

  • LLVM Developers Discuss Improved Decision Making Process

    LLVM project founder Chris Lattner has proposed a new decision making process for the LLVM compiler stack around new sub-project proposals, new social policies, changes to core infrastructure, and other key changes.

    Lattner is proposing a process similar to the Swift language's Evolution Process (to which Lattner has been involved with Swift), Rust's RFC process, Python PEP, and other similar processes for different programming languages. The motivation is to provide clearer steps for developers wishing to propose effectively fundamental changes to the project with no code owners. And, yes, there still is the LLVM Foundation for more project related matters where as the process changes here are technical focused.

  • LLVM 10 Adds Option To Help Offset Intel JCC Microcode Performance Impact

    Disclosed back in November was the Intel Jump Conditional Code Erratum that necessitated updated CPU microcode to mitigate and with that came with a nearly across the board performance impact. But Intel developers had been working on assembler patches for helping to reduce that performance hit. The GNU Assembler patches were merged back in December while now ahead of LLVM 10.0 that alternative toolchain has an option for helping to recover some of the lost performance.

    On the GNU side the exposed option is "-mbranches-within-32B-boundaries" for altering the handling of jump instructions to aide in reducing the performance hit from the Intel CPU microcode update for Skylake through Cascadelake. (More details in the original JCC article, which includes early benchmarks of the JCC impact and of the mitigated support that has been available within Intel's Clear Linux since the disclosure date.)

  • RcppRedis 0.1.10: Switch to tinytest

    Another minor release of RcppRedis just arrived on CRAN, following a fairly long break since the last release in October 2018.

    RcppRedis is one of several packages connecting R to the fabulous Redis in-memory datastructure store (and much more). RcppRedis does not pretend to be feature complete, but it may do some things faster than the other interfaces, and also offers an optional coupling with MessagePack binary (de)serialization via RcppMsgPack. The package has carried production loads for several years now.

    This release switches to the fabulous tinytest package, allowing for very flexible testing during development and deployment—three cheers for easily testing installed packages too.

  • Excellent Free Tutorials to Learn COBOL

    COBOL is an acronym which stands for Common Business-Oriented Language. The US Department of Defense, in a conference, formed CODASYL (Conference on Data Systems Language) to develop a language for meeting business data processing needs which is now known as COBOL.

    COBOL is a standard language that can be compiled and executed on various machines. It’s ideally suited for business-oriented applications as it can handle huge volumes of data. It provides numerous debugging and testing tools. COBOL is a structured language; it has different divisions, so it’s easy to debug. The language is not designed for writing systems programs.

    COBOL is one of the oldest computer languages.

  • Perl Weekly Challenge - 043
  • Automating Helm deployments with Bash

    Some of our applications are hosted in a Kubernetes cluster, and we use GitLab Continuous Integration (CI) to automate deployments and Helm 2 to deploy our applications. Helm charts enable the storage of templates of Kubernetes object YAML files with variables that can be programmatically set from command-line arguments passed when the chart is used during deployments. This allows us to store critical secrets in GitLab-protected environment variables or in Hashicorp Vault and use them within the CI deployment job.

    [...]

    The script performs all tasks required to deploy a Helm chart for an application to Kubernetes and waits for the deployment to be ready using kubectl and Helm. Helm runs with a local Tiller installation instead of running Tiller in the Kubernetes cluster. The Kubernetes HELM_USER and HELM_PASSWORD are used to log into the Kubernetes CLUSTER_SERVER and PROJECT_NAMESPACE. Tiller is started, Helm is initialized in client-only mode, and its repo is updated. The template is linted with Helm to ensure that syntax errors have not been accidentally committed. The template is then deployed in declarative mode, using helm upgrade --install. Helm waits for the deployment to be ready using the --wait flag.

  • Niko Matsakis: Async Interview #4: Florian Gilcher

    Hello! For the latest async interview, I spoke with Florian Gilcher (skade). Florian is involved in the async-std project, but he’s also one of the founders of Ferrous Systems, a Rust consulting firm that also does a lot of trainings. In that capacity, he’s been teaching people to use async Rust now since Rust’s 1.0 release.

    [...]

    We discussed the futures crate for a while. In particular, the question of whether we should be “stabilizing” traits by moving them into the standard library, or whether we can use the futures crate as a “semi-stable” home. There are obviously advantages either way.

    On the one hand, there is no clearer signal for stability than adding something to libstd. On the other, the future crate facade gives a “finer grained” ability to talk about semver.

    One thing Florian noted is that the futures crate itself, although it has evolved a lot, has always maintained an internal consistency, which is good.

    One other point Florian emphasized is that people really want to be building applications, so in some way the most important thing is to be moving towards stability, so they can avoid worrying about the sand shifting under their feet.

  • Protect your veggies from hail with a Raspberry Pi Zero W

    Tired of losing vegetable crops to frequent summertime hail storms, Nick Rogness decided to build something to protect them. And the result is brilliant!

Python Programming

Filed under
Development
  • Airflow Case Study: ProofPort

    Airflow is an open source tool under the Apache Software Foundation developed by Airbnb. Simply put, Airflow is a workflow orchestration platform. Even so, it is most commonly used for data processing (ETL). It has been very successful and has become the industry standard for batch data processing.

  • Python pip
  • Reuven Lerner made one of the first 100 websites... ever... and other things I learned recording his DevJourney
  • Create a daily earning database with Python SQLite

    In this chapter, we will start a project which will then record my daily earning in the future. We will create the earing table and populate the first row of data into that table. I can then view my earning table using DB Browser which is a browser uses to create, edit, plot and view the SQLite table’s items.

    First of all, let us go to the homepage of DB Browser to download DB Browser through this link. I will temporarily use this tool to view my SQLite table but my final objective is to create my own SQLIte table viewer using the tkinter module. I will go phase by phase to accomplish my objective.

  • Build REST API with Flask & SQLAlchemy

    Flask is a great framework that enables you to build web applications quickly with Python. It's fast, small, and fun to work with. In this tutorial, we're going to build a RESTful API with Flask framework, and some other supporting tools.

    The objective of this tutorial is to understand the concept of building a Flask server from the ground up, learn how to commuticate with SQL databases via object-relational mapper, as well as design a RESTful API with object-oriented design pattern.

  • User Accounts With django-allauth - Building SaaS #41

    In this episode, we added django-allauth to create accounts that default to email instead of using usernames. We added the package, configured some templates, and created tests.

    We continued to look at Will Vincent’s django-allauth post on creating user accounts with email and passwords.

    django-allauth let’s us swap out username and email so that users won’t need to create a username, which is the behavior that I want for this service.

  • Variable-Length Arguments in Python with *args and **kwargs

    Some functions have no arguments, others have multiple. There are times we have functions with arguments we don't know about beforehand. We may have a variable number of arguments because we want to offer a flexible API to other developers or we don't know the input size. With Python, we can create functions to accept any amount of arguments.

    In this article, we will look at how we can define and use functions with variable length arguments. These functions can accept an unknown amount of input, either as consecutive entries or named arguments.

  • Some median Python NaNsense

    Anybody who has ever taken a numerical analysis course understands that floating-point arithmetic on computers is a messy affair. Even so, it is easy to underestimate just how messy things can be. This topic came to the fore in an initially unrelated python-ideas mailing-list thread; what should the Python statistics module do with floating-point values that are explicitly not numbers?
    Kemal Diri doubtless did not mean to start a massive thread with this request to add a built-in function to the language to calculate the average of the values in a list. That request was quickly dismissed, but the developers went on to the seemingly strange behavior of the statistics module's median() function when presented with floating-point not-a-number values.

  • Toward a conclusion for Python dictionary "addition"

    One of Guido van Rossum's last items of business as he finished his term on the inaugural steering council for Python was to review the Python Enhancement Proposal (PEP) that proposes a new update and union operators for dictionaries. He would still seem to be in favor of the idea, but it will be up to the newly elected steering council and whoever the council chooses as the PEP-deciding delegate (i.e. BDFL-Delegate). Van Rossum provided some feedback on the PEP and, inevitably, the question of how to spell the operator returned, but the path toward getting a decision on it is now pretty clear.

    [...]

    At the beginning of December, Van Rossum posted his review of the PEP to the python-ideas mailing list. He encouraged the authors (Brandt Bucher and Steven D'Aprano) to request a BDFL-Delegate for the PEP from the steering council, noting that he would not be on the council after the end of the year. D'Aprano indicated that he would be doing so. Apparently that happened, because, tucked away in the notes from the November and December steering council meetings was a mention that a BDFL-Delegate had been assigned—none other than Van Rossum himself.

    In his review, he comes down strongly in favor of | and |= and had some other minor suggestions. He said: "All in all I would recommend to the SC to go forward with this proposal, targeting Python 3.9, assuming the operators are changed to | and |=, and the PEP is brought more in line with the PEP editing guidelines from PEP 1 and PEP 12." Given that, and that he is the decision maker for the PEP, it would seem to be smooth sailing for its acceptance.

    That did not stop some from voicing objections to the PEP as a whole or the spelling of the operator in particular, of course, though the discussion was collegial as is so often the case in the Python world. Van Rossum thought that | might be harder for newcomers, but was not particularly concerned about that: "I don't think beginners should be taught these operators as a major tool in their toolbox". But Ryan Gonzalez thought that beginners might actually find that spelling easier because of its congruence to the Python set union operator.

    Serhiy Storchaka is not a fan of the PEP in general, but believes that | is a better choice than +. He thinks there are already other ways to accomplish the same things that the operators would provide and that their use may be error-prone. He also had a performance concern, but Brett Cannon pointed out that it might only exist for CPython; PyPy and other Pythons might not have the same performance characteristics.

Events: FSF/LibrePlanet 2020 and Free Software Foundation Europe/Perl/Raku

Filed under
Development
GNU
  • First LibrePlanet 2020 keynote announcement: Internet Archive founder Brewster Kahle

    The Free Software Foundation (FSF) today announced Brewster Kahle as its first keynote speaker for LibrePlanet 2020. The annual technology and social justice conference will be held in the Boston area on March 14 and 15, 2020, with the theme "Free the Future."

  • Call for FOSDEM 2020 Booth volunteers

    This year we've got one of the high-traffic locations, on the ground floor where Free Software Foundation Europe set up last year, right next to the stairway to *all* the dev rooms. So we're looking for volunteers to come and talk about both Perl and Raku at FOSDEM 2020 in Brussels. If I haven't already talked to you, please email me at drforr [at] pobox (dot) com and give me an idea of your availability and what you'd want to do. We've made arrangements for the usual booth swag, and will have pamphlets to hand out and books to sell on both Raku and Perl.

Programming: GNOME, RQuantLib, Skills and Wombat Dressing Room

Filed under
Development
  • Federico Mena-Quintero: Exposing C and Rust APIs: some thoughts from librsvg

    Librsvg exports two public APIs: the C API that is in turn available to other languages through GObject Introspection, and the Rust API.

    You could call this a use of the facade pattern on top of the rsvg_internals crate. That crate is the actual implementation of librsvg, and exports an interface with many knobs that are not exposed from the public APIs. The knobs are to allow for the variations in each of those APIs.

    This post is about some interesting things that have come up during the creation/separation of those public APIs, and the implications of having an internals library that implements both.

  • Dirk Eddelbuettel: RQuantLib 0.4.11: More polish

    New year, new RQuantLib! A new release 0.4.11 of RQuantLib arrived overnight on CRAN; and a Debian upload will follow shortly.

    QuantLib is a very comprehensice free/open-source library for quantitative finance; RQuantLib connects it to the R environment and language.

    This version does three new things. First, we fixed an oversight on our end and now allow a null calendar (as the C++ API). Second, the package switched to tinytest as a few of my other packages have done, allowing for very flexible testing during development and deployment—three cheers for easily testing installed packages too. Third, and per a kind nag from Kurt Hornik I updated a few calls which the current QuantLib 1.17 marks as deprecated. That lead to a compile issue with 1.16 so the change is conditional in one part.

  • Top Skills In Demand For 2020 [Ed: One cannot properly study jobs in need based only on ads in a site owned and controlled by Microsoft]

    The start of the year, when it is traditional to come up with self-improving resolutions, is a good time to contemplate new job opportunities. So what are employers looking for in 2020? Here we have two lists of the most sought skills.

    The first thing to note is that both of them are biased and there is little common ground between them. The divergence is because they have been constructed with differing goals. As a jobs site Dice is on the look out for the terms that crop up in job postings while LinkedIn Learning is hoping to sign you (or your employer) up to its skill building courses which are provided by Lynda.com, the online learning platform which LinkedIn acquired in 2015.

  • Google open-sources tool to boost 2FA adoption in npm

    Google has open-sourced an npm publishing tool for heightened security across organizations? client libraries.

    The tool, Wombat Dressing Room, aims to reduce the security risks associated with the automation of npm publishing.

    ?On my team, a small number of developers manage over 75 Node.js libraries,? Benjamin Coe, developer engineer at Google, said in an announcement on Friday (January 10).

    ?We see automation as key to making this possible,? he said.

KDE Development: KDE PIM and KUserFeedback

Filed under
Development
KDE
  • November/December in KDE PIM

    Following Kévin here’s the summary of what happened around KDE PIM in the last two months. While this post got slightly delayed due to the holidays, work didn’t slow down at all. More than 1300 changes by 26 contributors landed in the KDE PIM repositories, and we got the 19.12.0 release out in December.

  • Jonathan Riddell: KUserFeedback 0.9.90 Beta Release

    KUserFeedback is a framework for collecting user feedback for applications via telemetry and surveys.

    The library comes with an accompanying control and result UI tool.

Python Programming Leftovers

Filed under
Development
  • The 9th Annual PyLadies Auction

    If you haven't attended one previously, you're missing out! There's charity. There's competition. There's laughter, food, and drinks. There are auction paddles flying in the air as people graciously give money where it has impact.

    The PyLadies auction holds a special place in my heart – I attended my first PyCon in 2015 thanks to financial aid from PyLadies. If you haven't heard of PyLadies before, we are an international mentorship group with a focus on helping more women become active participants and leaders in the Python open-source community. Last year, the auction raised over $44,000 from the 58 items auctioned off.

  • A Primer on the Python Game Framework

    Computer games are a great way to introduce people to coding and computer science. Since I was a player in my youth, the lure of writing video games was the reason I learned to code. Of course, when I learned Python, my first instinct was to write a Python game.

    While Python makes learning to code more accessible for everyone, the choices for video game writing can be limited, especially if you want to write arcade games with great graphics and catchy sound effects. For many years, Python game programmers were limited to the pygame framework. Now, there’s another choice.

    The arcade library is a modern Python framework for crafting games with compelling graphics and sound. Object-oriented and built for Python 3.6 and up, arcade provides the programmer with a modern set of tools for crafting great Python game experiences.

  • Things You Need to Know Before Hiring Developers for Your Startup
  • More efficient way to sum a list comprehension

    List comprehensions in Python let you create a list declaratively, much like the way you would describe the set in English.

Syndicate content

More in Tux Machines

Type Title Author Replies Last Postsort icon
Story today's leftovers and howtos Roy Schestowitz 19/01/2020 - 9:46am
Story Proprietary Software and Openwashing Roy Schestowitz 19/01/2020 - 9:42am
Story What's your favorite Linux terminal trick? Rianne Schestowitz 19/01/2020 - 9:04am
Story One open source chat tool to rule them all Rianne Schestowitz 19/01/2020 - 9:02am
Story Android Leftovers Rianne Schestowitz 19/01/2020 - 8:33am
Story Programming: GNU, Git, Perl, Python and Django Roy Schestowitz 19/01/2020 - 5:26am
Story KDE: Videos, Plasma and Itinerary Roy Schestowitz 19/01/2020 - 5:20am
Story Mozilla: Conda, Firefox 73 and Mozilla Weighs in on Google v Oracle (SCOTUS) Roy Schestowitz 9 19/01/2020 - 5:18am
Story Windows 7 Support Ended. Here’s You Should Do. arindam1989 19/01/2020 - 4:01am
Story Android Leftovers Rianne Schestowitz 1 18/01/2020 - 9:43pm