Save disk space by cleaning unneeded files from software projects.
It will identify the disk space savings you would get from deleting temporary/unnecessary files from project directories, such as
https://github.com/tbillington/kondo
#rust
It will identify the disk space savings you would get from deleting temporary/unnecessary files from project directories, such as
target from Cargo projects and node_modules from Node projects.https://github.com/tbillington/kondo
#rust
Not all duplicated code should be removed. This is one of the most important parts of the DRY principle to understand.
This article shares some great examples!
> “Don’t Repeat Yourself” was never about code. It’s about knowledge. It’s about cohesion. If two pieces of code represent the exact same knowledge, they will always change together. Having to change them both is risky: you might forget one of them. On the other hand, if two identical pieces of code represent different knowledge, they will change independently. De-duplicating them introduces risk, because changing the knowledge for one object, might accidentally change it for the other object.
> Looking at the reasons for change, is a very powerful modelling heuristic.
This article shares some great examples!
> “Don’t Repeat Yourself” was never about code. It’s about knowledge. It’s about cohesion. If two pieces of code represent the exact same knowledge, they will always change together. Having to change them both is risky: you might forget one of them. On the other hand, if two identical pieces of code represent different knowledge, they will change independently. De-duplicating them introduces risk, because changing the knowledge for one object, might accidentally change it for the other object.
> Looking at the reasons for change, is a very powerful modelling heuristic.
Very emotial post about the current state of software communities and their reactions to new things. This particular post is focused on monads as this new concept people are confused about.
I personally feel this too. Awesome read!
P.S. It also features dry-python/returns as a good example of how things should be done to sell new concepts to users: https://github.com/dry-python/returns
I personally feel this too. Awesome read!
P.S. It also features dry-python/returns as a good example of how things should be done to sell new concepts to users: https://github.com/dry-python/returns
GitHub
GitHub - dry-python/returns: Make your functions return something meaningful, typed, and safe!
Make your functions return something meaningful, typed, and safe! - dry-python/returns
kubectx is a utility to manage and switch between kubectl(1) contexts.
kubens is a utility to switch between Kubernetes namespaces.
https://github.com/ahmetb/kubectx
#devops #go
kubens is a utility to switch between Kubernetes namespaces.
https://github.com/ahmetb/kubectx
#devops #go
Almost everyone is on lockdown or quarantine. That's why a lot of people spend their time on education and online courses right now.
Due to high demand, I have created a set of 6 #python webinars on typing, dependencies, business logic, and testing.
It all starts on 6 April and ends on 17 April. Three webinars a week: on Mondays, Wednesdays, and Fridays.
This course is targeted on juniors and middle engineers.
This time it is going to be in Russian 🇷🇺 Sorry, other folks! It is a good sign to start learning our beautiful language :)
Full information with prices: https://drylabs.io/py-quarantine?utm_source=tg&utm_medium=post&utm_campaign=opensource_findings
#promo
Due to high demand, I have created a set of 6 #python webinars on typing, dependencies, business logic, and testing.
It all starts on 6 April and ends on 17 April. Three webinars a week: on Mondays, Wednesdays, and Fridays.
This course is targeted on juniors and middle engineers.
This time it is going to be in Russian 🇷🇺 Sorry, other folks! It is a good sign to start learning our beautiful language :)
Full information with prices: https://drylabs.io/py-quarantine?utm_source=tg&utm_medium=post&utm_campaign=opensource_findings
#promo
Linux kernel manager and activity monitor written in #rust
kmon provides a text-based user interface for managing the Linux kernel modules and monitoring the kernel activities. By managing, it means loading, unloading, blacklisting and showing the information of a module. These updates in the kernel modules, logs about the hardware and other kernel messages can be tracked with the real-time activity monitor in kmon. Since the usage of different tools like dmesg and kmod are required for these tasks in Linux, kmon aims to gather them in a single terminal window and facilitate the usage as much as possible while keeping the functionality.
#devops
kmon provides a text-based user interface for managing the Linux kernel modules and monitoring the kernel activities. By managing, it means loading, unloading, blacklisting and showing the information of a module. These updates in the kernel modules, logs about the hardware and other kernel messages can be tracked with the real-time activity monitor in kmon. Since the usage of different tools like dmesg and kmod are required for these tasks in Linux, kmon aims to gather them in a single terminal window and facilitate the usage as much as possible while keeping the functionality.
#devops
A #python tool that generates and runs test cases for Open API / Swagger based apps. Based on wonderful hypothesis project.
It reads the application schema and generates test cases which will ensure that your application is compliant with its schema.
The application under test could be written in any language, the only thing you need is a valid API schema in a supported format.
https://github.com/kiwicom/schemathesis
It reads the application schema and generates test cases which will ensure that your application is compliant with its schema.
The application under test could be written in any language, the only thing you need is a valid API schema in a supported format.
https://github.com/kiwicom/schemathesis
Prefect is a new workflow management system, designed for modern infrastructure and powered by the open-source Prefect Core workflow engine. Users organize Tasks into Flows, and Prefect takes care of the rest.
https://github.com/PrefectHQ/prefect
#python
prefect import task, Flow, Parameter
@task(log_stdout=True)
def say_hello(name):
print("Hello, {}!".format(name))
with Flow("My First Flow") as flow:
name = Parameter('name')
say_hello(name)
flow.run(name='world') # "Hello, world!"
flow.run(name='Marvin') # "Hello, Marvin!"
https://github.com/PrefectHQ/prefect
#python
Lens is the most powerful IDE for people who need to deal with #k8s clusters on a daily basis. It is a standalone application for MacOS, Windows and Linux operating systems. Ensure your clusters are properly setup and configured. Enjoy increased visibility, real time statistics, log streams and hands-on troubleshooting capabilities. With Lens, you can work with your clusters more easily and fast, radically improving productivity and the speed of business.
https://k8slens.dev/
#ts #devops
https://k8slens.dev/
#ts #devops
> Most people use vim in two stupid dimensions. But not me. I use it in three:
https://github.com/oakes/vim_cubed
#nim
https://github.com/oakes/vim_cubed
#nim
Zero-dependency #python package for simple throttling with asyncio support.
https://github.com/uburuntu/throttler
https://github.com/uburuntu/throttler
This is a GitHub Action to generate TOC (Table of Contents), which executes DocToc and commits if changed.
https://github.com/technote-space/toc-generator
#docops
https://github.com/technote-space/toc-generator
#docops
macos-like TimeMachine but for Linux!
It uses rsync to incrementally back up your data to a different directory, hard disk or remote server via SSH. All operations are incremental, atomic and automatically resumable.
The goal of this project is to have a cross-operating system and minimal as possible backup noscript that can be easily reviewed by anyone without great effort. Additionally it should provide one task only and do it well without the need of external requirements and only rely on default installed tools.
https://github.com/cytopia/linux-timemachine
#shell #devops
It uses rsync to incrementally back up your data to a different directory, hard disk or remote server via SSH. All operations are incremental, atomic and automatically resumable.
The goal of this project is to have a cross-operating system and minimal as possible backup noscript that can be easily reviewed by anyone without great effort. Additionally it should provide one task only and do it well without the need of external requirements and only rely on default installed tools.
https://github.com/cytopia/linux-timemachine
#shell #devops
Kroki provides a unified API with support for BlockDiag (BlockDiag, SeqDiag, ActDiag, NwDiag, PacketDiag, RackDiag), C4 (with PlantUML), Ditaa, Erd, GraphViz, Mermaid, Nomnoml, PlantUML, SvgBob, UMLet, Vega, Vega-Lite, WaveDrom... and more to come!
So, you can represent any diagram as a HTTP request.
https://kroki.io/
Example: https://kroki.io/plantuml/noscript/eNplj0FvwjAMhe_5FVZP40CgaNMuUGkcdttp3Kc0NSVq4lRxGNKm_fe1HULuuD37-bOfuXPUm2QChEjRnlIMCDmdUfHNSYY6xh42a9Fsegflk-yYlOLlcHK2I2SGtX4WZm9sZ1o8uOzxxbuWAlIGj8cshs6M1jDuY2owyU2P8jAezdnn10j53X0hlBsZFW021Pq7HaVSNw-KN-OogG8F8BAGqT8dXhZjxW4cyJEW6kcC-yHWFagHqW0MfaThhYmaVyE26P_x27qaDmXeruqqAMMw1h-ZlRI4aF3dX7hOwm5XzfIKDctlNcshPT1tFa8JPYAj-Zf5F065sqM=
#docops #java #python
So, you can represent any diagram as a HTTP request.
https://kroki.io/
Example: https://kroki.io/plantuml/noscript/eNplj0FvwjAMhe_5FVZP40CgaNMuUGkcdttp3Kc0NSVq4lRxGNKm_fe1HULuuD37-bOfuXPUm2QChEjRnlIMCDmdUfHNSYY6xh42a9Fsegflk-yYlOLlcHK2I2SGtX4WZm9sZ1o8uOzxxbuWAlIGj8cshs6M1jDuY2owyU2P8jAezdnn10j53X0hlBsZFW021Pq7HaVSNw-KN-OogG8F8BAGqT8dXhZjxW4cyJEW6kcC-yHWFagHqW0MfaThhYmaVyE26P_x27qaDmXeruqqAMMw1h-ZlRI4aF3dX7hOwm5XzfIKDctlNcshPT1tFa8JPYAj-Zf5F065sqM=
#docops #java #python
Copy/paste detector for programming source code.
Copy/paste is a common technical debt on a lot of projects. The jscpd gives the ability to find duplicated blocks implemented on more than 150 programming languages and digital formats of documents. The jscpd tool implements Rabin-Karp algorithm for searching duplications.
https://github.com/kucherenko/jscpd
#ts
Copy/paste is a common technical debt on a lot of projects. The jscpd gives the ability to find duplicated blocks implemented on more than 150 programming languages and digital formats of documents. The jscpd tool implements Rabin-Karp algorithm for searching duplications.
https://github.com/kucherenko/jscpd
#ts
> Between 1998 and 2003, searching for something on Google was magical.
> Today, if you're looking for something that is technical, specific, academic or generally non-commercial, good frigging luck. The world's best information retrieval system has devolved into something reminiscent of 2006-era Digg: A popularity index that's controlled by a small number of commercially motivated players. They call themselves "SEOs."
#rant
> Today, if you're looking for something that is technical, specific, academic or generally non-commercial, good frigging luck. The world's best information retrieval system has devolved into something reminiscent of 2006-era Digg: A popularity index that's controlled by a small number of commercially motivated players. They call themselves "SEOs."
#rant
Simple and complete #js testing utilities that encourage good testing practices.
Suitable for #vue, #react, and almost any other library.
https://testing-library.com/
Suitable for #vue, #react, and almost any other library.
https://testing-library.com/
Hegel: advanced type-checker for #js
Features:
- No Runtime TypeErrors: Hegel targets to prevent runtime TypeErrors by strong type system, great type inference and notify you about corner cases
- Easily Integrated: Hegel is only JavaScript with types, so you don't need to use specific file extensions or comments to start working with it
- Community-friendly
Hegel is developing by community for community. So, your PRs and issues will not be ignored or skipped.
There's also an online playground. Check it out!
https://jsmonk.github.io/hegel/
Features:
- No Runtime TypeErrors: Hegel targets to prevent runtime TypeErrors by strong type system, great type inference and notify you about corner cases
- Easily Integrated: Hegel is only JavaScript with types, so you don't need to use specific file extensions or comments to start working with it
- Community-friendly
Hegel is developing by community for community. So, your PRs and issues will not be ignored or skipped.
There's also an online playground. Check it out!
https://jsmonk.github.io/hegel/