Language Selection

English French German Italian Portuguese Spanish

Programming Leftovers

Filed under
Development
  • New unit tests for the new code

    today I want to present the test system for Cantor's worksheet.
    The worksheet is the most central, prominent and important part of the application where the most work is done.

    So, it is important to cover this part with enough tests to ensure the quality and stability of this component in future.

    At the moment, this system contains only ten tests and all of them cover the functionality for the import of Jupyter notebooks only that was added recently to Cantor (I have mentioned them in my first post).
    However, this test infrastructure is of generic nature and can easily be used for testing Cantor's own Cantor files, too.

  • AiC: Unbounded queues and lang design

    I have been thinking about how language feature development works in Rust. I wanted to write a post about what I see as one of the key problems: too much concurrency in our design process, without any kind of “back-pressure” to help keep the number of “open efforts” under control. This setup does enable us to get a lot of things done sometimes, but I believe it also leads to a number of problems.

    Although I don’t make any proposals in this post, I am basically advocating for changes to our process that can help us to stay focused on a few active things at a time. Basically, incorporating a notion of capacity such that, if we want to start something new, we either have to finish up with something or else find a way to grow our capacity.

  • Caktus Consulting Group: Book Review: Creating GUI Applications with wxPython

    I enjoyed working through the book Creating GUI Applications with wxPython by Michael Driscoll, learning various techniques for programming GUI applications in Python using wxPython.

    This book is not intended to be a beginners' tutorial. The first chapter is titled "An Intro to wxPython," but it's very basic. I think anyone with a few simple wxPython apps under their belt would have no trouble with this book, but as a complete beginner to wxPython, I struggled a bit. Again, the book is not intended for complete beginners, so that's my fault.

  • Python/matplotlib : Plotting an arc in 3D plot

    I'm trying to draw an arc that is tangent to Z axis, as shown in the figure below, using matplotlib.

    In this arc one end point O is fixed to the origin of a right-handed Euclidean space, which is tangent to Z axis and other end point P at any location in the space.

    C is the center of the arc in the x-y plane, θ is the angle between O and P on x-y plane, as shown in the next figure.

  • Build a Recommendation Engine With Collaborative Filtering

    Collaborative Filtering is the most common technique used when it comes to building intelligent recommender systems that can learn to give better recommendations as more information about users is collected.

    Most websites like Amazon, YouTube, and Netflix use collaborative filtering as a part of their sophisticated recommendation systems. You can use this technique to build recommenders that give suggestions to a user on the basis of the likes and dislikes of similar users.

  • Python's Bokeh Library for Interactive Data Visualization
  • Creating custom user model and custom authentication in Django
  • How to create management commands in Django
  • How to send email from Python and Django using Office 365 [Ed: Today in Planet Python: How to make Python a part of Microsoft and its mass surveillance operations

More in Tux Machines

Annual Report 2018: LibreOffice development

Throughout the second half of 2018, the developer community worked on a new major release: LibreOffice 6.2. Details about the end-user-facing new features are provided on this page, and in the following video – so in the rest of this blog post, we’ll focus on developer-related changes. Read more

Programming Leftovers

Linux Kernel: Chrome OS, Direct Rendering Manger (DRM) and Char/Misc

  • Various Chrome OS Hardware Support Improvements Make It Into Linux 5.3 Mainline

    Various Chrome OS hardware platform support improvements have made it into the Linux 5.3 kernel for those after running other Linux distributions on Chromebooks and the like as well as reducing Google's maintenance burden with traditionally carrying so much material out-of-tree.

  • The Massive DRM Pull Request With AMDGPU Navi Support Sent In For Linux 5.3

    At 479,818 lines of new code and just 36,145 lines of code removed while touching nearly two thousand files, the Direct Rendering Manger (DRM) driver updates for Linux 5.3 are huge. But a big portion of that line count is the addition of AMD Radeon RX 5000 "Navi" support and a good portion of that in turn being auto-generated header files. Navi support is ready for the mainline Linux kernel!

  • Char/Misc Has A Bit Of Changes All Over For Linux 5.3

    The char/misc changes with each succeeding kernel release seem to have less changes to the character device subsystem itself and more just a random collection of changes not fitting in other subsystems / pull requests. With Linux 5.3 comes another smothering of different changes.

today's howtos