Language Selection

English French German Italian Portuguese Spanish

Python Programming

Filed under
Development
  • Improve your time management with Jupyter

    JupyterLab and Jupyter Notebook provide a great environment to scrutinize my laptop-based life.
    My exploration is powered by the fact that almost every service I use has a web application programming interface (API). I use many such services: a to-do list, a time tracker, a habit tracker, and more. But there is one that almost everyone uses: a calendar. The same ideas can be applied to other services, but calendars have one cool feature: an open standard that almost all web calendars support: CalDAV.

  • PyDev 8.0 released (17 years of PyDev, typing support, MyPy and Debugger)

    As with the previous release, this release keeps on improving the support for type hinting and MyPy.

    On the MyPy front, besides showing an error it will also show the related notes for a message on the tooltip (which would previously be available only in the output view) and MyPy processes are no longer launched in parallel when using the same cache folder (as this could end up making MyPy write wrong caches which required the cache folder to be manually erased).

    In the type inference front there are multiple improvements to take advantage of type hints (such as support for Optional[] in code completion, handle types given as string and following type hints when presenting an option to create a new method in a class).

    The debugger had a critical fix on the frame-evaluation mode (the mode which works by adding programmatic breakpoints by manipulating bytecode) which could make it skip breakpoints or even change the behavior of a program in extreme cases.

  • EuroPython 2020: First batch of edited videos available

    We’re happy to release the first 30 cut videos of EuroPython 2020.

  • Changes in chemfp 3.4

    In a previous essay I talked about the new licensing model in the recent chemfp 3.4 release. In short, no-cost academic licensing is now available, a pre-compiled version of the package, with some restrictions on use, is available for no-cost use on for Linux-based OSes.

    The 3.4 release had the unofficial title back in action. I took time off from development to (among other things) write a paper about the chemfp project and take parental leave for our second kid.

    [...]

    There are a number of small tool improvements, like adding a --help-formats command-line option to give more detailed information about the support format types and options for each of the toolkits. (Previously much of this information was available from --help but that lead to information overload.)

    One nice change is that simsearch now accepts a structure query as command-line input or a file, rather than an FPS file. Simsearch will read the target file to get the fingerprint type, then use that to parse the query structures correctly.

  • Command Line Interfaces in Python

    Adding the capability of processing Python command line arguments provides a user-friendly interface to your text-based command line program. It’s similar to what a graphical user interface is for a visual application that’s manipulated by graphical elements or widgets.

    Python exposes a mechanism to capture and extract your Python command line arguments. These values can be used to modify the behavior of a program. For example, if your program processes data read from a file, then you can pass the name of the file to your program, rather than hard-coding the value in your source code.

  • Python Software Foundation: Answer these surveys to improve pip's usability

    The pip team has been working on improving the usability of pip since the start of this year. We've been carrying this work out remotely - by interviewing pip users, by sending short surveys, and doing usability tests of new pip functions.

    We want to thank everybody who is contributing input to this work and are taking part in this research, which is still ongoing. We've learned a lot about who uses pip and how you use it. This has helped the team make decisions to improve pip, such as error messages and documentation to help you fix dependency conflicts.

    Our team has put together a User Experience (UX) section in pip's documentation to tell you about this UX work. It covers what has happened so far, how you can contribute, and what is coming in the future.

  • Python 101: An Intro to Working with JSON

    JavaScript Object Notation, more commonly known as JSON, is a lightweight data interchange format inspired by JavaScript object literal syntax. JSON is easy for humans to read and write. It is also easy for computers to parse and generate. JSON is used for storing and exchanging data in much the same way that XML is used.

    [...]

    Python’s json module uses the dump() function to serialize or encode an object as a JSON formatted stream to a file-like object. File-like objects in Python are things like file handlers or objects that you create using Python’s io module.

  • TDD in Python with pytest - Part 3

    This is the third post in the series "TDD in Python from scratch" where I develop a simple project following a strict TDD methodology. The posts come from my book Clean Architectures in Python and have been reviewed to get rid of some bad naming choices of the version published in the book.

    What I introduced in the previous two posts is commonly called "unit testing", since it focuses on testing a single and very small unit of code. As simple as it may seem, the TDD process has some caveats that are worth being discussed. In this chapter I discuss some aspects of TDD and unit testing that I consider extremely important.

  • PyCoder’s Weekly: Issue #438 (Sept. 15, 2020)

More in Tux Machines

10 Open Source Static Site Generators to Create Fast and Resource-Friendly Websites

Technically, a static website means the webpages are not generated on the server dynamically. The HTML, CSS, JavaScript lie on the server in the version the end user receives it. The raw source code files are already prebuilt, the source code doesn’t change with the next server request. It’s FOSS is a dynamic website which depends on several databases and the web pages are generated and served when there’s a request from your browser. Majority of the web is powered by dynamic sites where you interact with the websites and there are plenty of content that often change. Read more

Today in Techrights

Richard Stallman: You can get arrested without a reason

The last few months have put data protection back in the spotlight. During a crisis of this kind, do we have to choose between safety and privacy? We talked about this with Richard Stallman, digital privacy activist and the founder of the Free Software Movement. Read more

7 Amazing Linux Distributions For Kids

Linux is a very powerful operating system and that is one of the reasons why it powers a lot of servers on the Internet. Though there have been concerns about its user-friendliness which has brought about the debate of how it will overtake Mac OSX and Windows on desktop computers, I think users need to accept Linux as it is to realize its real power. Today, Linux powers a lot of machines out there, from mobile phones to tablets, laptops, workstations, servers, supercomputers, cars, air traffic control systems, refrigerators, and many more. With all this and more yet to come in the near future, as I had already stated at the beginning, Linux is the operating system for future computing. Because the future belongs to the kids of today, then introducing them to technologies that will change the future is the way to go. Therefore they have to be introduced at an early stage to start learning computer technologies and Linux as a special case. One thing common to children is curiosity and early learning can help instill a character of exploration in them when the learning environment is designed to suit them. Having looked at some quick reasons why kids should learn Linux, let us now go through a list of exciting Linux distributions that you can introduce your kids to so that they can start using and learning Linux. Read more