Language Selection

English French German Italian Portuguese Spanish


GNOME Shell Hackfest 2019 (Report by Tobias Bernard)

Filed under

This October I attended the GNOME Shell Hackfest 2019 in the Netherlands. It was originally just planned as a small hackfest for core Shell developers, but then us designers decided to crash the party and it became a pretty big thing. In the end we were about 15 people from lots of different companies, including Red Hat, Endless, Purism, and Canonical. The venue was the Revspace hackerspace in Leidschendam, which is somewhere between the Hague and Leiden.

The venue was very cool, with plenty of hackerspace-y gadgets and a room with couches and a whiteboard, which was perfect for the design team’s planning sessions.

Read more

Programming: Git, Qt and Python

Filed under
  • Properly managing your .gitignore file

    There's not a single month where I don't have to explain this. I thought it'd be a good opportunity to write about this .gitignore file so everyone is up to date on this magic file.

  • The Qt Marketplace has landed!

    Today marks a very special day for us as we are finally able to present you the Qt Marketplace. We have been working very hard for the past year to build the marketplace and to onboard the first set of fantastic extensions with the help of our great community. Huge thanks for everyone involved in the process! To make this our joint effort for #Qt we would like to invite you for populating it with all the fantastic extensions including Qt Creator Plugins, tools and modules … that has been done with Qt.

  • The Qt Company Launches Qt Marketplace For Free + Paid Qt Extensions / Add-Ons

    While there is the KDE Frameworks that offers a wonderful set of complementary extensions/add-ons to the Qt5 tool-kit, for those looking for more Qt5 extensions, The Qt Company has launched "The Qt Marketplace" as a source for both free and paid extensions.

    Qt Marketplace offers extensions to add additional functionality around the tool-kit, new Qt Creator Plugins, tools, modules, and more. There are 100+ extensions at launch including Felgo that offers additional Qt APIs, Incredibuild as a network-based build system for Qt Creator, Froglogic to help with testing Qt programs, KDAB's KUESA workflow software, and various KDE add-ons.

  • Seems SimpleParse needs work for 3.8

    So as I work through all the OpenGLContext projects to get automatic (or near automatic) releasing, SimpleParse wound up failing on the 3.x branches with a weird xml test failure. But with Python 3.8 the C code just won't import at all. Seems there was a change in Python 3.8 where it does a load-time test for functions in the module and the hand-coded C module triggers it. So I'll have to spend some time on that before I can get the whole stack releasing.

  • PyCharm 2019.3 is out now

    Interactive widgets for Jupyter notebooks, MongoDB support, and code assistance for all Python 3.8 features. Download the new version now, or upgrade from within you IDE.

  • Pandas: How to Read and Write Files

    Pandas is a powerful and flexible Python package that allows you to work with labeled and time series data. It also provides statistics methods, enables plotting, and more. One crucial feature of Pandas is its ability to write and read Excel, CSV, and many other types of files. Functions like the Pandas read_csv() method enable you to work with files effectively. You can use them to save the data and labels from Pandas objects to a file and load them later as Pandas Series or DataFrame instances.

  • Casual Python, Part 11

Python Programming

Filed under
  • Mike Driscoll: PyDev of the Week: Bob Belderbos

    This week we welcome Bob Belderbos (@bbelderbos) as our PyDev of the Week! Bob is a co-founder of PyBites. Bob has also contributed to Real Python and he’s a Talk Python trainer. You can learn more about Bob by checking out his website or visiting his Github profile. Let’s spend some quality time getting to know Bob better!

    Can you tell us a little about yourself (hobbies, education, etc):

    I am a software developer currently working at Oracle in the Global Construction Engineering group. But I am probably better known as co-founder of PyBites, a community that masters Python through code challenges.

  • Spyder IDE: Variable Explorer improvements in Spyder 4

    Spyder 4 will be released very soon with lots of interesting new features that you'll want to check out, reflecting years of effort by the team to improve the user experience. In this post, we will be talking about the improvements made to the Variable Explorer.

    These include the brand new Object Explorer for inspecting arbitrary Python variables, full support for MultiIndex dataframes with multiple dimensions, and the ability to filter and search for variables by name and type, and much more.

    It is important to mention that several of the above improvements were made possible through integrating the work of two other projects. Code from gtabview was used to implement the multi-dimensional Pandas indexes, while objbrowser was the foundation of the new Object Explorer.

  • Django security releases issued: 2.2.8 and 2.1.15

    Since Django 2.1, a Django model admin displaying a parent model with related model inlines, where the user has view-only permissions to a parent model but edit permissions to the inline model, would display a read-only view of the parent model but editable forms for the inline.

    Submitting these forms would not allow direct edits to the parent model, but would trigger the parent model's save() method, and cause pre and post-save signal handlers to be invoked. This is a privilege escalation as a user who lacks permission to edit a model should not be able to trigger its save-related signals.

    To resolve this issue, the permission handling code of the Django admin interface has been changed. Now, if a user has only the "view" permission for a parent model, the entire displayed form will not be editable, even if the user has permission to edit models included in inlines.

    This is a backwards-incompatible change, and the Django security team is aware that some users of Django were depending on the ability to allow editing of inlines in the admin form of an otherwise view-only parent model.

  • Guidelines for BangPypers Dev Sprints

    How do you get started on open source programming? How can you contribute to that framework you’ve been itching to add an extra feature to? How do you get guidance and get help pushing your changes to merge upstream?

    If you’ve wondered on the above at least once, then you’re in dire need to attend one of our dev sprints.

  • Trey Hunner: Cyber Monday Python Sales

    Python Morsels is my weekly Python skill-building service.

    I’m offering something sort of like a “buy one get one free” sale this year.

    You can pay $200 to get 2 redemption codes, each worth 12 months of Python Morsels.

    You can use one code for yourself and give one to a friend. Or you could be extra generous and give them both away to two friends. Either way, 2 people are each getting one year’s worth of weekly Python training.

    You can find more details on this sale here.

Getting a big scientific prize for open-source software

Filed under

It is a great honor, because the selection was made by the members of the Académie des Sciences, very accomplished scientists with impressive contributions to science. The “Académie” is the hallmark of fundamental academic science in France. To me, this prize is also symbolic because it recognizes an open view of academic research and transfer, a view that sometimes felt as not playing according to the incentives. We started scikit-learn as a crazy endeavor, a bit of a hippy science thing. People didn’t really take us seriously. We were working on software, and not publications. We were doing open source, while industrial transfer is made by creating startups or filing patents. We were doing Python, while academic machine learning was then done in Matlab, and industrial transfer in C++. We were not pursuing the latest publications, while these are thought to be research’s best assets. We were interested in reaching out to non experts, while partners considered as interesting have qualified staff.

Read more

Programming Leftovers

Filed under
  • GDB Adds Multi-Threaded Symbol Loading For Faster Debugging Performance

    GDB can now handle multi-threaded symbol loading to yield better performance on today's multi-core systems. This feature is still in development/testing so for now is disabled by default but can be done by setting worker-threads to "unlimited" rather than the default value of 0. The worker-threads tunable controls the number of worker threads that can be used by GDB and is currently used for demangling the names of linker symbols.

  • What Eats Your Programming Time

    ActiveState has published the results of its 2019 Developer Survey with the title "Open Source Runtime Pains". It provides interesting insights into the challenges faced by coders when working with open source runtimes.

    "Coder" used here embraces a wide spectrum of IT jobs such as developers, engineers, data scientists, Q&A, etc. Specifically out of the 1250 survey takers, 65.4% were professional developers, 15.3% were hobbyists, 10.2% students with 9.1% being "others".

  • #100DaysOfCode, Day 011 – Quick and Dirty Web Page Download

    Watched another Corey Schafer video on how to scrape web pages.
    Thought that would be handy in my image from a web page download project.
    Corey’s an awesome teacher. The video was fun and it taught me lots.

    Then started hacking away at my little project.
    And then realised that the site has rss feeds.
    I could just process them instead of scraping a page.
    Went looking for a quick way to do that.
    Found the Universal Feed Parser.

Python Leftovers

Filed under
  • Data Science and Star Science

    I recently got a review copy of Statistics, Data Mining, and Machine Learning in Astronomy. I’m sure the book is especially useful to astronomers, but those of us who are not astronomers use it as a survey of data analysis techniques, especially using Python tools, where all the examples happen to come from astronomy. It covers a lot of ground and is pleasant to read.

  • The 30 Best Python Courses and Certifications in 2019

    Python is one of the most popular programming languages in our modern time. With a deep observation, you will find out that the number of Python developers exceeds the number of other developers by a difference of millions. Due to its rapid growth, many online platforms are offering both free and paid Python online courses. If you are lately thinking of learning python or you are someone who wants to extend your skillset of python, you are just in luck.

  • Tryton News: Newsletter December 2019

    When the shipment tolerance is exceeded, in the error message we now show the quantities involved so that the user understands the reason for the error and can then adjust them as required.

    The asset depreciation per year now uses a fixed year of 365 days. This prevents odd calculations when leap years are involved.

KF6 Sprint in Berlin

Filed under

Last week I arrived on a rainy Thursday evening in Berlin to attend the KDE Frameworks Kickoff sprint. The next three days were spent with discussions and ideas about the future of the libraries that are the base of most of the software of the KDE Community.

After arriving at MBition GmbH on Friday we started with reviewing the policies that were in place the last few years for KDE Frameworks 5. This includes for example the release model or on which Qt version to depend. After lunch David Edmundson and Eike Hein gave talks about the KDE community in general and about the advantages using KDE Frameworks libraries can bring to the employees at MBition. In the afternoon that the discussion switched from the past to the future and our goals and design principles that we have in mind for KDE Frameworks 6. Later we already outlined problems with specific frameworks and how our goals will impact them.

After a needed dose of sleep Saturday started right where Friday left off. We split in small groups to investigate how our design goals (further simplification of dependencies, seperation of UI and logic and seperation of framework and implementation) would influence each library and what has to be done to achieve those goals. To this end each group discussed a single library at a time and after eight libraries in total the results were presented to the whole group. For this we started with the Tier 3 Frameworks which have the most complicated dependencies (Tier 1 Frameworks only depend on Qt).

Read more

Programming: C++ Ranges and Views. picolibc-float, Python Bits

Filed under
  • A beginner's guide to C++ Ranges and Views.

    C++ Ranges are one of the major new things in C++20 and “views” are a big part of ranges. This article is a short introduction for programmers that are new to C++ Ranges.

  • Keith Packard: picolibc-float

    Smaller embedded processors may have no FPU, or may have an FPU that only supports single-precision mode. In either case, applications may well want to be able to avoid any double precision arithmetic as that will drag in a pile of software support code. Getting picolibc to cooperate so that it doesn't bring in double-precision code was today's exercise.

  • First Stack Buffer Overflow to modify Variable
  • Test and Code: 95: Data Science Pipeline Testing with Great Expectations - Abe Gong

    Data science and machine learning are affecting more of our lives every day. Decisions based on data science and machine learning are heavily dependent on the quality of the data, and the quality of the data pipeline.

    Some of the software in the pipeline can be tested to some extent with traditional testing tools, like pytest.

    But what about the data? The data entering the pipeline, and at various stages along the pipeline, should be validated.

    That's where pipeline tests come in.

    Pipeline tests are applied to data. Pipeline tests help you guard against upstream data changes and monitor data quality.

    Abe Gong and Superconductive are building an open source project called Great Expectations. It's a tool to help you build pipeline tests.

    This is quite an interesting idea, and I hope it gains traction and takes off.

  • PyOpenGL 3.1.4 is Out

    So I just went ahead and pulled the trigger on getting PyOpenGL and PyOpenGL Accelerate 3.1.4 out the door. Really, there is little that has changed in PyOpenGL, save that I'm actually doing a final (non alpha/beta/rc) release. The last final release having been about 5.5 years ago if PyPI history is to be believed(!)

  • Weekly Python StackOverflow Report: (ccv) stackoverflow python report

Games and Programming: Epic Games, Godot, Haskell and Python

Filed under
  • Epic Games have awarded the FOSS game manager Lutris with an Epic MegaGrant

    The Lutris team announced yesterday that Epic Games have now awarded them a sum of money from the Epic MegaGrants pot.

    In the Patreon post, the Lutris team announced they've been awarded $25,000. While this might be quite a surprise to some, Tim Sweeney the CEO of Epic Games, did actually suggest they apply for it which we covered here back in April. To see it actually happen though, that's seriously awesome for the team building this free and open source game manager.

  • Play-ing with Godot

    I’ve finally come to a point where I have a project that is useful, and at a good enough quality (anyone with graphics skills who wants to help?) to be shared with the broader world: Mattemonster. What I’m trying to say is that I just went through the process of publishing a Godot app to the Google Play store.

    There is already good documentation for how you export a Godot app for Android, and detailed guides how to publish to Google Play. This blog is not a step by step tutorial, but instead mentioning some of the things I learned or noticed.

    First of all, when setting up the Android tooling, you usually have an android-tools package for your distro. This way, you don’t have to install Android Studio provided by Google.

    The configuration settings that you use to export your app goes into the export_presets.cfg file. Once you put the details for your release key in, you should avoid storing this file in a public git, as it contains sensitive data. But even before then, it contains paths that are local to your machine, so I would recommend not storing it in a public git anyway, as it makes merging with others painful.


  • Haskell
  • Python 3.7.5 : Script install and import python packages.

    This script will try to import Python packages from a list.
    If these packages are not installed then will be installed on system.

Python Leftovers

Filed under
  • Unit Testing in Python with Unittest

    In almost all fields, products are thoroughly tested before being released to the market to ensure its quality and that it works as intended.

    Medicine, cosmetic products, vehicles, phones, laptops are all tested to ensure that they uphold a certain level of quality that was promised to the consumer. Given the influence and reach of software in our daily lives, it is important that we test our software thoroughly before releasing it to our users to avoid issues coming up when it is in use.

    There are various ways and methods of testing our software, and in this article we will concentrate on testing our Python programs using the Unittest framework.

  • python-gnuplotlib knows about multiplots

    gnuplotlib and numpysane are becoming mature (i.e. I use them all the time, have done that for a while, and they work very well), so I'm going to start doing some proselytizing on this front. I want to do a talk in the near future, and looking forward to that, I'm going to expand the docs, and I'm implementing some long-envisioned-but-never-completed features. The first one of these is now complete: multiplot support for gnuplotlib.

    Gnuplot multiplots are a way to create more than one plot in a single window (or hardcopy). These are a bit of a corner case, and I've been mostly getting by without ever using these, but sometimes they're really nice.

  • #100DaysOfCode, Day 009 – The Collections Module

    I wanted confirmation of my thought process, and realised that if I was going to figure out the code itself, this would take much, much longer.
    Besides, writing Python will come to me if I stick with this as I have been doing, so no guilt about copying code.

Syndicate content

More in Tux Machines

Type Title Author Replies Last Postsort icon
Story First Look: Ubuntu Cinnamon, Beautiful Remix Worthy of Becoming Official Flavor Rianne Schestowitz 09/12/2019 - 6:22pm
Story New Linux Kernel Update for Red Hat Enterprise Linux 7 & CentOS 7 Fixes Two Bugs Rianne Schestowitz 09/12/2019 - 6:20pm
Story Slimbook & Kubuntu - Combat Report 11 Rianne Schestowitz 09/12/2019 - 6:13pm
Story What Free Software, FOSS, and Open Source Share in Common Rianne Schestowitz 09/12/2019 - 6:10pm
Story Fedora and Red Hat: Linux 5.4, Fedora Respins, Containers and Red Hat Integration Roy Schestowitz 09/12/2019 - 5:54pm
Story today's howtos Roy Schestowitz 09/12/2019 - 5:43pm
Story The Ubuntu 20.04 LTS Pre-release Survey Roy Schestowitz 2 09/12/2019 - 5:28pm
Story Red Hat, IBM and Fedora's Kernel Roy Schestowitz 1 09/12/2019 - 5:21pm
Story Use the Fluxbox Linux desktop as your window manager Roy Schestowitz 09/12/2019 - 5:18pm
Story Software: Deb-pacman, Kiwi TCMS and Curl Roy Schestowitz 09/12/2019 - 5:12pm