Language Selection

English French German Italian Portuguese Spanish

Development

Qt Creator 4.10 Beta2 released

Filed under
Development
KDE

We are happy to announce the release of Qt Creator 4.10 Beta2 !

Most notably we fixed a regression in the signing options for iOS devices, and that the “Build Android APK” step from existing Android projects was not restored.
As always you find more details in our change log.

Read more

Shows: Test and Code, Bad Voltage, Ubuntu Podcast, Choose Linux and BSD Now 304

Filed under
Development
GNU
Linux
BSD
  • Test and Code: 79: Fixing misinformation about software testing

    Some information about software testing is just wrong.
    I'm not talking about opinions. I have lots of opinions and they differ from other peoples opinions. I'm talking about misinformation and old information that is no longer applicable.

    I've ran across a few lateley that I want to address.

  • 2×54: Well Baffled

    [00:27:50] This past weekend has seen a bit of dancing about whether Ubuntu will drop 32-bit libraries from the archive, ending up with a statement from Canonical about it saying they aren’t going to (and Valve have responded saying that they’ll continue to support Steam on Ubuntu, although that was after we recorded the show)

  • Bad Voltage Season 2 Episode 54 Has Been Released:
  • Ubuntu Podcast from the UK LoCo: S12E12 – Nemesis

    This week we’ve been at the Snapcraft Summit in Montreal, we bring you some command line love and go over all your feedback.

    It’s Season 12 Episode 12 of the Ubuntu Podcast! Alan Pope, Mark Johnson and Martin Wimpress are connected and speaking to your brain.

  • Regolith, Rosa, and Antsy Alien Attack | Choose Linux 12

    Two new hosts join Joe to talk about a nice i3 implementation and an amazing arcade game written in Bash.

    Plus a new segment called Distrohoppers, and a useful hidden feature of GNOME.

  • Prospering with Vulkan | BSD Now 304

    DragonflyBSD 5.6 is out, OpenBSD Vulkan Support, bad utmp implementations in glibc and FreeBSD, OpenSSH protects itself against Side Channel attacks, ZFS vs OpenZFS, and more.

Programming Leftovers (Mostly Python)

Filed under
Development
  • Top 7 Reasons Why Python Should Be Your Next Programming Language
  • OpenAssessIt Toolkit helps improve website accessibility

    Unfortunately, because of poor website design decisions, a lot of content on the web (such as PDFs) is not accessible to people with hearing, sight, mobility, neurological, and other disabilities, and as the population rapidly ages, accessibility-related problems will increase.

    Fortunately, many businesses, governments, and other organizations are taking strides to remedy inaccessible websites. There are two paths to achieving accessibility: fixing existing websites and doing the right things when sites are created. Fixing a website that has been in use for many years—with hundreds of pages, posts, images, and PDFs—can be a daunting task. Every element must be scrutinized for problems, and sometimes the fix is not obvious nor easy to accomplish.

    There are many tools available to check and fix website accessibility issues, including OpenAssessIt Toolkit, a new open source tool developed by Joel Crawford-Smith, a self-described "relentless web accessibility fanatic" and "cat aficionado."

    OpenAssessIt converts Chrome Lighthouse files into visual, human-readable web accessibility assessments. Lighthouse audits websites for accessibility issues and reports its findings as text that can be viewed in the browser or exported as a JSON file with valuable hidden data.

    OpenAssessIt consumes Lighthouse's data-rich JSON files and outputs them in Markdown, which is easy for people to read and edit. It also takes screenshots of each failing element and provides suggestions on how to fix each issue. Automated tools help detect accessibility issues, but a human must evaluate the validity and seriousness of each problem. "Seeing the issues visually [is] a good tool for training and development," Joel says.

  • PyCharm 2019.2 EAP 5

    Despite the very sunny weather in Europe tempting us to go outside, we’ve succeeded in getting a build out for you this week. We’d appreciate it if you were to download it from our website.

  • Have you tried out Thonny?

    Today I have just installed a new Python IDE on my computer, it really looks simple but there are a lot of goodies. First of all, if you have not yet installed Thonny, you can download it from this link.

    As you can see from above, this IDE is super easy to use, you write the code on the editor, then after you have run the program, you can view the value and the address of the variable as well as a function under the heap panel. You can also step through each line of code of the program while debugging your program. If this is your first time learning Python then this IDE will get you started.

  • Little Trouble in Big Data – Part 2

    In the first blog in this series, I showed how we solved the original problem of how to use mmap() to load a large set of data into RAM all at once, in response to a request for help from a bioinformatics group dealing with massive data sets on a regular basis. The catch in our solution, however, was that the process still took too long. In this blog, I describe how we solve this, starting with Step 3 of the Process I introduced in Blog 1:

  • Building Standalone Python Applications with PyOxidizer

    Python application distribution is generally considered an unsolved problem. At their PyCon 2019 keynote talk, Russel Keith-Magee identified code distribution as a potential black swan - an existential threat for longevity - for Python. In their words, Python hasn't ever had a consistent story for how I give my code to someone else, especially if that someone else isn't a developer and just wants to use my application. I completely agree. And I want to add my opinion that unless your target user is a Python developer, they shouldn't need to know anything about Python packaging, Python itself, or even the existence of Python in order to use your application. (And you can replace Python in the previous sentence with any programming language or software technology: most end-users don't care about the technical implementation, they just want to get stuff done.)

    Today, I'm excited to announce the first release of PyOxidizer (project, documentation), an open source utility that aims to solve the Python application distribution problem! (The installation instructions are in the docs.)

  • PyOxidizer Can Turn Python Code Into .Exe File For Windows, MacOS, Linux

    Szorc says that an average computer user will be able to run the application without having to download the correct software libraries. This is because PyOxidizer produces binaries that embed Python. Hence users don’t need to install or know the language.

  • Stack Abuse: Text Generation with Python and TensorFlow/Keras

    Are you interested in using a neural network to generate text? TensorFlow and Keras can be used for some amazing applications of natural language processing techniques, including the generation of text.

    In this tutorial, we'll cover the theory behind text generation using a Recurrent Neural Networks, specifically a Long Short-Term Memory Network, implement this network in Python, and use it to generate some text.

More frequent Python releases?

Filed under
Development

Python has followed an 18-month release cycle for many years now; each new 3.x release comes at that frequency. It has worked well, overall, but there is interest in having a shorter cycle, which would mean that new features get into users' hands more quickly. But changing that longstanding cycle has implications in many different places, some of which have come up as part of a discussion on switching to a cycle of a different length.

Łukasz Langa, who is the release manager for the upcoming 3.8 release, as well as the manager for the date-to-be-determined release of 3.9, has proposed PEP 596 ("Python 3.9 Release Schedule (doubling the release cadence)"). As its name would imply, the PEP proposes halving the current release cycle to nine months, which would make the 3.9 release happen in June 2020. As described in PEP 569 ("Python 3.8 Release Schedule"), the Python 3.8 release is slated for October of this year; it is in beta at this point, so no new features can be added. The beta release also marks the start of development for the next release, so work on 3.9 has already begun. With that overlap, a nine-month cycle would actually allow seven or eight months for feature development and four or five months for shaking out the bugs from the first beta release on.

Read more

Also: 7 Python Function Examples with Parameters, Return and Data Types

Programming: GCC, Rust, Python and More

Filed under
Development
  • The Effort To Parallelize GCC With Threads Is Starting To Take Shape

    Back in April we wrote about a proposal for providing better parallelization within GCC itself to address use-cases such as very large source files. That effort was accepted as part of this year's Google Summer of Code and the student developer pursing this parallelization with threads has issued his first progress report.

    Giuliano Belinassi is the student developer working on parallelizing GCC with threads for GSoC 2019. He has been refactoring code needed to make this effort work out and so far is on track with his planned objectives for the period.

  • This Week In Rust: This Week in Rust 292

    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.

  • Developer-led Sales for Startups

    This blog post contains the slides along with a loose transcript from my talk on the promises and perils of developer-led sales as an early-stage company strategy for acquiring customers.

    I gave this talk remotely to Ubiquity.VC portfolio company founders and the Extended Team on June 26, 2019.

  • Logistic Regression In Python | Python For Data Science

    Logistic regression in Python is a predictive analysis technique. It is also used in Machine Learning for binary classification problems. In this blog we will go through the following topics to understand logistic regression in Python...

  • Programming language Python's 'existential threat' is app distribution: Is this the answer?

    Python might soon be the most popular programming language in the world, but it does have a weakness: there's no easy way to distribute Python apps as a simple executable or a program that people can run on their computers without knowing anything about Python.

    Szorc, who's been improving Firefox and Mozilla tools for the past decade, may have solved this distribution problem, which Australian programmer Russell Keith-Magee recently described as Python's potential "black swan" – a theory built around the idea that the realization of completely unexpected and extreme events can have an outsized impact on the future, yet seem obvious in hindsight.

    Besides the actual black swan discovered in Western Australia in the 17th century, the PC's popularity supposedly was not predicted by IBM's CEO in the 1940s, making it one too.

  • Episode #136: A Python kernel rather than cleaning the batteries?
  • Python is still not there yet

    I have been blogging about Python programming language for a while since 2017, the reason which I continue to write about this programing language is due to the popularity of this language in the programming languages world! At the moment Python is ranked mostly in the top three positions beginning at 2019 at both TIOBE Index and The PYPL PopularitY of Programming Language Index. Those impressive statistic figures from the above sites certainly suggest that Python is already the world number 1, and indeed there are a few reasons that will further solidify that claim. 1) The uncertainty of Java, which now requires the Java developer to pay for using the Java programming language. My Java knowledge has been stopped at Java 7 and goes no further than that because I simply can?t afford to pay such an expensive amount of fees just to use Java to create a free application or game for the computer users. Recently I have started to pick up Kotlin which is based on Java just in case I can?t use Java to develop Android application anymore without paying a fee in the future, but will Java ask for the fee from the Kotlin developer in the future as well? I have a feeling that the Android OS will see more issues in the near future. 2) The future of the C series languages depends on the windows application developer as well as the game developer. Just like Java, C type of programming language can run in all OS, ranging from Linux to Mac to Windows. But I have spotted 2 problems for series C, 1) for a game developer who uses the famous game engines such as Unity or Unreal, it will usually take a very long time to compile his c# or c++ programming code even with just a small changes, for those of you who have used C# to develop your Unity game before, how long will it takes for the Unity engine to recompile the C# code even just for a very small changes in your game code before you can see your game in action? After a few times using Unity to develop the game, I have now switched to Godot where the compile time is indeed very fast as compared to Unity. 2) pointer is not a good idea in c++, even the experienced programmer will make a silly mistake by pointing a variable to one of the rubbish address, c++ is the world most difficult to debug programming language, it is really hard for me to spot the bug within the c++ program because sometime the bug will not appear during the compilation time. So there you have it, with Java and the series C out of the path, Python is now ready to become the world number 1. All the Python supporters certainly will be very happy about that after they have spent thousands of hour learning and creating an application for Python and now it is time to harvest their Soya Bean! But not too fast, because I think there are a few areas Python still needs to improve before Python can rule the world! Here are those parts that I think Python.org needs to work on if it really has the ambition to become world number 1!

  • Real Python: Python Community Interview With Katrina Durance

    With PyCon US 2019 over, I decided to catch up with a PyCon first-timer, Katrina Durance. I was curious to see how she found the experience and what her highlights were. I also wanted to understand how attending a conference like PyCon influenced her programming chops.

  • Book review – Python for Programmers, by Paul Deitel and Harvey Deitel
  • PyCon: PyCon 2019 Code of Conduct Transparency Report [Ed: “Transparency Report” that does not mention PyCon was 'sold' to Microsoft? What have these events become? The Code of Conduct places emphasis on social justice, but not justice itself (or corruption), for example bribery and crimes of corporations, which is perhaps why they like it so much.]

    The PyCon Code of Conduct sets standards for how our community interacts with others during the conference. A Code of Conduct without appropriate reporting and response procedures is difficult to enforce transparently, and furthermore a lack of transparency in the outcomes of Code of Conduct incidents leaves the community without knowledge of how or if the organizers worked to resolve incidents.

    In our efforts to continue to improve how PyCon handles CoC incidents, staff, volunteers and community members participated in a CoC training prior to PyCon 2019. In having more people trained we provided a more thorough process for reporting and responses.
    With that in mind, we have prepared the following to help the community understand what kind of incidents we received reports about and how the PyCon staff responded.

PHP 7.4.0 alpha 2 Released

Filed under
Development

PHP team is glad to announce the release of the second PHP 7.4.0 version, PHP 7.4.0 Alpha 2. This continues the PHP 7.4 release cycle, the rough outline of which is specified in the PHP Wiki.

Read more

Also: PHP 7.4 Alpha 2 Adds Support For Reading TGA Files, SQLite3 Online Backup API Support

LG buddies up with Qt to expand webOS in autos, smart home, and robots

Filed under
Development
Linux

The Qt Company and LG are collaborating to integrate LG’s Linux-based webOS Open Source Edition with the Qt development platform for automotive, smart home, and robotics.

The Qt Company announced “a significant expansion of its long-standing partnership” with LG Electronics to extend the reach of the webOS Open Source Edition, which LG launched in early 2018. The Qt Company will work with LG to release webOS with the cross-platform Qt SDK and related GUI and development tools to offer “the most comprehensive operating system for smart devices in the automotive, robotics and smart home sectors,” says the Qt Company. Other potential applications are said to include AI, connectivity, media and content services, and automation. “Qt will play a key role in the development of webOS Auto, planned for deployment in future automotive infotainment systems,” says LG.

In addition, webOS will officially become a Qt reference OS of Qt, with full support for the distribution within Qt Creator, Qt Design Studio, Qt 3D Studio, and related Qt software. The goal is to make webOS with Qt “the platform of choice for embedded smart devices.”

Read more

today's howtos and programming bits

Filed under
Development
HowTos
  • How to get the latest Wine on Linux Mint 19
  • How to Install KDE Plasma in Arch Linux (Guide)
  • 0 bytes left

    Around 2003–2004, a friend and I wrote a softsynth that was used in a 64 kB intro. Now, 14 years later, cTrix and Pselodux picked it up and made a really cool 32 kB tune with it! Who would have thought.

  • A month full of learning with Gnome-GSoC

    In this month I was able to work with Libgit2-glib where Albfan mentored me on how to port functions from Libgit2 to Libgit2-glib.

    Libgit2-glib now has functionality to compare two-buffers.

    This feature I think can now benefit other projects also which requires diff from buffers, for example Builder for it’s diff-view and gedit.

  • Google Developers Are Looking At Creating A New libc For LLVM

    As part of Google's consolidating their different toolchains around LLVM, they are exploring the possibility of writing a new C library "libc" implementation. 

    Google is looking to develop a new C standard library within LLVM that will better suit their use-cases and likely others within the community too. 

  • How We Made Conda Faster in 4.7

    We’ve witnessed a lot of community grumbling about Conda’s speed, and we’ve experienced it ourselves. Thanks to a contract from NASA via the SBIR program, we’ve been able to dedicate a lot of time recently to optimizing Conda.  We’d like to take this opportunity to discuss what we did, and what we think is left to do.

  • TensorFlow CPU optimizations in Anaconda

    By Stan Seibert, Anaconda, Inc. & Nathan Greeneltch, Intel Corporation TensorFlow is one of the most commonly used frameworks for large-scale machine learning, especially deep learning (we’ll call it “DL” for short). This popular framework has been increasingly used to solve a variety of complex research, business and social problems. Since 2016, Intel and Google have worked together to optimize TensorFlow for DL training and inference speed performance on CPUs. The Anaconda Distribution has included this CPU-optimized TensorFlow as the default for the past several TensorFlow releases. Performance optimizations for CPUs are provided by both software-layer graph optimizations and hardware-specific code paths. In particular, the software-layer graph optimizations use the Intel Math Kernel Library for Deep Neural Networks (Intel MKL-DNN), an open source performance library for DL applications on Intel architecture. Hardware specific code paths are further accelerated with advanced x86 processor instruction set, specifically, Intel Advanced Vector Extensions 512 (Intel AVX-512) and new instructions found in the Intel Deep Learning Boost (Intel DL Boost) feature on 2nd generation Intel Xeon Scalable processors. Let’s take a closer look at both optimization approaches and how to get these accelerations from Anaconda.

  • PyCoder’s Weekly: Issue #374 (June 25, 2019)

GitLab 12.0

Filed under
Development

GitLab gives users the ability to automatically create review apps for each merge request. This allows anyone to see how the design or UX has been changed. In GitLab 12.0, we are expanding the ability to discuss those changes by bringing the ability to insert visual review tools directly into the Review App itself. With a small code snippet, users can enable designers, product managers, and other stakeholders to quickly provide feedback on a merge request without leaving the app.

Read more

Programming and Releases: util-linux, libredwg, python, gcc, qt, RcppTOML, Command Line Heroes and Perl

Filed under
Development
  • util-linux v2.34 -- what's new?

    The code of the popular command lsblk(8) has been completely rewritten. The result is more extendible and readable code. Now lsblk(8) keeps all block devices tree in memory before it's printed. It allows to modify and reorder the tree independently on the way how kernel (/sys filesystem) exports the tree to userspace.

  • libredwg-0.8 released

    This is a major release, adding the new dynamic API, read and write all header and object fields by name. Many of the old dwg_api.h field accessors are deprecated.

  • Reuven Lerner: Announcing: Python standard library, video explainer

    A month or two ago, I saw an online quiz that caught my eye: How much of the Python standard library do you know?

    Now, the “standard library” is the collection of modules and packages that come with Python. It constitutes the “batteries” that “batteries included” refers to in the Python world. And the standard library is big, with about 300 modules, each of which contains functions, classes, and values. Knowing the standard library, and how to use it, is essential to productive use of Python.

    And yet, a large number of the people responding indicated that they knew very little of the standard library. Which makes sense, given that each of us tends to focus on what’s important to our jobs.

  • Generating Random Data in Python

    In this course, you’ll cover several options for generating random data in Python, and then build up to a comparison of each in terms of its level of security, versatility, purpose, and speed.

  • New "-O1g" Optimization Level Proposed For The GCC Compiler

    A new "-O1g" optimization level has been proposed for the GNU Compiler Collection that would allow better performance but still relative ease for debugging the generated binaries.

  • Python: Vectors, Matrices and Arrays with NumPy

    In this lesson, we will look at some neat tips and tricks to play with vectors, matrices and arrays using NumPy library in Python. This lesson is a very good starting point if you are getting started into Data Science and need some introductory mathematical overview of these components and how we can play with them using NumPy in code.
    NumPy library allows us to perform various operations which needs to be done on data structures often used in Machine Learning and Data Science like vectors, matrices and arrays. We will only show most common operations with NumPy which are used in a lot of Machine Learning pipelines. Finally, please note that NumPy is just a way to perform the operations, so, the mathematical operations we show are the main focus of this lesson and not the NumPy package itself. Let’s get started.

  • KDAB at SIGGRAPH – 2019

    KDAB is sharing the Qt booth at SIGGRAPH in Los Angeles. We’ll be showing some of our profiling and debugging tools as well as our latest QiTissue demo, a desktop Application developed for Quantitative Imaging Systems (Qi) to help cancer researchers efficiently handle gigabytes of data (see more about that here),

  • Jinja 2 Templates

    JInja2 is a widely-used and fully featured template engine for Python. Being modern it is hence also design-friendly language for Python, modelled after Django’s templates. Ansible uses Jinja2 templating to enable dynamic expressions and access to variables. Ansible controller, where JInja2 comes in picture, is where all the templating takes place before the command is sent and implemented on the target machine. Now, let us look at some syntax that will be helpful with Ansible.

  • Christopher Allan Webber: Let's Just Be Weird Together

    Approximately a month ago was Morgan and I's 10 year wedding anniversary. To commemorate that, and as a surprise gift, I made the above ascii art and animation.

    Actually, it's not just an animation, it's a program, and one you can run. As a side note, I originally thought I'd write up how I made it, but I kept procrastinating on that and it lead me to putting off writing this post for about a month. Oh well, all I'll say for now is that it lead to a major rewrite of one of the main components of Spritely. But that's something to speak of for another time, I suppose.

    Back to the imagery! Morgan was surprised to see the animation, and yet the image itself wasn't a surprise. That's because the design is actually built off of one we collaborated on together:

  • RcppTOML 0.1.6: Tinytest support and more robustification

    A new RcppTOML release is now on CRAN. RcppTOML brings TOML to R.

    TOML is a file format that is most suitable for configurations, as it is meant to be edited by humans but read by computers. It emphasizes strong readability for humans while at the same time supporting strong typing as well as immediate and clear error reports. On small typos you get parse errors, rather than silently corrupted garbage. Much preferable to any and all of XML, JSON or YAML – though sadly these may be too ubiquitous now. TOML has been making inroads with projects such as the Hugo static blog compiler, or the Cargo system of Crates (aka “packages”) for the Rust language.

    Václav Hausenblas sent a number of excellent and very focused PRs helping with some input format corner cases, as well as with one test. We added support for the wonderful new tinytest package. The detailed list of changes in this incremental version is below.

  • Things we learned about programming languages working on season three of Command Line Heroes

    One of the best things about working on a project like Command Line Heroes is that you get to learn a lot in the process. For example, while working on season three of Command Line Heroes (launching today!) we discovered a number of fun facts about programming languages that even we didn't know before.

  • Explore the past, present, and future of Python on Command-Line Heroes

    A new season of the podcast Command Line Heroes launched today. I've grown to enjoy this series for both its deep storytelling and its excellent host, Saron Yitbarek. They also dive into fantastic themes, and this year is all about programming languages.

    The first episode of the new season explores Python, the language I've been spending more time on for data sciencey reasons. As a newer convert, I've wondered where the language, which is approaching its 30th anniversary, is headed.

  • Find Your Off-Ramp | Coder Radio 363

    We take on the issues of burnout, work communication culture, and keeping everything in balance.

    Plus Wes asks 'Why Not Kotlin' and breaks down where it fits in his toolbox.

  • Collections In Python | Introduction To Python Collections

    Python programming language has four collection data types- list, tuple, sets and dictionary. But python also comes with a built-in module known as collections which has specialized data structures which basically covers for the shortcomings of the four data types. In this blog, we will go through each of those specialized data structures in detail.

  • Swiss Perl Workshop 2019

    We are looking for speakers, if you have an idea for a talk or presentation then please submit a talk proposal. Because the venue has a few rooms we are also very open to any workshop-like ideas. This could be anything that 2-10 people can attend.

  • PerlCon 2019: Rīga, Latvia, 7–9 August

    PerlCon 2019 is the 20th edition of the annual European Perl Conference also known as YAPC::Europe and TPCiR.

Syndicate content