Language Selection

English French German Italian Portuguese Spanish

Programming/Development Leftovers

Filed under
Development
  • Training at Qt World Summit 2020

    Qt World Summit 2020 has been postponed until October 20-22. It will take place in Palm Springs, USA.

  • Select all Google Photos (or Videos)

    Few weeks ago my uncle told me that he was unable to receive any new emails. A quick investigation led us to the idea that he had no more space left in his Google account, and that was caused by the hundreds and hundreds of photos and videos he was taking, that were automatically being backed up to Google Photos service.

    So the solution was simple, all he had to do is deleting some of the old photos to clear some space. but simple as that sound at first, turned out it wasn’t that an easy task after all.

  • Marcin Kolny: HawkTracer - low-overhead instrumentation-based profiler

    A while ago, at Amazon we've open-sourced instrumentation-based profiler - HawkTracer - which introduces very low overhead so it can be used on low-end platforms, where development environment is somehow limited (e.g. no ssh access, very limited disk storage etc). We used it to fix performance issues of Prime Video app on living room devices (SmartTVs, Streaming sticks, Game consoles etc).

  • If you use GNU Grep on text files, use the -a (--text) option

    Ah. Yes. How helpful. While reading along in what it had up until then thought was a text file, GNU Grep encountered some funny characters (in a DKIM signature information line, as it happened) and decided that the file was actually binary and so it wouldn't report anything more for the rest of the file than that final line.

  • DIY Single Sign-On for SSH

    TL;DR In this post we're going to set up Google single sign-on for SSH. Behind the scenes, we'll use OpenID Connect (OIDC), short-lived SSH certificates, a couple of clever SSH configuration tweaks, and Smallstep's open-source step-ca and step packages. We will set up an SSH Certificate Authority, and use it to bootstrap a new host and a new user in our system. While this approach requires more up-front work than a typical SSH public/private key setup, it comes with a lot of benefits beyond single sign-on. It eliminates the need for gathering and shipping and managing authorized_keys files.

  • Evaluate 3 ways to run Kubernetes locally

    The main purpose of Kubernetes is to host applications across a cluster of servers with sophisticated load balancing and resource allocation features. This ensures applications run smoothly, even if some servers fail. In production deployments, the use of multiple servers for Kubernetes is essential.

    However, there are situations where an IT admin or developer might want to run Kubernetes locally on a PC or laptop. A local Kubernetes environment, for example, enables developers to test new application code quickly without having to upload it to a production cluster first. Local Kubernetes is also a great way for newcomers to play around with the container orchestration system without the complexity and cost of a full-scale, multiserver deployment.

    Below are three approaches to run Kubernetes locally, all of which will work on a PC or laptop with Windows, Linux or macOS.

  • 5 IDEs for sysadmins

    Many sysadmins don’t consider themselves coders. They acknowledge that they regularly write complex scripts to help themselves automate their job, but they don’t consider themselves developers. I think it’s for that reason that most sysadmins also don’t think they have any use for an IDE. After all, an IDE is an Integrated Development Environment, and a sysadmin isn’t a developer, right? If that’s been your thought process, then it’s time to reconsider because a good IDE (or robust text editor) offers many benefits over a basic text editor.

    A good IDE provides syntax validation and smart auto-completion, important for catching mistakes that are at best, bothersome, and, at worst, harmful. An IDE also offers integration with the rest of your system so you can test scripts as you write them. Should something fail, a good IDE has a debugger to help identify the problem and, in some cases, help you solve it. Additional features include Git integration, quick access to a shell, plugins, and much more.

    There are lots of IDEs out there, and most are very flexible, but some arguably are best left to people who do nothing but develop software all day. Sysadmins have different needs and expectations than dedicated programmers, so here are five IDEs that stand out from the rest for sysadmins.

  • PyCharm: Here's what Python programming language developers get in new IDE update

    JetBrains has released the latest stable version of its PyCharm integrated development environment (IDE) for the Python programming language.

    PyCharm is a popular IDE for Python developers on Windows, macOS, and Linux. According to JetBrains' 2019 Python survey, PyCharm is by far the most widely used IDE for Python programming, ahead of Microsoft's Visual Studio Code for Python.

  • DBLD: a syslog-ng developer tool not just for developers

    DBLD is a central tool when it comes to syslog-ng development, but even after multiple blogs about the tool, it is still not much used outside of the developers’ team. So, what is DBLD and how could it be used even by you? The abbreviation stands for Docker BuiLD. Using containers ensures both that you have an easily reproducible build environment, and also that you do not have to “pollute” your base system with development-related software packages. You can use DBLD to build the release tarball or ready-to-use packages for a number of Linux distributions. It can even be used as a development environment with all necessary tools installed.

    Still not convinced? Yes, the listed possibilities are mostly interesting for syslog-ng developers and 3rd party packagers. If you are lucky, you will never need DBLD. On the other hand, it can come handy if you reported a problem and the syslog-ng team fixed it. Even if you are not a developer, only a junior sysadmin, you can still easily build fixed syslog-ng packages for testing (and even for production use) until an official release with the fix arrives.

  • Writing Java with Quarkus in VS Code

    In the previous articles in this series about cloud-native Java applications, I shared 6 requirements of cloud-native software and 4 things cloud-native Java must provide. But now you might want to implement these advanced Java applications in your local machine without climbing a steep learning curve. In this article, I will walk through using the open source technologies Quarkus and Visual Studio Code (VS Code) to accelerate the development of both traditional cloud-native Java stacks and also serverless, reactive applications with easier and more familiar methods.

    Quarkus is a Kubernetes-native Java stack tailored for GraalVM and OpenJDK HotSpot. It's crafted from best-of-breed Java libraries and standards with live coding, unified configuration, superfast startup, small memory footprint, and unified imperative and reactive development. VS Code is an open source integrated development environment (IDE) for editing code.