Language Selection

English French German Italian Portuguese Spanish

Programming: PyLint, C2x, Librem 5, Portable Document Format (PDF) in Python

Filed under
Development
  • Writing Cleaner Python Code With PyLint

    PyLint is a well-known static analysis tool for Python 2 and 3. It has a number of useful features, like checking your code for compliance with the PEP 8 Python style guide. It makes sure that your code follows the code style guide and it can also automatically identify common bugs and errors in your Python code.

    In this video series you’ll see how to install and set up the PyLint code linter tool. You’ll learn why you should use code linters like PyLint, Flake8, PyFlakes, or other static analysis tools—and how they can help you write cleaner and more Pythonic code.

    You can get this setup up and running in a few minutes and it’ll quickly help you write better and cleaner Python code.

  • LLVM Clang 9.0 Picks Up Initial C2x Language Mode

    Merged today to the mainline Clang compiler front-end is the initial C2x language mode support as what will eventually be the successor to the C18 programming language.

    C2x is still quite a ways out from release and its changes still under determination. At this stage the C2x language support for LLVM Clang is just enabling support by default for the [[attribute]] (double square brackets attribute; similar to C++) support.

  • Librem 5 App Design Tutorial – Part II

    Hello and welcome to the second of my series of blog posts on how to design your own, brand new app for the Librem 5.

    In my last post we went over the philosophy and process, goals and relevant art of building a read-it-later app; today we’ll be discussing sketches and mockups – specifically in what concerns navigation, article and article list screens, and desktops.

  • Working with PDFs in Python: Adding Images and Watermarks

    Today, a world without the Portable Document Format (PDF) seems to be unthinkable. It has become one of the most commonly used data formats ever. Up to PDF version 1.4, displaying a PDF document in an according PDF viewer works fine. Unfortunately, the features from the newer PDF revisions, such as forms, are tricky to implement, and still require further work to be fully functional in the tools. Using various Python libraries you can create your own application in an comparable easy way.

    This article is part two of a little series on PDFs with Python. In part one we already gave you an introduction into reading PDF documents using Python, and started with a summary of the various Python libraries. An introduction followed that showed how to manipulate existing PDFs, and how to read and extract the content - both the text and images. Furthermore, we showed you how to split documents into its single pages.

    In this article you will learn how add images to your PDF in the form of watermarks, stamps, and barcodes. For example this is quite helpful in order to stamp or mark documents that are intended to be read by a specific audience, only, or have a draft quality, or to simply add a barcode for identification purposes.

More in Tux Machines

Mozilla: PGP in Thunderbird, Departures, Firefox Send and Firefox Notes

  • Thunderbird implements PGP crypto feature requested 21 years ago

    Mozilla's mail reader Thunderbird has implemented a feature first requested 21 years ago. The somewhat garbled request – "I'd appreciate a plugin for PGP to ede and encrypt PGP crypted messages directly in Mozilla" [sic] – appears to have gone unimplemented due to concerns about US laws that bar export of encryption, debate about whether PGP was the right way to do crypto, and other matters besides. Thunderbird eventually chose to use Enigmail and its implementation of OpenPGP public key email encryption. However, it was an add-on rather than integrated. Commenters in the Bugzilla thread stemming from the request kept the dream of an integrated solution alive, though. Then in October 2019, the Thunderbird blog announced that Thunderbird 78 "will add built-in functionality for email encryption and digital signatures using the OpenPGP standard." Thunderbird 78 emerged in July 2020, and late in August Thunderbird contributor Kai Engert (:KaiE:) posted: "We have released support for OpenPGP email in Thunderbird version 78.2.1. Marking fixed."

  • Upcoming US Holidays (for Mike Taylor)

    This is my last full week at Mozilla, with my last day being Monday, September 21. It’s been just over 7 years since I joined (some of them were really great, and others were fine, I guess).

  • Update on Firefox Send and Firefox Notes

    As Mozilla tightens and refines its product focus in 2020, today we are announcing the end of life for two legacy services that grew out of the Firefox Test Pilot program: Firefox Send and Firefox Notes. Both services are being decommissioned and will no longer be a part of our product family. Details and timelines are discussed below. Firefox Send was a promising tool for encrypted file sharing. Send garnered good reach, a loyal audience, and real signs of value throughout its life. Unfortunately, some abusive users were beginning to use Send to ship malware and conduct spear phishing attacks. This summer we took Firefox Send offline to address this challenge. In the intervening period, as we weighed the cost of our overall portfolio and strategic focus, we made the decision not to relaunch the service. Because the service is already offline, no major changes in status are expected. You can read more here.

  • Mozilla Browser Extension to Track YouTube Recommendations

    It’s easy to get caught up in YouTube as it recommends an endless array of videos, with each one offering you more of the same type of content. But it’s not always the same content. Sometimes the process gets convoluted, and you wind up watching something you have no interest in. Mozilla is curious why this happens and created a browser extension to track YouTube recommendations.

today's howtos

10 Best Open-source Self-hosted Collaborative Text Editors Alternative to Google Docs

Collaborative writing is a term referred to team and group of writers involving in writing and editing the same document or writing project. The project can be an essay, a technical documentation, a book or a research paper. When groups and teams members join together in a writing project, They often face the challenge of choosing a tool. Are you a researcher, book writer or a novelist? Maybe you are a technical writer or a software developer who works with a team. It's essential for you and your team to choose the right tool for the job. So according to your use-case what's your best option? That's what we are trying to answer in this article. Read more

GNU/Linux-Compatible Devices and Open Hardware

  • Microchip SAMD21 Machine Learning Evaluation Kits Work with Cartesiam, Edge Impulse and Motion Gestures Solutions

    While it all started in the cloud Artificial Intelligence is now moving at the very edge is ultra-low power nodes, and Microchip has launched two SAMD21 Arm Cortex-M0+ machine learning evaluation kits that now work with AI/ML solutions from Cartesiam, Edge Impulse, and Motion Gestures. Bot machine learning evaluation kits come with SAMD21G18 Arm Cortex-M0+ 32-bit MCU, an on-board debugger (nEDBG), an ATECC608A CryptoAuthentication secure element, ATWINC1510 Wi-Fi network controller, as well as Microchip MCP9808 high accuracy temperature sensor and a light sensor. But EV45Y33A development kit is equipped with an add-on board featuring Bosch’s BMI160 low-power Inertial Measurement Unit (IMU), while EV18H79A features an add-on board with TDK InvenSense ICM-42688-P 6-axis MEMS.

  • 3µA/MHz Ambiq Apollo 4 MCU Targets Battery-powered IoT Devices with Voice Processing

    Ambiq Micro is using sub-threshold voltages under 0.5V to offer ultra-low-power Arm microcontrollers. In 2015, the company launch the Apollo Cortex-M4F MCU with 30µA/MHz power consumption in active mode, which was followed in 2016 by Apollo 2 in consuming just 10µA/MHz, and Apollo 3 (Blue) dropped power consumption to as low as 6µA/MHz against using a Cortex-M4F @ 48 MHz in active mode.

  • SBC and HMI starter kit run Linux on i.MX6 ULL

    Artila’s “SBC-7530” runs Linux 5.4 on an i.MX6 ULL with WiFi, 2x 10/100 LAN, 3x USB, 2x RS-485, 2x CAN, mini-PCIe with micro-SIM, and an optional starter kit with 7-inch touchscreen. Taiwan-based Artila Electronics, which is known for its Matrix line of low-power, compact IoT gateways, has launched its first SBC in 12 years. The i.MX6 ULL-equipped SBC-7530 follows its circa-2008 M-508 SBC, which is based on an ARM9-based Atmel (now Microchip) AT91RM9200.

  • Industrial panel PC is an IP69 neat freak

    Adlink’s IP69-protected “Titan-AL” panel PC runs Linux or Win 10 on Apollo Lake and is available with 15.6-, 21.5-, and 23.8-inch HD capacitive touchscreens in either VESA with M12 or pipe-mount configurations. Adlink has added an Intel Apollo Lake based panel PC to its Titan Panel Computer series that adheres to IP69 water and dust-proofing protections. The Titan-AL follows Adlink’s similarly IP69-protected Penta Food-C15/C17/C19 IP69K, which is aimed specifically at food processing operations and runs on an older Atom D2550. Other IP69 protected panel PCs include TechNexion’s i.MX6 based, 10.1-inch TWP-1010-IMX6 and Wincomm’s Skylake-based, 15-, 19-, and 22-inch WTP-9E66.

  • Compact module runs on Ryzen V1000

    Axiomtek’s Linux-ready “CEM130” COM Express Compact Type 6 module provides a Ryzen Embedded V1000 SoC with up to 32GB DDR4 and support for quad displays, 2x SATA, 7x PCIe, 9x USB, and -20 to 60°C operation. Axiomtek, which has previously tapped AMD’s Ryzen Embedded V1000 SoC in a 3.5-inch CAPA13R SBC and DSP600-211 signage player, has now returned with a COM Express Compact Type 6 module. The CEM130 joins other V1000-equipped, 95 x 95mm Compact Type 6 modules such as Arbor’s EmETXe-a10M0 and Kontron’s COMe-cVR6.

  • New COM Express Type 6 Compact Module Compatible with Windows 10 and Linux Operating Systems
  •        
  • Monitor water quality anywhere in the world with WaterAid

    Clean water is one of our most precious resources, but identifying sources of pollution often means expensive equipment. This can also mean taking multiple water quality readings and somehow aggregating them together to be easily usable. As a solution to both problems, Andrei Florian has developed WaterAid — which was recently named a finalist in this year’s Hackaday Prize. WaterAid consists of a measurement unit that senses water pH, turbidity, and temperature, as well as atmospheric temperature and humidity. Data is relayed to the system’s backend via a cellular connection, using an onboard MKR GSM 1400. Collected information from one or more devices is then displayed on a Soracom Lagoon dashboard for water monitoring from anywhere in the world! Not only can a fleet of WaterAids be used to continuously track a river, lake, or any other body of water, but individuals looking to get immediate feedback on quality can utilize the portable tool’s NeoPixel ring for color-coded judgement.

  •        
  • A MKR ZERO-based volume controller for your PC

    While some keyboards provide media keys or even knobs to adjust your overall computer sound up and down, often what you really want is the ability to tune program volumes separately. To make this extremely easy, SNR Tech Bytes has come up with a beautifully-designed controller, which runs on the MKR ZERO. The device features five encoders to individually tune the master volume, Discord, Chrome, gaming, and Spotify, with the help of software on the PC itself. Encoder button mutes each channel as needed, using NeoPixels below to indicate each status.

  •                
  • How is computing taught in schools around the world?
             
  •      
  • Build an arcade cabinet | Hackspace 35
             
  •      
  •  
    nut – testing shutdown and startup
                     
                       

    Based on this, I’m confident the rack will properly shutdown when the power fails. Just as important, it will come back when the power returns.